N | Код микрооперации | Действие |
п/п | м8 м7 м6 м5 м4 м3 м2 м1 | |
17 | 0001 <N> | АС = АС + Р(N), где N номер регистра Р0-Р7 |
18 | 0010 <N> | АС = АС & Р(N), где & операция коньюнкции |
19 | 0011 <N> | АС = АС U Р(N), где U операция дизъюнкции |
20 | 0100 <N> | Р(N) = АС |
21 | 0101 <N> | АС = Р(N) |
22 | 0110 <N> | АС = АС - Р(N) |
23 | 0111 <N> | АС = ~Р(N), где ~ операция инверсии |
24 | 1000 <N> | Р(N) = Р(N) + 1 |
25 | 1001 <N> | Р(N) = Р(N) - 1 |
Примечание: Операция сдвига в операционном автомате может выполняться только в регистрах АС и Р7 и всегда осуществляется на 1 разряд.
При выполнении микроопераций в регистре РФ формируются следующие признаки: N, C, V, Z, T. Ниже приведены правила формирования отдельных признаков.
Признак N - знак результата микрооперации;
Признак Z - признак нулевого результата;
Признак V - переполнение;
Признак С - выдвигаемый разряд, при операциях сдвига и арифметических микрооперациях. В операционном автомате выполняется 2 вида сдвигов: арифметмческий и циклический. В операциях циклического сдвига признак С формируется в соответствии с рис. 6.
а)
б)
Рис. 6 Циклический сдвиг влево (a) и вправо (б)
При операциях арифметического сдвига признак С формируется в соответствии с рис. 7.
а)
б)
Рис. 7 Арифметический сдвиг влево (а) и вправо (б)
При необходимости арифметического сдвига 16-ти разрядного числа в операциях умножения и деления (рис. 8), необходимо число располагать в регистре АС (старшие 8 разрядов) и в регистре Р7 (младшие 8 разрядов). В регистре АС необходимо выполнить арифметический сдвиг (при этом нулевой разряд выдвинется в С), а в регистре Р7 выполнить циклический сдвиг (при этом разряд из С вдвигается в 7 разряд Р7).
Рис. 8 Сдвиг 2n разрядного числа
Признак T - разряд переноса из 3-го разряда аккумулятора в 4-й разряд. Используется при работе с двоично-десятичными числами.
Для ускорения выполнения микроопераций операционный автомат использует 8 дополнительных бинарных управляющих сигналов Yi=(y1, у2, у3, у4, у5, у6, у7, у8). Данные сигналы формируются управляющим автоматом и подаются в операционный автомат совместно с микрокомандой в одном такте. Одновременно может формироваться несколько сигналов Уi, при условии, что совместное действие микрокоманды и дополнительных сигналов не приводит к противоречиям. В табл. 8 приведен состав дополнительных сигналов Yi.
Таблица 8
Состав дополнительных сигналов
N п/п | Дополнительный сигнал | Кодировка допо-лнительного сигнала | Действие |
1 | У1 | 0000 0001 | АС = 0 |
2 | У2 | 0000 0010 | АС = АС + 1 |
3 | У3 | 0000 0100 | РА = 0 |
4 | У4 | 0000 1000 | С = 0 |
Продолжение табл.8
N п/п | Дополнительный сигнал | Кодировка допо-лнительного сигнала | Действие |
5 | У5 | 0001 0000 | С = 1 |
6 | У6 | 0010 0000 | РА = РА + 1 |
7 | У7 | 0100 0000 | Резерв |
8 | У8 | 1000 0000 | Резерв |
2. Разработка алгоритма работы операционного устройства.
Алгоритм работы операционного устройства строится на основе использования СА. На рис. 9 приведена СА вычисления выражения У = 2(В+0,625А). Целые числа А и В, заданные в дополнительном коде, хранятся в оперативной памяти по адресам 0 и 1, результат У записывается в память по адресу 2. Каждая из вершин СА включает одну микрокоманду и, если это необходимо, дополнительные сигналы Yi. Если в данном такте в операционный автомат подаются только дополнительные сигналы Yi, то необходимо использовать пустую микрооперацию NOP (см. вершину 1 на СА). При вычислении значений 0.5А, 0.25А, 0.125А используется арифметический сдвиг вправо AR(AC). При вычислении значения 2(В+0.625А) используется арифметический сдвиг влево AL(AC), после которого осуществляется проверка на переполнение (V).
3. Микропрограммный управляющий автомат с программируемой логикой
На рис. 10 показана структура микропрограммного управляющего автомата с принудительной адресацией микрокоманд [2,7].
Рис. 9 Схема алгоритма
Автомат включает:
– ПЗУ, постоянное запоминающее устройство. В нем хранится микропрограмма управления цифровым устройством;
– РАМ, регистр адреса выполняемой микрокоманды. Перед пуском микропрограммы в РАМ задается адрес первой микрокоманды Ан микропрограммы;
– ФАМ, блок формирования микрокоманды. Формирует разряды микрооперации Мi, дополнительные управляющие сигналы Уi, и адрес следующей микрокоманды А.
Запуск в работу управляющего автомата производится сигналом ПУСК, завершение работы фиксируется появлением сигнала СТОП.
Рис. 10 Структура управляющего автомата
Формат микрокоманды записанной в ПЗУ приведен на рис. 11.
Рис. 11 Формат микрокоманды
Микрокоманда включает следующие поля [2]:
– М, 8-ми разрядное поле кода микрооперации выполняемой микрокоманды. Коды микроопераций приведены в табл. 9;
– Y, 8-ми разрядное поле дополнительных управляющих сигналов. Кодировка дополнительных сигналов приведена в табл. ח;
– ЛУ, 4-х разрядное поле логических условий, в котором представлен код проверяемого в данной микрокоманде признака, поступающего из операционного автомата. В табл. 10 представлена кодировка проверяемых признаков. Проверка значения признака (0 или 1) позволяет реализовать ветвление в микропрограмме.
Таблица 9
Кодировка признаков
Кодировка признака | Наименование признака |
0000 | Проверка признака отсутствует |
0001 | N |
0010 | C |
0011 | Z |
0100 | V |
0101 | T |
0110 | Резерв |
....... | .......... |
1111 | Безусловный переход |
– А, 8-ми разрядное поле адреса следующей микрокоманды.
Данный формат в общем случае может описывать, либо одну операторную вершину схемы алгоритма, либо операторную и условную вершину схемы алгоритма, если условная вершина непосредственно следует за операторной вершиной. Подобная ситуация представлена на рис. 12.