Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Демодуляция QAM
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
Страницы: 1, 2, 3, 4
_Anatoliy
Коллеги,посоветуйте с чего начать,в этих делах пока новичёк.
Как я понимаю, для демодуляции QAM нужно восстановить частоту несущей и частоту символов.Порыскав по сети нашёл несколько алгоритмов восстановления частоты несущей,в основном везде предлагается умножать текущий символьный отсчёт на предыдущий и результат пропустить через полосовой фильтр.Попробовал в матлабе,получилось,но уж сильно зашумлённый данными синус получается после умножения,для качественной фильтрации нужно ставить FIR с не менее 4096 тапов,а то и больше.Может есть какие другие алгоритмы для выделения этих частот?
eugen_pcad_ru
Собственно использовать на практике можно две схемы: 1) возведения в n-ую степень и использование полосового фильтра для выделения несущей; 2) переносить вниз и делать то же самое, но в комплексном сигнале. Методы восстановления есть по-моему в книге
Спилкер Дж. Цифровая спутниковая связь.
Ну и были тут где-то по-моему разные матлабовские модели... Можно на них посмотреть...
По-настоящему большой фильтр используется для восстановления тактовой. Для несущей (как правило) рассчитывается фильтр по маске (см. соответствующий стандарт).
_Anatoliy
За книгу спасибо!Нашёл,качаю.

Вот какой у меня выход после фильтра на 256 тапов,по моему не очень хороший.См огибающую.

http://upload.caxapa.ru/qam_fir256.TIF
genadiy
Несущая частота должна быть известна из условия. А вот случайная блуждающая фаза нет. Её то и нужно оценить системой ФАПЧ. В журнале Радиотехника №11 2004 есть статья: "Оптимальные алгоритмы приёма сигналов квадратурной амплитудной манипуляции" В.Е. Мартиросов. стр 41. Там есть всё от уравнения до структурной схемы в терминах которые должны быть понятны электронщикам. Статью готов обсудить если будет интерес.
_Anatoliy
Цитата(genadiy @ Apr 9 2008, 11:55) *
Несущая частота должна быть известна из условия. А вот случайная блуждающая фаза нет. Её то и нужно оценить системой ФАПЧ. В журнале Радиотехника №11 2004 есть статья: "Оптимальные алгоритмы приёма сигналов квадратурной амплитудной манипуляции" В.Е. Мартиросов. стр 41. Там есть всё от уравнения до структурной схемы в терминах которые должны быть понятны электронщикам. Статью готов обсудить если будет интерес.


