реклама на сайте
подробности

 
 
4 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> BPSK carrier recovery
maxfox2k
сообщение Apr 28 2008, 10:27
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



уважаемый all

собственно кто-нибудь может обяснить по-простому как ето стделать?

исходные данные: symbol rate 256 KHz
несущая 950-1500 MHz
несущая может плавать в пределе 1 MHz

какои алгоритм есть, чтобы понять, локалная отстаёт или опережает несущую принятого сигнала?
Go to the top of the page
 
+Quote Post
fontp
сообщение Apr 28 2008, 10:40
Сообщение #2


Эксперт
*****

Группа: Свой
Сообщений: 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
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение Apr 28 2008, 11:19
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 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?
Go to the top of the page
 
+Quote Post
fontp
сообщение Apr 28 2008, 11:57
Сообщение #4


Эксперт
*****

Группа: Свой
Сообщений: 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, а потом уже запускают ФАПЧ, инициировав ему значения частоты и фазы, найденными на первом этапе
Прикрепленные файлы
Прикрепленный файл  New_Freq_Estimate_DMA_RAD.zip ( 55.75 килобайт ) Кол-во скачиваний: 1349
 
Go to the top of the page
 
+Quote Post
petrov
сообщение Apr 29 2008, 07:17
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Вот посмотрите модели:
http://electronix.ru/forum/index.php?showtopic=23652

Практическая книга:
http://rapidshare.com/files/45943139/%%%%%...Nezami.rar.html
Go to the top of the page
 
+Quote Post
MKS
сообщение Apr 29 2008, 09:05
Сообщение #6


Местный
***

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



Приветствую всех. Решил спросить в этой теме.
Начитавшись Скляра с Незами сделал простую модельку петли костаса для QPSK с детектором фазы в виде . У меня вопрос какие потери SNR будут в этом случае? И как это вобще это можно оценить?
Моих знаний для этого пока малавато. 05.gif

Сообщение отредактировал MKS - Apr 29 2008, 09:06
Прикрепленные файлы
Прикрепленный файл  costas_loop_qpsk_complex_realization.zip ( 12.12 килобайт ) Кол-во скачиваний: 158
 
Go to the top of the page
 
+Quote Post
fontp
сообщение Apr 29 2008, 10:23
Сообщение #7


Эксперт
*****

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



Цитата(MKS @ Apr 29 2008, 13:05) *
Приветствую всех. Решил спросить в этой теме.
Начитавшись Скляра с Незами сделал простую модельку петли костаса для QPSK с детектором фазы в виде . У меня вопрос какие потери SNR будут в этом случае? И как это вобще это можно оценить?
Моих знаний для этого пока малавато. 05.gif


Незами не называет схему с арктангенсом - петлёй Костаса, это Вы сами придумали :-)
Петля Костаса - это схема с умножением функций от 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. Для реализации это бывает часто сложновато
Математика там действительно сложноватая, чтобы самому выводить, да и хрен с ним, всё сам не выведешь :-) если иметь в виду всякую нелинейщину, жизнь слишком коротка
Go to the top of the page
 
+Quote Post
petrov
сообщение Apr 29 2008, 12:00
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(MKS @ Apr 29 2008, 13:05) *
Приветствую всех. Решил спросить в этой теме.
Начитавшись Скляра с Незами сделал простую модельку петли костаса для QPSK с детектором фазы в виде . У меня вопрос какие потери SNR будут в этом случае? И как это вобще это можно оценить?
Моих знаний для этого пока малавато. 05.gif


Практически просто оценить, уменьшается евклидово расстояние на приёме между точками созвездия, на сколько надо SNR поднять чтобы получить такое же расстояние как и в случае идеальной синхронизации это и есть потери. Можно BER посчитать и сравнить с теоритическими BER для идеальной синхронизации.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 8 2008, 05:04
Сообщение #9


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



через фурье удаётся довольно точно подстроить несущую, если изначално она была смещена довольно далеко.
но затем никак не могу разобратся что делать дальше.

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

