Дешифраторы и шифраторы

Как отмечалось в параграфе 3.2, цифровые устройства делятся на комбинационные и последовательностные. К комбинационным относятся такие цифровые устройства, выходные сигналы которых зависят только от текущего значения входных сигналов. Эти устройства, в отличие от последовательностных, не обладают памятью. После завершения переходных процессов в этих устройствах на их выходах устанавливаются выходные величины, на которые характер переходных процессов влияния не оказывает.

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

Дешифраторы

Дешифратор (decoder) – это комбинационное устройство, позволяющее распознавать числа, представленные позиционным п-разрядным кодом. Если на входе дешифратора "-разрядный двоичный код, то на его выходе код "1 из Ν". В кодовой комбинации этого кода только одна позиция занята единицей, а все остальные – нулевые. Например, код "1 из Ν", содержащий 4 кодовые комбинации, будет представлен следующим образом:

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

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

Проиллюстрируем реализацию дешифраторов на примере полного дешифратора трехразрядных чисел. Таблица истинности дешифратора представлена в табл. 3.5.

Таблица 3.5

Номера

наборов

Входы

Выходы

x3

x2

x1

y0

y1

y2

y3

y4

y5

y6

y7

0

0

0

0

1

0

0

0

0

0

0

0

1

0

0

1

0

1

0

0

0

0

0

0

2

0

1

0

0

0

1

0

0

0

0

0

3

0

1

1

0

0

0

1

0

0

0

0

4

1

0

0

0

0

0

0

1

0

0

0

5

1

0

1

0

0

0

0

0

1

0

0

6

1

1

0

0

0

0

0

0

0

1

0

7

L

1

1

0

0

0

0

0

0

0

1

Как видно, каждый выход xi равен единице только на одном наборе, поэтому работа дешифратора описывается восемью функциями – по числу выходов дешифратора, каждая из которых является конъюнкцией (логическим И) трех аргументов:

Схема трехразрядного полного дешифратора показана на рис. 3.12. Для реализации одной функции yi, нужен один трехвходовый конъюнктор. Так как на входах конъюнкторов присутствуют как прямые значения аргументов, так и инверсные, в схеме дешифратора необходимы три инвертора (см. рис. 3.12, а).

Рис. 3.12. Линейный дешифратор на три входа:

а – логическая схема; б – условное обозначение дешифратора с входами синхронизации и разрешения

Часто дешифраторы выполняют с управляемой синхронизацией, при которой дешифрация кода будет произведена во время подачи синхронизирующего импульса, поступившего на вход С, лишь при условии, что на вход EN подан разрешающий единичный сигнал (см. рис. 3.12, б). Для реализации такого условия необходимы конъюнкторы с четырьмя входами, на четвертый вход которых поступает сигнал разрешения. Этот сигнал формируется двухвходовым конъюнктором при совпадении сигналов С и EN.

Число контактов у стандартного корпуса несложной ИС ограничено (14, 16 или 24), поэтому дешифраторы, выпускаемые в виде ИС, имеют небольшую разрядность входного кода (три, реже четыре). Так, например, в 16-контактном корпусе может быть помещен лишь трехразрядный полный дешифратор. Если требуется создать дешифратор большей разрядности, используют каскадное соединение дешифраторов небольшой разрядности.

Пример 3.1. Пусть на основе трехразрядных дешифраторов необходимо создать пятиразрядный (рис. 3.13).

Рис. 3.13. Схема наращивания размерности дешифратора

Решение. Пятиразрядный дешифратор должен иметь 25 = 32 выходов. Разделим пять разрядов на младшие x2, x1, x0 и старшие x4, х3. Тогда младшие можно подать на входы четырех 3-разрядных дешифраторов второго каскада и сформировать 8 • 4 = 32 выхода. Используя входы разрешения ΕΝ, можно выбирать один из четырех дешифраторов второго каскада, на котором должен сформироваться единичный сигнал. Для этого старшие два разряда подадим на входы управляющего дешифратора первого каскада, а его выходы подключим к входам разрешения ΕΝ дешифраторов первого каскада.

