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

книги из ГПНТБ / Константинов П.А. Авиационная радиосвязь

.pdf
Скачиваний:
24
Добавлен:
30.10.2023
Размер:
20.56 Mб
Скачать

Следует иметь в виду, что кривые на рис. 2.12, как и на рис. 2.11, соответствуют формулам (2.31), (2.30) и (2.28) только при малых Р, т. е. при больших значенияхUJa. В области малых значений Um!a кривые нужно строить по точным формулам.

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

сти элементарного

импульса,

 

несколько

более

помехоустойчи­

Рн

1

2

3

4

5

6

в а

6

10

10

10

Ю

1&

Рас. 2.12. Зависимость вероятности искажения команды от отношения сигнала к помехе (при постоянной длительности команды и полосе про­ пускания, определяемой длительностью элемен­ тарного импульса. Случай высокой стабильности

частоты):

1 — некорректирующцй код; 2 — код Хэмминга; 3 — шестнэлементный код с четным числом единиц; ■! — семпэлементный код с постоянным числом единиц и нулей

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

чивость этого кода станет [ниже.

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

50

комбинации будут отличаться друг от друга не менее чем дву­ мя элементами.

Для обнаружения двойной ошибки необходимо, чтобы ко­ довые комбинации отличались не менее чем тремя элементами*.

Число элементов, на которое кодовые комбинации отличают­ ся друг от друга, называется расстоянием между кодовыми комбинациями. В обычном некорректирующем коде минималь­ ное расстояние равно единице; в коде, обнаруживающем одиноч­ ную ошибку, оно равно двум; в коде, обнаруживающем двой­ ную ошибку, — трем.

Увеличение расстояния между кодовыми комбинациями дает возможность обнаруживать ошибки более высокой кратности. При минимальном расстоянии, равном d, может быть, обнаруже­ на ошибка кратности (d— 1). Понятно, что для увеличения рас­ стояния необходимо увеличивать число дополнительных импуль­ сов, т. е. увеличивать избыточность кода.

Практически важно обеспечить не только обнаружение оши­ бок, но и их исправление. При использовании обнаруживающих кодов с автоматической справкой исправление ошибок дости­ гаетсяпосылкой сигнала запроса и повторением искаженных команд. Но в ряде случаев связь осуществляется только в одном направлении. Такое положение имеет место, например, в систе­ мах наведения. В подобных случаях отсутствует возможность для посылки сигнала запроса в обратном направлении и, 'следо­ вательно, для получения автоматической справки. Исправление ошибок здесь может быть обеспечено применением исправляю­ щих кодов, т. е. кодов, которые не только обнаруживают ошиб­ ки, но и исправляют их.

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

Исправление ошибки возможно в том случае, если искаженная кодовая комбинация будет ближе к истинной, чем к любой дру­ гой. Предположим, например, что минимальное расстояние рав­ но трем (d — 3). Тогда при искажении одного элемента иска­ женная кодовая комбинация от истинной будет отличаться од­ ним элементом, а от ложной — двумя. Следовательно, при d = 3 одиночная ошибка может быть исправлена. Таким же образом можно убедиться, что при d = 5 может быть исправлена двой-

* 'Обнаруживающие коды в системах с автоматической справкой могут быть построены и на основе других принципов. Практическое применение на­ шел, например, код с защитой по форме импульсов. При этом осуществляет­ ся поэлементная проверка: каждая принимаемая посылка сравнивается с контрольным импульсом по амплитуде и длительности. Если наблюдается отклонение от нормы, посылается сигнал запроса и кодовая комбинация по­ вторяется. Код с защитой по форме импульсов обладает меньшей избыточ­ ностью, чем код с постоянным числом единиц и нулей, и имеет более высо­ кую помехоустойчивость при высоком уровне помех [10]. Здес> этот и другие обнаруживающие коды [11] не рассматриваются.

4*

51

мая ошибка, при d = 7 — тройная и т. д. Вообще при мини­ мальном расстоянии между кодовыми комбинациями d может

быть исправлено искажение р- элементов, т.

е.

р-кратная ошиб­

ка,

если р* <С rf/2, так как при этом искаженная комбинация

будет ближе к истинной, чем к любой другой.

 

тов

Количество искаженных элементов зависит от числа элемен­

п, образующих кодовую комбинацию,

от вероятности

искажения одного элемента Р. При большом п количество иска­ женных элементов будет равно р-= пР. Если расстояние d > 2пР, тогда все р- = пР ошибок будут исправлены, команда будет принята без искажений.

Обнаружение и исправление ошибок можно пояснить с по­ мощью геометрической модели кодов.

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

000, 001, 010, 100, 101, ПО, 011, 111.

Каждая из этих комбинаций может быть отождествлена с вер­

шинами трехмерного куба

(рис. 2.13).

 

 

 

 

 

Если используются, т. е. являются разрешенными все 8 ком­

бинаций, минимальное расстояние равно единице

(длине ребра'

 

куба). Это соответствует

обычному

 

некорректирующему коду. Искаже­

 

ние одного элемента приведет к по­

 

явлению другой комбинации

и,

по­

 

скольку все комбинации разрешены,

 

оно не будет обнаружено.

 

 

 

Предположим

теперь,

что необ­

 

ходимо построить

код,

обнаружи­

 

вающий одну ошибку. Тогда

мини­

 

мальное

расстояние

должно

быть

 

равно двум. Из рис. 2.12 видно, что

 

это условие будет выполнено,

 

если

 

использовать только

половину

из

Рис. 2.13. Геометрическая мо­

всех ’ возможных

комбинаций,

на­

дель трехэлементного кода

пример,

комбинации

 

 

 

 

 

 

000, ПО, 101, 011,

 

 

а остальные комбинации

считать запрещенными *.

Искажение

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

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

* Разрешенные и запрещенные комбинацииможно поменять местами.

52

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

000

и 111

или

и т. д.,

010 и 101

а остальные 6 комбинаций считаются запрещенными.

При одиночной ошибке искаженная комбинация будет ближе к истинной, чем к другой возможной комбинации. Например, при искажении одного элемента в комбинации 000 искаженная комбинация 100 от истинной отстоит на расстоянии, равном еди­ нице, а от ложной — на расстоянии, равном двум. Поэтому приемник исправит ошибку и зарегистрирует истинную комби­ нацию 000.

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

В качестве примера исправляющего кода рассмотрим код Хэмминга. Код Хэмминга, исправляющий одиночную ошибку, строится следующим образом. Из общего числа п элементов для

передачи информации используются i элементов,

а остальные

k элементов

являются проверочными (коррекционными) и ис­

пользуются

для коррекции

ошибок.

Такие

коды

называются

систематическими. Очевидно,

 

 

 

 

п i -f k,

 

 

(2.34)

а избыточность кода равна

 

 

 

 

 

R = nji = 1 +

к/i.

 

(2.35)

Принятая кодовая комбинация, независимо оттого, искаже­

на она или нет, подвергается k проверкам.

Каждая проверка

охватывает

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

при k проверках будут охвачены

все элементы.

При кодировании поверочному элементу присваивается 1 или О, чтобы сумма единиц в каждой проверяемой группе была чет­ ной. Если при проверке обнаруживается ошибка, т. е. если сум­ ма единиц в данной проверяемой группе будет нечетной, запи-' сывается 1. Если ошибка не обнаруживается, записывается 0. Запись ведется справа налево, в результате чего образуется двоичное проверочное число.

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

53

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

Но /г — ,

2 * > /;.+

1.

2"

 

поэтому

(2.36)

ч

 

п +

1

Неравенство (2,36) дает возможность определить максималь­ ное число информационных элементов i для данного п, или, что то же самое, минимальное число проверочных элементов k,

 

Таблица 2.3

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

и минимальное

общее

 

число элементов п для данного числа ин­

Число информационных

формационных элементов г. Полученные

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

в результате

расчета

величины

п, г, k

тов для кода Хэмминга

приведены в табл. 2.3. Из этой таблицы,

 

 

 

в частности, видно, что если необходимо

п

i

k

передавать 32 различные кодовые комби­

 

 

 

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

1

0

1

ментов равно пяти

(« =

5), число прове­

рочных

элементов

должно

быть равно

2

0

2

четырем

=

4),

