Скляр Б. Цифровая связь (2003) (1151859), страница 114
Текст из файла (страница 114)
Вычисление внешних функций правдоподобия Для случая, показанного на рис. 8.23, горизонтальная часть расчетов для получения Ееь(с() и вертикальная часть расчетов для получения Р.,„(с() выглядят следующим образом: Еса(4) = [Ес(хг)+ Ые(г)! Н Ех(~!2), (8.84,а) Еее(с(1) [Ес(хз)+Е(е(3)]Н Ес(Х13) Е;! (с)2) = [(;(х!)+ Е(41!)! Н Е;(хц), (8.84,6) (8.85,а) Еее(с(2) [Ес(Х4)+ Е(с(4)! Н Ес(Х24) ~ез(с(3) [Ес(х4)+ Е(с(4)]Н Ес(хэа) Е ее (с(3 ) = [ Е с (х! ) + Е (с(1 )] Н Ес (хц ), Ееь(!Е4) [Ес(хз)+ Е(е(з)1 Н Ес(хза) Еее(с(4) [Е'с(хг)+ ~(с(2)]Н Ес(Х24) (8.85,6) (8.86,а) (8.86,6) (8.87,а) (8.87,6) Ьеа(е() в уравне- а начальную ус- Значения ЬЬК, показанные на рис.
8.23, входят в выражение для ниях (8.84)-(8.87). Подразумевая передачу сигналов равновероятной, тановку значения Е.(с() равной нулю, получаем следующее: (ы(с(1) = [0,1+ 0] Н 2,5 = -0,1 — новое Це(1), (8.88) Е ь(с(2) = [1,5+0! Н 2,5 -1,5 — новое УА), Е 4(с(3) = [0,3 ь0] Н 2,0 = -0,3 — новое Цс(!), (8.89) (8.90) Еа„(е( ) = [0,3- 0,2] Н 1,0 = -0,1 — новое Це(г), (8.93) Е,(с(3) = [1,5-0,Ц Н 6,0 = -1,4 — иоаое Е(с(з), Е„„(с(4) = [0,1- 1,5] Н 1,0 = 1,0 — новое Цс(4). Результаты первой полной итерации двух этапов декодирования (горизонтального и вертикального) будут следующими: 8.4.
Турбокоды 607 Ееь(!(4) = [0,2+ 0] Н 2,0 = -0,2 — новое Це(!), (8.91) где сложения логарифма функции правдоподобия производятся, исходя из приближе- ния, показанного в уравнении (8.73). Далее, продолжая первое вертикальное вычисле- ние, используются выражения для Е (е() из уравнений (8.84) — (8.87). Теперь значение Цс() можно обновить, исходя из нового значения Ц40, полученного из первого верти- кального вычисления, показанного в уравнениях (8.88)-(8.91): Е,,„(с(1) = [0,2-0,3] Н 6,0 = 0,1 — новое Цс(!), (8.92) Исходные измерения (.,(х~) -1,5 1,5 0,1 0,2 0,3 Е,„(Ы) после первого горизонтального декодирования 0,1 -0,1 1,0 -1,4 Е,„(Ы) после первого вертикального декодирования Каждый этап декодирования улучшает исходные ].].К, которые основываются только на канальных измерениях.
Это видно из расчетов выходного ].].К декодера с помошью уравнения (8.74). Исходное ].].К и внешние горизонтальные ].].К вместе дают слелуюшее улучшение (внешний вертикальный член еше не рассматривался). Улучшение Ы.К из-за Еы(о') Улучшение Ы.К из-за (,,„(с()+ б (с() В данном случае можно видеть, что сведений, полученных лишь из горизонтального декодирования, достаточно для получения правильного жесткого решения вне декодера, но с низкой степенью доверия к битам данных л, и Ыь После включения внешних вертикальных ].) К в декодер новые значения ].].К появляются на более высоком уровне надежности и доверия.
Пусть будет произведена еше одна вертикальная и одна горизонтальная итерация декодирования, чтобы определить наличие или отсутствие существенных изменений в результатах. Снова на помощь приходят отношения из уравнений (8.84) — (8.87), и далее следует горизонтальное вычисление для получения Еы0() с новым Ц4 из первого вертикального расчета, показанного в уравнениях (8.92) — (8.95), так что получаем следующее: Ьь(Й~) = (01-01] Н 2,5 = 0 — новое ЦЫ,) (ы(Из) =(15-01] Б 25 -1б — новое Цлз) (;ь(г(з) = (0,3 — 1,0] Б 2,0 -1,3 — новое Цлз) (8.96) (8.97) (8.98) Глава 8. Канальное кодипованиег часть 3 кпя Исходное Ь].К совместно с горизонтальным и вертикальным внешним ].].К дает следующее улучшение.
Ь,„(с7~) = [0,2-1,3) Н 6,0 = 1,1 — новое ЦсЦ, (ь„(с(з) = [0,3+ 1,2) Н 1,0 -1,0 — новое Щз), Ь ( зз) = [1,5+ 0) Н 6,0 -1,5 — новое Ц4), Е,„(Йд) = [0,1-1,6) Н 1,0 =1,0 — новое Ц4). (8.100) (8.101) (8.102) (8.103) Вторая итерация вертикального и горизонтального декодирования, дающая упомянутые выше величины, отражается на мягких выходных ЬЬК, которые снова рассчитываются из уравнения (8.74), переписанного следующим образом: ЦЫ)=1. (х)+Е,„(Ы)+Е, (Х). (8.104) Горизонтальные и вертикальные ЬЬК из уравнений (8.96) — (8.103) и итоговое ЬЬК декодера показаны ниже. В данном примере вторые итерации, горизонтальная н вертикальная, что в целом дает всего четыре итерации, показывают скромный прирост, по сравнению с одной вертикальной и горизонтальной итерацией.
Результаты показывают, что доверительные значения сохраняются для каждого из четырех данных. Исходные измерения 1 (х) ~0-1,6 О,! 1,5 0,3 0„2 -1,3 Ь 6() после второго горизонтального декодирования -1,0 -1,5 1,0 Ьыф) после второго вертикального декодирования Мягкий выход равен ЦЛ) = Ь„(х)+ Е,,„(Х)+ Ь,„(Ы), который после всех четырех итераций дает следукяцие значения 60(): -2,5 2,5 — 2,6 8.4. Турбокоды 609 Ь,ь(Иа) = [0,2- 1,4) Н 2,0 = 1,2 — новое Цс~4) (8.99) Затем необходимо выполнить второе вертикальное вычисление для получения ~.,„(Й) с новым Цз), полученным из второго горизонтального расчета, показанного в уравнениях (8.96)-(8.99), что приводит к следующему: В результате видно, что получены правильные решения по каждому биту данных и уровень доверия к этим решениям высок.
Итеративное декодирование турбокодов напоминает процесс решения кроссвордов. Первый проход по кроссворду, вероятно, содержит несколько ошибок. Некоторые слова нуждаются в подгонке, но когда буквы в нужных строках и столбцах не подходят, нужно вернуться и исправить слова, вписанные после первого прохода. 8.4.4. Кодирование с помощью рекурсивного систематического кода к — ! и„= ~) лье„; по модулю 2, кв =0,1 (8.105) К-1 ч, = ~кпЫк; по~одулю2, ка =0,1. (8.106) и=а С, = [кн] и С, = [8п] — генераторы кода, а г(, представлен как двоичная цифра. Этот кодер можно представить как линейную систему с дискретной конечной импульсной характеристикой (Йпйе цпрц!зе гезропзе — Р(К), порождающую хорошо знакомый несистематический сверточный (попзузгетайс сопчо!шюпа1 — ХБС) код, разновидность которого показана на рис.
8.24. Соответствующую решетчатую структуру можно увидеть на рис. 7.7. В данном случае длина кодового ограничения равна К= 3 и используются два генератора кода — С, = (111) и Сз-— (101]. Хорошо известно, что при больших значениях Еь(К, достоверность передачи с кодом НБС выше, чем у систематического кода с той же памятью. При малых значениях Е,/Уа существует обходной путь [17]. В качестве составляющих компонентов для турбокода был предложен класс сверточных кодов с бесконечной импульсной характеристикой [17].
Такие же компоненты используются в рекурсивных систематических сверточных (гесцгз(че зузгешайс сопчо!цг!опа!— йВС) кодах, поскольку в них предварительно кодированные биты данных постоянно должны подаваться обратно на вход кодера. При высоких степенях кодирования коды КИС дают значительно более высокие результаты, чем самые лучшие коды НБС, при любых значениях Ем!г',. Двоичный код КЗС со степенью кодирования 1/2 получается из кода НБС с помощью контура обратной связи и установки одного из двух выходов (нг или гг) равным Иь На рис. 8.25, а показан пример такого йбС-кода с К = 3, где аг получается из рекурсивной процелуры Глава 8. Канальное кодирование:частьа 810 Ранее были описаны основные идеи сочетаний, итераций и мягкого декодирования на примере простого композиционного кода.
Затем эти идеи применялись при реализации турбокодов, которые образуются в результате параллельных сочетаний сверточных кодов [17, 20]. Далее наступает очередь обзора простых двоичных сверточных кодеров со степенью кодирования 1/2, длиной кодового ограничения К и памятью порядка К-1. На вход кодера в момент к, подается бит 4, и соответствующим кодовым словом будет битовая пара (иь г,), где К-1 ае = с(е + ~~) 8,'ае, по модулю 2, (8.107) а 8 равно 8и, если ие= с(ь и 8„— если ее=вы На рис.
8.25, б изображена решетчатая структура КБС-кода, представленного на рис. 8.25, а. (и«1 (дк) Рис. 824. Несиопеиатичекий сеертачный кад Снанеуетеванс санта!иоана! — ФЮС) (ий Рис. 825а. Рекурсивный октемавический свертечный код (тсивлле вяеваис сантайтаана1 — 118С) Кодовое елово ветви ич состояние а=ос Ь= 10 с=01 4=11 Рис. 8.2% Рететчаван опруктура 85С- кода, нредсваеленнага на рис.
825, а Считается, что входной бит с(„с одинаковой вероятностью может принимать как значение 1, так и О. Кроме того, (а,) показывает те же статистические вероятности, что и(с(е» (17]. Просвет одинаков у КБС-кода (рис. 8.25, а) и ХБС-кода (рис. 8.24). Точно так же совпадает их решетчатая структура по отношению к переходам между состояниями и соответствующим входным битам.
Впрочем, у КБС- и ХБС-кодов две 611 8.4. Турбокоды выходные последовательности (иг» н (о,» не соответствуют той же входной последовательности (гЦ. Можно сказать, что прн тех же генераторах кода распределение весовых коэффициентов кодовых слов КБС-кодера не изменяется, по сравнению с распределением весовых коэффициентов кодовых слов ХБС-кодера. Единственное различие состоит в отображении между входной и выходной последовательностями данных.
Пример 8.5. Рекурсивные кодеры и их решетчатые диаграммы а) Используя ВВС-кодер (рис. 8.25, о), проверьте справедливость участка решетчатой струк- туры (диаграммы), изображенного на рис. 8.25, б. б) Для кодера, указанного в и. а, начиная с последовательности данных Щ = 1 1 1 О, по- этапно покажите процедуру кодирования до нахождения выходного кодового слова. Решение а) Для кодеров ХБС содержимое регистра и переходы между состояниями отслеживаются непосредственно.
Но если кодер является рекурсивным, следует быль очень аккуратным. В табл. 8.5 содержится 8 строк, соответствуюших 8 возможным переходам в данной системе, образованной из 4-х состояний. Первые четыре строки представляют переходы, когда входной информационный бит г(ь является двоичным нулем, а последние четыре — переходы, в которых бг является единицей.
В данном случае процедуру кодирования с помошью табл. 8.5 и рис. 8.25 можно поэтапно описать следуюшим образом. 1. В момент введения произвольного входного бита, )г, состояние перел переходом (начальное) определяется содержимым двух крайних разрядов регистра, а именно— аг |наг ь 2.