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, где первый |
индекс указывает па номер строки, а второй — на но мер столбца. Нетрудно показать, что вес итеративного кода, построенного на базе двух простейших избыточ ных кодов с проверкой на четность, равен 4.
В общем случае для формируемого итеративного ко да справедливо следующее положение: минимальный вес. итерации или произведения двух кодов равен произве дению минимальных весов этих кодов [66]. Если учесть, что корректирующая способность кода тем выше, чем больше его минимальный вес, то итеративный код, об разованный итерацией двух пли более кодов, будет об ладать большей корректирующей способностью, чем каждый из образующих его кодов. Практическое приме нение нашли итеративные коды с двухмерной и трех мерной итерацией. В качестве исходных кодов чаще все
го используются коды с проверкой |
на' четность и коды |
„сщроверкои по модулю 3 или 7. |
|
" Ц и к л и ч е с к и е к о д ы . Из |
всех разновидностей |
систематических кодов циклические коды получили наи большее распространение. Это обусловлено их высокими корректирующими свойствами и сравнительно простой реализацией кодирующих и декодирующих устройств, в которых они используются.
При описании свойств циклических кодов пользуют ся представлением кодовых комбинаций в виде много
членов от фиктивной |
переменной х, в которых цифры |
О и 1, составляющие |
кодовые комбинации, являются ко |
эффициентами переменной. Если число элементов кодо вой комбинации равно п, то соответствующий ей много
член |
имеет вид |
|
|
|
|
|
|
F |
(х) |
= c„_i хп~х |
+ с „ _ 2 хп~2 |
+ ... + с2 |
х2 - f |
Ci х -f- с 0 х°, |
где |
Со, |
Си .. ., сП-1 |
— коэффициенты, |
принимающие |
зна |
чения 0 |
или 1. Например, кодовой комбинации |
10110001! |
соответствует многочлен F(x) |
=х8 |
+ х6-\-хъ |
+ х+ |
1, а |
ком |
бинации |
110001010 |
— многочлен |
F(x) |
=хе |
+ х7-\-х3+ |
1. |
С данными многочленами можно производить все основные ал гебраические операции (сложение, умножение, деление и др.). Од нако сложение (приведение подобных членов) производится, как обычно, только коэффицинты подобных членов складываются по мо дулю 2:
\х1 + |
1х1 = |
Од-'', |
0х1 |
+ |
Ox1 |
= |
OJC', |
1 х г + |
0х'' = |
1 х', |
0х' |
+ |
1 х1 |
= |
W. |
Как следствие, —1 л: = 1 А:.
Поясним |
сказанное на |
примере сложения |
трех |
многочленов: |
|
х 8 |
-|- |
хв |
+ х 6 + |
|
ж-f-I |
+ |
|
х1 |
-\- ха |
+ х* + д:4 + х 3 + |
|
1 |
|
|
Л:7 4; х в |
+ |
х3 |
+ х2 4- |
1 |
|
л - 3 |
+ |
Xе |
+ |
х*+ |
х2 |
+х |
+ 1 |
Аналогичным |
образом |
осуществляется |
умножение |
многочленов: |
|
|
|
хъ |
+ |
л-3 + х2 |
-|- |
А- + 1 |
|
|
|
л 8 |
+ |
|
х 1 + л-3 + х" + |
А" |
|
|
|
|
А* + |
X3 + X2 + |
X -|- 1 |
|
|
|
хо+л-6 |
+ |
х4 -|- |
|
1 |
|
Основным свойством циклических кодов, определив |
шим их наименование, |
является |
то, |
что |
циклический |
сдвиг элементов разрешенной комбинации на один эле мент влево также образует разрешенную комбинацию. Если разрешенную кодовую комбинацию циклического
кода представить в виде v(fn-\, |
In-z, |
• |
• •• |
fi, |
fo), то |
ком |
бинация v'=($n-b |
fn-з, |
.. •, fi, |
/о, fn-i) |
также |
является |
разрешенной |
комбинацией |
этого |
кода. |
Циклический |
сдвиг разрешенной кодовой комбинации на один элемент |
алгебраически |
эквивалентен |
умножению |
ее |
многочлена |
на х: |
|
|
|
|
|
|
|
|
|
|
|
|
|
Хр(х) = Сп^Хп |
+ Сп-2Хп-1-\- |
|
. . . +CiX2 + C0X. |
|
Так как |
степень многочлена |
«-элементной |
кодовой |
комбинации |
не |
может |
превышать |
( я — 1 ) , |
то |
хп |
есть |
х°. |
Отсюда хР(х)=\сп-2хп-< |
|
+ ... + С1Л2 |
+ СоХ + |
сп-2, |
т. е. xF |
(х) |
является циклическим |
сдвигом |
комбинации |
F(x). |
|
Способы |
построения |
и основные |
свойства |
цикличе |
ских кодов легко пояснить, если воспользоваться опре |
делением циклических |
кодов, |
даваемым |
алгебраической |
теорией кодирования: циклическим (п, /г)-кодом назы
|
|
|
|
|
|
|
|
|
вается код, множество кодовых |
комбинаций |
которого |
представляется |
совокупностью |
многочленов |
степени |
(п—1) |
и |
менее, |
делящихся на |
некоторый |
многочлен |
Р(х) |
степени (п—к), |
который является |
одним |
из |
сомно |
жителей |
разложения |
бинома |
,v" + l . |
Многочлен |
Р(х) |
принято называть |
образующим. |
|
|
|
|
Обозначим через G(x) многочлен, соответствующий кодовой комбинации /г-элементного простого кода, а че рез F(x) многочлен, соответствующий кодовой комбина ции образованного «-элементного циклического кода.
'Тогда согласно данному выше определению кодовый многочлен F(x) может быть образован умножением мно гочлена сообщения G(x) на образующий многочленР(х):
F (х) ~ G(x) Р (х). |
(6.28) |
Такой метод построения приводит к образованию нераз делимого кода, т. е. не обеспечивается четкое разделение информационных и проверочных элементов в комбина циях, что усложняет процесс декодирования.
Для формирования кодового многочлена F(x) вос пользуемся методом [66], при котором коэффициенты при членах высших порядков будут соответствовать инфор мационным элементам, а коэффициенты при членах низ
ших |
порядков—проверочным элементам. |
Умножим |
G(x) |
на хг. |
Деление |
полученного выражения |
xrG(x) |
на |
Р(х)1) |
дает |
частное |
Q(x) п остаток |
R(x) степени, |
мень |
шей г. Отсюда |
|
|
|
|
|
|
xr G (х) = Q (х) Р (х) + |
R (х). |
|
(6.29) |
Так как вычитание по модулю 2 полностью совпадает со сложением, то
хг G (х) + |
R {х) = Q (х) Р (х). |
(6.30) |
Поскольку частное Q(x) |
и.меет ту же степень, что |
G(x), |
то оно также является комбинацией простого /г-элемент-
ного |
кода |
и, |
следовательно, |
левая |
часть |
выражения |
(6.30) |
есть |
кодовый многочлен: |
|
|
|
|
|
|
F(x) |
= |
xrG(x) |
+ R(x). |
|
(6.31) |
Анализируя |
выражение |
(6.31), видим, что первое сла |
гаемое xrG(x) |
имеет |
нулевые |
коэффициенты |
в г |
членах |
низшего порядка, а степень второго |
слагаемого |
меньше |
г. Следовательно, коэффициенты г членов низшего по
|
|
|
|
|
рядка кодового многочлена |
F(x) |
являются |
такими же, |
что и коэффициенты остатка R(x), |
а |
коэффициенты k |
членов высшего порядка функции F(x) |
имеют те же ко |
эффициенты, что и многочлен G(x). |
Таким |
образом, ко |
эффициенты остатка R(x) |
соответствуют |
проверочным |
элементам, а коэффициенты членов степени г и выше — информационным элементам.
Поясним сказанное на примере. Пусть для помехо устойчивого кодирования |12-эле,ментно>го первичного -ко-
') В двоичной форме записи операция умножения на х' экви
валентна приписыванию справа г нулей.