
Задание 2
Задание относится к разделу “Схемотехнические основы ЗВМ” и состоит из двух частей:
-
построить блок управления аппаратного принципа, реализующий заданную ГСА ( ГСА - граф- схема алгоритма).
-
построить блок управления микропрограммного принципа, реализующий заданную ГСА.
Задание 2.1
Построить цифровой автомат Мура для заданной ГСА, используя заданный тип триггера RS-триггер.
0 х5 1
0 х11 1
0 х3 1
0 х9
1
х10 1
0
Рис.1
0 х5 1
A2
Yп
A4
0 х11 1
0 х3 1
Yп А7
0 х9
1
х10 1
0
A9
Рис.1
Имея граф автомата Мура, объединенная кодированная таблица переходов и выходов цифрового автомата строится за счет нахождения всех существующих путей из каждой вершины графа в ближайшую другую вершину с указанием условий, при которых имеет место данный путь, и вырабатываемых выходных сигналов, которые в автомате Мура однозначно определяются конечным состоянием (конечной вершиной):
Аi{xss, xpp ...xff ,уn(А J),... уm(А J)} А J,
где:
-
Аi, АJ - соответственно, начальная и конечная вершина пути;
-
Xss, xpp ...Xff- условия, через которые проходит рассматриваемый путь из Аi в аj;
-
уn(А J),... уm(А J) - выходные сигналы автомата, однозначно зависящий от конечного состояния АJ..
Объединенной кодированной таблицы переходов и выходов цифрового автомата составляется на основе всех возможных путей из всех вершин графа
автомата. В таблице приведена объединенной кодированной таблицы переходов и выходов для графа автомата Мура
N |
Начало пути |
Конец пути |
логическое |
выход. |
Управление памятью |
|||||||||
п.п |
Ан |
код Ан Q1Q2 Q3 Q4 |
Ак |
код Ак Q1Q2 Q3 Q4 |
условие |
Сигнал |
QS1 |
QR1 |
QS2 |
QR2 |
QS3 |
QR3 |
QS4 |
QR4 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
1 |
A0 |
0000 |
A2 |
0010 |
_ x5 |
y11, y41, y9 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
2 |
|
0000 |
A1 |
0001 |
X5 |
y5, y1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
3 |
A1 |
0001 |
А3 |
0011 |
1 |
y17 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
4 |
А2 |
0010 |
А4 |
0100 |
_ x11 |
уп |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
5 |
|
0010 |
А5 |
0101 |
x11 |
у22 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
6 |
А3 |
0011 |
А6 |
0101 |
x3 |
y1 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
7 |
|
0011 |
А5 |
0101 |
_ x3 |
у22 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
8 |
А4 |
0100 |
А4 |
0100 |
_ x11 |
уп |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
9 |
|
0100 |
А5 |
0101 |
x11 |
y22 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
10 |
А5 |
0101 |
А7 |
0111 |
_ x9 |
Уп |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
11 |
|
0101 |
A1 |
0001 |
x9 x10 |
y5, у1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
12 |
|
0101 |
А8 |
1000 |
_ x9 x10 |
y4 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
13 |
А6 |
0110 |
А7 |
0111 |
_ x9 |
уп |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
14 |
|
0110 |
A1 |
0001 |
x9 x10 |
y5, у1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
15 |
|
0110 |
А8 |
1000 |
_ x9 x10 |
y4 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
16 |
А7 |
0111 |
А5 |
0101 |
1 |
у22 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
17 |
А8 |
1000 |
А9 |
1001 |
1 |
y13, у18, уk |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
у1 =(2,6,11,14);
у4 =(12,15);
у5 =(2,11,14);
у9 =(1);
у11 =(1);
у13 =(17);
у17 =(3);
у18 =(17);
у22 =(5,7,9,16);
у41 =(1);
уп =(4,8,10,13);
ук =(17);
qS1=(12,15);
qS2=(4,5,6,7);
qS3=(1,3,10);
qS4=(2,5,9,13,14,17);
qR1=(-);
qR2=(11,12,14,15);
qR3=(4,5,6,7,14,15,16);
qR4=(12);
Написать микропрограмму, соответствующую ГСА(рис.4), с учетом заданных множества микроопераций (120элемент), множества проверяемых условий (15), ёмкости запоминающего устройства (1000) и начального адреса размещения микропрограммы (421) в ЗУ. В каждом адресе запоминающего устройства может храниться 16 бит информации.
*Если это допускает длина микрокоманды, использовать модификатор дисциплины перехода.
1) Схема моего варианта ниже:
2) Исходя из характеристик управляемого, объекта следует:
-
длина кода для кодирования микроопераций равна к=7, так как
количество выполняемых в управляемом объекте микроопераций равно 120;
-
длина кода для кодирования условий равна р=4, так как количество проверяемых условий в управляемом объекте равно 15;
-
длина кода адреса равна р=10, так как количество адресов в памяти, учитывая, что длина адресуемой ячейки равна 16 бит, т.е. двум байтам, равно 1000.
3) Таким образом, формат микрокоманд для данного управляемого объекта имеет следующий вид:
МКО
0 |
1 …7
|
8…14
|
15
|
____ _______ ________
T Y1 Y2
МКП
0 |
1…4 |
5…14 15 |
___ _______ __________ ___
T X A M
Формат операционной микрокоманды (МКО) имеет длину 16 бит и включает:
-
поле типа микрокоманды (Т), имеющее длину в один бит.
-
поле первой микрооперации (Y1), которое занимает разряды с 1-го по 7;
-
поле второй микрооперации (Y2), которое занимает разряды с 8-го по 14;
Формат микрокоманды перехода (МКП) имеет длину 16 бит и включает:
-
поле типа микрокоманды (Т);
-
поле проверяемого условия (Х), которое занимает разряды с 1-го по 4;
-
поле адреса (А), которое занимает разряды с 5-го по 14;
-
поле модификатора дисциплины перехода (M). при М=1 используется первая дисциплина перехода, при М=0 - вторая.
4) На основе заданной схемы и рассчитанного формата микрокоманд составляем микропрограмму и сводим её в следующую таблицу:
Примем, что конечная операция Yk=Y127= 1111111
N пп |
N вер. |
Адрес расположения микрокоманды в ЗУ |
Код микрокоманды |
Примечание |
|
1 |
110100101 |
1.0000001.0000110.0 |
|
|
1’ |
110100110 |
1.0010100.0000000.0 |
|
|
2 |
110100111 |
0.00100. 110110001. 0 |
5 |
|
3 |
110101000 |
1.0000100.0000000.0 |
|
|
4 |
110101001 |
0.01100. 110101000.1 |
3 |
|
7 |
110101010 |
1.0011101.0001110.0 |
|
|
8 |
110101011 |
0.00101. 110110101.0 |
10 |
|
9 |
110101100 |
1.0000011.0001110.0 |
|
|
11 |
110101101 |
0.00010. 110101101.1 |
11 |
|
12 |
110101110 |
1.0001010.0000000.0 |
|
|
13 |
110101111 |
1.0000010.0001101.0 |
|
|
13’ |
110110000 |
1.1111111.0000000.0 |
|
|
5 |
110110001 |
1.0000100.0001101.0 |
|
|
5’ |
110110010 |
1.0000001.0000000.0 |
|
|
6 |
110110011 |
0.01011. 110110100.1 |
|
|
- |
110110100 |
0.00000. 110101010.1 |
7 |
|
10 |
110110101 |
1.0000011.0001110.0 |
|
|
10’ |
110110110 |
1.0001100.0000000.0 |
|
|
- |
110110111 |
0.00000. 110101101.1 |
11 |