Проектирование вычислительного устройства
X1 | B(0) |
X2 | A(0)=B(0) |
X3 | C(0) |
X4 | A(0) |
X5 | C(1..15)=0 сравн с 0 |
X6 | B(15) |
X7 | Сч=0 |
X8 | B(1) |
X9 | A(0)ÅB(0) |
X10 | B(16) |
X11 | А=0 |
Разбиваем микрооперации на подмножества соответствующие внутренним словам ( регистрам).
YA={y18};
YB={y1,y12, y22, y23};
YC={ y2, y3, y5, y6, y7, y9, y11, y13, y15, y16, y17, y19, y20, y24, y25, y26, y27, y28};
YСЧ={ y10, y14, y21};
YПП={y4};
YZ={y8};
На полученных множествах выделяем классы эквивалентных микроопераций Knj.
KA,1={y18};
KB,1={y1}; KB,2={y12}; KB,3={y22}; KB,4={y23};
KC,1={y2, y3, y6, y11, y15, y19};KC,2={ y5, y7, y16};KC,3={y9}; KC,4={y24}; KC,5={y25}; KC,6={y26}; KC,7={y27}; KC,8={y28}; KC,9={y13}; KC,10={y17}; KC,11={y20}
KСЧ,1={y10}; KСЧ,2={y14}; KСЧ,3={y21}
KПП,1={y4};
KZ,1={y8}
Для KС1 составляем обобщенный оператор:
С:=А2+А1
где, и
Соответственно и для этого класса строим обобщенный оператор ( в принципе присваивание как таковое можно и не выделять в отдельный класс, но тут изменяется только один бит регистра С, следовательно мы можем мультиплексировать операции работающие непосредственно с этим битом):
C(0):=B1
Схема синтезированного автомата представлена на рисунке Приложения 2.
4.3 Синтез управляющего автомата с «программируемой» логикой
С учетом кодирования, можно перерисовать выше приведенные алгоритмы операций в объединеную блок-схему. Объединенная и закодированая ГСА приведена на рисунке 7.
Рисунок 7
Функциональная схема АЛУ представлена на чертеже КП.062.020.1999.Ф1.
4. 4 Форматы микрокоманд
Разобъем множество микроопераций Y, приведенных на рисунке 7, на три непересекающихся подмножества Y1, Y2, Y3.
Множество логических условий X, состоит из десяти элементов:
Исходя из результатов разбиений, можно сделать вывод о том, что кодирование микроопераций нужно выполнить пятиразрядным кодом, а кодирование логических условий четырехразрядным. Результаты кодирования приведены в таблице . Форматы микрокоманд на рисунке 8.
Y1 | Y2 | Y3 | X | ||
00000 | yk | # | # | 0000 | # |
00001 | y1 | # | # | 0001 | x1 |
00010 | y2 | # | # | 0010 | x2 |
00011 | y3 | # | # | 0011 | x3 |
00100 | y4 | # | # | 0100 | x4 |
00101 | y5 | # | # | 0101 | x5 |
00110 | y6 | # | # | 0110 | x6 |
00111 | y7 | # | # | 0111 | x7 |
01000 | y8 | # | # | 1000 | x8 |
01001 | y9 | # | # | 1001 | x9 |
01010 | # | y10 | # | 1010 | x10 |
01011 | y11 | # | # | 1011 | x11 |
01100 | y12 | # | # | 1100 | # |
01101 | # | y13 | # | 1101 | # |
01110 | # | # | y14 | 1110 | # |
01111 | y15 | # | # | 1111 | 1 |
10000 | y16 | # | # | ||
10001 | y17 | # | # | ||
10010 | y18 | # | # | ||
10011 | y19 | # | # | ||
10100 | y20 | # | # | ||
10101 | # | y21 | # | ||
10110 | # | # | y22 | ||
10111 | # | y23 | # | ||
11000 | y24 | # | # | ||
11001 | y25 | # | # |
Рисунок 8
0 | 1 | 2 | 3 |