а общее число элемен­

3

1

2

тов в кодовой комбинации ра:вно девяти

4

1

. 3

5

2

3

(п =

9),

т. е. код должен быть девяти­

fi

3

3

элементным.

При i = 7

код должен быть

7

4

3

11-элементным, так как к = 4

и т. д.

8

4

4

Рассмотрим вопрос о том, какие но­

9

5

4

10

6

4

мера элементов, т. е. какие позиции сле­

11

7

4

дует проверять

при каждой

из к

прове­

12

8

4

рок.

Поскольку

двоичное

проверочное

13

9

4

число должно указывать номер искажен­

14

10

4

15

11

4

ного элемента, проверяемые при каждой

16

11

5

проверке

позиции должны выбираться в

 

И т. д.

 

соответствии

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

 

 

 

тами.

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

1 1

3 =

и

5 =

101

7 —

111

9 = 1001 и т. д.

54

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

2 =

10

3 =

11

6 =

ПО

7 =

111

10= 1010

11 = 10.11 и т. д.

Аналогично номера элементов, проверяемых при третьей про­ верке, при записи в двоичной системе единиц должны иметь еди­ ницу в третьем разряде

4 =

100

5 =

101

6 =

ПО

7 =

111

. 12=1100

13=1101

14 = 1110 и т. д.

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

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

 

 

