Адаптивное микропрограммное устройство управления
Союз Советскин
Социалистических
Реснубпик
ОПИСф ЯЯЩ
ИЗОБРЕТЕН Ия
А о оeV < иД и.:Л : в (i i>934471 (63 ) Дополнительное к авт. саид-ву (222Заявлено 25.04.80 (21) 2917653/18-24 (51)М. Кл.
GI 06 F 9/22 с присоединением заявки ¹ осудэрстеиеый комитет
СССР (23) Приоритет но делам наабретеннй н открытей
Опубликовано 07.06.82. Бюллетень ¹ 21
Дата опубликования описания 07.06.82 (53) УДК681.3 -.. (088.8) И. П. Барбаш, В. И. Сидоренко, Г. Н. Тимонькин, С. Н. Ткаченко и В. С. Харченко (72) Авторы изобретения (7 I ) Зая ви тел ь (54) АДАПТИВНОЕ МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ
Изобретение относится к автоматике и вычислительной технике и может быть использовано в качестве управляющего устройства ЭВМ, применяемых для управления сложными системами.
Известно микропрограммное устройство управления, содержащее два запоминающих блока, регистры, логические эле менты И и НЕ, элементы задержки, счетчики, дешифраторы и генератор тактовых импульсов 1 j.
Недостатком этого устройства является низкое быстродействие.
Наиболее близким к предлагаемому является микропрограммное устройство управления. Это устройство содержит ре15 гистр адреса, первый и второй дешифраторы, первый и второй запоминающие блоки, регистр логических условий, первуюи вторую группы элементов И, буферный .
26 регистр, шифратор, счетчик микрокоманд, первый, второй, третий и четвертый элементы И, первый и второй элементы задержки, счетчик адресов, первый и второй элементы НЕ и генератор тактовых импульсов, причем адресный sxoa pejгистра адреса является первым входом устройства, выход регистра адреса соединен с первым входом первого дешифратора, а выход — с входом первого запоминающего блока, первый, второй и третий выходы которого соединены соответ» ственно с входом адреса буферного ре» гистра, входом установки s нуль регист ра. адреса и информационным входом регистра логических условий, выходы кото рого соединены с первыми входами элементов И первой группы, вторые входы которых подключены к второй группе sxoдов устройства, а выходы соединены с группой входов логических условий буферного регистра, выходы которого соеди иены с.первыми входами элементов И второй группы, вторые входы и выходы которых соединены соответственно с выходом первого элемента И и группой входов косвенного адреса регистра адре» са, первый выход шифратора соединен с
3 93447 первым входом счетчика микрокоманд, первый и второй входы второго элемента И соединены соответственно с выходом генератора тактовых импульсов и выходом первого элемента НЕ, вход которого соединен с выходом третьего элемента И и первым входом четвертого эпемента И, второй вход которого соединен с входом первого и выходом второго элементов задержки, первый и вто- 10 ой х
1 грамме R. 1= N матрицей ф зададим прямоугопьной
° - flN
--- Яу
-Ф 1 ° 1 ° 1 ! Xal mQl 4И .-У где УК. — эпемент матрицы, обозначаюший принадлежность К -ой автономной микропрограммы подмножества PA -й программе множества программ Я вычисляемый по следующему правипу;
О, если K -я автономная микропро- . грамма подмножества;
Рд не содержится в т -й программе множества Р;
20 Q если К -я автономная микропрограм/ ма подмножества;
PA содержится в z -й программе множества RS раз, S= 1, 2, ...
В качестве примера автономных микропрограмм можно привести следующее.
Пусть N =3, причем суть программы
Р состоит в вычислении функции Ф ->
Ь
X-X<
+Юп Х+8, программы Q< - в вычиспении функции
36 Х
+ + = + „ + 1х-5х+ 3
0 программы R> - в вычислении функции
3S а = з и Х + e g,õ-5х х
4.
3 для заданного значения аргумента х . Тогда множество микропрограмм Р можно определить следующим образом:
Р. — микропрограмма вычисления Х ;
49
Р - микропрограмма вычисления В и х
X-X
P> - микропрограмма вычиспения е
Р - микропрограмма вычисления
Х
Ьи 1)а;
45 О Ъ-5х
Р— микропрограмма вычисления 8
Р - микропрограмма вычисления Х
5, автономными программами- считать микропрограммы Р, Рп и Р, т.е. Рд .Рд с, 50 К "Р" PA<=P<, РЛЯ.=Р P Pg, 8 матрицу F задать в спедуюшем виде;
1 1 0 — 1 0 1
0 1 1
Отсутствие адаптации прототипа к реализуемому множеству программ R объясняется тем, что он не учитывает свойств программ R.,Ü1,М для реализаi ции которых он предназначен. р в оды первого элемента задержки соединены соответственно с выходами первого элемента задержки и третьего элемента И, вход второго элемента задержки соединен с выходом генератора тактовых импульсов, выход четвертого элемента
И соединен с вторым входом первого дешифратора, входами установки в нуль регистра логических условий и буферного регистра и первым входом счетчика адресов, второй и третий входы и выход которого соединены соответственно с входом второго элемента НЕ, вторым выходом шифратора и первым входом второго дешифратора, второй. вход и выход которого соединен соответственно с выходом второго эпемента И и входом второго запоминающего бпока, группа выходов кода микрооперации которого является групповым выходом кода микрооперации устройства, а выход адресного признака соединен с входом второго эпемента НЕ, выход которого соединен с вторым входом счетчика, мик. рокоманд, выходы которого соединены с входами третьего элемента И f2).
Недостатком известного устройства является низкое быстродействие, обуспов. ленное отсутствием адаптации устройства к реализуемому множеству программ, Пусть микропрограммное устройство управления реализует ace программ
l множества R . й;, т = 1> й, очередность выполнения которых заранее неизвестна.
Каждая из И программ представляет собой некоторую линейную последовательность микропрограмм, формируемую на множестве микропрограмм Р: Р-, = 1, п4
Предпопожим, что результат вйлопнения некоторых микропрограмм s каждой программе, их содержащих, одинаков и не зависит от результата выполнения всех предыдущих микропрограмм в рассматри» ваемой программе. Выделим такие микропрограммы в подмножество автономных микропрограмм Р,; РА, К= 4, щ где пт<пт„, Р, C:Ð. в
Принадлежность каждой автономной микропрограммы Рк,K"-1,m каждой про t,1 ê Як4 KH
5 9344
B связи с этим при последовательном выпопнении N программ множества R содержащих автономные микропрограммы подмножества Г л, каждая автономная микропрограмма РдК, К=1, m выполняется
К . К i раз. В то же время результа1=1 с ты выполнения микропрограммы Р во всех Ск ее реализациях одни и те же.
Таким образом, микропрограммное уст»
f0 ройство управления для получения результата выполнения каждой автономной микропрограммы Р> К= 1р затрачивает вревремя в СК раз больше, чем требуется для ее однократной реализации. Это при15 водит к дополнительным временным затратам на последовательную реализацию множества R, а следоватекьно, к снижению быстродействия устройства управления в целом, что сужает применение пред- 20 кагаемого устройства.
Цель изобретения — повышение быстродействия устройства.
Поставленная цепь достигается тем, что в адаптивное микропрограммное устройство управления, содержащее регистр адреса, первый и второй дешифраторы, первый -и второй запоминающие бкоки, регистр логических условий, первую и вторую группы элементов И, буферный ре- З0 гистр, шифратор, счетчик микрокоманд, первый, второй, третий и четвертый элементы И; первый и второй элементы задержки, счетчик адресов, первый и второй элементы HE и генератор тактовых З5 импульсов, причем адресный вход регист ра адреса подкшочен к первому входу устройства, выход регистра адреса соединен с первым входом первого дешифратора, а выход — с входом первого зано- 40 минаюшего блока, первый, второй и третий выходы которого соединены соответственно с входом адреса буферного регистра, входом установки в нуль регистр ра адреса и информационным входом регистра когических условий, выходы которого соединены с первыми входами экементов И первой группы экементов И, вторые входы которых подккючены к второй группе входов устройства, а выходы соединены с группой входов когических условий буферного регистра, выходы которого соединены с первыми входами элементов И второй группы. вторые входы и выходы которых соединены соответствен-. но с выходом первого элемента И и группой входов косвенного адреса регистра адреса, первый выход шифратора соединен с первым входом счетчика микрокоманд, 71 6 первый и второй входы второго элемента
И соединены соответственно с выходом генератора тактовых импульсов и выходом первого элемента НЕ, вход которого соединен с выходом третьего элемента И и первым входом четвертого элемента И, второй вход которого соединен с входом первого и выходом второго элементов задержки, первый и второй входы первого элемента задержки соединены соответственно с выходами первого элемента задержки и третьего элемента И, вход второго элемента задержки соединен с выходом генератора тактовых импульсов, выход четвертого элемента И соединен с вторыМ входом первого дешифратора, входами установки в нуль регистра логических усковий и буферного регистра и первым вхо-.. дом счетчика адресов, второй и третий входы и выход которого соединены соответственно с входом второго элемента
НЕ, вторым выходом шифратора и первым входом второго дешифратора, второй вход и выход которого соединены соответственно с выходом второго элемента И и входом второго запоминающего блока, группа выходов кода микрооперации которого является групповым выходом кода микрооперации устройства, а выход адресного признака соединен с входом второго экемента НЕ, выход которого соединен с вторым входом счетчика микрокоманд, выходы которого соединены со входами, третьего экемента И введены регистр фиксации выпокнения автономных микропрограмм, третья и четвертая группы элементов И и элемент ИЛИ-НЕ, причем группа информационных входов, вход установки в нуль и выходы регистра фик-. сации выполнения автономных микропрограмм соединены соответственно с группой выходов признака автономности микропрограммй второго запоминающего блока, первым входом регистра адреса и первыми входами элементов И третьей . группы, вторые входы и выходы которых соединены соответственно с группой выходов признака автономности текущей микропрограммы первого запоминающего блока и входами элементов ИЛИ-НЕ, выход которого соединен с первыми входами элементов И четвертой группы, вторые входы и выходы которых соединены соответственно с группой выходов номера текущей микропрограммы первого запоминан шего блока и входами шифратора группа выходов признака автономности текущей микропрограммы второго запоминаю»
mего бкока является групповым выходом
7 9344 признака автономности текущей микропрограммы устройства, выходы элементов И третьей группы являются группой выходов признака считывания результата устройства.
Изобретение обеспечивает повьпцение быстродействия устройства за счет адаптации к реализуемому множеству программ, Адаптация устройства к реализуемому 10 множеству программ Р;R„, i=1,8 позволяет выполнять каждую автономную микропрограмму РА,„К =1, м множества Р> С Р только однажды, а во всех Ск-Х остальных случаях пользоваться уже полу- 15 ченными, результатам, Поскольку время считывания хранящегося результата всегда гораздо меньше времени его получения путем выполнения соответствующей микропрограммы, то такая адаптация по- щ зволяет повысить быстродействие устройства.
Введение регистра фиксации выполнения автономных микропрограмм позволяет хранить информацию о выполненных 25
1 уже адаптивным микропрограммным устройством управления автономных микропрограммах Р, Введение третьей группы элементов И позволяет управлять формированием сигна-Зо лов, необходимых дпя управления считыванием соответствующего результата пер» вого выполнения автономной микропрограммы Рр и его пересылкой по требуемому адресу. Кроме того, введение третьей группы элементов И позволяет формировать сигналы запрета пересылки номера текущей автономной микропрограм« мы, содержащейся в пятом попе первого запоминающего блока, в шифратор при ус- 4О повии, что эта автономная микропрограмма уже однажды выполнялась.
Введение элемента ИЛИ-НЕ позволяет формировать обобщенный сигнал запрета пересылки номера текущей автономной микропрограммы в шифратор.
Введение четвертой группы элементов
И позволяет осуществлять запрет пересылки номера текущей автономной микрокоманды в шифратор по получении сигна50 ла запрета от элемента ИЛИ-НЕ.
Соединение третьего выхода второго запоминающего блока с первым входом регистра фиксаций выполнения автономных микропрограмм позволяет записать в регистр признак выполнения адаптив55 ным микропрограммным устройством управления автономной микропрограммы
Р, K= 1,N при первом ее.выполнении.
Соединение третьего выхода второго запоминающего блока с вторым выходом устройства позволяет подавать на выход адаптивного микропрограммного устройства управления управляющие сигналы дпя хранения результатов выполнения автономной микропрограммы Р, К=1 и>
Соединение входа установки в нуль регистра фиксации выполнения автономных микропрограмм с первым входом устройства позволяет устанавливать в нуль регистр при поступлении на второй вход адаптивного микропрограммного устройства управления кода операции соответствующего, например однократному носледовательному выполнению всех N программ множества R: R;, 1 = 1, .
Соединение входов третьей группы элементов И с четвертым выходом первого запоминающего блока и с выходом регистра фиксации выполнения автономных микропрограмм позволяет получать на выходе третьей группы элементов И сигналы о каждой очередной необходимости считывания соответствующего результатапервого выполнения автономной микропро Q1vgvfbI Рдк, K= 1, УУ3
Соединение выходов третьей группы
;->,цементов И с третьим выходом устройства позволяет подавать на выходы адаптивного микропрограммного устройства управ ления управляющие сигналы на считывание соответствующего результата выполнения автономной микропрограммы Р,„ К=1,m и соответствующее его использование при выполнении последующих микропро"грамм реализуемой программы R„-, «1, М, Соединение выходов третьей группы элементов И с входами элемента ИЛИ-HE позволяет получать на выходе элемента ИЛИ-НЕ сигнал запрещения повторного выполнения автономной микропрограм@/g К
Соединение входов четвертой группы элементов И с выходом элемента ИЛИНЕ и пятыми выходами первого запоминающего блока позволяет получать на выходе четвертой группы элементов И сигнал, соответствук>ший номеру текущей реализуемой микропрограммы выполняемой программы R-; =1,И при условии, что текущая микропрограмма Р., = п1, не является автономной, либо текущая автономная микропрограмма ранее не выполнялась.
Использование рассмотренных связей позволяет повысить быстродействие предлагаемого устройства в целом за счет со крашения количества реализаций каждой
934 автономной микропрограммы P, K=< Al на (С -1) раэ.
Повышение быстродействия устройства можно пояснить следуюшим образом.
В ячейках второго запоминающего блока последовательно записаны микрокоманды b,V=1,Я состояшие иэ трех полей разрядностью D0,1n п1 соответственно. В первом поле ЬЧ разрядностью и =0 0, считываемом по первому выходу второго запоминающего блока, задаются сигналы микроопераций. Во втором поле Q co1
1 держащем один разряд и считываемом по второму выходу второго запоминаюшего блока, задается признак того, что данны микрокоманда b,V= 1, и является заключательной в како -либо микропрограмме
R, g--I m< . В третьем поле Ь Ч,V--1, Я содержащем m разрядов и считываемом по . третьему выходу второго запоминающего блока, задается признак того, что данная микрокоманда Ь„ V=-1 Я является конечП ной (заключительной) только в автономной микропрограмме Р, К=1,п1.При этом
25 в каждом К«м разряде третьего поля Ь3
Ч
Ю4,Й К=1,IA записаны 0 либо 1 по следующему правилу:
О, если V -я микрокоманда не является конечной в К-й авто — 5О
3К номной микропрограмме Ра °
Ч 1, если Ч -я микрокоманда является конечной в К -й автономной микропрограмме РА .
Такое кодирование третьего поля ЬЧ
3 .позволяет однозначно идентифицировать каждую выполненную устройством автономную микропрограмму PAg, К=1,тп и сформу пировать на этой основе управляющие сигналы для пересылки полученного результата выполнения данной микропрограммы на хранение. Идентификация выполненной автономной микропрограммы
PAV K=3,m путем записи в К-й раз ряд регистра фиксации выполнения автономных микропрограмм единицы происходит при считывании из второго запоминаюшего блока последней микропрограммы реализуемой автономной микропрограммы
4к 50
Аналогично третьему полю второго запоминающего блока Ь Ч проведено коди3 рование четвертого поля первого запоминающего блока 6р 8=1,mg. При этом 4р =
Ф 4К
=0 если номер текущей микрокоманды dg
/ 5S не соответствует К-й автономной микро
4К программе РР,, (3< - З,если номер текущей микрокоманды а соответствует К -й asтономной микропрограмме Р .
471 10
Поэтому при необходимости повторного
I выполнения некоторой автономной микропрограммы Ppg, К=1 N в очередных программах Р,i=1,Ì при считывании микрокоманды d,8=1,ïóa четвертом выходе первого запоминаюшего блока появляется 48
К-м разряде четвертого поля cf< Следовательно, на выходе К-го элемента И третьей группы элементов И появляется 1.
Этот сигнал через элемент ИЛИ-НЕ и четвертую группу элементов И запрещает подачу с пятого выхода первого запоминаюшего блока информации о номере те1сушей автономной микропрограммы РдК на шифратор. В то же время этот же сигнал поступает на третий выход устройства для считывания храняшегося результата в шолнения автономной микропрограммы Рр, си его пересылки в адрес того устройства, где он получится в резуль. тате повторного выполнения адаптивным микропрограммным устройством управления автономной микропрограммы
РА<. Кроме того, так как счетчик микрокоманд остается в нуле, то импульс генератора тактовых импульсов через первый и второй элементы задержки,первый элемент И вторую группу элементов
И передает косвенный номер следующей микрокоманды первого запоминающего блока, соответствующий очередной микро программе программы R -, Ъ1,М в регистр адреса. Поскольку время протека- ния описанных процессов меньше времени выполнения самой автономной микропрограммы, то тем самым достигается эффект выполнения быстродействия устройства в целом. Это позволяет расширить применение предлагаемого устройства, На чертеже представлена функциональ ная схема предлагаемого адаптивного микропрограммного устройства управ- . ленияе
Устройство содержит регистр 1 адреса, первый дешифратор 2, первый запоминающий блок, регистр 4 логических условий, первую группу элементов И 5, буферный регистр 6, вторую группу элементов И 7, регистр 8 фиксации выполнения автономных микрокоманд, третью группу элементов И 9, элемент ИЛИ-НЕ
10, четвертую группу элементов И 11, шифратор 12, счетчик 13 микрокомаид, третий элемент И 14, первый элемент
15 задержки, первый элемент И 16, счетчик 17 адресов, второй дешифратор
18, второй запоминающий. блок 19, второй элемент НЕ 20, генератор 21 так11 9344 товых импульсов, второй элемент 22 задержки, четвертый элемент И 23, первый элемент НЕ 24, второй элемент И 25.
Символом 26 обозначен первый вход устройства 27-31 - первый, второй, третий, четвертый и пятый выходы первого запоминающего блока соответственно, 32 - второй вход устройства, ЗЗ - третий выход устройства, 34 - первый выход второго запоминающего блока, являющийся одновременно первым выходом устройства, 35 - второй вход второго запоминающего блока, 36 - третий выход второго запоминаюшего блока, являющийся одновременно вторым выходом 15 устройства.
В первом запоминающем блоке 3 хранятся микрокоманды 4, 0=1,жо состоящие иэ пяти полей, каждая иэ которых соответствует микропрограмме Р-, р 1, to<,. В 20
> первом поле Ор>Рс1,О разряд>;остью с).Г =
= ОЙ п считываемом по первому выходу 2?, содержится косвенный адрес номера следующей микропрограммы. Во втором попе d<,0=1,rnp,состоящем из од- 25
1 ного разряда и считываемом по второму выходу 28, задается сигнап сброса регистра 1 адреса. В третьем попе 4, 8=1,т
3 содержащем d4 разрядов и считываемом по третьему выходу 29, хранится код . 5о проверяемых логических условий.
В четвертом поле 6Е,6=1,%о разрядф ностью m считываемом по четвертому выходу 30, задается признак. (идентификатор) автономности текушей микропрограммы. В пятом попе 6< 0=1>п, сойержашем Д разрядов и считываемом по пятому выходу 31, хранится номер текушей микропрограммы.
Регистр фиксации выполнения автоном- о ных микропрограмм 8 предназначен дая хранения информации о выполненных уже адаптивным микропрограммным устройством управления автономных микропрограммах Р > К 1>>».
Третья группа элементов И 9 управляет формированием сигналов, необходимых
aw управления считыванием соответствующего результата первого выполнения автономной микропрограммы Р, К=1р и его пересылкой по требуемому адресу.
Элемент ИЛИ-HE обеспечивает выда-. чу на четвертую группу элементоВ И 11 сигнал, запрещающего пересылку номера текущей автономной микропрограммы, содержащего в пятом поле первого запоминающего блоке б в шифратор 12 при
8 условии, что эта автономная микропрограмма уже однажды выпоцняпась.
71 12
Во втором запоминающем блоке 19 записаны микрокоманды ЬЧ>Ф1,Я из которых формируются все микропрограммы Р q
1=1mp состоящие иэ некоторых линейных
1 последовательностей микрокоманд, количество которых соответствует текущему номеру микропрограммы, задаваемому в . пятом поле Cl, 0=1,m первого запоминаю5 шего блока 3. Каждая микрокоманда t)y>
9=4,Q состоит из трех попей разрядностью по1 и m соответственно. В первом лопе ЬЧ считываемом по первому выходу
34, задаются сигналы микроопераций, Сигнал со второго поля Ь считываемый
Ч по второму выходу 35, осушествляет прибавление единицы к содержимому счетчика 17 адреса, а в случае, когда Ь =0, Q. кроме того, вычитание единицы из содержимого счетчика микрокоманд 13. В третьем попе Ь >Ф1,Я считываемом по тре3 тьему выходу 36, записывается единица, если данная микрокоманда принадлежит автономной микрокоманде Р, К=h>à и является в ней последней.
Устройство работает следующим образом.
В исходном состоянии все элементы памяти находятся в нулевом состоянии.
Код операции через первый вход 26 устройства поступает на регистр 1 адреса, задавая адрес соответствующей ячейке в первом запоминаюшем блоке 3.
Генератор 21 тактовых импульсов через второй элемент 22 задержки и чет вертый элемент И 23 при получении сигнала разрешения с выхода третьего элемента И 14, соответствующего нулевому содержимому счетчика 13 микрокоманд, производит установку в нуль счетчика 17 адреса, регистра 4 логических условий и буферного регистра 6, а также осуществляет пуск первого дешифратора 2. По сигналу дешифратора 2 с перо вого запоминающего бпока 3 считывается микрокоманда Q<= =1,П> соответствующая первой выпопняемой микропрограмме Р>,j=1,rag первой реализуемой программы R„., 1=1,N. С выхода 27 первого запоминающего блока 3 в буферный регистр 6 записывается косвенный адрес номера следующей микропрограммы. Сигнал с выхода 28 устанавливает регистр
1 адреса в исходное состояние. С выхода 29 в регистр 4 логических условий записывается код проверяемых логических условий. Одновременно сигнал, соответствуюший номеру текущей микропрограммы, с выхода 31 поступает через четвертую группу элементов И 11, 3 9344 открытую разрешающим сигналом с выхода элементов ИЛИ-НЕ вследствие нулевого состояния всех выходов третьей группы элементов И 9, на вход шифратора
12. Нулевое состояние всех выходов третьей группы элементов И 9 обусловлено в этой ситуации нулевым содержанием всех п разрядов регистра 8 фиксации выполнения автономных микропрограмм.
С выходов шифратора 12 в счетчик 13 to микрокоманд записывается признак длины текущей микропрограммы, а в счет. чик 17 адреса — адрес первой микрокоманды by 9=1,ß текущей микропрограммы
3 "-,п .). !5
После считывания информации из первого запоминающего блока 3 импульс 21 генератора через элементы 22 и 15 задержки первый элемент И 16 открывает вторую группу элементов И 7 и раз- 2î решает перезапись информации с регистра 6 на регистр 1.
После считывания микрокоманд из пер. вого запоминающего блока 3 и записи в счетчик 13 микрокоманд кода длины 25 текущей микропрограммы его показания отличны от нуля, Поэтому сигнал на выходе третьего элемента И 14 принимает нулевое значение и через первый элемент HE 24 от 5ц крывает второй элемент И 25, через который следующий тактовый импульс генератора 21 запускает второй дешифратор .
18. Далее по каждому тактовому импульсу генератора 21 в соответствии с адресом, записанном в счетчике 17 айреса, из запоминающего блока 19 считываются микрокоманды 4,V=1,Q,.С выхода 34 второго запоминающего блока считываются сигналы микроопераций, с выхода 35- 4 сигналы, увеличивающие на единицу содержимое счетчика 17 адресов и умень» шаюшее при 4y= t на единицу содержимое и счетчика 13 микрокоманд. При показании счетчика 13 микрокоманд, отличных от нуля, следующий тактовый импульс аналогично описанному осуществляет считывание микрокоманд из второго запоминающего блока 19.
В процессе работы адаптивного микропрогры4много устройства управления при получении на первом входе устройства
32 соответствующего сигнала с выходов элементов И первой группы 5 возможно изменение показаний буферного регист55 ра 6, Если показание счетчика 13 микрокоманд равно нулю, то импульс генераторе 21 через элементы 22 и 15 задержки, 71 14 первый элемент И 16 и вторую группу элементов И 7 передает адрес номера следующей микрокоманды, соответству» юший следующей микропрограмме реали зуемой программы R;, =1,H с буферного регистра 6 на регистр 1 адреса.
Следующий импульс генератора 21 через второй элемент 22 задержки и чет-вертый элемент И 23 устанавливает s исходное состояние счетчик 18 адреса, регистр 4 логических условий н буферный регистр 6. Кроме того, осуществляется запуск дешифратора 2, считывается микрокоманда с1,1=1,тп„из первого запоминающего блока 3 и работа устройства осуществляется аналогично описанному выше.
В счучае считывания из первого запа минаюшего блока 3 микрокоманды, соответствующей первой автономной микрокоманде Р,, К=,m выходов 30 на К-й с элементИ третьей группы элементов И
9 поступает единичный сигнал. Однако выходы третьей группы элементов И 9 по-прежнему сохраняют нулевое состояние, так как все rn разрядов регистра фиксации выполнения автономных микропрограмм 8 находятся в нулевом состоянии. Поэтому работа устройства осуществляется аналогично описанному выше до тех пор, пока из второго запоминающего блока 19 не будет считана последняя микрокоманда 4y,Ì= <,Я автономной микропрограммы РА<, К=1,m. При этом на третьих выходах 36 второго запоминающего блока 19 снимается сигнал, в g-м разряде которого записана единица. Жот сигнал подается на второй выход устройства для управления пересылкой получаемого в результате выполнения автономной микропрограммы Р, К=1, е результата на хранение, с целью его дальнейшего использования при реализации дру гих программ, содержащих автономную
Микропрограмму Р, К= 1,m.
Кроме того, этот же сигнал подается на вход регистра 8 фиксации выполнения автономных микропрограмм для записи в его К -м разряде единицы.
Пусть теперь в процессе дальнейшей работы при реализации некоторой другой программы потребуется выполнить автономную микропрограмму РА, K=3,m,êîòîрая уже раз выполнялась адаптивным микропрограммным устройством управления. В этом случае при считывании микрокоманды, соответствующей требуемой asтономной микропрограмме РА,, K-1,1т1 на четвертом выходе 30 в К -м разряде 15 9344 появится единичный сигнал, который поступит на К -й элемент третьей группы эпементов И 9. Этот элемент открыт, поскольку в К -м разряде регистра фикса ции выполнения автономных микропрограмм 8 записана единица.
В результате на выходе эпемента ИЛИНЕ 10 формируется сигнал, запрещающий передачу через четвертую группу эпементов И 11 текущего номера микрокоман- 10 ды 4Е, Р=1,що соответствующего данной автономной микрокомандне Р, К=1,м с пятого выхода 31 первого запоминающего блока 3 на вход шифратора 12. Одновременно с третьего выхода 33 устрой-1 ства подается управляющий сигнап на считывание хранящегося результата выпол» нения автономной. микропрограммы.
Так как в этой ситуации счетчик 13 микрокоманд остается в нулевом состоянии, то импульс генератора 21 через эцементы 22 и 15 задержки, первый эпемент И 16 и вторую группу эпементов
И 7 передает косвенный номер спедующей микрокоманды g = М, re< первого 2S запоминающего бпока 3 .в регистр 1 адреса, И&пыже устройство работает аналогично описанному выше..
В случае необходимости выполнения рассматриваемой автономной микропрограммы РА, К=1,YA в третий, четвертый, ..., С и раэ устройство работает точно так же, как и при вторичном ее выполнении.
При реапизации ш06ОЙ другой &Втоном ной микрокоманды из подмножества РА работа адаптивного микропрограммного устройства управления отпичается только распопожением единиц в считываемых кодах а4а, г=,,, ЪЧ, =,а
При поступиении на вход 26 нового кода операции поспе выполнения набора программ, кроме записи его в регистр 1 адреса, осуществпяется установка в нудь регистра 8 фиксации выполнения автоном- . ных микропрограмм.
Таким образом, соединение третьего выхода 36 второго запоминающего блока
19 с вторым выходом устройства и первым входом регистра 8 фиксации выполнения автономных микропрограмм, вход установки в нуль которого соединен с первым входом 26 устройства, а выход соединен- с первыми входами элементов И третьей группы эцементов И 9, вторые входы которых подкпючены к четвертому
И выходу 30 первого запоминающего бпока, 3, а выходы соединены с третьим выходом ЗЗ устройства и входами эцемента
71 16
10 ИЛИ-НЕ, выход которого соединен с первыми входами эпементов И четвертой группы элементов И 11, вторые входы которых соединены с пятыми выходами 31 первого запоминающего блока
3, а выход соединен с входом шифратора
12, поэвопяет повысить быстродействие устройства в целом.
Это следует из того, что при последоватепьной реализации всех программ множества Р: R,, i=1,É каждая автономная микропрограмма Р, К=1,а подмножества Р P выпоцняется адаптивным микропрограммным устройством управления не и
С =1 f раз, как это делается в известном, а только однажды. Если автономная микропрограмма Р... К= 1„m выполняется эа время k, то за счет отсутствия повторной реализации одной микропрограммы выигривается время
t4
Тх= E ЯК °
1
Следовательно, при последовательной реализации всего подмножества Р> .РА, К=1,rn величину выигрыша времени (повышения быстродействия) можно определить по формуле щ rn М = -". " К= Р К;-" К
К= 1 " К1 1
Формула изобретения
Адаптивное микропрограммное устройство управпения, содержащее регистр адреса, первый и второй дешифраторы, первый и второй запоминающие бпоки, регистр погических условий, перую и вторую группы элементов И, буферный регистр, шифратор, счетчик микрокоманд, первый, второй, третий и четвертый элементы И, первый и второй элементы задержки, счетчик адресов, первый и вто. рой элементы НЕ и генератор тактовых импупьсов, причем адресный вход регист. ра адреса подключен к первому входу устройства, выход регистра адреса соединен с первым входом первого дешифратора, а выход - c входом первого запоми минающего блока, первый, второй и третий выходы котопого соединены соответственно с входом адреса оуферного регистра, входом установки в нуль регистра адреса и информационным входом регистра логических условий, выходы кото17 9344 рого соединены с первыми входами элементов И первой группы, вторые входы которых подключены к второй группе входов устройства, а выходы соединены с группой входов логических условий буферного регистра, выходы которого соединены с первыми входами элементов И второй группы, вторые входы и выходы которых соединены соответственно с выходом первого элемента И и группой входов 10 косвенного адреса регистра адреса, первый выход шифратора соединен с первым входом счетчика микрокоманд, первый и второй входы второго элемента И соединены соответственно с выходом ге- 1S нератора тактовых импульсов и выходом первого элемента НЕ, вход которого соединен с выходом третьего элемента И и первым входом четвертого элемента И, второй вход которого соединен с входом 2й первого и выходом второго элементов задержки, первый и второй входы первого элемента задержки соединены соответственно с выходами первого элемента задержки и третьего элемента И, вход вто- д рого элемента задержки соединен с выходом генератора тактовых импульсов, выход четвертого элемента И соединен с вторым входом первого дешифратора, входами установки в нуль регистра аогичес- и ких условий и буферного регистра и первым входом счетчика адресов, второй и третий входы и выход которого соединены соответственно с входом второго элемента НЕ, вторым выходом шифратора и первым входом второго дешифра гор&у BTOpoO Bxog и выход которого coBgg» иены соответственно с выходом второго эпемента И и входом второго запоминающего бпока,группа выходов кода микро- и операции которого является групповым выходом кода микрооперации устройства, а выход адресного признака соединеН с
71 18 входом второго эпемента НЕ, выход которого соединен с вторым входом счетчика микрокоманд, выходы которого соединены с входами третьего элемента И, о т л ич а ю щ е е с я тем, что, с целью повышения быстродействия, в него введены регистр фиксации выполнения автономных микропрограмм, третья и четвертая группы элементов И и элемент ИЛИ-НЕ, при» чем группа информационных входов, вход установки в нудь и выходы регистра фиксации выполнения автономных микропрограмм соединены соответственно с группой выходов признака автономности микропрограммы второго запоминающего 6пока, первым входом регистра адреса и первымн входами элементов И третьей группы, вторые входы и выходы которых
, соединены соответственно с группой выходов признака автономности текущей микропрограммы первого запоминающего блока и входами элемента ИЛИ-НЕ, выход которого соединен с первыми входами элементов И четвертой группы, вторые входы и выходы которых соединены соответственно с группой выходов номера текущей микропрограммы первого запоминающего блока и входами шифратора, группа выходов признака автономности текущей микропрограммы второго запоминающего бдока является групповым выходом признака автономности текущей микропрограммы устройства, выходы эпементов И третьей группы являются груп« пой выходов признака считывания резупь тата устройства.
Источники информации, принятые во внимание при экспертизе
1. Авторское свидетельство СССР
% 646333, кл, Q 06 Г 9/16, 1979, 2. Авторское свидетельство СССР по заявке % 2633719/18-24, «л. G 06 Г 9/16, 1978 (прототип).
934471
Составитель B. Латышев
Редактор H. Ковалева Техред И.Гайиу Корректор IO. Макаренко
Заказ 3937/45 Тираж 732 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Филиал ППП "Патент", r; Ужгород,.ул. Проектная, 4









