Микропрограммное управляющее устройство
Иллюстрации
Показать всеРеферат
ОПИСАНИЕ
ИЗОБРЕТЕНИЯ
Союз Советских
Социалистических
Ввслублнк
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к .авт. свкд-ву(22) Заявлено 0411,81 (21) 3354088/18-24
)54) М. Кд.з, G 06 Р 9/22 с присоедммеммем заявки No—
Государетвеиний комитет
СССР но делан изобретений н открытий (23) Приоритет—
Опубликовано 15у 3,83. Бюллетень йо 10
15З)УДК 881. 325 (088.8) Дата опубликования описания 150383 (72) Авторы изобретения
Ю.Я. Пушкарев и Д.В. Полонский (71) Заявитель. (54) МИКРОПРОГРАММНОЕ УПРАВЛЯЮЩЕЕ
УСТРОЙСТВО
Изобретение относится к автоматике и вычислительной технике и может быть использовано в.цифровых вычислительных системах, а также терминальной аппаратуре.
Известно микропрограммное управляющее устройство,, содержащее. блок памяти микрокоманд, регистр адреса, регистр микрокоманд, дешифратор, счетчик, генератор импульсов; блок проверки условий, группу элементов И, делитель частоты,- элемент ИЛИ, шифратор 1).
Недостатком даниого устройства является .его низкое быстродействие из-за потери времени при переходе в одной микрокоманде из одного используемого микротакта к следующему через несколько неиспользуемых..
Наиболее близким. к предлагаемому является устройство, содержащее блок памяти микрокоманд, регистр микроко» манд, регистр адреса, блок проверки условий, генератор импульсов, группу элементов И, регистр блокировки и элемент И, причем выходы блока проверки условий соединены с входамк регистра адреса, выходы которого соединены с входами блока памяти микрокоманд, выходы которого соеди. иены с информационными входами микрокоманд, адресные выходы которого соединены с информационными входами. блока проверки условий, управляющие входы которого являются входом устройства, управляющие выходы регистра микрокоманд соединены с первыми входами каждого элемента И, группы элементов И,. выходы которых являются первым выходом . устройства, а информационные выходы регистра микрокоманд являются вторым выходом устройства, выход каждого элемент -И группы элементов И соединен с инверсными входами всех последующих элементов И группы элементов И, с ин;версным входом элемента И и с установочным входом .регистра. блокировки соответственно, выходы регистра блокировки соединены с вторыми входами элементов И группы элементов И, выход элемента И соединен с управляющим входом регистра микрокоманд и с входом. Установки в исходное состо25 яние регистра блокировки, тактирующий вход которого соединен с выходом генератора импульсов 523.
В известном устройстве совмещено в одной микрокомандном. цикле испол30 нение текущей микрокоманды и выборка
1005051 б5 следующей микрокоманды. По адресной части текущей микрокоманды, находящейся в регистре микрокоманд, и значению логических условий определяется адрес следующей микрокоманды .и производится ее выборка из блока . памяти микрокоманд. Таким образом, когда выполнение текущей микрокоманды заканчивается следующая микрокоманда оказывается уже выбранной и поступает на вход регистра микрокоманд. Однако значение сигнала усло.,вия, формирующегося н результате выполнения последнего микроприказа, определяется только в конце последнего микротакта выполнения микрокоманды и не может быть учтенным в сформированном адресе следующей микрокоманды. Поэтому при выполнении условных переходов с учетом условий, значение которых определяется в последнем микротакте выполнения микро- 20, команды, на каждом таком переходе в микропрограмме предусматривается
"холостая"микрокоманда, не вызывающая никаких полезных действий. Эта микрокоманда выполняет функцию за- 2 держки на один микротакт. Наличие
"холостых" микротактов при выполнении микрокоманд снижает производительность известного устройства.
Целью изобретения является повышение производительности устройства.
Поставленная цель достигается тем, что микропрограммное управляющее устройство, содержащее блок памяти микрокоманд, регистр микрокоманд, регистр адреса, блок проверки условий, генератор тактовых импульсов, группу элементов И, причем выход адреса регистра микрокоманд подключен к первому входу блока проверки условий, второй вход которого 40 подключен к выходу номера логических условий регистра микрокоманд, операционный выход которого подключен к информационному выходу устройства, управляющий выход регистра мик-45. рокоманд соединен с первыми входами элементов И группы, вторые входы которых соединены с выходами регистра блокировки соответственно, выход каждого элемента И группы подключен к инверсным входам всех последующих элементов И группы, к управляющим выходам устройства, к инверсным входам элемента И и к нулевым установочным входам регистра блокировки, единичный установочный вход которого соединен с выходом элемента И и, с входом записи регистра микрокоманд, выход reнератора тактовых импульсов подключен к управляющим вхо- дам регистра блокировки и регистра 60 адреса, информационный вход которого подключен к первому выходу блока проверки условий, третий вход которого подключен к входу логических условий устройства, установочные входы регистров адреса и микрокоманд подключены к входу начальной установки устройства, дополнительно содержит коммутатор и блок ассоциативной памяти, причем выход номера логических условий регистра микрокоманд соединен с первой группой адресных входов блока ассоциативной памяти, вторая группа адресных входов которого соединена с адресными входами блока памяти микрокоманд и с информационными выходами регистра адреса, нторой выход блока проверки условий подключен к управлякщему входу коммутатора, первый и второй информационные входы которого соединены соответственно с выходами блоков ассоциативной памяти и памяти микроКоманд, выход коммутатора соединен с информационным входом регистра микрокоманд.
На фиг, 1 изображена схема предлагаемого устройства» на фиг; 2 схема коммутатора на фиг. 3 — схема блока проверки условий; на фиг.4временные диаграммы работы устройства.
Микропрограммное устройство управления содержит блок 1 памяти микрокоманд, регистр 2 адреса, регистр 3 микрокоманд, вход 4 начальной установки устройства, выход 5 устройстна, коье утатор 6, блок 7 ассоциативной памяти, блок 8 проверки условий, вход
9 устройства, группу элементов И 10, управляющие выходы 11 устройства, регистр 12 блокировки, элемент И 13, генератор 14 тактовых импульсов.
Коммутатор б фиг. 2) содержит элемент HE 15 и группы элементов И
1б и 17 и ИЛИ 18.
Блок 8 проверки условий (фиг. 3) содержит группу элементов ИСКЛЮЧАЮЩЕЕ
ИЛИ 19; дешифратор 20, группу элементов И 21, элемент ИЛИ 22.
Микропрограммное упранлякщее устройство работает следукщим образом.
На вход 4 устройства подается сигнал начальной установки, по которому регистр 2 адреса и регистр 3 микрокоманд устанавливаются в нулевое состояние. Нулевые сигналы с управляющих выходов регистра 3 микрокоманд поступают на входы элементов И 10, н результате чего на их выходах также устанавливаются нулевые сигналы. При этом срабатывает элемент И 13 и сигнал с его выхода устанавливает н исходное единичное состояние регистр
12 блокировки, при этом на входы элементов И 10 с выходов регистра
12 блокировки поступают разрешакщие единичные сигналы. Сигнал с выхода элемента И 13 поступает, также на вход занесения регистра 3 микрокоманд.
Однако занесение в регистр 3 микрокоманд не выполняется до тех пор, пока не снимается сигнал начальной установки с входа 4 устройства. По нулевому значению содержимого регист .
1005051 ра 2 адреса блока 1 памяти микрокоманд выбирается начальная микрокоманда и поступает на первую группу информационных входов коммутатора 6.
Сигналы с адресных выходов регистра
3 микрокоманд поступают на информа- 5 ционные входы .блока 8 проверки условий.
Микрокоманда состоит из трех частей: адресной, операционной и управляющей. 30
Адресная часть микрокоманды состоит из двух полей. В первом поде указывается код, по которому формируется адрес следуив ей микрокоманды. Сигналы, соответствующие этому полю, поступают 5 на первые входы элементов ИСКЛЮЧАЮЩЕЕ
ИЛИ 19. В другом поле указывается номер логического условия, значение которого определяется в конце последнего микротакта выполнения микро20 команды. Сигналы, соответствукщие этому полю, поступают одновременно на адресные входы блока 7 ассоциативной памяти и входы дешифратора
20. Так как сигналы на входах дешифратора 20 равны нулю после сигнала начальной установки, то на его первом выходе вырабатывается единичный сигнал и через элемент ИЛИ 22 поступает на управляющий вход коммутатора 6. При этом на входах группы элементов И 17 устанавливается разрешающий потенциал, а на вторых входах элементов И 16-запрещающий нулевой потенциал. Поэтому на выход коммутатора 6 передается через элементы И 17 и ИЛИ 18 начальная микрокоманда с выхода блока 1 памяти микрокоманд. Таким образом., после снятия сигнала начальной установки с входа 4 устройства начальная микро- 40 команда заносится в регистр 3 микрокоманд.
Операционная часть микрокоманды содержит коды операцйй, выполняемых операционными схемами, которыми уп- 45 равляет данное микропрограммное управляющее устройство.
В управляющей части задаются микроприказы, с помощью которых потактно производится .выполнение микроко50 манды.
Например, для выполнения занесенной в.регистр 3 микрокоманды необхо- димы три микротакта, причем в течение первого, второго и третьего мик« ротактов единичный сигнал должен присутствовать на выходе первого, пятого и двенадцатого элементов И
10 соответственно. Поэтому на первом, пятом и двенадцатом управляющих выходах регистра 3 микрокоманд при- 60 сутствует единичный сигнал, а на остальных управляющих выходах - нулевой. Тогда на выходе первого элемента И 10 в течение первого микротакта присутствует единичный сигнал (фиг. 4б ),вследствие чего все последующие элементы И 10 закрываются.
Во втором микротакте по импульсу с выхода генератора 14 и при наличии единичного сигнала на первом установочном входе первый разряд регистра
12 блокировки устанавливается в ноль.
При этом первый элемент И 10 закрывается, открывая тем самым все последующие элементы И 10..Так как второй, третий и четвертый элементы
И 10 закрыты нулевыми сигналами с управляющих выходов регистра 3 микрокоманд, единичный сигнал выраба-" тывается на выходе пятого элемента
И 10 °
В третьем микротакте аналогично .устанавливается в ноль пятый разряд регистра 12 блокировки, при этом состояние остальных разрядов регистра
12 не изменяется. В результате этого пятый элемент И 10 закрывается, первый элемент И 10 остается в закрытом состоянии, а на выходе двенадцатого элемента И 10, аналогично предыдущим, вырабатывается единичный сигнал (фиг. 4г). После того, как,в очередном микротакте двенадцатый разряд регистра 12 блокировки устанавЛивается .в ноль и, вследствие этого, закрывается двенадцатый элемент И 10, на выходах всех элементов И 10 единичный сигнал отсутствует, так как нулевой сигнал присутствует на всех .последующих после двенадцатого управляющих выходах регистра 3 микрокоманд. Поэтому на выходе элемента
l1 1.3 вырабатывается сигнал (фиг. 4е), по которому все разряды регистра 12 блокировки устанавливаются в единичное состояние. Одновременно следующая микрокоманда с выхода коммутатора 6 заносится в регистр 3 микрококанд, и единичный сигнал вырабатывается на выходе того элемента И, на вход- которого поступает единичный сигнал с управляющего выхода регистра 3 микрокоманд, имеющего наименьший порядковый номер.
До этого момента на управляющие входы 9 блока 8 проверки условий в результате выполнения каждого микроприкаэа из операционных схем поступают сигналы логических условий.
Поэтому на выходах элементов MCKJIDЧАЮЩЕЕ ИЛИ 19 после каждого микротакта вырабатывается модифицированный адрес следующей ю крокоманды. Этот адрес по каждому импульсу с выхода генератора 14 заносится в регистр
2 адреса.
В рассматриваемом примере в третьем микротакте по импульсу с выхода генератора 14 в регистр 2 адреса заносится окончательный адрес. Однако сигнал условия по результату выполнения третьего микроприказа вырабатывается только в конце третьего
1005051 микротакта и поэтому оказывается неучтенным при формирования окончательного адреса. Поэтому мз блока 1 памяти микрокоманд по содержимому регистра 2 адреса выбирается следующая микрокоманда, которая выполняется в случае выполнения неучтенного условия. А из блока 7 ассоциативной памяти по адресу с выхода регистра
2 адреса и по нулевому номеру условия из адресной части микрокоманды 10 выбирается следующая микрокоманда, которая выполняется в случае невы.полнения этого условия. Обе микрокоманды поступают на входы коммутатора 6е 15
Номер условия поступает также.на входы.дешифратора 20, в результате чего на одном из его выходов вырабатывается единичный сигнал, который выбирает один из элементов И 21, на другой вход которого поступает сигнал неучтенного условия. Если условие выполняется (равно единице), единичный сигнал с выбранного элемента И 21 через элемент ИЛИ 22 поступает на управляющий вход коммутатора 6. В результате этого коммутатор 6 подключает к входам регистра
3 микрокоманд микрокоманду с выхода блока 1 памяти микрокоманд. Если условие не выполняется (равно нулю ), ЗО то сигнал на управляющем выходе блока 8 проверки условий равен нулю, и коммутатор 6 передает на входы регистра 3 микрокоманду с выхода блока 7 ассоциативной памяти. Таким об- 35 разом по сигналу с выхода элемента "
И 13.в регистр 3 микрокоманд заносится заранее подготовленная микрокоманда. В тех же микрокомандах, где значение условия по результату вы- 40 полнения последнего микроприказа не учитывается, после номера условия в адресной части микрокоманды равно нулю. При этом единичный сигнал с первого выхода дешифратора 20 поступает через элемент ИЛИ 22 на управляющий вход коммутатора 6, в результате чего последний передает на входы регистра 3 микрокоманд микрокоманду с выхода блока 1 памяти микрокоманд. Объем блока 7 ассоциативной памяти определяется количеством условных переходов, выполняемых с учетом условий, значение которых определяется в последнем микротакте выполнения микрокоманды. 55
Таким образом, в предлагаемом устройстве при выполнении условных переходов с учетом усровий, значение: которых определяется в последнем 60 микротакте выполнения микрокоманды, не происходит потери производительности за счет наличия "холостого" микротакта, в отличие от прототипа, где при этом всегда присутствуют 65
"холостые" микротакты, что снижает
его производительность.
Положительный эффект достигается почти без увеличения аппаратурных затрат устройства, так как введение блока ассоциативной памяти компенсируется сокращением блока памяти микрокоманд за счет исключения."холостых" команд.
Использование предлагаемого устройства наиболее целесообразно в тех применениях, где показатель производительности и связанный с ним показатель общего времени выполнения микропрограмм являются наиболее критичными, например в коллекторах быстродействующих периферийных уст- . ройств, графических терминалах. для оценки преимуществ предлагаемого устройства сравним его с базовым объектом, в качестве которого возьмем микропрограммное управляющее устройство, встроенное в устройство подготовки экспериментальных данных для ЭВМ ЕС-1022. Базовое микропрограммное устройство построено аналогично прототипу.
Экспериментально установлено) что время выполнения микропрограмм с использованием предлагаемого устройства за счет его повышенной производительности в 1,15 раз меньше, чем с использованием базового объекта.
Формула изобретения
Микропрограммное управляющее устройство, содержащее блок памяти микрокоманд, регистр микрокоманд, ре гистр адреса, блок проверки условий, генератор тактовых импульсов, группу элементов И, регистр блокировки и элемент И, причем выход. адреса регистра микрокоманд подключен к первому входу блока проверки условий, второй вход которого подключен к выходу номера логических условий регистра микрокоманд, операционный выход которого подключен к информационномувыходу устройства, управляющий выход регистра микрокоманд соединен с первыми входами элементов И группы, вторые входы которых соединены с выходами регистра блокировки соответственно, выход каждого элемента И группы подключен к инверсным входам всех последующих элементов И группы, к управляющим выходам устройства, к инверсным входам И и к нулевым установочным входам регистра блокировки, единичный установочный вход которого соединен с выходом элемента
И и с входом записи регистра микрокоманд, выход генератора тактовых импульсов подключен к управляющим входам регистра блокировки и регистра
10050 51
11 11
9
Фиг.
fl
Е
ff г а
6 адреса, информационный вход которого подключен к первому выходу блока проверки условий, третий вход которого подключен к входу логических условий устройства, установочные входы регистров адреса и микрокоманд подключены к входу начальной установки устройства, о т л и ч а ющ е е с я тем, что, с целью повышения производительности, оно содержит коммутатор и блок ассоциативной памяти, причем выход номера логических условий регистра микрокоманд соединен с первой группой адресных входов блока ассоциативной памяти, вторая группа адресных входов которого 15 соединена с адресными входами блока
ВНИИПИ Заказ 1900/64
Тираж 704 Подписное
Филиал ППП "Патент", г.Ужгород, ул.Проектная,4 памяти микрокоманд и с информационными выходами реги тра адреса, второй выход блока проверки условий подключЕн к управляющему входу коммутатора, первый и второй информационные входы которого соединены соответственно с выходами блоков ассоциативной памяти и памяти микрокоманд, выход коммутатора соединен с информационным входом регистра микрокоманд.
Источники информации, принятые во внимание при экспертизе
1. Авторское свидетельство СССР
9 664400229944, -кл. G 06 F 9/22, 1976.
2. Авторское свидетельство СССР по заявке У 2918689, кл. G 06 F 9/22, 1980.