Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЦС Комбинационные схемы.pdf
Скачиваний:
278
Добавлен:
30.03.2015
Размер:
2.7 Mб
Скачать

Цифровая схемотехника

Еще один мультиплексор (D5) выбирает один из выходов мультиплексоров D1 – D4 и подает сигнал на выход всей схемы. Он должен иметь четыре информационных входа, и на его адресные входы подаем остальные адреса – a3, a4.

Нумерация информационных входов в схеме зависит от того, как подключены адресные входы. Чтобы убедиться в правильности нумерации, показанной на рис. 4.18, нужно на адресные входы подать различные двоичные коды и посмотреть, какие информационные входы будут при этом подключаться к выходу.

Аналогично можно построить мультиплексоры другой размерно-

сти.

4.3.2. Синтез функций на мультиплексорах

Мультиплексоры используются главный образом для коммутации сигналов. В некоторых сериях микросхем есть мультиплексоры, которые могут коммутировать не только цифровые, но и аналоговые сигналы. Их применяют в измерительных устройствах, например, чтобы подавать на входы аналого-цифрового преобразователя измеряемое или эталонное напряжение.

Кроме этого, мультиплексоры можно использовать для синтеза произвольных функций алгебры логики. Функции выходов мультиплексоров содержат все комбинации адресных входов (или все минтермы переменных ak-1 – a0). Выбирая нужные минтермы, можно построить любую функцию алгебры логики.

Рассмотрим принципы синтеза функций на мультиплексорах. Для примера синтезируем функцию трех переменных

г(й,ц,у)ър(1,4,5,7)

на 8-входовом мультиплексоре. Запишем функцию в СДНФ:

г(й,ц,у)ъфыумйывмйыумйцу

и сравним ее с функцией выхода 8-входового мультиплексора (4.8). Очевидно, что если на входы a2, a1, a0 подать соответственно аргументы x1, x2, x3, то, чтобы получить соответствие формул, надо на входы

D1, D4, D5, D7 подать сигнал 1, а на D0, D2, D3, D6 – 0. Чтобы схема работала, нужно еще на вход разрешения подать сигнал 0.

Можно определить, какие сигналы подавать на входы мультиплексора и по таблице истинности. Для этого объединим вместе таблицу истинности функции (табл 1.1) и таблицу мультиплексора (табл. 4.14), не забывая, что x1 – старший аргумент. По получившейся таблице (табл. 4.15) видно, что аргумент x1 нужно подать на вход a2, x2 – на a1, x3 – на a0. Чтобы получить нашу функцию на информационные входы нужно подать сигналы из столбца f (рис. 4.19). Аналогично можно синтезировать схему любой функции трех переменных.

На 8-входовом мультиплексоре можно синтезировать и функцию четырех аргументов, при этом три аргумента нужно подать на адрес-

84

Комбинационные схемы

ные входы, а от четвертого аргумента будут зависеть функции информационных входов. Чтобы найти эти функции, необходимо из таблицы истинности синтезируемой функции выделить функции D0 – D7.

 

 

 

 

 

 

 

 

 

 

 

 

Табл. 4.15

1

 

 

 

D0

MUX

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

D1

 

 

 

f

a2

a1

a0

 

Q

 

 

 

 

 

 

 

 

0

 

 

 

D2

 

 

 

x1

x2

x3

f

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

D3

 

Q

 

 

0

0

0

1

D0

 

 

 

 

 

 

 

 

0

 

 

 

D4

 

 

 

 

 

 

 

 

 

 

 

 

0

0

1

0

D1

 

0

 

 

 

D5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

1

0

0

D2

 

1

 

 

 

D6

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

D7

 

 

 

 

0

1

1

1

D3

 

 

 

 

 

 

 

 

 

x3

 

 

a0

 

 

 

 

1

0

0

0

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

x2

 

 

a1

 

 

 

 

1

0

1

0

D5

 

 

 

 

 

 

 

 

x1

 

 

a2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

0

1

D6

 

 

 

 

 

 

 

 

0

 

 

 

C

 

 

 

 

 

 

 

 

 

 

 

 

1

1

1

1

D7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 4.19

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рассмотрим порядок синтеза на примере следующей функции:

г(й,ц,у,к)ър(2,3,5,7,8,10,14,15)

Подадим старший аргумент x1 на старший адресный вход a2, x2 – на вход a1, x3 – на a0. Тогда функции D0 – D7 будут зависеть только от аргумента x4. Чтобы найти эти функции, составим таблицу истинности функции f и сверху над аргументами подпишем соответствующие адресные входы (табл. 4.16).

