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

книги из ГПНТБ / Хетагуров, Я. А. Повышение надежности цифровых устройств методами избыточного кодирования

.pdf
Скачиваний:
6
Добавлен:
21.10.2023
Размер:
8.92 Mб
Скачать

D 1

JO

 

 

 

i t1"

*

 

 

D

ml

/772

 

2

 

Выходы

 

 

 

26

 

 

 

Рис. 3-6.

Схема

двухканального кодера

для

(7, 4) -кода, порождаемого полиномом G (х) = 1

23.

коррекция содержимого фильтра, если (zv—k)^0. Од­ нако коррекции можно избежать, если полином V(x), соответствующий информационным разрядам, умножить

на

zv—к

 

 

 

 

 

 

 

 

х

 

 

 

 

 

 

 

 

 

В этом случае

 

 

 

 

 

 

 

R*{x) = R{x)xa"~kx~{"-k)

=

R(x)

по модулю

G{x).

Умно.-кению

на

J C 2

" - * соответствует сдвиг коэффи­

циентов

полинома

V(x)

вправо на

(zv—k)

разрядов.

Реализация сдвига заключается в том, что перед млад­

шим

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

символом

v0

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

(zv—k)

фиктивных нулей. 'При этом символ

vQ

поступает

на (zv—к+1)-й вход (канал)

кодера,

разряд ui — на

(zv—/е + 2)-й канал

и т. д.

 

 

 

 

 

Структурная блок-схема v-канального

КУ

показана

па рис. 3-7. Принцип построения ЛС, содержащей v вы­

ходов, при исправлении

одиночных ошибок

заключается

в следующем. Для приема всего слова длиной п разря­

дов

требуется

z' = [/i/vj

тактов. Поэтому -при наличии

ошибки вида х1 состояние фильтра после приема кодо­

вого слова равно:

 

 

 

 

 

 

 

 

 

с^(х)^х1-''-п)

 

по модулю

G(x),

 

80

гi

фильтр

г •

ЛС

 

 

 

 

 

т2

 

 

Цт2

Буферное ЗУ

Чт2

 

 

Рис. 3-7. Структурная схема v-канальяого КУ.

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

 

 

 

 

I

