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

 

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

ОЯ:И

РЕСПУБЛИК

l (19) (11) 4(51) G 06 F 9/22

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

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ

Н АВЗОРСНОМУ СВИДЕТЕЛЬСТВУ (21) 3638865/24-24 (22) 30.08,83 (46) 15.01.85. Бюл. Р 2 (72) В, А. Кизуб и Б .И. Розе нблюм (53) 681.325(088.8) (56) 1. Авторское свидетельство СССР

В 840964, кл. С 06 F 9/22, 1977.

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

В 798838, кл. G 06 Р 9/46, 1976.

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

Р 881748, кл. G 06 F 9/22, 1980 (прототип) ° (54) (57) ИИКРОПРОГРАИИНОЕ УСТРОЙСТВО

УИРАВЛЕНИЯ, содержащее блок памяти микрокоманд, регистр адреса„регистр кода операций„мультиплексор, первый элемент И, первьй, второй, третий и четвертый блоки элементов И и первый и второй блоки элементов ИЛИ, причем выходы кода операций блока памяти микрокоманд являются управляющими выходами устройства, вход управления обращением устройства соединен со входом чтения блока памяти микро-. команд, выход кода адреса возврата которого соединен с первым информационным входом мультиплексора, второй информационный вход которого соединен со входом кода команды устройства, выход кода безусловного перехода блока памяти микрокоманд соединен с первым .входом третьего блока элементов И, выход управления приемом логических условий блока памяти микрокоманд соединен с первым входом первого элемента И, второй вход которого соединен с первым входом второго блока элементов ИЛИ и является входом бита ло- гического условия устройства, первый вход синхронизации устройства соединен со входом записи регистра адреса, информационный вход которого соединен с выходом первого блока элементов

ИЛИ, первый вход которого соединен с выходом первого блока элементов И, второй вход первого блока элементов

ИЛИ соединен с выходом второго блока элементов И, первый вход которого соединен с выходом регистра кода операций, информационный вход которого соединен с выходом мультиплексора, третий вход первого блока элементов

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

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

И, выход которого соединен со входом синхронизации регистра кода опе рации, второй вход второго элемента

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

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

10 являются ограниченные возможности ад- 20

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

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

И, элемент запрета и группу элементов И (1).

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

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

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

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

Известно также устройство микропрограммного управления, содержащее шифратор, дешифратор, регистры адреса, прерываний, дополнительный регистр адреса, коммутатор, блок эле- 10 ментов ИЛИ, элемент НЕ и элемент И с соответствующими связями Pj

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

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

Недостаток обусловлен тем, что

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

Наиболее близким по технической сущности к предлагаемому является устроиство, содержащее блок памяти микрокоманд, регистр адреса, регистр 35 кода операций, мультиплексор, элемент И, блоки элементов И и ИЛИ, причем первый вход блока памяти микрокоманд соединен с выходом регистра адреса, подключенного своим первым 4О входом к выходу первого блока элементов ИЛИ, первый, второй и третий входы которого соединены с выходами соответственно первого, второго и третьего блоков элементов И, первый 45 вход второго блока элементов И соедняен с выходом регистра кода операций, подключенного первым входом к выходу мультиплексора, соединенного своими первым и вторым, входами со- 5б ! ответственно со вторым входом блока памяти микрокоманд и с входом приема кода операций устройства, битовый и .векторный входы логических условий которого подключены соответственно 55 к первым входам первого элемента И и четвертого блока элементов И, выхо. ды которых соединены соответственно

37 со вторым и первым входами второго блока элементов ИЛИ, подключенного своим третьим входом к входу битовых логических условий устройства,два управляющих входа которого соединены со вторым входом регистра адреса и со вторым входом блока памяти микрокоманд, первый выход которого является выходом устройства, а третий соединен с первым входом третьего блока элементов И (2j .

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

При условном переходе по коду операции, записанному предварительно в соответствукнций Регистр, происходит переход по всем разрядам кода операций, что может привести к существенному увеличению объема микропрограммной памяти по сравнению с последо-. вательным переходом по отдельным полям кода операций. Так, например, код операции может включать поле формата операций (команды), одно или два поля типа адресации операндов, поле указания разрядности операндов и др.

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

Q-YA

2 я еек где и t7) — соответствен7 У но число разрядов в коде опеояиии и поле типа адресации, блока -памяти микрокоманд будут заняты операционно ничего невыполняющими микрокомандами.

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

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

