Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Шляпоберский В.И. Основы техники передачи дискретных сообщений

.pdf
Скачиваний:
10
Добавлен:
27.10.2023
Размер:
19.24 Mб
Скачать

любая кодовая комбинация, является образующим мнО' гочленом кода, то

Р (х) = НОК у(*), т, {х), .... тт (х)\.

(6.35)

Для рассмотренного выше примера минимальный многочлен для а есть т(х)=х* + х+\. Следовательно, в данном случае

Р (х) = т {х) = х* -|- х + 1.

Циклические коды, задаваемые с помощью корней образующего многочлена, получили название кодов Боуза — Чоудхури 1 ) . Ими доказано, что если среди кор­

ней

образующего

многочлена циклического (п,

к)-кода

имеются

элементы

степени

/?г0; т0+\\

ш 0

+ 2;

т0

+

+ d+Q,

то

минимальное

расстояние этого

кода

будет

не

менее d.

 

 

 

 

 

 

 

 

 

Задание

кодов

с помощью корней образующего мно­

гочлена

позволяет

легко

определить

его

корректирую­

щие свойства.

 

 

 

 

 

 

 

 

Определение корректирующих свойств

циклических

(а,

к)-кодов

сводится

к

установлению

максимальных

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

минимального

кодового расстояния

d.

 

 

Свойство

6.

Для любых значений

/ и

/ существует

циклический

код

длины п =2'—1,

 

исправляющий все

ошибки кратности

/ и менее

и содержащий не более

/' = // проверочных

элементов.

 

 

 

 

Потребуем, чтобы циклический код длины /г=15 ис­

правлял все

двойные

ошибки

{1=2).

 

Определим /. Так

как 15 = 2 4 — 1 , то 1 = 4.

Тогда

г=8.

Таким образом, в ис­

комом коде

15 элементов, из

которых

7 — информацион­

ных и 8 — проверочных. Минимальное кодовое расстоя­

ние такого кода d =

5.

 

 

 

 

 

Свойство 6 определяет лишь существование кодов с

известными

корректирующими свойствами.

Нахождение

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

Чтобы найти вид образующего многочлена, обеспечи­

вающего d = 5 при

п=15, г = 8, воспользуемся табл. 6.12,

') Р. К. Б о у з, Д .

К- Ч о у д х у р и . Об

одном классе двоичных

групповых кодов с исправлением ошибок.

«Кибернетический сбор­

ник», вып. 2. М., ИЛ,

1961.

 

340

 

 

 

Т А

Б Л И Ц А

6.12

 

 

 

 

 

ВИД минимальных многочленов для

 

1

1-2

f=3

г = 4

Z=5

/=6

1<=7

/=8

1

х*+

х3+

 

Х Б + Х 2 + 1

 

xi+x3+l

х8+х*+

 

 

+х+\

 

 

 

 

+х*+х+

 

 

 

 

 

 

 

- И

3

л - 4 - Ь г 3 Ч -

х*>+х* +

 

+х*+х+

Л-8 +А-5 -г-

 

 

 

+х*+х+

+ д - 3 +

+ 1

 

 

 

 

+ 1

+Д'2 +1

+ 1

+ 1

5

xb+xt+

 

 

 

 

+х*+х+

+х*+х-\-

3~\-

 

 

 

 

 

 

 

 

 

 

 

+ 1

+* 3 + 1

 

7

х*+х3+\

х7+хЧ-

 

 

 

 

 

 

в которой приведены минимальные многочлены до вось­ мой степени включительно.

Образующий многочлен находим из выражения

 

 

 

 

Р(х) =

H O K [ m 1 ( x ) m 3 ( x ) . . . m i ( x ) ] ,

 

 

(6.36)

где

i=d—2.

 

 

 

 

 

 

 

 

 

 

 

Так

как в рассматриваемом

коде 1 = 4, a i — d—2 = 3,

то

из

третьей

колонки

табл.