— (Z'V—Я)—V •

 

 

 

 

 

 

 

 

: Л.

 

[,

по модулю G(x).

 

 

 

 

I

— (z'v—/()—2v

Пусть i=jv+$

 

№ < ^ Л т. е.

ошибка

должна быть

исправлена

в такте у + 1. Тогда

на /-м такте

автоном.о"!

работы состояние фильтра равно:

 

 

 

 

 

 

=цх9~{гЧ~п)

по модулю

G(x),

 

 

т. е. ЛС должна

распознавать

следующие

вычеты по

•модулю

G(x)

 

 

 

 

 

 

 

 

 

при

р =

0

х~ • (z'v—п)

,

 

 

 

 

 

при р = 1

х 1 — (z'v — л)

 

 

 

 

 

при

р =

v — 1

X 1—1 — (z'v—л)

 

 

 

 

 

Например,

пусть

п=7,

v = 2 , G(A') = 1+хг3,

тогда

г ' = 4 и Л С

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

собой

две схемы совпадения

на следующие

коды:

при 6=0 x - 1

s x ' - i = J T B = ^ + X 2 | т _ е

o i l ,

 

 

 

при р = 1 х1~1=х?

= \, т. е. 100.

 

 

 

 

 

В заключение рассмотрим способ вычисления матриц М* и F*, входящих в матричное уравнение (3-10), исклю­ чающий необходимость возведения в степень и перемно­ жения матриц. Пусть исходное состояние фильтра (одноканального) равно Q<°)(x). Тогда в соответствии с выра­ жением (3-9) состояние фильтра после v-ro такта работы в автономном режиме будет равно:

Q ( V ) ( X ) = Q ( ° ) ( A ; ) ^ _ v по модулю G(x).

6—236

81

С другой

стороны,

это

состояние

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

Мат­

ричным выражением

 

 

 

 

 

 

Q( v )

= Q C » ) M v .

 

 

 

 

 

 

t

 

 

 

Приравнивая правые части этих выражений,получаем:

a<°)(.\:)x_ v =

Q(0 'Mv t по модулю G(x)

 

или

 

 

 

 

 

 

 

Q(°)

„\TV =Q<°>MV

 

 

отсюда следует, что

 

X

 

 

 

 

1

 

 

 

 

 

 

„—v + l

 

 

 

 

х

=

по модулю G(x).

 

 

 

„ r - v - l

 

 

 

Другими

словами,

вектор-столбцы

матрицы связен

v-канального фильтра равны:

 

 

 

М* = \\х~\

х-*+1,...,

x r

_ v _ ' | | по модулю

G(x).

(3-11)

'Вектор-строки матрицы

F* вычисляются

следующим

образом:

 

 

 

 

 

 

...-\-grxr~i)=s=x~ix~1

= x~ ( г + 1 )

по модулю

G(x).

Таким образом, вектор-строки

матрицы

F*

равны:

- ( V - I )

 

 

 

 

 

по модулю G(x).

 

(3-12)

х-1

 

 

 

 

82

Например, пусть требуется построить пятиканальную схему де­

ления для реализации циклического

кода,

порождаемого

полиномом

G(x) = 1+х+х2+х'18.

Матрица

связен

 

в

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

с выраже­

нием (3-11) равна:

 

 

 

 

 

 

 

 

 

 

 

 

М 5

 

 

 

 

 

х,

х 2 1 |

по

модулю

G (х);-

отсюда

0

0

1 0

1

1 0

0

 

 

 

 

 

 

 

 

 

 

0

0

1 1 1 0

 

1 0

 

 

 

 

 

1 0

1

1 0

0

0

1

 

 

 

 

 

1 1 0

 

1 1 0

 

0

0

 

 

 

 

М5

1 0

0

0

0

0

0

 

 

 

 

 

1

 

 

 

 

 

0

1

1 0

0

0

0

0

 

 

 

 

 

1 0

1

1 0

0

0

0

 

 

 

 

 

0

1 0

1

1 0

0

0

 

 

 

 

Аналогично на

основании

выражения

(3-12)

получаем:

 

х - 6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

по

модулю

G (х);

 

отсюда

 

0

0

1 1 1 0

1 0

 

 

 

 

 

 

 

 

 

 

0

0

0

1

1

1 0

1

 

 

 

 

F * = || 1 1 1 0 0 1 1 0

 

 

 

 

 

0

1 1 1 0

 

0

1 1

 

 

 

 

 

1

1

0

1 0

0

0

1

 

 

 

Искомая схема

деления

показана

 

на рис.

3-8.

 

 

3-4. МАЖОРИТАРНОЕ Д Е К О Д И Р О В А Н И Е ЦИКЛИЧЕСКИХ КОДОВ

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

(/г»,о, hi,i,-. .,hi,n-0. t =

1, 2.- -пт>

б*

§3-

ад

4 2 ] в : : Ж ]

::f>2\_

Рис. 3-8. Пятиканальная схема деления на поли­

ном G(x) =

\+x+x*+x*+xa.

где fti,o=l. Пусть S = (sQ,

SI, Sz,.. .,sn-i) является кодо­

вым словом, тогда должны выполняться следующие т

•контрольных соотношений:

 

(

 

 

s<A\o + s A \ i + -- + s T i - A \ n - i =

£

SjAfj=0

по модулю2,

i = 1,

2

т.

 

 

Так как /40 =1, то эти уравнения можно

решить от­

носительно символа so.-

 

 

 

 

л—1

 

 

 

 

s£° = 2 Sjhij,

i = l , 2

т.

 

К данной системе уравнений .можно добавить триви­ альное уравнение s(%=s0 .

84

Таким образом, получено (т+1) уравнений для де­ кодирования символа So. Из определения циклического «ода следует, что рассмотренные соотношения также де­ кодируют все остальные символы. Так что в общем случае

п<°>

• s

, а = 0,

1

п — 1;

 

л—I

 

 

(3-13)

 

 

 

 

i ° =

S

s.hi^,

i =

l , 2,..., т.

где суммирование индексов при s производится по модулю п.

Пусть каждый столбец, исключая первый слева, мат­ рицы Н0 , в качестве вектор-строк которой выбраны упо­ мянутые т. векторов, содержит не более X единиц. Тогда алгоритм 'мажоритарного декодирования, основанный на

решении ( т + 1 ) уравнений системы (3-13),

позволяет

исправлять любые t или менее ошибок, где

t=[m/2X].

Квадратными скобками обозначена операция округления до ближайшего меньшего целого числа. Число X назы­ вают показателем связности системы контрольных соот­ ношений. Если Х=1, то говорят о системе разделенных контрольных соотношений.

В качестве примера рассмотрим систему А,-связанных контроль­ ных соотношений для циклического кода Хэмминга (7,4), порождае­ мого полиномом G(x) = l+xz+x3. Контрольная матрица этого кода равна:

л,

1

1

1

0

1

0

0

н = Л 2

0 1 1 1 0

1

0

Аз

1

1

0

1

0

0

1

Из этой матрицы можно получить матрицу Но, вектор-строки ко­ торой задают контрольные соотношения с показателем связности

Х=2:

 

1

1 1 0

1 0

0

 

1

0

0

1 1 1 0

 

А,

1

1

0

1 0

0

1

Л , + Л 2

1

0

1 0 0 1 1

85

Таким образом, в данном случае пблучаем пять уравнении, опре­ деляющих значение декодируемого символа s<j:

Оio>

4 2 ) = s 3 + ^ + s5 ; j . no модулю 2.

4 3 > = ^ + s 3 + S ( ! ;

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

с(2)

 

s | 4 1 = s 2 + i

+ s 5 + i +

s a + i ,

 

 

где суммирование индексов

производится

по модулю

п=7.

 

Схема КУ, реализующая полученные соотношения, показана на

рис. 3-9. Вначале ключ К находится п

положении

Прием

и слово

S=(s 0 , si, ... ,

«б) принимается

схемой. Затем ключ К переключается

в положение

Декодирование

и

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

дирование полученных символов с помощью мажоритарного

элемен­

та & М. Декодируемые символы

поступают па вход схемы, т. е. про­

исходит циклический сдвиг принятого слова.

 

 

Выход

Рис. 3-9. Схема КУ для циклического

(7,4)-кода, порождаемого

полиномом G (х) = 1 +

х 2 + х 3 .

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

где d — минимальное расстояние.

Дальнейшим обобщением понятия Я-связанных конт­ рольных соотношений является понятие квазиразделенных соотношений. Система контрольных соотношений на­

зывается

квазиразделенной,

если

в каждое соотношение

входит одно и то же подмножество символов

s., s,, ...

SJN'H

любой символ Si,

1ф\^

v = ' l , 2,...,N

входит не

более чем в одну проверку. Из данного определения сле­

дует, что система из у

квазиразделенных

контрольных

соотношений позволяет

вычислить

сумму

- f

- . .

. . . - f s.

( y + 1 ) независимыми способами (включая

три­

виальное

соотношение).

Например,

контрольные

соот­

ношения

 

 

 

 

 

s Q + S i + s2+s5=0;

So + Si + Si + Se = 0

являются квазиразделенньши и позволяют двумя неза­ висимыми способами вычислить сумму S o + S i . Учитывая тривиальное соотношение SQ+SL—SQ+SU получаем три независимых соотношения:

SQ+SI=S0+SI;

SO+SI=S2+S5;

5o + S i = 5 4 + S e .

Мажоритарное декодирование циклических кодов в квазиразделенньши контрольными соотношениями су­ щественно отличается от декодирования кодов с Я-свя- занны'ми соотношениями. В последнем случае на выходе мажоритарного элемента появляется переданная после­ довательность символов (so, S i , ..., s „_i). При квазиразделенных соотношениях на выходе мажоритарного эле­

мента получаем

последовательность (en,

Ct,

. . . , cn-i),

где

c^sn+i+su+c

+---+slN+r

'" = 0,

1.

n-l

(3-14)

(суммирование индексов производится по модулю/г). По­ этому возникает задача вычисления переданной последо-

87

вательности (s0, $i, s2,s„_i). В общем случае эта задача решается с -помощью -последовательного .разделения си­ стемы квазиразделен-ных соотношений. На первом шаге производится вычисление суммы (3-14), причем можно считать, что значения с0, с ь . . .,cn-i вычисляются точно. Второй шаг разделения заключается в образовании но­ вых соотношений с использованием Со, й , . . . , cn-i и т. д. до тех пор, пока полученные соотношения не окажутся разделенными или Л-связанными относительно некото­ рого символа кодового слова.

В качестве примера проведем разделение и построим схему де­ кодирования для циклического кода (15,11) с 6=3, для которого справедлива следующая система квазиразделенных соотношений:

«о+Si-f S2+S7+S3+s5 +S8+Sa=0; So + Si+S2 + S 7 +S 4 - г S0 + Sio + Si4 = 0.

Отсюда получаем уравнения

c | 1 ) = s 0 + t + -si+t + s 2 + i + s 7 + i ;

c j 2 ) = s a+t + s 5+t + s e+t +

-Sn + t ;

c j 3 ' = s 4 + t -f- s 0 + t

+ S i 0 + t

Ц- s , 4 + 1 ,

позволяющие достоверно вычислить

Co, C j , . . . , СЦ, если количество

ошибок не превышает корректирующей способности кода. Можно

видеть, что справедливы

следующие

соотношения:

 

 

 

 

 

 

 

 

 

Co = So + Sl + S2 + S7;

 

 

 

 

 

 

 

 

 

 

 

Ci=S5+S7+Su+So;

 

 

 

 

 

 

 

 

 

 

' C2 = Ss +

 

S7+Sio+S]3,

 

 

 

 

 

позволяющие

получить

систему

разделенных

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

символа

So контрольных

соотношений:

 

 

 

 

 

 

 

 

 

 

 

 

 

s ^ 2 > =

с 0 +

«1 + s2

+

s 7 ;

 

 

 

(3-15)

 

 

 

 

S^3 ) = С] + с 2

