Файл: Шляпоберский В.И. Основы техники передачи дискретных сообщений.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 10.04.2024

Просмотров: 216

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

3) двойная ошибка; последняя ( 7 + 1 ) - я

проверка

равна нулю, а хотя бы одна из г проверок

равна еди­

нице.

 

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

И т е р а т и в н ы е к о д ы . Комбинационные коды, построенные посредством произведения двух или более исходных систематических (групповых) кодов, называ­

ются

итеративными.

Простейшим

итератив­

 

 

ным

кодом

является

двухмерный

код, пост-

Т А Б Л И Ц А

роенный

посредством

использования

един­

 

 

ственной

проверки на четность.

 

Предполо­

10010

0

жим, что требуется

передать

блок

симво­

01111

0

лов,

состоящий

из

 

семи

пятиэлементных

 

11001

1

комбинаций

(в общем

случае число элемен­

тов в комбинациях и число .комбинаций, со­

10001

0

ставляющих

блок,

могут

быть

любыми).

00010

1

Располагая

все кодовые комбинации

одну

01010

0

под

другой

в

виде

 

таблицы

и

произведя

 

11100

1

семь

проверок

на четность

по

строкам и

пять по столбцам, найдем значения

прове­

 

 

рочных элементов,

которые

расположим,

00001

1

как

показано в табл. 6.10. Элемент, распо­

 

 

ложенный в правом нижнем углу, может

 

 

формироваться

как результат проверки на четность

про­

верочных

разрядов нижней строки или проверочных

раз­

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

Полученный кодовый

блок содержит 8 X 6 = 48 эле­

ментов при избыточности,

равной: /? = 0,27. По мере уве­

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

положенных попарно

в -двух столбцах, например, при

искажении элементов

щ, ,• .и а,-, к, aitj и aijt, где первый

329



индекс указывает па номер строки, а второй — на но­ мер столбца. Нетрудно показать, что вес итеративного кода, построенного на базе двух простейших избыточ­ ных кодов с проверкой на четность, равен 4.

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

го используются коды с проверкой

на' четность и коды

„сщроверкои по модулю 3 или 7.

 

" Ц и к л и ч е с к и е к о д ы . Из

всех разновидностей

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

При описании свойств циклических кодов пользуют­ ся представлением кодовых комбинаций в виде много­

членов от фиктивной

переменной х, в которых цифры

О и 1, составляющие

кодовые комбинации, являются ко­

эффициентами переменной. Если число элементов кодо­ вой комбинации равно п, то соответствующий ей много­

член

имеет вид

 

 

 

 

 

 

F

(х)

= c„_i хп~х

+ с „ _ 2 хп~2

+ ... + с2

х2 - f

Ci х -f- с 0 х°,

где

Со,

Си .. ., сП-1

— коэффициенты,

принимающие

зна­

чения 0

или 1. Например, кодовой комбинации

10110001!

соответствует многочлен F(x)

8

+ х6-\-хъ

+ х+

1, а

ком­

бинации

110001010

— многочлен

F(x)

е

+ х7-\-х3+

1.

С данными многочленами можно производить все основные ал­ гебраические операции (сложение, умножение, деление и др.). Од­ нако сложение (приведение подобных членов) производится, как обычно, только коэффицинты подобных членов складываются по мо­ дулю 2:

1 +

1 =

Од-'',

1

+

Ox1

=

OJC',

1 х г +

0х'' =

1 х',

0х'

+

1 х1

=

W.

Как следствие, —1 л: = 1 А:.

330


Поясним

сказанное на

примере сложения

трех

многочленов:

 

х 8

-|-

хв

+ х 6 +

 

ж-f-I

+

 

х1

-\- ха

+ х* + д:4 + х 3 +

 

1

 

 

Л:7 4; х в

+

х3

+ х2 4-

1

 

л - 3

+

Xе

+

х*+

х2

+ 1

Аналогичным

образом

осуществляется

умножение

многочленов:

 

 

 

хъ

+

л-3 + х2

-|-

А- + 1

 

 

 

л 8

+

 

х 1 + л-3 + х" +

А"

 

 

 

 

А* +

X3 + X2 +

X -|- 1

 

 

 