Спасибо!
Интерес есть и очень большой.Только вот журнала этого у меня нет,а электронный вариант найти не получается:-((
petrov
Вот посмотрите модели:
http://electronix.ru/forum/index.php?showtopic=23652

Практическая книга:
http://rapidshare.com/files/45943139/%%%%%...Nezami.rar.html
_Anatoliy
Цитата(petrov @ Apr 9 2008, 13:39) *
Вот посмотрите модели:
http://electronix.ru/forum/index.php?showtopic=23652

Практическая книга:
http://rapidshare.com/files/45943139/%%%%%...Nezami.rar.html


Большое Вам спасибо!
Книгу качаю,модели вечером посмотрю.Если будут вопросы по моделям - можно обратиться?
petrov
Цитата(_Anatoliy @ Apr 9 2008, 15:24) *
Большое Вам спасибо!
Книгу качаю,модели вечером посмотрю.Если будут вопросы по моделям - можно обратиться?


Даже нужно, форум для этого и существует.
Михаил_K
Цитата(_Anatoliy @ Apr 9 2008, 08:40) *
Коллеги,посоветуйте с чего начать,в этих делах пока новичёк.
Как я понимаю, для демодуляции QAM нужно восстановить частоту несущей и частоту символов.Порыскав по сети нашёл несколько алгоритмов восстановления частоты несущей,в основном везде предлагается умножать текущий символьный отсчёт на предыдущий и результат пропустить через полосовой фильтр.Попробовал в матлабе,получилось,но уж сильно зашумлённый данными синус получается после умножения,для качественной фильтрации нужно ставить FIR с не менее 4096 тапов,а то и больше.Может есть какие другие алгоритмы для выделения этих частот?


Какой имеено сигнал предполагается демодулировать. QAM16 или QAM256?
_Anatoliy
Цитата(Михаил_K @ Apr 9 2008, 15:44) *
Какой имеено сигнал предполагается демодулировать. QAM16 или QAM256?


От QPSK до QAM256 java script:emoticon(';)', 'smid_29')
Михаил_K
Цитата(_Anatoliy @ Apr 9 2008, 16:49) *
От QPSK до QAM256 java script:emoticon(';)', 'smid_29')

Тогда попробуйте схему по решению.
_Anatoliy
Цитата(Михаил_K @ Apr 9 2008, 17:40) *
Тогда попробуйте схему по решению.


Михаил,извините но что значит по решению?
Я не зря написал в корневом посте "Коллеги,посоветуйте с чего начать,в этих делах пока новичёк."



Цитата(petrov @ Apr 9 2008, 15:01) *
Даже нужно, форум для этого и существует.


Спасибо!

Первый вопрос по модели qam_fb_gardner_symbol_farrow_sync_fb_phase_sync_agc_2007_06_18.mdl

Для подстройки символьной скорости у Вас используется Gardner timing error detector. Как я понял это требует "вылавливания на приёмной стороне" периодической последовательности +- 1. В случае М-арных сигналов создаётся впечатление что такую последовательность нужно периодически вставлять в поток на передающей стороне. Так ли это?
petrov
Цитата(_Anatoliy @ Apr 9 2008, 19:18) *
Первый вопрос по модели qam_fb_gardner_symbol_farrow_sync_fb_phase_sync_agc_2007_06_18.mdl

Для подстройки символьной скорости у Вас используется Gardner timing error detector. Как я понял это требует "вылавливания на приёмной стороне" периодической последовательности +- 1. В случае М-арных сигналов создаётся впечатление что такую последовательность нужно периодически вставлять в поток на передающей стороне. Так ли это?


Не так. Требуется равновероятность точек созвездия на интервале усреднения и коэффициент ската фильтра корень из приподнятого косинуса больше 0.2.
_Anatoliy
Цитата(petrov @ Apr 9 2008, 20:43) *
Не так. Требуется равновероятность точек созвездия на интервале усреднения и коэффициент ската фильтра корень из приподнятого косинуса больше 0.2.


Спасибо!
В дальнейшем Вам удобно здесь общаться или можно в почту?
petrov
Цитата(_Anatoliy @ Apr 9 2008, 23:54) *
Спасибо!
В дальнейшем Вам удобно здесь общаться или можно в почту?


Пишите здесь, это может быть ещё кому-нибудь интересно, больше людей смогут вам помочь.
Михаил_K
Цитата(_Anatoliy @ Apr 9 2008, 19:18) *
Михаил,извините но что значит по решению?
Я не зря написал в корневом посте "Коллеги,посоветуйте с чего начать,в этих делах пока новичёк."
Спасибо!


По решению значит вот что. Например для ФМ4. Для определенности считаем, что точки должны находиться на диагоналях. Поэтому берем конкретный отсчет (символ) и смотрим по его координатам, где он находится. В зависимости от его нахождения вырабатываем сигнал ошибки для системы ФАПЧ. Строго говоря, для сигнала ФМ4 нужно брать арктангенс отношения Q/I. Но для практической реализации это не удобно. Я например делал так:
1. Проводится преобразование координат (знаков координат) текущей точки так, чтобы она попала в первый квадрант.
2. Берется разность координат - это и есть ошибка.

Вот кусок кода. Iin, Qin - координаты текущего символа

Int_I<=Iin;
Int_Q<=Qin;
Int_In<=(not Iin) + '1';
Int_Qn<=(not Qin) + '1';
if (Int_I(7) = '0' and Int_Q(7) = '0') then
IQuad<=Int_I;
QQuad<=Int_Q;
elsif (Int_I(7) = '1' and Int_Q(7) ='1') then
IQuad<=Int_In;
QQuad<=Int_Qn;
elsif (Int_I(7) = '0' and Int_Q(7) = '1') then
IQuad<=Int_Qn;
QQuad<=Int_I;
else
IQuad<=Int_Q;
QQUad<=Int_In;
end if;

Error<=IQuad - QQuad;

Для высших порядков QAM решающее устройство будет сложнее.
Кстати, если качество несущей частоты хорошее, можно пользоваться схемой костаса.
_Anatoliy
Цитата(petrov @ Apr 10 2008, 08:05) *
Пишите здесь, это может быть ещё кому-нибудь интересно, больше людей смогут вам помочь.

Хорошо.
За какое время (количество символов) происходит символьная синхронизация(скажем при заданном Eb/N0 и заданном символьном рассогласовании)?
Чем вызвано применение символьной задержки по сигналу ошибки,а не подстройка ГУНТ?


Цитата(Михаил_K @ Apr 10 2008, 09:43) *
По решению значит вот что. Например для ФМ4. Для определенности считаем, что точки должны находиться на диагоналях. Поэтому берем конкретный отсчет (символ) и смотрим по его координатам, где он находится. В зависимости от его нахождения вырабатываем сигнал ошибки для системы ФАПЧ. Строго говоря, для сигнала ФМ4 нужно брать арктангенс отношения Q/I. Но для практической реализации это не удобно. Я например делал так:
1. Проводится преобразование координат (знаков координат) текущей точки так, чтобы она попала в первый квадрант.
2. Берется разность координат - это и есть ошибка.


Спасибо,приму к сведению.Сейчас просто накапливаю информацию.
petrov
Цитата(_Anatoliy @ Apr 9 2008, 23:54) *
За какое время (количество символов) происходит символьная синхронизация(скажем при заданном Eb/N0 и заданном символьном рассогласовании)?


Это определяется коэффициентами передачи интегрирующего и пропорционального звена в ФАПЧ, у Незами посмотрите этот вопрос кратенько рассматривается, это теория автоматического управления в чистом виде.


Цитата(_Anatoliy @ Apr 9 2008, 23:54) *
Чем вызвано применение символьной задержки по сигналу ошибки,а не подстройка ГУНТ?


Не понял вопроса.
_Anatoliy
Цитата(petrov @ Apr 10 2008, 13:50) *
Это определяется коэффициентами передачи интегрирующего и пропорционального звена в ФАПЧ, у Незами посмотрите этот вопрос кратенько рассматривается, это теория автоматического управления в чистом виде.
Не понял вопроса.


Можно генератор импульсов символьной синхронизации фапчем подстраивать под частоту символов.А у Вас применяется Farrow_interpolator у Незами тоже его нашёл.Чем такой способ лучше?
petrov
Цитата(_Anatoliy @ Apr 10 2008, 15:05) *
Можно генератор импульсов символьной синхронизации фапчем подстраивать под частоту символов.А у Вас применяется Farrow_interpolator у Незами тоже его нашёл.Чем такой способ лучше?


Там и подстраивается генератор импульсов плюс дробная часть с NCO используется в интерполяторе фарроу для точного вычисления символа, иначе отсчёт с выхода согласованного фильтра брался бы с точностью до частоты дискретизации и не попадал бы в максимум раскрытия глазка.
fontp
Цитата(petrov @ Apr 10 2008, 15:22) *
Там и подстраивается генератор импульсов плюс дробная часть с NCO используется в интерполяторе фарроу для точного вычисления символа, иначе отсчёт с выхода согласованного фильтра брался бы с точностью до частоты дискретизации и не попадал бы в максимум раскрытия глазка.


Он кажется не о том спросил. Если я понял правильно.
Он, кажется, спросил: Почему бы не использовать АНАЛОГОВЫЙ фапч, вместо того чтобы использовать интерполяцию на заданной фиксированой последовательности отсчётов.
Тогда ответ не лучше или хуже. Ответ: Чтобы двигать фазу отсчётов АЦП прямо в аналоге нужен дорогой и развесистый фронт-энд. Часто такой возможности нет. И для полностью цифровой модели это криво

Т.е. если АЦП позволяет двигать фазу отсчётов с нужной точностью можно использовать аналоговый ФАПЧ с сигналом рассогласования по алгоритму например Гарднера. Если фазу АЦП двигать нельзя или точность недостаточна, задача решается в цифре интерполятором. Это скорее альтернативные подходы, чем взаимозаменяющие лучше-хуже
_Anatoliy
Цитата(petrov @ Apr 10 2008, 14:22) *
Там и подстраивается генератор импульсов плюс дробная часть с NCO используется в интерполяторе фарроу для точного вычисления символа, иначе отсчёт с выхода согласованного фильтра брался бы с точностью до частоты дискретизации и не попадал бы в максимум раскрытия глазка.


Я правильно понял - NCO подстраивается под символьную частоту, а интерполятор обеспечивает нулевой фазовый сдвиг(попадание в максимум раскрытия глазка)?

Но у Вас на выходе фазового детектора стоит интегратор,значит NCO и так будет подстроен с точностью до фазы(т.е. в установившемся режиме разность фаз будет равна нулю и без интерполятора)?



Цитата(fontp @ Apr 10 2008, 14:25) *


Понял,спасибо.
petrov
Цитата(_Anatoliy @ Apr 10 2008, 16:39) *
Я правильно понял - NCO подстраивается под символьную частоту, а интерполятор обеспечивает нулевой фазовый сдвиг(попадание в максимум раскрытия глазка)?

Но у Вас на выходе фазового детектора стоит интегратор,значит NCO и так будет подстроен с точностью до фазы(т.е. в установившемся режиме разность фаз будет равна нулю и без интерполятора)?


Без интерполятора не будет в общем случае. Опорные генераторы в приёмнике и передатчике никак не синхронизированы ни по частоте ни по фазе, нет гарантии что в приёмнике отсчёт попадёт в максимум глазка, без интерполятора фапч будет брать ближайший возможный отчёт, но будет оставаться временная ошибка в наихудшем случае, до половины периода дискретизации.
_Anatoliy
Цитата(petrov @ Apr 10 2008, 15:52) *
Без интерполятора не будет в общем случае. Опорные генераторы в приёмнике и передатчике никак не синхронизированы ни по частоте ни по фазе, нет гарантии что в приёмнике отсчёт попадёт в максимум глазка, без интерполятора фапч будет брать ближайший возможный отчёт, но будет оставаться временная ошибка в наихудшем случае, до половины периода дискретизации.


Понятно.Я как раз думал что у Вас происходит подстройка опорного генератора приёмника под генератор передатчика по частоте и фазе.Теперь вижу что это не так.
А всё таки,нельзя ли как то подстроить генератор приёмника?Не упростит ли это задачу?
Михаил_K
Цитата(_Anatoliy @ Apr 10 2008, 18:23) *
Понятно.Я как раз думал что у Вас происходит подстройка опорного генератора приёмника под генератор передатчика по частоте и фазе.Теперь вижу что это не так.
А всё таки,нельзя ли как то подстроить генератор приёмника?Не упростит ли это задачу?


Если предполагается прием сигнала на определенной тактовой частоте, то для АЦП хорошо подходит кварцевый гун, который и подстраивается. У меня во всех модемах на фиксированную скорость так сделано. Соотвественно не нужно делать интерполятор, который отъедает приличный кусок ПЛИСа.
petrov
Цитата(_Anatoliy @ Apr 10 2008, 18:23) *
Понятно.Я как раз думал что у Вас происходит подстройка опорного генератора приёмника под генератор передатчика по частоте и фазе.Теперь вижу что это не так.
А всё таки,нельзя ли как то подстроить генератор приёмника?Не упростит ли это задачу?


Смотря что понимать под упрощением. Так ведь можно модем в аналоге реализовать без FPGA и сигнальных процессоров. Дополнительные ГУН, ЦАП, обвязка, разводка печатной платы, отладка всего этого хозяйства вместо простого, сразу работающего, математического алгоритма это упрощение? И не будет это стоить дешевле. В серьёзном модеме интерполятор символьной синхронизации занимает незначительную часть вычислительных ресурсов. Современные средства ЦОС позволяют сделать всё в цифре не понимаю зачем нужно делать шаг назад.
fontp
Цитата(petrov @ Apr 11 2008, 10:55) *
Смотря что понимать под упрощением. Так ведь можно модем в аналоге реализовать без FPGA и сигнальных процессоров. Дополнительные ГУН, ЦАП, обвязка, разводка печатной платы, отладка всего этого хозяйства вместо простого, сразу работающего, математического алгоритма это упрощение? И не будет это стоить дешевле. В серьёзном модеме интерполятор символьной синхронизации занимает незначительную часть вычислительных ресурсов. Современные средства ЦОС позволяют сделать всё в цифре не понимаю зачем нужно делать шаг назад.


Иметь в аналоге, что-то что можно сделать в цифре есть шаг назад, поскольку аналог это источник нестабильности и разброса параметров. Но не всё так однозначно. ФАПЧ на самом деле может быть полностью цифровым (хоть и на уровне аналогового фронт-энда), если АЦП имеет функцию в цифре линейно двигать фазу отсчётов. Такие АЦП есть. И хотя возникают вопросы с какой точностью они реально это делают, с какими переходными характеристиками, особенно задержкой, и всё такое - если это регулирование адекватно задаче, то это возможно лучшее решение. Остаётся только единственный недостаток: интерполятор это алгоритм который полностью и легко отлаживается в модельной обстановке, а программа ФАПЧ с управлением АЦП - риал-тайм процесс, отладить который значительно сложнее. Но это ж не смертельно
_Anatoliy
Цитата(Михаил_K @ Apr 11 2008, 09:18) *
Если предполагается прием сигнала на определенной тактовой частоте, то для АЦП хорошо подходит кварцевый гун, который и подстраивается. У меня во всех модемах на фиксированную скорость так сделано. Соотвественно не нужно делать интерполятор, который отъедает приличный кусок ПЛИСа.


Вот-вот,и я об этом же подумал. beer.gif

Только как нормально выделить несущую и символьную тактовую?

У Незами всё вроде красиво получается,я попробовал в матлабе модель по рисунку 7-3 для QAM-16. Работает,выделяет ошибку несущей,но почемуто не точно,даёт ошибку в пределах +- 1,5 Гц, как ни бился уменьшить её не получилось.Да и для QAM-256 возводить отсчёты в 256-ю степень мало приятного...

Цитата(petrov @ Apr 11 2008, 09:55) *
Смотря что понимать под упрощением. Так ведь можно модем в аналоге реализовать без FPGA и сигнальных процессоров. Дополнительные ГУН, ЦАП, обвязка, разводка печатной платы, отладка всего этого хозяйства вместо простого, сразу работающего, математического алгоритма это упрощение? И не будет это стоить дешевле. В серьёзном модеме интерполятор символьной синхронизации занимает незначительную часть вычислительных ресурсов. Современные средства ЦОС позволяют сделать всё в цифре не понимаю зачем нужно делать шаг назад.


Спасибо! Я Вас понял.
petrov
Цитата(_Anatoliy @ Apr 11 2008, 11:52) *
У Незами всё вроде красиво получается,я попробовал в матлабе модель по рисунку 7-3 для QAM-16. Работает,выделяет ошибку несущей,но почемуто не точно,даёт ошибку в пределах +- 1,5 Гц, как ни бился уменьшить её не получилось.Да и для QAM-256 возводить отсчёты в 256-ю степень мало приятного...


У Незами как раз и написано что для QAM это плохой алгоритм, для фазовой синхронизации используйте ФАПЧ управляемую разностью между аргументом решения и аргументом принимаемого вектора. Для плотных созвездий будет маленькая полоса захвата:
http://electronix.ru/forum/index.php?showtopic=45021

У вас кстати модуляция непрерывная или пакетная?
_Anatoliy
Цитата(petrov @ Apr 11 2008, 11:19) *
У Незами как раз и написано что для QAM это плохой алгоритм, для фазовой синхронизации используйте ФАПЧ управляемую разностью между аргументом решения и аргументом принимаемого вектора. Для плотных созвездий будет маленькая полоса захвата:
http://electronix.ru/forum/index.php?showtopic=45021

У вас кстати модуляция непрерывная или пакетная?


Спасибо за ссылку!Модуляция у меня будет непрерывная.

Скажите,а Ваша модель сильно изменится для QAM-256 или косметически?
petrov
Цитата(_Anatoliy @ Apr 11 2008, 12:36) *
Спасибо за ссылку!Модуляция у меня будет непрерывная.

Скажите,а Ваша модель сильно изменится для QAM-256 или косметически?


Ну на QAM256 переделать ничего не стоит, только это не готовый модем а просто пояснение некоторых принципов.
_Anatoliy
Цитата(petrov @ Apr 11 2008, 11:41) *
Ну на QAM256 переделать ничего не стоит, только это не готовый модем а просто пояснение некоторых принципов.


Да,конечно.Очень интересно на Вашей модели разбираться с принципом работы,ещё раз спасибо!

А Вы не пробовали уменьшить количество отсчётов на символ(до 4)?Я пока не настолько хорошо разобрался в модели.Просто у меня ожидается битрейт 200...300mbps.
petrov
Цитата(_Anatoliy @ Apr 11 2008, 13:20) *
Да,конечно.Очень интересно на Вашей модели разбираться с принципом работы,ещё раз спасибо!

А Вы не пробовали уменьшить количество отсчётов на символ(до 4)?Я пока не настолько хорошо разобрался в модели.Просто у меня ожидается битрейт 200...300mbps.


Можно частоту дискретизации уменьшить вплоть до минимально необходимой по котельникову. Интерполятору фарроу необходима передискретизация примерно больше 4.5 отсчётов на символ, зависит от требуемой точности, тогда придётся полифазным фильтром увеличить количество отсчётов необходимое для нормальной работы интерполятора фарроу, всё это ессно делается без увеличения тактовой частоты в FPGA.
_Anatoliy
Цитата(petrov @ Apr 11 2008, 12:35) *
Можно частоту дискретизации уменьшить вплоть до минимально необходимой по котельникову. Интерполятору фарроу необходима передискретизация примерно больше 4.5 отсчётов на символ, зависит от требуемой точности, тогда придётся полифазным фильтром увеличить количество отсчётов необходимое для нормальной работы интерполятора фарроу, всё это ессно делается без увеличения тактовой частоты в FPGA.


Спасибо! Думаю смысл Вами сказанного окончательно пойму только после того как разложу Вашу модель "по полочкам".Будем рыть дальше.
Михаил_K
Цитата(petrov @ Apr 11 2008, 10:55) *
Смотря что понимать под упрощением. Так ведь можно модем в аналоге реализовать без FPGA и сигнальных процессоров. Дополнительные ГУН, ЦАП, обвязка, разводка печатной платы, отладка всего этого хозяйства вместо простого, сразу работающего, математического алгоритма это упрощение? И не будет это стоить дешевле. В серьёзном модеме интерполятор символьной синхронизации занимает незначительную часть вычислительных ресурсов. Современные средства ЦОС позволяют сделать всё в цифре не понимаю зачем нужно делать шаг назад.


В модеме, который я делал почти 5 лет назад, первый интерполятор был сделан на GC3011 (вроде бы, давно было). Затем переделали его на Virtex2. Интерполятор в месте с системой тактовой синхронизации занял отдельный плис 1500. Он требовал 30 умножителей, блок ОЗУ для хранения 15х4096 12-разярдных коэффициентов. Но зато позволял принимать сигналы на любой тактовой частоте, от 1 кГц до 50 МГц. Полностью весь демодулятор был сделан на 5 плисах Virtex2. 2 полуторотысячника и 3 тысячника.

В модеме, который я делал два года назад, на фиксированную частоту использовался ГУН, который стоит 30 долларов. Весь демодулятор поместился в четырехсотый спартан.
petrov
Цитата(Михаил_K @ Apr 11 2008, 15:04) *
В модеме, который я делал почти 5 лет назад, первый интерполятор был сделан на GC3011 (вроде бы, давно было). Затем переделали его на Virtex2. Интерполятор в месте с системой тактовой синхронизации занял отдельный плис 1500. Он требовал 30 умножителей, блок ОЗУ для хранения 15х4096 12-разярдных коэффициентов. Но зато позволял принимать сигналы на любой тактовой частоте, от 1 кГц до 50 МГц. Полностью весь демодулятор был сделан на 5 плисах Virtex2. 2 полуторотысячника и 3 тысячника.

В модеме, который я делал два года назад, на фиксированную частоту использовался ГУН, который стоит 30 долларов. Весь демодулятор поместился в четырехсотый спартан.


http://www.altera.ru/cgi-bin/price/price

Altera Cyclone III EP3C16E144C8 31,36$
15408 логических элементов, логический элемент - 4-х входовой LUT + триггер
56 18bit умножителей

Согласитесь что сейчас символьная синхронизация на внешнем ГУНе будет худшим решением с любой точки зрения?
_Anatoliy
Цитата(petrov @ Apr 11 2008, 15:01) *


А можно ещё вопросики по Незами рис. 7-3?Хочется разобраться.

1).Какова цель введения нелинейности [x]^M?
2).Это схема является частотным детектором?Вроде у него полоса захвата должна быть пошире чем фазового(в фазовом детекторе сигнальный вектор за счёт частотного сдвига не должен попасть в область соседней сигнальной точки созвездия).
3).Схема по Незами рис. 7-3 имеет область захвата dF <= +- 1 / (2*M*T),для QAM16 это будет +- 1/32T. А Ваша модель работает при 1/18T,Вы можете это как-то прокомментировать?
petrov
Цитата(_Anatoliy @ Apr 11 2008, 17:27) *
А можно ещё вопросики по Незами рис. 7-3?Хочется разобраться.

