Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Элементы комбинационной схемотехники. Ч.1. Лабораторный практикум по курсу «Основы информационной техники». Учебное пособие
.pdf
Лабораторная работа 6
ПРИМЕНЕНИЕ МУЛЬТИПЛЕКСОРА
КАК МНОГОФУНКЦИОНАЛЬНОГО УЗЛА
ЦИФРОВЫХ УСТРОЙСТВ
Цель: изучить устройство и работу мультиплексора в каче-
стве многофункционального элемента цифровой электроники.
Введение
Все цифровые комбинационные узлы – многофункциональные,
т.е. они могут выполнять функции, специально для них не предусмотренные. В ряде случаев эти узлы обеспечивают некоторые
схемные преимущества перед специализированными, предназначенными для реализации этих функций. Мультиплексор является
наиболее характерным многофункциональным узлом. Структура и
разнообразные режимы работы универсального селекторамультиплексора позволяют использовать его в качестве коммутатора не только цифровых, но и аналоговых сигналов, в качестве
мажоритарной схемы с приоритетом или, например, в качестве
двоичного шифратора клавиатуры, не чувствительного к «дребезгу» контактов. Универсальность мультиплексора позволяет использовать его в микропроцессорных системах для повышения их
производительности за счет рациональной обработки сигналов запроса на прерывание. Различные варианты применения программируемого мультиплексора помогают в управлении прохождением
информации, расшифровки команд машин с микропрограммным
управлением для реализация цифрового хронирующего генератора.
Применение «статистических» или «разумных» мультиплексоров
дает возможность реализовать в сетях передачи данных многие
функции, свойственные более дорогим сетевым процессорам с
микропрограммным управлением и концентратором. Другим достоинством статистических мультиплексоров является то, что их
распределенная логика позволяет им работать в качестве модемов и
устройств коммутации.
81

Реализация произвольных функций алгебры логики
на мультиплексорах
Пусть требуется реализовать функцию алгебры логики (ФАЛ),
зависящую от двух переменных и представленную таблицей истинности (табл. 6.1).
Таблица 6.1
Таблица истинности ФАЛ
№ набора х1 х0 Y
0 0 0 1
1 0 1 0
2 1 0 0
3 1 1 1
Запишем уравнение переключательной функции в совершенной
дизъюнктивной нормальной форме (СДНФ) для этой функции и
одновременно уравнение для мультиплексора MUX 4 → 1:
, (6.1)
1001
⋅⋅+⋅+⋅+⋅= xxxxxxxxY
1212121ФАЛ
Y AAI AAI AAI A AI=⋅+⋅+ ⋅+⋅⋅. (6.2)
01 3 01 2 0 1 1 0 1 0MUX
Очевидно полное совпадение выражений (6.1) и (6.2), из кото-
рых следует: если логические переменные x
ветствующие адресные входы A
мационные входы I
, I1, I2 и I3 нужно подать, соответственно, 1, 0, 0
0
и A0 MUX 4 → 1, то на его инфор-
1
и x0 подать на соот-
1
и 1 (рис. 6.1).
В общем случае можно сформулировать
следующее правило: если количество логических переменных n, от которых зависит реализуемая ФАЛ, совпадает с разрядностью адресной части мультиплексора, то эти переменные
подаются на адресные входы мультиплексора
(старшая переменная − на старший адресный
вход), а на информационные входы мультиплексора MUX 2
n
→ 1 − константы 0 и 1 в со-
ответствии с таблицей истинности реализуемой ФАЛ.
82
Рис. 6.1. Реализация
ФАЛ при помощи
мультиплексора
MUX 4 → 1

