ЛОГИЧЕСКИЕ ФУНКЦИОНАЛЬНЫЕ УЗЛЫ
Логическими или комбинационными называют функциональные узлы, которые построены только на логических элементах и не содержат элементов памяти (триггеров). Состояние логического функционального узла однозначно определяется комбинацией входных сигналов и не зависит от предыдущего состояния. К логическим относятся такие цифровые узлы, как шифраторы, дешифраторы, сумматоры, устройства сравнения (компараторы), мультиплексоры, преобразователи кодов и др. [14, 37].
Рис. 4.22. Реализация функций И, ИЛИ, НЕ: а — на логическом элементе И-НЕ; б — на логическом элементе ИЛИ гг. НЕ
Рис. 4.23. Сумматор по модулю 2:
а — функциональная схема на логических элементах И — НЕ- б — И — ИЛИ — НЕ; а — И — ИЛИ; г — условное обозначение; д — условное обозначение логического элемента «Исключающее ИЛИ»
Любая сколь угодно сложная логическая функция может быть реализована на наборе логических элементов И, ИЛИ, НЕ. В этом смысле такой набор элементов называют функционально полным. Однако, как правило, в составе серий цифровых микросхем имеются элементы И — НЕ либо ИЛИ — НЕ, а также более сложные логические элементы И — ИЛИ — НЕ. На рис. 4.22 показано, что на любом из этих элементов реализуется функционально полная система логических функций и, следовательно, любой из указанных элементов обладает свойством функциональной полноты. А это, в свою очередь, означает, что любой логический узел можно построить на микросхемах одной выбранной серии. В составе серий обычно находятся логические микросхемы, содержащие элементы с разным числом входов, с различной нагрузочной способностью, допускаю, щие увеличение числа входов, имеющие возможность объединения по выходу с другими элементами и т. д.
Такое разнообразие логических элементов в составе серии позволяет выбрать из них наиболее подходящие для конкретного цифрового устройства и тем самым обеспечить наилучшие электрические и конструктивно-технологические показатели.
На основе логических элементов можно реализовать любой из комбинационных узлов.
Однако следует иметь в виду, что такие узлы сейчас выполняют в виде микросхем, которые включены в состав многих популярных серий (см. § 4.7).
Рассмотрим типичные схемотехнические решения по построению логических функциональных узлов и примеры их реализации на микросхемах [14].
Сумматор по модулю 2 — цифровой узел с m входами и одним выходом, работающий в соответствии со следующим правилом: сигнал 1 появляется на его выходе всякий раз, когда в наборе входных сигналов содержится нечетное число 1. Поэтому этот узел еще называют схемой проверки на четность. В частном случае при числе входов, равном 2, сумматор по модулю 2 выполняет функцию логического элемента «Исключающее ИЛИ»: на выходе 1 будет только при 1 на одном из входов. Функциональная схема двухвходово-го сумматора по модулю 2, выполненного на логических элементах И — НЕ, приведена на рис. 4.23,а. В корпусе микросхемы К155ЛП5 четыре таких сумматора. Для обозначения логической операции суммирования по модулю 2 принят символ ф.
Рис. 4.24. Многовходовый сумматор по модулю 2 на микросхеме К155ЛП5
Рис. 4.25. Полусумматор: а — функциональная схема; б — условное обозначение
Если входные сигналы имеют парафазную форму представления, т. е. представлены своими прямыми и инверсными-значениями, то операцию суммирования по модулю 2 двух переменных можно выполнить на одном элементе И — ИЛИ — НЕ (рис. 4.23,6) либо И — ИЛИ (рис. 4.23,в).
Примером реализации многовходного сумматора по модулю 2 может служить функциональный узел на микросхеме К155ЛП5 (рис. 4.24). Другой пример — микросхема К155ИП2, имеющая восемь входов и два выхода: на одном из них сигнал 1 появляется при четном числе единиц в наборе входных сигналов, а на другом — при нечетном.
Полусумматор — это узел, имеющий два входа и два выхода и выполняющий операцию арифметического сложения двух одноразрядных чисел А и В в соответствии со следующим правилом: при любых наборах сигналов Л и В на выходе сигнала суммы S' формируется результат сложения по модулю 2, на выходе сигнала переноса Р' во всех случаях будет 0, кроме А=В=1, когда Р'= 1.
Таким образом, для реализации полусумматора необходимы сумматор по модулю 2 и логический элемент И (рис. 4.25).
Полный одноразрядный сумматор выполняет операцию арифметического сложения двух одноразрядных чисел At и Bt с учетом переноса из младшего разряда Рi-1. Он имеет три входа и два выхода для сигнала суммы Si и сигнала переноса Pt. Правило работы сумматора определяется табл. 4.6.
Пример реализации полного одноразрядного сумматора приведен на рис. 4.26.
Таблица 4.6
Входы |
Выходы |
Входы |
Выходы |
||||||
Аi |
Bi |
Pi-1 |
Si |
Рi |
Аi |
Вi |
Pi-1 |
Si |
Рi |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
Рис. 4.26. Одноразрядный сумматор
Многоразрядные сумматоры выполняют операцию арифметического сложения двух двоичных чисел. Число входов и выходов сумматора определяется разрядностью слагаемых. По организации переноса различают сумматоры с последовательным переносом (рис. 4.27) и параллельным переносом. По первому способу построен, например, четырехразрядный сумматор К155ИМЗ. Быстродействие такого сумматора определяется временем распространения сигнала переноса через всю схему и поэтому значительно ниже быстродействия ее элементов.
Рис. 4.27. Четырехразрядный сумматор с последовательным переносом
Таблица 4.7
x1 |
х2 |
x3 |
x4 |
х5 |
х6 |
x7 |
Уз |
У2 |
У1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
В составе некоторых серий име ются микросхемы, выполняющие функции СУП, например К155ИП4. Шифратор (кодер) — цифровой узел с m входами и п выходами, преобразующий сигнал 1 на одном из входов в «-элементный параллельный код на выходах. Пример реализации шифратора с семью входами и тремя выходами на логических элементах ИЛИ праведен на рис. 4.28. Правило работы шифратора определяется табл. 4.7.
Дешифратор (декодер) — цифровой узел, выполняющий операцию преобразования m-элементного входного кода в сигнал 1 на одном из выходов (дешифратор высокого уровня), либо в сигнал О на одном из выходов (дешифратор низкого уровня). Так как на m входах может быть 2т наборов входных переменных, максимальное число выходов равно 2т. Если используются все выходы, дешифратор называется полным, если же число выходов меньше 2т — неполным.
На рис. 4.29 приведен дешифратор состояний десятичного счетчика, построенный на элементах И в соответствии с табл. 4.8, в которой символом Q4 обозначен выход старшего разряда, a Q1 — младшего разряда счетчика. Подобную структуру имеет дешифратор К155ИД1.
Рис. 4.28. Шифратор
а — функциональная схема; б — условное обозначение
Рис. 4.29. Дешифратор
Кодопреобразователи предназначены для преобразования т-элементного параллельного кода на входе и я-элементный параллельный код на выходе. На рис. 4.30 приведен преобразователь кода 8 — 4 — 2 — 1 в код управления семисегментным индикатором (при 1 сегмент «горит»), выполненный в виде микросхемы К514ИД1.
Таблица 4.8
Номер набора I |
Q4 |
Q3 |
Q2 |
Q1 |
У0 |
У1 |
У2 |
У3 |
У4 |
У5 |
У6 |
У7 |
У8 |
У9 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
2 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
о |
3 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
4 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
5 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
6 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
7 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
8 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
9 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
Другие примеры — микросхемы 133ПП4. К514ИД2, предназна ченные для управления семисегментным полупроводниковым индикатором типа АЛ304. В ряде серий, например К176, имеются микросхемы счетчиков с встроенным кодопреобразователем на выходе.
Существует еще один способ построения кодопреобразователя — соединение дешифратора и шифратора. Этот способ целесообразно применять тогда, когда удается подобрать микросхемы повышенного уровня интеграции, содержащие шифратор и дешифратор с заданными кодами. В частном случае длина кодов может быть одинаковой.
Устройство сравнения (цифровой компаратор) предназначено для сравнения двух многоразрядных двоичных чисел. В простейшем случае требуется лишь установить факт равенства чисел А и В. Такая задача возникает, например, при сравнении постоянного числа A с числом B, которое в каждый очередной такт изменяет свое значение на 1 (увеличивается или уменьшается). В момент, когда числа А к В становятся равными, на выходе устройства сравнения возникает сигнал — переход из 0 в 1 или из 1 в 0.
Рис. 4.30. Преобразователь двоично-десятичного кода в семиэлементпый код для управления индикатором
Рис. 4.31. Цифровой компаратор
Для определения момента, когда A=B, производится поразрядное суммирование по модулю 2. При я-разрядных числах устройство состоит из n сумматоров по модулю 2, выходы которых подключены к элементу ИЛИ. Только при совпадении значений всех разрядов чисел А и В на выходах всех сумматоров будет 0. Если же числа отличаются хотя бы в одном разряде, на выходе соответствующего сумматора и, следовательно, на общем выходе будет 1.
При применении элемента ИЛИ — НЕ, наоборот, равенству чисел соответствует выходной сигнал 1.
От таких устройств обычно требуется высокое быстродействие. Выходной сигнал должен появиться и произвести нужное действие в том же такте, т. е. до очередного изменения числа В.
Схема для я= 5 при использовании быстродействующих элементов серии К137 — полусумматоров (К137ИЛЗ) и элемента ИЛИ — НЕ/ИЛИ (К137ЛК18) приведена на рис. 4.31. При А — В, F=1. В полусумматорах здесь использованы только выходы суммы, т. е. они применены в качестве сумматоров по модулю 2.
В некоторых устройствах, предназначенных для обработки цифровой информации, находит применение узел сравнения чисел с определением знака неравенства, т. е. А>В или A<B. Устройство в этом случае получается более сложным. Число входов его равно 2и, а число выходов 3: FА>B, FA=B, FА>В.
Устройство сравнения выполняют и в виде отдельных микросхем. Так, например, микросхема К564ИП2 позволяет сравнивать два четырехразрядных числа с определением знака неравенства. Условное обозначение такой микросхемы приведено на рис. 4.32.
Рис. 4.32. Цифровой компаратор К564ИП2 Рис. 4.33. Мультиплексор
Устройство сравнения обладает свойством наращиваемости. Для сравнения, например, восьмиразрядных чисел можно применить две четырехразрядных схемы. Для этой цели в микросхеме К564ИП2 предусмотрены три дополнительных входа: А>В, A=В, A<B, к которым подводятся соответствующие выходы микросхемы, выполняющей сравнение младших разрядов.
Мультиплексором называется управляемый кодом коммутатор нескольких входов на один выход. Мультиплексор имеет две группы входов. К первой труппе входов подводят каналы, по которым передается информация. На входы второй группы (управляющие) одновременно подают кодовую комбинацию, в соответствии с которой тот или иной информационный вход подключается к выходу.
Таблица 4.9
x1 |
х2 |
X3 |
F |
x1 |
x2 |
x3 |
F |
0 |
0 |
0 |
f0 |
1 |
0 |
0 |
f4 |
0 |
0 |
1 |
f1 |
1 |
0 |
1 |
f5 |
0 |
1 |
0 |
f2 |
1 |
1 |
0 |
f6 |
0 |
1 |
1 |
f3 |
1 |
1 |
1 |
f7 |
К каждому элементу И дешифратора ( число их равно числу коммутируемых каналов) подводятся переменные управляющего кода и соответствующий канал. Они, таким образом, служат одновременно и коммутирующими элементами. Выходы всех элементов И объединяются элементом ИЛИ либо ИЛИ—НЕ.
На рис. 4.33 изображена схема мультиплексора на восемь входов, управляемого трехэлементным кодом. Работа этого узла отображается табл. 4.9. Каждый набор переменных xi, х2, xs обеспечивает подключение к выходу соответствующего входа. Наличие инвертора, имеющего выход F, не обязательно, если фаза коммутируемых сигналов не имеет значения. Мультиплексор может быть реализован и на элементах И — ИЛИ — НЕ.
Мультиплексоры, подобные рассмотренному,, выпускают в виде микросхем. Примерами могут служить микросхемы 134KTI5, 133КП7 и др.
Мультиплексоры могут быть стробируемыми. В них коммутация выбранного канала осуществляется не на все время, в течение которого на управляющих входах действует данная кодовая комбинация, а лишь на время, равное длительности стробирующего импульса. Этот импульс так же как и в дешифраторах подается на дополнительные входы элементов И. Такой мультиплексор на восемь каналов содержит, например, микросхема 133КП7.