Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Интерполяторы при тактовой синхронизации?
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
Страницы: 1, 2
Leshii
Попытался разобраться с интерполяторами применяемыми для коррекции частоты дискретизации и ее фазы (взятие отсчетов в оптимальные моменты времени) но не удалось найти что то типа единого обзорного материала, весь материал получился какой то разобщенный.

При рассмотрении полиноминальных интерполяторов в одном месте встретил высказывание что фазовая характеристика у них нелинейная. В другом месте говорилось про искажения, которые допустимы только при мю=0-0.15 и 0.85-1, при остальных мю шумов значительно больше добавляется. Еще в одном месте активно обсуждались THD, при этом вроде получалось что у линейных интерполяторов гармонические искажения значительно меньше чем у полиноминальных. Кто-то говорит, что подавление имиджей при полиноминальном подходе возможно на уровне 60дб только тогда, когда полоса сигнала составляет 0.1 от частоты дискретизации.

Теперь вернемся к тактовой синхронизации.
Насколько нелинейная фазовая характеристика может попортить жизнь при тактовой синхронизации?
Если допустимые искажения получаются только в определенном диапазоне мю, то как быть с ситуацией когда у тебя сигнал и так не вери гуд, типа snr=15дб для кам16?
Если хорошее подавление достигается только при полосе 0.1 от част.дискрет то получается что перед интерполяцией, особенно для плохого водного snr, передискретизация должна быть не 3-4 отсчета на символ а 8-1

Помогите разобраться с данной кашей, плиз, лучше cubic или parabolic, piecewise или lagrange или вообще spline?
Stanislav
Цитата(Leshii @ Dec 15 2007, 01:05) *
Попытался разобраться с интерполяторами...
..............................................
Помогите разобраться с данной кашей, плиз, лучше cubic или parabolic, piecewise или lagrange или вообще spline?
Бр-р...
Разобраться с кубической, параболической, кусочной, лагранжевой, или вообще сплайн кашей в голове помогут только учебники по ЦОС (не обижайтесь; мне самому доводится их иногда почитывать). Как сказал великий Евклид: "В геометрии царственных путей нет".
Если есть конкретная задача - выкладывайте её, - грамотно, корректно, с точной формулировкой условий. Только в этом случае можно рассчитывать на содержательные советы.
Leshii
Задача в принципе "элементарная". Есть QPSK с SNR=10dB. Бодовая скорость порядка 1мегабода. Частота дискретизации примерно в 4 раза больше, т.е. около 4Мгц. Отношение между бодовой скоростью и частотой дискретизации в общем считается некратным.
Задач предложить и ОБОСНОВАТЬ схему и элементы тактовой синхронизации.
Если выбираем схему Гаднера, то почему ее, а не какую другую, если интерполятор типа кубического то почему именно его а не параболический или еще что-то, если коэффициенты расчитываем Лагранжем, то почему именно им. Ну и т.д.
Предварительно немного почитал по теории в разных источниках, но после прочтения вопросов возникло еще больше.
Если считается, что полиноминальные интерполяторы имеют нелинейную фазовую характеристикку, то насколько правомерно их применение для демодуляции сигналов, в которых информация передается фазой.
Если говорится, что шум вносимый полиноминальным интеполятором зависит от мю, то опять же насколько правомочно его применение в ситуациях когда мю может быть любым (в моем случае когда бодовая скорость и частота дискретизации некратны).
Если говорится, что полиноминальный интерполятор показывает неплохие результаты когда полоса сигнала составляет примерно 0.1 часть частоты дискретизации, то насколько правомерно его применение когда это соотношение составляет в моем случае 1 к 4, или надо изменять условия задачи на 1 к 10?
Singer
А что мешает применить обычную схему интерполяции, описанную в любом учебнике по ЦОС? После каждого отсчета исходного сигнала вставляем L-1 нулей (L - во сколько раз интерполируем), после чего результат пропускается через обычный КИХ ФНЧ (не искажающий фазу) с частотой среза порядка F исх/2? Вычисления свертки организуются полифазно для исключения операций со вставленными нулями...если скорость некратна - после ФНЧ делаем еще и прореживание... так обычно делается. Или я что-то не понимаю?
Leshii
Во-первых, мешает то, что дробь может получиться типа 178345653/46321987 - замучаетесь ето реализовывать. Или может получиться дробь типа 3,66666666666(6) - тоже не сахар.

Во-вторых, в системах связи это отношение обычно плавает и грубо говоря в каждый момент времени оно разное, поэтому одним набором фильтров не обойтись.
Singer
Цитата(Leshii @ Dec 15 2007, 13:51) *
Во-первых, мешает то, что дробь может получиться типа 178345653/46321987 - замучаетесь ето реализовывать. Или может получиться дробь типа 3,66666666666(6) - тоже не сахар.

Во-вторых, в системах связи это отношение обычно плавает и грубо говоря в каждый момент времени оно разное, поэтому одним набором фильтров не обойтись.

Ну для таких дробей можно применить округление фазы фильтра...т.е. делать КИХ скажем в расчете на интерполяцию в 4096 раз, а реальную фазу округлять до 12 бит. Как это делается в DDS. (там инкремент фазы обычно 32-48 битный, а табличка используется максимум на 4096-8192 значений синуса косинуса, делается округление 32 битной фазы до 12-14 бит)
Leshii
Цитата
Ну для таких дробей можно применить округление фазы фильтра...т.е. делать КИХ скажем в расчете на интерполяцию в 4096 раз, а реальную фазу округлять до 12 бит.