Реализуем на том же MUX 4 → 1 ФАЛ, зависящую от трех пе-
ременных (табл. 6.2). Запишем для нее ДНФ, воспользовавшись
картой Карно, представленной на рис. 6.2:
210 210 21
.Yxxx xxx xx=⋅⋅+⋅⋅+⋅ (6.3)
Таблица истинности
№ набора
x1 x0
x
2
0 0 0 0 0
1 0 0 1 1
2 0 1 0 0
3 0 1 1 0
4 1 0 0 1
5 1 0 1 0
6 1 1 0 1
7 1 1 1 1
Таблица 6.2
Y
Рис. 6.2. Карта Карно
Преобразуем выражение (6.3) к виду, аналогичному выражению
(6.1):
,1)()(0)()(
⋅⋅+⋅⋅+⋅⋅+⋅⋅= xxxxxxxxxxY
(6.4)
где произведение
введено, чтобы в выражении (6.4) были
012⋅xx
представлены все четыре конституэнты единицы двух переменных
x
и x1.
2
Сравнивая выражения (6.4) и (6.2), видим их полное соответ-
ствие. Отсюда вывод: на адресные входы A
подать логические переменные x
I
, I2 и I3 для произвольной ФАЛ, зависящей от трех переменных, в
1
и x1, а информационные входы I0,
2
и A0 MUX 4 → 1 нужно
1
общем случае являются функциями от третьей переменной x
кие функции – 0, 1, x
x
и
0
. Реализация данной ФАЛ представлена
0
на рис. 6.3.
Тот же результат проще получить, если в табл. 6.2 выделить че-
тыре группы по две строки в каждой и отделить переменную x
x
и x1 (табл. 6.3).
2
83
1201212012
. Та-
0
от
0

Рис. 6.3. Принципиальная схема
x
x
Таблица истинности с выделенными четырьмя группами по две строки
№ набора
0
1
2
3
4
5
6
7
x1 x0 Y
x
2
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Таблица 6.3
0
1
0
0
1
0
1
1
Видно, что переменные x2 и x1 образуют четыре набора, на каж-
дом из которых функция Y зависит только от одной переменной x
причем значения Y = f (x
) легко выявляются из этой таблицы.
0
Для общего случая можно сформулировать следующее правило:
если количество логических переменных n, от которых зависит реализуемая ФАЛ, на единицу больше разрядности адресной части
мультиплексора, то данную ФАЛ можно реализовать на мультиплексоре MUX 2
n
→ 1 и одном инверторе.
Если распространить данный метод на реализацию ФАЛ, зави-
сящую от четырех переменных, на том же MUX 4 → 1, то очевидно, что если две старшие переменные x
но, на адресные входы A
и A0, то информационные входы будут
1
функциями двух младших переменных x
ций – 16, из них 6 – вырожденные (0, 1, x
и x2 подать, соответствен-
3
и x0. Всего таких функ-
1
, x0,
1
),
,
а 10 функ-
0
1
ций зависят от двух переменных, причем для реализации последних требуются 8 различных логических элементов (И; И-НЕ; ИЛИ;
0
,
84

ИЛИ-НЕ; а
функцию импликации;
ab ab⋅+⋅
b – элемент запрета; а + b – элемент, реализующий
·
ab ab⋅+ ⋅
– элемент равнозначности и
– элемент, реализующий сумму по модулю два). Итак,
кроме мультиплексора, для данной реализации потребуется в худшем случае восемь различных логических элементов, поэтому ее,
как правило, не рекомендуется использовать.
В некоторых частных случаях ФАЛ, зависящую от четырех переменных, можно реализовать с использованием только одного
мультиплексора MUX 4 → 1 без каких-либо логических элементов.
Рассмотрим эти случаи.
Пусть требуется реализовать ФАЛ, представленную картой
Карно (рис. 6.4).
Рис. 6.4. Карта Карно
Если две старшие переменные x3 и x2 подать на адресные входы
и A0 MUX 4 → 1, то информационные входы I0, I1, I2 и I3 можно
A
1
представить четырьмя картами Карно для двух переменных x
(рис. 6.5).
а б в г
Рис. 6.5. Карты Карно для информационных входов I0−I3
Эти карты являются в данном случае строками карты Карно,
представленной на рис. 6.4.
Из рис. 6.5 следует: I
ветствующая схемная реализация показана на рис. 6.6.
= x
0
, I1 = x0, I2 = x1 и I3 = x1 + x0. Соот-
1·x0
85
и x0
1

Рис. 6.6. Схема, реализующая ФАЛ, заданная картами Карно (см. рис. 6.5)
Подадим теперь на адресные входы A1 и A0, соответственно, переменные x
представить четырьмя картами Карно для двух переменных x
(рис. 6.7), причем эти карты в данном случае − столбцы карты Карно, данной в табл. 6.3.
и x0, тогда информационные входы I0, I1, I2 и I3 можно
1
и x2
3
3–I0
а б в г
Рис. 6.7. Карты Карно для информационных входов I
Из рис. 6.7 следует: I0 = 0, I1 = x2, I2 = x3 и
= 1. Соответствующая реализация – на
I
3
рис. 6.8. Сравнивая рис. 6.6 и 6.8, делаем
очевидный вывод о предпочтительности
реализации, представленной на рис. 6.8, так
как здесь не требуется никаких логических
элементов.
Для поиска рациональной структуры по
данной методике в общем случае потребуется анализ шести вариантов подачи двух
различных переменных из четырех на ад-
Рис. 6.8. Схема, реали-
зующая ФАЛ, пред-
ставленная картами
Карно (рис. 6.7)
ресные входы MUX 4 → 1 (здесь шесть – это
число различных сочетаний из четырех переменных по две).
Проще рациональную структуру выявить, выполняя следующие
процедуры:
−
записать реализуемую ФАЛ в ДНФ; в нашем случае из
рис. 6.8 следует
86

x
x
Y = x
− определить две переменные, наиболее часто встречающиеся
в различных простых импликантах; из (6.5) это x
встречаются по два раза, а переменные x
но переменные x
ресные входы A
используя правило развертывания, законы дополнительно-
−
и x0 необходимо подать на соответствующие ад-
1
и A0 MUX 4 → 1;
1
сти, одинарных элементов, поглощения и распределительный закон
первого рода, преобразовать ДНФ к виду, когда в выражении для
реализуемой ФАЛ присутствуют все четыре конституэнты единицы двух переменных, выявленных в предыдущей процедуре; в
нашем случае имеем
Y = x3⋅x1 + x1⋅x0 + x2⋅x0 = x3⋅x1 ⋅1 + x1⋅x0 + x2 ⋅1 ⋅ x0 =
= x
= x
= x
= x
⋅ (x0 + 0)x + x1⋅x0 + x2⋅ (x1 +1)x⋅x0 =
3⋅x1
+ x3⋅x1⋅
3⋅x1⋅x0
⋅
⋅x0 + x3⋅x1⋅0x + x1⋅x0⋅(1 + x3 + x2) =
x
2
1
⋅
⋅x0 + x3⋅x1⋅0x + x1⋅x0.
x
2
1
Представим теперь выражение (6.6) в виде, аналогичном выра-
жению (6.1):
Y =
xx ⋅ ⋅ 0 +
01
Сравнивая (6.7) и (6.2), выявляем: I0 = 0, I1 = x2, I2 = x3 и I3 = 1
(см. рис. 6.8). Эту методику можно распространить и на реализацию систем двух или четырех ФАЛ с использованием 2- или
4-разрядных мультиплексоров, имеющих общую адресную часть.
Рациональный выбор переменных, подаваемых на адресные входы
мультиплексоров, определяется подсчетом общего числа каждой
переменной, входящей в две или четыре функции, и в качестве адресных выбираются те, которые встречаются наибольшее число раз
во всех простых импликантах всех реализуемых ФАЛ.
Если использовать стробируемые MUX 2
стояния выхода, то любую ФАЛ, зависящую от n + 2 переменных,
легко реализовать на двух стробируемых мультиплексорах и двух
инверторах. Один из инверторов используется в цепи стробирова-
+ x
3·x1
+ x1⋅x0 + x2⋅x1⋅x0 + x2⋅
0
x
1
1·x0
+ x
; (6.5)
2·x0
и x0, так как они
1
и x2 – только один; имен-
3
⋅x0 = (6.6)
1
⋅x0⋅x2 + x1⋅0x ⋅x3 + x1⋅x0 ⋅1. (6.7)
n
→ 1, имеющие три со-
87

ния одного из мультиплексоров, другой – на их информационных
входах.
Пример. Пусть требуется реализовать ФАЛ, представленную
картой Карно на рис. 6.9.
Рис. 6.9. Карта Карно
Будем использовать стробируемые мультиплексоры типа MUX
4 → 1, имеющиt три состояния выхода и активный уровень «0» на
стробирующих входах. Представим эту карту в виде двух, зависящих от трех младших переменных (рис. 6.10).
а б
Рис. 6.10. Карты Карно
Подавая переменную x3 непосредственно на стробирующий
вход одного из мультиплексоров MUX 4 → 1, мы реализуем функцию y
внешний инвертор на вход другого – y
что Y = y
(карта Карно, см. рис. 6.10,а) и через дополнительный
1
(см. рис. 6.10,б). Очевидно,
2
+ y2, причем логическая операция «ИЛИ» здесь – мон-
1
тажная операция соединения в единую цепь выходов этих двух
мультиплексоров. Подавая переменные x
адресные входы A
и A0, а переменную x0 непосредственно или че-
1
и x1 на соответствующие
2
рез второй дополнительный внешний инвертор вместе с константами 0 и 1 на информационные входы мультиплексоров, получаем
окончательную реализацию ФАЛ (рис. 6.11).
88

Рис. 6.11. Реализация ФАЛ, представленная картой Карно (см. рис. 6.9)
Надо отметить, что функции y
и y2 можно реализовать по раци-
1
ональным структурам, способы получения которых описаны ранее,
так как на адресные входы двух мультиплексоров необязательно
подавать одни и те же переменные.
Реализацию одной ФАЛ на мультиплексоре можно рассматривать как одноразрядное постоянное запоминающее устройство
(ПЗУ), а системы из n ФАЛ, зависящих от одних и тех же переменных, – как n-разрядное ПЗУ.
Мультиплексор как многофункциональный узел
Работа мультиплексора в режиме сдвигателя
Сдвигателем называется цифровой комбинационный узел,
предназначенный для сдвига n-разрядного слова на любое число
разрядов в диапазоне от 0 до m за один такт. Имеется в виду, что
смена однопозиционного управляющего сигнала вызывает немедленное (через время, определяемое задержками распространения
сигналов через логические элементы) выполнение требуемой микрооперации.
89

Рассмотрим уравнения (6.8) для сдвигателя с параметрами n = 4,
m = 3. Это значит, что разрядность входного слова X = {x
x
} − n = 4, разрядность выходного слова Y = {y6, y5, y4, y3, y2, y1,
0
y
} − n + m = 7 , сдвиг может быть реализован на 0, 1, 2 и, макси-
0
, x2, x1,
3
мум, на три разряда:
y
= S0 ⋅ x0,
0
y
= S0 ⋅ x1 + S1 ⋅ x0,
1
y
= S0 ⋅ x2 + S1 ⋅ x1 + S2 ⋅ x0,
2
y
= S0 ⋅ x3 + S1 ⋅ x2 + S2 ⋅ x1 + S3 ⋅ x0, (6.8)
3
y
= S1 ⋅ x3 + S2 ⋅ x2 + S3 ⋅ x1,
4
= S2 ⋅ x3 + S3 ⋅ x2,
y
5
y
= S3 ⋅ x3,
6
где S0 – однопозиционный управляющий сигнал; при его активном
состоянии S
го слова на выход без сдвига, при S
= 1 и S1 = S2 = S3 = 0 обеспечивается передача входно-
0
= 1 и S0 = S2 = S3 = 0 осуществ-
1
ляется сдвиг входного слова на один разряд и т. д.
Для реализации этих уравнений требуются двухвходовые элементы «И» и элементы «ИЛИ» на 2, 3 и 4 входа. Поскольку в данном случае выполняется четыре микрооперации (m = 0, 1, 2 или 3),
то наиболее просто реализовать такой сдвигатель на семи MUX
4 → 1, используя их адресные входы как управляющий код числа m
(табл. 6.4).
Таблица 6.4
Таблица управляющих кодов
№ набора A1 A0 Сдвиг
0 0 0 0
1 0 1 1
2 1 0 2
3 1 1 3
Принципиальная схема такого сдвигателя приведена на
рис. 6.12. На свободные входы мультиплексоров подаются сигналы, характер которых определяется конкретным алгоритмом, реализуемым операционным узлом (логический, арифметический,
циклический сдвиг и т.п.).
90
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
