|
|
  |
BPSK carrier recovery |
|
|
|
Apr 28 2008, 10:40
|

Эксперт
    
Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183

|
Цитата(maxfox2k @ Apr 28 2008, 14:27)  уважаемый all
собственно кто-нибудь может обяснить по-простому как ето стделать?
исходные данные: symbol rate 256 KHz несущая 950-1500 MHz несущая может плавать в пределе 1 MHz
какои алгоритм есть, чтобы понять, локалная отстаёт или опережает несущую принятого сигнала? Ну разные есть. С обратной связью (feedback) и без (feedforward). C обратной связью - это ФАПЧ. Без обратной связи - прямые алгоритмы. Среди прямых алгоритмов опять подходы разнятся 1) data driven. Это когда данные известны (преамбула). Тогда модуляцию (на преамбуле) снимают и остаётся выявить комплексный тон 2) слепые. Сигнал возводят в квадрат (для BPSK) и модуляция опять же исчезает. Опять остаётся определить частоту комплексной экспоненты удвоеной частоты. Всякое возведение в степень ведёт к энергетическим потерям, но приходится чем-то поступиться, если известной преамбулы нет Для определения частоты комплексной экспоненты опять же предложено много эффективных методов. Применение того или иного зависит от компромисса : быстродействие против snr
|
|
|
|
|
Apr 28 2008, 11:19
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(fontp @ Apr 28 2008, 13:40)  Ну разные есть. С обратной связью (feedback) и без (feedforward). C обратной связью - это ФАПЧ. Без обратной связи - прямые алгоритмы. Среди прямых алгоритмов опять подходы разнятся
1) data driven. Это когда данные известны (преамбула). Тогда модуляцию (на преамбуле) снимают и остаётся выявить комплексный тон
2) слепые. Сигнал возводят в квадрат (для BPSK) и модуляция опять же исчезает. Опять остаётся определить частоту комплексной экспоненты удвоеной частоты. Всякое возведение в степень ведёт к энергетическим потерям, но приходится чем-то поступиться, если известной преамбулы нет
Для определения частоты комплексной экспоненты опять же предложено много эффективных методов. Применение того или иного зависит от компромисса : быстродействие против snr 1. preambuly net. 2. est li primer, blok-shema ili ponyatnoe opisanie algoritma?
|
|
|
|
|
Apr 28 2008, 11:57
|

Эксперт
    
Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183

|
Цитата(maxfox2k @ Apr 28 2008, 15:19)  1. preambuly net.
2. est li primer, blok-shema ili ponyatnoe opisanie algoritma? Преамбулы нет - значит нужно снимать модуляцию, возводя сигнал в квадрат. Изощрённый быстрый алгоритм определения частоты немодулированой несущей здесь внизу приатачен Работает идеально при не слишком низких отношениях snr При очень низких snr используют преобразование Фурье, полученные отсчёты так или иначе интерполируют и находят максимум построеной модели - там и есть частота Типа как здесь http://home.comcast.net/~kootsoop/EricJ2/index.htmПри совсем низких SNR у меня получались более устойчивые решения, если дополнить блок данных нулями вдвое, сделать ДПФ, найти максимум и по трём точкам построить параболическую интерполяцию аналитически. Аргумент максимума параболы и есть искомая частота. Можно использовать ФАПЧ для захвата частоты. Но время захвата будет всегда хуже, чем у методов feed forward. Поэтому если требуется минимизировать время измерения частоты/фазы, то сначала используют метод feed forward, а потом уже запускают ФАПЧ, инициировав ему значения частоты и фазы, найденными на первом этапе
|
|
|
|
|
Apr 29 2008, 09:05
|

Местный
  
Группа: Свой
Сообщений: 469
Регистрация: 13-03-05
Пользователь №: 3 315

