|
Демодуляция GFSK с помощью Витерби |
|
|
|
Mar 2 2011, 08:42
|
Частый гость
 
Группа: Свой
Сообщений: 136
Регистрация: 10-04-09
Из: Омск
Пользователь №: 47 461

|
Доброго времени суток. Возникла необходимость переписать GFSK демодулятор, заменив посимвольное принятие решений на более помехоустойчивое, учитывающее память сигнала с помощью алгоритма Витерби. Пока даже не важен индекс модуляции и BT гауссовского фильтра, т.к. при необходимости можно и поменять. Построил модель в Matlab, для простоты первого понимания взял сигнал MSK. Однако даже в этом случае возникло непонимание. Во-первых не ясно как быть с начальными условиями. Везде для пояснения пишут что в начале "0", но как я на приемном конце могу знать, что передается если я ещё это не декодировал и не принял решения? Во-вторых, в "Прокис - Цифровая связь" сказано, что на каждом интервале необходимо для каждого узла вычислять метрики, т.е. в нашем случае для каждого из 4-х узлов необходимо вычислить две метрики и исключить наибольшую. При этом на каждом символьном интервале у нас могут быть только два состояния, соответствующие +/-(pi/2) от предыдущего фазового состояния. Поэтому не ясен смысл вычислений метрик для оставшихся двух узлов.
|
|
|
|
|
 |
Ответов
|
Mar 2 2011, 09:25
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(STAR_IK @ Mar 2 2011, 11:42)  Во-первых не ясно как быть с начальными условиями. Везде для пояснения пишут что в начале "0", но как я на приемном конце могу знать, что передается если я ещё это не декодировал и не принял решения? Декодер необходимо синхронизировать, например по преамбуле устанавливать в исходное состояние. Цитата(STAR_IK @ Mar 2 2011, 11:42)  Во-первых не ясно как быть с начальными условиями. Везде для пояснения пишут что в начале "0", но как я на приемном конце могу знать, что передается если я ещё это не декодировал и не принял решения? У MSK 4 фазовых состояния 0 pi/2 pi -pi/2, из предыдущего фазового состояния не все переходы возможны, возможные и образуют решётку переходов между 4-мя фазовыми состояниями. Другое дело что MSK можно оптимально без витерби демодулировать, да и в случае GMSK c BT=0.3 такой демодулятор не очень много проигрывает, что-то в районе децибела с копейками.
|
|
|
|
|
Mar 2 2011, 12:44
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(petrov @ Mar 2 2011, 12:25)  Декодер необходимо синхронизировать, например по преамбуле устанавливать в исходное состояние. Нет вру, нет нужды знать начальное состояние автомата, выживший путь автоматом будет из правильного состояния выходить. Важно в конце блока автомат в известное состояние перевести чтобы последние символы декодировать. Цитата(Serg76 @ Mar 2 2011, 15:32)  Это устройство в общем и называется эквалайзером Витерби, которое производит оценку ИХ канала, а алгоритм Витерби применяется для расчета метрику и оценки переданной последовательности данных. С чего бы это? А если я по этой известной настроечной последовательности рассчитываю коэффициенты DFE эквалайзера? Это всего лишь фильтр согласованный с известной последовательностью, почему он вдруг эквалайзером Витерби стал?
|
|
|
|
|
Mar 3 2011, 05:48
|
Частый гость
 
Группа: Свой
Сообщений: 136
Регистрация: 10-04-09
Из: Омск
Пользователь №: 47 461