Прошу прощения, но я не понял о фазе, о битах - можно подоходчивее, плиз.
petrov
Посмотрите на модели насколько существенны ошибки вносимые линейным, параболическим, кубическим интерполяторами farrow при различной передискретизации. Сгенерируйте QPSK с большим количеством отсчётов на символ, децимируйте, интерполируйте и сравнивайте со сгенерёнными отсчётами, вычисляйте ошибку, отношение сигнал ошибка, если оно существенно меньше рабочего C/Ш то им можно пренебречь.
Если вас не устраивает ошибка вносимая интерполятором farrow, при вашей передискретизацией, увеличивайте передискретизацию полифазным фильтром.
Leshii
Т.е. все таки существует зависимость, что чем больше передескретизации тем чище выыход интерполятора?
По опыту, какой разумный порядок требуется передескретизации для кубического - 1 к 4 или 1 к 10?
petrov
Цитата(Leshii @ Dec 15 2007, 20:11) *
Т.е. все таки существует зависимость, что чем больше передескретизации тем чище выыход интерполятора?


Конечно посмотрите семейство частотных характеристи при различных mu, чем выше частота тем больше заваливается АЧХ и задержка искажается.


Цитата(Leshii @ Dec 15 2007, 20:11) *
По опыту, какой разумный порядок требуется передескретизации для кубического - 1 к 4 или 1 к 10?


Всё завистит от ошибки которой вы готовы пренебречь. Для QPSK > 4.5 отсчётов на символ, попробуйте 4 может вас устроит.
Leshii
Цитата
Всё завистит от ошибки которой вы готовы пренебречь. Для QPSK > 4.5 отсчётов на символ, попробуйте 4 может вас устроит


Если рассмотреть случай описанный мной выше - сигнал/шум 10dB, QPSK. Исходный сигнал-шум и так на пределе, поэтому потерять при интерполяции можно максимум 1dB.
Как на основе этих данных можно предьявить требования к интерполятору?, оценить на сколько больше чем 4.5 должно быть отсчетов?
Или наоборот, зная что имеем 1 к 4.5 и используем кубический интерполятор, то сколько в сигнал-шум мы потеряем при интерполяции?
petrov
Цитата(Leshii @ Dec 15 2007, 20:53) *
Если рассмотреть случай описанный мной выше - сигнал/шум 10dB, QPSK. Исходный сигнал-шум и так на пределе, поэтому потерять при интерполяции можно максимум 1dB.
Как на основе этих данных можно предьявить требования к интерполятору?, оценить на сколько больше чем 4.5 должно быть отсчетов?
Или наоборот, зная что имеем 1 к 4.5 и используем кубический интерполятор, то сколько в сигнал-шум мы потеряем при интерполяции?


Можно BER измерять для различных вариантов или отношение сигнал/ошибка интерполяции.
Leshii
Т.е. только методом практического подбора/моделирования? Каких нибудь грубо оценочных формул нет?
petrov
Цитата(Leshii @ Dec 15 2007, 21:09) *
Т.е. только методом практического подбора/моделирования? Каких нибудь грубо оценочных формул нет?


Врядли есть что-нибудь готовое, всегда требуется что-то моделировать, что-то самому выводить, что-то в статьях, книгах искать.
Leshii
Цитата
Врядли есть что-нибудь готовое


Где-то что-то должно быть, иначе полный швах был бы. Только найти не всегда получается.
petrov
Цитата(Leshii @ Dec 15 2007, 21:33) *
Где-то что-то должно быть, иначе полный швах был бы. Только найти не всегда получается.


Чёта я не вижу шваха никакого, всё это в том же симулинке на раз моделируется. Многие статьи так и пишутся: "вот разаработан нвый улучшенный интерполятор farrow, вот по результатам симуляции BER для 16QAM улучшился на полдецибела". Конечно же можно всё теоретически посчитать, только есть ли время этим заниматься в инженерной практике?
Stanislav
Цитата(Leshii @ Dec 15 2007, 12:32) *
Задача в принципе "элементарная". Есть QPSK с SNR=10dB. Бодовая скорость порядка 1мегабода. Частота дискретизации примерно в 4 раза больше, т.е. около 4Мгц. Отношение между бодовой скоростью и частотой дискретизации в общем считается некратным.
Задач предложить и ОБОСНОВАТЬ схему и элементы тактовой синхронизации.
Теперь более понятно. Однако, не до конца.
Какая кратность модуляции? Какой метод выделения тактовой частоты/фазы предполагается использовать?
Задачей системы тактовой синхронизации является выдача числа, пропорционального временнОму сдвигу по такту. В этом смысле, никаких интерполяций делать не нужно.
Скажите, а в системе предполагается использование адаптивного следящего фильтра (эквалайзера)?
...........................................

Если идёт речь о "сдвиге во времени" демодулирующей функции, то могут быть разные начальные "железные" условия.
1. Частотой и фазой выборки АЦП можно управлять.
2. - // - управлять нельзя.

В первом случае, использовал цифровой демодулирующий фильтр с фиксированными к-тами.
Во втором случае поступал трояко:
- "честно" вычислял к-ты демодулирующего полинома, если позволяла производительность "молотилки";
- записывал в память "опорную" демодулирующую функцию, с последующей её интерполяцией для необходимых временнЫх параметров выборки (квадратично, есси склероз не изменяет) - требует меньших выч. затрат;
- хранил в памяти "длинную и подробную" последовательность значений демодулирующего полинома, с выбором нужной подпоследовательности его значений при демодуляции - когда вычислительный ресурс процессора не позволяет делать вышеприведённых экзерсиций. Эту последовательность, для экономии ПЗУ, можно также рассчитать аналитически при запуске системы, и хранить в ОЗУ.

ЗЫ.Практическую разницу (в смысле качества демодулирования) всех трёх подходов невооружённым глазом обнаружить не удаётся - они имеют различия только по соотношению производительность/память. smile.gif
petrov
А что такое демодулирующий фильтр?
Демодулирующий полином?
Stanislav
Цитата(Leshii @ Dec 15 2007, 20:53) *
Если рассмотреть случай описанный мной выше - сигнал/шум 10dB, QPSK. Исходный сигнал-шум и так на пределе, поэтому потерять при интерполяции можно максимум 1dB.
Как на основе этих данных можно предьявить требования к интерполятору?, оценить на сколько больше чем 4.5 должно быть отсчетов?
Или наоборот, зная что имеем 1 к 4.5 и используем кубический интерполятор, то сколько в сигнал-шум мы потеряем при интерполяции?
При демодуляции нужно использовать оптимальный фильтр, усечённый во времени по определённому закону (спектральному окну).

Цитата(petrov @ Dec 15 2007, 22:15) *
А что такое демодулирующий фильтр?
Демодулирующий полином?
Постановка задачи мне не совсем понятна, поэтому я и предположил, что речь идёт о временнОм сдвиге демодулирующего полинома.
Демодулирующий фильтр и демодулирующий полином - это одно и то же. smile.gif Точнее, к-ты демод. фильтра являются к-тами демод. полинома:
Y(n)= sum(Xn*k1 + Xn-1*k2+...+Xn-N*kN), где k - данные к-ты.
Для оптимального приёмника, к-ты демодулирующего фильтра должны быть пропорциональными дискретным значениям модулирующей функции (символа) в данный момент времени, определяемый системой тактовой синхронизации.
Если сигнал проходит через канал с частотно-фазовыми искажениями (а это бывает почти всегда), для оптимального приёма используют два подхода:
1. Адаптивный эквалайзер - фильтр, имеющий обратную ЧФХ по отношению к каналу, через который пропускается входной сигнал для последующей демодуляции;
2. Модификация к-тов демодулирующего полинома, выполняющая ту же функцию - выравниванию ЧФХ принимаемого сигнала.

ЗЫ.В "продвинутых" приёмниках все составные части реализуются в виде единого фильтра, на выходе которого один раз за символьный период появляется (комплексное) число - оценка значения полезного сигнала.
petrov
Цитата(Stanislav @ Dec 15 2007, 22:23) *
1. Адаптивный эквалайзер - фильтр, имеющий обратную ЧФХ по отношению к каналу, через который пропускается входной сигнал для последующей демодуляции;
2. Модификация к-тов демодулирующего полинома, выполняющая ту же функцию - выравниванию ЧФХ принимаемого сигнала.


А в чём разница то? То что во втором случае эквалайзер с согласованным фильтром совмещён?
Stanislav
Цитата(petrov @ Dec 15 2007, 22:44) *
А в чём разница то? То что во втором случае эквалайзер с согласованным фильтром совмещён?
Практической разницы в качестве приёма нет, при должном уровне исполнения, ессно.
В "едином" подходе есть только вычислительные бонусы.
"По блокам" делать удобнее, если над проектом работает команда, а не один человек. Или работа выполняется поэтапно, с последовательным вылизыванием глюков.
Будучи единым разработчиком, совмещал в одном сложном фильтре ещё и адаптивный эхоподавитель (при работе на телефонную линию). smile.gif
petrov
Stanislav как вы делали символьную синхронизацию в цифре когда, когда точности частоты выборок с АЦП недостаточно?
Stanislav
Цитата(petrov @ Dec 15 2007, 22:55) *
Stanislav как вы делали символьную синхронизацию в цифре когда, когда точности частоты выборок с АЦП недостаточно?
А что здесть такого?
Товарищи Шеннон и Котельников нам доказали, что численное представление сигнала, должным образом ограниченного в частотной полосе, является полным, т.е., несёт всю информацию о сигнале без каких-либо потерь.
Вопроса, честно говоря, не понял. Для принимаемой последовательности (пусть, для начала, идеальной - без ЧФ сдвигов), сущестует только одна оптимальная демодулирующая последовательность. Её нетрудно получить, зная форму модулирующей функции и величину сдвига по такту.
Как делал - ну, разные условия были, и делал везде немножечко по-разному. smile.gif
petrov
Цитата(Stanislav @ Dec 15 2007, 23:06) *
А что здесть такого?
Товарищи Шеннон и Котельников нам доказали, что численное представление сигнала, должным образом ограниченного в частотной полосе, является полным, т.е., несёт всю информацию о сигнале без каких-либо потерь.
Вопроса, честно говоря, не понял. Для принимаемой последовательности (пусть, для начала, идеальной - без ЧФ сдвигов), сущестует только одна оптимальная демодулирующая последовательность. Её нетрудно получить, зная форму модулирующей функции и величину сдвига по такту.
Как делал - ну, разные условия были, и делал везде немножечко по-разному. smile.gif