6.12

находим:

т\(х) =

= х 4

+ х + 1; т3(х)

= х 4

+ х 3

+ х 2 + х + 1. Отсюда

 

 

Р (х) = т

х

(х) /п (х) -

(**

f х +

1) (** +

х

3

+ х

2

+ х + 1),

 

 

 

 

3

 

 

 

 

 

 

 

 

или

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р (х) = X8

+ X7 +

Х° + X1 + 1.

 

 

 

 

 

 

К о д ы , к о р р е к т и р у ю щ и е п а к е т ы о ш и б о к .

Выше

(свойство

5)

были

рассмотрены

 

условия,

при ко­

торых циклический

(я, Л)-код обнаруживает

пакеты оши­

бок длиной Ь. Рассуждая

аналогичным

образом,

нетруд­

но определить нижнюю границу числа проверочных эле­ ментов группового (я, &)-кода, исправляющего пакеты ошибок длиной Ь. Обозначим через С число различных сочетаний ошибок в л-элементной комбинации, которые необходимо исправить. Тогда число проверочных элемен­ тов искомого кода г = п-—к должно быть таково, чтобы обеспечивалось неравенство 2 г ^ С + ' 1 .

341

Определим С для случая

(п, к)-кода,

исправляющего

пакеты ошибок длиной b и меньше, т.

е. найдем число

возможных

пакетов ошибок

длины

b и

меньше.

iB пределах п-элементной кодовой комбинации пакет

ошибок из

b элементов, представляющий собой одно из

2 6 - 2

сочетаний1 ),

может

занимать

п—Ь+'l

различных

положений. 'Пакет

из (b—1)

элемента,

представляющий

собой одно

из 2 Ь _ 3

возможных сочетаний,

может зани­

мать

п—Ь+2

различных

положений

и т. д.

Наконец, па­

кет из двух элементов, состоящий .из двух единиц, мо­ жет занимать одно из п—1 возможных положений, а оди­ ночная ошибка — одно из п положений. Из сказанного следует, что

С = п+ 1 + £ 2 ' ' - 2 (n — i + 1).

1=2

Используя формулу для арифметическо-геометриче- ской прогрессии, данное выражение можно преобразо­ вать к виду

С = 2b~l Ь + 2) — 1.

Отсюда

2г^2ь-1(п

6 + 2).

Логарифмируя это выражение, получим r > ( 6 - l ) + l o g ( * - b + 2).

Таким образом, наименьшее число проверочных эле­

ментов

группового (п,

к)-кода,

исправляющего

все

па­

кеты

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

b и

менее, составляет

b—1

+

+ log ( п — Ь + 2 ) .

 

 

 

 

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

q(x)=P(x)(xe+\),

где Р(х) — неприводимый многочлен степени г, являю­ щийся сомножителем разложения бинома х1+1 =

= х 2 - ' + 1 .

') В пакете ошибок два крайних элемента всегда единицы.

342

Длина кодовой комбинации п равна наименьшему

общему .кратному

чисел / и с, так

как

только в этом

слу­

чае q(x)

делится

на хп+Л. При

этом

необходимо,

что­

бы с не делилось на /. Число проверочных элементов

та­

кого кода

равно

с+r,

а число информационных элемен­

тов k — ii—с—\г.

 

 

 

 

 

|Коды Файра {66,

94] п о з в о л я ю т

исправить любой

оди­

ночный пакет ошибок длиной Ь и менее и одновременно

обнаружить

любой пакет ошибок длиной m^zb,

появив­

шийся в

пределах я-элементной кодовой комбинации,

при условии c^ift + m — 1 ; r^b. Если применять

эти ко­

ды только для обнаружения ошибок, то можно обнару­ жить любой одиночный пакет ошибок, длина которого

меньше

или

равна

числу

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

т'=

= с +'/"•

Корректирующие свойства кодов Файра обус­

ловлены

видом

образующего