Н еда ст ат ком является также . отсу тствие возможности настройки устройст- $ ва на конкретное применение, в результате которого может потребоваться изменение параметров функций адресации, реализуеьих устройством, или самих функций, Так в некоторых случаях для 1О удобства микропрограммирования может потребоваться изменение номеров модифицируемых разрядов адреса следующей микрокоманды при переходе по коду операций и (Nl}H) по входному логи- 15 ческому условию.

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

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

ИЛИ соединен с выходом второго блока элементов И, первьй вход кс".орого соединен с выходом регистра кода операций, информационньй вход которого соединен с выходом мультиплексора, третий вход первого блока элементов

ИЛИ соединен с выходом третьего блока элементов И, выхоц первого элемента И соединен со вторым входом второго блока элементов ИЛИ, третий вход которого соединен с выходом четвертого блока элементов И, первый вход которого является входом вектора логических условий устройства, выход регистра адреса ""îåäèíåê с адресным входом блока памяти микрокоманд, дополнительно введены блск памяти кодов управления адресацией, третий блок элементов ИЛИ, регистр логических условий, второй элемент И, элемент

ИЕ, пятый и шестой блоки элементов

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

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

1134937 8 входом шестого блока элементов И, выход которого соединен с информацион-. ным входом регистра логических условий, второй вход шестого блока элементов И соединен с выходом второго блока элементов ИЛИ, выход третьего блока элементов ИЛИ соединен с управляющим входом мультиплексора и с первым входом второго элемента И, выход которого соединен со входом синхрони- 1р зации регистра кода операции, второй вход второго элемента И является четвертым входом синхронизации устройства, выход управления приемом логических условий блока памяти микрокоманд соединен через элемент НЕ со вторым входом четвертого блока элементов

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

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

Ус тройс тв о с одержит блок 1 памяти микрокоманд, регистр 2 адреса, регистр

3 кода операций, мультиплексор 4, пер вый элемент И 5, первый 6, второй 7, третий 8 и четвертый 9 блоки элемен-. тов И, первый iO и второй 11 блоки элементов ИЛИ, блок 12 памяти кодов управления адресацией, шестой 13 блок элементов И, регистр 14 логических условий, элемент 15 задержки, второй элемент И 16, третий блок элементов

ИЛИ 17, элемент НЕ 18, пятый блок элементов И 19, управляющие выходы 20, вход 21 логических условий, вход 22 З5 вектора логических условий, вход 23 кода команды, вход 24 управления обращением, первый 25, третий 26, вто. рой 27 и четвертый 28 входы синхронизации и вход 29 прерывания. .40

Устройство работает следующим образом.

На вход синхронизации регистра адреса 2 подается со входа 25 устpQAcTBB синхросигнал, по которому 45 производится запись нулевого кода в указанный регистр с его информационного входа. По сигналу обращения, постугающего со входа 24 устройства, осуществляется выборка мик- 50 рокоманды из блока памяти микрокоманд 1 по нулевому адресу, поданному на гервый адресный вход этого блока. Операционные поля считанной микрокоманды выдаются на управляе- 55 мые устройством внешние устройства через соответствующие выходы блока памяти микрокоманд 1 на выходы 20 устройства, а на выходы управления режимами работы регистра логических условий и маскированием соответственно единичные и нулевые коды, на выход кода функции выбора следующего адреса — код части адреса слова, записанного в блок памяти кодов управления адресацией 12, уп.равляющего выборкой следующего адреса микрокоманды. По синхросигналу, поданному со входа 27 устройства на соответствующий вход регистра логических условий 14, в этот регистр sa пишется нулевой код, поступающий с

