Файл: Бездудный, В. Г. Техника безопасности в шахтном строительстве.pdf

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

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

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

Добавлен: 18.10.2024

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

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

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

зующей данного кода. Для нашего примера определяющая матрица

будет иметь вид

000 101

001 010

010 100

101000

010 001

100 010

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

000 101 да Ох5 +

0х* +

Ох3 +

1 * 4 - Ох1 +

1х° =

х2 +

1;

 

001 010 да Ох5 +

Ox4 -f

lx3 +

Ох2 + lx1 +

0х° =

х3 +

х;

 

010 100 да Ох5 +

1х4 +

0х3 4- 1х2 4- Ох1 +

0х° =

х4 -+• х2;

 

101 000 да 1х5 +

0х4 4- lx3 -f 0х2 4- Ох140х° =

х5 4- х3

и т. д.

Нетрудно заметить, что циклический сдвиг кодовой комбинации ана­ логичен умножению соответствующего многочлена на х:

(х2 4- 1)х х3 4- х да 001 010; (х3 4- х ) х —'х* 4- х2 да 010 100; (х4 4- х2) х = х5 + х3 да 101 000.

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

многочлен х 4- 1, если

приведение подобных

членов осуществлять

по модулю 2:

 

 

„000101

х2 4 -0 + 1 да 000 101

® 001 010

* 4 -1

 

001111

х2 + 0 4 - 1

 

 

х3 4- 0 4- *

S001010

 

 

 

х3 + х2 + х 4- 1

: 001 111

Другими словами, существует принципиальная возможность по­ лучения любой кодовой комбинации циклического кода путем умно­ жения соответствующим образом подобранного образующего многочле­ на на некоторый другой многочлен. Однако так как операции умноже­ ния и деления по модулю 2 сводятся, в конце концов, к операции сложения (см. тему 7), то можно сказать, что любой многочлен цикли­

130


ческого кода

делится

на образующий

многочлен без

остатка т:

000101

1000 101

0010101000101

010 1001000101

101 000

1

000101

1

000101

1

000

 

000

 

000

 

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

Тоблица 25

Основные характеристики циклических кодэв, исправляющих одиночные и обнаруживающих все одиночные и двойные ошибки

п «и «к

< 3

1

2

< 7

. 4

3

« 7

4

3

<15

11

4

<15

11

4

<31

26

5

<31

26

5

<31

26

5

< 6 3

57

6

<63

57

6

<63

57

6

<127

120

7

<127

120

7

<127

120

7

 

 

 

 

 

 

Число

Образующий

Кодовое обозначение

остатков

от деле­

многочлен

образующего многочлена

ния на об­

 

 

 

 

 

 

разующий

 

 

 

 

 

 

многочлен

Х * + Х + 1

 

 

i

i

i

3

х3+ х+\

 

1 0

11

7

х3+ х 3+1

 

1 1 0

1

7

х*+ х3+ 1

1 1 0 0 1

15

J^-j-X+l

1 0

0

11

15

 

1 0 0 1 0 1

 

31

X6+X3+ l

1 0 1 0 0 1

 

31

x6+ x s+ l

1 0

0

1 1 1

1

31

1 1 0 0 0 0

63

x*+x3+ l

1 0 0 1 0 0 1

 

63

x *+ x + l

1 0 0 0 0 1 1

63

x^+x+l

1 0 0 0 0 0 1 1

 

127

x7+ x 3+ l

1 0 0 0 1 0 0 1

 

127

x7+ x H -l

1 0 0 1 0 0 0 1

 

127

шла ошибка (сбой), либо это комбинация какого-то другого кода (запре­ щенная комбинация), что для декодирующего устройства не имеет принципиальной разности. По остатку и обнаруживается наличие запрещенной комбинации, т. е. обнаруживается ошибка. Остатки от деления многочленов являются опознавателями ошибок циклических кодов.

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

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

1 Н а п о м и н а е м , ч т о д е л и т е л ь п о д п и с ы в а е т с я п о д д е л и м ы м т а к , ч т о б ы с о в п а д а л и с т а р ш и е р а з р я д ы .

5*

131


пи и контрольных пк символов заданы табл. 25 (сравните с табл. 21 для кода Хэмминга). Там же приведены и образующие многочлены для кодов различной длины.

Вернемся, однако, к процедуре нахождения остатков деления и построения полной образующей матрицы циклического кода. Предпо­ ложим, необходимо передать 10 информационных разрядов так, что­ бы при этом были обнаружены все одиночные и двойные ошибки. По табл. 25 выбираем ближайшее значение пи >- 10. Согласно табл. 25, таким значением будет пя = 11. При этом пк = 4, а п = 15. Там же выбираем образующий многочлен х* + х3 4- 1.

Полную образующую матрицу обычно строят из единичной транс­ понированной матрицы в канонической форме и дополнительной матри­ цы С„и;„к, соответствующей проверочным разрядам. Транспонирован­

ная матрица для пя = 11 имеет вид

0 0 0 0 0 0 0 0 0 0 1

0 0 0 0 0 0 0 0 0 1 0

0 0 0 0 0 0 0 0 1 0 0

1 0 0 0 0 0 0 0 0 0 0

