|
DBPSK, Демодуляция и детектирование |
|
|
|
Jun 19 2012, 05:45
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 24-02-11
Пользователь №: 63 222

|
Добрго времени суток всем. Прошу помощи у специалистов по ЦОС. Имеется следующая задача: необходимо демодулировать сигнал с дифференциальной фазовой модуляцией. Скорость передачи данных 64 кбит/c. Структурная схема приемной части (точнее той части приемника, которая производит цифровую обработку сигнала) приведена ниже. Сигнал ПЧ (в моем случае fz=10,7 МГц) оцифровывается с частотой дискретизации fd = 8,56 МГц. Затем оцифрованный сигнал ПЧ-подается на синфазно-квадратурный смеситель и переносится на нулевую частоту. Далее осуществляется канальная фильтрация и децимация при помощи CIC-фильтра(кол-во каскадов 6, дифф. задержка 1, коэфф. прореживания 32). На выходе данного фильтра имеем уже частоту дискретизации соответственно 267,5 кГц. За CIC-фильтром стоит компенсирующий КИХ-фильтр который осуществляет прореживание еще в два раза. Таким образом полезный сигнал подается на детектор с частотой дискретизации 133,75 кГц. Детектор сравнивает текущий отсчет символа с предыдущим. Знак комплексной экспоненты и есть исходная информационная последовательность. В принципе данный алгоритм работает, но существуют определенные зоны информационной последовательности, где происходит ложная инверсия принятого символа (бита). Хотелось бы разобраться в причинах некоректной работы данной схемы. Есть несколько догадок что может вызывать такой эффект, но может быть кто-то сталкивался уже с подобным. Снятые осциллограммы исходной и принятой последовательности приведены ниже. Заранее благодарен.
Эскизы прикрепленных изображений
|
|
|
|
|
 |
Ответов
|
Jun 29 2012, 07:11
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 24-02-11
Пользователь №: 63 222

|
Цитата(Serg76 @ Jun 29 2012, 11:04)  2 PavPro Решающее устройство можно построить и при одном отсчете на символ, другой вопрос как Вы собираетесь проектировать остальные узлы демодулятора: ФАПЧи по тактам и несущей, в этом случае 1 sps может быть недостаточно. Вот и я о том же, поэтому задумка такая: 8-отсчетов на символ усреднить при помощи интегратора, а затем уже накопленную сумму подавать на решающее устройство с частотой 64 кГц. Детектор будет сравнивать предыдущию сумму с текущей и на основе этого сравнения (скажем знака) принимать решение о самом символе. Хотя может я и ошибаюсь?
|
|
|
|
|
Jun 29 2012, 07:37
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 24-02-11
Пользователь №: 63 222

|
Цитата(petrov @ Jun 29 2012, 11:23)  Вы понимаете что эти 64 кГц должна быть частота передатчика а не приёмника, иначе у вас постоянно будут символы пропускаться или лишние появляться? На приёме вы должны восстанавливать символьную частоту передатчика или кратную ей. Да совершенно верно, 64 кГц - частота данных идущих на модулятор передающего устройства. Видимо в моих рассуждениях что-то не так? Попробую объяснить еще раз. Приемник принимает исходную несущую частоту и преобразует ее на ПЧ=10,7 МГц. Данная ПЧ оцифровывается с fдискретизации 8,56 МГц. Затем оцифрованный сигнал я преношу на 0 ПЧ. И на нулевой ПЧ пытаюсь восстановить исходную информационную последовательность при помощи описанного выше алгоритма. Символьный синхронизатор это уже следующий этап. Пока моя задача просто восстановить исходную последовательность. Прошу меня поправить если я что-то коряво изложил.
|
|
|
|
|
Jun 29 2012, 07:50
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 24-02-11
Пользователь №: 63 222

|
Цитата(Serg76 @ Jun 29 2012, 11:40)  Ну а как Вы ее восстановите, Вы даже не будете знать границы начала и/или конца символов? Накапливая 8 отсчетов на символ, и сравнивая текущее значение суммы с предыдущим, можно как я полагаю сделать вывод о том, принимается символ с той же фазой что и предыдущий, или произошла инверсия фазы. Осциллограмы которые приведены в начале поста, были получены именно так. Причем эти осцилограммы получены с реального макета, а не методом моделирования. Может Вы мне, укажите что конкретно в моих рассуждениях не так?
|
|
|
|
|
Jun 29 2012, 09:25
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 24-02-11
Пользователь №: 63 222

|
Цитата(Serg76 @ Jun 29 2012, 12:15)  Каким образом решающее устройство будет знать с какого момента (отсчета) начинать накопление? За это и отвечает тактовая синхронизация, кроме того, еще надо устранить начальное смещение фазы во всех отсчетах. На структурной схеме DBPSK-модулятора ( http://dspsys.org/dsparticles/26-dbpskdemod) видно, что схема символьной синхронизации стоит после детектора. Т.е. символьный синхронизатор осуществляет временную привязку каждого символа, после того как восстановлена двоичная последовательность (некий поток нулей и единиц). Кстати насколько я понимаю, одна из задач скремблирования, заключается в том чтобы избегать длинных последовательностей нулей или единиц при которых сбивается работа символьного синхронизатора. Как я могу восстановить синхронизацию не имея восстановленной двоичной последовательности мне непонятно? Приемник ведь ничего незнает о текущем символе. Он может быть даже включенным в момент середины передачи какого -либо символа.
|
|
|
|
|
Jun 29 2012, 09:40
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(PavPro @ Jun 29 2012, 12:25)  На структурной схеме DBPSK-модулятора ( http://dspsys.org/dsparticles/26-dbpskdemod) видно, что схема символьной синхронизации стоит после детектора. Т.е. символьный синхронизатор осуществляет временную привязку каждого символа, после того как восстановлена двоичная последовательность (некий поток нулей и единиц). По-моему, эта схема синхронизации не имеет никакого отношения к системе тактовой синхронизации демодулятора. На самом деле при потактной работе демодулятора все системы тоже вырабатывают свои решения и ошибки на каждом символьном интервале. Другой вопрос, что системы могут работать независимо (автономно) друг от друга и для подстройки использовать каждый свой детектор. Цитата(PavPro @ Jun 29 2012, 12:25)  Кстати насколько я понимаю, одна из задач скремблирования, заключается в том чтобы избегать длинных последовательностей нулей или единиц при которых сбивается работа символьного синхронизатора. да, это действительно так. Цитата(PavPro @ Jun 29 2012, 12:25)  Как я могу восстановить синхронизацию не имея восстановленной двоичной последовательности мне непонятно? Приемник ведь ничего незнает о текущем символе. Он может быть даже включенным в момент середины передачи какого -либо символа. Ну разные есть схемы, некоторые из них используют обратную связь по решению (feedback), некоторые используют так называемую связь "вперед" (feedforward).
|
|
|
|
|
Jun 29 2012, 10:10
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 24-02-11
Пользователь №: 63 222

|
Цитата(Serg76 @ Jun 29 2012, 13:40)  По-моему, эта схема синхронизации не имеет никакого отношения к системе тактовой синхронизации демодулятора. На самом деле при потактной работе демодулятора все системы тоже вырабатывают свои решения и ошибки на каждом символьном интервале. Другой вопрос, что системы могут работать независимо (автономно) друг от друга и для подстройки использовать каждый свой детектор.
да, это действительно так.
Ну разные есть схемы, некоторые из них используют обратную связь по решению (feedback), некоторые используют так называемую связь "вперед" (feedforward). Как я понимаю, в схеме приведенной выше используется символьная синхронизация осуществляющая, обратную связь по решению? Именно такой синхронизатор я и собираюсь использовать для своей задачи. Т.е. синхронизатор который работает по фронтам восттановленной последовательности. Есть еще несколько вопросов по интерполятору Фарроу cхема которого взята http://www.dsplib.ru/content/farrow/farrow.html:1. Правильно ли я понял, что все вычисления внутри фильтра проводятся с исходной частотой дискретизации входного сигнала y(n); 2. На выходе крайнего сумматора должен стоять регистр работающий уже на частоте которая нужна пользователю. 3. Величина x - константой или она также динамически изменяется? С x (заначение по времени) больше всего непоняток. 4. Пока никак немогу сообразить как эта величина будет фигурировать в моем случае. Цитата(petrov @ Jun 29 2012, 13:54)  Ну достаточно безграмотная схема в статье.
Вот как раз этим и нужно заняться, всё с точность до наоборот чтобы восстановить последовательность нужна схема символьной синхронизации. Про схему Гарднера(Gardner) почитайте например. Ориентируйтесь и на англоязычные статьи. Сделать интерполятор Фарроу и не управлять им для точной синхронизации просто бестолково как-то.
Почитайте ещё про согласованную фильтрацию, про фильтр с частотной характеристикой корень из приподнятого косинуса. Да, спасибо Вам большое буду разбираться. Надо взять таймаут.
|
|
|
|
Сообщений в этой теме
PavPro DBPSK Jun 19 2012, 05:45 litv снято на реальном устройстве? Подстройка частоты н... Jun 19 2012, 06:58 PavPro Цитата(litv @ Jun 19 2012, 10:58) снято н... Jun 19 2012, 08:02 Serg76 Схема диффдекодера неправильная Jun 19 2012, 07:51 Serg76 Зачем Вам для бинарной PSK две задержки в каждом п... Jun 19 2012, 08:12 PavPro Цитата(Serg76 @ Jun 19 2012, 12:12) Зачем... Jun 19 2012, 08:19 Serg76 ха, ну тогда все ясно. Как же Вы получите правильн... Jun 19 2012, 09:04 PavPro Цитата(Serg76 @ Jun 19 2012, 13:04) ха, н... Jun 19 2012, 09:27 Serg76 Только целое число отсчетов на символ. И даже при ... Jun 19 2012, 09:39 PavPro Цитата(Serg76 @ Jun 19 2012, 13:39) Тольк... Jun 19 2012, 10:07  Serg76 Цитата(PavPro @ Jun 19 2012, 13:07) Спаси... Jun 19 2012, 10:18   PavPro Цитата(Serg76 @ Jun 19 2012, 14:18) так к... Jun 29 2012, 06:18    Serg76 Цитата(PavPro @ Jun 29 2012, 09:18) Добры... Jun 29 2012, 06:31     petrov Цитата(Serg76 @ Jun 29 2012, 10:31) а зат... Jun 29 2012, 06:46      Serg76 Цитата(petrov @ Jun 29 2012, 09:46) может... Jun 29 2012, 06:50      PavPro Цитата(petrov @ Jun 29 2012, 10:46) может... Jun 29 2012, 06:54       petrov Цитата(PavPro @ Jun 29 2012, 10:54) Извин... Jun 29 2012, 07:02     PavPro Цитата(Serg76 @ Jun 29 2012, 10:31) может... Jun 29 2012, 06:48  Serg76 Цитата(PavPro @ Jun 29 2012, 10:11) Вот и... Jun 29 2012, 07:23      petrov Цитата(PavPro @ Jun 29 2012, 11:50) текущ... Jun 29 2012, 08:01          petrov Цитата(PavPro @ Jun 29 2012, 13:57) 1. Пр... Jun 29 2012, 10:14           PavPro Цитата(petrov @ Jun 29 2012, 14:14) Вычис... Jun 29 2012, 10:19        petrov Цитата(PavPro @ Jun 29 2012, 13:25) На ст... Jun 29 2012, 09:54 PavPro День добрый. Разбираясь с вопросами синхронизации,... Jul 27 2012, 08:50
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|