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

 

1. МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее блок элементов И, элемент НЕ, два элемент та И, два RS-триггера, счетчик, регистр адреса, блок памяти, регистр микрокоманд, блок контроля, блок формирования микроопераций и блок формирования адреса микро соманд, выход которого соединен с информационным входом регистра адреса, вход начальной установки регистра адреса является первьт входом устройства, выход блока пам:яти соединен с входом регистра микрокоманд, первый выход которого соединен с информационным входом блока контроля и с первым информационным входом блока формирования микроопетэаций , первый выход блока формирования микроопераций является первым выходом устройства, второй выход регистра микрокоманд соединен t вторым информационным входом блока контроля и с первым информационным входом блока формирования адреса микрокоманд , второй информационньвЧ вход которого является вторым входом устройства , вход останова блока формирования адреса микрокоманд соединен с нулевым выходом первого триггера, нулевой выход второго триггера - с первым входом первого элемента И, выходы счетчика соединены с входами второго элемента И, отличающееся тем, что, с целью повьпления достоверности функционирования, в устройство введены блок сравнения, блок синхронизации, три элемента задержки , пять элементов ИЛИ, два блока элементов И и блок элементов ИЛИ, i . причем выход регистра адреса соединен с первыми входами первого и вто (Л рого блоков элементов И, вькоды коС торых соединены с информационным входом счетчика и первым входом блока элементов ИЛИ соответственно, выход счетчика соединен с первым информационным входом блбка сравнения и с первым входом третьего блока элементов И, выход которого соеди4 нен с вторым входом блока элеменсл тов ИЛИ, выход блока элементов ИЛИ соединен с вторым информационным вхоел дом блока сравнения и третьим информационным входом блока контроля и с адресным входом блока памяти, тактовый вход которого соединен с выходом первого элемента ИЛИ, первый вход первого элемента ИЛИ - с первым выходом блока синхронизации, второй выход которого соединен с вторым входом , первого элемента ИЛИ и с входом первого элемента задержки, выход первого элемента задержки - со счетным входом счетчика, выход перрого элемента И через элемент НЕ - с входом

СВОЗ СОВЕТСНИХ

СОЦИАЛИСТИЧЕСНИХ

РЕСПУБЛИН

„„ЯЦ„„1 ) 04515

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

H АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3549950/18-24 (22) 08.02.83 (46) 23.07.84. Бюл. № 27 (72) M.Ï.Ò ñà÷åâ, А.П.Ткачев, Г.Н.Тимонькин, В.С.Харченко, E,Â..Ïåoíîâ и И.Г.Донченко (53) 681.3(088.8) (56) 1. Авторское свидетельство СССР

¹ 543949, кл. G 06 F. 9/22, 1977.

2.. Патент США № 3555517, кл. 340-172. 5, 1971.

3. Авторское свидетельство СССР

¹ 884422881133, кл. G 06 Г 9/22, 1981.

4. Авторское свидетельство СССР № 765811, кл. G 06 F 9/22, 23.10.78 (прототип). (54) (57) 1 . МИКРОПРОГРАММНОЕ УСТРОЙ"

СТВО УПРАВЛЕНИЯ, содержащее блок элементов И, элемент НЕ, два элемен-, та И, два RS-триггера, счетчик, регистр адреса, блок памяти, регистр микрокоманд, блок контроля, блок формирования микроопераций и блок формирования адреса микрокоманд, выход которого соединен с информационным входом регистра адреса, вход начальной установки регистра адреса является первым входом устройства, выход блока памяти соединен с входом регистра микрокоманд, первый выход которого соединен с информационным входом блока контроля и с первым информационным входом блока формирования микроопеоаций, первый выход блока формирования микроопераций является пер-. вым выходом устройства, второй выход регистра микрокоманд соединен с вторым информационным входом блока контроля и с первым информационным входом блока формирования адреса микроЗЮО G 06 F 9/22 G 06 F 11/00 команд, второй информационный вход которого является вторым входом устройства, вход останова блока формирования адреса микрокоманд соединен с нулевым выходом первого триггера, нулевой выход второго триггера — с первым входом первого элемента И, выходы счетчика соединены с входами второго элемента И, о т л и ч а ю— щ е е с я тем, что, с целью повышения достоверности функционирования, в устройство введены блок сравнения, блок синхронизации, три элемента задержки, пять элементов ИЛИ, два блока элементов И и блок элементов ИЛИ, а ,причем выход регистра адреса соеди- щ нен с первыми входами первого и второго блоков элементов И, выходы которых соединены с информационным„ С входом счетчика и первым входом блока элементов ИЛИ соответственно, выход счетчика .соединен с первым информационным входом блока сравнения и с первым входом третьего блока элементов И, выход которого соединен с вторым входом блока элемен4йь тов ИЛИ, выход блока элементов ИЛИ соединен с вторым информационным входом блока сравнения и третьим инфор- ««Л мационным входом блока контроля и с адресным входом блока памяти, тактовый вход которого соединен с выходом первого элемента ИЛИ, первый вход первого элемента ИЛИ вЂ” с первым «ф» выходом блока синхронизации, второй выход которого соединен с вторым входом первого элемента ИЛИ и с входом первого элемента задержки, выход первого элемента задержки — со счетным входом счетчика, выход первого элемента И через элемент НЕ -- г входом