1).Какова цель введения нелинейности [x]^M?
2).Это схема является частотным детектором?Вроде у него полоса захвата должна быть пошире чем фазового(в фазовом детекторе сигнальный вектор за счёт частотного сдвига не должен попасть в область соседней сигнальной точки созвездия).
3).Схема по Незами рис. 7-3 имеет область захвата dF <= +- 1 / (2*M*T),для QAM16 это будет +- 1/32T. А Ваша модель работает при 1/18T,Вы можете это как-то прокомментировать?


1) для того чтобы избавиться о модуляции, посмотрите модельки для QPSK, при умножении фазы на 4 она превращается в линию(по модулю 2pi ессно), для QAM16 не надо на 16 фазу умножать, а на 4 как для QPSK, но только плохой это детектор для QAM
2) да является, она работает как она работает, с чем сравнивать?
3)вот представьте себе передачу подряд какой-то одной точки QAM созвездия,пусть на приёме один вектор в точности попадает в решение, из-за сдвига частоты dF на следующем символьном интервале принимаемый вектор повернётся на 2*pi*dF*T радиан, если он попадает в область другого решения то захвата не будет
_Anatoliy
Цитата(petrov @ Apr 11 2008, 17:33) *
2) да является, она работает как она работает, с чем сравнивать?
3)вот представьте себе передачу подряд какой-то одной точки QAM созвездия,пусть на приёме один вектор в точности попадает в решение, из-за сдвига частоты dF на следующем символьном интервале принимаемый вектор повернётся на 2*pi*dF*T радиан, если он попадает в область другого решения то захвата не будет


