|
|
  |
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, поетому по углу не получается определить опережение или опаздывание несущеи.
|
|
|
|
|
May 8 2008, 06:58
|

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

|
Цитата(petrov @ May 8 2008, 10:51)  Да действительно, забыл уже про первое сообщение. Тут вопрос есть обосновано ли такая нестабильность несущей и полоса сигнала, при наличии соседних каналов как все эти поиски работать будут? Нестабильность несущей обосновывается дешёвыми кварцами на ВЧ. Температурная стабилизация стоит очень дорого. Поэтому в автономной аппаратуре она всегда высока, нестабильность. Другое дело системы, когда кварцы элементов системы синхронизируются отдельно. Как требует например стандарт DVB, пилот-сигналами Поиски отлично работают если полоса правильно отфильтрована. Проверено. Единственная неприятность при слепой обработке - враг легко может поставить синусовую помеху - и всякие интерполяции перестанут работать сразу. Порвать такую связь легко В случае использования псевдослучайных преамбул нет даже такой опасности. Кроме того и диапазон измеряемых частот в два (М) раз больше. В приличной аппаратуре вообще дожны использоваться data-driven алгоритмы, а не слепые, imho
|
|
|
|
|
May 8 2008, 07:15
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(fontp @ May 8 2008, 09:58)  Нестабильность несущей обосновывается дешёвыми кварцами на ВЧ. Поэтому в автономной аппаратуре она всегда высока. Другое дело системы, когда кварцы элементов системы синхронизируются отдельно. Как требует например стандарт DVB, пилот-сигналами
Поиски отлично работают если полоса правильно отфильтрована. Проверено. Единственная неприятность при слепой обработке - враг легко может поставить синусовую помеху - и всякие интерполяции перестанут работать сразу. Порвать такую связь легко В случае использования псевдослучайных преамбул нет даже такой опасности. Кроме того и диапазон измеряемых частот в два (М) раз больше. В приличной аппаратуре вообще дожны использоваться data-driven алгоритмы, а не слепые, imho так собственно и есть, синхронизатсия происходит по данным. в обсчем делаем спутниковыи приёмник.
|
|
|
|
|
May 8 2008, 11:27
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 8 2008, 10:12)  И дешёвые кварцы...  Вобщем не писал автор про борьбу с врагами, может хватит ему генератора пилы в фапч чтоб по диапазону пробежаться. может я не очень правилно сформулировал проблему. несущая может менятся от частоты канала плюс/минус 1.5 mhz весь диапазон около 900-1500 mhz есть возможность подстраивать локальную несущую с шагом 80-100hz сначала грубо +/-32к находится несущая через бпф с qpsk вроде как работает, правда есть одна проблема. с bpsk вообще трабл. по идее можно модуль I с символ реитом пропустить через LP filter и замерять период. изменяя частоту локальнои несущеи и выбирать направление, где период наибольшии. будет ли работать такое?
|
|
|
|
|
May 8 2008, 12:07
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(maxfox2k @ May 8 2008, 15:27)  может я не очень правилно сформулировал проблему. несущая может менятся от частоты канала плюс/минус 1.5 mhz весь диапазон около 900-1500 mhz
есть возможность подстраивать локальную несущую с шагом 80-100hz
сначала грубо +/-32к находится несущая через бпф с qpsk вроде как работает, правда есть одна проблема. с bpsk вообще трабл.
по идее можно модуль I с символ реитом пропустить через LP filter и замерять период. изменяя частоту локальнои несущеи и выбирать направление, где период наибольшии. будет ли работать такое? Вобщем для символьной частоты 256 килогерц и нестабильности несущей плюс/минус 1.5 mhz обычные методы синхронизации не работают, вы просто в полосу согласованного фильтра не попадаете, делайте дополнительно поиск, например в цифре гетеродин по пилообразному закону изменяет частоту плюс/минус 1.5 mhz достаточно медленно чтобы синхронизация успевала срабатывать, как только настроились этот гетеродин отключаете, критерием отключения служит детектор качества сигнала, например EVM, или лок-индикторы синхронизаций. Промоделируйте это в симулинке!
|
|
|
|
|
May 8 2008, 15:01
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 8 2008, 15:07)  Вобщем для символьной частоты 256 килогерц и нестабильности несущей плюс/минус 1.5 mhz обычные методы синхронизации не работают, вы просто в полосу согласованного фильтра не попадаете, делайте дополнительно поиск, например в цифре гетеродин по пилообразному закону изменяет частоту плюс/минус 1.5 mhz достаточно медленно чтобы синхронизация успевала срабатывать, как только настроились этот гетеродин отключаете, критерием отключения служит детектор качества сигнала, например EVM, или лок-индикторы синхронизаций. Промоделируйте это в симулинке! собственно так и делаем. сначала подстраиваемся довольно грубо, +- 50 khz. затем точнее. на все про-все есть только неско секунд после задания канала. учитывая скорость залочивания pll, сейчас около 100 мс, конечно можно по спецификации убыстрить до 15, но не надо. т.е. тупо просканировать не реально, да и в этом проблемы нет. а вот потом начинается сложность c bpsk. т.е. с того момента, как мы нашли канал, несущая может плавно уходить +-1.5 mhz. с qpsk у нас довольно рабочий алгоритм, который находит несущую на удалении +-15 khz и затем уже он не рассинхронизируется и следует за несущей без проблем. с bpsk мы его в симуляции не проверили, на все про все было 4 месяца, вместе с хардом и софтом. т.е. сейчас думаем над алгоритмом, который бы смог показать куда изменяется несущая, убыстряется или замедляется после того, как мы ее нашли вот собственно проблема.
|
|
|
|
|
May 8 2008, 15:42
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(maxfox2k @ May 8 2008, 19:01)  собственно так и делаем. сначала подстраиваемся довольно грубо, +- 50 khz. затем точнее. на все про-все есть только неско секунд после задания канала. учитывая скорость залочивания pll, сейчас около 100 мс, конечно можно по спецификации убыстрить до 15, но не надо. т.е. тупо просканировать не реально, да и в этом проблемы нет.
а вот потом начинается сложность c bpsk. т.е. с того момента, как мы нашли канал, несущая может плавно уходить +-1.5 mhz. с qpsk у нас довольно рабочий алгоритм, который находит несущую на удалении +-15 khz и затем уже он не рассинхронизируется и следует за несущей без проблем.
с bpsk мы его в симуляции не проверили, на все про все было 4 месяца, вместе с хардом и софтом.
т.е. сейчас думаем над алгоритмом, который бы смог показать куда изменяется несущая, убыстряется или замедляется после того, как мы ее нашли вот собственно проблема. ФАПЧ упрвляемая решениями может отслеживать уходы, что для QPSK что для BPSK один алгоритм. Уходы конечно безобразные.
|
|
|
|
|
May 12 2008, 08:44
|

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