>in<(> ля (1) и (2).

10 записи счетчика, нулевой выход пер— ного триггера — с входом останона блока формирования микрооперацнй и входом запрета блока сравнения и входом останова блока синхронизации, третий выход которого соединен с входом разрешения блока сравнения, выход блока сравнения — с первыми входами второго и третьего элемен.тов ИЛИ, вторые входы которых соединены соответственно с выходами разрешения записи и начала ожидания блока формирования микроопераций, выход второго элемента ИЛИ через второй элемент задержки соединен с входом первого блока элементов И, выход третьего элемента ИЛИ через третий элемент задержки - с единичным входом первого триггера, единичный выход первого триггера — с вторыми входами. третьего блока элементов И, с вторым входом первого элемента И, с входами разрешения блока контроля и блока синхронизации, вход пуска которого является входом пуска устройства, выход блока контроля подключен к первому входу четвертого элемента ИЛИ, второй вход которого соединен с выходом конца микропрограммы блока формирования микроопераций, выход четвертого элемента ИЛИ соединен с входом останова блока синхронизации, выход конца участка блока формирования микроопераций подключен

Изобретение относится к автоматике и вычислительной технике и может быть использовано в качестве устройства управления ЭВИ и других систем.

Известны микропрограммные устрой- 5 ства с самоконтролем, содержащие блок памяти микрокоманд с регистрами адреса и микрокоманд, блок формирования микроопераций и блок контроНедостатками этих устройств являются большой объем блока памяти микрокоманд, большие затра(гы времени на профилактический контроль 11 и низкая достоверность функционирования. к третьему Входу ((epen (Î .((е(((((r;(И, ВЫХОД K(>1 о рого Соед((не и (. B,! Г), (()(1 пятого элемента ИПИ, второй ((трет((й входы пятого элемента ИЛИ соедпнень(с входами пуска и конца ожидания устройства, выход пятого элемента ИЛИ соединен с нулевыми входами первого и второго триггеров, единичный вход второго триггера соединен с выходом начала ожидания блока формирования микроопераций.

2. Устройство по п. 1, о т л и— ч а ю щ е е с я тем, что блок фор †. мирования микроопераций содержит четыре элемента И и один элемент ИЛИ, причем вход оетанова блока соединен с первыми входами первого, второго, третьего и четвертого элементов И, входы блока конца микропрограммы, заключения цикла, микроопераций и конец участка соединены с вторыми входами соответственно первого, второго, третьего элементов И и первым входом элемента ИЛИ, вход начала ожидания блока соединен с вторыми входами четвертого элемента И и элемента ИЛИ, выходы первого, второго, третьего, четвертого элементов И и элемента ИЛИ являются соответственно выходами конца микропрограммы, заключения цикла, микроопераций, начала ожидания и конца микропрограммы блока.

Известно также микропрограммное устройство управления с самоконтролем, содержащее два блока памяти микрокоманд, два регистра адреса, два формирователя адреса, два регистра микрокоманд, два счетчика, два блока формирования микроопераций, два блока контроля, два блока сравнения, два регистра адреса возврата, триггеры, элементы И, ИЛИ и HE 3 1.

Недостатками этого устройства являются большая сложность, обусловленная двухканальным принци((ом построения устройства, а также низкая достоверность функционирования.

Наиболее близким по технической сущности и достигаемому результа(y

3 1 10

1? 11 и;,!Pт . и! и я иi?R!:т ct? м1?1:p )11jic Г! зм

М?1?лв УС т РОП? тв:,. У?Ц. а «.?Е ИИЯ С аМОконтролем, .опержatttt..е блок элеменr<1B И, элемент !!Е, д«а э.пемента И, два RS-триггера, счетчик регистр

У

5 адреса, блок памяти, регистр микрокоманд, блок контроля, блок формирования микроот?ераций и блок формирования адреса микрокоманд, выход Ко торого соединен с информационным вхо10 дом регистра адреса, вход начальной установки регистра адреса является первым входом устройства, выход блока памяти соединен с входом регистра микрокоманд, первый выход которого соединен с первым информационным входом блока контроля, а также с первым информационным входом блока формирования микроопераций, первый выход блока формирования микроопераций

20 является первым выходом устройства, .второй выход регистра микрокоманд соединен с вторым информационным входом блока контроля, а также с первым информационным входом блока формирования адреса микрокоманд, второй информационньп? вход которого является вторым входом устройства, управляющий вход блока формирования адреса микрокоманд соединен с нулевым выходом первого триггера, нулевой выход

30 второго триггера соединен с первым входом первого элемента И, выходы счетчика соединены с группой входов второго элемента И.

Основным режимом работы известного3 устройства является рабочий режим, в котором осуществляется считывание микрокоманд из блока памяти и выдача их через блок формирования микроопераций на объект управления. В моменты простоя устройства, вызванные ожиданием окончания формирования логических условий или окончания выполнения микрокоманд объектом управления устройство работает в режиме естественного ожидания и при этом осуществг ляет контрольное считывание микрокоманд из блока памяти в порядке возрастания номеров ячеек памяти, начиная с той, на которой бьнто прекращено контрольное считывание в предыдущем режиме ожидания. Причем выдача микроопераций на объект управления блокируется, а блоком контроля осуществляется контроль отсутствия иска- 5 жений в считанной микрокоманде. По окончании реализации микропрограммы режим ожидания вводится принудитель 1 "1 4 ио лт!1я о1. «ц1 " тт?1?Р iir?11 л «1?т pn,?1,!t;! i 1, с и?тываиия тех . и?крокол???1 ч 111?кр.. ??рог?? а11мь?, которые ост?11?иг ь и. и ров« f! f! I? ныл?и за время пребывания в режимах естественного ожидания. При «ыполнении очередной микропрограммы процесс конгроля микрокоманд осуществчяется, начиная с начальной микрокоманды этой микропрограммы (4 1

Однако устройство име т низкую достоверность функционирования, обусловленную отсутствием в нем оборудования, которое устанавлив," то бь? вэаи1мосвязь между процессом контрольного считывания и процессом реализации микрокоманд. Вследствие этого в устройстве возможно отставание процесса контроля микрокоманд от процесса их реализации при выполнении микропрограммы, что приводит к выдаче их непроверенными для исполнения, а значит к снижению достоверности функционирования.

Кроме того, устройство обладает низким быстродействием, которое обусловлено отсутствием избирательности при контроле микрокоманд, т.е. тем, что проверке подвергаются не только те микрокоманды, которые будут реализованы, но и те, которые вследствие разветвленности микропрограммы не войдут в реализуемую ею ветвь.

Цель изобретения — повь?шение надежности, достоверности функционирования и быстродействия устройства.

Поставленная цель достигается тем, что в микропрограммное устройство управления, содержащее блок элементов И, элемент HE два элемента И, два RS-триггера, счетчик, регистр адреса, блок памяти, регистр микрокоманд, блок контроля, блок формирования микроопераций и блок формирования адреса микрокоманд, выход которого соединен с информационным входом регистра адреса, вход начальной установки регистра адреса является первым входом устройства, выход блока памяти соединен с входом регистра микрокоманд, первый выход которого соединен с первым информационным входом блока контроля, и с первым информационным входом блока формирования микроопераций, первый выход блока формирования микро.операций является первым выходом устройства, второй выход регистра микрокоманд соединен с вторым информационным входом блока контроля и с первым ный выход первого тригге.ра — с вторими входами третьего 6ïîêë эле енТоВ И, с втОрым вхОдом первого эле.-. мента И, с входами разрешения блока контроля и блока синхронизации, вход пуска которого является входом пуска устройства, выход блока контроля подключен к первому входу четвертого элемента ИЛИ, второй вход которого соединен с выходом конца микропрограммы блока формирования микроопераций, выход четвертого элемента ИЛИ соединен с входом останова блока синхронизации, выход конца участка блока формирования микроопераций подключен к третьему входу первого элемента И, выход которого соединен с первым входом пятого элемента ИЛИ, второй и третий входы пятого элемента ИЛИ соединены соответственно с входами пуска и конца ожидания устройства, выход пятого элемента ИЛИ соединен с нулевыми входами первого и второго триггеров, единичный вход второго триггера соединен с выходом начала ожидания блока, формирования микроопераций.

Блок формирования микроопераций содержит четыре элемента И и один элемент ИЛИ, причем вход останова блока соединен с первыми входами первого, второго, третьего и четвертого элементов И, входы блока конца микропрограммы, заключения цикла, микроопераций и конец участка соединены с вторыми входами соответственно первого, второго и третьего элементов И и первым входом элемента ИЛИ, вход начала ожидания блока соединен с вторыми входами четвертого элемента И и элемента ИЛИ, выходы первого, второго, третьего, четвертого элементов И и элемента ИЛИ являются соответственно выходами конца микропрограммы, заключения цикла, микроопераций, начала ожидания и конца микропрограммЫ блока.

Сущность изобретения состоит в повышении достоверности функционирования устройства за счет опережения продесса контроля микрокоманд по отношению к процессу их реализации, а также в повышении быстродеиствия устройства за счет обеспечения избирательности процесса контроля микрокоманд, т.е. исключения из числа проверяемых тех микрокоманд, которые не входят в реализуемую ветвь микропрограммы

5 104з15 ф информационным входом блока формиро-, вания адреса микрокоманд, второй информационный вход которого является вторым входом устройства, вход останова блока формирования адреса микрокоманд соединен с нулевым выходом первого триггера, нулевой выход второго триггера — с первым входом первого элемента И, выходы счетчика, соединены с входами второго элемента И, введены блок сравнения, блок синхронизации, три элемента задержки, пять элементов ИЛИ, два блока элементов И и блок элементов ИЛИ, причем выход регистра адреса соединен с пер->5 выми входами первого и второго блоков элементов И, выходы которых соединены с информационным входом счетчика и первым входом блока элементов ИЛИ соответственно, выход счетчика соединен с первым информационным входом блока сравнения и с первым входом третьего блока элементов И, выход которого соединен с вторым входом блока элементов ИЛИ, выход блока элементов ИЛИ соединен с вторым информационным входом блока сравнения и третьим информационным входом блока контроля и с адресным входом блока памяти, тактовый вход которого соединен с выходом первого элемента ИЛИ, первый вход первого элемента ИЛИ вЂ” с первым выходом блока синхронизации, второй чыход которого соединен с вторым входом первого элемента ИЛИ и с входом первого элемента задержки, выход первого элемента задержки — со счетным .входом счетчика, выход первого элемента И через элемент НŠ— с входом записи счетчика, нулевой выход пер40 вого триггера — с входом останова блока формирования микроопераций и с входом запрета блока сравнения и входом останова блока синхронизации,i

45 ,третий выход которого соединен с входом разрешения блока сравнения, выход блока сравнения — с первыми входами второго и третьего элементов ИЛИ, вторые входы которых соеI

50 динены соответственно с выходами разрешения записи и начала ожидания блока формирования микроопераций, выход второго элемента ИЛИ через второй элемент задержки соединен с вторым входом первого блока элемейтов И, выход третьего элемента ИЛИ через третий элемент задержки — с единич-. ным входом первого триггера, единич"

Ввецение нтОро1 О 11 pE. 1 него б.по кон элементoR И и блока элементс в ИЛИ и Обуспов»!ен»п!х им»»» связей позволяет по сигналам с нулевого

1 1!)4" и единичного выходов первого триггера управлять подачей адреса Mt»kpoкоманды из регистра адреса или из счетчика на адресньл» вход блока памяти, а также соответственно на второй и третий информационные входы 1р блока сравнения и блока контроля.

Введение первого элемента ИЛИ и обусловленных им связей необходимо для формирования сигналов считывания на тактовом входе блока памяти. 15

Введение блока сравнения и обусловленных им связей необходимо для проверки принадлежности очередной микрокоманды, подлежащей реализации, к множеству микрокоманд, проверенных в процессе выполнения микропрограммы.

Введение второго элемента ИЛИ и обусловленных им связей предназначено для формирования сигнала управ- д ления передачей адреса с выхода регис.тра адреса на информационный вход счетчика в момент перехода устройства в режим принудительного контроля или в момент выполнения микрокоманды,3p которая замыкает какой-либо цикл в микропрограмме. Соединение выхода регистра адреса с группой информационньгх входов счетчика через первый блок элементов И предназначено для

35 управления передачей кода адреса из регистра адреса в счетчик.

Введение второго элемента задержки необходимо для обеспечения задержки сигнала передачи адреса с регист 4р ра на счетчик на время, необходимое для формирования адреса очередной микрокоманды, к выполнению которой необходимо перейти, и время записи этого адреса в регистр адреса.

Введение первого элемента задержки и обусловленных им связей необходимо для задержки продвижения счетчика в режиме контроля на время, необходимое для считывания микрокоманды

sp из блока памяти, записи ее в регистр м микрокоманд и проверки ее блоком контроля.

Введение третьего элемента ИЛИ и обусловленных им связей необходимо для формирования сигнала на единичS5 нам входе первого триггера для перевод;1 устрой»ства в режим контроля лиГО в с!!учае отставания процесса конт1

РОЛЯ М1П»РОК(Ма1111, ОТ 1:1ч1П c I,t I(; ре алин апии, либо в с.;. 1!n . 1ит,111;! И»ч

M1tt POt!OMtH»tt t 1Р1ЕЮ111ей 1!Сa К, tt;1 ;1»tа

Ожидания.

Введение третьег!1 элемента зад"рж ки и обусловленных им связе1! Иред— назначено для обеспечения задержки переключения первого триггера н единичное состояние на время, необходимое для переключения Н единичное состояние второго триггера при введении режима контроля в состоянии естественного ожидания.

Введение четвертого элемента ИЛИ и обусловпенных им связей предназначено для формирования и выдачи на четвертый управляющий вход блока синхронизации сигнала на прекраще1»ие работы устройства либо при обнаружении ошибки в контролируемой микрокоманде, либо при выполнении конечной микрокоманды микропрограммы.

Введение пятого элемента ИЛИ и обусловленных им связей предназначено для формирования сигнала на перевод устройства в рабочи»» режим н момент либо запуска микропрограммы на выполнение, либо окончания ожидания выполнения микрокоманды, либо достижения такой микрокоманды (н режиме контроля в состоянии естестненноfo ожидания), которая имеет метку начала ожидания, либо конца линейного участка.

Соединение пятого выхода блока формирования микроопераций с третьим входом первого элемента И предназначено для передачи сигнала на пере" вод устройства из режима принудительного контроля н рабочий режим при считывании микрокоманды, имеющей метку начала ожидания ипи конца линейного участка.

Введение блока синхронизации и обусловленных им связей предназначено для формирования тактовых импульсов рабочей или контрольной частоты в зависимости от режима работы устройства, а также управления работой блока сравнения.

Соединение нулевого выхода первого триггера с управляющим входом блока формирования микроопераций предназначено для управления выдачей сигналов на первый, второй, третий и четвертый выходы этого блока. Соединение единичного выхода первого триггера с вторым входом первого элемента И предназначено для у1!ранле515 10

9 1 104 ния формированием сигнала на перевод устройства из режима принудительного контроля в рабочий режим.

Соединение выхода второго элемента И через элемент НЕ с управляющим входом счетчика предназначено для управления работой счетчика.

Таким образом, введение перечисленных элементов и связей позволяет повысить достоверность функционирования и быстродействия устройства.

На фиг. 1 представлена функциональная схема предлагаемого устройства; на фиг. 2 — пример конкретного исполнения функциональной схемы блока контоля; на фиг. 3 — функциональная схема блока формирования микроопераций; на фиг. 4 — функциональная схема блока синхронизации; на фиг. 5 — пример конкретного исполнения функциональной схемы формирования адреса микрокоманды; на фиг. б — пример конкретного исполнения функциональной схемы блока сравнения для трехразрядного адреса; на фиг. 7 — пример разбиения микропрограммы на линейные участки их ранжирования и последовательной нумерации микрокоманд.

Устройство (фиг, .1) содержит первый блок 1 элементов И, первый элемент 2 задержки, первый элемент ИЛИ 3,.счетчик 4, второй элемент И 5, элемент НЕ 6, регистр 7 адреса, блок 8 сравнения, второй 9 и третий 10 блоки элементов И, 35 блок 11 элементов ИЛИ, блок 12 памяти,блок 13 формирования адреса микрокоманды, регистр 14 микрокоманд с полем 15 управления и полем 16

40 адреса и логических условий, блок 17 контроля, блок 18 формирования микроопераций, содержащий следующие выходы: выход 19 метки "Конец микро" программы", выход 20 метки "ЗаключеII 45 ние цикла, выход 21 сигналов микроопераций, выход 22 метки "Начало ожидания", выход 23 метки "Конец участка", второй 24 и третий 25 эле менты ИЛИ, второй триггер 26, третий элемент задержки 27, первый элемент И 28, четвертый элемент ИЛИ 29, второй элемент задержки 30, пятый элемент ИЛИ 31, блок 32 синхронизации, первый триггер 33, информацион. ный 34,. счетный 35 и останова 36 входы счетчика 4, выход 37 счетчика 4, вход 38 начальной установки, являющийся первым входом ус-чойства, и информационный вход 39 регистра 7 адреса, выход .40 регистра 7 адреса., группу выходов 41 элементов ИЛИ бло- ка 1 1 элементов ИЛИ, выход 42 блока 8 сравнения, тактовый вход 43 блока 12 памяти, информационный вход 44 регистра 14 микрокоманд, второй вход 45 блока 13 формирователя адреса, являющийся вторым входом устройства, .первый 46 и второй 47 выходы регистра 14 микрокоманд, выход 48 блока 17 контроля, четвертый 49 и второй 50 выходы блока 18 формирования микроопераций, первый 51 выход блока 18 формирования микроопераций, являющийся первым выходом устройства, третий 52 и пятый 53 выходы блока 18 формирования микроопераций, третий вход 54 устройства, второй вход 55 пятого элемента ИЛИ 31, являющийся четвертым входом устройства, четвертый управляющий вход 56 блока 32 синхронизации, третий 57, второй 58 и первый 59 выходы блока 32 синхронизации, единичный 60 и нулевой 61 выходы первого триггера 33.

Блок 17 контроля (фиг. 2) содержит первый 62 и второй 63 сумматоры по модулю два с инверсными выходами, элемент ИЛИ 64 и элемент И 65..

Блок 18 формирования микроопераций (фиг. 3) содержит первый 66 и второй 67 элементы И, блок 68 элементов И, третий элемент И 69 и элемент ИЛИ 70, Блок 32 синхронизации (фиг. 4) содержит RS-триггер 71, первый 72 и второй 73 элементы И и управляемый генератор 74, состоящий из двух генераторов 74.1 и 74.2.

Блок 13 формирования адреса микрокоманд (фиг. 5) содержит блок 75 мультиплексоров и блок 76 элементов И.

Блок 8 сравнения (фиг. 6) содержит первый 77 и второй 78 блоки элементов НЕ, первый 79 и второй 80 элементы ИЛИ, первый элемент И 81, третий 82 и четвертый 83 элементы ИЛИ, второй элемент И 84, пятый 85 и шестой 86 элементы ИЛИ, третий 87, четвертый 88, пятый 89 и шестой 90 элементы И, седьмой элемент ИЛИ 91, седьмой элемент И 92, восьмой 93 и девятый 94 элементы ИЛИ, восьмой элемент И 95, группу выходов 96 первого блока 77

11 1! .) л е ив и т О в ) ), I T) )/ IT fly в ь1х О ДО в 9 / г) ) Оро).О блока 78 элементов НЕ. на фиг. 7 лоз. 1 — 17 Обозначены порядковые номера м41крокоманд в микропрограмме, лоз. Π— IU — ранги линейных участков микропрограммы.

В виде прямоугольников условно показан формат каждой микропрограммы.

Символ КУ означает, что в соответствующей зоне микрокоманды проставлена метка "Конец участка", которой помечаются микрокоманды конца линейного участка. Символ НО означает, что в соответствующей зоне микрокоманды проставлена метка "Начало ожидания, свидетельствующая о том, что после реализации этой микрокоманды устройство перейдет в состояние естественного ожидания. Символ

ЗЦ означает, что в соответствующей зоне микрокоманды проставлена метка "Замыкание цикла", которой помечаются начальные микрокоманды возвратных линейных участков. Символ F. означает, что в соответствующей зоне микрокоманды проставлена метка, которой помечается конечная микрокоманда микропрограммы. Прочерк означает отсутствие информации в зонах перечисленных меток.

Элементы устройства имеют следующее назначение (фиг. 1). Блок 1 элементов И предназначен для управления передачей адреса микрокоманды из регистра 7 адреса в счетчик 4.

Адрес очередной микрокоманды, подлежащей реализации, переписывается в счетчик 4 в процессе введения режима принудительного контроля.

Элемент задержки 2 предназначен для задержки тактовых импульсов контрольной частоты, поступающих на динамический вход 35 счетчика 4, на время Ть„, необходимое для -считывания микрокоманды из блока 12 памяти „) записи ее в регистр микрокоманд 14 ь 1.!, и проверки ее блоком 17 контроля Y.,. При этом справедливо соотношение

/ /

31 " ))11 RGT4 БК

Элемент ИЛИ 3 служит для формирования сигналов считывания на тактовом входе 43 блока 12 памяти.

Счетчик 4 предназначен для хранения адреса А очередной микроко манды, подлежащей контролю в процессе реализации микрокоманд микропрограммы, т.е. в рабочем режиме, a также формирования адреса А ..

К 1+1

04 )1 ) 50

5 !

О )е Ре 1! IofT ко!)тР)) т/1) l)) Q)1()TT 11! I) T)/ T< Г/)1;1)! ды в процес се ко11т)) О)1Я . Е! ". 1114)bn v/ T:T. циОнный вход 34 IlpE .ПказчЯ1!е h л)тя л» раллельной записи адреса h.р;,, Очередной микрокоманды, подлежащей реализации, и поступающего иэ регистра 7 адреса при введении режима принудительного контроля. Это позволяет достичь избирательности принудительного контроля, т.е. обеспечить проверку только Трх микрокомакд, которые подлежат реализации.

В процессе контроля микрокоманд микропрограммы адрес А очередной к+4 контролируемой микрокоманды формируется путем увеличения кода, установленного в счетчике 4, на единицу при поступлении на счетный вход 35 счетчика тактового импульса контрольной частоты. С целью исключения повторной проверки уже проверенных микрокоманд при обнулении счетчика 4 в результате его переполнения по нулевому сигналу на его входе 36 запрещается подсчет счетчика 4 тактовых импульсов контрольной частоты, поступающих на его счетный вход 35.

Элемент И 5 служит для фиксации момента заполнения счетчика 4 с целью исключения его обнуления изза переполнения. При заполнении счетчика 4 на выходе элемента 5 по" является сигнал, которым запрещается подсчет импульсов контрольной частоты счетчиком.

Элемент НЕ 6 служит для управления счетчиком 4.

Регистр 7 адреса служит для хранения адреса Ар„,„ микрокоманды, подлежащей реализации, и выдачи его на входы элементов И 1 и 9.

Вход 38 регистра 7 предназначен для начальной установки адреса А начальной микрокоманды микропрограм" мы. Вход 39 регистра 7 предназначен для параллельной записи в регистр 7 кода очередного адреса, сформированного блоком 13 формирования адреса.

Блок 8 сравнения предназначен для проверки вхожд ния очередной микрокоманды, подлежащей реализации, в число микрокоманд, проверенных в процессе реализации микропрограммы.

Проверка осуществляется путем сравнения рабочего и контрольного адресов. При этом под контрольным и рабочим адресом понимается адрес очереднои микрокомандь1, подлежащей

»04»S

14 соответственно контролю или реализации.

Такой принцип проверки возможен при условии, что кодирование адресов микрокоманд осуществляется в соот- 5 ветствии с принципом ранжирования линейных участков микропрограммы и последовательной нумерации микрокоманд каждого участка таким образом, чтобы микрокоманды участков старших рангов, а также микрокоманды одного и того же участка, реализуемые позже других микрокоманд этого участка, имели большой порядковый номер. Этот номер, представленный в двоичной системе, и является кодом адреса этой микропрограммы. Под микрокомандой схождения понимается такая микрокоманда, к которой в пределах данной микропрограммы возможен лереход от двух и более других различных микрокоманд, Под микрокомандой ветвления следует понимать такую микрокоманду, от которой возможен переход к двум и более другим различным мик- д рокомандам, отличным от нее самой.

При этом линейным участком микропрограммы называется такая последовательность микрокоманд этой микропрограммы, которая не содержит микрокоманд ветвления, кроме конечных в данном участке, и не содержит микрокоманд схождения, кроме начальных в этом участке. Рангом линейного участка называется наибольшее количество линейных участков, расположен35 ных на пути от начала микропрограммы к началу данного участка.

При ранжировании участков микропрограммы ее возвратные линейные участки должны быть разорваны в мес" тах замыкания циклов. Под возвратным линейным участком микропрограммы следует понимать такой участок, который приводит к образованию цикла в микропрограмме.

Пример разбиения микропрограммы на линейные участки, их ранжирования и цоследовательной нумерации микрокоманд приведен на фиг. 7.

В блоке 8 сравнения происходит

50 сравнение контрольного А „,„ и рабочего А р; „ адресов. Если очередная микрокоманда, подлежащая реализации, оказывается непроверенной, то выполняется соотношение

А,„„. Ар „,. с

ы на выходе 42 блока 8 появляется сигнал, которым устройство переводится в режим принудительного контроля.

Пример конкретного исполнения блоI ка 8 сравнения представлен на фиг.6.

Элементы НЕ 77 и 78 блока 6 сравнения предназначены для получения обратного кода контрольного и рабочего адресов соответственно. Группы элементов ИЛИ 79 и 80 и элемент И 88 блока 6 предназначены для формирования сигнала R1 равенства первых разрядов кодов адресов, поступающих на входы 37 и 41 блока. При равенстве первых разрядов элемент 88 открывается единичными сигналами с выходов элементов 79 и 80 блока 6.

Аналогично совокупность элементов ИЛИ 82 и 83 и элемент И 89 блока 6, а также совокупность элементов ИЛИ 85 и 86 и элемент И 90 блока 6 предназначены для формирования сигналов R 2 и R 3 равенства соответственно двух и трех разрядов кодов адресов. При этом сигнал К 3 равенства трех разрядов кодов на выходе элемента И 90 формируется по равенству третьих разрядов, т.е. по единичным сигналам с выходов элементов ИЛИ 85 и 86 блока, с учетом сигнала о равенстве двух предыдущих разрядов (К 2) поступающего на вход элемента И 90 с выхода элемента И 89.

Элемент 81 блока 6 предназначен для формирования сигнала И1 о том, что первый разряд рабочего адреса больше первого разряда контрольного адреса. Элемент И 84 (87) блока 6 предназначен для формирования .сигнала о том, что второй (третий) разряд рабочего адреса больше сбответствующего разряда контрольного адреса, а число, соответствующее предыдущим разрядам рабочего адреса, не меньше числа, представленного соответствующими разрядами контрольного адреса, Элемент И 92 блока 6 предназначен для формирования сигнала И 2 о том, что значение и первого, и второго разрядов рабочего адреса не меньше значений соответствующих разрядов контрольного адреса. Элемент ИЛИ 93 (91) блока 6 предназначен для формирования сигнала F 2 (F 3), свидетельствующего о том, что код двух (трех) разрядов рабочего адреса больше кода двух (трех) соответствующих разрядов контрольного адреса. Элемент И 94 блока 6 предназначен для формировагде запись!вается содержимое эоны адРеса и зоны .!аг!!ческих услав!!!! и!!кракоманды. Содержимое зоны адреса падается с входа блока 13 на блок элементов И 76, управляющих передачей адреса из блока 13.

Модифицируемая часть адреса формируется блоком 75 мультиплексоров, осуществляющим проверку значений тех логических условий считанной микрокаманды, и поступает на вход 45 блока 13. Сформированная блокам 75 мультиплексоров модифицируемая часть адреса присоединяется к,неизменяющейся части в качестве младших разрядов.

Выдача сформированного адреса на выход блока 13 разрешается только при наличии единичного сигнала на его управляющем вхаде,т.е. только в рабочем режиме.

Регистр 14 микракоманд устройства предназначен для хранения микрокоманды, считанной иэ блока 12 памяти, В регистре 14 можно выделить два поля: поле 15 управления и поле 1б адреса и логических условий. В поле 16 хранится содержимое зоны адреса и эоны логических условий микрокоманды.

Эта информация используется для формирования рабочего адреса А,;+,, т,е. адреса очередной микрокоманды, подлежащей реализации. В поле 15 управ-! ления хранится содержимое зон меток !"Конец микропрограммы", "Начало ожидания", "Замыкание цикла", Конец

11 участка, а также зоны микроопераций и эоны контрольных разрядов. Эта информация используется при формирова нии сигналов управления работой устройства, а также сигналов микроапераций. Кроме того, информация с выходов полей 15 и 16 регистра 14 поступает в блок 17 контроля для проверки.

Блок 17 контроля предназначен для проверки отсутствия ошибок в микрокоманде, записанной на регистре 14 и проверки ее соответствия адресу, по которому она считывается иэ блока 12 памяти. Работа блока 17 контроля в рабочем режиме запрещается нулевым сигналом, поступающим на управляющий вход с выхода триггера 33 режима работы.

В качестве одного иэ возможных вариантов реализации блока контроля может быть использована схема (фиг.2), в которой сумматор 62 по модулю 2 с инверсным выходом предназначен для проверки соответствия проверяемой

1 I 104515 16 н!тч с!1Г!! зла ° свидетель ствующега а RI.ltìnttåíl;è саатне !!!ен)-:я л ., л л