+ s 1 0 + s „ + s 1 3 .

 

 

 

 

Схема

КУ

для рассматриваемого

(15,

11)-кода

показана

на

рис. 3-10. Оно

-содержит

два

регистра

сдзига.

Первый

состоит

из

15 ячеек и предназначен

для

хранения

принятой

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

so,

si, ...,

su.

Второй состоит

из трех ячеек, в которых

запоминают­

ся

символы

со,

си сг,

используемые

при решении системы

соотно­

шений (3-15). Декодер содержит два мажоритарных элемента, по­

зволяющих определить

со, cit

...,

с ц

и So, Si, ...,

su.

Процесс опре­

деления

искомых символов

so, S i , ...,

S14 начинается с

четвертого

такта (после определения значений

со,

Ci, сг), при

этом

принятые

символы

s'o, s ' i

s'2 в начале четвертого такта

находятся

в ячейках сдвигающего

регистра

с

номерами 12,

13,

14.

 

88

В табл. 3-3 приведены заимствованные из моногра­

фии

[Л. 11]

параметры некоторых

циклических

кодов,

допускающих

мажоритарное декодирование. Необходи­

м о

отметить,

что

циклические

коды Хэмминга

с d=3

и некоторые коды БЧХ допускают

мажоритарное деко­

дирование.

Более

подробные

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

Рис. 3-10. Схема КУ для (15, 11)-кода.

кодах, допускающих мажоритарное декодирование, можно найти в [Л. 11].

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

Укороченные коды

являются псевдоциклическими.

Если S(x) принадлежит

укороченному коду длины п'<п,

то преобразование, сохраняющее кодовые слова при

сдвиге на один разряд влево,

может быть записано

в виде

 

S*(x) =*-1 S(*) —

SQX^F(X),

89

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