|
Цитата(maxfox2k @ May 12 2008, 12:20)  как засимулировать несущую? тобишь на перидатчике имеем: RF(n) = I(n)*cos(f)-j*Q(n)*sin(f)
как затем обратно получить дейcтвительные I, Q если локальная частота f1?
тобишь на приёмнике имеем: I(n)=RF(n)*cos(f1) Q(n)=-RF(n)*sin(f1)
но если f не равно f1, то мы просто не можем избавиться от мнимои части Ну не знаю... Не будете же Вы симулировать ВЧ, это лишнее Лучше начинать уже после DDC (на видеочастоте), а это что-то вроде уже I1(n) = I(n)cos(n*dF+Ф) + Q(n)sin(n*dF+Ф) Q1(n)=Q(n)*cos(n*dF+Ф)-I(n)*sin(n*dF+Ф) dF=f-f1 Ф - фазовая ошибка В общем, она крутится...
|
|
|
|
|
May 12 2008, 09:00
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(fontp @ May 12 2008, 11:44)  Ну не знаю... Не будете же Вы симулировать ВЧ, это лишнее Лучше начинать уже после DDC (на видеочастоте), а это что-то вроде уже
I1(n) = I(n)cos(n*dF+Ф) + Q(n)sin(n*dF+Ф) Q1(n)=Q(n)*cos(n*dF+Ф)-I(n)*sin(n*dF+Ф)
dF=f-f1 Ф - фазовая ошибка
В общем, она крутится... da, spasibo, pohozhe na to, chto i nuzhno bylo
|
|
|
|
|
May 13 2008, 07:40
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 13 2008, 10:25)  Незами почитайте там есть ответы на эти вопросы очень кратко и доступно. sorry, не нашел. не могли бы подсказат, где именно написано? не могу понять. луп-филтр уходит в верх и переполняется, даже в симуляции, даже если разница фаз 0.
Сообщение отредактировал maxfox2k - May 13 2008, 07:44
|
|
|
|
|
May 13 2008, 07:56
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(maxfox2k @ May 13 2008, 11:40)  sorry, не нашел. не могли бы подсказат, где именно написано? 3 глава Цитата(maxfox2k @ May 13 2008, 11:40)  не могу понять. луп-филтр уходит в верх и переполняется, даже в симуляции, даже если разница фаз 0. Этот фильтр что из себя предстваляет?
|
|
|
|
|
May 13 2008, 08:11
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 13 2008, 10:56)  3 глава распечатал, прочитал Цитата(petrov @ May 13 2008, 10:56)  Этот фильтр что из себя предстваляет? взял на figure 3-8 коеффициенты, как в симуляции. подставил свои параметры семплированиые, вроде должна лочится. пробую с частотои f_sym * 4
|
|
|
|
|
May 13 2008, 11:09
|

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