Выбор позиций при проверках

Номер

 

П р о в е р я е м ы е п о з и ц и и

проверки

 

 

 

 

 

 

 

 

 

 

1

1,

3,

5,

7,

9,

11,

13,

16,

17, . . .

2

2,

3,

6,

7,

10,

11,

14,

15,.

18, . . .

3

4,

5,

6,

7,

12,

13,

14,

15.

20, . . .

4

8,

9,

10,

11,

12,

13,

14,

15,

24, . .

Т а б л и ц а 2 .4

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

1

2

4

8

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

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

'55Ч

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

Из табл. 2.4 видно, что только в одну проверяемую группу входят позиции 1, 2, 4, 8, ... На этих позициях размещаем про­ верочные элементы, на остальных позициях — информационные элементы. При таком распределении позиций в каждой прове­ ряемой группе один элемент, раполагающийся да первой в дан­ ной группе позиции, является проверочным, остальные — ин­ формационными. Проверочному элементу придается значение 1 или 0, чтобы число единиц в каждой проверяемой группе было четным.

Проиллюстрируем сказанное на примере построения семи­ элементного кода Хэмминга с исправлением одиночной ошибки.

Из табл. 2.3 следует, что при общем

числе элементов /г — 7

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

/ = 4,

а число проверочных

элементов /г = 3. В соответствии

с вышеизложенным для про­

верочных элементов отводим позиции 1,

2 и 4, а позиции 3, 5,

б и 7 — для информационных элементов. Прежде всего запол­ ним позиции 3, 5, 6 и 7 (табл. 2.5) информационными элемен­ тами, образуя все 24 = 16 возможных комбинаций.

Заполнение позиций 1, 2 и 4 можно произвести, пользуясь табл. 2.4, с учетом только что образованных кодовых комбина­ ций на позициях 3, 5, 6 и 7. Определим значение проверочных элементов, например, для числа 1. Выбираем позиции 1, 3, 5, 7, соответствующие первой проверяемой группе. Поскольку число единиц :на информационных позициях этой группы нечетное (единица стоит на 7 позиции), проверочному элементу на 1 по­ зиции придаем значение 1. На позициях 2 и 4 также записываем 1, так как во второй и третьей проверяемых группах, в которые соответственно входят элементы 2, 3, 6, 7 м 4, 5, 6, 7, число единиц на информационных позициях опять нечетное.

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

Общее число возможных комбинаций двоичного семиэлемент­ ного кода равно 27'= 128. Н,о разрешенными в составленном ко­ де являются только 24= 1 6 комбинаций. Остальные 112 комби­ наций являются запрещенными. Избыточность кода равна

7/4 = 1,75.

56

Проследим процесс, обнаружения и исправления ошибки в

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

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

что в комбинации

0011001,

■соответствующей числу 9, исказился пятый знак,

 

в результате

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

 

 

 

 

Таблица 2.5

вид 0011101. При первой проверке

 

 

 

 

такой комбинации сумм,а единиц на

 

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

 

позициях

1,3, 5, 7 будет нечетной.

соответствующие числам

Зто говорит о наличии ошибки, и в

от 0 до 15, для кода Хэмминга

первом разряде проверочного числа

 

 

 

 

 

 

 

 

записываем 1.

При второй проверке

О

 

 

Позиции

 

 

ошибка не обнаруживается, так как

=;

 

 

 

 

 

 

 

я

 

 

 

 

 

 

 

.сумма единиц на позициях 2,

3,

6, 7

о

1

2

3

4

5

 

7

гг

6

будет четной.

Поэтому

во втором

 

 

 

 

 

 

 

 

разряде

 

проверочного

числа

запи­

0

0

0

0

0

0

0

0

сываем 0, т. е. получим 01. Посколь­

1

1

1

0

1

0

0

1

ку на позициях 4, 5, 6, 7 сумм,а еди­

2

0

1

0

1

0

1

0

3

1

0

0

0

0

1

1

ниц будет нечетной, третья провер­

4

I

0

0

1

1

0

0

ка обнаруживает ошибку. В резуль­

5

0

1

0

0

1

0

1

тате

получим

проверочное

число

6

1

1

0

0

1

1

0

101.

Это число соответствует

5-ти,

7

0

0

0

1

1

1

1

8

1

1

1

0

0

0

0

что говорит о

наличии ошибки

на

9

0

0

1

J

0

0

1

пятой позиции. Чтобы исправить

10

1

0

1

' l

0

1