В первых двух строках a2, a1, a0 равны 0, следовательно, к выходу мультиплексора должен подключиться вход D0 (ср. с таблицей для мультиплексора – табл. 4.14). Функция f на этих наборах равна 0, это и будет значением D0. Можно эти строки выделить в отдельную таблицу истинности для D0. Аналогично следующие две строки можно выделить в таблицу для функции D1 и т.д. По этим таблицам и находим значение функций информационных входов:

D0 ≡ 0, D1 ≡ 1, D2 к, D3 к, D4 а, D5 а, D6 ≡ 0, D7 ≡ 1

по ним можно построить схему (рис. 4.20). Кроме мультиплексора, в схеме понадобится еще один инвертор. Конечно, строить отдельные таблицы для функций D0 – D7 необязательно, функции можно легко найти и по таблице 4.16. Если на адресные входы подать другие аргументы, то для функций информационных входов придется выделять другие строки в таблице истинности f.

Аналогично можно реализовать функцию большего числа переменных. В общем случае для синтеза функции m аргументов на мультиплексоре с k адресными и n = 2k информационными входами необходимо k аргументов подать на адресные входы, а оставшиеся – на

85

Цифровая схемотехника

информационные, т.е. необходимо будет найти n функций от m – k аргументов.

Табл. 4.16

a2

a1

a0

 

 

Q

x1

x2

x3

x4

f

 

0

0

0

0

0

D0

 

 

 

 

 

0

0

0

1

0

 

 

 

 

 

 

 

0

0

1

0

1

D1

 

 

 

 

 

0

0

1

1

1

 

 

 

 

 

 

 

0

1

0

0

0

D2

0

1

0

1

1

 

 

 

 

 

 

 

0

1

1

0

0

D3

 

 

 

 

 

0

1

1

1

1

 

 

 

 

 

 

 

1

0

0

0

1

D4

 

 

 

 

 

1

0

0

1

0

 

 

 

 

 

 

 

1

0

1

0

1

D5

 

 

 

 

 

1

0

1

1

0

 

 

 

 

 

 

 

1

1

0

0

0

D6

 

 

 

 

 

1

1

0

1

0

 

 

 

 

 

 

 

1

1

1

0

1

D7

 

 

 

 

 

1

1

1

1

1

 

 

 

 

 

 

 

 

 

x4

D0

 

 

0

0

 

 

 

 

 

 

 

 

 

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x4

D1

 

 

 

0

1

 

 

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x4

D2

 

 

 

0

0

 

 

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

. . . . .

 

 

 

 

 

 

 

 

 

x4

D7

 

 

 

0

1

 

 

 

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

0

D0

MUX

 

1

D1

 

 

x4

D2

 

 

 

D3

Q

f

1

D4

 

 

 

D5

 

 

 

D6

 

 

 

D7

 

 

x3

a0

 

 

 

 

 

x2

a1

 

 

x1

a2

 

 

 

C

 

 

Рис. 4.20

Для примера реализуем эту же функцию 4-х аргументов на 4- входовом мультиплексоре с двумя адресными входами. Для этого два аргумента, например, x1, x2, подадим на адресные входы и найдем четыре функции от остальных аргументов – x3, x4. В таблице истинности функции f над аргументами x1, x2 подпишем адресные входы, к кото-

86

Комбинационные схемы

рым они будут подключены (табл.4.17). Тогда первые четыре строки (в которых a1 = 0 и a0 = 0) будут значениями для функции D0 (см. табл. 4.14). Эти строки можно выделить в отдельную таблицу и по ней найти данную функцию. Аналогично выделяем таблицы для функций D1, D2, D3 и далее по ним находим все функции информационных входов. В данном примере они получились простыми:

D0 = у, D1 = к, D2 = а, D3 = у.

По ним строим схему (рис. 4.21).

 

 

 

 

Табл. 4.17

 

 

 

 

 

 

a1

a0

 

 

 

Q

x1

x2

x3

x4

f

 

0

0

0

0

0

 

 

 

 

 

 

 

0

0

0

1

0

D0

 

 

 

 

 

0

0

1

0

1

 

 

 

 

 

 

 

0

0

1

1

1

 

 

 

 

 

 

 

0

1

0

0

0

 

 

 

 

 

 

 

0

1

0

1

1

D1

 

 

 

 

 

0

1

1

0

0

 

 

 

 

 

 

 

0

1

1

1

1

 

 

 

 

 

 

 

1

0

0

0

1

 

 

 

 

 

 

 

1

0

0

1

0

D2

 

 

 

 

 

1

0

1

0

1

 

 

 

 

 

 

 

1

0

1

1

0

 

 

 

 

 

 

 

1

1

0

0

0

 

 

 

 

 

 

 

1

1

0

1

0