|
Цитата(maxfox2k @ May 13 2008, 14:58)  схему 3-18 из незами можно исползоват и для qpsk так? какой должен быть параметр фильтра? реально ли реализовать для 12 битной целочисленной арифметики? 3-20 Костас для QPSK e = sign(I)*Q - sign(Q)*I А то что с арктангенсом дальше называется tanlock. его тоже можно использовать и для BPSK и QPSK Фильтры обычно используются пропорционально-интегрирующие. Их нужно уметь считать. Везде описано, где про ФАПЧ Реализовать в 12-битовой арифметике (на выходе) может и не получится (фазовая ошибка 360/4000= 0.09 градуса устроит ?), но всегда можно пользовать двойную точность
|
|
|
|
|
May 13 2008, 11:15
|
Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 12-03-06
Из: Москва
Пользователь №: 15 142

|
Цитата(maxfox2k @ May 13 2008, 12:11)  распечатал, прочитал Вы нашли Низами в электронном виде? Не поделитесь?
|
|
|
|
|
May 13 2008, 11:15
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(fontp @ May 13 2008, 14:09)  3-20 Костас для QPSK e = sign(I)*Q - sign(Q)*I
А то что с арктангенсом дальше называется tanlock. его тоже можно использовать и для BPSK и QPSK e(t) - ето понятно. просто в симуляции полная ерунда творится. не могу исползовать слишком маленкие Ki Kp, скажем <.1, а при таких коеффитсиентах выход луп филтра становится очен болшим. вот и подумал, что аналоговую реализатсию нельзя сделать. а что с фильтром? какие частоты надо отфильтроват?
|
|
|
|
|
May 13 2008, 11:19
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(fontp @ May 13 2008, 14:09)  Реализовать в 12-битовой арифметике (на выходе) может и не получится (фазовая ошибка 360/4000= 0.09 градуса устроит ?), но всегда можно пользовать двойную точность созвездие фиксировать не требуется.
|
|
|
|
|
May 13 2008, 11:20
|

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

|
Цитата(maxfox2k @ May 13 2008, 15:15)  e(t) - ето понятно. просто в симуляции полная ерунда творится. не могу исползовать слишком маленкие Ki Kp, скажем <.1, а при таких коеффитсиентах выход луп филтра становится очен болшим. вот и подумал, что аналоговую реализатсию нельзя сделать.
а что с фильтром? какие частоты надо отфильтроват? Это не любой фильтр. Фильтр НЧ. Y(z) = К1*X(z)/z + K2*X(z) Кажется так в z-плоскости. Но его нужно уметь рассчитать. Описано в любой книге про ФАПЧ. Обычно используют расчёт аналоговый, а потом решение переносят в дижитал.
|
|
|
|
|
May 13 2008, 11:40
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 13 2008, 14:12)  Нельзя, только для BPSK. Кроме того это аналоговый костас, можно конечно и в цифре так сделать, но будут лишние вычисления, и разрядность коэффициентов будет повышаться с ростом частоты дискретизации. Требуемая разрядность зависит от этих самых коэффициентов, от полосы ФАПЧ. т.е. если у нас стоит ацп перед фильтром (3-18) и управляем vco с помошью цап, то такое сделать нельзя?
|
|
|
|
|
May 15 2008, 10:43
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 15 2008, 12:12)  Модели симулинковские смотрели? Могу переделать 16QAM в QPSK. da, smotrel. a pochemu v nih net modeli carrier? Цитата(petrov @ May 15 2008, 12:12)  Могу переделать 16QAM в QPSK. esli est vremya peredelat, to konechno by hotelos posmotret
|
|
|
|
|
May 15 2008, 11:49
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 15 2008, 12:12)  Вы связались с такой областью где абы как эвристически на коленке не получится ничего. вы даже и не представляете сколько всякого разного так делается  к сожалению я знаю как обстоит дело с разработкой у крупнеиших игроков рынка... взят хоть тот же 3gpp lte
|
|
|
|
|
May 15 2008, 12:17
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(GetSmart @ May 15 2008, 14:55)  И как у них обстоят дела?  ну я не имелл ввиду стандард. там сидят умные теоретики, без математиков хрен разберешся... затем ест стаика математиков, которые могут перелозит вормулы в алгоритм. затем всё так же, на коленках, на коленках
|
|
|
|
|
May 15 2008, 12:49
|
Частый гость
 
Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553

|
Цитата(petrov @ May 15 2008, 15:31)  ok, thanx. буду разбиратся
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|