
Вводый курс цифровой электроники (К.Фрике, 2003)
.pdfГлава 9. Мультиплексоры |
и преобразователи |
кода |
В логическом символе преобразователя кода 7442 указаны оба кода, между которыми происходит трансформация. В данном слу чае это BCD/DEC, что означает из двоично-десятичного кода в де сятичный код. Разряды двоично-десятичного кода (BCD) даны вну три обрамления символа слева. На правой стороне указаны разряды j\jisi выходов.
Таблица 9.2. Таблица истинности преобразователя 7442 двоично-десятич ного кода в десятичный код
десятичный |
ХЗ |
Х2 |
|
XI |
XQ |
У9 |
2/8 |
У7 |
Уб |
Уъ |
УА |
УЗ |
|
У2 |
УХ УО |
0 |
0 |
0 |
|
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
|
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
2 |
0 |
0 |
|
1 |
0 |
|
|
|
|
|
|
|
|
|
|
3 |
0 |
0 |
|
1 |
1 |
|
|
|
|
|
|
|
|
|
|
4 |
0 |
1 |
0 |
|
0 |
|
|
|
|
|
|
|
|
|
|
5 |
0 |
1 |
0 |
|
1 |
|
|
|
|
|
|
|
|
|
|
6 |
0 |
|
1 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
7 |
0 |
|
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
8 |
1 |
0 |
|
0 |
0 |
|
|
|
|
|
|
|
|
|
|
9 |
1 |
0 |
|
0 |
1 |
|
|
|
|
|
|
|
|
|
|
10 |
1 |
0 |
|
1 |
0 |
|
|
|
|
|
|
|
|
|
|
11 |
1 |
0 |
|
1 |
1 |
|
|
|
|
|
|
|
|
|
|
12 |
1 |
1 |
0 |
|
0 |
|
|
|
|
|
|
|
|
|
|
13 |
1 |
1 |
0 |
|
1 |
|
|
|
|
|
|
|
|
|
|
14 |
1 |
1 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
|
15 |
1 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
|
9.2.2.Демультиплексор
Преобразователи кода, которые преобразуют двоичный код в код 1 из п, могут быть использованы в качестве демультиплексоров. Демультиплексор выполняет задачу, обратную задаче мультиплек сора. Демультиплексор коммутирует входной сигнал Е к выходам, выбираемым с помощью адресных шин.
В качестве примера используем для этой цели преобразователь дво ично-десятичного кода в десятичный код. Для этого имеющий наи большую значимость вход использован как вход данных Е (рис. 9.8).
Входы Х2, xi и а;о становятся адресными входами демультиплексора. Они выбирают выход. В качестве выходов применяются толь ко электроды от О до 7. Функцию определяет таблица истинности
9.2. Преобразователь |
кода |
(табл. 9,2). А именно, имеющий наибольшее значение вход xs опре деляет, имеет ли выбранный с помощью входов а;25 ^i и XQ ВЫХОД состояние О или 1. Для этой цели можно было бы также использо вать двоичное число, полученное преобразователем восьмеричного кода с 8-ю выходами.
BCD/DEC
|
|
Уо |
|
|
у\ |
|
|
У2 |
|
|
Уъ |
|
|
У4 |
|
Hi |
У5 |
|
У6 |
|
|
|
|
|
и |
У1 |
|
|
|
Х2 |
р- |
|
|
|
|
Xi |
|
|
Рис . 9.8. Применение преобразователя десятичного кода в качестве демультиплексора.
Мультиплексор и демультиплексор могут совместно образовать линию передачи данных, позволяющую передавать п параллельных потоков данных по одному проводу. Принцип этого показан на рис. 9.9. На адресные входы мультиплексора и демультиплексора периоди чески подаются адреса от О до 7. Благодаря этому каждый вход ной сигнал li переносится в одну восьмую интервала времени на выход уг. Таким образом каждой линии с помощью данной систе мы выделен отрезок временного интервала. Метод называется вре менным мультиплексированием (time division multiple access, TDMA, коллективный доступ с временным разделением).
9.2.3.Генерирование наборов функций
Спомощью преобразователя кода, который трансформирует в код типа 1 из п, может осуществляться генерация набора функций. В ка честве примера рассмотрим реализацию четырех булевых функций
Уз? У2^ У1 и уо с тремя входами Х2^ xi и XQ. ОНИ приведены в табл. 9.5. В данном случае применен преобразователь двоичного кода в вось меричный код, реализуемый схемой 74138, поскольку этот преобра зователь кода имеет 3 входа и 8 выходов. На основании таблицы истинности можно сказать, что состояние выходов соответствуют
Глава 9. Мультиплексоры |
и преобразователи |
кода |
инвертированным минтермам. Альтернативно состояния выходов можно интерпретировать как макстермы функций.
/о
/ i
h h
/4
/5
/б
Ii
Х2 Xi
XQ
MUX |
BCD/DEC |
|
|
0 |
|
|
|
|
|
|
|
|
1 |
|
|
7 |
2 |
|
'3^2 |
3 |
|
||
|
|
Уз |
|
|
4 |
|
УA |
|
5 |
|
Уъ |
|
6 |
|
Уб |
|
7 |
р- |
Уп |
|
8 |
|
|
|
9 |
Р- |
|
Рис. 9.9. Принцип построения линии передачи данных с мультиплексором и демультиплексором.
Таблица 9.3. Таблица истинности функций ^/з, У2, yi, уо
десятичый |
Х2 |
3^1 |
Хо |
уз |
У2 |
?/1 |
2/0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
2 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
3 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
4 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
5 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
6 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
7 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
в зависимости от того, интерпретируются ли выходы как инвер тированные минтермы или как макстермы, возможны два варианта реализации. В первом случае будет образована DNF, во втором слу чае KNF.
Вслучае, если исходить из минтермов, необходимо действовать
вследующем порядке:
выход, ^\ля которого должно иметь место значение функции рав ное 1, необходимо подключить к NAND-вентилю (рис. 9.10). На основе инверсии выходов схемы 74138 и инверсии значения функции с по мощью NAND образуется логическая функция ODER, необходимая для формирования DNF.
9.3. Аналоговые мультиплексоры и демультиплексоры
BIN/OCT
|
0 --ч |
|
|
|
|
|
|
|
|
|
f\ |
|
|
|
p. |
^ |
_ _ _ _ _ ... |
|
|
J |
|
|
|
|
r^ |
—1Ш1 |
Хо |
|
J |
• |
|
|
|
|
—^Ш2 |
|
J |
|
|
|
|
|
—1АЛЗ |
|
|
|
|
|
|
|
|
||
Х2 |
5 |
J— |
|
|
|
|
|
|
J— |
|
|
|
|
|
|||
I |
|
|
|
|
|
|||
6 |
^— |
|
|
|
|
" " -«/W6 |
||
|
7 |
|
|
Д'згтттГ2 >'l Д'о |
||||
|
|
|
T |
|
|
T |
JPr |
|
|
|
4 > |
- " |
|
|
& |
II |
-лМу |
|
|
|
|
ОС |
ОС |
|
|
|
Рис. 9.10. Реализация DNF набора с помощью преобразователя кода
|
BIN/OCT |
|
|
|
|
|
|
|
--Л/о |
|
|
|
|
— М, |
^0 Н |
1 |
|
|
— Л/2 |
|
|
— Л/з |
||
Xi - | |
2 |
|
|
|
|
|
— Л/4 |
||
Х2 |
|
|
|
|
|
|
|
— Л/5 |
|
|
|
|
|
|
|
|
|
|
- л / б |
|
& |
& |
& |
& |
|
Уз |
Уг |
У\ |
Уо |
Рис. 9.11. Реализация KNF набора функций с помощью преобразователя кода.
Для образования KNF выходы интерпретируются как макстермы. Таким образом, мы подключаем выходы, входящие в состав входных векторов, которые должны иметь значение функции О, к И-вентилю (рис. 9.11), поскольку макстермы в KNF соединены в со ответствии логической функцией И.
9.3.Аналоговые мультиплексоры и демультиплексоры
При необходимости мультиплексирования аналоговых сигналов для коммутации могут быть использованы проходные вентили (trans-
Глава 9. Мультиплексоры |
и преобразователи |
кода |
mission-gates). Так как проходные вентили имеют инвертированный управляющий вход, мультиплексор должен иметь инвертирующие выходы. Схема мультиплексора показана на рис. 9.12. Поскольку она может быть использована потоков информации в обоих направле ниях, ее можно использовать как мультиплексор, и как демультиплексор для аналоговых и цифровых сигналов.
BIN/OCT
7
6
\ 5
^\
1
О Ях1
|
|
Ях1 |
|
|
Ях1 |
|
|
Ях1 |
so-i • |
- • Ч |
Ях1 |
|
||
|
|
Ях1 |
|
|
Ях1 |
S1
S6
S5
54
53
S2
51
Ях1
50
Рис . 9.12. Аналоговый мультиплексор (направление прохождения сигналов справа налево) и демультиплексор (направление прохождения сигналов слева направо)
9.4. Упражнения
Задача 9.1. Переключательная функция /(a2,ai,ao)7 заданная та блицей (рис. 9.13), должна быть реализована с помощью приведен ного мультиплексора. Укажите схему подключения к входам !{ и Xi.
Задача 9.2. Пусть необходимо реализовать логическую схему для функций Fo(ai, а2, «з) и Fi(ai, а2, «з) с помощью мультиплексора или с помощью преобразователя кода. Функции определяются табл. 9.4
9.4' Упраоюнения
а2 |
a i |
ао |
/ |
|
MUX |
|
|
|
EN |
|
|
||||
0 |
0 |
0 |
0 |
Хо — |
|
|
|
0 |
0 |
1 |
0 |
|
|
|
|
|
|
|
|
||||
0 |
1 |
0 |
1 |
|
|
f>-- |
|
0 |
1 |
1 |
0 |
lo |
0 |
•^y |
|
1 |
0 |
0 |
1 |
|
|
||
h— |
1 |
|
|
||||
1 |
0 |
1 |
1 |
|
|
||
1 |
1 |
0 |
0 |
h— |
2 |
|
|
3 |
|
|
|||||
1 |
1 |
1 |
1 |
|
|
||
|
|
|
|
Рис. 9.13.
a) Примените преобразователь кода 74138 (см. стр. 241) для ре ализации функций.
Таблица 9.4.
а2 |
« 1 |
ао |
Fo |
F i |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
б) Реализуйте эти функции с по |
|
|
74153 |
|
|
мощью схемного модуля 74153, ко |
|
1 |
?и |
|
|
торый содержит 2 мультиплексора |
XQ |
|
|
||
4:1. Логический символ 74153 пред |
Х\ |
- |
|
|
|
ставлен справа. |
|
|
MUX |
|
|
|
|
|
|
|
|
|
^ 1 - < : |
EN |
|
|
|
|
/in |
0 |
|
Уа |
|
|
/| |
— |
1 |
|
|
|
h — 2 |
|
|
||
|
h — 3 |
|
|
||
|
- ^ 7 |
^ |
EN |
|
|
|
/ о ~ |
0 |
|
|
|
|
/l |
— 1 |
j |
У\ |
|
|
h — |
2 |
|
||
|
h — |
3 |
|
|
246 Глава 9. Мультиплексоры и преобразователи кода
Задача 9.3. Спроектируйте преобразователь кода для трансфор мации восьмеричного кода в код Грея в соответствии со следующи ми таблицами.
Таблица 9.5. |
Таблица истинности функций ^/2, 2/i, Уо |
|
|
||
Вход |
Выход |
Вход |
Выход |
|
|
Х 2 Ж 1 Ж 0 |
2/2 2/1 |
Уо |
Х2 XI Хо |
У2 У1 уо |
|
000 |
000 |
|
100 |
110 |
|
001 |
001 |
|
101 |
111 |
|
010 |
011 |
j |
110 |
101 |
1 |
011 |
010 |
|
111 |
100 |
|
ГЛАВА IО
ЦИФРОВЫЕ
СЧЕТЧИКИ
Цифровые счетчики представляют собой асинхронные или синхрон ные драйверы, которые состоят, как правило, из соединенных цепоч кой триггеров. Содержание регистров интерпретируется как счет ное состояние счетчика.
10.1. Асинхронный счетчик
Асинхронные счетчики представляют собой асинхронные драйве ры, для которых не требуются тактовые сигналы. Входной сигнал с последовательностью подлежащих счету импульсов подводиться прямо к тактовому входу первого триггера. Тактовые входы сле дующих триггеров подключены к выходам предыдущих триггеров. В последующем в качестве примеров будут представлены две про стые схемы.
10.1.1. Двоичный счетчик по модулю 8
Двоичный счетчик по модулю 8 можно построить из JK-триггеров с управлением по отрицательному фронту, как это показано на рис. 10.1. J- и К-входы JK-триггеров установлены в состояние 1. При каждом отрицательном фронте на входе состояние на выходе первого триг гера изменяется. Точно также ведут себя выходы следующих триг геров.
Рис. 10.1. Двоичный счетчик по модулю 8, состоящий из трех JK-триг геров.
Глава 10. Цифровые счетчики
Результатом работы этой схемы является временная диаграм ма импульсов, показанная на рис. 10.2. После результата счета 111 счетчик опять возвращается к 000. Его называют счетчиком по мо дулю 8, так как он может периодически показывать 8 различных результатов счета.
Хх L
бо
А |
|
|
|
^ |
I |
1 |
1 |
1 |
1 ь. |
& А
Рис. 10.2. Временная диаграмма двоичного счетчика по модулю 8, пока занного на рис. 10.1.
Схема может быть использована также как делитель частоты. Как можно видеть на рис. 10.2, частота выходного сигнала каждой ступени равна половине частоты предыдущей ступени.
10.1.2. Счетчик по модулю 6
Асинхронный счетчик по модулю 6 можно получить путем расши рения счетчика по модулю 8. Д,ля этого необходимы JK-триггеры со входом установки в исходное состояние R. Триггеры устанавлива ются в исходное состояние тогда, когда достигнут результат счета 6(100).
Считывание производится с помощью подключения вентиля И к выходам Qi и Q2 (рис. 10.3). В счетчике по модулю 6 не должен выдаваться результат счета 110. Но как показано на временной диа грамме импульсов на рис. 10.4, это имеет место во время возврата в исходное состояние. Следовательно, возникает короткий импульспомеха, который при некоторых применениях не может быть допу стим.
10.1. Асинхронный счетчик |
249 |
Рис. 10.3. Двоичный счетчик по модулю б, состоящий из трех JK-триг- геров
^* |
4 |
1 |
2 |
3 |
4 |
п |
5 |
п |
6 |
1 |
2 |
Qo i i |
п п п п |
|
|
|
п |
/ |
|||||
|
|
|
|
|
|
|
|
|
|
||
б.. i |
|
|
|
— 1 1 |
|
\ |
|
г |
t |
||
|
|
|
|
|
|
|
|
|
|
—] к
Qi i i
1 V
t
fc_
Р и с . 10.4. Временная диаграмма двоичного счетчика по модулю 6, пока занного на рис. 10.3
10.1.3. Асинхронный обратный счетчик
Если асинхронный счетчик должен считать в обратном направле нии, то ко входам следующих ступеней должны быть подключены не выходы Qi триггеров, а инвертированные выходы — -^Qi (рис. 10.5). Благодаря этому JK-триггеры переключаются всегда положитель ным фронтом, и мы получим импульсную диаграмму, показанную на рис. 10.6.
При появлении падающего фронта входного сигнала первый триг гер переключается, и его выход переходит в состояние Н. Последу ющие триггеры в идеальном случае переключатся одновременно.