ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 28.06.2024
Просмотров: 204
Скачиваний: 0
Умножение полинома G.(xQj на одночлен вида х,! заключается в добавлении к этому полиному справа k нулей. Пусть G(x) — хі +
+ х2-НІ |
=>- iliOlOl, |
k —4, тогда |
xhG(x) = x 4 (x4 + x2+ 1) = x8 + x 6 + |
||||||
+ x4 =>- |
101010000. |
Разделим |
теперь |
xhG(x) |
на |
Р(х). |
Пусть |
||
Р ( х ) = х 4 + х + 1 => |
ЮОМ: |
|
|
|
|
|
|
||
|
делитель |
дуЮіЮіІОООО 10011 |
|
|
|
||||
|
ш 1 0 0 1 1 |
|
1 0 0 1 1 0 |
|
|
|
|
||
|
|
|
0 1 1 0 0 |
|
|
|
|
|
|
|
|
|
0 0 0 0 0 |
|
|
|
|
|
|
|
делитель |
дч 1 1 0 0 0 |
|
|
|
|
|
|
|
|
® 1 0 0 ІІІІ |
|
|
|
|
|
|
||
|
делитель |
|
|
|
|
|
|
|
|
|
|
|
0 ( 1 0 1 0 |
|
|
|
|
|
|
|
|
|
0 0 0 0 0 |
|
|
|
|
|
|
|
остаток |
1 0 1 0 |
|
|
|
|
|
|
|
Процедура деления одного двоичного числа |
(делимого) |
на дру |
|||||||
гое двоичное число |
(делитель) |
сводится |
к последовательному сло |
||||||
жению по модулю два делителя |
(в данном случае |
1 0 0 1 1 ) |
с соот |
||||||
ветственными членами делимого |
( 1 0 1 0 1 ), далее — с двоичным чис |
лом, полученным в результате первого сложения, второго сложения и т. д., пока число членов результирующего двоичного числа не станет меньше числа членов делителя. Это двоичное число и пред ставляет собой остаток.
В кодирующем и декодирующем устройствах для замены про цедуры деления полинома на полином суммированием использу ются регистры сдвига с обратными связями с числом ячеек, рав ным степени образующего полинома, и сумматоры по модулю два, число которых равно весу образующего полинома, уменьшенному на единицу. Место включения сумматоров определяется структу рой образующего полинома Р(х). Например, для Р(х) =|1 + х + х4 число ячеек регистра сдвига равно четырем, число сумматоров по модулю два равно двум, причем сумматоры включаются перед не
нулевыми членами полинома (х° и х). |
После четвертой ячейки |
|
(х4) сумматор на включается, поскольку |
результат сложения |
по |
модулю два старшего разряда делимого со старшим разрядом |
де |
лителя всегда равен нулю.
Рассмотрим один из вариантов кодирующего устройства для циклического (9,5)-кода с исправлением одиночной ошибки. Обра зующий полином для этого кода Р(х) = х4+ х + 1. Кодирующее ус тройство (рис. 2.13) состоит из двух регистров: регистра задержки (РЗ) и регистра сдвига (PC) с обратной связью, двух сумматоров по модулю два Si и S2 и двух ключей Кі и Кг-
Члены полинома G(x) вводятся параллельно в регистр задерж ки и в регистр сдвига, начиная со старшего члена (слева направо).
По окончании k тактов |
(в данном случае k —4) первый член поли |
нома G(x) оказывается |
в последней ячейке РЗ и PC. Последова- |
78
тельное смещение членов полинома G(x) на k разрядов соответст вует умножению G(x) на xh. Для G(x) — xk + xz+\, x'LG(x) = x?+
+ .v6 + x4.
Далее ключ К\ размыкается, а ключ Кг замыкается, создавая в PC цепь обратной связи. С этого момента (с 5-го такта) начинает ся передача членов полинома G(x) с РЗ на выход схемы и одно-
РЗ
Рис. 2.13. Структурная схема кодирующего устройства
для циклического |
кода |
|
|
временно деление xhG(x) на Р(х). |
Элементы, |
выходящие из по |
|
следней ячейки ір'егжгрра PC, подаются (параллельно) по цепи об |
|||
ратной связи к сумматорам |
и S2, |
в которых |
производится сло |
жение но модулю два с элементами, поступающими на эти же сум маторы со стороны входа схемы. Результаты сложения записыва ются в соответственных ячейках регистра сдвига.
Через т тактов (в данном случае т =5) |
процедура деления |
л:hG(x) на Р(х) закончится, и в ячейках PC |
будет записан полу |
ченный остаток R(x). Затем ключ Кі замкнется, а Кг разомкнется,
и члены остатка |
R(x) |
будут направлены на |
выход схемы, вслед |
||
за переданными |
регистром задержки членами полинома |
G(x). |
|||
|
|
|
|
Таблица 2 . 8 |
|
|
|
№ |
Последова |
Последова |
Последова - |
Положение ключей |
тельность |
тельность |
тельность |
||
такта |
заполнения |
заполнения |
посылок на |
||
|
|
|
ячеек РЗ |
ячеек PC |
выходе схемы |
Кі — замкнут |
|
1 |
1000 |
1000 |
|
/С2 — разомкнут |
|
2 |
0100 |
0100 |
|
|
|
3 |
1010 |
1010 |
|
|
|
4 |
0101 |
0101 |
|
Кг — замкнут |
|
5 |
1010 |
он о |
1 |
|
6 |
0101 |
ООП |
01 |
|
К\ — разомкнут |
|
7 |
0010 |
1101 |
101 |
|
|
8 |
0001 |
1010 |
0101 |
|
|
9 |
0000 |
0101(остаток) |
10101 |
— замкнут |
|
10 |
Поступление новой |
|
|
|
|
|
комбі нации |
|
79
•Кодовая комбинация на выходе кодирующего устройства будет иметь вид
F (х) — х + Xs ■4- X4 + л;6 + л:8 |
010110101. |
|
R (х) |
хк а (л) |
Я (а-) Х к в ( X) |
Последовательность заполнения ячеек регистров РЗ и PC (такт |
||
за тактом) показана в табл. |
2 .8 . |
|
При заполнении ячеек PC первый элемент пятой строки обра зуется путем сложения по модулю два четвертого элемента преды дущей строки с очередным элементом, вводимым в регистр; второй элемент пятой строки образуется путем сложения по модулю два
четвертого элемента предыдущей |
строки с ее первым элементом. |
Д Е КО Д И Р У Ю Щ Е Е |
УСТРОЙСТВО |
Из ранее рассмотренного принципа обнаружения ошибок в при нятой кодовой комбинации циклического (п, іщ)-кода следует, что признаком, указывающим на наличие ошибок в данной комбина ции, служит остаток, получаемый в результате деления кодового полинома Н(х) или полинома ошибок Е(х) на образующий поли ном Р(х).
Полином Н(х), отображающий кодовую комбинацию, поступа ющую на вход декодирующего устройства, в общем случае, из-за помех в канале связи, отличается от полинома F(x), отображающе го кодовую комбинацию на выходе декодирующего устройства, на личием одного или нескольких ошибочных элементов. Рассмотрим один из вариантов декодирующего устройства для циклического (9, 5)-кода с исправлением одиночной ошибки.
Пусть F(x) = x+ x 3+xk + x6+x&=>- 0101 ІОІОіІ. Образующий по лином для этого кода Р(х) = 1+х+х'1 => 11001. Деление Н(х) на Р(х) заменим делением Е(х) на Р(х) . Так как каждый из девяти элементов кодовой комбинации может оказаться ошибочным, то число полиномов ошибок Е(х), участвующих в процедуре деления на образующий полином Р(х), равно числу разрядов принятой ко довой комбинации, т. е. девяти.
Очевидно, что полиномы ошибок отличаются один от другого только позицией, занимаемой единственным ненулевым членом, отображающим в каждом из полиномов ошибочный разряд приня той кодовой комбинации.
Декодирующее устройство (рис. 2Л4) состоит из регистра сдви га РСі на 9 ячеек, предназначенного для заполнения всех элемен-
Рис. 2.14. Структурная схема декодирующего устройства для циклического кода
80
t o b принятой кодовой комбинации, регистра сдвига РС2 на 4 ячей ки с обратной связью, используемого для деления кодового полино ма на образующий полином Р(х), дешифратора, на вход которого поступает остаток R(x) от деления Н(х) на Р(х) и устройства для исправления ошибки УИО (сумматор по модулю два), в котором происходит сравнение каждого элемента кодовой комбинации с сиг налом на выходе дешифратора.
■Последовательность заполнения ячеек регистра сдвига с обрат ной связью РС2 при делении каждого из 9 полиномов ошибок Е(х)
на образующий полином |
Р(х) |
показана в табл. 2.9. |
Из таблицы |
|||||||
видно, что при наличии ошибки ів «пер |
|
|
Т а б л и ц а 2.9 |
|||||||
вом ('Старшем) (разряде принятой ком |
|
|
||||||||
|
|
|
|
|||||||
бинации остаток от деления полино |
|
|
Лр5 разряда |
|
||||||
мов '(1 0 1 0 ) |
запишется |
в регистре пос |
№ |
|
|
|
||||
ле 9 тактов. При наличии ошибки в |
такта |
1 |
2 |
9 |
||||||
каждом последующем разряде приня |
|
|
|
|
||||||
той комбинации [(2, 3, |
4 ... ,9) |
остаток |
1 |
1000 |
|
|
||||
от деления полиномов будет таким же, |
|
|
||||||||
но со сдвигом на один такт относи |
2 |
0100 |
1000 |
|
||||||
тельно .предыдущего. |
|
|
|
|
3 |
0010 |
0100 |
|
||
При поступлении на вход дешифра |
4 |
0001 |
0010 |
|
||||||
тора остатка |
Я(х) = 1 0 1 0 |
на |
его вы |
5 |
1100 |
0001 |
|
|||
ходе появится единица. Так как мо |
|
|||||||||
6 |
он о |
1100 |
|
|||||||
менты появления единиц |
на |
выходе |
|
|||||||
дешифратора совпадают с моментами |
7 |
ООП |
он о |
|
||||||
появления |
соответственных |
разрядов |
8 |
1101 |
ООП |
|
||||
кодовой комбинации на выходе реги |
9 |
1010 |
1101 |
1000 |
||||||
стра сдвига |
|
РСь то |
ошибочные эле |
10 |
|
1010 |
0100 |
|||
менты будут исправлены .сумматором |
|
|||||||||
11 |
|
|
0010 |
|||||||
по модулю два. |
|
|
|
|
|
|
||||
В рассмотренном варианте декоди |
12 |
|
|
0001 |
||||||
рующего устройства к моменту поступ |
13 |
|
|
1100 |
||||||
ления каждой следующей комбинации |
14 |
|
|
он о |
||||||
исправление |
ошибки |
в ' |
предыдущей |
15 |
|
|
ООП |
|||
комбинации |
(на 'что в предельном слу |
|
|
|||||||
16 |
|
|
1101 |
|||||||
чае затрачивается 9 тактов) должно |
|
|
||||||||
быть закончено, т. е. (регистр сдвига |
17 |
|
|
1010 |
||||||
РС2, осуществляющий деление, должен |
18 |
|
|
|
||||||
быть полностью очищен. Поэтому не |
|
|
|
|
||||||
обходимо, чтобы декодирующее уст |
частотой: заполнение ре |
|||||||||
ройство работало с переменной тактовой |
||||||||||
гистров — с |
тактовой |
частотой, равной |
частоте поступления |
ин |
||||||
формации, |
а |
исправление |
ошибки — девятикратной тактовой |
частотой. Тогда к началу поступления очередной кодовой ком бинации исправление ошибки в предыдущей комбинации бу дет закончено.
Сравнение схем рис. 2.13 и 2.14 со схемами рис. 2.Ш и 2.1.2 по казывает, что кодопреобразователи для циклического кода намно го проще, чем для кода Хемминга.
81