можете обяснить, что такое петля костаса и как исползовать этот алгоритм?
Go to the top of the page
 
+Quote Post
fontp
сообщение May 8 2008, 05:57
Сообщение #10


Эксперт
*****

Группа: Свой
Сообщений: 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, чтобы снять модуляцию, то максимальный диапазон измерения частоты равен половине от частоты Найквиста
Go to the top of the page
 
+Quote Post
petrov
сообщение May 8 2008, 06:06
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 8 2008, 09:04) *
через фурье удаётся довольно точно подстроить несущую, если изначално она была смещена довольно далеко.
но затем никак не могу разобратся что делать дальше.

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

можете обяснить, что такое петля костаса и как исползовать этот алгоритм?


Рано в FPGA лезть, читайте Низами и моделируйте в симулинке, посмотрите модели выложенные, возведение в квадрат даёт умножение фазы на 2 и для BPSK даёт устранение модуляции, можно непосредственно вычислять аргумент входного вектора и умножать на 2 без всяких возведений в квадрат , таким образом выделяется несущая, ещё надо позаботиться о символьной синхронизации. Фурье здесь вообще не нужно.
Go to the top of the page
 
+Quote Post
fontp
сообщение May 8 2008, 06:38
Сообщение #12


Эксперт
*****

Группа: Свой
Сообщений: 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 дб
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 8 2008, 06:47
Сообщение #13


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



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


модели для bpsk без несущей.

с залочиванием фазы модулируемого сигнала проблем нет.

и может обяснишь, как без фурье можно подстроить несущую, сдвинутую скажем на 1.5 mhz?
Go to the top of the page
 
+Quote Post
petrov
сообщение May 8 2008, 06:53
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 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?


Поиском обычным, в телевизоре настраивали каналы?
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 8 2008, 06:57
Сообщение #15


Частый гость
**

Группа: Участник
Сообщений: 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, поетому по углу не получается определить опережение или опаздывание несущеи.
Go to the top of the page
 
+Quote Post
fontp
сообщение May 8 2008, 06:58
Сообщение #16


Эксперт
*****

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



Цитата(petrov @ May 8 2008, 10:51) *
Да действительно, забыл уже про первое сообщение. Тут вопрос есть обосновано ли такая нестабильность несущей и полоса сигнала, при наличии соседних каналов как все эти поиски работать будут?


Нестабильность несущей обосновывается дешёвыми кварцами на ВЧ. Температурная стабилизация стоит очень дорого.
Поэтому в автономной аппаратуре она всегда высока, нестабильность. Другое дело системы, когда кварцы элементов системы синхронизируются отдельно. Как требует например стандарт DVB, пилот-сигналами

Поиски отлично работают если полоса правильно отфильтрована. Проверено.
Единственная неприятность при слепой обработке - враг легко может поставить синусовую помеху - и всякие интерполяции перестанут работать сразу. Порвать такую связь легко
В случае использования псевдослучайных преамбул нет даже такой опасности. Кроме того и диапазон измеряемых частот в два (М) раз больше. В приличной аппаратуре вообще дожны использоваться data-driven алгоритмы, а не слепые, imho
Go to the top of the page
 
+Quote Post
petrov
сообщение May 8 2008, 07:12
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(fontp @ May 8 2008, 10:58) *
В приличной аппаратуре вообще дожны использоваться data-driven алгоритмы, а не слепые, imho

И дешёвые кварцы... :)
Вобщем не писал автор про борьбу с врагами, может хватит ему генератора пилы в фапч чтоб по диапазону пробежаться.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 8 2008, 07:15
Сообщение #18


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



Цитата(fontp @ May 8 2008, 09:58) *
Нестабильность несущей обосновывается дешёвыми кварцами на ВЧ. Поэтому в автономной аппаратуре она всегда высока. Другое дело системы, когда кварцы элементов системы синхронизируются отдельно. Как требует например стандарт DVB, пилот-сигналами

