Синтез микропрограммного управляющего автомата
Рефераты >> Программирование и компьютеры >> Синтез микропрограммного управляющего автомата

Таким образом, для выполнения операции умножения из управляющего автомата в операционный автомат необходимо подать управляющие сигналы, реализующие следующие микрооперации:

y1 - запись в RG1,

запись в RG3,

сброс T1,

занесение “001001” в CT2;

y2 - запись в RG2,

запись в CT1,

разрешить запись в T1;

y3 - обнуление RG4;

y4 - запись в RG4;

y5 - CT2:=CT2+1,

сдвинуть вправо RG1:=0.R1(RG1),

сдвинуть вправо RG4:=0.R1(RG4);

y6 - SMp=1 – подача “1” на вход переноса сумматора,

управление совокупностью схем сложения по модулю 2;

y7 - CT1:=CT1-1,

сдвиг влево RG4:=L1(RG4).0;

y8 - управление выдачей на ШИВых;

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

Х - проверка наличия операндов на ШИВх,

p1 - знак операнда в RG1;

p2 - знак операнда в RG2;

p3 - проверка на наличие нулевого операнда в RG2;

p4 - проверка очередной цифры множителя;

p5 - проверка условия выхода из цикла;

p6 - проверка результата на нормализованность;

p7 - проверка условия ПРС;

Z - проверка возможности выдачи по ШИВых.

Таким образом, управляющий МПА должен вырабатывать 8 управляющих сигналов и посылать их в ОА в нужные такты машинного времени в соответствии с алгоритмом выполнения операции сложения, ориентируясь на 9 осведомительных сигналов, поступающих из ОА, структурная схема которой представлена на рисунке 1.

5 Реализация содержательной ГСА

Содержательная граф-схема алгоритма представлена на рисунке 2. Выполнение алгоритма начинается с проверки наличия операндов на ШИВх (блоки 1 и 5). При поступлении первого операнда происходит его занесение в RG1, RG2, RG3 и CT1, а также обнуление RG4, занесение “001001” в CT2 и сброс триггеров T1 и T2 (блок 2). Затем в регистр RG4 поступает ДК от первого операнда (блок 4). При поступлении второго операнда происходит его занесение в RG2 и CT1 (блок 6). После каждого занесения производится анализ p3. Если хотя бы в одном случае p3=1 (блоки 3 и 7), значит операнд равен нулю и значит необходимо обнулить RG4, RG3, CT1, T1 (блок 19) и перейти к блоку 20. В противном случае продолжается процесс коррекции. Если p2=0 (блок 8) тогда обнуляется регистр RG4 (блок 9). Если p1=1 (блок 10) тогда получившаяся в сумматоре SM1 сумма заносится в RG4 (блок 11).

Далее получается псевдопроизведение. Если p4=0 (блок 12), тогда получившаяся в сумматоре SM1 сумма заносится в RG4 (блок 13). В любом случае выполняется блок сдвигов (блок 14): содержимое RG1 и RG4 сдвигаются вправо, CT2 увеличивается на “1“. Далее проверяется p5 (блок 15) - условие выхода из цикла. Если p5=1, цикл завершается, иначе переход к блоку 12.

Затем производится нормализация. Если p6=0 (блок 16), то выполняется блок сдвигов (блок 18): содержимое RG4 сдвигается влево, CT2 уменьшается на “1“.

При сложении характеристик одинакового знака возможно переполнение разрядной сетки (ПРС). Если p7=1 (блок 17), возникло ПРС и операция умножения завершается.

Затем результат при Z=1 (блок 21) будет передан по ШИВых (блок 22) в другие устройства.

6 Построение отмеченной ГСА

Перед разметкой содержательной ГСА поставим возле каждой операторной вершины управляющие сигналы УА и обеспечивающие выполнение требуемых действий в соответствии со списком МО операционного автомата. Совокупность МО для каждой операторной вершины образуют микрокоманды (МК), список которых приведен в таблице 5.

Таблица 5

MK

Совокупность МО

Y1

y1,y2,y3

Y2

y2

Y3

y3

Y4

y4

Y5

y5

Y6

y4,y6

Y7

y7

Y8

y8

Y9

y1,y3

Каждой условной вершине содержательной ГСА поставим в соответствие один из входных сигналов управляющего автомата X1, … ,X9, список которых дан в таблице 6.

Таблица 6

Входной сигнал УА

X1

X2

X3

X4

X5

X6

X7

X8

X9

Логическое условие ОА

X

p3

p2

p1

p4

p5

p6

p7

Z

Далее в полном соответствии с содержательной ГСА строим отмеченную ГСА (рисунок 3), условным вершинам которой приписывается один из входных сигналов УА (x1, .,x9), а операторным вершинам - одна из МК (в скобках указана совокупность МО для каждой МК). Выделение состояний управляющего МПА возможно в соответствии с моделью Мили или моделью Мура.

На рисунке 3 приведена разметка ГСА для модели Мили символами a0,а1, .,а9 и для модели Мура - символами b0,b1, .,b12. Таким образам, если строить управляющий МПА в соответствии с моделью Мили, то он будет иметь 10 состояний, а в соответствии с моделью Мура - 13 состояний.

Замечание. В двух вершинах ожидания (5 и 20) при разметке по Муру введены фиктивные состояния автомата b3 и b10.

Явно большее число состояний для модели Мура по сравнению с моделью Мили не дает достаточных оснований для выбора модели Мили как более предпочтительной. Сравнение вариантов можно будет выполним лишь на этапе построения функциональных схем УА, сравнив схемы по сложности и быстродействию. Поэтому далее будем вести проектирование УА параллельно для модели Мили и для модели Мура.

7 Синтез МПА в соответствии с моделью Мили

7.1 Построение графа автомата

На основе отмеченной ГСА построен граф автомата Мили (рисунок 4). Граф автомата Мили имеет 10 вершин, соответствующих состояниям автомата а0, а1, .,а9, дуги его отмечены входными сигналами, действующими на каждом переходе (числитель), и набором выходных сигналов, вырабатываемых УА на данном переходе (знаменатель).


Страница: