Что такое кодер и декодер. Кодеры и декодеры с линейной шкалой квантования

22.02.2019

Линейные и нелинейные кодеры и декодеры. Виды линейных кодеров: - счетного типа, взвешивающего типа, матричные. Структурные схемы линейного кодера взвешивающего типа для однополярного и двухполярного сигналов. Структурные схемы нелинейного кодера идекодера. Характеристика компрессии типа А-87,6/13.

Кодер с линейной шкалой квантования называется линейным, а с нелинейной шкалой квантования – нелинейным.


Вх АИМ сигн.

Рисунок 2. Структурная схема линейного кодера взвешивающего типа для вдух-полярного сигнала.

Для примера рассмотрим работу кодера при кодировании отсчета с отрицательной амплитудой - 105.3 Δ. Кодируемый отсчет подается на первый вход (I) компаратора, а цикл начинается с установки первого выхода ЛУ в состояние 1. В этом случае за--мыкается ключ Кл + источника положительных эталонных токов (напомним, что выходы 2,..8 ЛУ при этом находятся в состоянии. О, т, е. Кл(- Кл? и Кл[-Кл-/ разомкнуты, на втором входе компаратора, Iэт = 0). Поскольку отсчет имеет отрицательную поляр--ность, т. е. Iс<0, то в первом такте кодирования на выходе компаратора будет сформирована 1 и состояние первого выхода ЛУ ста­нет 0, Тогда Кл+ будет разомкнут, а через инвертор DD 2 будет включен Кл - . Единица на выходе инвертора DD 2 изменит и положение ключа КлК на выходе компаратора и к нему подключится. инвертор. Необходимость такой операции пояснялась ранее. Таким образом, согласно полярности амплитуды входного сигнала включен ГЭТ отрицательных эталонных токов и схема готова к следующим этапам кодирования, для чего переводятся в состояние 1 второй выход ЛУ. Перевод в состояние 1 второго выхода ЛУ обеспечивает подключение через Кл - , эталонного тока-64Δ в точку суммирования этапов Вх2 компаратора и т.д..

Рисунок 3. Характеристика компрессии типа А-87,6/13

В системах ИКМ-ВРК вместо плавной амплитудной характе­ристики, которую имеют аналоговые_компандеры, применяются сегментные характеристики. Они представляют собой кусочно-ломаную аппроксимацию плавных характеристик, при которой изменение крутизны происходит дискретными ступенями. Два в положительной и два в отрицательной областях объединяются в один центральный сегмент, поэтому общее число сегментов на двухполярной характеристике равно 13. Каждый из 16 сегментов характеристики содержит по 16 шагов (уровней), квантования, а общее число уровней равно 256, из них 128 поло­жительных и 128 отрицательных.

Каждый сегмент начинается с определенного эталона, назы­ваемого основным – 16, 32, 64, 128, 256, 512, 1024, 2048.

Кодирование осуществляется за восемь тактов и включает три основных этапа:

1 - определение и кодирование полярности вход­ного сигнала;

2 - определение и кодщювание номера сегмента узла, в котором заключен кодируемый отсчет;

3 - определение и кодирование номера уровня квантования сегмента, в зоне кото­рого заключена амплитуда кодируемого отсчета. Первый этап кодирования осуществляется за 1-й такт, второй этап - за 2...4-й такты, третий этап - за 5.,.8-й такты кодирования.

Вх АИМ
Вых ИКМ
ГО
ГО
ГО
ПК
ЦР
ГЭТ1
ГЭТ2
БКЭ

Рисунок 4. Структурная схема нелинейного декодера

Логические устройства разделяют на два класса: комбинационные и последовательностные.

Устройство называют комбинационным , если его выходные сигналы в некоторый момент времени однозначно определяются входными сигналами, имеющими место в этот момент времени.

Иначе устройство называют последовательностным или конечным автоматом (цифровым автоматом, автоматом с памятью). В последовательностных устройствах обязательно имеются элементы памяти. Состояние этих элементов зависит от предыстории поступления входных сигналов. Выходные сигналы последовательностных устройств определяются не только сигналами, имеющимися на входах в данный момент времени, но и состоянием элементов памяти. Таким образом, реакция последовательностного устройства на определенные входные сигналы зависит от предыстории его работы.

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

Шифраторы

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

Если количество входов настолько велико, что в шифраторе используются все возможные комбинации сигналов на выходе, то такой шифратор называется полным, если не все, то неполным. Число входов и выходов в полном шифраторе связано соотношением n= 2 m , где n- число входов, m- число выходов.

Так, для преобразования кода кнопочного пульта в четырехразрядное двоичное число достаточно использовать лишь 10 входов, в то время как полное число возможных входов будет равно 16 (n = 2 4 = 16), поэтому шифратор 10×4 (из 10 в 4) будет неполным.

Рассмотрим пример построения шифратора для преобразования десятиразрядного единичного кода (десятичных чисел от 0 до 9) в двоичный код. При этом предполагается, что сигнал, соответствующий логической единице, в каждый момент времени подается только на один вход. Условное обозначение такого шифратора и таблица соответствия кода приведены на рис. 3.35.

Используя данную таблицу соответствия, запишем логические выражения, включая в логическую сумму те входные переменные, которые соответствуют единице некоторой выходной пере­менной. Так, на выходе у 1 будет логическая «1» тогда, когда логическая «1» будет или на входе Х 1 ,или Х 3 , или Х 5 , или Х 7 , или X 9 , т. е. у 1 = Х 1 + Х 3 + Х 5 + Х 7 +X 9

Аналогично получаем у 2 = Х 2 + Х 3 + Х 6 + X 7 у 3 = Х 4 + Х 5 + Х 6 + Х 7 у 4 = Х 8 + X 9

Представим на рис. 3.36 схему такого шифратора, используя элементы ИЛИ.
На практике часто используют шифратор с приоритетом. В таких шифраторах код двоичного числа соответствует наивысшему номеру входа, на который подан сигнал «1», т. е. на приоритетный шифратор допускается подавать сигналы на несколько входов, а он выставляет на выходе код числа, соответствующего старшему входу.

Рассмотрим в качестве примера (рис. 3.37) шифратор с приоритетом (приоритетный шифратор) К555ИВЗ серии микросхем К555 (ТТЛШ).

Шифратор имеет 9 инверсных входов, обозначенных через PR l , …, PR 9 . Аббревиатура PR обозначает «приоритет». Шифратор имеет четыре инверсных выхода B l , …, B 8 . Аббревиатура B означает «шина» (от англ. bus). Цифры определяют значение активного уровня (нуля) в соответствующем разряде двоичного числа. Например, B 8 обозначает, что ноль на этом выходе соответствует числу 8. Очевидно, что это неполный шифратор.

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

Например, если на входе PR 1 - логический ноль, а на всех остальных входах - логическая единица, то на выходах имеются следующие сигналы: В 1 − 0, В 2 − 1, В 4 − 1, В 8 − 1, что соответствует числу 1 в инверсном коде (1110).

Если на входе PR 9 логический ноль, то независимо от других входных сигналов на выходах имеются следующие сигналы: В 1 − 0 , В 2 − 1 , В 4 − 1, В 8 − 0, что соответствует числу 9 в инверсном коде (0110).

Основное назначение шифратора - преобразование номера источника сигнала в код (например, номера нажатой кнопки некоторой клавиатуры).


Дешифраторы

Называется комбинационное устройство , преобразующее n-разрядный двоичный код в логический сигнал, появляющийся на том выходе, десятичный номер которого соответствует двоичному коду. Число входов и выходов в так называемом полном дешифраторе связано соотношением m= 2 n , где n- число входов, а m- число выходов. Если в работе дешифратора используется неполное число выходов, то такой дешифратор называется неполным. Так, например, дешифратор, имеющий 4 входа и 16 выходов, будет полным, а если бы выходов было только 10, то он являлся бы неполным.

Обратимся для примера к дешифратору К555ИД6 серии К555 (рис. 3.38).


Дешифратор имеет 4 прямых входа, обозначенных через А 1 , …, А 8 . Аббревиатура A обозначает «адрес» (от англ.address). Указанные входы называют адресными. Цифры определяют значения активного уровня (единицы) в соответствующем разряде двоичного числа. Дешифратор имеет 10 инверсных выходов Y 0 , …, Y 9 . Цифры определяют десятичное число, соответствующее заданному двоичному числу на входах. Очевидно, что этот дешифратор неполный.

Значение активного уровня (нуля) имеет тот выход, номер которого равен десятичному числу, определяемому двоичным числом на входе. Например, если на всех входах - логические нули, то на выходе Y 0 - логический ноль, а на остальных выходах - логическая единица. Если на входе А 2 - логическая единица, а на остальных входах - логический ноль, то на выходе Y 2 - логический ноль, а на остальных выходах - логическая единица. Если на входе - двоичное число, превышающее 9 (например, на всех входах единицы, что соответствует двоичному числу 1111 и десятичному числу 15), то на всех выходах - логическая единица.

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

Рассмотренные шифраторы и дешифраторы являются примерами простейших преобразователей кодов.

Преобразователи кодов

В общем случае, называют устройства, предназначенные для преобразования одного кода в другой, при этом часто они выполняют нестандартные преобразования кодов. Преобразователи кодов обозначают через X/Y.

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



Здесь через N обозначено десятичное число, соответствующее входному двоичному коду. Преобразователи кодов часто создают по схеме дешифратор - шифратор. Дешифратор преобразует входной код в некоторое десятичное число, а затем шифратор формирует выходной код. Схема преобразователя, созданного по такому принципу, приведена на рис. 3.40, где использован матричный диодный шифратор. Принцип работы такого преобразователя довольно прост. Например, когда на всех входах дешифратора логический «О», то на его выходе 0 появляется логическая «1», что приводит к появлению «1» на выходах у 4 и у 5 , т. е. реализуется первая строка таблицы соответствия кодов.


Промышленность выпускает большое число шифраторов, дешифраторов и преобразователей кодов, таких как дешифратор 4×16 со стробированием (К555ИДЗ), преобразователь кода для управления светодиодной матрицей 7×5 (К155ИД8), преобразователь кода для управления шкальным индикатором (К155ИД15) и др.

Целесообразность использования регистров сдвига для построения циклических кодеров и декодеров объясняется структурой циклических кодов. При несистематическом кодировании циклических кодов для формирования кодового слова с надо соответствующий информационный многочлен умножить на фиксированный порождающий многочлен Эту операцию можно реализовать на КИО-фильтре над Такой кодер для (15, 11)-кода Хэмминга представлен на рис. 6.1.3. Для кодирования непрерывного потока информационных битов последовательностью слов (15, 11)-кода Хэмминга информационная последовательность просто разбивается на блоки но 11 битов, каждый блок дополняется «прокладкой» из четырех нулей, а результирующий поток битов пропускается через КИО-фильтр. На выходе получается последовательность непересекающихся 15-битовых слов кода Хэмминга Такой кодер, показанный на рис. 6.14, очень прост, но кодовые слова оказываются несистематическими.

Для получения слов кода в систематическом виде надо воспользоваться другим кодером. Поместим информационные биты в старшие разряды кодового слова и подберем проверочные символы так, чтобы получить допустимое кодовое слово. Кодовое слово записывается в виде

Для реализации систематического кодера используется цепь деления на Для (15, 11)-кода Хэмминга

соответствующее устройство показано на рис. 6.15. Одиннадцать информационных битов, занимающих старшие разряды, вводятся слева в цепь деления на Умножение на учитывается временем работы цепи. Первый бит понимается как коэффициент при Деление не начинается до тех пор, пока не выполнены четыре тактовых сдвига, так что первые четыре бита оказываются записанными в разрядах регистра сдвига. Поэтому ниже цепи деления в устройство включен буфер из четырех разрядов, так, что первые четыре бита начинают поступать в канал одновременно с началом деления. После 11 тактов работы все 11 информационных битов поданы в канал, деление закончено и

Рис. 6.13. Несистематический кодер для (15, 11)-кола Хэмминга.

Рис. 6. 14. Кодирование длинного потока битов.

Рис. 6.15. Систематический кодер для (15, 11)-кода Хэмминга.

вычисленный остаток готов для подачи в канал в качестве проверочных символов. В течение этих последних четырех тактов работы цепь обратной связи в устройстве деления разомкнута. В общей сложности полное кодирование занимает 19 тактов.

Можно несколько ускорить кодирование, удалив первые четыре такта. Такой кодер изображен на рис. 6.16. Чтобы понять эту схему, нужно заметить, что поступающие информационные символы не вводятся немедленно для выполнения деления на , а поступают тогда, когда необходимо сформировать сигнал обратной связи. Таким образом, обратная связь в устройстве на рис. 6.16 такова же, как и в устройстве на рис. 6.15. Далее, так как последние биты многочлена всегда равны нулю, то ничего не случится, если мы прибавим их к остатку от деления. Таким образом, остаток, вычисляемый устройством на рис. 6.16, равен остатку, вычисляемому устройством на рис. 6.15, но вычисление происходит только за 15 тактов, что, конечно, удобнее.

Рис. 6.16. Другой систематический кочер для (15, 11)-кода Хэмминга.

Теперь обратимся к декодеру. В канал поступаю! коэффициенты многочлена с К ним прибавляется многочлен ошибок На выходе канала принимаемся многочлен

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