Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
600
Добавлен:
15.03.2016
Размер:
1.86 Mб
Скачать

4.3.4. Алгоритм декодирования Витерби

Алгоритм Витерби – это алгоритм максимального правдоподобиядля декодирования сверточных кодов, основанный на использовании вероятностных характеристик принимаемых сигналов. Декодирование может иметь как жесткое, так и мягкое решения. В случаежесткого решенияо принятых сигналах выбирается кодовое слово, отличающееся от принятого слова в наименьшем числе символов. Примягком решениииспользуется информация об апостериорной вероятности принимаемых символов. Одним из преимуществ алгоритма является то, что сложность реализации декодера с мягким решением мало отличается от сложности реализации декодера с жестким решением. Недостаток – экспоненциальный рост сложности декодера в зависимости от длины кодового ограничения сверточного кода, которая по этой причине должна быть ограничена значением примерно равным 10.

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

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

Рис. 4.7.Структурная схема декодера Витерби

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

Таким образом, в процессе декодирования по кодовой решетке прослеживается путь, имеющий минимальное расстояние от пути, генерируемого в кодере. Алгоритм Витерби обеспечивает высокую помехоустойчивость и является достаточно простым при его технической реализации на специализированных СБИС [37]. Пример такой реализации показан на рис. 4.7

Алгоритм Витерби сравнительно просто реализуется для кодов со скоростями R=1/n. При скоростях видаR=m/n структура декодера усложняется. Для упрощения алгоритма при использовании высоких кодовых скоростейR= (n– 1)/n часто выбирают коды, полученныевыкалыванием (перфорацией) некоторого исходного сверточного кода с кодовой скоростью 1/2. Процедура выкалывания состоит в удалении из исходного кода некоторых символов на заданных позициях. Поскольку характеристики выколотых сверточных кодов практически не уступают лучшим известным кодам с той же кодовой скоростью, то они получили широкое распространение [15].

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

Соседние файлы в папке 399_Mamchev-Cifrovoe_televizionnoe_veschanie_2012_1