Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
учебник РТС продолжение.docx
Скачиваний:
8
Добавлен:
27.08.2019
Размер:
545.38 Кб
Скачать

7.5 Каскадные коды

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

Двухступенчатый последовательный каскадный кодек, показан на рис. 7.11.

Рис. 7.11 – Последовательное каскадное кодирование

При последовательном каскадном кодировании двоичных символов кода 1-ой ступени (внутреннего кода) представляются как один символ недвоичного кода (с основа­нием ) 2-ой ступени (внешнего кода); к информационным символам этого кода добавляется проверочных символов, каждый из которых также состоит из двоичных символов; в результате образуется кодовое слово . Затем строки из двоичных символов кодируются кодом и к каждой строке добавляется проверочных символов кода 1-ой ступени.

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

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

В качестве кодов 1-ой и 2-ой ступеней могут использоваться как блочные, так и сверточные коды. В качестве кодов 2-ой ступени часто используются недвоичные циклические коды РС. При этом оценка вероятности ошибки на выходе декодера РС равна:

(7.26)

где  кратность ошибок, исправляемых внешним кодом,  вероятность ошибки на выходе декодера 1-ой ступени,  множитель, учитывающий среднее число ошибок в двоичных символах на выходе на одну ошибку недвоичного символа кода РС.

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

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

Работы по совершенствованию методов исправления ошибок с помощью каскадного кодирования привели к разработке нового класса кодов — параллельных каскадных кодов с итерационным декодированием, обычно называемых турбокодами. Турбокод образуется при параллельном включении двух или более систематических кодов. В компонентных кодерах могут использоваться коды Хемминга, БЧХ, Рида-Соломона и сверточные.

Обобщенная структурная схема турбокодера показана на рис. 7.12. Блок информационных символов поступает на вход турбокодера. Символы подаются на систематический выход турбокодера и параллельно на М ветвей, состоящих из -го перемежителя и кодеров. Каждый перемежитель преобразует последовательность символов по псевдослучайному закону и выдает пакет на вход соответствующего кодера. На выходах кодеров каждой из М ветвей образуются последовательности проверочных символов .

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

Информационные символы мультиплексируются с проверочными символами , образуя кодовое слово, которое подлежит передаче по каналу. Скорость кода на выходе турбокодера = 1/(М+ 1). Для повышения скорости кода применяют выкалывание (перфорацию) определенных проверочных символов. В большинстве случаев ограничиваются использованием двух ветвей кодирования (М = 2) без перемежителя в первой ветви.

Классический турбодекодер содержит М декодеров, каждый из которых использует алгоритм МАВ или МП, рис. 7.13.

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

В результате демультиплексирования на входе декодера имеется информационная и две проверочные последовательности и . После декодирования информационной и первой проверочной последовательностей получается начальная оценка информационной последовательности, которая может использоваться как априорная информация во втором декодере.

Качество декодирования турбокодов, как и других кодов, можно существенно улучшить при выполнении нескольких итераций декодирования одного и того же блока информации. Поэтому в дальнейшем для свёрточных кодов был разработан модифицированный алгоритм Витерби с "мягким" входом и выходом, известный как алгоритм SOVA (Soft-Output Viterbi Algorithm). Его реализация примерно вдвое сложнее алгоритма Витерби.