Элемент И 95 блока 6 управляет выдачей результата сравнения на вы5 хад 42 блока 6.

Блоки элементов И 9 и 10 и ИЗБА 11 устройства служат дпя управления передачей адреса считываемой из блока 12 памяти микрокоманды с выхода 40 регистра 7 адреса или с выхода счетчика 4 в рабочем режиме и в режимЕ контроля соответственно.

Блок 12 памяти предназначен для хранения микрокаманд микропрограмм.

При поступлении импульса на тактовый вход 43 блока 12 памяти происходит считывание микрокоманды по адресу, поступающему на адресный вход блока памяти с выхода блока 11 элементов ИЛИ.

В формате микрокаманды, записанной в блоке памяти, можно выделить следующие зоны: зону логических условий, в которой задаются коды проверяемых логических условии; зону адреса, предназначенную для задания неизменяемой части адреса очередной микракоманды; зону метки "Конец микропрограммы", которой помечается

1микрокаманда, являющаяся последней в микропрограмме; зону метки "Замыкание цикла, которой помечаются микрокоманды, при реализации которых возможен переход к повторному выполнению уже реализованного участка микро- программы; зону микроопераций, в которой задается код микраопераций; зону контрольных разрядов, в которой кодированием единицей первого разряда дополняется да нечетного количества

