Адаптивное микропрограммное устройство управления

Иллюстрации

Показать все

Реферат

 

Союз Советскин

Социалистических

Реснубпик

ОПИСф ЯЯЩ

ИЗОБРЕТЕН Ия

А о о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