2).С Вашей моделью.У Вас же применён фазовый детектор,а полоса захвата шире.
3).Это я понимаю.Видно неточно сформулировал вопрос.Я хотел сказать что Ваша модель обеспечивает более широкую полосу захвата(1/18 > 1/32).
petrov
Цитата(_Anatoliy @ Apr 11 2008, 18:50) *
2).С Вашей моделью.У Вас же применён фазовый детектор,а полоса захвата шире.
3).Это я понимаю.Видно неточно сформулировал вопрос.Я хотел сказать что Ваша модель обеспечивает более широкую полосу захвата(1/18 > 1/32).


Ну обеспечивает какую-то полосу, вы поняли чем она определяется, а 1/32 это вы неправильно взяли, та формула для BPSK и QPSK, нету такого детектора для QAM чтоб в 16 степень возводить. smile.gif
_Anatoliy
Цитата(petrov @ Apr 11 2008, 18:06) *
Ну обеспечивает какую-то полосу, вы поняли чем она определяется, а 1/32 это вы неправильно взяли, та формула для BPSK и QPSK, нету такого детектора для QAM чтоб в 16 степень возводить. smile.gif


Понятно,спасибо. А тем более в 256-ю smile.gif
Михаил_K
Цитата(petrov @ Apr 11 2008, 16:01) *
http://www.altera.ru/cgi-bin/price/price