Ну это всё понятно. Как практически вы поступали? Например делали полифазный фильтр с необходимым количеством отсчётов и выбирали нужную фазу символьной синхронизацией?
Stanislav
Цитата(petrov @ Dec 15 2007, 23:13) *
Ну это всё понятно. Как практически вы поступали? Например делали полифазный фильтр с необходимым количеством отсчётов и выбирали нужную фазу символьной синхронизацией?
Ещё раз: если была возможность управлять временем момента выборки АЦП, делал дубовую автономную систему поддержания этого времени. Информация о тактовом сдвиге бралась из самогО сигнала, без всяких эквализаций. Система работала устойчиво, даже когда в канале шли сплошные ошибки (С/Ш в /модели/ телефонной линии был менее 0 дБ при скорости передачи 4800 бит/с). Границы устойчивости системы не проверял, по причине отсутствия практического в этом смысла.
Если такой возможности не было, "сдвигал" демодулирующую функцию на величину тактового рассогласования, путём прямого её вычисления или интерполяции базовой последовательности. При достижении порога, делал скачок на один символьный период.
бОльшее значение, на мой взгляд, имеет способ выделения тактовой частоты из сложного сигнала. Вот об этом, наверное, и стоило бы поговорить. smile.gif
Leshii
Цитата
Конечно же можно всё теоретически посчитать, только есть ли время этим заниматься в инженерной практике?


Всего должно быть в меру. Часто бывает необходимо на лету, без наличия под рукой считалок хотя бы грубо оценить ситуацию. Потом конечно можно спокойно уточниться, обсчитать все более точно.

Например, при фильтрации для оценки порядка фильтра существуют ряд формул, которые в голове хрен просчитаешь, но сдругой стороны ты знаешь, что основной вклад дает крутизна и соответственно первую грубую оценку ты можещь получить высчитав в уме 1/крутизна (если более точным быть то 4/крутизна для прямоугольного окна). Все остальные нюансы связанные с уровнями пульсаций и т.д. дадут конечно другое значение, но не принципиальное. Если по первой грубой прикидке у тебя получается порядок фильтра около 200, то после всяких уточнений ну будет 150 или 250, но ты уже знаешь что это еденицы сотен, а не десятков или тысяч.
Такие примеры можно привести по многим вопросам. Так что строго научно считать не всегда есть время заниматься, а примерную оценку получить на лету бывает очень часто нужно.

Цитата
То что во втором случае эквалайзер с согласованным фильтром совмещён


А насколько эквивалентны ситуации когда согласованный фильтр стоит отдельно от эквалайзера и когда при T/2 эквалайзере он оказывается совмещенным с эквалайзером, коэффициенты которого рассчитываются по созвездию (QPSK например)? Классический согласованный фильтр имеет АЧХ идентичную сигналу, а эквалайзер пытается вывернуть наизнанку искажения канала - всегда ли можно эти задачи совместить? Если работать по тренингу, то где то понятно, что добиваясь минимальных отличий от тренинга ты и согласовываешься и канал корректируешь и т.д. А если эквалайзер без тренинга - только посозвездию работает? Получим то же самое?

Цитата
бОльшее значение, на мой взгляд, имеет способ выделения тактовой частоты из сложного сигнала. Вот об этом, наверное, и стоило бы поговорить

А что Вы под сложным сигналом понимате, база которого много больше единицы?, или какой-нибудь многопозиционный в тяжелых условиях?

Цитата
Какая кратность модуляции?

Так вроде QPSK.

Цитата
Постановка задачи мне не совсем понятна

Корень задачи в примерной аргументации тех или иных решений.
Тактовую я предлагаю вытягивать через Фурье огибающей, в качестве сигнала ошибки предлагаю Гаднера (не чувствителен к ошибке по несущей, работает с T/2, что согласуется с дробным эквалайзером). По эти двум пунктам пока непонятно насколько данный выбор удачен для небольших сигнал-шум. На всякий случай уточнение - работаем без тренинга.
Остался неясен вопрос с интерполяцией (управлять АЦП возможности нет, да и вредно это для качества АЦП). Как не пальцем в небо тыкнуть и типа приказать - будем брать 4 отсчета на символ, или 20?
И соответственно пока еще и не брался за вопрос выбора типа и парметров петлевого тактового фильтра, это чуть позже, когда с этими этапами разберусь.

Еще раз, решений подсказывают много, но мало кто может их обосновать, ответ звучит везде примерно так - я делал так, а почему так не помню, или просто где-то нашел готовое решение которое заработало и бог с ним, чего тогда разбираться.
fontp
Цитата(Leshii @ Dec 16 2007, 12:58) *
Всего должно быть в меру. Часто бывает необходимо на лету, без наличия под рукой считалок хотя бы грубо оценить ситуацию. Потом конечно можно спокойно уточниться, обсчитать все более точно.