40 число единиц в микрокоманде, а кодированием единицей второго разряда этой зоны задается соответствие микракоманды адресу, по которому произ водилось ее считывание; зону метки

"Начало ожидания", которой помечается микрокоманда, задающая состояние естественного ожидания; зону метки

"Конец участка", которой помечаются микракоманды, завершающие линейные участки микропрограммы.

Блок 13 формирования адреса микрокоманды (фиг. 5) предназначен для формирования рабочего адреса, т.е. адреса очередной микракоманды, подлежащей реализации. Информация в блок 13 поступает на его информационный вход с поля 16 регистра 14, 1 7 11045 микрокоманды тому «дресу, по которому произ водится ее считыва ние . Сумматор 63 по модулю 2 с инверсным выходом . предназначен для контроля четности микрокоманды, записанной в регистре 14. Элемент ИЛИ 64 блока 17 контроля предназначен для формирования сигнала об обнаружении ошибки. Элемент И 65 блока 17 управляет выдачей „ сигнала об обнаружении ошибки на 0 выход 48 блока.

Блок 17 работает следующим образом. Сумматор 63 производит контроль четности микрокоманды, записанной в регистре 14. Дополнение кода микро- 15 команды с четным количеством единиц до нечетного осуществляется записью при кодировании единицы в первом разряде ее зоны контрольных разрядов (на фиг. 2 обозначен символом 15- ).

