Студопедия — Декодирование турбо-кодов
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Декодирование турбо-кодов






 

11.4.1. Правило максимума апостериорной вероятности (MAP).

 

Хотя турбо кодер является устройством с конечным числом состояний, наличие в нем перемежителя приводит к изменяющейся во времени решетчатой диаграммы, определяющей, в свою очередь, запредельную (при большой длине блока N) сложность оптимальной (максимально правдоподобной) процедуры декодирования, которая подразумевает нахождение кодового слова, ближайшего к принятому наблюдению (аналогично алгоритму Витерби с жесткими или мягкими решениями). Авторы открытия турбо-кодов предложили итеративную процедуру декодирования с мягкими решениями, которая позднее стала общепринятой для многих других кодов. В отличие от правила максимального правдоподобия (ML), состоящего в поиске кодового слова, минимизирующего вероятность перепутывания истинного кодового слова с некоторым другим, новый алгоритм декодирования направлен на минимизацию вероятности ошибки в каждом отдельном бите «чистой» информации. Эта цель может быть полностью достигнута на основе правила максимума апостериорной вероятности (MAP). Пусть – вектор принятого наблюдения, а апостериорное (вычисленное после принятия ) распределение i –го информационного бита . Тогда согласно MAP правилу решение будет вынесено в пользу наиболее апостериорно вероятного значения :

, (11.1)

или

. (11.2)

 

11.4.2. Итеративная процедура декодирования.

 

 
 

Не существует практического метода точного вычисления апостериорной вероятности или, что эквивалентно, совместной вероятности для всего наблюдения , простирающегося на все слово турбо-кода. Процедура итеративного декодирования оперирует с аппроксимациями апостериорного распределения, постепенно уточняемыми в ходе итераций. Любая следующая итерация состоит из двух шагов, каждый из которых заключается в раздельном декодировании образующих кодов и использовании на втором шаге информации, извлеченной из первого образующего кода во время первого шага. После окончания k –й итерации (но не последней) ее результаты (k –я итерация апостериорного распределения) используются на следующей итерации в качестве априорной информации. Общее число итераций может быть установлено заранее или определено в ходе выполнения декодирования фиксацией момента стабилизации выходных данных (согласно стоп–критерию). После заключительной итерации решение принимается по правилу MAP (11.1) или (11.2). Основной принцип процедуры иллюстрирует схема, представленная на рис. 11.7.[3]

Первоначально первый образующий декодер принимает отсчеты наблюдения, отвечающие символам первого образующего кода, и выдает мягкие оценки бит данных. Эти мягкие решения используются вторым образующим декодером в качестве априорной информации совместно с отсчетами наблюдения, отвечающими второму образующему коду, для выработки первой аппроксимации решающих статистик . После этого вторая итерация начинает «раскодировку» первого образующего кода, но теперь с использованием в качестве обновленной априорной информации. Уточненное мягкое решение первого декодера используется вторым декодером, как априорная информация, выдавая на выходе вторую аппроксимацию и т.д. Данный цикл повторяется необходимое число раз, заканчиваясь принятием решения, как это было указано ранее. Сходимость этой процедуры не имеет точного теоретического обоснования, однако многочисленные эксперименты и моделирование показывают ее очень хорошее поведение.

Обращаясь к подробностям, отметим, что мягкие решения l –го образующего декодера на k –й итерации могут быть (что поясняется ниже) представлены в аддитивной форме:

, (11.3)

где первое слагаемое содержит априорную информацию об i – м бите данных , извлеченную из наблюдения в процессе обработки на предшествующих шагах, второе слагаемое охватывает «непосредственную» информацию, доставляемую систематическим отсчетом наблюдения (коэффициент q есть просто отношение SNR на кодовый символ), а последнее слагаемое представляет собой избыточную (extrinsic) информацию об , извлекаемую из отсчетов, отвечающих проверочным символам l –го образующего кода.

Первая итерация начинается с декодирования первого компонентного кода в отсутствии априорной информации: . Затем избыточная информация, полученная на первом шаге, используется как априорная вторым образующим декодером:

.

На первом шаге второй итерации избыточная информация второго декодирования на первой итерации используется как априорная:

и т.д.: на любом шаге избыточная информация, добытая на предшествующем шаге используется в качестве априорной. Как видно из приведенных соотношений взаимосвязь между образующими кодерами исключает рециркуляцию (повторное использование) старой априорной информации, что обеспечивается блоками вычитания в схеме на рис. 11.7. Поскольку благодаря перемежению в кодере i –й систематический бит имеет различное местоположение в образующих кодах, то систематические отсчеты наблюдения и мягкие решения первого декодера должны претерпевать аналогичное перемежение, что и в турбо кодере, перед подачей на второй декодер. Указанные операции осуществляются двумя перемежителями. Аналогичным образом, мягкие решения второго кодера должны располагаться на соответствующих позициях в обратной связи к первому декодеру, т.е. перемешиваться в обратном порядке тому, которое выполняется деперемежителем.

 