|
Цитата(petrov @ Mar 2 2011, 18:44)  Нет вру, нет нужды знать начальное состояние автомата, выживший путь автоматом будет из правильного состояния выходить. Важно в конце блока автомат в известное состояние перевести чтобы последние символы декодировать. Если я правильно понял то не зная начальных условий мы перебираем все возможные пути. Однако если мы с помощью синхрослова синхронизируем начальный момент декодирования, то мы исключим из перебора те ветви, которые в принципе не могут выходить из данного начального состояния. Т.е. для той же MSK в синхрословом мы можем сократить количество путей в два раза??? Стоит наверно сказать более подробно о сигнале и приемнике: сигнал представляет собой короткое сообщение - 2 байта синхрослова + 10 байт данных. Приемник выполнен на сигнальном процессоре TMS320C5509. Может и не стоит в данном случае применять декодирование по Витерби, но как тогда учесть память сигнала. Посимвольные детектирование сигналов МНФ по максимуму апостериорной вероятности в данном случае не пойдет... каналов много, сигнальник не вытянет. to petrov: В модели которой Вы привели система с обратной связью, она просто не успеет за это время войти в синхронизм.
Сообщение отредактировал STAR_IK - Mar 3 2011, 07:08
|
|
|
|
|
Mar 3 2011, 07:48
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(STAR_IK @ Mar 3 2011, 08:48)  Если я правильно понял то не зная начальных условий мы перебираем все возможные пути. Однако если мы с помощью синхрослова синхронизируем начальный момент декодирования, то мы исключим из перебора те ветви, которые в принципе не могут выходить из данного начального состояния. Т.е. для той же MSK в синхрословом мы можем сократить количество путей в два раза??? Ну начальный момент это слишком мало чтобы тут что-то наэкономить, впрочем если в этом есть какой-то смысл то не проблема на передаче сбрасывать элементы памяти в начальное состояние. Цитата(STAR_IK @ Mar 3 2011, 08:48)  Стоит наверно сказать более подробно о сигнале и приемнике: сигнал представляет собой короткое сообщение - 2 байта синхрослова + 10 байт данных. Приемник выполнен на сигнальном процессоре TMS320C5509. Может и не стоит в данном случае применять декодирование по Витерби, но как тогда учесть память сигнала. Посимвольные детектирование сигналов МНФ по максимуму апостериорной вероятности в данном случае не пойдет... каналов много, сигнальник не вытянет. ИМХО для GMSK выигрыш мал чтобы заморачиваться алгоритмом Витерби. Цитата(STAR_IK @ Mar 3 2011, 08:48)  to petrov: В модели которой Вы привели система с обратной связью, она просто не успеет за это время войти в синхронизм. Можно сделать feed forward фазовую синхронизацию подобно как в модели для pi/4 qpsk приводил или по преамбуле синхронизироваться быстро а потом переключаться на обратную связь.
|
|
|
|
Сообщений в этой теме
STAR_IK Демодуляция GFSK с помощью Витерби Mar 2 2011, 08:42 Alex65111 Цитата(petrov @ Mar 2 2011, 12:25) Другое... Mar 2 2011, 09:56  petrov Цитата(Alex65111 @ Mar 2 2011, 12:56) Это... Mar 2 2011, 10:00   Alex65111 Цитата(petrov @ Mar 2 2011, 13:00) http:/... Mar 2 2011, 10:41    petrov Цитата(Alex65111 @ Mar 2 2011, 13:41) Ну ... Mar 2 2011, 10:54  Serg76 Цитата(petrov @ Mar 2 2011, 15:44) С чего... Mar 2 2011, 15:19    STAR_IK Цитата(petrov @ Mar 3 2011, 13:48) ИМХО д... Mar 3 2011, 08:45     petrov Цитата(STAR_IK @ Mar 3 2011, 11:45) На са... Mar 3 2011, 09:08     Serg76 Цитата(STAR_IK @ Mar 3 2011, 12:45) Схема... Mar 3 2011, 09:29 one_eight_seven Алгоритм Витерби, вообще, не применяется для демод... Mar 2 2011, 10:50 Alex65111 Цитата(one_eight_seven @ Mar 2 2011, 13:5... Mar 2 2011, 10:56  petrov Цитата(Alex65111 @ Mar 2 2011, 13:56) А к... Mar 2 2011, 11:04 one_eight_seven В GSM применяется Soft-Decision Viterbi Decoder, д... Mar 2 2011, 11:00 Serg76 Цитата(one_eight_seven @ Mar 2 2011, 15:0... Mar 2 2011, 11:10  petrov Цитата(Serg76 @ Mar 2 2011, 14:10) В GSM ... Mar 2 2011, 11:40   Serg76 Цитата(petrov @ Mar 2 2011, 14:40) Вроде ... Mar 2 2011, 12:32 one_eight_seven Чтобы применить эквалайзер витерби нужно передават... Mar 2 2011, 12:21 Gyga Можно вопрос? Почему в эквалайзере витерби использ... Dec 25 2012, 04:56
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|