Поиски отлично работают если полоса правильно отфильтрована. Проверено.
Единственная неприятность при слепой обработке - враг легко может поставить синусовую помеху - и всякие интерполяции перестанут работать сразу. Порвать такую связь легко
В случае использования псевдослучайных преамбул нет даже такой опасности. Кроме того и диапазон измеряемых частот в два (М) раз больше. В приличной аппаратуре вообще дожны использоваться data-driven алгоритмы, а не слепые, imho

так собственно и есть, синхронизатсия происходит по данным.
в обсчем делаем спутниковыи приёмник.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 8 2008, 11:27
Сообщение #19


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



Цитата(petrov @ May 8 2008, 10:12) *
И дешёвые кварцы... smile.gif
Вобщем не писал автор про борьбу с врагами, может хватит ему генератора пилы в фапч чтоб по диапазону пробежаться.

может я не очень правилно сформулировал проблему.
несущая может менятся от частоты канала плюс/минус 1.5 mhz
весь диапазон около 900-1500 mhz

есть возможность подстраивать локальную несущую с шагом 80-100hz

сначала грубо +/-32к находится несущая через бпф
с qpsk вроде как работает, правда есть одна проблема.
с bpsk вообще трабл.

по идее можно модуль I с символ реитом пропустить через LP filter и замерять период.
изменяя частоту локальнои несущеи и выбирать направление, где период наибольшии.
будет ли работать такое?
Go to the top of the page
 
+Quote Post
petrov
сообщение May 8 2008, 12:07
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 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, или лок-индикторы синхронизаций. Промоделируйте это в симулинке!
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 8 2008, 15:01
Сообщение #21


Частый гость
**

Группа: Участник
Сообщений: 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 месяца, вместе с хардом и софтом.

т.е. сейчас думаем над алгоритмом, который бы смог показать куда изменяется несущая, убыстряется или замедляется после того, как мы ее нашли
вот собственно проблема.
Go to the top of the page
 
+Quote Post
petrov
сообщение May 8 2008, 15:42
Сообщение #22


Гуру
******

Группа: Свой
Сообщений: 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 один алгоритм. Уходы конечно безобразные.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 12 2008, 08:20
Сообщение #23


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



как засимулировать несущую?
тобишь на перидатчике имеем:
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, то мы просто не можем избавиться от мнимои части
Go to the top of the page
 
+Quote Post
petrov
сообщение May 12 2008, 08:37
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(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, то мы просто не можем избавиться от мнимои части


Это не представляет никакой проблемы, PSK, QAM так и демодулируются в комплексном виде.
Go to the top of the page
 
+Quote Post
fontp
сообщение May 12 2008, 08:44
Сообщение #25


Эксперт
*****

Группа: Свой
Сообщений: 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
Ф - фазовая ошибка

В общем, она крутится...
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 12 2008, 09:00
Сообщение #26


Частый гость
**

Группа: Участник
Сообщений: 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
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 13 2008, 06:20
Сообщение #27


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



с какой частотои надо считать цикл костаса?
и чем руководствоваться при выборе луп-фильтра?
Go to the top of the page
 
+Quote Post
petrov
сообщение May 13 2008, 07:25
Сообщение #28


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 13 2008, 10:20) *
с какой частотои надо считать цикл костаса?
и чем руководствоваться при выборе луп-фильтра?


Незами почитайте там есть ответы на эти вопросы очень кратко и доступно.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 13 2008, 07:40
Сообщение #29


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



Цитата(petrov @ May 13 2008, 10:25) *
Незами почитайте там есть ответы на эти вопросы очень кратко и доступно.

sorry, не нашел.
не могли бы подсказат, где именно написано?

не могу понять.
луп-филтр уходит в верх и переполняется, даже в симуляции, даже если разница фаз 0.

Сообщение отредактировал maxfox2k - May 13 2008, 07:44
Go to the top of the page
 
