vopros-otvet (519806), страница 17
Текст из файла (страница 17)
40. Техническая реализация декодирующих устройств циклического кода, исправляющих одиночную ошибку. Пример.
Нарисуем общую схему декодирующего устройства с двумя схемами деления.
Рис. 6.10. Схема декодирующего устройства с двумя схемами деления
Пусть имеет место ошибка в старшем разряде К.К., принятой из линии связи. Пока она доберется до выхода из приемного регистра, все n тактов она делится в схеме деления 1. На n-ном такте остаток переписывается в схему деления 2. На (n + 1) такте ошибка выходит из регистра и поступает на сумматор. Одновременно из схемы деления 2 кодовая комбинация, соответствующая ошибке в старшем разряде, поступает на схему опознавателя остатка ошибки в старшем разряде. Последняя вырабатывает сигнал на исправление ошибки и обнуление схемы деления 2, если других ошибок нет. Если же ошибка имеет место не в старшем разряде, то остаток, переписанный из схемы деления 1 в схему деления 2, продолжает делиться до тех пор, пока ошибка не доберется до выхода из регистра, то есть в обеих схемах деления 1 и 2 ошибка будет всегда делиться n раз.
Разберем конкретный пример.
Имеем: ai(x) = x3 Е 1 = 1001; g(x) = x3 Е x2 Е 1 = 1101.
Циклический код (7; 4), исправляющий одиночные ошибки.
ƒi(x) - послали в линию связи. Из линии связи получили ƒi*(x): 1101011. Необходимо построить схему Д.У., исправляющего одиночные ошибки.
Решение.
1. Выберем схему деления. Пусть это будет схема деления с первого такта.
Рис. 6.11
2. Определим остаток, который получается в схеме деления на n-ном такте ( в нашем случае n = 7), если имеет место ошибка в старшем разряде, то есть . Для этого поделим
на g(x):
Остаток на седьмом такте деления r7(x) = 100.
3. Спроектируем схему распознавания остатка. Минимальные затраты оборудования (считаются по числу входов-выходов) будут иметь место при инверсии «1» в «0» и установки схемы «исключающего или», когда при входе трех нулей на выходе берется инверсный выход, дающий «1», т.е.
Рис. 6.12
Для построения логических схем можно использовать схемы «И» с прямым и инверсным выходами и схемы «ИЛИ» с прямым и инверсным выходами.
4. Нарисуем схему декодирующего устройства с заведением обратной связи от сигнала коррекции ошибки на обнуление схемы деления 2.
Рис. 6.13
5. Приведем таблицу потактовой работы декодирующего устройства.
Таблица 6.6
№/№ тактов | Вход | Ячейки | Выход | Примечание 1 | Примечание 2 | ||
x0 | x1 | x2 | |||||
1 | 1 | 1 | 0 | 1 | – | Идет заполнение приемного регистра и деление ƒi*(x) на g(x) в схеме деления 1 |
|
2 | 1 | 0 | 1 | 0 | – | ||
3 | 0 | 0 | 0 | 1 | – | ||
4 | 1 | 0 | 0 | 0 | – | ||
5 | 0 | 0 | 0 | 0 | – | ||
6 | 1 | 1 | 0 | 1 | – | ||
7 | 1 | 0 | 1 | 0 | – | Переписывается r(x) в схему деления 2 | |
8 | 1 | 0 | 0 | 1 | 1 | Соответствует r7(x) | Входной сигнал из регистра начинает поступать на выход |
9 | – | 0 | 0 | 0 | 1 Е 1 = 0 | Идет сигнал коррекции | |
10 | – | 0 | 0 | 0 | 0 | Исправление шестого символа и сброс схемы деления 2 в ноль | |
11 | – | 0 | 0 | 0 | 1 | ||
12 | – | 0 | 0 | 0 | 0 | ||
13 | – | 0 | 0 | 0 | 1 | ||
14 | – | 0 | 0 | 0 | 1 |
На 9-том такте на первый сумматор в схеме деления 2 приходят две единицы: одна от обратной связи с x2 и вторая со схемы коррекции. Они дают «0» и все содержание схемы деления 2 превращается в «0». Однако, это не всегда так получается. Особенно, когда n ≠ 2m – 1 и обращение схемы деления 2 в «0» следует проектировать особо.
41. Техническая реализация декодирующих устройств циклического кода, исправляющего 2-ые смежные ошибки. Пример.
Рассмотрим все на примере кода (7; 3).
Образующий многочлен, исправляющий одиночные и двойные смежные ошибки, получается путем умножения образующего многочлена, исправляющего одиночные ошибки на (x Е 1) (см. 6.3.6.). Если у нас в предыдущем примере многочленом, исправляющим одиночные ошибки, был g(x) = x3 Е x2 Е 1, то в качестве многочлена, исправляющего одиночные и двойные смежные ошибки, выбираем многочлен:
Если количество проверочных символов увеличилось до m = 4, то, если мы хотим оставить n = 7, количество информационных символов сократилось до k = 3.
Пусть ai(x) = 101, тогда
В линии связи подействовала помеха . Из линии связи получили ƒi*(x) = 1000100.
Требуется построить Д.У., исправляющее одиночные и двойные смежные ошибки.
Решение.
Последовательность действий та же, что и в случае исправления одиночных ошибок.
1. Выберем схему деления. Пусть это будет схема деления с m-ного такта, то есть g(x) = 10111; имеем:
Рис. 6.14. Схема деления с m-ного такта
2. Определим остатки, на которые необходимо настроить схемы распознавания ошибок. Этих остатков должно быть два: один для ошибки и второй для ошибки
(двойной смежной ошибки в старших разрядах). Пока одиночная ошибка будет двигаться по схеме деления до ячейки x3, никакого деления не будет, то есть
А с пятого такта включится обратная связь и будет деление:
Для двойной смежной ошибки получим аналогичным образом:
Итак, для исправления двойной смежной ошибки необходимо находить остаток 0101, а для одиночной ошибки – 1011. Если бы построили схему деления с первого такта, то остатки были бы другими: 1000 и 1100.
1. Спроектируем схемы распознавания остатков с минимизацией затрат.
Для исправления одиночной ошибки:
Рис. 6.15
Для исправления двойной смежной ошибки:
Рис. 6.16
2. Особо следует рассмотреть возможность коррекции схемы деления 2. Когда будет исправлена первая из двух смежных ошибок, то в схеме деления 2 остаток из 0101 должен перейти в остаток для исправления одиночной ошибки, то есть в 1011, а затем он должен перейти в 0000.
Рис. 6.17
Работа идет корректно.
3. Нарисуем общую схему Д.У.:
Рис. 6.18. Общая схема Д.У.
4. Приведем таблицу потактовой работы декодирующего устройства.
Таблица 6.7
№/№ тактов | Вход ƒi*(x) | Состояние ячеек схем деления | Выход | Примечание | |||||
x0 | x1 | x2 | x3 | ||||||
1 | 1 | 1 | 0 | 0 | 0 | – | Шло заполнение схемы деления, т.к. в x3 был всегда ноль | ||
2 | 0 | 0 | 1 | 0 | 0 | – | |||
3 | 0 | 0 | 0 | 1 | 0 | – | |||
4 | 0 | 0 | 0 | 0 | 1 | – | |||
5 | 1 | 0 | 1 | 1 | 0 | – | Шло потактовое деление в схеме деления 1. На 7 такте перезапись остатка в схему деления 2. | ||
6 | 0 | 0 | 0 | 1 | 1 | – | |||
7 | 0 | 1 | 1 | 1 | 1 | – | |||
8 | – | 0 | 0 | 1 | 1 | 1 | Начало выхода информации из регистра | ||
9 | – | 1 | 0 | 1 | 0 | 0 | Остаток соответствующий 2-ой смежной ошибке | ||
10 | – | 1 | 1 | 0 | 1 | 1 | Коррекция ошибки и остатка | ||
11 | – | 0 | 0 | 0 | 0 | 1 | Коррекция 2-ой ошибки и остатка | ||
12 | – | 0 | 0 | 0 | 0 | 1 |
| ||
13 | – | 0 | 0 | 0 | 0 | 0 |
| ||
14 | – | 0 | 0 | 0 | 0 | 0 |
|
В таблице 9 получен требуемый результат.