Микропрограммное устройство управления
Иллюстрации
Показать всеРеферат
МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ,содержащее блок памяти микрокоманд, регистр адреса, регистр микроопераций, коммутатор адреса, коммутатор внешних логических уело- . ВИЙ, дешифратор, триггер пуска и генератор тактовых импульсов, причем вход кода команды устройства соединен с первым информационным входом коммутатора адреса, выход которого соединен с информационным входом регистра адреса, выход которого соединен с адресным входом блока памяти микрокоманд, m адресных выходов (т - количество немодифицируемых разрядов адреса следующей микрокоманды ) немодифицируемых разрядов которого соединены с соответствующими ш информационными входами второй группы коммутатора адреса, выход кода микроопераций блока памяти микрокоманд соединен с информационным входом регистра микроопераций, выход признака конца команды которого соединен с управляющим входом коммутатора адреса, выход признака конца работы регистра микроопераций соединен с входом установки в ноль триггера пуска, выход которого соединен с входом запуска генератора тактовых импульсов, первый и второй выходы которого соединены соответственно с входами синхронизации регистра адреса и регистра микроопераций, выход кода управления внешними устройствами которого является выходом устройства , выход кода логических условий блока памяти микрокоманд соединен с входом дешифратора, первая группа выходов которого соединена с группой (Л управляющих входов коммутатора внешних логических условий, группа информационных входов которого является группой входов логических условий устройства, вход установки в единицу триггера пуска является входом пуска устройства, отличающееся 4 тем, что, с целью сокращения объема ю оборудования, оно содержит регистр 00. внутренних логических условий, комСАд мутатор внутренних логических усло J вий, злемент И и элемент ИЛИ, причем адресньй выход модифицируемого разряда блока памяти микрокоманд соединен с первым входом элемента ИЛИ, выход которого соединен с (т +1)-м информационным входом второй группы коммутатора адреса, второй и третий входы элемента ИЛИ соединены соответственно с выходами коммутатора в нешних логических условий и коммутатора внутренних логических условий, информационные входы которого соедине-
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИК, 4рц С 06 F 9/22
ОПИСАНИЕ ИЗОБРЕТ
К ABTOPGHOMV СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3655615/24-24 (22) 24.10.83 (46) 28.02.85. Бюл. М 8 (72) В.П.Супрун, Г.Н.Тимонькин, С.H.Òêà÷åíêo, В.С.Харченко и В.А.Малахов (53) 681.325 (088.8) (56) 1.Авторское свидетельство СССР
У 928356, кл. G 06 F 9/22, 1980.
2.Хассон С. Микропрограммное управление. M. "Мир", 1974, ч. 1, с. 37-42, рис. 2.1, 2.2.
З.Майоров С.А., Новиков Г.И.
Структура 3BN. Л, "Машиностроение", 1979, с. 312-314, рис. 10.4 (прототип) . (54) (57) МИКРОПРОГРАММНОЕ УСТРОЙСТВО
УПРАВЛЕНИЯ, содержащее блок памяти микрокоманд, регистр адреса, регистр, микроопераций, коммутатор адреса, коммутатор внешних логических усло- . вий, дешифратор, триггер пуска и генератор тактовых импульсов, причем вход кода команды устройства соединен с первым информационным входом коммутатора адреса, выход которого соединен с информационным входом регистра адреса, выход которого соединен с адресным входом блока памяти микрокоманд, tn адресных выходов (rn — количество немодифицируемых разрядов адреса следующей микрокомаиды) немодифицируемых разрядов которого соединены с соответствующими Ф информационными входами второй группы коммутатора адреса, выход кода микроопераций блока памяти микрокоманд соединен с информационным входом регистра микроопераций, выход
„„Я0„„1142834 А признака конца команды которого соединен с управляющим входом коммутатора адреса, выход признака конца работы регистра микроопераций соединен с входом установки в ноль триггера пуска, выход которого соединен с входом запуска генератора тактовых импульсов, первый и второй выходы которого соединены соответственно с входами синхронизации регистра адреса и регистра микроопераций, выход кода управления внешними устройствами которого является выходом устройства, выход кода логических условий блока памяти микрокоманд соединен с входом дешифратора, первая группа выходов которого соединена с группой управляющих входов коммутатора внешних логических условий, группа информационных входов которого является группой входов логических условий устройства, вход установки в единицу триггера пуска является входом пуска устройства, о т л и ч а ю щ е е с я тем, что, с целью сокращения объема оборудования, оно содержит регистр внутренних логических условий, ком мутатор внутренних логических условий, элемент И и элемент ИЛИ, причем 4 " адресный выход модифицируемого разряда блока памяти микрокоманд соединен с первым входом элемента ИЛИ, выход которого соединен с (m +1)-м информационным входом второй группы ком- 3 мутатора адреса, второй и третий входы элемента ИЛИ соединены соответственно с выходами коммутатора внеш- них логических условий и коммутатора внутренних логических условий, информационные входы которого соедине11428 34 ны с выходами регистра внутренних логических условий, информационный вход которого соединен с выходом кода внутренних логических условий блока памяти микрокоманд, выход признака анализа внутренних логических условий которого соединен с инверсным входом элемента И и со стробирующим входом коммутатора внутренних
Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении центральных устройств управления ЭВМ и вычислительных систем. 5
Известно микропрограммное устройство управления, содержащее два блока памяти, дешифратор, регистр адреса,- триггер, элемент НЕ, два блока элементов И 1J. 10
Недостатком этого устройства является узкая область применения, обусловленная ограничениями на топологию выполняемых микропрограмм.
Известно микропрограммное устройство управления, содержащее регистр адреса, дешифратор, блок памяти микрокоманд, триггер условия, элемент и (23.
Недостатком этого устройства явля- 20 ется низкая экономичность, обусловленная отсутствием специальных технических средств тля исключения избыточности блока памяти.
Наиболее близким к предлагаемому 2> по технической сущности и достигаемому эффекту является микропрограммное устройство управления с принудительной адресацией, содержащее триггер пуска, генератор тактовых З0 импульсов, дешифратор логических условий, коммутатор внешних логических условий, постоянное запоминающее устройство (ПЗУ) микрокоманд, регистры адреса и микрокоманд, дешифратор микроопераций, элемент HF., коммутатор адреса, причем вход пуска устройства соединен с единичным входом триггера пуска, выход которого соединен с входом генератора тактовых им- 40 пульсов, выход которого соединен с логических условий, группа управляющих входов которого соединена с нторой группой выходов дешифратора и с группой входов управления записью регистра внутренних логических условий, вход синхронизации которого соединен с выходом элемента И, прямой вход которого соединен с вторым выходом генератора тактовых импульсов. входом считывания постоянного запоминающего устройства микрокоманд, адресный вход которого соединен с выходом регистра адреса, первый и второй выходы регистра микрокоманде соединены с входами дешифраторов . внешних логических условий и мирокопераций соответственно, группа выходов которого соединена с выходами устройства, а выход "Конец работы" соединен с нулевым входом триггера пуска, выходы дешифратора логических условий сое= динены с управляющими входами коммутатора внешних логических условий, входы логических условий устройства соединены с информационными входами коммутатора внешних логических условий, выход которого через элемент
НЕ соединен с управляющим входом коммутатора адреса, выход которого соединен с входом регистра адреса, выход ПЗУ микрокоманд соединен с входом регистра микрокоманд, адресный выход которого соединен с информационными входами коммутатора адреса 1 3 3.
Недостатком указанного устройства является большсй объем оборудования
ПЗУ микрокоманд, что обусловлено отсутствием технических средств, позволяющих исключить повторное хранение многократно используемых участков микропрограмм, имеющих разных последователей.
Цель изобретения — сокращение объема оборудования.
Поставленная цель достигается тем, что в микропрограммное устройство управления, содержащее блок памяти микрокоманд, регистр адреса, регистр микроопераций, коммутатор
1 14? 834
Ф . адреса, коммутатор внешних логических условий, дешифратор, триггер пуска и генератор тактовых импульсов, причем вход кода команды устройства соединен с первым информационным входом 5 коммутатора адреса, выход, которого соединен с информационным входом регистра адреса, выход которого соединен с адресным входом блока памяти микрокоманд, м адресных выходов
10 (tn — количество немодифицирузмых разрядов адреса следующей микрокоманды) немодифицируемых разрядов которого соединены с соответствующими ъ информационными входами второй груп- 15 пы коммутатора, адреса, выход кода микро" операций блока памяти микрокоманд соединен с информационным входом ре— . гистра микроопераций, выход признака конца команды которого соединен с 20 управляющим входом коммутатора адреса, выход признака конца работы регистра микроопераций соединен с входом установки в ноль триггера пуска, выход которого соединен с входом за- пуска генератора тактовых импульсов, первый и второй выходы которого сое= динены соответственно с входами синхронизации регистра адреса и регистра микроопераций, выход кода управления 30 внешними устройствами которого явля- ется выходом устройства, выход кода логических условий блока памяти микрокоманд соединен с входом дешифратора, первая группа выходов которого 5 соединена с группой управляющих входов коммутатора внешних логических условий, группа информационных входов которого является группой входов логических условий устройства, вход 40 установки в единицу триггера пуска является входом пуска устройства, введены регистр внутренних логических условий, коммутатор внутренних логических условий, элемент И и эле- 4 мент ИЛИ, причем адресный выход модифицируемого разряда блока памяти микрокоманд соединен с первым входом элемента ИЛИ, выход которого соединен с (m+1)-м информационным входЬм gg второй группы коммутатора адреса, второй и третий входы элемента ИЛИ .соединены соответственно с выходами коммутатора внешних логических условий и коммутатора внутренних логи- у, ческих условий, информационные входы которого соединены с выходами регистра внутренних логических условий, информационный вход которого соеди.нен с выходом кода внутренних логических условий блока памяти микрокоманд, выход признака анализа внутренних логических условий которого соединен с инверсным входом элемента И и со стробирующим входом коммутатора внутренних логических условий, группа управляющих входов которого соединена с второй группой выходов дешифратора и с группой входов управления записью регистра внутренних логических условий, вход синхронизации которого соединен с выходом элемента И, прямой вход которого соединен с вторым выходом генератора тактовых импульсов.
Сущность изобретения состоит в сокращении объема оборудования памяти микрокоманд путем исключения повторяющихся участков микропрограмм, имеющих разных последователей. Это достигается за счет введения внутренних логических условий формирования их значений, хранения с использованием специальных технических средств и проверки их после выполнения соответствующих участков микропрограмм.
На фиг. 1 приведена функциональная схема предлагаемого микропрограммного устройства управления; на фиг . 2фрагмент микропрограммы, реализуемой в прототипе (а) и в предлагаемом устройстве (б); на фиг. 3 поясняется принцип сокращения объема ПЗУ в предлагаемом устройстве (6) по сравнению с прототипом (а) °
Микропрограммное устройство управления (фиг. 1) содержит блок 1 памяти микрокоманд, регистр 2 адреса, регистр 3 микроопераций, регистр 4 внутренних логических условий, коммутатор 5 адреса, коммутатор 6 внутренних логических условий, коммутатор 7 внешних логических условий, дешифратор 8, триггер 9 пуска, гене-, ратор 10 тактовых импульсов, элемент
И 11, элемент ИЛИ 12, вход 13 кода команды устройства, вход 14 пуска устройства, вход 15 логических условий и выход 16.
Кроме того, на фиг. 1 показаны выход 17 значения внутреннего логического условия, выход 18 признака анализа внутренних логических усло- . вий, выход 19 кода микроопераций, выход 20 кода логических условий, 1142834 выход 21 модифицируемого разряда адреса очередной микрокоманды, выход 22 немодифицируемых разрядов адреса очередной микрокоманды блока 1 памяти микрокоманд, выходы признака конца работы 23„ и признака конца команды 23 регистра микроопераций, первый 24 и второй 24 выходы гене- °
1 2. ратора 10 тактовых импульсов.
На фиг. 2 -и 3 использованы следующие обозначения: А,, А 1, А, А
A> — микроподпрограммы; х — логическое условие; ш ш,, m „ — разрядности адресной и операционной частей и поля логических условий; М, и И вЂ” метки, соответствующие выходам 17 и 18 блока 1 соответственно, Рассмотрим функциональное назначение элементов и связей предлагаемого микропрограммного устройства управления (фиг. 1).
Блок 1 памяти микрокоманд предназначен для хранения кодов микрокоманд.
Коммутатор 5 осуществляет передачу на информационный вход регистра 2 адреса либо кода команды, поступающего с входа 13 устройства, либо ° модифицированного адреса очередной микрокоманды по второму информационному вхоцу при единичном или нулевом 30 значении сигнала "Конец команды" на выходе 23 соответственно.
Регистр 2 адреса микрокоманд предназначен для приема, хренения и выдачи кодов адресов микрокоманд в 35 блок 1 памяти микрокоманд. Запись кода адреса очередной микрокоманды в регистр 2 адреса микрокоманд производится с выхода 5 коммутатора при поступлении на синхровход импульса с 40 выхода 24Ä 10 тактовых импульсов.
Регистр 3 микроопераций предназначен для приема, хранения и выдачи кодов микроопераций íà выход 16 уст- 45 ройства. Запись информации в регистр
3 микроопераций осуществляется при наличии на его синхровходе сигнала, формируемого на выходе 24 генератора 10 тактовых импульсов. 50
Генератор 10 тактовых импульсов на первом 24, и втором 24 выходах формирует последовательности тактовых импульсов, сдвинутых один относительного другого на время записи 55 в регистр 2 адреса очередной микрокоманды и выборки микрокоманды из блока 1 памяти микрокоманд и обеспечивающих синхронизацию работы устройства. Формирование последовательностей импульсов на выходах ген".ратора
10 тактовых импульсов производится только при наличии единичного сигнала на его управляющем входе.
Триггер 9 пуска управляет работой генератора 10 тактовых импульсов.
Он устанавливается в единичное состояние при поступлении единичного сиг- . нала на вход 14 пуска устройства, который соединен с его входом установки в единицу. Единичный сигнал на выходе триггера 9 пуска разрешает функционирование генератора 10 тактовых импульсов. Триггер 9 пуска устанавливается в нулевое состояние при поступлении на его вход установки в ноль сигнала "Конец работы",который формируется на выходе 23, регистра 3 микроопераций.
Коммутатор 7 внешних логических условий осуществляет выделение значения проверяемого внешнего логического условия и выдачу его на элемент
ИЛИ 12.
Элемент ИЛИ 12 осуществляет формирование значения младшего разряда адреса очередной микрокоманды и выдачу его на один из информационных входов коммутатора 5 адреса. Формирование младшего разряда адреса at, очередной микрокоманды осуществляется путем реализации функции ! 1 !!
OLO OL V Х V X
J где !, — значение модифицируемого разряда адреса очередной микрокоманды на выходе 21 блока 1 памяти микрокоманд; х . — значение проверяемого внут) реннего логического условия на выходе коммутатора 6 внутренних логических условий;
Il х „ — значение проверяемого внешнего логического условия на выходе коммутатора 7 . внешних логических условий.
Элемент И 11 предназначен для управления записью проверяемого внутреннего логического условия в регистр 4 внутренних логических условий.
Регистр 4 внутренних логических условий служит для записи, хранения и выдачи значений внутренних логи3 142834 ческих условий на информационные входы коммутатора 6 внутренних логических условий.
Коммутатор 6 внутренних логических условий осуществляет выделение значения проверяемого внутреннего логического условия и выдачи его на элемент ИЛИ 12 для модификации адреса очередной микрокоманды.
Микропрограммное устройство управления работает следующим образом.
В исходном состоянии все элементы схемы находятся в нулевом состоянии, а в разряде регистра 3 микрооперации, соответствующему признаку конца команды (выход 23 ), записана единица (цепи начальной установки условно не показаны).
По сигналу "Пуск", поступающему через вход 14 устройства на вход установки в единицу триггера 9, последний устанавливается в единичное состояние. При этом на выходах 24 и 24 генератора 10 возбуждаются последовательности тактовых импульсов, По первому тактовому импульсу, поступающему на синхровход регистра 2 адреса, последний открызается. При этом код команды, являющийся адресом первой микрокоманды выполняемой ЗО микропрограммы, через коммутатор 5 поступает на информационный вход регистра 2 адреса. По записанному адресу в регистре 2 адреса, в блоке 1 памяти микрокоманд выбирается соот- 3S ветствующая микрокоманда и поступает на его выходы 17-22. При наличии сигнала на синхровходе регистра 3, микроопераций операционная часть микрокоманды с выхода 19 микроопера- 40 ций поступает на информационный вход регистра 3 микроопераций. Сигналы микроопераций с регистра 3 поступают на выход 16 устройства.
При формировании адреса очередной микрокоманды возможны три режима раб оты устройства: 1) формирование адреса очередной микрокоманды при выполнении линейных участков микро- SO программ (проверка внутренних и внеш-. них логических условий не осуществля.ется); 2) формирование адреса очеред ной микрокоманды при проверке внешних логических условий; 3) формирова-SS ние адреса очередной микрокоманды при проверке внутренних логических условий.
Рассмотрим работу устройства в этих режимах.
Первый режим. При считывании микрокоманды из блока 1 памяти микрокоманд адрес очередной микрокоманды формируется следующим образом. Немодифицируемая часть адреса очередной микрокоманды с выхода 22 поступает на информационные входы второй группы коммутатора 5 адреса. Значение модифицируемого разряда адреса очередной микрокоманды поступает с выхода 21 блока 1 памяти микрокоманд через элемент ИЛИ 12 на один из информационных входов второй группы коммутатора 5 адреса. Поскольку сигнал признака конца команды отсутствует, адрес очередной микрокоманды через коммутатор 5 адреса поступает на информационный вход регистра 2 адреса. При формировании на выходе
24„ генератора 10 очередного тактового импульса адрес микрокоманды записывается в регистр 2 адреса. Далее устройство функционирует в этом режиме аналогичным образом.
Второй режим. Если при выполнении текущей микрокоманды необходимо проверить значение внешнего логического условия и произвести ветвление микропрограммы, то на выходе 2Г блока 1 памяти микрокоманд считывается код этого логического условия. Этот код поступает на дешифратор 8 и возбуждает соответствующий проверяемому логическому условию выход первой группы выходов дешифратора 8. Значение проверяемого внешнего логического условия с входа 15 через коммутатор
7 внешних логических условий поступает на элемент ИЛИ 12 ° Формирование значения модифицированного разряда адреса очередной микрокомгнды. осуществляется на элементе ИЛИ 12 путем реализации логической функции о,= — ы + х, значение которой поступа1
) ет на один из информационных входов второй группы коммутатора 5 адреса.
Далее устройство функционирует аналогичным образом.
Третий режим. -Запись значения внутреннего логического условия x" в регистр 4 осуществляется следующим образом. При считывании последней микрокоманды фрагмента микропрограммы, после выполнения которого должен выполняться повторяемый участок микропрограммы, на выходе блока 1 памя1142834
10 ти микрокоманд сигнал отсутствует.
Значение проверяемого после выполне-. ния повторяемого участка микропрограммы внутреннего логического условия х" с выхода 17 блока 1 памяти 5 микрокоманд поступает на информационные входы регистра 4. Код этого логического условия с выхода 20 блока 1 памяти микрокоманд поступает на дешиАратор 8 и возбуждает соответствующий проверяемому логическому условию выход второй группы выходов дешифратора 8. При Аормировании очередного тактового импульса на выходе
24> генератора 10 соответствующий проверяемому внутреннему логическому условию разряд регистра 4 открывается и в него записывается значение проверяемого внутреннего логического условия. Далее при формировании микрокоманд повторяемого участка микропрограммы устройство Аункционирует так же, как и в первом режиме.
При Аормировании последней микрокоманды повторяемого участка микропрограммы, после выполнения которой необходимо проверить значение внутреннего логического условия и произвести ветвление микропрограммы, код логического условия с выхода 20 бло- 30 ка 1 памяти поступает на дешифратор
8, а на выходе 18 блока 1 памяти появляется единичный сигнал. При этом коммутатор 6 внутренних логических условий открывается по соответствующему управляющему входу и значение проверяемого внутреннего логического условия через коммутатор 6 поступает на элемент ИЛИ 12..
При этом формирование значения моди- 40 фицированного разряда адреса очередной микрокоманды осуществляется аналогично его формированию при Аункционировании устройства во втором режиме работы. 45
Работа устройства заканчивается при формировании на выходе 23 регистра 3 признака конца работы, который, поступив на вход установки в ноль триггера 9, устанавливает у его в исходное состояние, в результате чего генератор 10 прекращает формирование тактовых импульсов.
Принцип сокращения объема оборудования блока 1 памяти поясняется на фиг. 2 и 3.
Использование предлагаемого устройства позволяет уменьшить объем оборудования блока 1 памяти микрокоманд, а следовательно, и микропрограммного устройства управления в целом на величину
1 2 где W u W — объем оборудования .2 блока 1 памяти микрокоманд прототипа (базового объекта) и предлагаемого устройства соответственно.
Объем оборудования Ч„ определяется выражением где . tA, — число микрокоманд, хранящихся в блоке 1 памяти микр ок оманд;
h <, h„, h„- разрядность поля логических условий, поля микрооперации и поля адреса микрокоманд соответственно; — число линейных последовательностей микрокоманд . формируемых устройст.вом;
NÄ вЂ” среднее число микрокоманд в линейной последовательности микрокоманд, формируемых устройством.
Оценку объема оборудования W npo2 ведем при следующих допущениях: в каждой линейной последовательности микрокоманд имеется с вероятностью р повторяющийся участок микрокоманд; среднее число микрокоманд в повторян ющемся участке равно N г
С учетом сделанных допущений число ячеек памяти N» необходимых для хранения микрокоманд в предлагаемом устройстве, и разрядность поля адреса
h и поля логических условий Ь мик1 1
Cl х рокоманд, формируемых устройством, определяется выражениями
P Ы
М = И- — Й
1 142834
10 команд.
Фиг/
Объем оборудования У определяет- . ся выражением 2 Я-, ° „Е.<, Я,р"дй,)(,) где 4 4 =2) — разрядность дополнительно введенного в формат микрокоманд поля, используемого для
15 реализации проверок внутренних логических условий.
Относительный выигрыш в оборудовании предлагаемого устройства по отношению к прототипу (базовому объекту) определяется выражением 1т гМ = — — — — 100Я.
1" 1
Вычислим значение Уи при следующих исходных данных полученных при кодировании микропрограмм:
=20þ ;N„= 10; 1 1 = 8; p = 0э,8;
? „= 60.
В этом случае
- ь-И = — — — . 100ж = 30 6 "
14600
Следовательно, использование изобретения позволяет существенно уменьшить объем оборудования памяти микро1142834
l 142834
Фиг. д
Составитель Ю.Ланцов
Редактор Л.Алексеенко Техред С.Мигунова
Корректор М.Самборская
Заказ 738/42 Тирак 710 Подписное
ВНИИПИ Государственного комитета СССР по.делам изобретений и открытий
113035, Иосква, Ж-. 35, Раушская наб., д.4/5
Филиал .ППП "Патент", г.ухгород, ул.Проектная,4