|
Приветствую всех. Решил спросить в этой теме. Начитавшись Скляра с Незами сделал простую модельку петли костаса для QPSK с детектором фазы в виде  ) . У меня вопрос какие потери SNR будут в этом случае? И как это вобще это можно оценить? Моих знаний для этого пока малавато.
Сообщение отредактировал MKS - Apr 29 2008, 09:06
|
|
|
|
|
Apr 29 2008, 10:23
|

Эксперт
    
Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183

|
Цитата(MKS @ Apr 29 2008, 13:05)  Приветствую всех. Решил спросить в этой теме. Начитавшись Скляра с Незами сделал простую модельку петли костаса для QPSK с детектором фазы в виде  ) . У меня вопрос какие потери SNR будут в этом случае? И как это вобще это можно оценить? Моих знаний для этого пока малавато.  Незами не называет схему с арктангенсом - петлёй Костаса, это Вы сами придумали :-) Петля Костаса - это схема с умножением функций от I и Q, e= sign(I)*Q-sign(Q)*I для QPSK Хотя известно, что схема с арктангенсом имеет такие же точно потери как петля Костаса Я как то приатачивал статью про энергетические потери QPSK http://electronix.ru/forum/index.php?act=A...st&id=18829Обратите внимание, что оптимально с точки зрения потерь модифицировать Костас в e= th(I)*Q - th(Q)*I (энергия сигнала нормирована на дисперсию шума) при низких SNR. Для реализации это бывает часто сложновато Математика там действительно сложноватая, чтобы самому выводить, да и хрен с ним, всё сам не выведешь :-) если иметь в виду всякую нелинейщину, жизнь слишком коротка
|
|
|
|
|
May 8 2008, 05:57
|

Эксперт
    
Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183

|
Цитата(maxfox2k @ May 8 2008, 09:04)  можете обяснить, что такое петля костаса и как исползовать этот алгоритм? Рис. 3-8 в книге Низами. Для BPSK ошибка фазового детектора фапч даётся e= i*q Про QPSK я уже написал выше ДПФ может дать любую нужную теоретически достижимую точность (CRLB) измерения несущей. Посредством интерполяции, как здесь http://home.comcast.net/~kootsoop/EricJ2/index.htmРаз у вас преамбулы нет и нужно умножать частоту на 2, чтобы снять модуляцию, то максимальный диапазон измерения частоты равен половине от частоты Найквиста
|
|
|
|
|
May 8 2008, 06:06
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(maxfox2k @ May 8 2008, 09:04)  через фурье удаётся довольно точно подстроить несущую, если изначално она была смещена довольно далеко. но затем никак не могу разобратся что делать дальше.
что даёт возведение сигнала в квадрат? собственно что делать, чтобы понять как изменяется несущая? пытаюс делат следующее: нахожу период символа, если он начинает уменшатся, пытаюс увеличить несущыю. если становится есче хуже (символ становится короче), то меняю направление и уменшаю несущую. делаю всё в фпга. алгоритм правильный?
можете обяснить, что такое петля костаса и как исползовать этот алгоритм? Рано в FPGA лезть, читайте Низами и моделируйте в симулинке, посмотрите модели выложенные, возведение в квадрат даёт умножение фазы на 2 и для BPSK даёт устранение модуляции, можно непосредственно вычислять аргумент входного вектора и умножать на 2 без всяких возведений в квадрат , таким образом выделяется несущая, ещё надо позаботиться о символьной синхронизации. Фурье здесь вообще не нужно.
|
|
|
|
|
May 8 2008, 06:38
|

Эксперт
    
Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183