11.4.3. Компонентное декодирование и прямой–обратный алгоритм.

 

Существуют различные возможные стратегии компонентного декодирования. Одним из вариантов служит алгоритм Витерби с мягкими решениями на входе и выходе (Soft-in-Soft-out Viterbi algorithm (SOVA)). Альтернативным путем является точное вычисление апостериорной вероятности для одиночного образующего кода с использование прямого–обратного алгоритма (иное наименование BCJR[4] или алгоритм Баля). Для определенности начнем с первого образующего кода половинной скорости, обозначив через вектор наблюдения, включающий только отсчеты, необходимые для первого декодирования: (см. рис. 11.6). Целью k –го шага итераций является вычисление

.

Введем совместную вероятность комбинации трех следующих событий: (1) к приходу i –го бита источника первый образующий кодер находится в состояние , (2) под воздействием он переходит в состояние и (3) вектор наблюдения принимает определенное значение . Суммирование по всем возможным парам состояний, связанным между собой через , очевидно даст , аналогично, суммирование по всем парам, связанным через , даст , так что

. (11.4)

Прямой–обратный алгоритм вычисляет рекурсивно по i, используя решетчатую структуру сверточного кода и канальную переходную вероятность. В частности, раскладывается на множители вида

, (11.5)

где

– совместная вероятность того, что текущим состоянием решетки является , а все отсчеты наблюдений, предшествующие текущему наблюдению , принимали значения ;

– вероятность того, что все отсчеты наблюдения после будут при условии, что следующим за текущим окажется состояние ;

– совместная условная вероятность того, что следующее состояние будет и текущее наблюдение – при условии, что текущим состоянием является .

Из трех вышеприведенных функций с самого начала известна , поскольку

,

где первый множитель представляет собой условную вероятность перехода сверточного кодера в состояние из фиксированного текущего состояния , которая полностью определяется априорной вероятностью появления символа . Второй множитель полностью задается переходной вероятностью канала без памяти , поскольку фиксированные начальное и конечное состояния решетки определяет ветвь решетки, т.е. группа из n кодовых символов, отвечающих ветви. Например, для систематического компонентного кода половинной скорости фиксированные и определяют пару (см. рис. 11.6), так что

(11.6)

для любой пары состояний , соединенных общей ветвью, которая отвечает , и для любой другой пары . Очевидно, что это все относится к каналу без памяти.

Знание позволяет вычислить значения с помощью прямой рекурсии по i при начальной инициализации вида для , отвечающего начальному состоянию кодера, т.е. нулевому состоянию, и для всех остальных состояний :

. (11.7)

По завершению прямой рекурсии при начинается обратная рекурсия по вычислению с начального состояния (в предположении, что используются хвостовых бит для установки кодера в нулевое состояние) для состояния , отвечающего нулевому, и – в противном случае:

. (11.8)

Подстановка значений (11.5), найденных с помощью соотношений (11.6)–(11.8), в выражение (11.4) для совместно с переходной вероятностью гауссовского канала при BPSK входных сигналах и разложение на множители и , независящие от состояний решетки, приводят к предсказанному ранее результату (11.3)

,

с априорным компонентом

и избыточным компонентом

.

Функция в последнем соотношении представляет собой часть , зависящую лишь от проверочных символов компонентного кода, передаваемых в течение интервала, занимаемого i –м битом данных. Например, для образующего кода с половинной скоростью

,

тогда как в общем случае, она представляет собой произведение переходных канальных вероятностей для отсчетов наблюдения, отвечающих проверочных символов. Таким образом, концептуально избыточный компонент содержит в себе информацию о бите данных , извлеченную только из проверочных (а не из систематических) отсчетов.

Декодирование второго кода выполняется аналогично, а обмен избыточной информацией между обоими компонентными декодерами и последовательные итерации выполняются так, как это было описано в п. 11.4.2.







Дата добавления: 2015-04-19; просмотров: 898. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Факторы, влияющие на степень электролитической диссоциации Степень диссоциации зависит от природы электролита и растворителя, концентрации раствора, температуры, присутствия одноименного иона и других факторов...

Йодометрия. Характеристика метода Метод йодометрии основан на ОВ-реакциях, связанных с превращением I2 в ионы I- и обратно...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Плейотропное действие генов. Примеры. Плейотропное действие генов - это зависимость нескольких признаков от одного гена, то есть множественное действие одного гена...

Методика обучения письму и письменной речи на иностранном языке в средней школе. Различают письмо и письменную речь. Письмо – объект овладения графической и орфографической системами иностранного языка для фиксации языкового и речевого материала...

Классификация холодных блюд и закусок. Урок №2 Тема: Холодные блюда и закуски. Значение холодных блюд и закусок. Классификация холодных блюд и закусок. Кулинарная обработка продуктов...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия