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

книги из ГПНТБ / Емельянов Г.А. Передача дискретной информации и основы телеграфии учеб. для вузов

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

в первой проверке, позиция 2 — во второй, позиция 4 — в третьей и позиция 8 — в четвертой. Эти позиции и следует выбрать в каче­ стве проверочных. Обозначим каждую позицию буквами 0.1, аь аз и т. д. В табл. 11.2 позиции проверочных элементов об­

ведены.

 

 

 

Рассмотрим конкретный пример. Пусть комбинация

обыкновенного кода

10011 преобразуется

в девятизлементный код Хэмминга. Запишем эту комбина­

цию на позиции информационных элементов. Поверочные

разряды получим в

результате четырех проверок:

 

51 = а 3

® а5 ф а, ф д9 = 1 © 0 ф 1 © 1 = 1;

5 2

= а3

ф а„ ф а7 = 1 + 0 ф 1 = 0;

 

5 3

= а5 © ав Ф а, = 0 ф 0 ф 1 = 1;

 

Si

= а9

= 1.

 

Результаты

проверок поставим на позиции 1, 2, 4 и 8.

 

 

 

Пусть при приеме произошла ошибка в шестом разряде. Тогда будет при­

нята комбинация 101101111. На приеме производятся

четыре

проверки

на чет­

ность:

 

 

 

 

 

 

Si = % Ф ая ф аъ ф а7 ф ая = 1 ф 1 ф 0 ф 1 ф 1 = 0;

 

Sa = а2 ф а3 ф ав ф а, = 0 ф 1 Є 1 0 1 = 1;

 

 

 

5 3

= а4 ф аь ф а6 ® а, = 1 ф 0 ф 1 Ф 1 = 1;

 

 

 

5 4

= ай ф а9 = 1 ф 1 = 0 .

форма

записи числа

6 (см. табл.

Полученное

число ОНО — есть двоичная

і 1.1). Оно указывает на номер пораженного

ошибкой

разряда

в кодовой

комби­

нации. Для исправления ошибки необходимо

при приеме заменить

знак

шестого

разряда на противоположный.

 

 

 

с точки зре­

Описанная структура разрядов в кодовой комбинации неудобна

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

кодирующего и декодирующего устройств. Удобнее сначала пе­

редавать информационные разряды, а потом — проверочные. Чтобы

при этом со­

хранить свойства кода Хэмминга, необходимо преобразовать

номера разрядов,

как это указано в табл. 11.3.

 

 

 

 

 

 

Т а б л и ц а Ы.З

 

 

 

 

Исходный код

'ПреоИразодан- ш/й код

После преобразования проверки охватят следующие разряды: первая про­ верка — 1, 2, 4, 5, 6-й (вместо 1, 3, 5, 7, 9-го); вторая проверка — 1, 3, 4, 7-й (вместо 2, 3, 6, 7-го), третья проверка — 2, 3, 4, 8-й (вместо 4, 5, 6, 7-го), чет­ вертая проверка — 5, 9-й (вместо 8, 9-го).

Структурная схема

кодирующего

устройства

приведена

на

рис. 11.5а. В состав

его входит регистр

сдвига на

я = 9 разрядов

и г = 4 сумматоров по

модулю 2. Информационные посылки запи­

сывают в первые k—5

ячеек регистра

сдвига. Одновременно в

сум­

маторах формируются

проверочные

разряды, записываемые в

по-

 

От источника

информации

а)

а р о

О Р

 

 

Рис. US. Структурная схе­ ма кодирующего (а) и де­ кодирующего (б) устройств для кода Хэмминга

Регистр\3\8

\ 7\

8 \ S

| f

1 3

г

\ >

\ Вых.

4

г-ячевк

t 4.

 

к-ячеек

 

 

 

 

 

 

 

 

 

 

Ввод кодовой комбинации

 

 

V

V

V

г*

V

V

V

Ъ Ь

Устр-Во исправления ошибок

14

Выходная комбинация

следние г = 4 ячейки регистра сдвига. Под действием п тактовых импульсов закодированная последовательность выдается в канал связи.

Структурная схема

декодирующего устройства приведена на

рис. 11.56. Поступающая

из канала связи информация с помощью

входного и распределительного устройств (на рисунке не показа­ ны) преобразуется из последовательного кода в параллельный и подается в наборное устройство и сумматоры проверки на четность. В зависимости от позиции (номера) искаженного разряда (или при отсутствии искажений) выходные сигналы сумматоров могут со­ ставлять одну из десяти возможных комбинаций. Комбинация 0000 соответствует отсутствию искажений, еще пять комбинаций — ис­ кажениям информационных разрядов' и остальные четыре — иска­ жениям проверочных разрядов. Поскольку на выход декодирую­ щего устройства поступают только информационные разряды, то выделять необходимо только пять двоичных комбинаций, которые соответствуют номеру искаженного информационного разряда.

Искажению первого информационного разряда соответствует число ООП (вместо 0001 до преобразования кода), так как перво­ му разряду преобразованного кода ibi (см. табл. 11.3) соответствует третий разряд исходного кода а3. Число 3 в двоичной форме за­

писывается следующим образом: ООП. Аналогично искажению

вто­

рого разряда 2 соответствует аь, или число 0101. Искажениям

3, 4

и 5-го разрядов соответствуют числа ОНО, 0111, 1001.

 

Указанные двоичные числа выделяются дешифратором ошибок, который выполнен на схемах запрета, реализующих операцию от­ рицания импликации (см. рис. 3.5). После окончания приема кодо­ вой комбинации происходит сброс информации с наборного устрой­ ства и дешифратора ошибок на устройство исправления ошибок. Это устройство состоит из сумматоров по модулю 2. На один вход каждого сумматора поступает соответствующий информационный разряд, на другой—сигнал с выхода дешифратора ошибки в данном разряде. Если ошибки нет, то сигнал с ячейки наборного устрой­ ства поступает на выход декодирующего устройства без изменений.

При наличии ошибки знак разряда наборного устройства

меняется

на противоположный. Этим обеспечивается исправление

ошибки

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

 

ЦИКЛИЧЕСКИЕ КОДЫ

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

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

G(x) = апп-1 + ап_2хп-2 + . • -сцх + а0, (11.6)

где Оо, аи ..., a,n-i — коэффициенты, принимающие значения 0 или 1. Например, комбинацию 1100101 можно записать как G(x)=x6 +

+ * 5 + л;2+1.

Основное свойство рассматриваемых кодов состоит в том, что циклический сдвиг разрешенной кодовой комбинации также являет­ ся разрешенной кодовой комбинацией. Таким образом, если ком­ бинация 1000111 является разрешенной, то комбинации 0001111, 0011110 и т. д. также принадлежат к числу разрешенных. Нулевая комбинация является разрешенной, поскольку циклический код принадлежит к классу систематических. Заметим, что циклический сдвиг нулевой комбинации есть также нулевая комбинация.

Рассмотрим принцип кодирования сообщения, состоящего из k разрядов, к которым добавляются г проверочных разрядов. При этом условимся, что последовательность передачи разрядов такова: сначала передаются информационные разряды, а потом — провероч­ ные. При такой последовательности передачи полиномы удобнее записывать по возрастающим степеням, а не по убывающим, как это было показано в ф-ле (11.6).

Введем следующие обозначения: G(x)—многочлен,

отобража­

ющий комбинацию информационных разрядов

(степень .многочле­

н а — k—1); R(x)

— многочлен, отображающий

комбинацию прове­

рочных разрядов

(степень многочлена — г—1);

F(x)

— многочлен,

отображающий кодовую комбинацию в целом

(степень многочле­

на — п—1 =k + r—1).

 

 

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

F(x) = R(x)

+ xrG(x).

(11.7)

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

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

многочле­

на

сдвинута в большую сторону на число проверочных разрядов.

 

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

кода F(x)

образуется

из исходной

комбинации

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

разрядов

G(x) путем

умножения

на

полином

Р(х). Поэтому полином Р

называется

образующим.

Основным условием образования комбинации циклического кода

является условие, при котором

кодовый многочлен F(x)

делится

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

полином Р(х)

без остатка. Это

условие

выпол­

няется, если R(x)

равен остатку от деления xrG(x)

на Р(х).

Обнаруживающие ошибки свойства циклического кода основа­

ны на том, что разрешенные

комбинации кода F(x)

делятся

на об­

разующий полином Р(х)

без остатка, а запрещенные

— с остатком.

Комбинации циклического кода формируются так:

 

многочлен G(x),

отображающий

информационную ^-разряд­

ную кодовую комбинацию, умножается

на

хг;

 

 

— произведение xrG(x)

делится на образующий полином

Р(х),

и полученный остаток R(x)

определяет г проверочных разрядов ко­

довой

комбинации;

 

F(x) =R(x)-\-xrG(x)

 

 

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

является

разре­

шенной, так как она делится без остатка на

Р(х).

 

 

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

цессе деления вычитание заменяется сложением по модулю 2. Так, например, деление полинома х6 + х53+\ на полином x2 + x+i (соответствующие двоич­ ные формы 1101001 и 111) производится так:

1101001 111

111 10101

110

е

111

101

е ш

10

Двучлен 10 есть остаток от деления полинома 11 Oil001 на полином 111.

Для построения циклического (п, &)-кода, обеспечивающего об­ наружение или исправление ошибок заданной кратности, необхо­

димо

правильно

выбрать образующий полином Р(х)

степени

r = n—k. Известно

[6; 13], что обнаруживающая ошибки

способ­

ность

циклического

кода определяется степенью полинома

Р(х) и

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

Рассмотрим некоторые основные

свойства циклических кодов.

1. Код, образованный полиномом

Р(х) = 1 +х обнаруживает лю­

бое нечетное число ошибок. Так как исходный многочлен должен

делиться

на

1

без остатка,

то

 

 

 

 

 

 

 

 

 

 

F(x)=(l

+ x) -

0

^ -

=

(l+x)Q

(х),

 

где

Q(x)—частное

от

деления

xrG(x)

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

полином

Р(х).

Полагая х=

1, получим

 

 

 

 

 

 

 

 

 

 

 

 

^ ( 1 ) = ( 1

+

1)Q(1).

 

 

 

 

Отсюда

следует, что

многочлен

F(x),

делящийся без

остатка

на

\+х,

должен

содержать четное число членов. При нечетном

числе

ошибок многочлен

F(x)

превратится

в

многочлен F'(x), ко­

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

2. Код, образованный полиномом Р(х), обнаруживает все оди­

ночные и двойные ошибки, если значность кода п меньше

или рав­

на /. Здесь / — степень двучлена Xі+1,

где / — наименьшее

число,

при котором х1+ \ делится без остатка на Р(х).

Доказательство

это­

го положения приведено в {8, 33].

 

 

 

 

 

 

 

Согласно выражению (11.4) число проверочных разрядов для

кодов, обнаруживающих

двойные ошибки (d 0 =3) ,

равно

r ^ l o g 2 X

Х ( п + 1 ) .

Очевидно,

что

код будет

содержать наименьшее

число

разрядов, если r = loga(n+1). Тогда

n = 2r —1. Поэтому для

построе­

ния циклических кодов необходимо

знать 1 = 2т—1.

В этом

случае

двучлены вида х1+1

являются наибольшим

общим кратным

для

всех без исключения неприводимых полиномов степени т.

Непри­

водимым

полиномом

называется такой,

который делится без

остат-

ка на 1 и самого себя. Кроме

 

Т а б л и ц а 11.4

 

того, двучлен Xі+1 будет де­

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

 

 

литься без остатка на все не­

Вид многочлена

—1

приводимые полиномы, степени

m

 

 

которых делят без остатка чис­

1

1

1

ло т.

В

табл.

 

11.4 показаны не­

 

 

 

 

 

приводимые

многочлены до пя­

2

х*+х+1

 

3

той степени включительно.

 

 

 

 

 

 

 

 

П р и м е р .

Построить

цикличе­

3

[ Л ? + Х + 1

' 7

ский

(п,

к)-код,

обнаруживающий

 

3 + * 2 + 1

 

одиночные

и двойные

ошибки,

т. е.

 

 

 

 

 

d0 3.

 

Минимальное

/=« ,

тогда

4

 

 

 

 

2r —l=2m —1

или г = т.

 

полинома

' Ьс

4 3

1

15

Степень

образующего

 

+1

равна

числу

проверочных

разрядов.

 

{х*+х3-\-х*+х+1

 

Но число проверочных разрядов рав­

 

 

 

 

 

но: r \ogi(n+1).

Следовательно, на­

5

хъ+х*-\-\

 

 

до задать

длину

кодовой

комбина­

-

31

ции п. Ее можно выбрать любой. Для

 

х63+1

простоты

примем п — 7, тогда

r = log2

 

Х6+Х*+Х2-\-1

 

(7+1) = 3 . В

 

качестве

образующего

 

 

полинома

 

Р(х)

можно

выбрать лю­

 

хъ*-\-х3+х+1

 

бой из

двух

 

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

много­

 

хЬ+х*+х3*+1

 

членов

степени

т=3 (см. табл. 11.4),

 

 

 

 

например х3 +

х+А.

 

 

 

 

 

 

 

 

 

 

Далее

находим

комбинации

циклического

кода. Возьмем за. исходную

ком­

бинацию

(информационную)

 

любую

четырехразрядную

комбинацию, например

1100. Отображающий полином будет иметь вид G(x)=x3

+ X2.

Умножим G(x)

на хТ:

/G{x) = Xs 3 + Xі) = х8 + л-6,

разделим xs+x5 на образующий полином х3 +

х+1:

1100000

1011

© 1011

ПО

1110

е

1011

1010

®

1011 Остаток от деления R(x) равеностаток010, или010R(x)=x.

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

F(x) = R (х) + xr G (х) = х + хь + хв.

В двоичной форме записи

F ( x ) = 010 ООН

R (х) xTG (х) '

Аналогично определяют остальные комбинации циклического кода.

— 275 —

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

 

110001

ш и

ф

\ои_

111

е

1110

 

1011

 

 

1011

 

 

® 10И

 

остаток 0000

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

вается г нулями, на многочлен степени

г.

Это соответствует

тре­

буемым условиям, так как полином xrG(x)

заканчивается г

нуля­

ми, а степень образующего полинома Р(х)

равна г.

 

Подобное устройство может быть выполнено в виде регистра

сдвига с обратными связями и с числом

ячеек, равным степени де­

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

Так, например, для делителя х3 + х+1 сумматоры нужно вклю­ чить перед первой, второй и третьей ячейками регистра. Заметим, что последний сумматор (перед третьей ячейкой) можно и ;не вклю­ чать, так как он дает результат сложения по модулю 2 старшего разряда делимого со старшим разрядом делителя, а этот резуль­ тат заранее известен (1@1) и тождественно равен нулю. С уче­ том сказанного структурную схему устройства для деления много­

члена

xrG(x) на Р(х)

можно представить рис. 11.6. Операция де­

ления

заканчивается

через k = nг тактов. Результат деления —

остаток R(x) —остается записанным в ячейках регистра. Действие кодирующего устройства поясним на примере цикли­

ческого 7,4 кода (рис. 11.7а). Процесс

кодирования

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

 

 

n = k + r тактов. В течение

первых

 

 

k тактов (k = 4)

замкнуты

ключи

 

 

КЛІ

и Кл3,

а ключ

Кл2

разом­

с •

 

кнут.

Поэтому

на

выход

посту­

 

пают

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

разря­

 

 

Рис. 11.6. Структурная

схема деления

дов со входа и одновременно про­

многочленов

изводится

деление. Затем

ключи

 

 

КЛІ и Кл3

размыкаются,

а ключ

Кл2 замыкается. За

оставшиеся

г тактов (г — 3)

записанный на

ячейках регистра результат деления (проверочные разряды) вы­ водится на выход кодирующего устройства. Замыканием и размы­

канием ключей Кл\—Клз

управляет счетчик

разрядов,

который

на

рисунке не показан.

 

 

 

 

Структурная схема декодирующего устройства показана

на

рис. 11.76. Принимаемая

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

посылок

записывает-

ся в буферный накопитель и одновременно в делитель. В течениепервых к тактов (^ = 4) замкнут ключ Клі и разомкнут Кл2. Поэто­ му в буферный накопитель будут записаны только информацион­

ные

разряды. На

6-м такте ключ Клі

размыкается. Проверочные г

разрядов (/" = 3)

продолжают поступать в делитель. На п-м

такте'

(п = 7) замыкается ключ Кл2. Если кодовая комбинация

была

при­

нята

без ошибок,

то результат деления будет нулевым

и на

выхо­

 

ду

 

 

 

 

 

вх.

см

вых.

 

 

 

 

нл.

-У-

 

 

 

 

 

 

 

 

 

буферный,

накопитель

 

 

Рис. 11.7. Структурная схема кодирующего (а) и деко­ дирующего (б) устройств для циклического 7,4 кода

дах ячеек 14-3 делителя сигналов не будет. Если в результате деления образуется остаток, что является признаком ошибки, то хотя бы на одной из ячеек делителя присутствует «1». Этот сигнал выделяется логической схемой И Л И и может быть использован для стирания ошибочно принятой информации в буферном накопи­ теле. Этим обеспечивается обнаружение ошибок в кодовой ком­ бинации.

11.3. СИСТЕМЫ ПОВЫШЕНИЯ ВЕРНОСТИ ПЕРЕДАЧИ ДИСКРЕТНОЙ ИНФОРМАЦИИ

КЛАССИФИКАЦИЯ СИСТЕМ ПОВЫШЕНИЯ ВЕРНОСТИ

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

— 277 —

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

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

больших

значений.

Эффективная

коррекция

пакетов требует

кодов

с длиной

кодовой

комбинации,

значительно

превосходящей

длину

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

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

Все перечисленные факторы значительно ограничивают область использования систем без обратной связи, которые применяются тогда, когда канал обратной связи, в принципе, отсутствует или его создание очень затруднено. 'Кроме того, системы без обратной связи используются при очень жестких требованиях к времени за­ держки сообщения (т. е. к промежутку времени между моментом поступления сообщения на передающую АПД и моментом передачи ее потребителю), когда всякое использование канала обратной связи приводит к задержке сообщения сверх допустимого уровня.

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

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

Введение переменной избыточности в передаваемую

информа­

цию может быть

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

различными способами.

В

системе

с информационной

обратной

связью

(ИОС)

решение

о

повторной

передаче сообщения принимает

передающая

станция

на

основа­

нии сравнения

переданной

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

принятой

по обратному

каналу.

 

 

 

 

 

 

 

В системах

с

решающей

обратной

связью

(РОС),

называемой

часто системой с переспросом, автозапросом, системой с автома­ тическим запросом ошибок (АЗО), решение о повторной передаче

сообщения принимает приемная станция при обнаружении

ошибок

в принятой комбинации.

 

СИСТЕМЫ С ИНФОРМАЦИОННОЙ ОБРАТНОЙ СВЯЗЬЮ

 

Рассмотрим логику работы системы с информационной

обрат­

ной связью. Пріт использовании ИОС приемник играет пассивную роль, поскольку не занимается обнаружением ошибок, а только

информирует передатчик о том, какая

комбинация

им

принята..

Эта комбинация не передается сразу

потребителю,

а

поступает

в буферный накопитель и хранится там до тех пор, пока передат­ чик не вынесет решения о ее верном приеме и не известит прием­ ник о принятом решении. Информирование передатчика приемни­ ком происходит путем передачи по обратному каналу специальных сигналов (квитанций), характеризующих в той или иной степени принятые кодовые комбинации. Если в передатчике устанавли­ вается, что принятая квитанция не соответствует переданному со­ общению, то делается вывод о том, что переданная ранее комби­ нация принята приемником ошибочно. Передатчик принимает ре­ шение о повторной передаче этой комбинации и посылает в прием­ ник специальную комбинацию «стирание», а потом — ошибочно при­ нятую кодовую комбинацию. Приемник, приняв комбинацию «сти­ рание», уничтожает накопленную в буферном накопителе ошибоч­ ную кодовую комбинацию и записывает на ее место принимаемую вслед за комбинацией «стирание» кодовую комбинацию. Далее приемник вновь информирует передатчик о принятой кодовой ком­ бинации и т. д. Хранение кодовой комбинации в буферном нако­

пителе приемника продолжается

до тех пор, пока у передатчика

не

будет уверенности в

ее безошибочности, после чего записанная

в

буферном

накопителе

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

потребителю. За­

метим, что

время этого

хранения

(или, что то

же самое, емкость

буферного накопителя)

зависит от конкретной разновидности ИОС

и может быть различным.

 

 

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