Устройство микропрограммного управления
Изобретение относится к вычислительной технике и может быть использовано в ВС с микропрограммным управлением. Цель изобретения - уменьшение объема оборудования за счет сокращения объема блока памяти микрокоманд, уменьшения разрядности регистра адреса, сумматора приращения и дешифратора. Устройство микропрограммного управления содержит первый мультиплексор 1, регистр 2 адреса, блок 3 памяти микрокоманд, блок 4 оперативной памяти, сумматор 5 приращения, дешифратор 6, триггер 7, реверсивный счетчик 8, группу элементов И 9 и второй мультиплексор 10. Новым в устройстве микропрограммного управления является наличие второго мультиплексора и изменение связей между блоками. 2 ил.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (51)5 G 06 Г 9 22
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
1 (2) ) 44 ) 5567/24-24 (22) 25.04,88 (46) )5,01.90, Бюл, 11 - 2 (72) А.Ф.Карпов (53) 681.32(088,8) (56) Авторское свидетельство СССР
11 544965, кл. G 06 Г 9!22, 1974.
Авторское свидетельство СССР
Р 1287.154, кл. G 06 Г 9/22, 1935. (54) УСТРОЙСТВО 1ЯКРОПРОГРАИИ110ГО
УПРАИЛЕНИЛ (57) Изобретение относится к вычислительной технике и может быть использовано в ВС с микропрограммным управлением. Цель изобретений—
„„SU„„15363 0 А1
2 уменьшение объема оборудования за счет сокращения объема блока памяти микрокоманд, уменьшения разрядности регистра адреса, сумматора приращения и дешифратора. Устройство микропрограммного управления содержит первый мультиплексор 1, регистр 2 адреса, блок 3 памяти микрокоманд, блок
4 оперативной памяти, сумматор 5 приращения, дешифратор 6, триггер 7, реверсивный счетчик S, группу элементов И 9 и второй мультиплексор 10.
Новым в устройстве микропрограммного управления является наличие второго мультиплексора и изменение связей между блоками,,2 ил °
1536380
55
Изобретение относится к вычислительной технике и может быть использовано в микропроцессорных сглстемах
С микропрограммным управлением.
Цель изобретения — уменьшение объема оборудования, На фиг. 1 представлена функциональная схема устройства; на фиг. 2— ггоследовательность синхроимпульсов, необходимая для синхронизации устройства.
Устройство микропрограммного управления содержит (фиг. 1) мульти глексор 1, регистр 2 адреса, блок 3 ггамяти микрокоманд, блок 4 оперативной памяти, сумматор 5 приращения, . дешифратор G, триггер 7, реверсивный счетчик 8, группу элементов И 9 и глультиплексор 10.
Устройство работает следующим образом.
Предполагается, что переход из главной программы в рабочую осуществляется после завершения некоторых
Операций, связанных с обращением г годпрограммам в главной программе, 11ри этом на момент перехода из главНой программы в рабочую число микроКоманд в главной программе "Переход подпрограмме" равно числу микрокоманд "Возврат из подпрограммы". 1(аждая микрокоманда перехода занимает в блоке 3 памяти микрокоманд одно слово и содержит код микрооперации и адрес первой микрокоманды подпрограммы.
Синхронизация работы устройства осуществляется двумя синхропоследо.вательностями T) и Т2 (фиг. 2), По фронту Т1 производится запись в регистр 2 адреса очередной микрокоманды. На протяжении положительного импульса Т2 блок 4 находится в режиме записи и переписывает содержимое регистра 2, увеличенное на единицу.
Все остальное время блок 4 находится в режиме считывания, Увеличение или уменьшение содержимого реверсивного счетчика 8, а также установка в состояние логической
"1" или логического "0" триггера 7 осуществляется спадом импульса Т2.
Рассмотрим работу устройства при переходе из рабочей программы в главную. Допустим, выполняется программа рабочей программы N-ro уровня вложенности. По адресу А этой подпрограммы находится микрокоманда " Переход в главную программу". По фронту Т1 код адреса А заносится в регистр 2 и с некоторой задержкой на выходе блока
3 памяти микрокоманд появится код операции микрдкоманды "Переход в главную программу". На вход дешифратора 6 поступает кодовая комбинация, при которой на втором выходе дешифратора 6 на один такт появляется сигнал логической "1" разрешающий установку триггера 7 в состояние логического "0" в конце цикла.
На вход блока 4 оперативной памяти поступает из регистра 2 через сумматор 5 приращения код адреса А+1 следующей микрокоманды подпрограммы рабочей программы. По положительноглу к-л сигналу Т2 он записывается в (N+2 )-к ячейку блока 4 оперативной памяти, где 1(— число разрядов кода адреса блока оперативной памяти, поскольку с триггера 7 на старший разряд адресных входов блока 4 оперативной памяти поступает сигнал логической "1", а содержимое реверсивного счетчика 8 равно N и на вторые входы элементов
И 9 группы поступает сигнал логической "1" (фиг. 2а).
В начале следующего такта (фиг.2б) считывания содержимого блока 4 оперативной памяти триггер 7 находится в состоянии логического "0", а на второй информационный вход второго муль-. типлексора 10 поступает сигнал логической "1" с дешифратора 6, На управляющий вход второго мультиплексора 10 поступает сигнал нулевого уров— ня синхросигнала 12. Поэтому в момент времени, определяемый дизъюнкцией этих сигналов, на выходе второго мультиплексора 10 появляется сигнал логического "0", запрещающий поступление содержимого реверсивного счетчика 8 через группу элементов И
9 на адресные входы блока 4 оперативной памяти. При этом на старший разряд адресных входов блока 4 оперативной памяти поступает сигнал логического "0" с триггера 7, а на остальные разряды — сигнал логического "Он с группы элементов И 9. Таким образом, в следующем такте из блока 4 оперативной памяти считывается код адреса микрокоманды, хранимый в ячейке блока 4 оперативной памяти с нулевым адресом. Пусть этот код адреса возврата в глявнук программу ра— вен В.
6380
5 153
По фронту Тl этот код заносится в регистр 2 адреса и начинается выполнение действий в главной программе.
Допустим, в главной программе по ад- . ресу В (фиг.2б) находится микрокоманда "Переход к подпрограмме", т.е ° в слове этой микрокоманды содержится код микрооперации и адрес первой микрокоманды подпрограммы; Пусть адрес первой микрокоманды подпрограммы равен С. При этом содержимое реверсивного счетчика 8 равно N а триггер 7 обнулен, что соответствует выбору в блоке 4 оперативной памяти ячейки с адресом.N.
Сумматор 5 приращения производит приращение содержимого регистра 2, и на информационный вход блока 4 оперативной памяти поступает код В+1.
Во время положительного импульса Т2 этот код записывается в ячейку 4 оперативной памяти с номером N, что соответствует запоминанию адреса воз врата (фиг. 2б), С выхода поля типа микроопераций блока 3 памяти микрокоманд на вход дешифратора 6 пбступает комбинация, соответствующая разрешению приращения реверсивного счет-. чика 8 на единицу. По спаду 2 содержимое счетчика 8 становится равным
N+ 1.
В этом же такте с появлением на выходе блока 3 памяти микрокоманд микрокоманды "Переход к подпрограмме мультиплексор 1 переключает вход регистра 2 с выхода блока 4 оперативной памяти на выход поля адреса блока 3 памяти микрокоманд. Тогда в следующем цикле в регистр.2 по фронту Т 1 будет загружен код С, а в (N+I)-ю ячейку блока 4 оперативной памяти запишется код С+l.и произойдет обратное переключение мультиплексора 1 (фиг, 2в), Таким образом, за один цикл работы устройства произошло запоминание адреса возврата в ячейке с номером N блока 4 оперативной памяти и переход к первой микрокоманде подпрограммы главной программы, Переход из этой подпрограммы в следующую реализуется аналогично. При этом адреса возврата будут храниться в ячейках блока 4 оперативной памяти с.адресами N u
И+1, а содержимое реверсивного счетчика 8 станет равным N+2. Число уровней вложенности подпрограмм ограничи-. вается лишь длиной реверсивного счет5
55 чика 8 и числом ячеек блока 4 оперативной памяти.
Возврат из подпрограммы главной программы, так же, как и в рабочей программе, происходит по микрокоманде "Возврат из подпрограммы", являющейся последней микрокомандой подпрограммы, Допустим, обрабатывается подпрограмма первого уровня вложенности, а микрокоманда "Возврат из подпрограммы" находится по адресу D. По фронту
Т1 (фиг. 2г) код адреса микрокоманды
"Возврат.из подпрограммы" D заносится в регистр 2, и на вход дешифратора 6 поступает кодовая комбинация, соответствующая разрешению уменьшения содержимого реверсивного счетчика 8 на единицу. Тогда в начале следующего такта (фиг. 2д) из блока 4 оперативной памяти будет считываться содержимое ячейки с адресом N в которой хранится адрес возврата, для нашего примера равный В+1, который по фронту
Т1 запишется в регистр 2. Далее коды адреса, пройдя .через сумматор 5 приращения, будут записываться в ячейку блока 4 оперативной памяти под номером N.
После выполнения действий в главной программе можно вернуться в подпрограмму рабочей программы„ из которой был осуществлен переход в главную программу. Это происходит по микрокоманде "Возврат в программу", которая, предположим, находится по,адресу В+1, При выполнении этой команды дешифратор 6 вырабатывает на первом выходе сигнал, разрешающий установку триггера 7 в состояние логической "1". При этом на первый информационный вход второго мультиплексора 10 поступает с дешифратора 6 сигнал логической
"1", на управляющий вход второго мультиплексора 10 — положительный сигнал Т2, а на выходе второго мультиплексора )О появится сигнал логического "0", поэтому в момент записи в блок 4 оперативной памяти на адрес ные входы блока 4 через группы элементов И 9 будут поданы сигналы логического "О", Триггер 7 также до конца цикла находится в состоянии логического "0 . Поэтому запись последнего адреса главной программы, увеличенного на единицу В+2, произойдет в ячейку блока 4 оперативной памяти с адресом 0 (фиг. 2д). В конце цикла
153б38О по спаду Т2 триггер 7 устанавливается в состояние логической "1" и считывание следующего адреса микрокоманды из блока 4 оперативной памяти (фиг. 2е) будет осуществляться из ячейки с номером N+2, поскольку од в реверсивном счетчике 8 сохранил свое значение, равное N а на
1 старший разряд входа адреса блока 4 перативнай памяти поступает логиеская "1" с триггера 7. 3 этой ячейе хранится код адреса, для данного римера равный А+1 Далее этот код, дреса по фронту Tl заносится в регистр 2 и выполняются операции в рабочей программе, (10
Переход на подпрограммы и возврат из них в рабочей программе осущест вляется точно так же, как и в глав,ной программе, с той лишь разницей, что адреса возврата записываются в ячейки блока 4 оперативной памяти с такими номерами, в которых старший
lpазряд адреса ячейки равен логичес( кой "1".
Формула изобретения
Устройство микропрограммного управления, содержащее первый мульти;плексор, регистр адреса,, блок памяти микрокоманд, блок оперативной памяти, сумматор приращения, дешифратор, 35 триггер, реверсивный счетчик, группу элементов И, причем первый информаци,онный вход первого мультиплексора соединен с выходом поля адреса блока памяти микрокоманд, второй HH(bopMBUH 40 онный вход первого мультиплексора соединен с выходом блока оперативной памяти, выход первого мультиплексора соединен с информационным входом регистра ацреса, выход которого соединен с адресным входом блока памяти микрокоманд, а также с входом сумматора приращения, выход которого подключен к информационному входу блока оперативной памяти, выход поля микроопераций блока памяти микрокоманд яв— ляется выходом устройства, выход поля типа микрокоманды блока памяти микрокоманд соединен с входом денифратора, первый и второй выходы дешифратора соединены соответственно с входами установки в "1" и в "0" триггера, третий и четвертый выходы дешифратора соединены соответственно с суммирующим и вычитающим входами реверсивного счетчика, выходы которого соединены с первыми входами элементов И группы, выходы которых соединены с адресными входами младших разрядов блока оперативной памяти, первый тактовый вход устройства подключен к синхровходу регистра адреса, второй тактовый вход устройства подключен к синхровходам триггера и реверсивного счетчика, а также к входу чтения-записи блока оперативной памяти, о т л и ч а ю щ е е с я тем, что, с целью уменьшения объема оборудования, оно содержит второй мультиплексор, причем выход триггера соединен с адресным входом старшего разряда блока оперативной памяти, управляющий вход первого мультиплексора соединен с третьим выходом,цешифратора, первый и второй выходы,цешифратора соединены соответственно с первым и вторым информационными входами второго мультиплексора, управляющий вход которого соединен с вторым тактовым входом устройства, выход второ"0 мультиплексора соединен с вторыми входами элементов И группы, 1536380
8ых.4
8мх 7
Составитель 10,Ланцов
Редактор Е.Копча Техред M.Äèäûê Корректор Т. Палий
Заказ 109 Тираж 556 Подписное
ВНИИПИ Государственного комитета по изобретенйям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат "Патент", r. Ужгород, ул. Гагарина, 191




