Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ДКЗ_ТИ_кодер.doc
Скачиваний:
2
Добавлен:
06.09.2019
Размер:
369.66 Кб
Скачать

Пример разработки декодирующего устройства циклического кода

Синтезировать схему декодера циклического кода (7,4). Провести исследования алгоритма декодирования при приеме разрешенной комбинации В=1100010. Показать процесс коррекции запрещенной кодовой комбинации 1110010 как с использованием декодера, так и методом деления.

Для циклического кода (7,4) из приложения неприводимых полиномов выбираем образующий многочлен Р(х) = х 3 + х + 1.

В основе декодирующего устройства лежит многотактовый кодовый фильтр, структура которого определяется порождающим полиномом. Количество ячеек памяти равно 3, количество сумматоров по модулю два определяется числом ненулевых коэффициентов степеней «х». Структура декодирующего устройства представлена на рисунке 10

Рисунок 10 - Структурная схема декодирующего устройства

Целью декодирования является определение остатка от деления принятой комбинации на порождающий полином. Если остаток будет равен нулю, то принятая комбинация является разрешенной. В противном случае - кодовая комбинация содержит ошибку. Данный код позволяет исправлять однократную ошибку.

Для наглядности освещения работы декодирующего устройства воспользуемся рядом соотношений, позволяющих определить образование символов в ячейках устройства.

Символ в яч. №1 = вх. + яч. №3*

Символ в яч. №2 = яч. №1* + яч. №3*

Символ в яч. №3 = яч. №2*,

Результат декодирования разрешенной комбинации В = 1100010 представлен в таблице 2.

Таблица 2.

№ такта

Принятая

последовательность

Яч №1

Яч №2

Яч №3

1

1

1

0

0

2

1

1

1

0

3

0

0

1

1

4

0

1

1

1

5

0

1

0

1

6

1

0

0

0

7

0

0

0

0

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

Рассмотрим алгоритм декодирования в условиях возникновения ошибки. Пусть ошибка произошла в третьем разряде. Тогда имеем принятую комбинацию В*= 1110010.

Номер такта, на котором получен такой синдром-остаток соответствует номеру искаженной позиции в принятой из канала комбинации В*(х). Поэтому при анализе остатка происходит одновременное потактовое выписывание комбинации В*(х) из регистра памяти, к которой на такте, соответствующем ошибке, прибавляется «1» с помощью выходного сумматора по модулю два. В результате чего происходит исправление принятой комбинации.

Результат декодирования представлен в таблице 3.

Таблица 3.

№ такта

Принятая

последовательность

Яч №1

Яч №2

Яч №3

1

1

1

0

0

2

1

1

1

0

3

1

1

1

1

4

0

1

0

1

5

0

1

0

0

6

1

1

1

0

7

0

0

1

1

В последнем 7 такте получили остаток отличный от нуля - 110 (старший разряд остатка расположен в записи слева). Наличие символов в ячейках декодирующего устройства на последнем такте свидетельствует о наличии ошибок в кодовой комбинации.

Для исправления ошибки с помощью декодирующего устройства необходимо разомкнуть ключ К и циклически сдвигать остаток в схеме МКФ до тех пор, пока в ячейках не образуется остаток 001.

Номер такта, соответствующего такому состоянию, определяет номер искаженной комбинации. Исправление ошибки производится трансформацией искаженного символа с помощью выходного сумматора по модулю два, на вход которого поступает соответствующий номеру искаженный символ принятой кодограммы. Процесс исправления покажем с помощью таблицы 3. Образование символов в ячейках можно пояснить соотношениями:

Символ в яч. №1 = яч. №3*

Символ в яч. №2 = яч. №1* + яч. №3*

Символ в яч. №3 = яч. №2*,

Таблица 3

№ такта

1 ячейка

2 ячейка

3 ячейка

0

0

1

1

1

1

1

1

2

1

0

1

3

1

0

0

Таким образом, на третьем такте состояние ячеек стало 001, что соответствует наличию ошибки в третьем разряде принятой из канала кодограммы. Достоверность результата подтверждается контрольному просчету.

Составим структуру декодера для циклического кода (7,4). Схемное решение показано на рисунке 11.

Рисунок 11 – Схемная реализация декодера циклического кода

Произведем схемную реализацию декодирующего устройства для циклического кода (7,4), используя программу EWB. Для построения ячеек памяти воспользуемся D-триггерами. Входную последовательность будем создавать с помощью ключа «А». Импульсы синхронизации будут подаваться с помощью ключа «С». Для получения остатка и выдачи его в канал связи будем использовать ключ «К». Анализатор остатка подключен к МКФ с помощью группы ключей «М»

Принятая из канала кодовая комбинация записывается в первый последовательный 7-разрядный регистр, полученный на основе D-триггеров, предназначенный для ее хранения. Восьмой регистр предназначен для обеспечения синхронной работы схемы коррекции результата и анализатора остатка. Второй последовательный 7-разрядный регистр используется при записи и хранения исправленной комбинации. Схемная реализация декодера показана на рисунке 11.

Используя ключ «А» для получения принятой комбинации В=1100010, с помощью ключа «С» создадим синхроимпульсы. В результате после поступления 7 разрядов имеем следующее состояние декодера, показанное на рисунке 12.

Рисунок 12 – Состояние кодера на первом такте работы

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

Произведем исследование алгоритма декодирования в условиях возникновения ошибки. Произведем декодирование искаженной комбинации В*= 1110010. В результате работы декодирующего устройства был получен ненулевой остаток. Это свидетельствует о том, что данная комбинация при распространении по каналу связи была искажена. Результат работы декодера показан на рисунке 13.

Рисунок 13 – Состояние декодера при обработке ошибочной

комбинации

Произведем коррекцию принятой комбинации. Для этого ключ «К» размыкается, а группа ключей «М» - замыкается. После этого на декодер подаются только синхроимпульсы с помощью ключа «С». Результат коррекции приведен на рисунке 14.

Рисунок 14 – Исправление ошибочной комбинации

Как видно из последнего рисунка исправленная комбинация записалась во второй регистр.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]