книги из ГПНТБ / Хетагуров, Я. А. Повышение надежности цифровых устройств методами избыточного кодирования
.pdfD 1
JO |
|
|
|
i t1" |
* |
|
|
D |
ml |
/772 |
|
2 |
|
Выходы |
|
|
|
|
|
26 |
|
|
|
Рис. 3-6. |
Схема |
двухканального кодера |
для |
(7, 4) -кода, порождаемого полиномом G (х) = 1 |
+х2+х3. |
коррекция содержимого фильтра, если (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+х'1+х8. |
Матрица |
связен |
|
в |
соответствии |
с выраже |
||||||
нием (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