|
Вычисление LLR декодера турбокода, Необходимо подробное описание математики алгоритма для практической ре |
|
|
|
Nov 30 2008, 09:59
|
Частый гость
 
Группа: Свой
Сообщений: 181
Регистрация: 24-05-06
Из: Россия, Таганрог
Пользователь №: 17 409

|
Здравствуйте!
Столкнулся с задачей турбокодирования и сразу возникли проблемы с документацией и литературой касательно темы. Единственный неплохой на мой взгляд источник информации (на русском языке), который я нашел, это книга Б. Скляра "Цифровая связь". Но все же, эта информация дает базовые теоретические знания о турбокодировании и не раскрывает до конца всех тонкостей проектирования турбокодека применительно к практике (программные или аппаратные реализации). С кодером проблем, естественно, не возникло. Трудности появились с реализацией так называемого SISO декодера, а точнее с вычислением логарифмического отношения функций правдопродобия (LLR), по алгоритму MAP (Maximum A Posteriori). С математикой в принципе все ясно, применяем теорему Байеса, вычисляем прямую, обратную метрику состояний и метрику ветви и т.д. Но это в теории. Хотелось бы взглянуть на аппроксимированную практическую реализацию, т.к. исходный алгоритм MAP существует только в теории, а на практике применяют его модификации, такие как log-MAP и MAX-log-MAP. Вобщем, буду рад, если у кого-нибудь найдется достаточно подробная информация по вычислению LLR декодера турбокодов применительно к практической реализации (программная или аппаратная).
Благодарю за внимание!
--------------------
Не сломаешь - не поймешь!
|
|
|
|
|
 |
Ответов
|
Nov 8 2010, 18:24
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 5-06-10
Пользователь №: 57 761

|
подскажите, пожалуйста, для 2D турбокодов с гипер осью (enhanced Turbo Product Codes), могут ли базовые коды для осей Х и У быть различными? например: X --> (32,26), y --> (16,11) ? смотря на картинку (для одинаковых базовых кодов по осям (8,4) в данном случае) правило по которому вычисляется enhanced-parity row понятно, как оно изменится если код, например, по оси Х будет "длинее" (если ответ на 1 вопрос - да)? -спасибо
Сообщение отредактировал dsp85 - Nov 8 2010, 18:25
Эскизы прикрепленных изображений
|
|
|
|
|
Nov 8 2010, 18:56
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(dsp85 @ Nov 8 2010, 22:24)  подскажите, пожалуйста, для 2D турбокодов с гипер осью (enhanced Turbo Product Codes), могут ли базовые коды для осей Х и У быть различными? например: X --> (32,26), y --> (16,11) ?
смотря на картинку (для одинаковых базовых кодов по осям (8,4) в данном случае) правило по которому вычисляется enhanced-parity row понятно, как оно изменится если код, например, по оси Х будет "длинее" (если ответ на 1 вопрос - да)?
-спасибо могут, хотя из этого рисунка это не совсем понятно. при вычислении проверки по гипероси биты, находящиеся под главной диагональю и над ней будут давать не полную проверку. только главная диагональ будет давать полную проверку кодового слова необходимой длины. для формирования остальных бит проверки необходимо делать следующим образом: берем, например, первую диагональ, которая находится на один уровень ниже главной диагонали и видим, что для формирования проверки для полного кодового слова нам не хватает одного бита, поэтому этот бит мы возьмем из правого верхнего угла, затем для формирования второй проверки берем вторую диагональ, которая находится ниже главной диагонали на два уровня и дополняем это кодовое слово двумя битами из диагонали, которая находится на один уровень ниже от правого верхнего угла и т.д. таким образом после всех этих преобразований весь кодовый блок дополняется снизу еще одной строкой, состоящей из бит проверки по диагонали
|
|
|
|
|
Nov 8 2010, 19:02
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 5-06-10
Пользователь №: 57 761