Altera Cyclone III EP3C16E144C8 31,36$
15408 логических элементов, логический элемент - 4-х входовой LUT + триггер
56 18bit умножителей

Согласитесь что сейчас символьная синхронизация на внешнем ГУНе будет худшим решением с любой точки зрения?

Не соглашусь.
XC3S400-4TQ144C XC3S400-4TQ144C - 400,000 SYSTEM GATE 1.2 VOLT FPGA $16,10
Кстати, ГУНы тоже бывают разные. Например делал я и с использованием ГУНов HOSONIC. Вроде доллара по 3 за штуку. И не забывайте, что генератор для АЦП нужен все равно. И еще, дополнительная логика в ПЛИСе приводит к увеличению выделяемого тепла, что между прочим становится довольно серьезной проблемой, особенно если устройство стоит на улице.
Посмотрите сюда http://www.grpz.ru/projects/index.shtml.
Станция "Струна-8". Там как раз стоит мой модем в котором hosonic. Коробочка у антенны содержит УМ, МШУ, дуплексер и полноценный модем с мультиплексором, демультиплексором, системой ТУТС. А размер у нее не такйо уж и большой. И каждые лишние 200-300 мВт тепла на плисе пагубно сказываются на надежности устройства.
alex_os
Цитата(Михаил_K @ Apr 11 2008, 18:58) *
Не соглашусь.
XC3S400-4TQ144C XC3S400-4TQ144C - 400,000 SYSTEM GATE 1.2 VOLT FPGA $16,10
Кстати, ГУНы тоже бывают разные. Например делал я и с использованием ГУНов HOSONIC. Вроде доллара по 3 за штуку. И не забывайте, что генератор для АЦП нужен все равно. И еще, дополнительная логика в ПЛИСе приводит к увеличению выделяемого тепла, что между прочим становится довольно серьезной проблемой, особенно если устройство стоит на улице.
Посмотрите сюда http://www.grpz.ru/projects/index.shtml.
Станция "Струна-8". Там как раз стоит мой модем в котором hosonic. Коробочка у антенны содержит УМ, МШУ, дуплексер и полноценный модем с мультиплексором, демультиплексором, системой ТУТС. А размер у нее не такйо уж и большой. И каждые лишние 200-300 мВт тепла на плисе пагубно сказываются на надежности устройства.