При нечетном количестве единиц в коде микрокоманды в этом разряде записывается нуль. Если в коде микрокоманды, поступившей для проверки, количество единиц оказывается четным, то на выходе сумматора 63 появляется единичный сигнал, свидетельствующий об ошибке в микрокоманде.

В сумматоре 62 происходит суммирование по модулю 2 количества еди30 ниц кода контрольного адреса и значения второго разряда зоны контрольных разрядов микрокоманды (на фиг.2 этот разряд обозначен символом 15 — (7 +1), Кодирование этого разряда осуществляется в зависимости .от количества

35 единиц в коде адреса этой микрокоманды. Если количество единиц в этом коде и во втором разряде зоны контрольных разрядов микрокоманды оказы40 вается четным, то на выходе сумматора 62 по модулю 2 появляется сигнал, свидетельствукщий о несоответствии микрокоманды адресу, по которому она была считана. Выдача сигналов о ре- .

45 эультатах контроля с выходов сумматоров 62 и 63 через элемент И 64 на выход 48 блока разрешается только при наличии единичного сигнала на входе 60 блока, т.е. при работе устройства в режимах контроля.

Блок 18 формирования микроопераций устройства предназначен для формирования сигналов управления устройством и объектом управления. Пример конкретного исполнения блока 18 при- веден на фиг. 3. На вход 46 блока поступает с поля 15 управления регистра микрокоманд содержимое следую15 щих зон микрокоманчи: зон!! 19 метки Конец микропрограммы, зоны 20 метки "Замыкание цикла", зоны ?1 микроопераций, зоны 22 метки "Начало ожидания" и эоны 23 метки "Конец участка".

Элемент И 66 блока 18 предназначен для управления выдачей сигнала о наличии в микрокоманде метки "Конец микропрограммы", элемент И 67 сигнала о наличии метки "Замыкание иикла". Блок 68 элементов И предназначен для управления выдачей сигналов управления объектом управления.

Элемент И 69 блока 18 предназначен для управления выдачей на выход 52 блока сигнала о наличии метки "Начало ожидания" в микрокоманде. Выдача сигналов управления устройством на выходы 49 — 51 и 53 и объектом управления на выход 51 устройства в режимах контроля запрещается нулевым сигналом с выхода 61,триггера 33 (фиг, 1), поступающим .на вход 61 блока 18. Элемент ИЛИ 70 блока 18 предназначен для формирования сигнала на перевод устройства в рабочий режим при контроле микрокоманды, содержащей в зоне 22 метку "Начало ожидания" или в зоне 23 метку "Конец участка".

Элемент ИЛИ 24 устройства служит

1 для формирования сигнала, раэрешаю-! щего перепись рабочего адреса А р;+„ из регистра 7 адреса в счетчик 4 в случае поступления с выхода 42 блока 8 сравнения сигнала на введение режима принудительного контроля и по сигналу метки "Замыкание цикла", поступающему с выхода 50 блока 18 формирования микроопераций.

Элемент ИЛИ 25 слудит для формирования сигнала на перевод устройства в режим контроля в случае поступления с выхода 42 блока 8 сравнения сигнала на введение режима принудительного контроля и по сигналу с выхода 52 блока 18 формирования на перевод устройства в состояние естественного ожидания при реализации микрокоманды, содержащей метку "Начало ожидания".

Этим обеспечивается постоянное опережение процесса контроля микрокоманд по отношению к процессу их реализации.

Триггер 26 режима естественного ожидания служит для задания состоя19 11045 нпя естественного ожидания г-.тройства. Перевод триггера в единичное состояние, соответбтвуюшее состоянию естественного ожидания, осуществляется подачей на его S-вход единичного сигнала с выхода 52 блока 18 при реализации микрокоманды, задающей состояние естественного ожидания.

Установка триггера 26 в нулевое состояние, соответствующее рабочему режиму устройства, осуществляется по сигналу "Конец ожидания" с входа 55 устройства.

Элемент 27 задержки служит для исключения подачи сигнала метки "Начало ожидания" с выхода 53 блока 18 на нулевые входы триггеров 26 и 33 при введении режима контроля в состоянии естественного ожидания. Время 127 задержки сигнала на перевод 20 устройства в режим контроля определяется временем перехода устройства в состояние естественного ожидания, т.е. временем 7>< установки триггера 26 в единичное состояние, причем. 25

l г6

Элемент И 28 устройства служит для формирования сигнала на перевод устройства из режима принудительного

30 контроля в рабочий режим по сигналам

"Начало ожидания" или "Конец участка"

Элеменг ИЛИ 29 служит для формирования сигнала на прекращение работы устройства при появлении на выходе, 48 блока 17 контроля единичного сигнала, свидетельствующего об обнаружении ошибки в контролируемой микрокоманде, или о несоответствии ее адресу,.по которому она была счи40 тана, а также при появлении сигнала с выхода 49 блока 18 при реализации последней микрокоманды микропрограммы (по метке "Конец микропрограммы").

Единичным сигналом с выхода этого

45 элемента устанавливается в нулевое состояние триггер 71 блока 32 синхронизации (фиг. 4), нулевым сигналом с выхода которого запрещается работа устройства 8 сравнения и выдача блоком тактовых импульсов.

Элемент задержки 30 служит для задержки сигнала на передачу адреса из регистра 7 адреса в счетчик 4 на время 7 зо, необходимое для формирования (т„ ) рабочего адреса, т.е. адреса очередной микрокоманды, к реализации которой необходимо перейти, 5 l!) и временем Г, его ш рс .да ш в регистр адреса. !!ри этом справелливо о z ь.