"замаскированного" выхода блока элементов И 13, подготовив регистр логических условий 14 к последующей работе.

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

7 и пятого 19 блоков элементов И и запрещающие тем самым передачу, содержимого соответственно регистра логических условий 14, регистра кода операций 3 и регистра адреса 2 (через элемент задержки) на соответствующие входы первого блока элементов ИЛИ 10.

На третьем выкоде блока памяти кодов управления адресацией 12 задается код, единичные разряды которого разрешают прохождение разрядов кода безусловного перехода с выхода кода безусловного перехода блока памяти микрокоманд 1 через третий блок элементов И 8 на третий вход первого блока элементов ИЛИ 10, с выхода которого на информационный вход регистра адреса 2 поступает код следующего адреса, После записи этого адреса в регистр адреса 2 по синхросигналу на входе 25 осуществляется цикл выборки следующей микрокоманды из блока памяти 1, При отсутствии запроса прерывания, что соответствует нулевым сигналам на информационном входе блока памя9 ll3493 ти кодов управления адресацией 12, из этого блока по сигналу обращения считывается соответствующий код управления. В результате на первом и втором выходах блока памяти кодов управления адресацией 12 устанавливаются нули, иа его третьем выходе— единицы, а на четвертом — код, единичные разряды которого выделяют те разряды содержимого регистра адреса 10

2, относительно которых производится безусловный переход.

Таким образом, содержимое регистра логических условий 14 и регистра кода операций 3 ие может быть передано соответственно через первый 6 и второй 7 блоки элементов И на первый и второй входы первого блока элементов ИЛИ 10. Код безусловного перехода через третий блок элементов И 8 передается на третий вход первого блока элементов ИЛИ 10. Содержимое регистра адреса передаются на второй вход пятого блока элементов И 19, с выхода которого выделенные кодом управления разряды текущего адреса поступают через элемент задержки 15 на четвертый вход первого блока элементов ИЛИ 10, на выходе которого формируется код следующего адреса. По син- зо хросигналу на соатветствунщем входе регистра адреса 2 производится запись сформированного следующего адреса микрокоманды с информационного входа это о регистра.

Вход в микропрограмму выполнения некоторой операции производится при считывании микрокоманды из блока памяти микрокоманд 1. по сигналу обращения, поступающего на вход 24 уст-4о ройства. При этом на выход управления приемом кода операций блока 1 выдается двухбитовый код "01", первый бит которого предназначен для управления мультиплексорам 4, а второй — для 45 управления записью s регистр кода операций 3. Указанный код через третий блок элементов ИЛИ 17 подается первым битом на управляющий вход мультиплексора 4, а вторым битом — 50 на первый вход второго элемента И 16.

При нулевом сигнале на csee> управляющем входе мультиплексор 4 передает на свой вькод и далее на информационный вход регистра кода опера- 55 ций 3 информацию со входа када команды 23 устройства, подключенного к второму информационному входу мультиплексора. Сигнал записи, поступивший б со входа 28 устройства, пройдя через открытый второй элемент И 16 на соответствующий вход регистра кода операций 3, произведет запись кода команды в)указанный регистр. В случае если переход по всему коду команды или его части необходимо выполнить сразу после приема этого кода в регистр операций 3, то на выход кода функции выбора следующего адреса блока памяти микрокоманд 1 выдается соответствующий код функции перехода к следующей микрокоманде по коду команды (по всему коду или по его части). В случае, если выполнение операции не требует дополнительного ветвления по логическим условиям, то при считывании кода управления из блока памяти кодов управления адресацией 12 с второго выхода последнего на первый вход первого блока элементов И 6 будут переданы нули. В противном случае из блока памяти кодов управления адресацией 12 будет считан кад управления, по которому на первый выход считывается ненулевой код. Так как код команды имеет, как правило, меньшую разрядность, чем полный код адреса микрокоманды, функция перехода по коду команды должна обеспечивать воэможность безусловного хранения и {или) задания дополнительных разрядов адреса. В связи с этим в общем случае при считывании кода управления из блока памяти 12 на выходе с первого по четвертый выдаются некоторые коды, единичные разряды которых обеспечивают прохождение через открытые элементы

