
Министерство общего и профессионального образования Российской Федерации
Московский государственный технический Университет им. Н.Э.Баумана
Операционные элементы на базе универсальных регистров
Методические указания к лабораторной работе по курсу
"Архитектура ЭВМ"
Москва 2002 г.
1. Теоретическая часть. Табличная запись и построение булевых функций с большим числом переменных.
При проектировании операционных элементов (ОЭ) реализуемую ими булеву функцию часто описывают в виде сокращенной таблицы.
Управляющие входы |
Выход Z |
Такая таблица характеризует работу |
Y1 Y2 В остальных случаях |
А1 А2 0 |
операционного элемента следую-щим образом. |
Если У1 = 1, то на выходе Z должно быть значение, соответствующее значению переменной А1.
Если У2 = 1, то на выходе Z должно быть значение, соответствующее значению переменной А2. Причем, переменные У1 и У2 не могут одновременно быть равными «1», т.е. У1ΛУ2=0.
Описанный в таблице операционный элемент (ОЭ) имеет 4 входа (У1,У2,А1,А2) и один выход Z.
у
ОЭ1
у2
А1 Z
А2
Составим таблицу истинности в соответствии с таблицей работы ОЭ. При построении таблицы истинности необходимо учесть, что У1ΛУ2=0.
Y1 |
Y2 |
A1 |
A2 |
Z |
СДНД |
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 |
0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 |
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 |
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 |
0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 0 |
*
*
* *
|
По таблице построим СДНФ функции Z:
__ __ __ __ __ __ __ __ __ __
Z= y1y2A1A2+ y1y2A1A2+ y1y2A1A2+ y1y2A1A2= y1y2A2(A1 + A2) + y1y2(A1 + A2)*A1
__ __
= y1y2A2+ y1y2A1
___ ___
Теперь найдем, чему равны У1У2 и У1У2 :
__ ___ __
У1У2 = У1У2 + У1У2 = У2 (У1 +У2) =У2
__ ___ __
У1У2 = У1У2 + У1У2 = У1 (У1 +У2) =У1
Таким образом :
Z = Y1A1 + Y2A2
Следовательно, если булевая функция задана в виде сокращенной таблицы, то для построения функции в аналитической форме можно обойтись без использования полной таблицы истинности.
Полученные результаты можно распространить на операционные элементы с произвольным числом входов и выходов.
Например, пусть операционный элемент должен выполнять m микроопераций: Y1,Y2,…,Ym и формировать на выходе n - разрядное слово С(1:n).
Управляющий сигнал |
Микрооперация |
Выходное слово |
|||
|
|
С1 |
С2 |
- - - - - - |
Сn |
Y1 Y2
Ym |
C:=φ1(A1,…,Ak) C:=φ2(A1,…,Ak)
C:=φm(A1,…,Ak) |
Z11 Z21
Zm1 |
Z12 Z22
Z1m |
|
Z1n Z2n
Zmn
|
В остальных случаях 0 0 0 0 |
Таблица состоит из m строк, соответствующих микрооперациям Y1,Y2,…,Ym и n, столбцов, соответствующих разрядам выходного слова С(1:n).
На пересечении i – той строки и j – того столбца указывается значение Zij, которое должно присваиваться переменной Сij (j- му разряду слова С) при выполнении микрооперации Yi.
Значение Zij определяются результатами микрооперации Yi. Значение Zij может быть константой (0 или 1) или переменной.
В этом случае операционный элемент будет описываться системой булевых функций вида:
m
Сj = V Yi Zij j = 1,2,…,n
i=1
Так как микрооперации Y1,Y2,…,Ym несовместимы, то в любой момент времени только один из управляющих сигналов Yi=1, а остальные сигналы в это время имеют нулевые значения. Поэтому выходной переменной будет присваиваться результат только одной микрооперации, выделяемой сигналом Yi. Если все Yi =0, то Сj=0.
Использование сокращенных таблиц для описания операционных элементов вместо таблиц истинности позволяет существенно упрощать и сокращать их описание и получение булевых функций.
Так, например, если операционный элемент должен выполнять Р микроопераций над К - разрядными словами, то таблица истинности должна содержать 2р строк , а сокращенная таблица – только Р.