Элемент ИЛИ 3 1 c HT grist формирования сигнала на перевоц устройства иэ режима контроля в рабочий режим при поступлении с выхода элемента И 28 сигнала на перевод устройства в рабочий режим из режима принудительного контроля, а также при поступлении на вход 55 устройства сигнала "Конец ожидания"..

Блок 32 синхронизации (фиг; 4) предназначен для формирования тактовых импульсов рабочей и контрольной частоты. Кроме того, сигналом с его выхода 57 разрешается работа блока 8.

Блок 32 работает в двух режимах: рабочем и контрольном. Работа блока в этих режимах разрешается с приходом на вход устройства 54 импульса

"Пуск", который устанавливает в единичное состояние триггер 7 1, который разрешает, в зависимости от разрешающего сигнала на входах 60 или 61 блока, генерацию управляемыми генераторами 71.1 или 74.2 тактовых импульсов контрольной или рабочей частоты соответственно. Одновременное появление сигналов на управляющих входах 60 и 61 исключа"тся, так как они поступают с единичного и нулевого выходов триггера 33 режима работы. Кроме того, сигналом с единичного выхода триггера 7! блока 32, поступающим на его выход 57, разрешается работа блока 8 сравнения.

Триггер 33 служит для задания режима работы устройства. Его единичному состоянию соответствует. режим контроля, а нулевому состоянию — рабочий режим.

Устройство функционирует следующим образом, В работе устройства выделяются следующие режимы: рабочий режим, в котором осуществляется реализация микрокоманд микропрограммы; режим контроля в состоянии естественного ожидания, вводимый при простоях устройства, обусловленных затратами времени на формирование значений логических условий, обработку микрокоманд, поданных на объекты управления и т.д.; режим принудительного контроля, вводимый принудительно для осуществления опережающего контроля микрокоманд путем их контрольного считывания.