|
Цитата(petrov @ May 8 2008, 10:06)  Рано в FPGA лезть, читайте Низами и моделируйте в симулинке, посмотрите модели выложенные, возведение в квадрат даёт умножение фазы на 2 и для BPSK даёт устранение модуляции, можно непосредственно вычислять аргумент входного вектора и умножать на 2 без всяких возведений в квадрат , таким образом выделяется несущая, ещё надо позаботиться о символьной синхронизации. Фурье здесь вообще не нужно. Это вряд ли, что он обойдётся без Фурье. Расстройка несущей предельно велика по отношению к символьной. ( Задача полностью масштабируется по символьной). Символьная 256кгц Пусть он использует 8 отсчётов на символ.Самплинг Fs = 2 мгц. Найквист = 1 мгц. После умножения частоты на 2 он увидит только +-500 кгц. На 4 точках на символ он этот диапазон вообще не увидит, нужно 8, а лучше 12-16 ))) Т.е. нужен поиск несущей в полном диапазоне частот. От -Найквиста до + Найквиста. Никакой фапч хвататься не будет. При предельно низких snr это только Фурье. Причём, поскольку полного диапазона - то БПФ При предельно низких snr (ebno<5) корреляционные методы (как тот же DMA-RAD) не работают Разве что у него рабочий ebno 8-10 дб
|
|
|
|
|
May 8 2008, 06:47
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 8 2008, 09:06)  Рано в FPGA лезть, читайте Низами и моделируйте в симулинке, посмотрите модели выложенные, возведение в квадрат даёт умножение фазы на 2 и для BPSK даёт устранение модуляции, можно непосредственно вычислять аргумент входного вектора и умножать на 2 без всяких возведений в квадрат , таким образом выделяется несущая, ещё надо позаботиться о символьной синхронизации. Фурье здесь вообще не нужно. модели для bpsk без несущей. с залочиванием фазы модулируемого сигнала проблем нет. и может обяснишь, как без фурье можно подстроить несущую, сдвинутую скажем на 1.5 mhz?
|
|
|
|
|
May 8 2008, 06:53
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(fontp @ May 8 2008, 10:38)  Это вряд ли, что он обойдётся без Фурье. Расстройка несущей предельно велика по отношению к символьной. ( Задача полностью масштабируется по символьной). Символьная 256кгц Пусть он использует 8 отсчётов на символ.Самплинг Fs = 2 мгц. Найквист = 1 мгц. После умножения частоты на 2 он увидит только +-500 кгц. На 4 точках на символ он этот диапазон вообще не увидит
Т.е. нужен поиск несущей в полном диапазоне частот. От -Найквиста до + Найквиста. Никакой фапч хвататься не будет. При предельно низких snr это только Фурье. Причём, поскольку полного диапазона - то БПФ При низких snr корреляционные методы (как тот же DMA-RAD) не работают Да действительно, забыл уже про первое сообщение. Тут вопрос есть обосновано ли такая нестабильность несущей и полоса сигнала, при наличии соседних каналов как все эти поиски работать будут? Цитата(maxfox2k @ May 8 2008, 10:47)  и может обяснишь, как без фурье можно подстроить несущую, сдвинутую скажем на 1.5 mhz? Поиском обычным, в телевизоре настраивали каналы?
|
|
|
|
|
May 8 2008, 06:57
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(fontp @ May 8 2008, 09:38)  Это вряд ли, что он обойдётся без Фурье. Расстройка несущей предельно велика по отношению к символьной. ( Задача полностью масштабируется по символьной). Символьная 256кгц Пусть он использует 8 отсчётов на символ.Самплинг Fs = 2 мгц. Найквист = 1 мгц. После умножения частоты на 2 он увидит только +-500 кгц. На 4 точках на символ он этот диапазон вообще не увидит, нужно 8, а лучше 12-16 )))
Т.е. нужен поиск несущей в полном диапазоне частот. От -Найквиста до + Найквиста. Никакой фапч хвататься не будет. При предельно низких snr это только Фурье. Причём, поскольку полного диапазона - то БПФ При предельно низких snr (ebno<5) корреляционные методы (как тот же DMA-RAD) не работают Разве что у него рабочий ebno 8-10 дб сэмплирование 16 mhz fft на 128 точек / 32к точка делаю грубую подстройку. с qpsk можно определить, несушая отстаёт или опережает. использую угол текущеи точки и угол, где, должна была быть. в bpsk q условно 0, поетому по углу не получается определить опережение или опаздывание несущеи.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|