Синтез микропрограммного управляющего автомата с жесткой логикой
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
ль< множимое Сумма ЧПкомментарий0,100110,00000010100,0000000000сложение0,00000010100,00000010100,010010,00000101000,0000001010сложение0,00000101000,00000111100,001000,00001010000,0000011110сдвиги0,000010,00101000000,0000011110сложение0,00101000000,00101111100.000000,01010000000,0010111110
Сложение порядков в МДК 00,00101
,00101
,01010
,0010111110 - псевдопроизведение
,01101 +Вдк
,1001011110
(A*B)дк = 1,1001011110 (M=210)
Проверка (A*B)ПК = 1,0110100010
A*B=-110100010(2) = -418
Обоснование и выбор функциональной схемы операционной части устройства и определение микроопераций и логических условий
Операционный автомат содержит следующие элементы (приложение А):
- 24х разрядный сдвиговый регистр RG1 для приема и хранения множителя;
- 47и разрядный сдвиговый регистр RG2 для приема и хранения множимого;
- 47и разрядный сдвиговый регистр RG3 для записи и хранения частных сумм результата;
- 8и разрядный регистр RG4 для приема и хранения порядков;
- 46и разрядный сумматор SM1 для сложения частных сумм и множимого;
- 9и разрядный сумматор SM2 для сложения порядков;
- вычитающий 9и разрядный счетчик СТ1 для хранения порядков и работы с ними;
- суммирующий 6и разрядный счетчик СТ2 для управления умножением;
- совокупность 7 схем сложения по модулю два для получения инверсии содержимого регистра RG4;
- совокупность 7 схем сложения по модулю два для получения инверсии содержимого счетчика СТ1;
- RS-триггер для хранения признака ПРС;
- схема сложения по модулю два для определения ПРС
- схема сложения по модулю два для определения знака результата
- схема сложения по модулю два для определения необходимости нормализации мантиссы
- 23х разрядный элемент И для определения равенства сомножителей нулю;
- мультиплексор MS для передачи информации на плечо B сумматора SM1;
- усилитель-формирователь для выдачи результата на выходную шину.
Операнды разрядностью 4 байта поступают по входной шине в операционный автомат. Запись мантиссы множителя производится в регистр RG1, а также RG2 (в младшие разряды, в старшие заносятся 0) для анализа ее на ноль. Запись мантиссы множимого осуществляется только в RG2. Если один из сомножителей равен нулю, то производится выдача нуля на выходную шину. Порядки сомножителей записываются в RG4. Результат суммирования порядков находится в счетчике СТ1. В RG3 заносятся частные суммы. Перед выполнением умножения, если это необходимо, производится коррекция. После выполнения умножения по мере необходимости, производится нормализация полученного числа и, если нет ПРС, выдача его на выходную шину через усилитель-формирователь.
Для организации работы всего автомата необходимо из УА подать в ОА управляющие сигналы, реализующие следующие МО:
y0 - сброс RG3, Т1 и CT1, занесение мантиссы в RG1, СТ2:=001001;
y1 - занесение мантиссы в RG2 и порядка в RG4;
y2 - управление мультиплексором и подача единицы на вход CRP сумматора SM1;
y3 - занесение в RG3;
y4 - управление совокупностью схем сложения по модулю два (для перевода порядка в ДК);
y5 - подача единицы на вход CRP сумматора SM2 (для перевода порядка в ДК);
y6 - занесение в СТ1;
y7 - сдвиг RG3 на 23 разряда влево (после коррекции) и запись в старший разряд RG3 знака результата;
y8 - сдвиг RG1 вправо, RG2 влево, CT2:=CT2+1;
y9 - сдвиг RG3 влево, CT1:=CT1-1;
y10 - Т1:=1 - установка триггера ПРС;
y11 - сброс RG4 и управление совокупностью схем сложения по модулю два (для перевода результирующего порядка в ДК);
y12 - управление выдачей информации на ШИВых
Из операционного автомата в управляющий необходимо передать осведомительные сигналы о состоянии устройств ОА, определяемые списком следующих логических условий:
X - проверка наличия операндов на входной шине;
р1 - если р1=1, то сомножитель равен нулю;
р2 - знак множимого;
р3 - знак порядка в RG4;
р4 - знак множителя в RG1;
р5 - p5=1 - ПРС;
р6 - знак результата сложения порядков;
р7 -анализируемый разряд множителя;
р8 - р8=1 - условие завершения умножения;
р9 - отсутствует - необходимо нормализовать RG3;
Z - проверка возможности выдачи на ШИВых.
Таким образом, управляющий МПА должен вырабатывать 13 управляющих сигналов и посылать их в ОА в нужные такты машинного времени в соответствии с алгоритмом, ориентируясь на 11 осведомительных сигналов, поступающих из ОА.
3Реализация содержательной ГСА
Содержательная граф-схема алгоритма представлена в приложении В.
Выполнение алгоритма начинается с проверки наличия операндов на ШИВх (блоки 1 и 4). При поступлении первого операнда происходит занесение его мантиссы в RG1 и младшие разряды RG2 (в старшие разряда заносятся 0), его порядка в RG4, а также обнуление RG3, занесение 01001 в CT2 и сброс триггера T1 и счетчика СТ1(блок 2). Затем производится анализ знака множимого (блок 5): если р2=1, то формируется и заносится в RG3 ДК от мантиссы множителя (блок 6), - анализ знака порядка в RG4 (блок 7): если р3=1, то в СТ1 заносится ДК от порядка, если нет - то ПК, - и занесение мантиссы множимого в младшие разряды RG2 (в старшие разряда заносятся 0), порядка множимого в RG4(блоки 8 и 9). Затем производится анализ знака множителя (блок 11): если р4=1, то формируется и заносится в RG3 ДК от мантиссы множимого (блок 12). После занесения каждого из сомножителей производится анализ p1. Если хотя бы в одном случае p1=1 (блоки 3 и 10), значит операнд равен нулю и необходимо перейти к блоку 26.
Затем производится анализ знака порядка множимого в RG4 (блок 13): если р3=1, то к содержимому СТ1 прибавляется ДК от порядка в RG4, если нет - то ПК, - а также сдвиг RG3 влево на 23 разряда и занесен?/p>