Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЭВМ лекции

.pdf
Скачиваний:
59
Добавлен:
08.05.2015
Размер:
2.95 Mб
Скачать

y0

 

x1

 

7

5

1

3

6

4

0

x3

2

x0

 

 

 

16

14

10

12

17

15

11

13

 

 

 

x2

Минимизированные выражения:

y0 = x3 x2

y1 = x3

 

x1

x2

Схема шифратора на логических элементах:

Рисунок 10.1

В таблице 10.3 соответствия для приоритетного шифратора, в котором входная переменная с максимальным номером имеет максимальный приоритет,

значения входных сигналов справа от диагонали не должны определять выходной код.

Таблица 10.3

 

 

 

входы

 

 

 

 

выходы

 

 

7

6

5

4

3

2

1

0

4

 

2

 

1

 

 

 

 

 

 

x7

x6

x5

x4

x3

x2

x1

x0

y2

 

y1

 

y0

EO

*

0

0

0

0

0

0

0

0

0

 

0

 

0

1

0

0

0

0

0

0

0

0

1

0

 

0

 

0

0

1

0

0

0

0

0

0

1

x

0

 

0

 

1

0

2

0

0

0

0

0

1

X

X

0

 

1

 

0

0

3

0

0

0

0

1

X

X

X

0

 

1

 

1

0

4

0

0

0

1

X

X

X

X

1

 

0

 

0

0

5

0

0

1

X

X

X

X

X

1

 

0

 

1

0

6

0

1

X

X

X

X

X

X

1

 

1

 

0

0

7

1

X

X

X

X

X

X

X

1

 

1

 

1

0

Выражения для функций выхода:

51

y2 = x7 x7x6 x7x6x5 x7x6x5x4

y1 = x7 x7x6 x7x6x5x4x3 x7x6x5x4x3x2 y0 = x7 x7x6x5 x7x6x5x4x3 x7x6x5x4x3x2x1

Значения выходов при x7=x6=x5=x4=x3=x2=x1=0 не зависят от значения x0. Нулевое значение всех входных сигналов при «1» сигнале на входе разрешения работы шифратора формирует единичный выход EO, используемый при наращивании размерности шифраторов:

EO = x7x6x5x4x3x2x1x0EI

Применяя соотношение a ba = a b , получим y2 = x7 x6 x5 x4

y1 = x7 x6 x5x4x3 x5x4x2 y0 = x7 x6x5 x6x4x3 x6x4x2x1

Схемная реализация шифратора представлена на рис. 10.2.

Рисунок 10.2

Наращивание размерности приоритетных шифраторов производится за счет использования входов разрешения по схеме, представленной на рис. 10.3.

Шифратор DD1 имеет более высокий приоритет, и его работа всегда разрешена подачей низкоуровневого сигнала на вход разрешения EI. Если на входах x0…x7 есть хотя бы один запрос, то разрешения на работу младшего шифратора DD2 нет. В этом случае значения выходов b0, b1, b2 единичны, и элементы DD3-x служат инверторами для сигналов с выхода дешифратора DD1. Если на входах шифратора DD1 запросов нет, он разрешает работу младшего по приоритету шифратора DD2, формируя на выходе EO разрешающий сигнал для

52

DD2, и переводит выходы a0, a1, a2 в пассивное единичное значение. Старший разряд выхода y3 шифратора формируется инвертированием сигнала с выхода EO шифратора DD2.

Рисунок 10.3

Унитарный код на входах шифратора может быть сформирован цепочечной схемой:

a0

 

x0

a1

1

x1

 

&

1

1

x2

 

 

a2

 

&

 

 

1

1

x3

 

 

a3

 

&

 

 

Рисунок 10.4

Микросхемы приоритетного шифратора КМОП(ТТЛ):

8×3 – 4532 (74148)

10×4 – (74147).

53

11. Мультиплексор

Мультиплексором называется комбинационная схема, имеющая m+2m входов и один выход, где m – количество адресных входов, а 2m количество информационных входов мультиплексора. Адреса представляются в двоичном коде, и им присваивается номер j. Каждому адресу с номером j соответствует свой информационный вход xj , сигнал с которого при данном адресе проходит на выход. Основным назначением мультиплексора является коммутация 2m входных сигналов на один выход.

Мультиплексор осуществляет

информационные входы

 

 

 

 

подключение одного из входных

 

 

 

 

 

 

 

 

 

 

каналов к

выходному

под

 

 

 

 

 

 

 

 

 

 

управлением

управляющего

 

 

 

 

 

 

 

 

 

 

(адресующего) слова.

 

 

 

 

 

 

Работу мультиплексора можно

адресные входы

 

 

 

 

упрощенно

представить

с

 

 

 

 

 

 

помощью

многопозиционного

 

 

 

 

 

 

 

 

 

 

 

ключа, где адресующий код A

 

Рис.11. 1

 

задает переключателю определен-

ное положение, соединяя с выходом F

