|
эквалайзер и tanlock loop, особенности совместной работы |
|
|
|
Aug 4 2010, 06:59
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Добрый день! Наткнулся я тут на один интересный эффект. Имеем модель демодулятора : Гарднер по тактовой, Tanlock по несущей, TSE LMS эквалайзер для простоты реализации. Модель в приложении. В модели ошибка для петель по несушке и эквалайзеру вычисляется одним и тем же блоком. В том смысле что жесткое решение по символу для обоих петель общее. Видно занятный эффект : созвездие на выходе эквалайзера стоит, но на его входе крутится, эффект пропадает если отключить адаптацию эквалайзера. Если посмотреть на коэффициенты эквалайзера то видно что фазу крутит именно он за счет центрального коэффициента. Самое интересное, что амплитуда вращения созвездия на входе эквалайзера по мере продолжительности работы увеличивается и эффект не пропадает даже при сильном заужении петли по эквалайзеру(было 1/2^8, проверял до 1/2^14). Для случая когда частотная расстройка фиксирована и резкой смены частоты, отрабатывают и эквалайзер и петля, но потом эквалайзер быстро возвращается в исходное состояние 0 0 0 0 1 0 0 0. Но если частотная расстройка переменная, то эквалайзер все равно уходит, почему не понятно %( Понятно что т.к. петли работают с одного детектора ошибки то они начинают бороться друг с другом. Но не понятно другое, почему петля по несушке, будучи более широкой отрабатывает ошибку по частоте, но не отрабатывает ошибку по фазе и этим занимается эквалайзер? Почему амплитуда вращения созвездия на входе эквалайзера увеличивается? Если же поставить TSE эквалайзер после петли по несушке, то все хорошо работает. Но в этом случае петля по несушке работает по более плохому сигналу, да и как же тогда работают демодуляторы с FSE эквалайзером ? Может быть у кого то есть ответы на мои вопросы %) Спасибо.
--------------------
|
|
|
|
|
 |
