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

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

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

 

Т А Б Л И Ц А

G.8

 

 

 

 

 

 

 

а)

 

б)

 

 

 

1

в)

 

Передано

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

1

1 0

0

1 0

0 1

0 1 0 0 0

1 0

1 1 1

Принято

1 П Т l o o i o i o o 1 0 1 | 0 0 0 1 0 0 1 о 1 о о о l j T j l l l

 

Зарегистрирова­

1 j T j 1 о о о 1 о 1 1 1 0

1 j T j o

0

1 0

0 1

o i o o o

ofo]

ООО

но

 

 

 

 

 

 

 

 

 

Анализ принятой

1 Щ 1

о о

1 о

 

i [ F o

комбинации

+

 

 

+

 

 

 

 

 

0

1 0

11

0

1

0

0

1

 

1|0] 1

1 1

l

l

 

l j T j i

0

1 0

0

0

+

 

 

 

0 1 0 1 0 0 0

0

1 0

0

0

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

Основным недостатком инверсных кодов является их высокая избыточность.

§ 6 . 4 . СИСТЕМАТИЧЕСКИЕ (ГРУППОВЫЕ) КОДЫ

Систематическими (или линейными) называются та­ кие блочные разделимые (п, 1г)-коды, в которых k разря­ дов (обычно первые) представляют собой комбинации

простого кода, а последующие (п—k)

разрядов являют­

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

помощью линейных операций над

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

[66]. Основным свойством двоичных систематических ко­

дов, определяющим

принцип

их построения,

является

то,

что

двух или

нескольких

'разрешенных кодовых

комбинаций дает также разрешенную комбинацию.

 

Пусть

комбинации

v(aia2

. • • ак,

Ьф2

• • • br)

и

v'(a'ia'2...

а'и, Ь'ф'2...

b'r)

являются

'разрешенными ком­

бинациями систематического

(п, /г)-кода

и b — инфор­

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

320

h =

С 1 а ! © с 2 0 2 © ... @ckak

( 6 , 2 1 )

b\ =

 