Например, при фильтрации для оценки порядка фильтра существуют ряд формул, которые в голове хрен просчитаешь, но сдругой стороны ты знаешь, что основной вклад дает крутизна и соответственно первую грубую оценку ты можещь получить высчитав в уме 1/крутизна (если более точным быть то 4/крутизна для прямоугольного окна). Все остальные нюансы связанные с уровнями пульсаций и т.д. дадут конечно другое значение, но не принципиальное. Если по первой грубой прикидке у тебя получается порядок фильтра около 200, то после всяких уточнений ну будет 150 или 250, но ты уже знаешь что это еденицы сотен, а не десятков или тысяч.
Такие примеры можно привести по многим вопросам. Так что строго научно считать не всегда есть время заниматься, а примерную оценку получить на лету бывает очень часто нужно.
А насколько эквивалентны ситуации когда согласованный фильтр стоит отдельно от эквалайзера и когда при T/2 эквалайзере он оказывается совмещенным с эквалайзером, коэффициенты которого рассчитываются по созвездию (QPSK например)? Классический согласованный фильтр имеет АЧХ идентичную сигналу, а эквалайзер пытается вывернуть наизнанку искажения канала - всегда ли можно эти задачи совместить? Если работать по тренингу, то где то понятно, что добиваясь минимальных отличий от тренинга ты и согласовываешься и канал корректируешь и т.д. А если эквалайзер без тренинга - только посозвездию работает? Получим то же самое?
А что Вы под сложным сигналом понимате, база которого много больше единицы?, или какой-нибудь многопозиционный в тяжелых условиях?
Так вроде QPSK.
Корень задачи в примерной аргументации тех или иных решений.
Тактовую я предлагаю вытягивать через Фурье огибающей, в качестве сигнала ошибки предлагаю Гаднера (не чувствителен к ошибке по несущей, работает с T/2, что согласуется с дробным эквалайзером). По эти двум пунктам пока непонятно насколько данный выбор удачен для небольших сигнал-шум. На всякий случай уточнение - работаем без тренинга.
Остался неясен вопрос с интерполяцией (управлять АЦП возможности нет, да и вредно это для качества АЦП). Как не пальцем в небо тыкнуть и типа приказать - будем брать 4 отсчета на символ, или 20?
И соответственно пока еще и не брался за вопрос выбора типа и парметров петлевого тактового фильтра, это чуть позже, когда с этими этапами разберусь.

Еще раз, решений подсказывают много, но мало кто может их обосновать, ответ звучит везде примерно так - я делал так, а почему так не помню, или просто где-то нашел готовое решение которое заработало и бог с ним, чего тогда разбираться.


В любимой книге Петрова - Низами, RF Architectures & DSP Aspects... приводятся много фактов по этому поводу. Общей теории нет поскольку затрагивается слишком много факторов. Вернее она там есть, но становится бесполезной.
Но для выбора фазы тактовой для QPSK (при идеальной синхронизации в отношении других факторов) приводится кривая. Получается, что при ошибке 15% (1/7 символьного интервала) энергетические потери составляют 1.5дб. Т.е если Вас устроят такие энергетические потери - то при 4-х отсчётах на символ можно вообще ничего не делать (при 4-х отсчётах Вы не сможете сделать ошибку выборки больше 1/8 после кадровой синхронизации корреляционным способом). Если имеется в наличие эквалайзер - тем более он сам вытянет практически полностью эти потери.

Вообще, в книге утверждается, что 4 самое комфортное число выборок на символ.

Вообще-то 4 это не совсем спортивно в том смысле, что мы идём на поводу у аналоговых методов конструирования модемов и используем DSP не вполне эффективно. Существуют алгоритмы для полностью цифровой реализации всех синхронизаций при 2-х отсчётах. Но если есть запас выч. ресурса для решения задачи - 4 наиболее актуально адекватно в качестве компромисса.

Если говорить только о тактовой синхронизации, то идельный сдвиговый интерполятор - это синк (вернее синкс поправкой на RFC). Это идеальный интерполятор. Полифазные фильтры - это уже компромиссы, тем более сплайн-интерполяторы. Интересно зачем Вам подавление боковиков 60 дб
сплайн-интерполятором, если соседние каналы уже надёжно подавлены до этого, а рабочий snr порядка 10 дб. Мне кажется дефективность интерполятора дрлжна быть как раз только чуть лучше этих 10 дб.
Полиномиальные интерполяторы используются только для упрощения вычислений. Понятно, чем выше порядок полиномов и больше интервалов сплайна - тем лучше мы этот как-бы синк выписываем.
Я приводил уже как-то ссылку на реализацию очень хорошего кубического интерполятора с кол-вом интервалов больше 4 для частного случая 2-х точек на символ. Кубические интерполяторы очевидно лучше квадоатичных или тем более линейных, даже при очень низких snr
Leshii
Цитата
при ошибке 15% (1/7 символьного интервала)


7*15 примерно 100 - это понятно

Цитата
при 4-х отсчётах Вы не сможете сделать ошибку выборки больше 1/8 после кадровой синхронизации


Как это так? 4*8 примерно 32. А если кадровой синхры типа нет?

Далее, что означает 4 отсчета на символ. Я интерпретирую это так, что частота дискретизации у меня в 4 раза выше бодовой скорости, т.е. полоса сигнала 0.25 от частоты дискретизации. А то что мне удалось разрознено найти говорится, что удовлетворительные искажения получаются при 0.1. Мож речь идет о том, что при удовлетворительном сигнал-шум и 4 достаточно?

Цитата
Если говорить только о тактовой синхронизации, то идельный сдвиговый интерполятор - это синк (вернее синкс поправкой на RFC). Это идеальный интерполятор.
Полиномиальные интерполяторы используются только для упрощения вычислений. Понятно, чем выше порядок полиномов и больше интервалов сплайна - тем лучше мы этот синк выписываем.

Вы о полиноминальной или сплайновской интерполяции говорите? RFC это что такое?
fontp
Цитата(Leshii @ Dec 16 2007, 15:29) *
7*15 примерно 100 - это понятно
Как это так? 4*8 примерно 32. А если кадровой синхры типа нет?

Далее, что означает 4 отсчета на символ. Я интерпретирую это так, что частота дискретизации у меня в 4 раза выше бодовой скорости, т.е. полоса сигнала 0.25 от частоты дискретизации. А то что мне удалось разрознено найти говорится, что удовлетворительные искажения получаются при 0.1. Мож речь идет о том, что при удовлетворительном сигнал-шум и 4 достаточно?
Вы о полиноминальной или сплайновской интерполяции говорите? RFC это что такое?