И блоков элементов И 6, 7, 8, 19 на их выходы разрядов соответственно регистра логических условий 14, регистра кода операций 3, безусловного перехода, переданного с выхода кода безусловного перехода блока памяти микрокоманд 1, и регистра адреса 2.

С выходов блоков элементов И 6, 7, 8, 19 эти разряды передаются со« ответственно на многоразрядные нервый, второй, третий, а через элемент задержки 15 — на четвертый входы нер. ваго блока элементов ИЛИ 10, на выхо.де которого формируется следующий адрес, записываемый в регистр адре са 2 по сигналу на его входе, записи, подаваемого со входа синхронизации 25 устройства.

1134937

В любой микрокоманде могут быть заданы режимы работы с логическими условиями. Рассмотрим эти режимы в предположении, что сигналы запроса прерываний на входе 29 прерывания устройства отсутствуют. При считывании микрокоманды наличие единичного сигнала на выходе управления приемом логических условий блока памяти микрокоманд 1 соответствует работе с логическими условиями (имеющим место на входе 21 устройства). В этом случае логическое условие со входа 2 1 логических условий устройст ва поступает через открытый первый . элемент И 5 на второй вход второго блока элементов ИЛИ 11, на первый вход которого логическое условие поступает непосредственно со входом 2 1 логических условий устройства. Одновре-2g менно сигнал с выхода управления приемом логических условий блока памяти микрокоманд 1, пройдя через элемент

НЕ 18 яа второй вход четвертого блока элементов И 9, блокирует поступле- г5 ние на третий вход второго блока элементов ИЛИ 11, кода со входа 22 век-. тора логических условий устройства.

Во втором блоке элементов ИЛИ 11 производится поразрядная дизъюнкция каждого разряда кода на третьем входе с одноразрядным кодом на втором входе и дизъюнкция одноразрядньк кодов на втором и первом входах. В результате на второй вход шестого блока элементов З5

И 13 поступит многоразрядный код, разрядность которого на единицу больше разрядности кода на третьем входе второго блока элементов ИЛИ 11. При этом указанный код на входе блока 13 40 будет иметь во всех разрядах либо единицы, либо нули, в зависимости от того, какое значение имел код логического условия, принятый со входа 21 устройства. Если при считывании мик- 45 рокоманды хотя бы один разряд много разрядного выхода управления маскированием блока памяти микрокоманд 1 установлен в единицу, то соответствующий разряд постуцает вместе с дру- о гимн разрядами кода. на второй информационный вход регистра логических условий 14. При единичном управляю-. щем сигнале разрешения записи в соответствующий разряд на многоразряд- >5 ном выходе управления режимами работы регистра логических условий блока памяти микрокоманд 1 по сигналу запнси со входа 27 устройства произойдет запись логического условия в соответствующий разряд регистра логических условий 14. При этом при нулевых управляющих сигналах разрешения записи в другие разряды регистра

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

При наличии на выходе управления приемом логических условий нулевого сигнала, что соответствует работе с векторными логическими условиями, происходит блокировка логического условия, поступающего со входа 2 1 устройства через второй вход первого элемента И 5 на второй вход второго блока элементов ИЛИ 11. Тот же нулевой сигнал, проходя через элемент НЕ 18, открывает соответствующие элементы

И четвертого блока элементов И 9. В результате на третий вход второго бло. ка элементов ИЛИ 11 поступят-код со входа 22 векторных логических условий устройства и бит со входа 29 прерывания устройства. Так как на втором входе блока 11 находится нуль, то на выход блока 11 поступает код с его третьего входа, дополнительный битом со входа 21 устройства. Полученный объединенный код поступит далее на второй вход блока элементов И 13. Управление режимами записи, гашения, хранения и маскирования указанного кода нли его разрядов осуществляются с вькодов управления режимами работы регистра логических условий и маскирования блока памяти микрокоманд и аналогичного выше описанному режиму работы с логическими условиями (на входе 21) .

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