один из информационных входов. При

нулевом адресующем слове переключатель занимает верхнее положение x0, с увеличением адресного кода на 1 переходит в следующее положение x1 и т.д.

Работа мультиплексора описывается соотношением:

F = Xo an an−1...a1 a0 X1an an−1...a1a0 ... Xnanan−1...a1a0

Условное описание мультиплексора задаётся формулой 2m×1. Примерами являются мультиплексоры: 2×1, 4×1, 8×1, 16×1.

54

Микросхемы мультиплексоров КМОП(ТТЛ):

2×1– 4019 (74157)(4 в корпусе), 4053 (3 в корпусе) 4×1 (2 в корпусе) – 4052, 4539 (74153)

8×1 (1 в корпусе) – 4051 (74151, 74251) 16×1 (1 в корпусе) – 4067 (74150)

Таблица истинности мультиплексора 4×1:

Информационные

Адресные входы

Выход

входы

a0

a1

y

 

0

0

x0

x0, x1, x2, x3

0

1

x1

1

0

x2

 

 

1

1

x3

Схемная реализация 4-разрядного мультиплексора на элементах И-НЕ приведена на рисунке 11.1.

Рис.11. 2

Для формирования значений адресных входов можно также использовать дешифратор.

Рис.11. 3

55

При любом значении адресующего кода все слагаемые, кроме одного, равны нулю. Ненулевое слагаемое равно Xi, где i – номер текущего адресного слова.

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

составленным из соответствующего числа младших разрядов общего адресного кода. Старшие разряды адресного кода, число которых равно n-n1, используются во втором ярусе, мультиплексор которого обеспечивает поочередную работу мультиплексоров первого яруса на общий выходной сигнал.

Рис.11. 4

56

На основе мультиплексоров можно строить универсальные логические модули (УЛМ), которые настраиваются на решение той или иной задачи. Для заданного числа аргументов УЛМ можно настроить на любую функцию. Общее

число функций n аргументов выражается как 22n . Как правило, практический интерес представляют не все возможные функции.

Возможны два способа настройки УЛМ:

1. Фиксация некоторых логических входов. На

информационные входы мультиплексора

подаются m функций n аргументов, где аргументами являются адресные входы. Каждому

набору аргументов соответствует передача на выход одного из сигналов настройки. Например,

схема реализации элемента Исключающее ИЛИ на мультиплексоре 4х1.

Мультиплексоры можно использовать для воспроизведения произвольных логических функций. Адресные входы мультиплексора вырабатывают все конституенты 1, которые только можно составить из данного набора входных переменных. Логическая функция есть дизъюнкция конъюнкций всех адресных входов мультиплексора с соответствующими информационными входами. Таким образом, если на соответствующий адресу информационный вход подается логическая единица, то данный адрес участвует в формировании дизъюнктивной формы ФАЛ.

Лог

 

x0

 

 

 

«1»

 

 

 

MUX

 

x1

 

 

 

 

 

 

 

 

 

 

x2

 

 

 

 

 

 

x3

 

 

 

 

 

 

x4

 

 

Y

 

 

 

x5

 

 

 

 

 

x6

 

 

 

 

 

 

x7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a0

 

 

 

 

 

 

a1

 

 

 

 

 

 

a2

 

 

 

 

 

 

 

 

 

 

 

На рисунке 11.5 представлена реализация ФАЛ

F = 1 5 6 7

57

 

2. Расширение алфавита настроечных сигналов от {0,1} до {0,1,xi}. При этом

 

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

 

константы 0 или 1, но и значения сигналов адресных входов или их

 

инверсия. Перенос одного из аргументов в число сигналов настройки не

 

влечет каких-либо схемных изменений. Аргументы за исключением xi

 

подаются на адресные входы, что соответствует их фиксации в выражении

 

для искомой функции, которая становится функцией единственного

 

аргумента xi. Эту функцию, называемую остаточной, нужно подавать на

 

информационные входы. В настроечные сигналы следует переводить

 

аргумент, имеющий наименьшее число вхождений в термы функции.

 

Пример

реализация функции F = x1 x2 x3

 

 

 

 

. Таблица истинности для

 

x2

x3

 

данной функции:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X2

 

X3

 

F

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

0

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

1

 

X1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для определения аргумента, имеющего наименьшее число вхождений, можно использовать разложение Шеннона:

F(x0,x1,...,xn) = x0F(0,x1,...,xn) x0F(1,x1,...,xn) F(x0,x1,...,xn) = x1F(x0,0,...,xn) x1F(x0,1,...,xn)

Разложение функции Шеннона по двум аргументам будет иметь вид

F(x0,x1,...,xn) = x0x1F(0,0,...,xn) x0x1F(1,0,...,xn) x0x1F(0,1,...,xn) x0x1F(1,1,...,xn)

Рассмотрим ФАЛ трех аргументов:

F = 1 5 6 7

