Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
разное / Методы преобраз-я сигналов и помехоустойчивое кодир-е [Н.Ф.Рожков].doc
Скачиваний:
148
Добавлен:
15.06.2014
Размер:
2.36 Mб
Скачать

2.6 Рекуррентные коды

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

Эти коды предназначены в основном для исправления пачек ошибок. Формирование проверочных символов осуществляется путем сложения двух или более символов, сдвинутых один относительно другого на определенное расстояние t, называемое шагом сложения. Длина исправляемой пачки l зависит от шага и определяется из условия:

l=2t (2.47)

Минимально необходимое расстояние между пачками ошибок, при котором обеспечивается исправление всех ошибок в пачке длиной l, равно:

a=3t+1 (2.48)

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

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

Обозначим последовательность информационных символов a1, a2, a3, a4, a5, a6… Если задать t=1, то l=2.

Проверочные символы получаем путем линейных операций над информационными, сдвинув их на шаг t=1 и просуммируем по модулю два:

a1, a2, a3, a4,…an

+ a1, a2, a3,…an

——————

a1, b1 = a2 + a1; a2, b2 = a3 + a2; ……..и т.д.

Следовательно, проверочные символы b1, b2, b3,…bn последовательно размещаются между двумя информационными.

На рис. 2.2 показана схема кодирования.

a3, a2, a1

выход a1, b2, a2…

такт

Рис. 2.2 Схема кодирования циклического кода

Схема кодирования состоит из регистра сдвига, состоящего из 2-х триггеров (Т), сумматора по модулю два (m2) и ключа (К).

Просматривается очевидная простота кодирующего устройства. Если t=2, то регистр будет состоять из 4-х триггеров и т.д.

Информационные и проверочные символы передаются в линию связи.

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

После задержки на величину (3t+1) каждый сформированный контрольный символ сравнивается с соответствующим принятым проверочным.

+ b1, b2, b3,…bn

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

Таким образом, при сравнении проверочных и контрольных символов формируется вектор ошибки [5,12]

Из рассмотренного принципа исправления ошибок, в цепном коде следует, что правильное исправление ошибок возможно только в том случае, если два из трех символов, охватываемых проверкой, приняты правильно. Это условие выполняется тогда, когда при шаге t длина пачки будет не более 2t и проверочные символы передаются в канал с задержкой на (3t+1).

Таким образом, цепной код обнаруживает и исправляет пачки ошибок весьма просто, но ценой большой избыточности. Kизб = 0.5