Кадровая синхра всегда есть, даже если Вы её не делаете :-) Это Вы обманываете себя или заказчика :-) Или бывает ещё проблема яйца или курицы - что делается раньше.
Даже у самого непрерывного модема есть первый передаваемый бит.

Именно 4 отсчёта на один бодовый интервал. Нормальный паллеатив

Полиномиальная интерполяция она и есть сплайновая. Полиномиальный сплайн. Ничего другого ведь не получится.

RFC - это RCF :-) root-cosine интерполятор, но не фильтр. Если бы была полоса прямоугольной, то был бы в точности синк
Формула 4- 16 у Низами
Leshii
Цитата
Интересно зачем Вам подавление боковиков 60 дб
сплайн-интерполятором, если соседние каналы уже надёжно подавлены до этого, а рабочий snr порядка 10 дб. Мне кажется дефективность интерполятора дрлжна быть как раз только чуть лучше этих 10 дб.


Так вроде при интерполяции ты давишь не соседние каналы, а свои копии, кажись. Насчет 10 и 60 в принципе согласен. Если бы было 100 и 60, тогда вопросов не возникает, худо дело, а в моем случае вроде как на первый взгляд и не страшно. С другой стороны полиноминальные интерполяторы и так славятся тем, что между базовыми точками могут быть значительные выбросы и соответственно закрадывается мысль - если сигнал-шум и так не большой и складывается ситуация когда мю=0.5, т.е. там где выбросы максимальные, то что? на это внимание не обращать?, выбросы есть но они не смертельны?


Цитата
Кадровая синхра всегда есть, даже если Вы её не делаете :-) Это Вы обманываете себя или заказчика :-) Или бывает ещё проблема яйца или курицы - что делается раньше.
Даже у самого непрерывного модема есть первый передаваемый бит


Вопрос интересный. Чтоб мне зацепиться за кадровую синхру, я перед этим должен эти битики получить (в общем случае, особенно когда кадровая синхра по тем или иным причинам халявная, т.н. не типа Баркера), а следовательно рассчитывать на кадровую зацепку при тактовой синхронизации как то не клеется. Ну и честно говоря я все равно не понял как завязана кадровая синхронизация - 4 отсчета на символ - и 1/8 ошибки (а не 1/4) связаны.

Цитата
Полиномиальная интерполяция она и есть сплайновая. Полиномиальный сплайн. Ничего другого ведь не получится.


Полиномиальная интерполяция, Интерполяция сплайнами, Рациональная интерполяция - да они все могут быть разного порядка, в том или ином виде в их описаниях присутствуют полиномы, но они по сути то разные, имеют разные свойства. Иль я где-то глубоко заблуждаюсь?
fontp
Цитата(Leshii @ Dec 16 2007, 16:02) *
Так вроде при интерполяции ты давишь не соседние каналы, а свои копии, кажись. Насчет 10 и 60 в принципе согласен. Если бы было 100 и 60, тогда вопросов не возникает, худо дело, а в моем случае вроде как на первый взгляд и не страшно. С другой стороны полиноминальные интерполяторы и так славятся тем, что между базовыми точками могут быть значительные выбросы и соответственно закрадывается мысль - если сигнал-шум и так не большой и складывается ситуация когда мю=0.5, т.е. там где выбросы максимальные, то что? на это внимание не обращать?, выбросы есть но они не смертельны?
Вопрос интересный. Чтоб мне зацепиться за кадровую синхру, я перед этим должен эти битики получить (в общем случае, особенно когда кадровая синхра по тем или иным причинам халявная, т.н. не типа Баркера), а следовательно рассчитывать на кадровую зацепку при тактовой синхронизации как то не клеется. Ну и честно говоря я все равно не понял как завязана кадровая синхронизация - 4 отсчета на символ - и 1/8 ошибки (а не 1/4) связаны.


В конечном счёте Вы будете делать ошибку в интервале [-0.5, +0.5], а не в интервале [0,1]
Всё конечно зависит от реализации, а реализация зависит от модели искажений

Есть ещё такая штука - статический эквалайзер. Это интерполятор построеный по данным. Грубо говоря Вы считаете корреляцию данных с известной стартовой преамбулой и в окрестности максимума корреляции решаете ковариационные (или там корреляционные) уравнения. В результате Вы сразу получаете и положение первого бита и интерполятор положения тактовой

Фрактальный адаптивный эквалайзер проделываает примерно то же самое, только неспешно. Он во-первых выдаёт максимум в нужном месте, а во-вторых настраивает фильтр, который не только пытается скомпенсировать частотную х-ку канала, но и производит правильную интерполяцию

Цитата(Leshii @ Dec 16 2007, 16:02) *
Полиномиальная интерполяция, Интерполяция сплайнами, Рациональная интерполяция - да они все могут быть разного порядка, в том или ином виде в их описаниях присутствуют полиномы, но они по сути то разные, имеют разные свойства. Иль я где-то глубоко заблуждаюсь?


Полиномиальная интерполяция (одним полиномом) не используется не только в обработке сигналов, но и для аппроксимации математических функций. Используется в учебных целях ;-)

Кусочно-полиномиальная интерполяция (в том числе и линейная) используется повсеместно для реальных задач. В современном понимании она и называется сплайнами. Причём всякая кусочно-полиномиальная интерполяция является некоторым обобщённым сплайном :-)
Leshii
Цитата
Грубо говоря Вы считаете корреляцию данных с известной стартовой преамбулой