Что-то сильно монстроидальный интерполятор получился у Вас. У меня полиномиальный интерполятор 3го порядка , структура Farrow, порядка 2000LE в первом циклоне занимал. На 100 Мгц работает, при том что умножителей в этой плисине нет вообще.
_Anatoliy
Цитата(petrov @ Apr 11 2008, 18:06) *


И ещё один вопросик.
Если у меня символьная скорость будет находиться в диапазоне,скажем от 10 до 20 msps(к примеру приёмник должен уметь принимать данные от разных передатчиков,а у каждого передатчика своя символьная скорость),то как правильно поступить - изменять тактовую частоту АЦП по принципу ВСЕГДА 4 ТАКТА НА СИМВОЛ или установить фиксировано 80 МГц? laughing.gif
petrov
Цитата(_Anatoliy @ Apr 11 2008, 23:44) *
И ещё один вопросик.
Если у меня символьная скорость будет находиться в диапазоне,скажем от 10 до 20 msps(к примеру приёмник должен уметь принимать данные от разных передатчиков,а у каждого передатчика своя символьная скорость),то как правильно поступить - изменять тактовую частоту АЦП по принципу ВСЕГДА 4 ТАКТА НА СИМВОЛ или установить фиксировано 80 МГц? laughing.gif


АЦП конечно на фиксированной максимальной частоте, в FPGA будете фильтры менять т. п.
_Anatoliy
Цитата(petrov @ Apr 12 2008, 10:26) *
АЦП конечно на фиксированной максимальной частоте, в FPGA будете фильтры менять т. п.


