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

Иллюстрации

Показать все

Реферат

 

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 элементов ИЛИ.

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