
Глава 3. Цифровой логический уровень
выбранной
линии входа. Каждый вентиль И запускается
определенной комбинацией
линий управления. Схема мультиплексора
показана на рис. 3.10. Если к этому добавить
источник питания и «землю», то
мультиплексор можно запаковать в
корпус с 14 выводами.
D4
А
В Рис. 3.10. Схема восьмивходового
мультиплексора
Используя мультиплексор, мы можем реализовать функцию большинства (см. рис. 3.3, а), как показано на рис. 3.11, б. Для каждой комбинации А, В и С выбирается одна из входных линий. Каждый вход соединяется или с Vcc (логическая 1), или с «землей» (логический 0). Алгоритм соединения входов очень прост: входной сигнал Di такой же, как значение в строке i в таблице истинности. На рис. 3.3, а в строках 0, 1, 2 и 4 значение функции равно 0, поэтому соответствующие входы заземляются; в оставшихся строках значение функции равно 1, поэтому соответствующие входы соединяются с логической 1. Таким способом можно реализо* вать любую таблицу истинности с тремя переменными, используя микросхему на рис. 3.11, а.
Мы уже видели, как мультиплексор может использоваться для выбора одного из нескольких входов и как он может реализовать таблицу истинности. Его также можно использовать в качестве преобразователя параллельного кода в последова-
Основные цифровые логические схемы
153
тельный. Если подать 8 битов данных на линии входа, а затем переключать линии управления последовательно от 000 до 111 (это двоичные числа), 8 битов поступят на линию выхода последовательно. Обычно такое преобразование осуществляется при вводе информации с клавиатуры, поскольку каждое нажатие клавиши определяет 7- или 8-битное число, которое должно передаваться последовательно по телефонной линии.
Vcc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
Do - |
|
|
|
|
|
|
|||||
|
|
|
|||||||||
3. *. |
|
|
|
|
|
||||||
D2 *■ |
|
|
|
|
|
|
|||||
|
|
|
|||||||||
D3 *■ D4 »- |
|
|
|
|
|
|
|||||
|
|
||||||||||
D5 »- |
|
|
|
|
|
||||||
D6 ^ |
|
|
|
|
|
|
|||||
|
|
||||||||||
D7 ^ |
|
|
|
|
|
||||||
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|||
|
ABC |
ABC |
|||||||||
|
|
a |
|
|
|
|
|
|
6 |
|
|
Рис. 3.11. Мультиплексор, построенный наСИС(а); тот же мультиплексор, смонтированный для вычисления функции большинства (б)
Противоположностью мультиплексора является демультиплексор, который соединяет единственный входной сигнал с одним из 2" выходов в зависимости от значений п линий управления. Если бинарное значение линий управления равно к, то выбирается выход к.
Декодеры
В качестве второго примера рассмотрим схему, которая получает на входе п-бит-ное число и использует его для того, чтобы выбрать (то есть установить на значение 1) одну из 2" выходных линий. Такая схема называется декодером. Пример декодера для п=3 показан на рис. 3.12.
Чтобы понять, зачем нужен декодер, представим себе память, состоящую из 8 микросхем, каждая из которых содержит 1 Мбайт. Микросхема 0 имеет адреса от 0 до 1 Мбайт, микросхема 1 — адреса от 1 Мбайт до 2 Мбайт и т. д. Три старших двоичных разряда адреса используются для выбора одной из восьми микросхем. На рис. 3.12 эти три бита — три входа А, В и С. В зависимости от входных сигналов ровно одна из восьми выходных линий (Do,..., D7) принимает значение 1; остальные линии принимают значение 0. Каждая выходная линия запускает одну из восьми микросхем памяти. Поскольку только одна линия принимает значение 1, запускается только одна микросхема.