А можно немного подробнее?В чём тут хитрость?Мне казалось что лучше изменять тактовую,тогда параметры фильтров вроде менять не нужно.
proxi
Цитата(_Anatoliy @ Apr 12 2008, 11:48) *
А можно немного подробнее?В чём тут хитрость?Мне казалось что лучше изменять тактовую,тогда параметры фильтров вроде менять не нужно.

Что бы зарядить разные скорости потока, нужны соответственно разные фильтры а на практике
их еще нужно подбирать так как реальный тракт имеет разные искажения для разный потоков..
petrov
Цитата(_Anatoliy @ Apr 12 2008, 12:48) *
А можно немного подробнее?В чём тут хитрость?Мне казалось что лучше изменять тактовую,тогда параметры фильтров вроде менять не нужно.


Да никаких хитростей нет. Аналоговые фильтры перед АЦП тоже будете изменять? "Лучше" это только проще для понимания, это опять к вопросу аналоговой реализации, характеристики модема будут хуже.


Цитата(proxi @ Apr 12 2008, 14:25) *
...а на практике их еще нужно подбирать так как реальный тракт имеет разные искажения для разный потоков..


Для этого эквалайзер есть.
_Anatoliy
Цитата(petrov @ Apr 12 2008, 14:45) *
Да никаких хитростей нет. Аналоговые фильтры перед АЦП тоже будете изменять? "Лучше" это только проще для понимания, это опять к вопросу аналоговой реализации, характеристики модема будут хуже.
Для этого эквалайзер есть.


Ясно,спасибо.Но если диапазон символьных скоростей относится,например, как 1:4 и с возможным шагом 1% то непонятно как тогда быть?Может по заданной символьной скорости вычислять необходимые коэффициенты фильтров?Не хранить же все возможные в памяти?
proxi
Цитата(petrov @ Apr 12 2008, 14:45) *
Да никаких хитростей нет. Аналоговые фильтры перед АЦП тоже будете изменять? "Лучше" это только проще для понимания, это опять к вопросу аналоговой реализации, характеристики модема будут хуже.
Для этого эквалайзер есть.

Ясно дело но ведь подбирают...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.