Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Кодирующее и декодирующее устройства циклического кода



Кодирующее и декодирующее устройства циклического кода выполняются достаточно просто, что является несомненным досто­инством этого кода. Кодирующее устройство состоит из К ячеек регистра сдвига (где К – степень образующего полинома Р(Х), сумматоров по модулю 2 и трех ключей (KI, К2, КЗ) (см. рис 1). Сумматоры включатся после тех ячеек регистра сдвига, номера кото­рых соответствуют номерам разрядов образующего полинома Р(X) с единичными разрядными коэффициентами. Кодирующее устройство на рис. 1 соответствует образующему полиному Р (1,0) = 1101.

Рис. 1. Кодирующее устройство циклического кода

 

На вход устройства поступает исходная кодовая комбинация
Q(X) безызбыточного двоичного хода. Ключи KI и КЗ открыты,
а К2 закрыт в течение всего времени поступления Q(X) на вход
устройства, т.е. в процессе формирования первых nи разрядов
ходовой комбинации. Затем при поступлении на выход кодирующего
устройства К = nз проверочных разрядов, положения ключей меняется на обратное (KI и КЗ закрыты, К2 открыт). Содержимое ячеек регистра сдвига на каждом i - ом такте работы устройства в течение первых nи тактов определяется выражениями

                      1i = ui + 3i-1 ,

                       2i = 1i-1    ,                                               (1)

                      3i = ui + 2i-1 + 3i-1 ,

где 1i , 2i , 3i – содержимое ячеек 1, 2 и 3 на i - ом такте, а 1i-1 , 2i-1 , 3i-1 , соответственно на предыдущем такте работы устрой­ства. В течение последующих К тактов содержимое ячеек регистра есть

                      1i = 0           ,

                      2i = 1i-1    ,                                               (2)

                      3i = 2i-1         .

Пусть Q(1,0), как и в рассмотренном выше примере формирования цикличеокого кода, есть 1011, т.е. имеем код (7,4). Проследим потактно работу кодирующего устройства. В табл. 1 приведены номера тактов, положение ключей, содержимое разрядов входной в выходной кодовых комбинаций и содержимое ячеек регист­ра сдвига.

 

 

Таблица 1

 

Таким образом, мы убедились, что при Q(1,0) = 1011, Р(1,0) = 1101 на выходе кодирующего устройства сформировалась, как и в рассмотренном выше примере, кодовая комбинация цикличес­кого кода F(1,0) = 1011100.

Рис. 2. Декодирующее устройство циклического кода

 

Декодирующее устройство (рис. 2) содержит регистр сдвига, сумматора по модулю 2, ключи K1 и К2, буферную память, в которой накапливается и хранится до окончания цикла работы содержимое информационных разрядов, и логический элемент, выполняющий функцию ИЛИ-НE. Ключ K1 открыт в течение первых nи тактов, К2 открывается на (п + 1) такте (где п = nи + nз ). Если принятая кодовая комбинация циклического кода F(Х) разде­лилась на Р(Х) без остатка, то на (п + 1) такте содержимое всех ячеек регистра сдвига нули на выходе схемы ИЛИ-НЕ – единица и содержимое буферной памяти поступает на выход. При наличии остатка от деления на выходе схемы ИЛИ-НЕ ноль, сигнал на выходе не появляется, а подается сигнал ошибки. Проследим потактно работу устройства с помощью таблицы 2 при поступлении на вход кодовой комбинации F(1,0) = 1011100.

 

Таблица 2

 

Итеративный код

 

 Информационные символы в этом коде записываются в виде таблицы с l стро­ками и т столбцами (табл. 3). Столбец (т + 1) и строка (l + 1) содержат суммы по модулю 2 инфор­мационных символов соответственно строки или столбца. Значение проверки проверок находится как сумма по модулю 2 символов последней (прове­рочной) строки и столбца.

Приведенный в табл. 1 код является простей­шим двухступенчатым итеративным кодом (dmin = 4). Передача кодовых комбинаций осуществляется построчно, включая проверочные символы каждой строки. Последней передается строка, состоящая из значений проверок по столбцам и значений провер­ки проверок. При приеме кодовых комбинаций осу­ществляется проверка строк и столбцов на чет­ность.

Простейший итеративный код позволяет очень просто корректировать ошибку. Если не выполняет­ся проверка на четность строки i, столбца j, то сим­вол uij должен быть заменен на противоположный.

Таблица 3

Применение простейшего итеративного кода целесообразно при использовании для кодирования ЭВМ, так как используются лишь операции суммирования по модулю 2, и программа кодирования и декодирования оказывается очень простой.

В непростейших итеративных кодах проверка по строкам и столбцам осуществляется более слож­ными помехозащищеннымн кодами, например цик­лическими. В этом случае минимальное кодовое расстояние между кодовыми комбинациями итера­тивного кода есть произведение d1min · d2min , где d1min – минимальное кодовое расстояние между комбинациями по строкам, a d2min – то же по столбцам.

 

 


Поделиться:



Последнее изменение этой страницы: 2019-03-21; Просмотров: 69; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.012 с.)
Главная | Случайная страница | Обратная связь