Пусть, например, входной код равен 11011 = 2710. Так как старшие разряды – "11", то управляющий дешифратор разрешит работу 4-го дешифратора второго каскада. При этом на выходах первых трех дешифраторов будут нули, а на выходе "3" четвертого дешифратора, т.е. F27 будет логическая единица.

Дешифраторы широко применяются в системах управления технологическими процессами. Многие исполнительные устройства, такие, как электродвигатель, исполнительный механизм на основе электромагнита, могут управляться всего двумя командами: "включить" и "выключить". При этом команде "включить" удобно сопоставить логическую "1", а команде "выключить" – логический "1". Для управления такими устройствами используют унитарные коды, в которых каждый разряд жестко связан с конкретным устройством. Количество управляемых устройств может составлять несколько десятков, и дешифратор должен иметь соответствующее число выходов.

На рис. 3.14 показана схема управления восемью исполнительными устройствами на основе дешифратора. Схема содержит восемь аналогичных цепей, обеспечивающих включение/отключение исполнительного устройства. Состояние исполнительного устройства фиксируется элементом памяти, в качестве которого чаще всего используется триггер (см. параграф 3.9). Верхний вход обеспечивает включение элемента, а нижний – выключение. Сигнал, определяющий включенное или выключенное состояние, поступает на соответствующие схемы И (верхние или нижние) всех элементов памяти, но воспринимается этот сигнал только тем элементом, который выбирается дешифратором. Для этого на схему управления вместе с сигналами ВКЛ/ВЫКЛ одновременно подается код, поступающий на дешифратор и определяющий номер исполнительного устройства. Сигнал с выхода элемента памяти усиливается и поступает в цепь включения исполнительного устройства. Здесь возможна установка оптронной гальванической развязки (см. параграф 2.10), электромагнитного реле, обеспечивающего подачу высокого включающего напряжения, например = 220 В, электромагнитного пускателя, подающего трехфазное напряжение на электродвигатель.

Рис. 3.14. Схема управления исполнительными устройствами технологической системы на основе дешифратора

Шифраторы

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

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

Проиллюстрируем синтез схемы шифратора при п = 3. Таблица истинности имеет вид, приведенный в табл. 3.6.

Таблица 3.6

Входы

х

Выходы

Входы

х

Выходы

y3

y2

y1

y3

y2

y1

0

0

0

0

4

1

0

0

1

0

0

1

5

1

0

1

2

0

1

0

e

1

1

0

3

0

1

1

7

1

1

1

Работа шифратора описывается тремя функциями у3, у2, y1, каждая из которых равна единице на четырех наборах (номер набора соответствует номеру входа). СовДНФ функций выхода равны:

Три функции реализуются тремя дизъюнкторами (рис. 3.15), на выходах которых формируется трехразрядный двоичный код.

Рис. 3.15. Шифратор на три выхода

При этом аргумент x0 не входит ни в одну из логических функций и шина x0 остается незадействованной. Действительно, входному сигналу х0 должен соответствовать код "000", который все равно будет на выходе шифратора, если все остальные аргументы равны нулю.

Кроме обычных шифраторов существуют также приоритетные шифраторы. Такие шифраторы выполняют более сложную операцию. При работе ЭВМ и других устройств часто решается задача определения приоритетного претендента на обслуживание. Несколько конкурентов выставляют свои запросы на обслуживание, которые не могут быть удовлетворены одновременно. Нужно выбрать, кому предоставляется право первоочередного обслуживания. Простейший вариант задачи – присвоение каждому источнику запросов фиксированного приоритета. Например, группа из восьми запросов R7, ..., R0 (R – от англ. request – запрос) формируется гак, что высший приоритет имеет источник номер семь, а далее приоритет уменьшается от номера к номеру. Самый младший приоритет у пулевого источника – он будет обслуживаться только при отсутствии всех других запросов. Если имеются одновременно несколько запросов, обслуживается запрос с наибольшим номером.

Приоритетный шифратор вырабатывает на выходе двоичный номер старшего запроса. При наличии всего одного возбужденного входа приоритетный шифратор работает так же, как и двоичный. Поэтому в сериях ИС двоичный шифратор как самостоятельный элемент может отсутствовать. Режим его работы – частный случай работы приоритетного шифратора.