Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Копия ПДС.doc
Скачиваний:
43
Добавлен:
15.03.2015
Размер:
1.33 Mб
Скачать

Кода на основе последовательности максимальной длины

Если кодируем на основе h(x) -в качестве h(x) используется неприводимый примитивный многочлен

-примитивный многочлен в поле GF(22)

GF(23)

примитивные –GF(24) можем построить генер. последовательность максимальной длины

ао

а1

а2

Длина 7,3 информ. элемента

Код (7,3) →кода (7,4) из кода Хэмминга, если проверочную матрицу сделать порождающей и наоборот

ао а1а2 а3 а4 а5 а6

ао ао а1а2 а3 а4 а5 сдвиг по фазе

а5 а6 ао а1а2 а3 а4

.

.

коды, двойственные кодам Хэмминга

вес кодовой комбинации один и тот же

=

Если будем рассматривать в качестве кодирующего устройства некоторого кода генер. Последовательность максимальной длины, то в качестве кодовой комбинации такого кода будет последовательность максимальной длины и все ее сдвиги. Такие коды могут быть построены, если в качестве h(x) выбирается неприводимый многочлен степени m, корни которого являются примитивными элементами поля GF(2m). Такие многочлены называются примитивными. В общем виде рассматриваемые коды являются двойственными для кодов Хэмминга, т.е. порождающая матрица кода Хэмминга является проверочной матрицей кода на основе ПНД, а проверочная матрица кода Хэмминга является порождающей для кода на основе ПНД. С учетом того, что в любой последовательности максимальной длины число единиц на единицу больше числа нулей, свойства рассматриваемых кодов можно выразить через число n.

n=2m-1

k=m d=2m-1

У этих кодов все кодовые комбинации имеют один и тот же вес- это эквидистантные коды

Понятие о мажоритарных кодах( по большинству голосов)-

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

h(x)=1+x+x3

ao=a1+a3 проверка 1 1 1

сдвигаем 1101000

0110100

0011010

0001101

1000110

ао=а4+а5 проверка 1 1 0

0100011

1010001

ао=а2+а6 проверка 1 0 0

1 1 0

по большинству голосов→декодирование упрощается

Коды рида- соломона

Коды Рида-Соломона, или РС-коды, относятся к недвоичным циклическим кодам, т.е. кодам, символы которых взяты из конечного поля, содержащего q>2 элементов и обозначаемого GF(q),где q- степень некоторого простого числа.

Кодом Рида-Соломона называют циклический (N,K)-код, при N=q-1, множество кодовых комбинаций которого представляются многочленами степени N-1 и менее с коэффициентами из поля GF(q), где q>2 и является степенью простого числа, а корнями порождающего многочлена являются N-Kпоследовательных степеней: α , α23 …αD-1,некоторого элемента α Є GF(q), где D-минимальное кодовое расстояние (N,K)-кода.

РС-код является частным случаем кода БЧХ с mo=1,тогла корни g(x) образуют ряд α ¹, α23 …αα -1

α- примитивный элемент поля GF(q)

порождающий многочлен РС-кода имеет степеньN-K=D-1 и по теореме Безу может быть найден в виде произведения

g(x)=

n-k=d-1=2t

При фиксированных значениях N и K не существует кода, у которого минимальное кодовое расстояние больше, чем у РС-кода, у которого минимальное кодовое расстояние больше, чем у РС-кода.

Пример:

Построить код вида Соломона длины=4 с исправляющей способностью однократных ошибок t=1

n=q-1=4

q=5 поле GF(5)

t=1, dmin=3

n-K=d-1=2- связь между избыточными элементами и d

g(x)=(x-2)(x-4)=x2-4x-2x-8=x2 -4x-2x-8=x2 +4x+3

порождающий многочлен

G(4,2) =

Nk=52=25 Nп=54=625

Пример из двоичного кода:

GF(23),которого строится по полю

π (α)= α3+ α+1 α3=1+ α

q=8 n=7

постоим код (7,5) ←К=5

dmin=n-k+1=2+1=3

t=1 исправляет однократные ошибки

g(x)=(x+α)(x+α2)=x2 + α2 x+ αx+ α3=x2+( α2+ α)x+ α3=x+ α4 x+α3

α=010

α2=001 по таблице сложения

α2+ α=011

α 3=110

Порождающая матрица имеет вид:

G(7,5)=

Рассмотренная процедура кодирования и декодирования для кодов вида Соломона

Базируется на процедуре Быстрого декодирования кодов БЧХ

Введем:

-S(x)-синхронный многочлен

S(x)=f(x=αi)

вместо х корни g(x)=n-K

-многочлен локаторов ошибок:

-локатор ошибок –номер разряда кодовой комбинации, где произошла ошибка

Λ(x)-многочлен локаторов ошибок=через локал. запись:

Λ(х)=ν≤t, где ν-число ошибок

-многочлен значения ошибок Ω (х):

коэффициентом является Yl- значение в l-той позиции

локатор указывает номер позиции, а многочлен- значение ошибки

Потребуем, чтобы Ω(х)=S(x)*Λ (x), где S(x)-ключевое уравнение

Т.к. число избыточных элементов ограничено, делаем по модулю mod x2t

ключевое уравнение-ключ к процедуре кодирования и декодирования, т.к. по принятой комбинации принимаем S(x) и Λ(х) надо знать находим Ω(х).

Если рассматривать комбинацию, в которой нет ошибок:

если рассматривать степень > ν=0 (т.к. код не может

исправлять больше, чем ν ошибок

Существует теорема:

Ω(х)=

Алгоритм Форни:

Если в это выражение подствить i=l,x=X-1l

Т.е. определить выражение в точке l, то

-теорема Форни

-алгоритм Форни