0

ошибку,

на пятой позиции надо за­

11

0

1

1

0

0

1

1

менить

1

на 0.

 

 

 

12

0

1

1

1

1

0

0

 

 

 

13

1

0

1

0

1

0

I

Минимальное расстояние между

1 1

0

0

1

0

1

1

0

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

15

1

1

1

1

1

1

1

равно трем, поэтому код позволяет

 

 

 

 

 

 

 

 

исправлять одну ошибку. Но можно

 

 

 

 

 

 

 

 

построить код, обнаруживающий и исправляющий большее число ошибок [12]. Это потребует увеличения избыточности кода.

Рассмотрим

вопрос о помехоустойчивости кода

Хэмминга,

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

одиночную ошибку. Вероятность

искажения

команды при использовании /г-элементного кода Хэмминга

 

Рк= 1 - Qn - пР Q«-\

(2.37)

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

Л <=1 - Q 1.

Наличие третьего слагаемого в правой части равенства (2.37) объясняется тем, что код Хэмминга исправляет одно­ кратную ошибку. Вероятность такой ошибки определяется по формуле (2.21).

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

1- Q" - nPQ'‘~l < 1 — Q‘.

57

Учитывая, что Q = 1—Я, из этого неравенства получим

(1 _ p y - i - 1>

1

(2.38)

1 + Р (п -

 

1)

Геометрическое место точек, в которых неравенство (2.38) превращается в равенство (рис. 2.14), определяет [13] границу области значений вероятности Р (справа от кривой), в которой применение кода Хэмминга обеспечивает меньшую'вероятность искажения коман­ ды, т. е. более высокую помехоустойчи­ вость. Из рис. 2.14 видно, что код Хэм­ минга обеспечивает бол,ее высокую помехоустойчивость по сравнению с некор­ ректирующим кодом при Р <[ 0,3 -н 0,5, т. е. практически при всех реальных зна­

чениях Р.

Количественное значение вероятности искажения команды для кода Хэмминга определяется выражением (2.37). Для случая Р<С1, что практически всегда имеет место, это выражение примет вид

 

 

Р к — п ( п — 1) Р 2.

 

 

Для девятиэлементного кода Хэммин­

 

 

га (/г = 9) получим

(2.39)

 

 

Р к= 72Р2.

Рис. 2. 14. Область

Соответствующая этому

выражению

зависимость вероятности

искажения

применения

кода

Хэмминга

 

команды от величины вероятности ошиб­

Из рис. 2.11

 

ки Р приведена на рис. 2.11

(кривая 2).

и из сравнения выражения (2.39) с выражения­

ми (2.28), (2.30), (2.31) видно, что при малых Р помехоустой­ чивость кода Хэмминга выше, чем у некорректирующего кода, и ниже, чем у кодов с автоматической справкой. Это объясняется

тем,

что код Хэмминга исправляет только одиночные ошибки *,

в то

время

как

код с четным числом единиц исправляет вое

нечетные ошибки,

а код с постоянным числом единиц и нулей,

кроме того,

— и часть четных ошибок.

Сравним теперь помехоустойчивость кода Хэмминга с Дру­ гими кодами при постоянной длительности команды. В этом

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

58

случае отношение сигнала к помехе — для девятиэлементного-

О

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

корректирующего кода

уменьшится в

— 0,745 раз. При­

нимая это во внимание,

из (2.33) находим вероятность ошиб­

ки Р для кода Хэмминга. Затем, используя соотношение (2.39), определяем зависимость вероятности искажения команды от ве­ личины Р. Этой зависимости соответствует кривая 2 на рис. 2.12. Видно, что помехоустойчивость 9-элементного кода Хэмминга не­ сколько ниже помехоустойчивости некорректирующего 5-эле- монтного кода.

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

Если же стабильность частоты низкая, ширина полосы про­ пускания приемника определяется в основном нестабиль­ ностью частоты и выбирается значительно шире спектра сигна­ ла. При этом изменение длительности не скажется заметно на ширине полосы пропускания приемника, отношение сигнала к помехе для всех рассмотренных кодов будет приблизительно одинаковым, помехоустойчивость всех кодов будет определяться кривыми на рис. 2.11. В этом случае применение кода Хэмминга может оказаться целесообразным, так как при таком коде, в от­ личие от кодов с четным числом единиц и с постоянным числом единиц 1и нулей, не возникает необходимости обеспечения' дуп­ лексного режима работы радиостанций для исправления обна­ руженных ошибок, что особенно важно для самолетных радио­ станций.

Изложенный принцип построения исправляющих кодов не является .единственно возможным. Могут быть построены м дру­ гие коды [12], [14], позволяющие обнаруживать и исправлять ошибки.

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