На счет преамбулы я сразу открестился. Поверьте, не по своей воле и не по воле вышестоящего начальства, жизнь такая...

Цитата
Фрактальный адаптивный эквалайзер

Это что за зверь такой? Мож так называется что-то что известно под другими именами?


Цитата
Полиномиальная интерполяция (одним полиномом) не используется не только в обработке сигналов, но и для аппроксимации математических функций. Используется в учебных целях ;-)


А то что приводится, в частотном случае, нечто кубическое в моделях Петрова (http://electronix.ru/forum/index.php?showtopic=23652) на farrow структурах, это реализация одиночного кубического полинома или кубический сплайн?

И еще, когда говорят о том, что интерполируют полиномом Лагранжа, то под этим что понимается - просто полином или сплайн?
fontp
Цитата(Leshii @ Dec 16 2007, 17:08) *
На счет преамбулы я сразу открестился. Поверьте, не по своей воле и не по воле вышестоящего начальства, жизнь такая...


Это плохо :-) CWWord какой-то ведь будет?
Как Вы определите начало связи и будете разрешать неоднозначность фазы по модулю pi/4 для QPSK?

Цитата(Leshii @ Dec 16 2007, 17:08) *
Это что за зверь такой? Мож так называется что-то что известно под другими именами?


Fractional эквалайзер самый обычный зверь. Эквалайзер работающий на частоте выше символьной (тактовой). В два раза или менее (n/m). Обычно реализуется в виде адаптивного фильтра.
Эквалайзер работающий на символьной частоте, обычно, дефективен