Ответов
|
Aug 8 2010, 13:33
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(petrov @ Aug 7 2010, 04:29)  Всё проще оказалось, ошибка в симулинковском блоке сдвига частоты с внешним входом, на выходе получался нарастающий сдвиг частоты. Если вручную сделать подобный блок, то такая совместная схема эквалайзера и фазовой синхронизации работает нормально. des00, в железе что-то другое у вас... хмм, очень интересно, сей факт в железе мне точно не приснился, все модемщики с отдела его видели и объяснить не могли. Какая именно схема работает? Годдард + tanlock или DD + tanlock? Не могли бы вы модельку выложить ? ЗЫ. я использую матлаб 2007а, надо проверить есть ли в нем сей баг.
--------------------
|
|
|
|
|
Aug 9 2010, 01:43
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(petrov @ Aug 8 2010, 10:23)  Вполне ожидаемое явление, можно подобрать коэффициенты петель такие, что это будет практически незаметно. На длительных интервалах наблюдения (в матлабе ждать замучаешься %)) это заметно. Цитата(Oldring @ Aug 8 2010, 16:07)  Он не гоняется. Он медленно дрейфует. Ну можно и так сказать, на полосе 11МГц, созвездие на входе эквалайзера вращается против часовой стрелки со скоростью пара оборотов за ~6 минут. Когда ставишь эквалайзер за петлями, такого дрейфа нет. Что то же является причиной возникновения этого дрейфа?
--------------------
|
|
|
|
|
Aug 9 2010, 07:28
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(des00 @ Aug 9 2010, 05:43)  Ну можно и так сказать, на полосе 11МГц, созвездие на входе эквалайзера вращается против часовой стрелки со скоростью пара оборотов за ~6 минут. Когда ставишь эквалайзер за петлями, такого дрейфа нет. Что то же является причиной возникновения этого дрейфа? Оборот более чем за миллиард символов. IMHO просто ограниченость разрядности цифровых сигналов в контуре. Фазовый компенсатор не может абсолютно точно скомпенсировать частоту, вот она и дрейфует. В паре дифференциатор-интегратор есть неуправляемое состояние, из-за вычислительных ошибок оно может дрейфовать. Что тут ни делай - это неуправляемое состояние неизбежно, если нуль компенсируется расположенным далее полюсом. Если же контур фазового слежения полностью замкнут перед эквалайзером, те же ошибки должны приводить не к дрейфу, но к нулеым циклам колебания фазового контура. Так как каждая из петель замкнута по своему фазовому сигналу, они, разумеется, обе не могут дрейфовать. А нулевые колебания, разумеется, заметить гораздо сложнее, чем непрерывный, хоть и медленый дрейф. Может быть и не нулевые колебания, если шум каждого сигнала существенно превышает его дискрет, но интегратор всё равно интегрирует вычислительные ошибки, и неуправляемое состояние уплывает. Правда, если фаза дрейфует равномерно, это на случайные блуждания непохоже, то есть шум оказывается со слегка ненулевым средним. Так что скорее всего или разрядность тут играет определяющую роль, или смещенность округления отбрасыванием младших разрядов. С этим, разумеется, можно бороться, для начала реализовав несмещенное округление к четному, добившись случайности блужданий вместо непрерывного одностороннего дрейфа, но зачем?
--------------------
Пишите в личку.
|
|
|
|
|
Aug 10 2010, 06:11
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(Oldring @ Aug 9 2010, 01:28)  С этим, разумеется, можно бороться, для начала реализовав несмещенное округление к четному, добившись случайности блужданий вместо непрерывного одностороннего дрейфа, но зачем? после замены матлабовского блока на DDS модель стала вести себя адекватно. Сразу подумал про ошибку округления, т.к. в железе использую простой floor (жрет меньше ресурса). Но при этом отрицательные и положительные числа округляются в разную сторону. Такое округление было в FIR по выходным данным и по коэффициентам эквалайзера, при взятии фазы синуса/косинуса в DDS. Поставил везде округление к нулю. Но не помогло. Дрейф все равно остался %) Потом заметил, что по ошибке у меня стоит макрос использовать честный кордик, вместо таблички для решений по точкам, а т.к. у меня предполагается только QPSK модуляция выбрал использование таблицы. И скорость вращения уменьшилась раза в 2-3. Что странно, т.к. кордик гарантированно рабочий (вычисления им и в матлабе бьются один в один), разрядность фазы составляет 32бита, используется 16 шагов. Ваше указание на источник такого поведения оказалось верным %) Собрал демодулятор с эквалайзером перед tanlock, поставлю на суточные прогоны, посмотрю как будет работать.
--------------------
|
|
|
|
Сообщений в этой теме
des00 эквалайзер и tanlock loop Aug 4 2010, 06:59 petrov Цитата(des00 @ Aug 4 2010, 10:59) Может б... Aug 4 2010, 09:04 des00 Цитата(petrov @ Aug 4 2010, 03:04) Надо р... Aug 4 2010, 09:51  petrov Покрутил тут на модельке простой способ - принудит... Aug 4 2010, 17:08   des00 Цитата(petrov @ Aug 4 2010, 11:08) Покрут... Aug 5 2010, 00:33    petrov Цитата(des00 @ Aug 5 2010, 04:33) Да, ест... Aug 5 2010, 05:48     des00 Цитата(petrov @ Aug 4 2010, 23:48) Ну реч... Aug 5 2010, 05:58      petrov Цитата(des00 @ Aug 5 2010, 09:58) исполни... Aug 5 2010, 06:27       des00 Цитата(petrov @ Aug 5 2010, 00:27) Да про... Aug 5 2010, 08:04        petrov Цитата(des00 @ Aug 5 2010, 12:04) но в та... Aug 5 2010, 08:45         des00 Цитата(petrov @ Aug 5 2010, 02:45) Судя п... Aug 5 2010, 08:58          petrov %) Да чего далеко ходить, здесь умельцы есть
http... Aug 5 2010, 09:20           des00 Цитата(petrov @ Aug 5 2010, 03:20) сделал... Aug 5 2010, 11:03            vadimuzzz Цитата(des00 @ Aug 5 2010, 18:03)
можно ... Aug 5 2010, 11:15             des00 Цитата(vadimuzzz @ Aug 5 2010, 06:15) мож... Aug 5 2010, 11:32              vadimuzzz Цитата(des00 @ Aug 5 2010, 18:32) ну эква... Aug 5 2010, 14:18 des00 Использование критерия настройки Годдарда показыва... Aug 5 2010, 04:46 petrov Цитата(des00 @ Aug 5 2010, 08:46) Использ... Aug 5 2010, 11:41  des00 Цитата(petrov @ Aug 5 2010, 06:41) Напрас... Aug 5 2010, 12:00   Oldring Ну вращается. Ну и что? Фаза-то переполниться не м... Aug 5 2010, 12:24   petrov Цитата(des00 @ Aug 5 2010, 16:00) не верю... Aug 5 2010, 12:27    Oldring Цитата(petrov @ Aug 5 2010, 16:27) Начина... Aug 5 2010, 12:30     petrov Цитата(Oldring @ Aug 5 2010, 16:30) Так н... Aug 5 2010, 12:36      Oldring Цитата(petrov @ Aug 5 2010, 16:36) Выше н... Aug 5 2010, 12:46       petrov Цитата(Oldring @ Aug 5 2010, 16:46) Не пр... Aug 5 2010, 13:01        Oldring Цитата(petrov @ Aug 5 2010, 17:01) У меня... Aug 5 2010, 13:48    des00 Цитата(petrov @ Aug 5 2010, 07:27) А в же... Aug 5 2010, 16:25     fontp QUOTE (des00 @ Aug 5 2010, 20:25) дык кон... Aug 5 2010, 17:49     vadimuzzz Цитата(des00 @ Aug 5 2010, 23:25) дык кон... Aug 5 2010, 22:46      des00 Цитата(vadimuzzz @ Aug 5 2010, 16:46) так... Aug 6 2010, 03:11       vadimuzzz Цитата(des00 @ Aug 6 2010, 10:11) угу и к... Aug 6 2010, 03:21        des00 Цитата(vadimuzzz @ Aug 5 2010, 22:21) зач... Aug 6 2010, 03:40 Oldring Любопытно...
В фильтре эквалайзера комплексный сиг... Aug 6 2010, 08:37 petrov Цитата(Oldring @ Aug 6 2010, 12:37) Любоп... Aug 6 2010, 08:49 Oldring Гы...
Ахренеть...
Угадайте-ка, что это за графи... Aug 6 2010, 14:20      petrov Цитата(des00 @ Aug 9 2010, 05:43) На длит... Aug 9 2010, 06:54       Oldring Цитата(petrov @ Aug 9 2010, 10:54) Ошибка... Aug 9 2010, 08:49        petrov Цитата(Oldring @ Aug 9 2010, 12:49) В точ... Aug 9 2010, 09:32         Oldring Цитата(petrov @ Aug 9 2010, 13:32) Там в ... Aug 9 2010, 10:11          petrov Oldring, как проще всего в данной модели дрейф про... Aug 9 2010, 10:33           Oldring Цитата(petrov @ Aug 9 2010, 14:33) Oldrin... Aug 9 2010, 10:46            petrov Цитата(Oldring @ Aug 9 2010, 14:46) Приба... Aug 9 2010, 10:58             Oldring Цитата(petrov @ Aug 9 2010, 14:58) Угу ви... Aug 9 2010, 11:15              petrov Цитата(Oldring @ Aug 9 2010, 15:15) Теори... Aug 9 2010, 11:18    Oldring Цитата(des00 @ Aug 8 2010, 19:14) Вот име... Aug 8 2010, 21:07 MKS petrov а вы бы не могли уточнить в чём именно закл... Aug 7 2010, 15:50 petrov Цитата(MKS @ Aug 7 2010, 19:50) petrov а ... Aug 7 2010, 16:43 MKS Хмм.... а у меня так не получается. Вот моделька т... Aug 7 2010, 16:56 petrov Цитата(MKS @ Aug 7 2010, 20:56) Хмм.... а... Aug 7 2010, 17:17 MKS Вот это уже интересно.... Пошёл ставить версию 201... Aug 7 2010, 17:21
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|