F = x2x1x0 x2x1x0 x2x1x0 x2x1x0

Применим разложение Шеннона по двум аргументам:

58

F = x1x00 Ú x1x0(x2 Ú x2) Ú x1x0(x2) Ú x1x0(x2) =

= x1x00 Ú x1x01 Ú x1x0(x2) Ú x1x0(x2)

 

 

 

F = x2x1(x0) x2x10 x2x1(x0) x2x11

 

 

F = x2x00 x2x0(x1) x2x0(x1) x2x01

 

 

Таким образом, данную функцию можно реализовать как

 

 

 

0

F0

MUX

 

 

x1

1

F1

 

1

F2

y

 

 

F3

 

 

 

 

x0

A0

 

 

x2

 

 

A1

 

 

 

 

Если в поле входов настройки перенести два аргумента, то дополнительные

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

построения логического модуля.

 

 

 

В качестве примера рассмотрим реализацию с

помощью мультиплексора 4×1

ФАЛ:

 

 

F = 1Ú5Ú7Ú16Ú(3)Ú(11)Ú(17)

F = x3x2x1x0 Ú x3x2x1x0 Ú x3x2x1x0 Ú x3x2x1x0 Ú

(x3x2x1x0) Ú (x3x2x1x0) Ú (x3x2x1x0)

Или в минимизированном виде

 

 

F = x3x0 x3x2x1

Возможно 7 способов разложения Шеннона для этой функции. Наибольшее число вхождений в выражение для минимизированной функции имеет x3, поэтому она должна участвовать в наилучшем разложении Шеннона. Переменные x2, x1 и x0 в данном случае входят одинаковое количество раз, поэтому рассмотрим все возможные варианты разложения с x3:

 

 

 

 

 

 

 

 

 

 

 

é

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ù

 

F = x3x0 [0]

Ú

x3x0

 

 

 

 

 

Ú

x2x1 Ú

 

Ú

ëx2x1

x2x1 Ú (x2x1)û

x3x0:

 

 

 

 

é

 

 

 

 

 

 

 

 

 

 

ù

 

 

 

 

 

Úx3x0 [x2x1 ] Ú

 

 

 

 

 

 

 

 

 

 

Ú

 

 

 

 

 

x3x0 ë(x2x1)

(x2x1)û

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

é

 

 

 

 

 

 

 

 

ù

 

 

 

 

 

 

 

F = x3x0 [0]

Ú

x3x0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[0]

ëx1 Ú

x2 û Ú x3x0 [x2x1 ] Ú x3x0

59

 

 

 

 

 

 

 

 

 

é

 

 

 

 

 

ù

 

 

 

é

 

 

 

 

 

ù

 

F = x3x1

 

 

 

 

 

Ú

 

 

 

Ú

ëx2x0 Ú

x2x0 û

x3x1 ëx2x0

Ú (x2x0)û

x3x1:

 

 

 

 

 

 

ù

 

 

 

 

é

 

 

ù

 

 

 

 

 

é

 

 

 

 

 

 

Ú

 

 

 

 

 

 

 

 

 

x3x1 ë(x2x0)û

x3x1 ëx2x0

Ú (x2x0)û

 

 

 

 

F =

 

 

 

 

[x0 ]

 

x1 [x0 ] x3

 

[0] x3x1 [x2]

x3

x1

x3

x1

 

 

 

 

 

 

 

 

 

é

 

 

 

 

 

ù

 

 

 

é

 

 

ù

 

F = x3x2

 

 

 

 

 

Ú

 

 

Ú

ëx1x0 Ú

(x1x0)û

x3x2 ëx1x0

Ú x1x0 û

x3x2:

 

 

 

 

ù

 

 

 

 

é

 

 

ù

 

 

 

 

 

é

 

 

 

 

 

 

Ú

 

 

 

 

 

 

 

 

 

x3x2 ë(x1x0)û

x3x2 ëx1x0

Ú (x1x0)û

 

 

 

 

F = x3x2 [x0 ] x3x2 [x0 ] x3x2 [0] x3x2 [x1 ]

Выберем среди этих вариантов наилучший (требующий наименьшее число дополнительных элементов), в данном случае равносильны разложения по x3x1 и x3x2. Для реализации воспользуемся разложением по x3x1:

 

 

 

 

 

 

 

 

x3

x2

x1

x0

y

 

x3

x2

x1

x0

y

 

 

 

 

 

 

 

0

0

0

0

0

0

10

1

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

0

0

1

1

11

1

0

0

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

0

0

1

0

0

12

1

0

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

0

0

1

1

1

13

1

0

1

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

0

1

0

0

0

14

1

1

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

0

1

0

1

1

15

1

1

0

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

0

1

1

0

0

16

1

1

1

0

1

 

 

 

 

 

 

 

7

0

1

1

1

1

17

1

1

1

1

1

Таким образом, применение мультиплексоров возможно для реализации произвольных ФАЛ.

60

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]