D3

 

 

 

 

 

1

1

1

0

1

 

 

 

 

 

 

 

1

1

1

1

1

 

 

 

 

 

 

 

x3

 

 

 

 

 

D0

MUX

 

 

 

 

 

 

 

 

 

 

 

x4

 

 

 

 

D1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

D2

 

 

 

f

 

 

 

 

 

 

 

x2

 

 

 

 

 

D3

 

Q

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a0

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

 

 

 

 

 

a1

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

x4

D0

0

0

0

 

 

 

0

1

0

 

 

 

1

0

1

 

 

 

1

1

1

 

 

 

 

 

 

x3

x4

D1

0

0

0

 

 

 

0

1

1

 

 

 

1

0

0

 

 

 

1

1

1

 

 

 

 

 

 

x3

x4

D2

0

0

1

 

 

 

0

1

0

 

 

 

1

0

1

 

 

 

1

1

0

 

 

 

 

 

 

x3

x4

D3

0

0

0

 

 

 

0

1

0

 

 

 

1

0

1

 

 

 

1

1

1

 

 

 

Рис. 4.21

Функции информационных входов не всегда получаются такими простыми, как в данном примере. Более того, сложность будет зависеть от того, какие аргументы подаются на адресные входы, и часто

87

Цифровая схемотехника

оказывается, что выгоднее подавать x3 x4 или x1 x3 и т.п. Однако выделять из таблицы строки в этом случае неудобно. Гораздо проще воспользоваться картами Карно. Для этого нужно построить карту для исходной функции, а потом выделить из нее карты Карно для функций информационных входов. Синтезируем следующую функцию на 4- входовом мультиплексоре с помощью карт Карно:

г(й,ц,у,к)ър(0,3,4,6,7,9,13,14)

Два аргумента (x1, x2) подадим на адресные входы и будем искать четыре функции информационных входов, зависящие от остальных аргументов (x3, x4). Для этого нанесем функцию f на карту Карно (рис. 4.22) и подпишем над аргументами x1 x2 адресные входы, к которым они будут подключены, – a1 a0. Тогда четыре клетки левого столбца (в которых a1 = 0 и a0 = 0) будут соответствовать функции D0. Эти клетки можно выделить в отдельную карту и по ней найти данную функцию. Клетки следующего столбца (где a1 = 0 и a0 = 1) соответствуют D1, далее – D3, а правый столбец – D2 (рис. 4.22). По этим картам находим функции:

D0ъвамук, D1ъума, D2ъвк, D3ъвкмуа.

a1 a0

 

 

 

 

йц

 

 

 

 

ук

00

01

11

10

 

 

 

 

 

 

 

00

1

1

 

 

 

 

 

 

 

 

 

01

 

 

1

1

 

 

 

 

 

 

f

11

1

1

 

 

 

 

 

 

 

 

 

 

 

10

 

1

1

 

 

 

 

 

 

 

 

ук

 

ук

 

ук

 

ук

 

00

1

00

1

00

 

00

 

01

 

01

 

01

1

01

1

11

1

11

1

11

 

11

 

10

 

10

1

10

1

10

 

 

D0

 

D1

 

D3

 

D2

 

 

 

Рис. 4.22

 

 

 

88

Комбинационные схемы

Если же на адресные входы подать аргументы x3x4, то функции информационных входов будут зависеть от x1x2, следовательно, функции D0 будут соответствовать клетки верхней строки в исходной карте Карно (рис. 4.23а), которые тоже можно выделить в отдельную карту и по ней найти данную функцию. Аналогично выделяем карты Карно для функций D1, D3, D2 и далее по ним находим все функции информационных входов:

D0ъф, D1ъй, D2ъц, D3ъф.

Функции получились намного проще, по ним и строим схему (рис. 4.23).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

йц

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

00

01

11

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

йц

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

 

D0

 

ук

00

01

11

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

йц

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

00

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

00

01

11

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a1 a0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

01

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

1

1

D1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11

1

1

 

 

 

 

 

 

 

 

йц

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

00

01

11

10

 

 

10

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

 

D3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

йц

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

00

01

11

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

а)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

 

 

 

 

1

 

 

 

 

D0

MUX

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2

 

 

 

 

 

 

 

 

 

D1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D2

 

 

 

 

f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x4

 

 

 

 

 

 

 

 

 

D3

 

Q

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3

 

 

 

 

 

 

 

 

 

a1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

б)

Рис. 4.23

Если на адресные входы мультиплексора подать аргументы йу, то исходную карту Карно придется разбить на 4 квадрата. Если функции информационных входов все же получаются сложные (в том числе если они зависят от трех и более аргументов), их в свою очередь тоже

89