Дополнительная матрица может быть построена по остаткам деления комбинации в виде единицы с нулями (последней строки единичной транспонированной матрицы) на выбранный образующий многочлен:

1000000000

111001

 

 

 

11001

 

 

 

 

1 0 0 1 0

1

0

0

I

11001

1

0

1

1

1 0 1 1 0

X

 

 

1

11001

 

 

1

0

1

1

1

1 1 1 1 0

1

1

1

0

11001

0 1 1 1 0 0

С П ;4 = 0 1 0 1

11001

1

0

1

0

0 1 0 1 0 0

1

1

0

1

11001

п

п

 

1

п о ю

и

и

X 1

0

1

1

0

11001

1 1 0 0

о б Т Т о о о

11001

0001

1 3 2


. f

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

0 0 0 0 0 0 0 0 0 0 1 1 0 0 1

0 0 0 0 0 0 0 0 0 1 0 1 0 1 1

0 0 0 0 0 0 0 0 1 0 0 1 1 1 1

Cl5;ll = 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 1 0 0 0 0 1 1 I 0

0 0 0 0 0 1 0 0 0 0 0 0 1 0 1

0 0 0 0 1 0 0 0 0 0 0 1 0 1 0

0 0 0 1 0 0 0 0 0 0 0 1 1 0 1

0 0 1 0 0 0 0 0 0 0 0 0 0 1 1

0 1 0 0 0 0 0 0 0 0 0 0 1 1 0

1 0 0 0 0 0 0 0 0 0 0 1 1 0 0

В качестве неприводимого многочлена можно было бы взять, например, и х* + х 1. Тогда мы нашли бы несколько видоизменен­ ную определяющую матрицу, которая отличалась бы от полученной выше не самими остатками, а лишь их порядком:

0 0 0 0 0 0 0 0 0 0

1 0 0 1 1

0 0 0 0 0 0 0 0 0

1 0 0 1 1 0

0 0 0 0 0 0 0 0 1 0 0

1 1 0 0

0 0 0 0 0 0 0

1 0 0 0

1 0 1 1

0 0 0 0 0 0 1 0 0 0 0 0

1 0 1

0 0 0 0 0 1 0 0 0 0 0

1 0 1 0

0 0 0 0

1 0 0 0 0 0 0 0

1 1 1

0 0 0 1 0 0 0 0 0 0 0 1 1 1 0

0 0 1 0 0 0 0 0 0 0 0

1 1 1 1

0 1 0 0 0 0 0 0 0 0 0

1 1 0

1

1 0 0 0 0 0 0 0 0 0 0

1 0 0

1

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

133

В качестве примера выпишем две кодовые комбинации, имеющие единицы, первая в 1, 2, 7, 9, вторая в 3, 5, 6, 10 и 11 информационных разрядах. Для этого достаточно сложить по модулю 2 строки обра­ зующей матрицы с теми же порядковыми номерами, считая снизу вверх:

1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 Q 0 0 0 1 1 0 1-

@ 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1

0 0 0 0 0 0 0 0 1 0 0 1

1 0 0

1 1 0 0 0 0 1 0 Г 0 0 1 1 0 1

0 0 1 0 0 0 0 0 0 0 0 1 1 1 1

0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 @ 0 0 0 0 0 1 0 0 0 0 0 1 0 1 0

0 0 0 0 0 0 0 0 0 1 0 0 1

1 0

0 0 0 0 0 0 0 0 0 0 1 0 0 1 1

0 0 1 0 1

1 0 0 0 1 1 0 1 1

1

Код, построенный при помощи матриц С+ц и С\5;ц, может обна­ руживать все одиночные и все двукратные ошибки, а также пачки

ошибок длиной

в четыре разряда. Этот код может обнаруживать

 

 

 

пачки ошибок в пять разрядов (необнару-

 

 

 

живаемыми остаются лишь х/8 от общего

 

 

 

числа пачек ошибок) и пачки 'ошибок с чис­

 

 

 

лом разрядов п > 5 (необнаруженные при

 

 

 

этом остаются лишь V16 общего числа пачек

 

 

 

ошибок).

 

 

 

Как мы уже говорили, кодирующие и

 

 

 

декодирующие устройства циклических кодов

Рис. 30.

Регистр сдвига с выгодно отличаются своей простотой. Как в

обратной

связью

через

кодирующем, так и в декодирующем устрой­

сумматор.

 

 

стве основными элементами являются регист­

 

 

 

ры сдвига с обратной связью через сумматор по модулю 2. На рис. 30 представлена схема такого регистра сдвига, на которой Тг Тп — ячейки И в случае тиратронного регистра сдвига

либо триггерные ячейки на полупроводниках, лампах и т.

д.; ^ —

Кп .— ключи, подключающие сумматор к определенным

ячейкам

регистра. Выход сумматора заведен на вход регистра сдвига. Поэтому в первом каскаде регистра всегда записан результат сложения по модулю 2 (естественно, после-того, как на сумматоре появится первый результат сложения).

Предположим, в регистре рис. 31, который является частным

случаем регистра рис. 30,

записана

комбинация

111. После перво­

го тактового импульса из

ячеек Т2

и Т3 сигналы

поступят на сум­

матор, с выхода которого

результат

сложения 1 + 1 = 0 запишется

134