1 134937

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

При необходимости перехода к мик роподпрограмме на выходе управления приемом кода операции устанавливает« ся код 11. Сигналы, соответствующие коду с этого выхода блока памяти микрокоманд 1„ через третий блок элементов ИЛИ 17 поступают на управляющий вход мультиплексора 4 и на первый вход второго элемента И 16 . В резуль тате на вьиоде мультиплексора 4 будет выдан код адреса возврата, поданный на его первый информационный вход.

По синхросигналу с входа 28 устройства, прошедшему через открытый второй элемент И 16 на соответствующий вход регистра кода операций 3, код адреса возврата запишется в регистр 3. Описанным вьппе способом произойдет переход к микроподпрограмме. Для обеспечения хранения адреса возврата при выполнении микроподпрограммы необходимо блокировать прохождение сигна35 ла по выходу записи регистра 3. Блокировка осуществляется установкой на выходе управления приемом кода операций блока памяти микрокоманд

1 кодов 10 или ОО. В последней микрокоманде микроподпрограммы на выходе кода функции выбора следующего адреса блока памяти,1 устанавливается код функвди условного перехода по содержимому регистра кода операций 4, поступакиций на первый адресный вход блока памяти кодов управления адреса-, цией 12, выходы которого управляют, как уже была описано, формированием следующего адреса. В результате в регистр адреса 2 запишется код адреса возврата в основную микропрограмму.

Обработка запросов прерываний осу-. ществляется в режиме обработки век- торных логических условий. На отдельных линиях входа вектора логических условий 22 устройства внешнее ус тройс тво, 3 апрашив ающее пре рывание, устанавливает код (вектор) адреса микропрограммы обработки прерывания. Сигнал запроса, выработанный внешним устройством подается со входа прерывания 29 устройства на третий вход четвертого блока элементов И

9, на первый вход которого поступает векторное логическое условие, содержащеЕ код адреса микропрограммы обработки прерывания. Нулевой сигнал с выхода управления приемом логических условий блока памяти ьыкрокоманд 1 блокирует прохождение сигнала логического условия со входа 21 устройства через первый элемент И 5 на второй вход второго блока элементов ИЛИ

11 и, пройдя через элемент НЕ 18 на второй вход четвертого блока элементов И 9, разрешает прохождение сигналов с первого и третьего входов блока 9 на его выход. На многоразрядном выходе второго блока элементов ИЛИ 11 будут находиться сигналы векторного логического условия прерывания и дополнительно сигнал логического условия со входа 21 устройства. При отсутствии маскирования на выходе управления маскированием блока памяти микрокоманд 1 прерывания и адрес мик ропрограммы обработки прерывания поступят через шестой блок элементов И

13 на информационный вход регистра логических условий 14. При разрешающих единичных сигналах на выходе управления режимами работы регистра логических условий блока памяти мик-, рокоманд 1 и при поступлении сннхросигнала со входа 27 устройства произойдет запись сигналов (кодов) прерывания и адреса микропрограммы обработки прерывания в регистр 14 логических условий. С первого информационного выхода указанного регистра сигнал прерывания поступает на второй адресный вход блока памяти кодов управления адресацией 12 и одновременно на первый вход третьего блока элементов ИЛИ 17. При поступлении разрешающего сигнала со входа

26 устройства на вход чтения блока па. мяти 12 из последнего будет считан код управления, соответствующий функции перехода по. тем разрядам регистра логических условий 14, в которых записан адрес микропрограммы обработки прерывания. В результате описанных уже действий будет сфор1134937 мирован адрес микропрограммы обработки прерываний и записан в регистр адреса 2 ° Одновременно с формированием адреса сигнал прерывания, поступая на каждый из двух. элементов ИЛИ, входящих в состав блока 17, сформирует на выходе указанного блока код