+Quote Post
petrov
сообщение May 13 2008, 07:56
Сообщение #30


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 13 2008, 11:40) *
sorry, не нашел.
не могли бы подсказат, где именно написано?


3 глава




Цитата(maxfox2k @ May 13 2008, 11:40) *
не могу понять.
луп-филтр уходит в верх и переполняется, даже в симуляции, даже если разница фаз 0.


Этот фильтр что из себя предстваляет?
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 13 2008, 08:11
Сообщение #31


Частый гость
**

Группа: Участник
Сообщений: 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
Go to the top of the page
 
+Quote Post
petrov
сообщение May 13 2008, 08:39
Сообщение #32


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 13 2008, 12:11) *
распечатал, прочитал
взял на figure 3-8
коеффициенты, как в симуляции. подставил свои параметры семплированиые, вроде должна лочится.
пробую с частотои f_sym * 4


На символьной частоте должна ФАПЧ работать, коэффициенты должны устойчивые быть, посмотрите мои модельки для 16 QAM.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 13 2008, 10:58
Сообщение #33


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



схему 3-18 из незами можно исползоват и для qpsk так?
какой должен быть параметр фильтра?
реально ли реализовать для 12 битной целочисленной арифметики?
Go to the top of the page
 
+Quote Post
fontp
сообщение May 13 2008, 11:09
Сообщение #34


Эксперт
*****

Группа: Свой
Сообщений: 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 градуса устроит ?), но всегда можно пользовать двойную точность
Go to the top of the page
 
+Quote Post
petrov
сообщение May 13 2008, 11:12
Сообщение #35


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 13 2008, 14:58) *
схему 3-18 из незами можно исползоват и для qpsk так?
какой должен быть параметр фильтра?
реально ли реализовать для 12 битной целочисленной арифметики?


Нельзя, только для BPSK. Кроме того это аналоговый костас, можно конечно и в цифре так сделать, но будут лишние вычисления, и разрядность коэффициентов будет повышаться с ростом частоты дискретизации. Требуемая разрядность зависит от этих самых коэффициентов, от полосы ФАПЧ.
Go to the top of the page
 
+Quote Post
Andreas1
сообщение May 13 2008, 11:15
Сообщение #36


Местный
***

Группа: Свой
Сообщений: 446
Регистрация: 12-03-06
Из: Москва
Пользователь №: 15 142



Цитата(maxfox2k @ May 13 2008, 12:11) *
распечатал, прочитал

Вы нашли Низами в электронном виде? Не поделитесь?
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 13 2008, 11:15
Сообщение #37


Частый гость
**

Группа: Участник
Сообщений: 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, а при таких коеффитсиентах выход луп филтра становится очен болшим. вот и подумал, что аналоговую реализатсию нельзя сделать.

а что с фильтром? какие частоты надо отфильтроват?
Go to the top of the page
 
+Quote Post
petrov
сообщение May 13 2008, 11:19
Сообщение #38


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(Andreas1 @ May 13 2008, 15:15) *
Вы нашли Низами в электронном виде? Не поделитесь?


В соседнюю тему по DQPSK загляните...
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 13 2008, 11:19
Сообщение #39


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



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

созвездие фиксировать не требуется.
Go to the top of the page
 
+Quote Post
fontp
сообщение May 13 2008, 11:20
Сообщение #40


Эксперт
*****

Группа: Свой
Сообщений: 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-плоскости.
Но его нужно уметь рассчитать. Описано в любой книге про ФАПЧ.
Обычно используют расчёт аналоговый, а потом решение переносят в дижитал.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 13 2008, 11:40
Сообщение #41


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



Цитата(petrov @ May 13 2008, 14:12) *
Нельзя, только для BPSK. Кроме того это аналоговый костас, можно конечно и в цифре так сделать, но будут лишние вычисления, и разрядность коэффициентов будет повышаться с ростом частоты дискретизации. Требуемая разрядность зависит от этих самых коэффициентов, от полосы ФАПЧ.

