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

Определим соответствие ошибок и синдромов. Для каждой -ой строки имеем , так как  и  ортогональны:

;

;

.

Таким образом, вектору ошибки 00001 соответствует синдром 10, вектору ошибки 00100 – 01 и вектору ошибки 01000 – 11.

Пусть принята комбинация . Определим синдром

.

Итак, синдром 01. Ему соответствует вектор ошибок 00100. Исправленная комбинация имеет вид , что соответствует таблице 4.4.

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

В теории циклических кодов комбинации представляют в виде полиномов по

.

Циклическая перестановка является результатом простого умножения полинома на :

.

Полином  степени (n-k), на который без остатка делится двучлен , называется производящим полиномом. Производящая матрица G имеет в качестве строк векторы, соответствующие . Проверочная матрица Н строится на основе полинома

.

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

В качестве примера рассмотрим код (7,4) с производящим полиномом , соответствующим комбинации 1101. Для получения семизначного кода припишем справа три нуля и, проведя циклический сдвиг, получим производящую матрицу

G=.

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

Деля двучлен  на производящий многочлен , находим . Ему соответствует комбинация 11101. Запишем ее в обратном порядке, добавим слева два нуля и, проведя циклический сдвиг, получим проверочную матрицу

Н=.

Устройства кодирования и декодирования строятся на базе сдвиговых регистров, охваченных обратными связями по . Схема кодера для циклического кода (7,4), соответствующего порождающему полиному , показана на рис. 4.1.

 


Рассмотрим процесс кодирования. Кодирующее устройство работает следующим образом. Вначале ключ К находится в положении «1». При этом информационные символы поступают одновременно в канал и в регистр сдвига, который в начальном положении содержит одни нули. Когда информационные символы переданы, ключ К переключается в положение «2», оставаясь там в течение трех последующих тактов регистра, который выдает проверочные символы. На вход регистра теперь поступают нули (так как сумматор справа имеет два одинаковых входа), и по истечении трех тактов все ячейки регистра снова оказываются в начальном нулевом состоянии.