1204515 22

В р"-.жимах контроля осуществляется контготп-ное считывание микрокоманд, г процессе которого считываемые микрокомялды проверяются ня отсуTcTBtfp. в них искажений, не поступая на выход устройства.

Для процесса контроля микрокоманд н предлагаемом устройстве x,лрактерно опережение процесса их реализации, а также избирательность. Первое означает, что при выполнении микропрограммы каждая микрокоманда реализуется лишь при условии, что она уже проверена в ходе выполнения этой микропрограммы. Второе означает, 1 что из числа контролируемых могут исключаться те микрокоманды выполняемой микропрограммы, которые не могут войти в число реализованных.

Опережающий характер контроля микрокоманд по отношению к процессу их реалйзации обеспечивается блоком 8 сравнения, который в случае невыполнения условий опережения переводит устройство в режим принудительного контроля с целью устранения отставания контроля.

Избирательный характер контроля микрокоманд обеспечивается тем, что при переходе к выполнению нового линейного участка микропрограммы в случае отставания процесса контроля микрокоманд от процесса их реализации контроль микрокоманд начинается с начала именно этого участка.

Непроверенные же микрокоманды других линейных участков, которые не реализуются, тем самым исключаются из числа контролируемых.

Режим работы, устройства задается

40 триггерами 26 и 33. Их нулевому состоянию соответствует рабочий режим, единичному состоянию — режим контроля в состоянии естественного ожидания. Нулевому состоянию триггера 26

45 и единичному состоянию триггера 33 соответствует режим принудительного контроля.

В исходном состоянии в регистре 14 микрокоманд записывается нулевой код, а в счетчике 4 и регистре 7 — ад50 рес А начальной микрокоманды выпол6 няемой микропрограммы. На выходах 58 и 59 блока 32 тактовые импульсы отсутствуют, т.е. его триггер 71 управления (фиг. 4) находится в нуле- вом состоянии. Триггеры 33 и 26 устройства находятся в единичном и нулевом состояниях соответственно, что соответствует режиму привттдитель-ного контроля. При этом нулевым сигналом с выхоца 61 триггера 33 за-! прещается работа блока синхронизации 32 в рабочем режиме, выдача информации блоком 18 формирования микроопераций на выходы 49, 50 и 52 блока и выход 51 устройства, выдача адреса, формируемого блоком 13, закрывается блок 9 элементов И, в результате чего запрещается поступление адреса из регистра 7 на вход блока 12 памяти и вход блока 8.

Единичным сигналом с. выхода 60 триггера 33 режима работы разрешается работа блока 17 контроля и открывается блок 1 элементов И, в результате разрешается передача адреса из регистра 7 адреса в счетчик 4.

Кроме того, этот же сигнал разрешает работу блока 32 в режиме контроля и открывает блок 10, вследствие чего разрешается поступление адреса микрокоманды, контроль которой производит ся с выхода 37 счетчика 4 на вход ! блока контроля и вход блока 12 памяти. Работа блока 8 при этом запрещается нулевыми сигналами с выхода 57 блока 32 и выхода 61 триггера 33. цепи начальной установки указаннЫх элементов устройства на фиг. 1 условно не показаны.

По импульсу "Пуск", поступающему с входа 54 устройства на вход блока 32, устройство начинает работу в режиме принудительного контроля.

При этом триггер 71 устанавливается в единичное состояние (фиг.4), разрешая выдачу тактовых импульсов контрольной частоты на выход 58. Сигналом с выхода 57 блока 32 разрешается работа блока 8, но при этом выдача результата сравнения на его выход 42 запрещается нулевым сигналом с выхода 61 триггера 33. При поступлении тактового импульса контрольной частоты на тактовый вход 43 блока 12 памяти происходит считывание микрокоманды по адресу, поступающему на его адресный вход из счетчика 4.

Счи анная микрокоманда запоминается в регистре 14. Тем же тактовым импульсом, по которому производится считывание микрокоманды из блока 12 памяти для проверки, но задержанным на элементе 2,на время, необходимое для считывания и контроля микрокоманды, увеличивается на единицу код, установленный в счетчике 4, т.е.

515 24

1104

В блоке 8 сравнения сформирован45 ный рабочий адрес A/i+1 ñðàâíèâàåòñÿ с контрольным адресом Л „,„, поступающим с выхода 37 счетчика 4.

Если в результате сравнения оказы50 . вается, что очередная микрокоманда подлежащая реализации, является проверенной, т.е. выполняется неравенство

Pi+ к1 то эта микрокоманда по приходу оче55 редного тактового импульса рабочей

23 в счетчике устанавливается адрес

Ак, по которому считывается для к, контроля очередная микрокоманда.

Блок 17 контроля осуществляет проверку четности считанной микрокоманды, а также проверку ее соответствия адресу А ;, по которому она считывается.. Если в результате контроля микрокоманды блоком 17 обнаруживается ошибка или несоответствие ее адресу, по которому производится считывание, то сигналом "Не норма" с .выхода 48 блока 17, поступающим через элемент ИЛИ 29 на управляющий вход (останов ) 56 блока 32 синхрони-15 эации, триггер 71 блока устанавливается в нулевое состояние. Этим запрещается генерация тактовых импульсов.

Устройство прекращает работу.

При отсутствии olllB6oK с приходом 20 очередного тактового импульса контрольной частоты устройство функционирует в режиме принудительного контроля аналогично описанному.

Если для контроля иэ блока 12 па- 25 мяти считывается микрокоманда, содержащая метку "Начало ожидания" или метку "Конец участка", то сигналом с выхода 53 блока 18 формирования микроопераций открывается элемент И 28, на остальные входы которого в этот момент подаются разрешающие сигналы с нулевого и единичного выходов триггеров 26 и 33 соответственно. Сигналом с выхода этого элемента через элемент KIN 31 триггер 33

35 устанавливается в нулевое состояние.

Тем самым устройство переводится в рабочий режим, т.е ° режим реализации микропрограммы.

При этом единичным сигналом с выхода 61 триггера 33 режима работы разрешается работа блока 32 синхронизации в рабочем режиме, выдача результата сравнения рабочего адреса

А,,„, (т.е. адреса микрокоманды, подлежащей реализации), с контрольным адресом А ;.... (т.е. адресом микрокоманды, подлежащей контролю в следующем контрольном такте), на выход 42 блока 8 сравнения, выдача информации блоком 18 формирования микроопераций и формирователем 13 адреса. Кроме того, открывается блок 9 для передачи рабочего адреса А <„.,„ èç регистра 7 на вход блока 12 и вход блока 8 сравнения.

Нулевым сигналом с выхода 60 триггера 33 режима работы запрещается работа блока 17 контропя и закрыва-ется блок 10, в резУльтате чего запрещается поступление контрольного адреса A<„.,„(т.е. адреса, по которо.му считывается для контроля очередная микрокоманда) из счетчика 4 на адресный вход блока 12 памяти и вход блока 8 сравнения.

При поступлении тактового импульса рабочей частоты с выхода 59 блока 32 синхронизации через элемент ИЛИ 3 на тактовый вход 43 блока 12 происходит считывание микрокоманды, начиная с которой продолжается реализация микропрограммы.