хо+л-6

+

х4 -|-

 

1

 

Основным свойством циклических кодов, определив­

шим их наименование,

является

то,

что

циклический

сдвиг элементов разрешенной комбинации на один эле­ мент влево также образует разрешенную комбинацию. Если разрешенную кодовую комбинацию циклического

кода представить в виде v(fn-\,

In-z,

• ••

fi,

fo), то

ком­

бинация v'=($n-b

fn-з,

.. •, fi,

/о, fn-i)

также

является

разрешенной

комбинацией

этого

кода.

Циклический

сдвиг разрешенной кодовой комбинации на один элемент

алгебраически

эквивалентен

умножению

ее

многочлена

на х:

 

 

 

 

 

 

 

 

 

 

 

 

 

Хр(х) = Спп

+ Сп-2Хп-1-\-

 

. . . +CiX2 + C0X.

 

Так как

степень многочлена

«-элементной

кодовой

комбинации

не

может

превышать

( я — 1 ) ,

то

хп

есть

х°.

Отсюда хР(х)=\сп-2хп-<

 

+ ... + С1Л2

+ СоХ +

сп-2,

т. е. xF

(х)

является циклическим

сдвигом

комбинации

F(x).

 

Способы

построения

и основные

свойства

цикличе­

ских кодов легко пояснить, если воспользоваться опре­

делением циклических

кодов,

даваемым

алгебраической

теорией кодирования: циклическим (п, /г)-кодом назы­

вается код, множество кодовых

комбинаций

которого

представляется

совокупностью

многочленов

степени

(п—1)

и

менее,

делящихся на

некоторый

многочлен

Р(х)

степени (п—к),

который является

одним

из

сомно­

жителей

разложения

бинома

,v" + l .

Многочлен

Р(х)

принято называть

образующим.

 

 

 

 

Обозначим через G(x) многочлен, соответствующий кодовой комбинации /г-элементного простого кода, а че­ рез F(x) многочлен, соответствующий кодовой комбина­ ции образованного «-элементного циклического кода.

331


'Тогда согласно данному выше определению кодовый многочлен F(x) может быть образован умножением мно­ гочлена сообщения G(x) на образующий многочленР(х):

F (х) ~ G(x) Р (х).

(6.28)

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

Для формирования кодового многочлена F(x) вос­ пользуемся методом [66], при котором коэффициенты при членах высших порядков будут соответствовать инфор­ мационным элементам, а коэффициенты при членах низ­

ших

порядков—проверочным элементам.

Умножим

G(x)

на хг.

Деление

полученного выражения

xrG(x)

на

Р(х)1)

дает

частное

Q(x) п остаток

R(x) степени,

мень­

шей г. Отсюда

 

 

 

 

 

 

xr G (х) = Q (х) Р (х) +

R (х).

 

(6.29)

Так как вычитание по модулю 2 полностью совпадает со сложением, то

хг G (х) +

R {х) = Q (х) Р (х).

(6.30)

Поскольку частное Q(x)

и.меет ту же степень, что

G(x),

то оно также является комбинацией простого /г-элемент-

ного

кода

и,

следовательно,

левая

часть

выражения

(6.30)

есть

кодовый многочлен:

 

 

 

 

 

 

F(x)

=

xrG(x)

+ R(x).

 

(6.31)

Анализируя

выражение

(6.31), видим, что первое сла­

гаемое xrG(x)

имеет

нулевые

коэффициенты

в г

членах

низшего порядка, а степень второго

слагаемого

меньше

г. Следовательно, коэффициенты г членов низшего по­

рядка кодового многочлена

F(x)

являются

такими же,

что и коэффициенты остатка R(x),

а

коэффициенты k

членов высшего порядка функции F(x)

имеют те же ко­

эффициенты, что и многочлен G(x).

Таким

образом, ко­

эффициенты остатка R(x)

соответствуют

проверочным

элементам, а коэффициенты членов степени г и выше — информационным элементам.

Поясним сказанное на примере. Пусть для помехо­ устойчивого кодирования |12-эле,ментно>го первичного -ко-

') В двоичной форме записи операция умножения на х' экви­

валентна приписыванию справа г нулей.

332