Цитата(Leshii @ Dec 16 2007, 17:08) *
А то что приводится, в частотном случае, нечто кубическое в моделях Петрова
(http://electronix.ru/forum/index.php?showtopic=23652) на farrow структурах, это реализация одиночного кубического полинома или кубический сплайн?И еще, когда говорят о том, что интерполируют полиномом Лагранжа, то под этим что понимается - просто полином или сплайн?

Все они кубические сплайны(или кусочные полиномы), очевидно . Интерполируют сигнал по доступным выборкам в точку недоступную для непосредственного наблюдения.
Farrow-структуры это всего лишь способ реализации, предполагается, что вычислительно эффективный
Leshii
Цитата
Fractional эквалайзер
- это понятно, просто Вы выше назвали
Цитата
Фрактальный адаптивный эквалайзер


Цитата
Все они кубические сплайны(или кусочные полиномы), очевидно
- это Вы с утверждением говорите, или предполагаете?
fontp
Цитата(Leshii @ Dec 16 2007, 19:25) *
- это понятно, просто Вы выше назвали

- это Вы с утверждением говорите, или предполагаете?


1. Так я уже говорил, что кроме адаптивных эквалайзеров бывают ещё и статические. В остальном fractional=фрактальный, а как ещё "дробный"?

2. Зуб даю. Все полиномиальные интерполяторы дискретного сигнала - это так называемые B-сплайны,
изображающие из себя всепропускающие фильтры.
MKS
Цитата(fontp @ Dec 16 2007, 15:11) *
В любимой книге Петрова - Низами, RF Architectures & DSP Aspects...

А можно ли этой книгой разжиться в электронном виде ?
Заранее спасибо. santa2.gif
petrov
Цитата(MKS @ Dec 31 2007, 18:31) *
А можно ли этой книгой разжиться в электронном виде ?
Заранее спасибо. santa2.gif


http://rapidshare.com/files/45943139/%%%20...Nezami.rar.html
santa2.gif
Михаил_K
В свое время мною была разработана система тактовой синхронизации для QAM сигналов использующая интерполяцию. Суть такая, на вход подается QAM сигнал, у которого частота дискретизации должна лежать в пределах 4...2.1 символьной частоты. На выходе имеется сигнал, частота дискретизации которого равна в точности удвоеной символьной частоте, а фаза совпадает с тактовым и полутактовым моментом. Для сигнала QPSK работает при отношении сигнал/шум 3-4 дБ.
Реализация такой системы представляет коммерческий интерес. Так что если сильно нужно и есть желание договориться, пишите на мыло.
petrov
Цитата(Михаил_K @ Feb 29 2008, 14:40) *
В свое время мною была разработана система тактовой синхронизации для QAM сигналов использующая интерполяцию. Суть такая, на вход подается QAM сигнал, у которого частота дискретизации должна лежать в пределах 4...2.1 символьной частоты. На выходе имеется сигнал, частота дискретизации которого равна в точности удвоеной символьной частоте, а фаза совпадает с тактовым и полутактовым моментом. Для сигнала QPSK работает при отношении сигнал/шум 3-4 дБ.
Реализация такой системы представляет коммерческий интерес. Так что если сильно нужно и есть желание договориться, пишите на мыло.


Какой-такой коммерческий интерес? Давным давно везде описано как сделать, есть желание даром объяснить...
Михаил_K
Цитата(petrov @ Feb 29 2008, 18:51) *
Какой-такой коммерческий интерес? Давным давно везде описано как сделать, есть желание даром объяснить...


Написано, то оно написано, только куча серьезных людей, типа КБ радиозавода им.Попова, НИИ радио, Московский НИИ радиосвязи и и.д. уже давно пытаются сделать, но че-то у них не получается.

Вот когда кто-нибудь из выше перечисленных это реализует, и я своими глазами увижу, всему интернету выложу исходники. smile.gif

А так, тем кто хочет разобраться, могу порекомендовать следующее: фирма GRAY CHIP в свое время выпустила микросхему GC3011. Вот она представляет из себя полифазный передискретизатор. Скачайте от нее даташит и посмотрите, как она устроена. Там все более-менее нормально описано. В свое время, когда не было VirtexII, мы демодулятор делали на нем. Кстати, сейчас у меня нет ссылки, когда найду, дам, тот же Xilinx выпустил документ, где написал, как на их VirtexV реализуются подобные вещи.
petrov
Цитата(Михаил_K @ Feb 29 2008, 21:17) *
Написано, то оно написано, только куча серьезных людей, типа КБ радиозавода им.Попова, НИИ радио, Московский НИИ радиосвязи и и.д. уже давно пытаются сделать, но че-то у них не получается.

Вот когда кто-нибудь из выше перечисленных это реализует, и я своими глазами увижу, всему интернету выложу исходники. smile.gif

А так, тем кто хочет разобраться, могу порекомендовать следующее: фирма GRAY CHIP в свое время выпустила микросхему GC3011. Вот она представляет из себя полифазный передискретизатор. Скачайте от нее даташит и посмотрите, как она устроена. Там все более-менее нормально описано. В свое время, когда не было VirtexII, мы демодулятор делали на нем. Кстати, сейчас у меня нет ссылки, когда найду, дам, тот же Xilinx выпустил документ, где написал, как на их VirtexV реализуются подобные вещи.


Вот тем более, надо не скрывать, а стараться обмениваться знаниями, чтобы у нас делалось а не где-то, для этого данный форум и предназначен. В данном случае речь вообще идёт о достаточно простой математике, буржуи по данной теме уже сотни статей и книг настрочили, я выкладывал на форуме модели для симулинка:

http://electronix.ru/forum/index.php?showtopic=23652

готов даром подобные вопросы обсуждать...
Михаил_K
Цитата(petrov @ Feb 29 2008, 22:04) *
Вот тем более, надо не скрывать, а стараться обмениваться знаниями, чтобы у нас делалось а не где-то, для этого данный форум и предназначен. В данном случае речь вообще идёт о достаточно простой математике, буржуи по данной теме уже сотни статей и книг настрочили, я выкладывал на форуме модели для симулинка:

http://electronix.ru/forum/index.php?showtopic=23652

готов даром подобные вопросы обсуждать...


Дык обсуждать-то и я готов. Но вот конкретные решения. Вы же поймите меня правильно, сейчас люди, которых я перечислил, да и другие тоже, заказывают модемы у нас. А если я всем выложу исходники, то что я кушать буду?

Кстати, модель я посмотрел. Прикольно. Что-то мне это напоминает. Недавно нам принесли спутниковый демодулятор, который в PCI слот компа втыкается. Вы часом не учавствовали в его разрабоке? Очень мне там некоторые вещи понравились!
petrov
Цитата(Михаил_K @ Mar 1 2008, 10:58) *
Вы часом не учавствовали в его разрабоке?


Нет к сожалнию.
Макс_Мат
Цитата(Михаил_K @ Feb 29 2008, 14:40) *
Для сигнала QPSK работает при отношении сигнал/шум 3-4 дБ.


чото как то многовато будет. видать математика у вас в конторе страдает. как насчет 0-2 дБ?
Михаил_K
Цитата(Макс_Мат @ Mar 6 2008, 17:46) *
чото как то многовато будет. видать математика у вас в конторе страдает. как насчет 0-2 дБ?


С математикой у нас все нормально. Честно говоря, просто даже не проверял. Ну будет у вас 0 дБ, что вы с этим сигналом будете делать? Без низкоскоростных кодов такая связь никому не нужна. А у вас есть девайс, который работает при таких шумах?
Макс_Мат
Цитата(Михаил_K @ Mar 7 2008, 10:07) *
С математикой у нас все нормально. Честно говоря, просто даже не проверял. Ну будет у вас 0 дБ, что вы с этим сигналом будете делать? Без низкоскоростных кодов такая связь никому не нужна. А у вас есть девайс, который работает при таких шумах?

по поводу кодов - LDPC очень даже не плохой код. Сейчас тенденция к его использованию.
Михаил_K
Цитата(Макс_Мат @ Mar 7 2008, 15:10) *
по поводу кодов - LDPC очень даже не плохой код. Сейчас тенденция к его использованию.

Совершенно верно. Сейчас занимаемся изучением и созданием аппаратуры с такими кодами
Макс_Мат
Цитата(Михаил_K @ Mar 9 2008, 17:38) *
Совершенно верно. Сейчас занимаемся изучением и созданием аппаратуры с такими кодами


Ну и отсюда следует вывод: демодуляторы ваши не катят - для таких кодов математика демодуляции нужна посерьезней...
Михаил_K
Цитата(Макс_Мат @ Mar 10 2008, 00:05) *
Ну и отсюда следует вывод: демодуляторы ваши не катят - для таких кодов математика демодуляции нужна посерьезней...


Еще раз вопрос повторю. А у вас есть готовое устройство, которое работает и использует LDPC и работу под шумами?
Макс_Мат
Цитата(Михаил_K @ Mar 11 2008, 10:02) *
Еще раз вопрос повторю. А у вас есть готовое устройство, которое работает и использует LDPC и работу под шумами?


Что значит под шумами?
Разумеется есть демодулятор, работающий при SNR = 0 дБ (QPSK) и связка LDPC + BCH, работающая при 1.5 дБ для Per=10e-7.
С какой целью интересуетесь?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.