Основные понятия и определения теории информации и кодирования. Задачи теории информации и кодирования, страница 30

В связи с этим восстановление k информационных символов в декодерах с исправлением ошибок производится только после исправления ошибок в n - разрядном кодовом векторе.Это приводит к более сложной аппаратной реализации декодера с исправлением ошибок по сравнеию с первым методом декодирования(т.е.для кодов,образованных по первому способу построения циклических кодов).

И С П Р А В Л Е Н И Е   О Ш И Б О К .

Как отмечалось ранее,опознавателями ошибок в циклических кодах являются остатки от деления кодовой комбинации на образующий полином циклического кода.Такие остатки называются СИНДРОМАМИ (синдромным многочленом).

Втом случае,если в принятой кодовой омбинации нет ошибок,её синдром равен нулю.

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

ВЕКТОРОМ ОШИБКИ называется n - разрядная комбинация,в которой символ "0" означает отсутствие искажения,символ "1" - наличие искажения.

ПОЛИНОМОМ ОШИБКИ называется вектор ошибки в полиномиальной записи.

ПРИМЕР.Предположим,кодовая комбинация без ошибок иммет вид

1 1 0 1 0 0 1,кодовая комбинация с ошибками - 1 0 1 1 0 0 1.Тогда вектор ошибки будет равен их поразрядной сумме по модулю два:

1 1 0 1 0 0 1

+

1 0 1 1 0 0 1

─────────────

0 1 1 0 0 0 0

Как правило,вектор ошибки обозначается символом е ,а полином ошибки - E(X).

Рассмотрим аппаратную реализацию исправления ошибок на примере циклического кода P7,4 с образующим полиномом X^3+X+1,d min=3.

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

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

Обозначим A(X) - кодовое слово без ошибки (или кодовое слово с исправленной ошибкой),Ap(X) - принятое кодовое слово с исправленной ошибкой,E(X) - вектор ошибки.

A(X) + Ap(x) = E(X),

Ap(X) + E(X) = A(X).

Поскольку все операции в линейных последовательных схемах ленейны, то выполняется принцип СУПЕРПОЗИЦИИ :

Rk(x)[Ap(X)] + Rk(x)[E(X)] = Rk(x)[A(X)], где запись Rk(x)[G(X)] означает остаток от деления полинома G(X)

на полином K(X).

Поскольку A(X) делится на образующий полином K(X) без остатка,то

Rk(x)[Ap(X)] + Rk(x)[E(X)] = 0, или

Rk(x)[Ap(X)] = Rk(x)[E(X)] .

Таким образом мы получили МАТЕМАТИЧЕСКОЕ ОБОСНОВАНИЕ ВЗАИМНООДНОЗНАЧНОГО СООТВЕТСТВИЯ МЕЖДУ СИНДРОМОМ И ВЕКТОРОМ ОШИБКИ.

В нашем примере n = 7, таким образом в кодовой комбинации из 7 разрядов возможно 7 одиночных ошибок и,соответственно,7 векторов ошибок:E1(X)=X^6,E2(X)=X^5,...,E7(X)=X^0=1.

Каждому вектору ошибок соответствует свой синдром,равный остатку от деления E(X) на K(X).Запишем это соответствие в виде таблицы:

E(X) │        e          │ Rk(x)[E(X)]=S(X)    │    S

──────────┼───────────────────┼─────────────────────┼──────────────

X^6  │   1 0 0 0 0 0 0   │      X^2+1          │  1 0 1

X^5  │   0 1 0 0 0 0 0   │      X^2+X+1        │  1 1 1

X^4  │   0 0 1 0 0 0 0   │      X^2+X          │  1 1 0

X^3  │   0 0 0 1 0 0 0   │      X+1            │  0 1 1

X^2  │   0 0 0 0 1 0 0   │      X^2            │  1 0 0

X^1  │   0 0 0 0 0 1 0   │      X              │  0 1 0

1   │   0 0 0 0 0 0 1   │      1              │  0 0 1

Примечание: e,S - двоичное представление полинома E(X) вектора ошибки и полинома S(X) синдрома.