с1а[©с2а2®...®сГ1а'к )

 

 

где Cj. сг, • •., c/t

числа, равные 0 или 1.

 

Под сложением

двух n-элементных кодовых комбина­

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

v©v'

= (ai.@a[);

( a a © f l Q ; . . . ;

(ak@ak);

 

(bi@b[);

( 6 8

< Щ ) ; . . . ; (br

+ b'r).

Из выражения

(6.21)

следует

 

bi © b\ =

d х © а]) +

с2 2 + а'_) ©

... © c k (ak © a'k).

Нетрудно видеть, что проверочные разряды кодовой комбинации, полученной суммированием по модулю 2 двух разрешенных комбинаций, образуются по тому ж е правилу, что и для каждой разрешенной комбинации. Следовательно, сумма двух разрешенных комбинаций систематического кода также является разрешенной ком­ бинацией. Это положение справедливо и при суммирова­ нии по модулю 2 любого количества разрешенных ком­ бинаций систематического кода ' ) .

Вторым свойством систематических (п, k)-кодов, вы­ текающим из рассмотренного выше, является то, что ми­ нимальное кодовое расстояние таких кодов равно мини­ мальному весу его ненулевых кодовых комбинаций. Спра­ ведливость сказанного вытекает из следующего: 1) вес кодовой комбинации w определяется числом ненулевых

элементов в ней, т. е. числом

единиц; 2) кодовое расстоя­

ние d между

комбинациями

и,- и Vj определяется весом

комбинации

w(vu), полученной сложением

по модулю 2

(Сравниваемых комбинаций Vk = и,-© vy, 3)

поскольку ко­

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

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

М—1156

321

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

Покажем, что для формирования систематического (п, &)-кода, содержащего 2к разрешенных кодовых ком­ бинаций, достаточно иметь К линейно независимых ком­

бинаций. Совокупность комбинаций Ь\; и2 ;

.. .; u;t назы­

вается линейно независимой, если для всех

возможных

значений

с,, за исключением Ci = c 2

= . . .

=Ch = 0, 'соб­

людается

неравенство1 ) C\V\ @c2V2@

. .

СьРиФ®. Вы­

бирая все возможные

наборы

значений элементов с\, чи­

сло которых

равно

2к,

получим 2к кодовых комбинаций,

причем при

C i = c2

= ... = Cft = 0

получим нулевую комбина­

цию, которая также является

разрешенной.

Таким образом, любой набор из К линейно независи­ мых кодовых комбинаций порождает (п, ^-систематиче­ ский код. Обычно такой набор кодовых комбинаций принято записывать друг под другом в виде матрицы, содержащей /г строк и п столбцов. Такая матрица назы­ вается порождающей матрицей (п, /cj-кода и обозна­ чается символом С-( П | ;,). Так как информационные раз­ ряды занимают обычно первые К позиций в кодовых ком­ бинациях, то порождающую матрицу, содержащую К линейно независимых комбинаций, целесообразно пред­ ставить состоящей из единичной матрицы kXk, полно­ стью характеризующей комбинации простого кода:

• 100 . . . о 010 . . . о 001 . . . о

000. . . 1

иприписанной к ней справа матрицы проверочных эле­ ментов, содержащей К строк и г столбцов:

"10 . . . 0 ЬЦЬЦ . . , Ь 1 Г

101 . . . 0

621622

. . , Ь

'in. к)

 

 

(6.22)

 

 

 

00

1

Л1ьЬ1иь,к1

 

 

 

•) Элементы толя ct , с2 , .... ск могут

принимать значение 0 или 1.

322

Порождающая матрица вида (6.22) называется ка­ нонической и сокращенно записывается в форме

 

<?. л, = [hR{n_k)

J .

 

(6.23)

где /л —

единичная

матрица

размерности

(kXk),

R(n-k)xk

матрица

размерности

(п—k)Xk,

составлен­

ная из п—k проверочных элементов базисных кодовых комбинации.

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

Поскольку каждая строка единичной матрицы kXk содержит одну единицу, то вес каждой строки припи­

санной части матрицы не должен

быть меньше d — 1 , а

сумма по модулю 2 двух любых

ее строк — не менее

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

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

Выбор позиций 1 к 0 в приписанной части матрицы (6.22) однозначно определяет позиции тех информаци­ онных элементов, которые должны участвовать в обра­ зовании проверочных разрядов. Ответ на этот вопрос

легко

получить, если построить проверочную матрицу

М(П-к),

имеющую г строк и п столбцов. Для этого к еди­

ничной

матрице гХг слева

приписывается, матрица, со­

держащая

К столбцов и г строк, причем каждая ее стро­

ка должна

соответствовать

столбцу проверочных раз­

рядов порождающей матрицы (6.22):

 

ЬцЬп

. . .

6 И

Ю . . . О

 

м (п, k)

ЬЫл

. . . Ькг 01 . . . о

(6.24)

 

 

 

 

 

 

\birb2r

.

bkr

00

1

 

Каноническая

форма

матрицы

М(п, к) имеет

вид

Min,h)=[R'kx{n+k)f{n-k)]-

С

помощью

матрицы (6.24)

опе-

П *

3 2 3

рация кодирования осуществляется просто: позиции, за­ нимаемые единицами в i-й строке приписанной части мат­ рицы R'kx{n_ky определяют те информационные разряды, которые должны участвовать в формировании i-ro прове­ рочного разряда. Поясним сказанное на примере систе­ матического кода, исправляющего одиночные ошибки при числе разрешенных комбинаций NQ=2!i. Минимальное ко­ довое расстояние такого кода d = 3. Тогда согласно табл. 6.3 число разрядов в комбинациях корректирующе­ го кода п = 7, т. е. строится систематический код (7,4). Порождающая матрица такого кода может быть записа­

на, например, в следующем

виде:

 

 

 

 

 

 

1 0

0

0

1

0

1

 

 

 

0

1 0

0

 

1 1 1

 

G ( 7 . 4 )

=

0

0

1 0

 

1 1 0

 

 

 

 

 

 

 

0

0

0

1

0

1

1

 

Нетрудно видеть,

 

что

приписанная

часть матрицы

G(7,4), содержащая проверочные элементы,

удовлетворяет

изложенным выше требованиям: вес каждой строки — не меньше 2, а сумма по модулю 2 двух любых ее строк—не меньше 1. Зная G(7,/,v можно построить прове­ рочную матрицу М вида

 

1 1 0

1 0

0

" « 7 . 4 ) = 0

1 1 1 0

 

1 0

1

1 0

1 0

0

1

из рассмотрения которой следует, что проверочные эле­

менты 6,;

Ь2; Ьз, согласно

изложенному выше

общему

правилу,

определяются

следующими уравнениями:

 

ai © а2

@ а3 © Ь1

= 0

(6.25)

 

a2©a3®ai@b2

 

=

0

 

 

 

 

fli © <h ©

ui © b3

=

0

 

При декодировании с обнаружением ошибок

принятая

семиэлементная кодовая комбинация подвергается трем

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

ур-ниями (6.25). Если хотя

бы одно из этих уравнений

не удовлетворено, то приня­

тая

комбинация не

принадлежит

к числу

разрешенных

и,

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

в процессе

передачи

произошла

ошибка!

 

 

 

324

 

 

 

 

При декодировании с исправлением ошибок необхо­ димо учитывать, какие из уравнений не удовлетворены. Так, если не удовлетворяется одно из трех ур-ний (6.25), то ошибочно принятым является один из проверочных элементов. Когда не удовлетворяются первые два урав­ нения, то следует исправлять (заменять 0 на 1 или 1 на

0)

элемент а3, входящий в оба уравнения. Если не удов­

летворены 1 и 3-е уравнения,

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

•а если 2 и 3-е, — то элемент а,к.

Наконец, в случае, когда

три

уравнения не удовлетворены,

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

элемент

2.

Сказанное справедливо только

при искажении

одного

.элемента. При ошибочном приеме двух и более элемен­ тов правильное декодирование невозможно, так как ко-

.довое расстояние кода d—3.

Предположим, что передаче подлежит информацион­ ная последовательность 1011. Тогда согласно (6.25) на выходе кодирующего устройства она примет вид 1011000. Пусть под действием помех эта комбинация будет при­ нята как 1111000. При декодировании в соответствии с (6.25) получим следующие результаты:

 

1- я

проверка 1010100=1

 

 

 

 

2- я

»

1010100=1

 

 

 

 

3- я

»

1010100=1

 

 

 

Согласно изложенному выше исправлению подлежит

второй элемент,

и принятая

информационная комбина­

ция примет вид 1011.

 

 

 

 

 

 

Результат

проверок

на четность, записанный в виде

r-разрядного

двоичного

числа, называется синдромом.

В

нашем примере синдром S равен 111. Равенство синдро­

ма нулю указывает на

отсутствие

ошибок

в принятой

комбинации.

 

 

 

 

 

 

 

 

Если в порождающей матрице G(n,k)

систематическо­

го (п, &)-кода, записанной в канонической

форме, ис­

ключить (вычеркнуть)

I первых строк

и i первых столб­

цов, то 'полученная •G(n-i,h-i)

матрица

будет описывать

«систематический

(п—i,

k—0"К°Д-

Матрица

М „ _ ; , и

по­

лучается из канонической формы М( „, ^ вычеркиванием i первых столбцов. Поскольку при этом число линейнозависимых столбцов матрицы проверок не может умень­ шиться, то и d M m i нового код а будет то же, что у исход­ ного. Коды, построенные таким образом, принято назы­

вать укороченными

кодами: Рассмотрим различные виды

систематических

кодов;

325

К о д ы

X э м м ин г а. Групповой

(п, /г)-код,

матрица

проверок

которого

М( „, Л ) имеет г=/г—/г строк ;и 2''—1

столбцов,

причем

столбцами M ( „ , w

являются

все нену­

левые г-разрядные двоичные 'последовательности, назы­ вается кодом Хэмминга. Минимальное расстояние та­ кого кода d = 3 , т. е. кодом исправляются все одиночные ошибки. Таким образом, код Хэмминга полностью за­ дается количеством проверочных элементов г в кодовой комбинации. Порядок формирования г проверочных эле­ ментов определяется задаваемым алгоритмом обнаруже­ ния и исправления искаженного элемента, т. е. требо­

ванием,

предъявляемым к синдрому.

Одним из таких

требований

является

следующее:

синдром—двоичное

r-разрядное

число, записанное по результатам 1, 2,

 

r-й проверок, — должен

указывать

номер искаженного

разряда кодовой комбинации.

 

 

 

Так

как

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

комбинаций

п=

= k+r,

а число разрядов искомого

двоичного числа

г,

то согласно изложенному должно соблюдаться неравен­ ство

2 г ^ л + 1 .

(6.26)

Единица в правой части учитывает случай отсутствия искажений. Сопоставляя выражение (6.26) с аналогич­ ным выражением табл. 6.3 для случая r—Ъ, видим, что они совпадают. Подставляя в (6.26) г—п—k, получим

2 * < - ^ - ,

(6.27)

п + 1

 

где п и k могут принимать только целые значения. Не­ равенство (6.27) является исходным при определении длины кодовой комбинации по заданному числу инфор­ мационных элементов.

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

Пусть /7, = 1. Это значит, что один из элементов ко­ довой комбинации, охватываемых первой проверкой, ис­

кажен. Наличие 1

в младшем разряде

синдрома 5 =

= П^П3П21

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

элемент

является

нечетным,

так как единицу в

первом

разряде

326 . , -

имеют все нечетные числа (см.

табл. 1.1), следователь­

но, они и должны охватываться

первой проверкой.

Я х = fli©a3©o5

+

a 7 © . . .

Результат второй проверки Я 2

определяет второй раз­

ряд синдрома. Из табл. 1.1 находим все числа, имеющие

единицу во втором разряде. Таковыми

являются 2,

3, б,

7, 10, 11, 14, 15 ... Следовательно,

вторая проверка

дол­

жна охватывать

разряды

 

 

 

Я 2 =

оа ® а3 © ав © а, ©

а ы

©...

 

Рассуждая аналогичным образом, найдем последова­

тельность разрядов, охватываемых

третьей, четвертой,

пятой и т. д. проверками (табл. 6.9).

 

 

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

Сопоставляя

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

 

табл. 6.9, видим, что

 

 

 

 

 

 

 

 

Т А Б Л И Ц А

 

6.9

 

 

 

 

 

Номер про­

 

 

 

 

 

 

 

 

Номера

проверяемых разрядов

 

верки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1,

3,

5,

 

7,

9,

1,

13,

 

15,

17,

19,

21 ...

 

 

2

2,

3,

6,

 

7,

10,

11,

 

14,

 

15,

18,

19,

 

22 ...

 

3

4,

5,

6,

 

7,

12,

13,

14,

 

15,

20,

21,

 

22 ...

 

4

8,

9,

10,

11,

1 2,

13,

14,

15,

24,

25,

26 ...

 

5

16,

 

17,

 

18,

 

19

20,

21,

22,

23,

 

24,

 

25,

26 ...

 

6

32,

33,

34,

 

35

36,

37,

 

38,

39,

40,

41,

42 ....

 

элемент

а4 входит

 

только

 

 

в

первую

 

проверку,

элемент

а 2 только

во

 

вторую,

 

элемент

 

а 4

только

в третью,

элемент

ав только

в

 

четвертую

и т. д. Следовательно,

каждый первый элемент является проверочным, так как он входит только в соответствующую проверку. Эти эле­ менты формируются на передаче.

В качестве примера рассмотрим преобразование семиэлементного простого кода (К—7) в код Хэмминга, исправляющий одиночную ошибку. Согласно. (6.27) по­ лучим п— 11; г = 4 . Для такого кода четыре проверочных

327

разряда Ь^Ь2Ь3 и bti

согласно

табл. 6.9

расположатся

на

1, 2, 4. и 8 позициях

кодовых

комбинаций

и их числен­

ные значения находятся суммированием

по модулю

2

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

 

 

bi = ai = a3 © a5 © а7 © аа ©

а11г

 

b% = а 2 = а3 © а 6 © а, © а 1 о © а 1 1 ( 63 = 04 = ай © а в © а7 ,

К = а 8 = а 9 © а 1 0 © an.

Пусть передаваемая информационная последователь­ ность имеет вид 1011010. Тогда согласно изложенному принципу кодирования в канал связибудет передана кодовая комбинация 00100111010.

Теперь предположим, что в принятой комбинации ис­ кажен 9-й разряд — 00100111110. В результате четырех проверок на четность при декодировании получим:

Пх = а\®аг®а5®а'7®а'д®а'п

 

=

1,

Л 2

23©а6®а7©а[0©ап

 

=

0,

Я 3

= а ; © а ; © а ; © а 7

= 0,

 

П* = аа©а'9©а[0п

=

1,

 

где а' — разряды принятой комбинации.

 

Следовательно, синдром 5 = 1 0 0

1 . Так как число 1001

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

Если к передаваемым в канал связи «-элементным ко­

довым комбинациям кода

Хэмминга (d=3)

добавить

( л + 1 ) - й элемент так, чтобы

в комбинациях

было четное

число единиц, то анализ принимаемых комбинаций

мож­

но будет вести, используя (г-\-1)

проверку: г

проверок—

по процедуре кода

Хэмминга и ( г - Н ) - у ю

всей

ком­

бинации на четность.

 

 

 

 

 

 

В

полученном

-элементном

коде

кодовое

рас­

стояние с ? = 4 , что

обеспечивает

исправление

всех

оди­

ночных ошибок и обнаружение двойных.

 

 

 

При проверке возможны три случая:

 

 

 

1)

ошибок нет; все (г+1)

проверки равны

нулю;

2)

одиночная ошибка; последняя

(г-\-1)-я

проверка

равна единице, а первые г проверок указывают номер искаженного разряда;

328

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

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