многочлена q(x).

Сомно­

житель

( х ' + 1 )

позволяет

обнаружить

наличие

одиноч­

ного пакета ошибок длиной Ь, а многочлен Р(х)

— по­

ложение

внутри кодовой ' К о м б и н а ц и и .

 

 

 

Рассмотренный выше циклический код, образующий

многочлен которого

имеет

вид Р'(х)

=-(л:+'1)Р(х),

яв­

ляется частным

случаем кодов

Файра,

когда с = 1 . Такой

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

да Файра

 

для

случая,

когда

образующий

многочлен

имеет вид

q(x)

= (хв+

1 ) (х53+.\).

Здесь

с = 6; г=Ъ\

/ = 2 Г — 1 = 3 1 ,

c + 7 - = i l : l ,

/г=ЖЖ(/,

с)=НОК(3'1,6)=«186 .

Таким

образом,

 

образующий

многочлен

q(x) =

= i ( x 6 + ' l )'(х5

+ х 3 + 1 )

позволяет

построить

код

Файра

(186,175),

исправляющий

одиночные

пакеты

ошибок

длиной 3 или 2 или

1

элемент

и одновременно

обнару­

живающий

 

одиночные

пакеты

ошибок

соответственно

длиной 4 или 5 или 6 элементов. Используя этот же об­ разующий многочлен, можно построить и укороченные коды Файра с большей избыточностью, например, коды

(61,50), (86,75) и т.

п.

(Корректирующие

возможности

укороченных кодов

будут такие же, как

у

полного.

§ 6.5. Н Е П Р Е Р Ы В Н Ы Е

К О Д Ы

 

 

-Все рассмотренные

выше

избыточные

коды относятся

к числу блочных кодов, в которых кодирование на пе­ редаче '(формирование проверочных элементов) и деко-

343

дироваыие на приеме (обнаружение и исправление оши­ бок) выполняются в пределах каждой кодовой комбина­ ции (блока) в отдельности. Наряду с блочными кодами разработаны и получили распространение коды, в кото­ рых кодирование и декодирование представляют собой операции, непрерывно совершаемые над последователь­ ностями элементов без деления их на блоки. Такие ко­ ды получили название непрерывных или рекуррентных [14, '66, 94]. Принцип построения этих кодов рассмотрим на примере цепного кода [108], который является самым простым из всех известных непрерывных кодов.

В цепном коде каждый проверочный элемент форми­ руется путем сложения по модулю 2 двух информацион­ ных элементов, отстоящих один от другого на t—k—i элементов, где 4 — шаг сложения:

di®ak = b.k ,

ам®ak+t

=bk>

k + t ,

 

 

ak+\ ® ak+t-\-\

~

^k+\,

А + Н - Г

 

Так как каждый информационный

элемент

участвует

в формировании двух проверочных элементов

(рис. 6.3),

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

Рис. 6.3. Формирование провар очных элементов цепного «одя

344

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

ных

элементов (рис. 6.3). Изменение численного значе­

ния

информационного элемента, например аи (переход

] в 0 или 0 в 1), приводит к изменению

значений

двух

связанных с ним проверочных элементов, в нашем

слу­

чае

Oft-/,/i и <bk,h+t- Такая взаимосвязь

информационных

и проверочных элементов определяет процедуру декоди­

рования принимаемой последовательности элементов:

на приеме информационные и

проверочные эле­

менты

разделяются

и регистрируются

независимо;

из принятой

последовательности

информационных

элементов а' формируются контрольные элементы с'

точно так же, как формировались проверочные элементы

на передаче {ah_t@a'k== ck_u

fe)x);

— каждый контрольный

элемент сравнивается с при­

нятым из канала связи соответствующим проверочным

элементом: c'k_t< k

с Ъ\_и k ; c'k_t+h

k + l

с bk_i+[>

А + 1 и т . д . ;

при отсутствии искажений в канале связи сравни­

ваемые контрольные и проверочные элементы

будут оди­

наковыми;

 

 

 

 

 

при ошибках в принимаемой

последовательности

и искажении

'информационного

элемента,

например,

а ь (a'k ^

а*)> c'k-t

ft и

сА + / Н Е совпадают соответственно с

K-t, -k

и К, kit •

 

 

 

 

Наличие двух

несовпадений

контрольных и провероч­

ных элементов, сдвинутых друг от друга на / элементов (7 — шаг сложения), указывает на то, что искажен ин­

формационный элемент,

общий для обоих

проверочных

элементов \(b'k_t k и b'k k

+ t ) , т. е. значение

a'k необхо­

димо изменить на обратное;

 

— при искажении только проверочного

элемента, на­

пример b'k_t

k ФЬ^-г, л, и правильном приеме информаци­

онных

элементов

(au-t 'И ЙЙ) несовпадающей окажется

только

одна

пара

элементов {c'k_t к

не совпадет с

') Информационные и проверочные элементы, принятые из ка­ нала связи, а также сформированные на приеме контрольные эле­ менты будем обозначать со штрихами (а', Ь', с').

345

b*b_i k ) - Наличие одного несовпадения контрольных й проверочных элементов указывает па ошибочный прием проверочного элемента.

 

Из рассмотренного принципа декодирова-

 

иия следует, что цепной

код является

кодом,

» и с п р а в л я ю щ и м

ошибки.

Определим

условия,

^ *

при которых обеспечивается исправление оши-

 

бочно принятых элементов. Согласно принципу

*>

формирования

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

^шаге сложения t вся последовательность пе­

 

 

редаваемых в канал связи элементов

разби-

£ ^

 

вается как бы на t цепей. В каждую

из цепей

 

 

входят

информационные

и проверочные эле-

$

 

менты, связанные друг с другом

(см. рис. 6 . 4 ) .

 

 

Рассматривая каждую цепь в отдельности, что

 

 

справедливо в силу их независимости, .видим,

jE£

 

что для исправления

ошибочно

принятого ин-

j T i

 

формациоиного элемента, например щи необ-

 

^

ходимо,

чтобы

предыдущий

и

последующий

( ^

=

информационные элементы

этой

цепи {ah-t и

са*

*

aii+t), а

также

соответствующие

проверочные

'кг

а

элементы

{bh-i,h

и buji+t)

были

приняты нра-

 

2

вильно. .Кроме элемента

а/„ в данной

цепи мо-

j

S

Г ут быть искажены элементы

ап+31, «/i+6(

" т. д.,

*

3

т. е. каждый третий информационный

элемент,

г'.

g_ Это условие выполняется

полностью,

еслипро-

i £

с

должителыюсть

помехи такова,

что при шаге

 

е

сложения / искажаются

не более чем 2t под-

 

н

ряд расположенных

элементов и проверочные

сз*

|

элементы передаются

в канал связи с

задерж-

••ч кой на (314-4) элемент.

4*

1

Необходимость задержки проверочных эле-

*t

rj

ментов перед передачей их в канал

связи вы-

ез*

|

текает из самого принципа кодирования цеп-

*

g

ного кода. При наличии задержки

последова-

g

тельность элементов,

передаваемая

в канал

 

§

связи, будет иметь

вид, представленный на

^ч рис. 6.4.

v

,2

Исходя из изложенных

исправляющих воз-

*

~

можностей цепного кода в пределах

каждой

7?

2

цепи

и

учитывая их независимость,

можно

f * *

<j

сформировать следующее

основное

свойство

.

 

цепного

кода: при шаге

сложения / ч<од нс-

1 1

 

правляет пакет ошибок длиной b^Lftt

при ус­

 

 

ловии,

что каждый проверочный элемент пе-

346

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

(3/+'1)то и что между

 

последним

элементом

данного па­

кета ошибок и первым элементом

последующего

принято

подряд не менее

(36+1 ) неискаженных элементов.

 

Предположим,

'что эта последовательность

(рис. 6.5)

поражена помехой, исказившей

 

21 элемента,

начиная с

информационного

элемента

a;t

и

кончая

проверочным

элементом bk-2t-\,

k-t-\- В

этом

случае

все 4

информаци­

онных элементов

от аи до au+i-i

будут

исправлены, так

как информационные

 

элементы

ah-t — aii-\,

ctk+t ••• ak+2i-\

и проверочные

элементы

от Ьд-г.ь до bh+t-\,k+2i-i

прини­

маются

правильно.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поясним

сказанное на

конкретном

примере.

Пусть

имеем

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

информационных

элементов

(рис.

6.5а),

для которой

при шаге

сложения

t = 2

сфор-

 

 

 

 

 

 

 

 

 

 

 

 

'10

1 .. ...

 

.„

 

,

 

 

 

 

 

 

/

/

 

0

1

1 0

 

1

0

0

0

 

 

 

я)

%

6Ц

°3,5 Bi,S

°5Л

»В,а

67,Я

б8,Ю 69,П ВЮ,12 В11.13 ВВ,!4 •

 

 

 

 

1 1 1 0

 

1 0

 

1

1

о 'о /

о

 

 

 

 

 

ф

о,8и afia a35i3

atfa o5Bis as6iB

a,

 

 

 

 

 

 

°tAp °I2BC,8 °I3B7,9

 

 

 

 

 

 

 

 

 

Bl,3

°SB2fi °9,B3,S°IOA,S

°li\lO

г) 1

0

0

1

1

1

 

0 1 1 1 1 1 1 0 1 1 0 0 0 1 0 1 '

а)\~f_^_J_J__J__2_°J_Mr~^-'00

 

 

 

f'

o~o~~lT~o~~~

 

a',

Ь'г a'

aI

a's

o's

 

a;

a'a a'

 

a'm

a'„ o'„

a;,

 

a'lti

 

 

i

0

0

1

1

1

0

0

0

0

0

0

0

 

 

 

 

0

'1,3

"2,4 "3,1 "i,S "5,7 "e,8

"7.9 "S,l0 "Sir

"11,13

 

 

 

 

 

 

/

0

0.

0

)

0\

К

1\ 0\

 

0

1

0

 

 

 

 

 

т)\— - } — )

/ / 1 0 1

^1,3 C2J

C3S C4,8 CS7

 

9 ~ > - >

- >

- ^

 

r

0'

0

1

0

1

0

C£8

Cr.S

CSm

СЗЯ

CWJ2

Cll,!3

Cl2f4

Рис. 6.5. Исправление пакетов ошибок цепным кодом

мированы проверочные элементы (рис. 6.56). Переда­ ваемая в канал связи последовательность элементов представлена на рис. 6.5е. Теперь предположим, что под действием помехи элементы принимаемой последо­ вательности искажены (обведены пунктиром, рис. 6.5г). Отделим информационные элементы от проверочных (рис. 6.55). По принятым информационным элементам а' сформируем, контрольные элементы- с' (рис. 6.5э/с). Со-

347

поставляя

b'

и с',

видим, что их значения не совпадают

в шести случаях.

Несовпадение Ь'

с с'_л и Ь'зъ

с

с'35

указывает

на

то,

что проверочные

элементы b'2i

и

b'3S

приняты искаженными, так как проверочные и контроль­ ные элементы, расположенные влево и вправо на шаг

сложения,

совпадают

{Ь[3

с с

] _ 3 ,

Ь^_с с\ 6

) .

Несовпаде­

н и я ^ с с ; 8 и Ь 8 ' 1 0 с

Cgi l 0 , а также

^

с

с'ь9

и

^ „ с с ^ , , ,

смещенные

относительно

друг

друга

на

шаг

сложения

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

Таким образом, цепной код сравнительно просто, правда, ценой большой избыточности (1/3), позволяет бороться с групповыми ошибками в канале связи. Изме­ няя величину шага сложения, можно согласовать ис­ правляющие возможности кода с характеристиками ка­ нала связи. Если в канале связи в данный момент пре­ обладают пакеты ошибки небольшой длины, то, выби­ рая соответствующий шаг сложения, можно увеличить допустимую частость ошибок. При наличии редких, но продолжительных пакетов ошибок шаг сложения сле­ дует увеличить. :Кроме того, аппаратуру щепного кода можно 'применять в любой дискретной системе связи не­ зависимо от числа элементов в комбинациях первичного кода.

Рекуррентные коды могут быть построены с любой сколь угодно малой избыточностью (Я = 1/п), т. е. так, чтобы на каждые а переданных элементов приходился всего один проверочный. Однако по мере уменьшения избыточности рекурретного кода резко возрастает слож­ ность кодирующих и декодирующих устройств и умень­ шаются его исправляющие возможности. Так, для кода (1/5), исправляющего до пяти информационных элемен­ тов, пораженных одним пакетом ошибок, требуется при­ мерно в пять раз больше элементов для построения ко­ дирующих и декодирующих устройств, чем для кода (1/2); величина защитного интервала также возрастает примерно в пять раз. Поэтому только специальные тре­ бования по уменьшению избыточности могут заставить отдать предпочтение коду '(1/я).

•К непрерывным кодам относятся 'Также так называе­ мые евёрточные коды £14]. В основу построения евер1

348

точных кодов положен принцип, согласно которому каж­ дый информационный символ, поступающий на вход ко­ дирующего устройства, вызывает появление на его вы­ ходе V элементов, образованных суммированием по мо­ дулю 2 данного символа и (/<—1) -го предыдущих. Пояс­ ним сказанное на конкретном примере.

Пусть кодирующее устройство представляет собой пятиразрядный двигающий регистр (/( = 5), выходы каж­ дого разряда которого поданы на 3 сумматора по мо­ дулю 2 (1/==3), как показано на рис. 6.6, и пусть посту­

пающая

на

вход

регис­

00Ю1

 

 

 

 

тра

 

информационная

1

1

J h

5

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

 

со­

ВХ

 

 

 

 

 

стоит из

пяти

символов

 

 

 

 

 

10100

(L

=

5).

Если

к

 

 

 

 

 

моменту

 

поступления

 

%

1Ш\

l\2\

первого

символа

все

 

 

 

 

 

 

разряды

регистра

на­

 

 

 

 

В канап

ходились

в состоянии 0,

 

 

 

 

то

после

записи

1

в

 

 

 

 

сдязи

первый

разряд

регист­

 

 

 

 

Рис. 6.6. Кодирующее

устройство

ра

сигналы, считанные

распределителем

с

вы­

сверточного

кода (/(=5,

V=3)

 

 

 

 

 

ходов сумматоров, составят последовательность симво­

лов 111.

После записи в

первый разряд регистра

второго

символа, равного

0 (первый символ бу­

дет переписан во второй разряд), распределитель пере­ даст в канал последовательность символов 010. Третий информационный символ (1) вызовет передачу в канал последовательности 100. Затем будут переданы группы символов 001, 000, 011. После поступления на вход ре­ гистра последнего информационного символа подаются последовательно k нулей по числу разрядов регистра. В этом случае в канал связи будут переданы еще четыре группы символов: 011, 000, 000, 000.

Таким образом, информационная последовательность символов 10100 будет преобразована кодирующим уст­ ройством в последовательность у, состоящую .из 30 сим­ волов — 11101 ЮОООЮОООМОШООООООООО. В общем случае y=(L + K)V. Обычно информационная последователь­ ность состоит из большого числа символов, так что L>>/(. Поэтому применение рассматриваемого способа кодирования приводит к уменьшению производительно-

349

Соседние файлы в папке книги из ГПНТБ