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

 
 
> 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
 
Start new topic
Ответов
maxfox2k
сообщение May 8 2008, 05:04
Сообщение #2


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

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



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

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

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


Гуру
******

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


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

Группа: Свой
Сообщений: 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
petrov
сообщение May 8 2008, 06:53
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 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
fontp
сообщение May 8 2008, 06:58
Сообщение #6


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

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


Гуру
******

Группа: Свой
Сообщений: 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, 11:27
Сообщение #8


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

Группа: Участник
Сообщений: 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
Сообщение #9


Гуру
******

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


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

Группа: Участник
Сообщений: 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

Сообщений в этой теме
- maxfox2k   BPSK carrier recovery   Apr 28 2008, 10:27
- - fontp   Цитата(maxfox2k @ Apr 28 2008, 14:27) ува...   Apr 28 2008, 10:40
|- - maxfox2k   Цитата(fontp @ Apr 28 2008, 13:40) Ну раз...   Apr 28 2008, 11:19
|- - fontp   Цитата(maxfox2k @ Apr 28 2008, 15:19) 1. ...   Apr 28 2008, 11:57
- - petrov   Вот посмотрите модели: http://electronix.ru/forum/...   Apr 29 2008, 07:17
- - MKS   Приветствую всех. Решил спросить в этой теме. Начи...   Apr 29 2008, 09:05
|- - fontp   Цитата(MKS @ Apr 29 2008, 13:05) Приветст...   Apr 29 2008, 10:23
|- - petrov   Цитата(MKS @ Apr 29 2008, 13:05) Приветст...   Apr 29 2008, 12:00
|- - fontp   Цитата(maxfox2k @ May 8 2008, 09:04) може...   May 8 2008, 05:57
||||- - petrov   Цитата(maxfox2k @ May 8 2008, 19:01) собс...   May 8 2008, 15:42
|||- - maxfox2k   Цитата(fontp @ May 8 2008, 09:58) Нестаби...   May 8 2008, 07:15
||- - maxfox2k   Цитата(fontp @ May 8 2008, 09:38) Это вря...   May 8 2008, 06:57
|- - maxfox2k   Цитата(petrov @ May 8 2008, 09:06) Рано в...   May 8 2008, 06:47
- - maxfox2k   как засимулировать несущую? тобишь на перидатчике ...   May 12 2008, 08:20
|- - petrov   Цитата(maxfox2k @ May 12 2008, 12:20) как...   May 12 2008, 08:37
|- - fontp   Цитата(maxfox2k @ May 12 2008, 12:20) как...   May 12 2008, 08:44
|- - maxfox2k   Цитата(fontp @ May 12 2008, 11:44) Ну не ...   May 12 2008, 09:00
- - maxfox2k   с какой частотои надо считать цикл костаса? и чем ...   May 13 2008, 06:20
|- - petrov   Цитата(maxfox2k @ May 13 2008, 10:20) с к...   May 13 2008, 07:25
|- - maxfox2k   Цитата(petrov @ May 13 2008, 10:25) Незам...   May 13 2008, 07:40
|- - petrov   Цитата(maxfox2k @ May 13 2008, 11:40) sor...   May 13 2008, 07:56
|- - maxfox2k   Цитата(petrov @ May 13 2008, 10:56) 3 гла...   May 13 2008, 08:11
|- - petrov   Цитата(maxfox2k @ May 13 2008, 12:11) рас...   May 13 2008, 08:39
|- - Andreas1   Цитата(maxfox2k @ May 13 2008, 12:11) рас...   May 13 2008, 11:15
|- - petrov   Цитата(Andreas1 @ May 13 2008, 15:15) Вы ...   May 13 2008, 11:19
- - maxfox2k   схему 3-18 из незами можно исползоват и для qpsk т...   May 13 2008, 10:58
|- - fontp   Цитата(maxfox2k @ May 13 2008, 14:58) схе...   May 13 2008, 11:09
||- - maxfox2k   Цитата(fontp @ May 13 2008, 14:09) 3-20 К...   May 13 2008, 11:15
|||- - fontp   Цитата(maxfox2k @ May 13 2008, 15:15) e(t...   May 13 2008, 11:20
||- - maxfox2k   Цитата(fontp @ May 13 2008, 14:09) Реализ...   May 13 2008, 11:19
|- - petrov   Цитата(maxfox2k @ May 13 2008, 14:58) схе...   May 13 2008, 11:12
|- - maxfox2k   Цитата(petrov @ May 13 2008, 14:12) Нельз...   May 13 2008, 11:40
|- - petrov   Цитата(maxfox2k @ May 13 2008, 15:40) т.е...   May 13 2008, 11:50
- - maxfox2k   уф, кажись без математики всё заработало. а то в ф...   May 13 2008, 12:28
- - maxfox2k   bpsk заработало, но в qpsk большои error rate полу...   May 15 2008, 09:04
- - petrov   Цитата(maxfox2k @ May 15 2008, 13:04) bps...   May 15 2008, 09:12
- - maxfox2k   Цитата(petrov @ May 15 2008, 12:12) Модел...   May 15 2008, 10:43
|- - petrov   Цитата(maxfox2k @ May 15 2008, 14:43) da,...   May 15 2008, 11:07
|- - petrov   Цитата(maxfox2k @ May 15 2008, 14:43) esl...   May 15 2008, 12:31
|- - maxfox2k   Цитата(petrov @ May 15 2008, 15:31) http:...   May 15 2008, 12:49
- - maxfox2k   Цитата(petrov @ May 15 2008, 12:12) Вы св...   May 15 2008, 11:49
- - GetSmart   Цитата(maxfox2k @ May 15 2008, 17:49) к с...   May 15 2008, 11:55
- - maxfox2k   Цитата(GetSmart @ May 15 2008, 14:55) И к...   May 15 2008, 12:17


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

 


RSS Текстовая версия Сейчас: 2nd August 2025 - 15:41
Рейтинг@Mail.ru


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