Адрес этой микропрограммы поступает на адресный вход блока 12 памяти из регистра. 7 адреса через блок 9. Считанная микрокоманда записывается в регистр 14. Содержимое поля 15 управления регистра 14 подается на информационный вход блока 18 формирования микроопераций, так как сигна" лом с выхода 60 триггера 33 разрешается выдача. информации на выходы 49 — 53 блока 18 (фиг. 3), то с выхода 21 микроопераций микрокоманды сигналы микроопераций выдаются на выход 51 устройства для реализации их объектом управления. Содержимое поля 16 адреса и логических условий регистра 14 поступает на информационный вход формирователя 13 адреса, где с учетом значения проверяемых логических условий, подаваемых на вход 45 устройства, формируется адрес А <,.+, микрокоманды, подлежащей реализации в следующем рабочем такте. Сформированный адрес записывается в регистр 7, с выхода которого поступает на адресный вход блока 12 и информационный вход блока 8 сравнения. частоты считывается из блока 12 для реализации. Устройство работает ана" логично описанному.

11045

Если же в результате сравнения адресов оказывается, что очередная микрокоманда, подлежащая реализации, еще не проверялась т.е. выполняется неравенство

А .,+Д) Ак„.+„, то на выходе- 42 блока 8 сформируется сигнал, по которому через элемент ИЛИ 25 и элемент задержки 27 устанавливается в единичное состояние триггер 33. Тем самым устройство переводится в описанный режим принудительного контроля, которому соответствует нулевое и единичное состояния триггеров 26 и 33 соответственно. 15

При этом тем же сигналом через элемент ИЛИ 24 и элемент задержки 30 открывается блок 1 элементов И, в результате чего в счетчик 4 из регистра 7 записывается адрес А „. 1 очередной микрокоманды, подлежащей реализации и являющейся непроверенной. С этой микрокоманды и начинается дальнейший контроль микрокоманд.

Этим достигается избирательность контроля микрокоманд, так как запись нового рабочего адреса из регистра 7 в счетчик 4 по сигналу с выхода блока 8 сравнения позволяет исключить из числа проверяемых те микрокоманды, которые не входят s реализуемую ветвь микропрограммы Далее устройство работает в режиме принудительного контроля так же, как в начале реализации микропрограммы.

Если в процессе принудительного

35 контроля в счетчике 4 устанавливается максимально возможное значение адреса, определяемое верхней границей области используемых ячеек памяти, 40 то на выходе элемента И 5 появляется сигнал, который, поступая на вход. останова 36 счетчик 4, запрещает подсчет тактовых импульсов контрольной частоты, гоступающих на его счет45 ный вход 35..Тем самым исключается повторная проверка уже проверенных и реализованных микрокоманд из-за обнуления счетчика 4 в результате переполнения. Кроме того, меткой "Конец участка", которая обязательно проставляется в соответствующей зоне 1 микрокоманды, имеющей максимально возможное значение адреса, устройство переводится в рабочий режим, как описано. 55

Если в рабочем режиме в микрокоманде, подлежащей реализации и записанной в регистре 14, оказывается метка "Начало ожидания, то на выходе 52 блока 18 формирования микро-,операций появляется сигнал, которым триггер 26 режима естественного ожидания устанавливается в единичное состояние. Тем же сигналом через элемент ИЛИ 25 и элемент задержки 27 устанавливается в единичное состояние триггер 33. Время задержки этого сигнала определяется соотношениемм

21 26 где ь — длительность срабатывания триггера 26.

Задержка сигнала на вРемя Т, позволяет исключить подачу сигйала метки "Начало ожидания" на нулевые входы триггеров 33 и 26 с выхода 53 блока 18 формирования микроопераций через элементы 28 и 31, так как к моменту появления единичного сигнала на выходе 60 триггера 33 элемент И 28 закрывается нулевым сигналом с нулевого выхода триггера 26. !

С переходом триггера 26 и 33 в единичное состояние устройство переходит в режим контроля в состояние естественного ожидания. Переход в этот режим и функционирование в нем осуществляется так же, как и в режиме принудительного контроля, с отличием в том, что нулевым сигналом с нулевого выхода триггера 26 закрывается элемент И 28, вследствие чего запрещается прохождение сигналов меток "Начало ожидания" или "Конец участка" с выхода 53 блока 18 на нулевой вход триггера 33. Тем самым исключается перевод устройства из режима контроля в состоянии естественного ожидания в рабочий режим до окончания естественного ожидания.

Кроме того, если в процессе контроля в состоянии естественного ожидания в счетчике 4 устанавливается максимально возможное значение адреса микрокоманды, то на выходе элемента И 5 появляется единичный сигнал, который, поступая через элемент НЕ 6 на вход 36 счетчика 4, запрещает под" сче-; тактовых импульсов контрольной частоты, поступающих на его счетный вход 35, в результате чего до окончания режима контроля в состоянии естественного ожицания в каждом такте проверяется микрокоманда, имеющая максимальный возможный адрес. Этим исключается повторная проверка (в ре:. / !104 зуттьтате обнулеттття счетчика .три его переттопнетттти) уже ттроверенных микрокоманд, Перевал устройства из режима контроля в состоянии естесгвенного ожидания в рабочий режим осуществляется по сигналу "Конец ожидания". Оп формируется либо объектом управления по окончании выполнения микрокоманды, либо таймером, задающим 10 время выполнения микрокоманды объектом управления. Сигналом "Конец ожидания", поступающим на вход 54 устройства, через элемент ИЛИ 31 устанавливаются в нулевое состояние 15 триггеры 26 и 33, вследствие чего устройство переводится в рабочий режим.

Если в процессе реализации микро- 20 программы в рабочем режиме из блока 12 памяти считывается микрокоманда, содержащая метку "Замыкание цикла", то сигналом с выхода 50 блока 18 формирования микроопераций через элемент ИЛИ 24 и элемент 30 задержки открывается блок 1 элементов И, вследствие чего в счетчик 4 из регистра 7 адреса записывается адрес А<„.+„ микрокоманды, подлежащей зо реализации в следующем рабочем такте.

Время, задержки элемента 30 определяется временем формирования адреса Ар,,точередной микрокоманды, к выполнению которой необходимо пе515 рейтп, и временем ., ег а,и и в регистр адреса 7 т, -„ л-; а

Запись нового рабочего «дреса из регистра 7 в счетчик 4 по метке

"Замыкание цикла" позволяет возобновить контроль мтткрокоматщ, начиная с той, которая задается этим адресом, и за счет этого избежать реализации непроверенных микрокоманд в процессе дальнейшего выполнения микропрограммьт. Очевидно, что по окончания реализации микрокоманды, Помеченной указанной меткой по сигналу с выхода 42 блока 8, устройство переходит в режим принудительного контроля.

Если в рабочем режиме из блока. 12 памяти в регистр 14 микрокоманд считывается для реализации микрокоманда, содержащая метку "Конец микропрограммы", то на выходе 49 блока 18 формирователя микроопераций появляется сигнал, который, поступая через элемент ИЛИ 29 на вход останова 56 блока 32 синхронизации, запрещает выдачу им тактовых импульсов. Устройство прекращает работу.

Таким образом, изобретение является более надежным, чем известное устройство, так как устраняется возможность выдачи потребителю недостоверных (непроверенных) микрокоманд.

Повьппение быстродействия достигается путем исключения из конт роля микрокоманд, не участвующих в данный момент в вычислительном процессе.

i о я>

СРигЗ

110 л51"

И !

«Й»

Составитель И.Сигалов

Редактор P.Öèöèêà Техред Ж.Кастелевич Корректор О.Билак

Заказ 5262/36 Тираж 699 Подписное

ВЕЛИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва,Ж-35, Раушская наб., д.4/5

<ичи ал (IIIII !!атент, г.ужгород, ул,Проектная, 4

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

 

Похожие патенты:
Наверх