Назначение переменных для мультиплексора
Я должен реализовать мультиплексор 8-к-1, используя переменные m(1,3,5,6,8,13). Функция:
F(A,B,C,D) = A′B′C′D + A′B′CD + A′BC′D + A′BCD′ + AB′C′D′ + ABC′D
Я чувствую, что у меня есть общее представление о том, как работают мультиплексоры, однако я не совсем уверен, что делать с приведенными числами. Я создал таблицу истинности с ABCD и подключил ее к функции. Затем я создал мультиплексор на основе вывода. (Который я должен быть: D', D', D', D, D, 0, D', 0) Единственное, что я не сделал, и я не могу понять, как это сделать, это переменные, Как они связаны с функцией и мультиплексором?
1 ответ
Мультиплексор работает как коммутатор. Он выбирает один из доступных входов I и на основе заданных битов адреса S отправляет значение выбранного входа на выход Z.
Например:
–––––––––––
| MUX | +-------++-----+-----++-----+
| | | index || a_1 | a_0 || f |
D_0 –––| I_0 | |---------------------------|
D_1 –––| I_1 Z |––– f | 0 || 0 | 0 || D_0 |
D_2 –––| I_2 | | 1 || 0 | 1 || D_1 |
D_3 –––| I_3 | | 2 || 1 | 0 || D_2 |
| | | 3 || 1 | 1 || D_3 |
| S | +-------++-----+-----++-----+
–––––––––––
| |
a_1 a_0
В примере определяется функция вывода:
f = ¬a_1⋅¬a_0⋅D_0 + ¬a_1⋅a_0⋅D_1 + a_1⋅¬a_0⋅D_2 + a_1⋅a_0⋅D_3
В вашем случае выход описывается заданной функцией четырех переменных, и мультиплексор должен быть 8:1, поэтому в качестве адресных битов будут использоваться три переменные (a, b и c) и четвертая (d).) как разделенный входной сигнал - параметр функции f (d), представляющий выходное значение.
f(a,b,c,d)=¬a⋅¬b⋅¬c⋅d + ¬a⋅¬b⋅c⋅d + ¬a⋅b⋅¬c⋅d + ¬a⋅b⋅c⋅¬d + a⋅¬b⋅¬c⋅¬d + a⋅b⋅¬c⋅d
index || a | b | c | d || f(a,b,c,d) | f(d)
---------------------------------------------
0 || 0 | 0 | 0 | 0 || 0 | d
1 || 0 | 0 | 0 | 1 || 1 | d
2 || 0 | 0 | 1 | 0 || 0 | d
3 || 0 | 0 | 1 | 1 || 1 | d
---------------------------------------------
4 || 0 | 1 | 0 | 0 || 0 | d
5 || 0 | 1 | 0 | 1 || 1 | d
6 || 0 | 1 | 1 | 0 || 1 | ¬d
7 || 0 | 1 | 1 | 1 || 0 | ¬d
---------------------------------------------
8 || 1 | 0 | 0 | 0 || 1 | ¬d
9 || 1 | 0 | 0 | 1 || 0 | ¬d
10 || 1 | 0 | 1 | 0 || 0 | 0
11 || 1 | 0 | 1 | 1 || 0 | 0
---------------------------------------------
12 || 1 | 1 | 0 | 0 || 0 | d
13 || 1 | 1 | 0 | 1 || 1 | d
14 || 1 | 1 | 1 | 0 || 0 | 0
15 || 1 | 1 | 1 | 1 || 0 | 0
Таблица истинности была уменьшена до 8 строк путем разделения входного сигнала d off. Теперь количество строк соответствует количеству входов мультиплексора.
index || a | b | c || f(d)
-----------------------------
0 || 0 | 0 | 0 || d
1 || 0 | 0 | 1 || d
2 || 0 | 1 | 0 || d
3 || 0 | 1 | 1 || ¬d
-----------------------------
4 || 1 | 0 | 0 || ¬d
5 || 1 | 0 | 1 || 0
6 || 1 | 1 | 0 || d
7 || 1 | 1 | 1 || 0
На следующем рисунке представлено графическое представление мультиплекса.
Мультиплексор (MUX)
MUX - это селектор данных
- Это позволяет направить цифровую информацию из нескольких источников в одну линию для передачи по линии к месту назначения.
A B C D - это источники, а Q - выход. a b - это селекторы данных
Вот таблица истинности для мультиплексора 4:1
a | b | Q
0 | 0 | A
0 | 1 | B
1 | 0 | C
1 | 1 | D
Выход Q равен
Q = A+B+C+B
A=a'b', B = a'b, C=ab', D= ab
Q = a'b' + a'b + ab' + ab