11. Под управлением данного кода производится запоминание адреса возврата, установленного на выходе кода 10 адреса возврата блока памяти микро-, команд 1, в регистре кода операций 3. при переходе к микроподпрограмме.

Отличие лишь в том, что при переходе и микроподпрограмме в качестве адре- 35 са возврата указывается адрес следующей микрокоманды, а при переходе к микропрограмме обработки прерывания — адрес текущей прерываемой микрокоманды. После перехода к микро- 20 программе обработки прерывания для исключения повторной обработки того же самого запроса необходимо в пер- . вой же микрокоманде погасить разряд прерывания в регистре логических 25 условий 14, что осуществляется установкой в нуль соответствующих разрядов на выходе управления маскированием и в единицу Йа чыходе управления режима работы регистра логичес- д» ких условий блока памяти микроко- . манд 1. В последней микрокоманде микропрограммы производится возврат в основную микропрограмму таким же образом, как и возврат из микроподпро- 3. граммы.

Предложенное микропрограммное устроиство управления обеспечивает по . сравнению с прототипом: возможность о осуществления независимых от кода операций переходов в микропрограммах по коду логических условий как по всему коду, так и по отдельным раз45 рядам, за счет параллельного управления подключением разрядов кодов операций и логических условий, реализуе-. мого с помощью блока -памяти кодов управления адресацией 12 с соответствующими связями, переходы в мнкропрограммах по одельным поляи (разрядам) кода операций, что позволяет сократить объем микропрограммы выполнения операций за счет организации последовательных переходов по функционально различным полям кода операций вместо одного перехода по полному ко.ду; возможность принимать и обрабатывать запросы на прерывания от внешних устройств, в частности можно маскировать, хранить в специальном разряде регистра логических условий

14 и "гасить" после выполнения обработки микропрограммы сигнал (код) прерывания, при этом запоминание адреса возврата, производимое под управлением микропрограммы в регистре кода операций 3 с последующим переходом по содержимому этого регистра позволяет продолжить выполнение исходной микропрограммы, настройку устройства на конкретное применение, что обеспечивается возможностью изменения набора используемых функций выбора следующего адреса.эа счет изменения содержимого блока памяти кодов управления адресацией 12, каждое слово которого однозначно соответствует некоторой функции из набора; дополнительные возможности настройки обеспечивают микропрограммно управляемые режимы работы с одноразрядными (битовыми) логическиии ус- . ловиями в режиме их временного разделения и (или) с многоразрядными (векторными) логическими условиями, в частности при работе с одноразрядными логическими условияии, поступающими с входа битовых логических условий, возможна запись кода в любой разряд регистра логических условий

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

3134937

Составитель Ю.Ланцов

Редактор А.Долинич Техред С.Легеза Корректор И.Иуска

Заказ 10090/43 Тираж 710 Подписное

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

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

Филиал ППЙ ."Патент", r. Ужгород, ул. Проектная, 4

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

 

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

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

Изобретение относится к автоматике и вычислительной технике

Изобретение относится к автоматике и вычислительной технике

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

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении распределенных систем программного управления, а также подсистем логического управления многоуровневых АСУ

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

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

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

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

Изобретение относится к автоматике и вычислительной технике, предназначено для выполнения требуемых функций программного управления с автоматическим перезапуском при «зависании» прикладной программы и автоматическим переходом в режим сохранения оперативной информации с помощью резервного источника напряжения питания при отключении или аварии основного источника напряжения питания и может быть использовано, например, в качестве ядра микроконтроллерной или микропроцессорной системы (М-системы) обработки информации и управления в реальном времени с поддержкой режима аппаратного сторожевого таймера для перезапуска при «зависании» прикладной программы М-системы, проектируемой с учетом следующих основных принципов [1]: программного управления, магистрального обмена информацией, модульного построения и наращивания вычислительной мощности
Наверх