|
Цитата(Serg76 @ Nov 8 2010, 21:56)  могут, хотя из этого рисунка это не совсем понятно. при вычислении проверки по гипероси биты, находящиеся под главной диагональю и над ней будут давать не полную проверку. только главная диагональ будет давать полную проверку кодового слова необходимой длины. для формирования остальных бит проверки необходимо делать следующим образом: берем, например, первую диагональ, которая находится на один уровень ниже главной диагонали и видим, что для формирования проверки для полного кодового слова нам не хватает одного бита, поэтому этот бит мы возьмем из правого верхнего угла, затем для формирования второй проверки берем вторую диагональ, которая находится ниже главной диагонали на два уровня и дополняем это кодовое слово двумя битами из диагонали, которая находится на один уровень ниже от правого верхнего угла и т.д. таким образом после всех этих преобразований весь кодовый блок дополняется снизу еще одной строкой, состоящей из бит проверки по диагонали понял, спасибо! а порядок заполнения enhanced parity row важен? после расчета четности по главной диагонали, следующую диагональ нужно брать выше или ниже главной диагонали? Вы привели пример, когда следующая диагональ находится на уровень ниже, а на рисунке - она на уровень выше. ведь при декодировании это важно знать, как тут быть?
Сообщение отредактировал dsp85 - Nov 8 2010, 19:09
|
|
|
|
Сообщений в этой теме
Rundll Вычисление LLR декодера турбокода Nov 30 2008, 09:59 Serg76 Цитата(Rundll @ Nov 30 2008, 12:59) Здрав... Nov 30 2008, 12:44 Rundll Цитата(Serg76 @ Nov 30 2008, 15:44) Вы не... Nov 30 2008, 14:17 dsp85 Цитата(Serg76 @ Nov 30 2008, 16:44) Вы не... Jul 19 2010, 16:55  petrov Цитата(dsp85 @ Jul 19 2010, 20:55) Serg76... Jul 19 2010, 17:18   dsp85 Цитата(petrov @ Jul 19 2010, 21:18) В 5 п... Jul 19 2010, 17:39  vadimuzzz Цитата(dsp85 @ Jul 19 2010, 23:55)
глянь... Jul 20 2010, 00:18   dsp85 2 vadimuzzz,
а Вы дедодер TPC сделали только прогр... Jul 22 2010, 16:20    Serg76 Цитата(dsp85 @ Jul 22 2010, 19:20) есть л... Jul 22 2010, 16:38     dsp85 Цитата(Serg76 @ Jul 22 2010, 20:38) MAP (... Jul 22 2010, 16:48      Serg76 Цитата(dsp85 @ Jul 22 2010, 19:48) Serg76... Jul 22 2010, 16:55    vadimuzzz Цитата(dsp85 @ Jul 22 2010, 23:20) 2 vadi... Jul 22 2010, 22:44 Serg76 Вспомнил, достаточно глубоко сверточными турбодеко... Nov 30 2008, 15:04 Rundll Цитата(Serg76 @ Nov 30 2008, 18:04) Вспом... Nov 30 2008, 15:45  Serg76 Цитата(Rundll @ Nov 30 2008, 18:45) TI sp... Nov 30 2008, 16:21   Rundll Цитата(Serg76 @ Nov 30 2008, 19:21) В реа... Nov 30 2008, 16:40    Serg76 Цитата(Rundll @ Nov 30 2008, 19:40) log-M... Nov 30 2008, 18:01     Rundll Цитата(Serg76 @ Nov 30 2008, 21:01) По по... Nov 30 2008, 19:08      Serg76 Цитата(Rundll @ Nov 30 2008, 22:08) Книгу... Nov 30 2008, 19:19  SKov Цитата(Rundll @ Nov 30 2008, 18:45) ...
И... Nov 30 2008, 23:00   Rundll Цитата(SKov @ Dec 1 2008, 02:00) Примите ... Dec 1 2008, 08:29 Rundll to Serg76:
Вот ещё один момент заинтересовал, кас... Dec 8 2008, 16:43 Serg76 Цитата(Rundll @ Dec 8 2008, 19:43) to Ser... Dec 8 2008, 17:11  Rundll Цитата(Serg76 @ Dec 8 2008, 20:11) По-мое... Dec 8 2008, 17:25 Rundll У меня очередная порция вопросов Вопрос касается ... Dec 10 2008, 14:43 Grumbler_2002 Можно. Используется схема как в стандарте dvb-rcs.... Dec 10 2008, 22:51 Rundll А как быть с нормализацией? На аппаратном уровне в... Dec 13 2008, 17:10 Serg76 Цитата(Rundll @ Dec 13 2008, 20:10) А как... Dec 13 2008, 18:36  Rundll Цитата(Serg76 @ Dec 13 2008, 21:36) По по... Dec 13 2008, 19:11   Serg76 Цитата(Rundll @ Dec 13 2008, 22:11) Я не ... Dec 13 2008, 19:27    Rundll Цитата(Serg76 @ Dec 13 2008, 22:27) Да, д... Dec 13 2008, 19:58     Serg76 Цитата(Rundll @ Dec 13 2008, 22:58) Да, н... Dec 13 2008, 21:14      Rundll Цитата(Serg76 @ Dec 14 2008, 00:14) По по... Dec 13 2008, 21:20 Grumbler_2002 Начните с этих материалов.
Dec 13 2008, 23:35 Serg76 2Rundll
В принципе все то, что я хотел посмотреть ... Dec 15 2008, 16:24 Grumbler_2002 На самом деле нужно задать себе вопрос, так ли нео... Dec 16 2008, 02:00 Serg76 Я пользовался Max-Log_MAP аппроксимацией. Энергети... Dec 16 2008, 15:44 Grumbler_2002 Коррекцию extrinsic information использовали? У ме... Dec 16 2008, 18:50 Serg76 Цитата(Grumbler_2002 @ Dec 16 2008, 21:50... Dec 16 2008, 19:19 Grumbler_2002 Дык у Вас блоковые турбо-коды (коды-произведения с... Dec 16 2008, 21:24 Serg76 Цитата(Grumbler_2002 @ Dec 17 2008, 00:24... Dec 17 2008, 19:54 Grumbler_2002 Выложил всё, что у меня есть на текущий момент. Со... Dec 17 2008, 20:54 Serg76 Цитата(Grumbler_2002 @ Dec 17 2008, 23:54... Dec 17 2008, 22:41 Rundll В продолжение темы выкладываю на мой взгляд лучшие... Jan 9 2009, 15:28 AntonSS Прочитал некоторую литературу насчёт систематическ... May 29 2009, 10:40 Coder2009 Столкнулся сейчас с аналогичной проблемой. Скляра ... Jul 19 2009, 08:48 bark Занимаюсь решением такой же задачи.
строю декодер.... Feb 25 2010, 09:36 des00 Цитата(bark @ Feb 25 2010, 03:36) если ес... Feb 26 2010, 04:37   Serg76 Цитата(dsp85 @ Nov 8 2010, 22:02) понял, ... Nov 8 2010, 19:12 Денис Олегович Ув. RunDLL, я как раза занимаюсь написанием диплом... Feb 19 2011, 15:39
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|