т.е. если у нас стоит ацп перед фильтром (3-18) и управляем vco с помошью цап, то такое сделать нельзя?
Go to the top of the page
 
+Quote Post
petrov
сообщение May 13 2008, 11:50
Сообщение #42


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 13 2008, 15:40) *
т.е. если у нас стоит ацп перед фильтром (3-18) и управляем vco с помошью цап, то такое сделать нельзя?


QPSK нельзя схемой (3-18), BPSK можно сделать так как вы описали. Но лучше сделать всё в цифре.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 13 2008, 12:28
Сообщение #43


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



уф, кажись без математики всё заработало. а то в фпга уже умножители закончились.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 15 2008, 09:04
Сообщение #44


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



bpsk заработало, но в qpsk большои error rate получился. видимо без математики никак sad.gif
незами конечно хорошая книжка, но хотелось бы почитать из серии "демодулятор для чаиников" smile.gif
Go to the top of the page
 
+Quote Post
petrov
сообщение May 15 2008, 09:12
Сообщение #45


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 15 2008, 13:04) *
bpsk заработало, но в qpsk большои error rate получился. видимо без математики никак sad.gif
незами конечно хорошая книжка, но хотелось бы почитать из серии "демодулятор для чаиников" smile.gif


Книга Незами и есть "демодулятор для чаиников". Вы связались с такой областью где абы как эвристически на коленке не получится ничего.

Модели симулинковские смотрели? Могу переделать 16QAM в QPSK.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 15 2008, 10:43
Сообщение #46


Частый гость
**

Группа: Участник
Сообщений: 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 smile.gif
Go to the top of the page
 
+Quote Post
petrov
сообщение May 15 2008, 11:07
Сообщение #47


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 15 2008, 14:43) *
da, smotrel. a pochemu v nih net modeli carrier?


В смысле? Синхронизация несущей там восстанавливается, в комплексном виде удобней моделировать, а перенос на несущую и обратно на нулевую тривиальная вроде штука.
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 15 2008, 11:49
Сообщение #48


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



Цитата(petrov @ May 15 2008, 12:12) *
Вы связались с такой областью где абы как эвристически на коленке не получится ничего.

вы даже и не представляете сколько всякого разного так делается smile.gif
к сожалению я знаю как обстоит дело с разработкой у крупнеиших игроков рынка...
взят хоть тот же 3gpp lte smile.gif
Go to the top of the page
 
+Quote Post
GetSmart
сообщение May 15 2008, 11:55
Сообщение #49


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(maxfox2k @ May 15 2008, 17:49) *
к сожалению я знаю как обстоит дело с разработкой у крупнеиших игроков рынка...
взят хоть тот же 3gpp lte smile.gif
И как у них обстоят дела?smile.gif


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 15 2008, 12:17
Сообщение #50


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



Цитата(GetSmart @ May 15 2008, 14:55) *
И как у них обстоят дела?smile.gif

ну я не имелл ввиду стандард. там сидят умные теоретики, без математиков хрен разберешся...
затем ест стаика математиков, которые могут перелозит вормулы в алгоритм.
затем всё так же, на коленках, на коленках smile.gif
Go to the top of the page
 
+Quote Post
petrov
сообщение May 15 2008, 12:31
Сообщение #51


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(maxfox2k @ May 15 2008, 14:43) *
esli est vremya peredelat, to konechno by hotelos posmotret smile.gif


http://electronix.ru/forum/index.php?showt...id=411669&#
Go to the top of the page
 
+Quote Post
maxfox2k
сообщение May 15 2008, 12:49
Сообщение #52


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 14-09-05
Пользователь №: 8 553



Цитата(petrov @ May 15 2008, 15:31) *

ok, thanx.
буду разбиратся
Go to the top of the page
 
+Quote Post

4 страниц V   1 2 3 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 13th August 2025 - 08:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.02634 секунд с 7
ELECTRONIX ©2004-2016