Микропрограммное устройство управления
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
(9) И) 4(51) 6 06 Р 9/22 ОПИСАНИЕ ИЗОБРЕТЕНИЯ ГОСУДАРСТВЕННОЙ КОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ Н АВЗОРСНОМУ СВИДЕТЕЛЬСТВУ(56) 1. Авторское свидетельство СССРВ 840964, кл. С Об Р 9/22, 1977.2. Авторское свидетельство СССРВ 798838, кл. 6 06 Р 9/46, 1976.3, Авторское свидетельство СССРВ 881748, кл. С 06 Р 9/22, 1980(54)(57) ИИКРОПРОГРАИИНОК УСТРОЙСТВОУИРАВЛЕНИЯ, содержащее блок памятимикрокоманд, регистр адреса регистркода операций мультиплексор, первыйэлемент И, первьй, второй, третий ичетвертый блоки элементов И и первый и второй блоки элементов ИЛИ,причем выходы кода операций блока памяти микрокоманд являются управляющими выходами устройства, вход управления обращением устройства соединенсо входом чтения блока памяти микро-.команд, выход кода адреса возвратакоторого соединен с первым информационным входом мультиплексора, второйинформационный вход которого соединенсо входом кода команды устройства, вы.ход кода безусловного перехода блокапамяти микрокоманд соединен с первымвходом третьего блока элементов И,выход управления приемом логическихусловий бпока памяти микрокоманд соединен с первым входом первого элемента И, второй вход которого соединенс первым входом второго блока элементов ИЛИ и является входом бита логического условия устройства, первыйвход синхронизации устройства соединен со входом записи регистра адреса, информационный вход которого соеди" нен с выходом первого блока элементов ИЛИ, первый вход которого соединен с выходом первого блока элементов И, второй вход первого блока элементов ИЛИ соединен с выходом второго блока элементов И, первый вход которого соединен с выходом регистра кода операций, информационный вход которого соединен с выходом мультиплексора, третий вход первого блока элементов ИЛИ соединен с выходом третьего блока элементов И, выход первого элемента И соединен со вторым входом второгоблока элементов ИЛИ, третий вход которого соединен с выходом четвертого блока элементов И, первый вход которого является входом вектора.логических условий устройства, выход регистра адреса соединен е адресным входом блока памяти микрокоманд, о тт л и ч а ю щ е е с я тем, что, с це-лью расширения функциональных возмож ностей за счет осуществления независимых условий переходов в микропрограммеи реализации запросов на прерывания, оно дополнительно содержит блок памяти кодов управления адресаций, третий блок элементов ИЛИ, регистр логических условий, второй элемент И, элемент НЕ, пятый и шестой блоки элементов И и элемент задержки, причем выход кода функций вы. ф бора следующего адреса блока памяти микрокоманд соединен с первым адресным входом блока памяти кодов управления адресацией, второй адресный вход которого соединен с первым входом третьего блока элементов ИЛИ и с первым выходом регистра логическиФ3134937 29 . Составитель Ю.Ланцоведактор А.Долинич Техред С.Легеза КорректФ ска 0090/41 Тираж ВНИИПИ Государств по делам изобрет 133035, Иосква, Ж 710 Подписиного комитета СССРний и открытий5, Раушская наб., д, 4/5 ое ака ПП .Патент", г. Ужгород, ул. Проекты134937 е. 1 условий, второй вход третьего блока элементов ИЛИ соединен с выходом управления приемом кода операций блока памяти микрокоманд, первый вход первого блока элементов И соединен с вторым выходом регистра логических условий, вход синхронизации которого является вторым входом синхрониза" ции устройства, третий вход синхронизации устройства соединен со входом чтения блока памяти кодов управления адресацией, первый, второй, тр тий и четвертый выходы которого соединены соответственно со. вторым входом первого блока элементов И, со вторым входом второго блока элементов И, со вторым входом третьего блока элементов И и с первым входом пятого блока элементов И, второй вход которого соединен с выходом регистра адреса, выход пятого блока эле ментов И через элемент задержки сое" пинен с четвертым входом первого блока элементов ИЛИ, выход управления режимами работы рЕГистра-логических условий блока памяти микрокоманд соединен со входом чтениязаписи регистра логических условий,выход управления маскированием блока памяти микрокоманд соединен спервым входом шестого блока элементов И, выход которого соединен с информационным входом регистра логических условий, второй вход шестого блока элементов И соединен с выходом второго блока элементов ИЛИ, выход третьего блока элементов ИЛИ соединен с управляющим входом мультиплексора и с первым входом второго элемента И, выход которого соединен со входом синхронизации регистра кода опе рации, второй вход второго элементаИ является четвертым входом синхронизации устройства, выход управления приемом логических условий блока памяти микрокоманд соединен через элемент НЕ со вторым входом четвертого блока элементов И, третий вход которого является входом прерываний устройства.10 являются ограниченные возможности ад 25ресации микропрограмм обработки прерываний и невозможность перехода покоду операций. Недостаток обусловлентем, что коды всех адресов микрокоманд некоторой микропрограммы обраИзобретение относится к вычислительной технике, в .частности к управляющим устройствам, основанным на принципе микропрограммного управления, и может быть использовано в процессо рах цифровых вычислительных систем и в системах контроля и автоматического проектирования для проверки работоспособности и отладки в реальном масштабе времени аппаратуры и программного обеспечения микропроцессорных устройств.Известно микропрограммное устройство управления, содержащее два запоминающих блока, два регистра адреса, 5 два блока проверки условий, элемент И, элемент запрета и группу элементов И 1 Д.Недостатками данного усчрсйства ботки прерывания имеют нули в тех же разрядах, что и в разрядах адреса возврата в основную микропрограмму, записанного в первый регистр адреса, В связи с этим количество микрокоманд микропрограммы обработки прерывания ограничено числом ненулевых разрядов кода адреса возврата.Недостатком является также наличие только микрокомандного уровня управления в устройстве, в то время как в современных цифровых системах может присутствовать и командный уровень.Кроме того, устройству присуща сложность модификации микропрограммного обеспечения на этапе его проектирования и сопровождения, что связано с наличием двух запоминающих блоков, в которых хранятся микрокоманды, Так, например, вставка нли удаление одной микрокоманды приводит либо к появлению дополнительной пустой" микрокоманды и, следовательно, к понижению быстродействия уст3 11349 ройства, либо, когда последнее не допустимо, к перераспределению микро- команд в запоминающих блоках и изменению их адресных частей, начиная с места изменения. 5Известно также устройство микропрограммного управления, содержащее шифратор, дешифратор, регистры адреса, прерываний, дополнительный регистр адреса, коммутатор, блок эле О ментов ИЛИ, элемент НЕ и элемент И с соответствующими связями 2 .Недостатками устройства являются ограниченные возможности организации ветвлений по логическим ус-15 ловиям, возможна лишь модификация по ИЛИ нулевых разрядов кодов адреса, вырабатываемых шифратором, отсутствие воэможности перехода по коду операций, являющееся следствием20 отсутствия командного уровня управления, ограниченная область использования.Недостаток обусловлен тем, что25 любое изменение набора выполняемых микрокоманд связано с существенной переработкой всего устройства, в частности его основных блоков: шифратора, обеспечивающего выработку адреса следующей микрокоманды, и дешифратора, формирующего микрокоманду.Наиболее близким по техническойсущности к предлагаемому является устроиство, содержащее блок памяти микрокоманд, регистр адреса, регистр 35 кода операций, мультиплексор, элемент И, блоки элементов И и ИЛИ, причем первый вход блока памяти микро- команд соединен с выходом регистра адреса, подключенного своим первым 40 входом к выходу первого блока элементов ИЛИ, первый, второй и третий входы которого соединены с выходами соответственно первого, второго и третьего блоков элементов И, первый 45 вход второго блока элементов И соедняен с выходом регистра кода операций, подключенного первым входом к выходу мультиплексора, соединенного своими первым и вторым, входами со-ф 50ответственно со вторым входом блока памяти микрокоманд и с входом приема кода операций устройства, битовый и векторный входы логических условий которого подключены соответственно 55 к первым входам первого элемента И и четвертого блока элементов И, выхо ды которых соединены соответственно со вторым и первым входами второго блока элементов ИЛИ, подключенного своим третьим входом к входу битовых логических условий устройства,два управляющих входа которого соединены со вторым входом регистра адреса и со вторым входом блока памяти микрокоманд, первый выход которого является выходом устройства, а третий соединен с первым входом третьего блока элементов И 2,В известном устройстве ограничены возможности организации условных переходов в микропрограммах. В частности, переход по входному логическому условию возможен лишь при входе в микропрограмму выполнения операции по коду этой операции, причем изменяются как старшие разряды регистра адреса, определяемые кодом логических условий, так и остальные разряды того же регистра, определяемые кодом операцииВ то же время при микропрограммном выполнении некоторых операций необходимо выполнять несколько независимых от кода операций условных переходов.При условном переходе по коду операции, записанному предварительно в соответствующий Регистр, происходит переход по всем разрядам кода операций, что может привести к существенному увеличению объема микропрограммной памяти по сравнению с последо-. вательным переходом по отдельным полям кода операций. Так, например, код операции может включать поле формата операций (команды), одно или два поля типа адресации операндов, поле указания разрядности операндов и др. Если при этом микропрограмма выполняет последовательно сначала вычисление адресов операндов затем считы)вание операндов из оперативной памяти и только затем собственно операцию над операндами то переход по всему коду операции приведет к тому что и-ю2 ячеек где и щ - соответствен)но число разрядов в коде опеодиии и поле типа адресации, блока памяти микрокоманд будут заняты операционно ничего невыполняющими микрокомандами.Недостатком устройства является также отсутствие возможности прерывания выполняемой микропрограммы по запросам от внешних устройств некоторой вычислительной системы, включающей также и рассматриваемоеустройство, и продолжение указанной микропрограммы после окончаниг, обработки прерывания.Н еда ст атк ам является также . отсу тствие возможности настройки устройст ва на конкретное применение, в результате которого может потребоваться изменение параметров Функций адресации, реализуеьих устройством, или самих Функций, Так в некоторых случаях для 1 О удобства микропрограммирования может потребоваться изменение номеров модиФицируемых разрядов адреса следующей микрокоманды при переходе по коду операций и (ИЛИ) по входному логи ческому условию.Целью изобретения является расширение Функциональных возможностей за счет осуществления независимых условных переходов в микропрограмме и 20 реализации запросов на прерывания,Поставленная цель достигается тем, что микропрограммное устройство управления, содержащее блок памяти микрокоманд, регистр адреса, регистр кода операций, мультиплексор, первый элемент И, первый, второй, третий и четвертый блоки элементов И и первый и второй блоки элементов ИЛЙ, причем выходы кода операций блока памяти микрокоманд являются управляющими выходами устройства, вход управления обращением устройства соеди- нен со входом чтения блока памяти микрокоманд, выход кода адреса возврата которого соединен с первым ин-. Формационным входом мультиплексора, второй инФормационный вход которого соединен со входом кода команды устройства, выход кода безусловного пе- о рехода блока памяти микрокоманд соединен с первым входом третьего блока элементов И, выход управления приемом логических условий блока памяАг ти микрокоманд соединен с первым входом первого элемента И, второй вход которого соединен с первым входом второго блока элементов ИЛИ и является входом бита логического ус" ловия устройства, первый вход синхронизации устройства соединен со входом записи регистра адреса, инФормационный вход которого соединен с выходом первого блока элементов ИЛИ, первый вход которого соединен с выхо.5- дом первого блока элементов И, второй вход первого блока элементов ИЛИ соединен с выходом второго блока элементов И, первый вход кс".орого соединен с выходом регистра кода операций, инФормационный вход которого соединен с выходом мультиплексора, третий вход первого блока элементов ИЛИ соединен с выходом третьего блока элементов И, выхоц первого элемента И соединен со вторым входом второго блока элементов ИЛИ, третий вход которого соединен с выходом четвертого блока элементов И, первый вход которого является входом вектора логических условий устройства, выход регистра адреса соединен с адресным входом блока памяти микрокоманд, дополнительно введены блск памяти кодов управления адресацией, третий блок элементов ИЛИ, регистр логических условий, второй элемент И, элемент ИЕ, пятый и шестой блоки элементов И и элемент задержки, причем, выход кода Функции выбора следующего адреса блока памяти микрокоманд соединен с первым адресным входси блока памяти кодов управления адресацией, второй адресный вход которого соединен с первым входом третьего блока элементов ИЛИ и с первым выходом регистра логических условий, второй вход третьего блока элементов ИЛИ соединен с выходом управления приемом кода операции блока памяти микрокоманд, первый вход псрвогс блока элементов И соединен с вторым выходом регистра логических условий, вход синхронизации которого является вторым входом синхронизации устройства, третий вход синхронизации устройства соединен со входом чтения блока памяти кодов управления адресамей, первый, второй, третий и четвертый выходы которого соединены соответст- венно с вторым входом первого блока элементов И, со вторым входом в срого блока элементов И, со вторым входом третьего блока элементов И и с первым входом пятого блока элементов И, второй вход которого соединен с выходом регистра адреса, выход пятого блока элементов И через элемент задержки соединен с четвертым входомпервогс блока элементов ИЛИ, выход управления режимами работы ретистра логических условий блока памяти микрокоманд соединен со входом чтения- записи регистра логических условий, выход управления маскированием блока памяти микрокоманд соединен с первымвходом шестого блока элементов И, выход которого соединен с информацион-. ным входом регистра логических условий, второй вход шестого блока элементов И соединен с выходом второго блока элементов ИЛИ, выход третьего блока элементов ИЛИ соединен с управляющим входом мультиплексора и с первым входом второго элемента И, выход которого соединен со входом синхрони О зации регистра кода операции, второй вход второго элемента И является четвертым входом синхронизации устройства, вькод управления приемом логических условий блока памяти микрокоманд соединен через элемент НЕ со вторым входом четвертого блока элементов И, третий вход которого является входом прерываний устройства.На чертеже приведена функциональная схема устройства. Ус тройс тв о с одержит блок 1 памяти микрокоманд, регистр 2 адреса, регистр 3 кода операций, мультиплексор 4, пер - вый элемент И 5, первый 6, второй 7, третий 8 и четвертый 9 блоки элемен-. тов И, первый 10 и второй 11 блоки элементов ИЛИ, блок 12 памяти кодов управления адресацией, шестой 13 блок элементов И, регистр 14 логических условий, элемент 15 задержки, второй элемент И 16, третий блок элементов ИЛИ 17, элемент НЕ 18, пятый блок элементов И 19, управляющие выходы 20, вход 21 логических условий, вход 22 З 5 вектора логических условий, вход 23 кода команды, вход 24 управления обращением, первый 25, третий 26, вто рой 27 и четвертый 28 входы синхронизации и вход 29 прерывания. .40Устройство работает следующим образом.На вход синхронизации регистра адреса 2 подается со входа 25 устройства синхросигнал, по которому 45 производится запись нулевого кода в указанный регистр с его информационного входа, По сигналу обращения, поступающего со входа 24 устройства, осуществляется выборка мик рокоманды из блока памяти микро- команд 1 по нулевому адресу, поданному на гервый адресный вход этого блока. Операционные поля считанной микрокоманды выдаются на управляе мые устройством внешние устройства через соответствующие выходы блока памяти микрокоманд 1 на выходы 20 устройства, а на выходы управления режимами работы регистра логических условий и маскированием соответственно единичные и нулевые коды, на выход кода функции выбора следующего адреса - код части адреса слова, записанного в блок памяти кодов управления адресацией 12, уп.равляющего выборкой следующего адреса микрокоманды, По синхросигналу, поданному со входа 27 устройства на соответствующий вход регистра логических условий 14, в этот регистр за пишется нулевой код, поступающий с "замаскированного" вькода блока элементов И 13, подготовив регистр логических условий 14 к последующей работе.По сигналу обращения, поступающему со входа 26 устройства, производится считывание кода управления из блока памяти 12. Считывание осуществляется по полному адресу, установленному на первом и втором адресных входах блока 12, задающего функцию безусловного перехода к следующей микрокоманде. В результате считывания кода управления, соответствующего указанной функции с первого, второго и четвертого вькодов блока 12 выдаются нулевые коды, блокирующие вьмоды первого 6, второго 7 и пятого 19 блоков элементов И и запрещающие тем самым передачу, содержимого соответственно регистралогических условий 14, регистра кодаопераций 3 и регистра адреса 2 через элемент задержки) на соответствующие входы первого блока элементов ИЛИ 10 На третьем вькоде блока памяти кодов управления адресацией 12 задается код, единичные разряды которого разрешают прохождение разрядов кода безусловного перехода с выхода кода безусловного перехода блока памяти микрокоманд 1 через третий блок элементов И 8 на третий вход первого блока элементов ИЛИ 10, с выхода которого на информационный вход регистра адреса 2 поступает код следующего адреса, После записи этого адреса в регистр адреса 2 по синхросигналу на входе 25 осуществляется цикл выборки следующей микрокоманды из блока памяти 1,При отсутствии запроса прерывания,что соответствует нулевым сигналамна информационном входе блока памя 9 33493 ти кодов управления адресацией 12, из этого блока по сигналу обращения считывается соответствующий код управления. В результате на первом и втором выходах блока памяти кодов управления адресацией 12 устанавливаются нули, иа его третьем выходе - единицы, а на четвертом - код, единичные разряды которого выделяют те разряды содержимого регистра адреса О 2, относительно которых производится безусловный переход.Таким образом, содержимое регистра логических условий 14 и регистра кода операций 3 ие может быть передано соответственно через первый 6 и второй 7 блоки элементов И на первый и второй входы первого блока элементов ИЛИ 1 О. Код безусловного перехода через третий блок элементов И 8 передается на третий вход первого блока элементов ИЛИ 10. Содержимое регистра адреса передаются на второй вход пятого блока элементов И 19, с выхода которого выделенные кодом уп равления разряды текущего адреса постуцают через элемент задержки 15 на четвертый вход первого блока элементов ИЛИ 10, на выходе которого формируется код следующего адреса. По син- зо хросигналу на соответствунщем входе регистра адреса 2 производится запись сформированного следующего адреса микрокоманды с информационноговхода это о регистра.35Вход в микропрограмму выполнения некоторой операции производится при считывании микрокоманды из блока памяти микрокоманд 1. по сигналу обращения, поступающего на вход 24 устройства. При этом на выход управления приемом кода операций блока 1 выдается двухбитовый код "01", первый бит которого предназначен для управления мультиплексором 4, а второй - для 45 управления записью в регистр кода операций 3. Указанный код через третий блок элементов ИЛИ 17 подается первым битом на управляющий вход мультиплексора 4, а вторым битом - 50 на первый вход второго элемента И 16. При нулевом сигнале на своем управляющем входе мультиплексор 4 передает на свой выход и далее на информационный вход регистра кода опера ций 3 информацию со входа када команды 23 устройства, подключенного к второму информационному входу мульти 10плексора. Сигнал записи, поступивший со входа 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 устройства.В любой микрокоманде могут быть заданы режимы работы с логическими условиями. Рассмотрим эти режимы в предположении, что сигналы запроса прерываний на входе 29 прерывания устройства отсутствуют. При считывании микрокоманды наличие единичного сигнала на выходе управления приемом логических условий блока па. мяти микрокоманд 1 соответствует ра боте с логическими условиями (имеющим место на входе 21 устройства). В этом случае логическое условие со входа 2 1 логических условий устройст- ва поступает через открытый первый 15 . элемент И 5 на второй вход второго блока элементов ИЛИ 11, на первый вход которого логическое условие поступает непосредственно со входом 2 1 логических условий устройства. ОдновреО менно сигнал с выхода управления приемом логических условий блока памяти микрокоманд 1, пройдя через элемент НЕ 18 ва второй вход четвертого блока элементов И 9, блокирует поступле ние на третий вход второго блока элементов ИЛИ 11, кода со входа 22 век-. тора логических условий устройства.Во втором блоке элементов ИЛИ 11 производится поразрядная дизъюнкция каждого разряда кода на третьем входе с одноразрядным кодом на втором входе и дизъюнкция одноразрядньк кодов на втором и первом входах. В результате на второй вход шестого блока элементов 35 И 13 поступит многоразрядный код, разрядность которого на единицу больше разрядности кода на третьем входе второго блока элементов ИЛИ 11. При этом указанный код на входе блока 13 40 будет иметь во всех разрядах либо еди.ницы, либо нули, в зависимости от того, какое значение имел код логического условия, принятый со входа 21 устройства. Если при считывании мик рокоманды хотя бы один разряд много- разрядного выхода управления маскированием блока памяти микрокоманд 1 установлен в единицу, то соответствующий разряд поступает вместе с дру гимн разрядами кода. на второй информационный вход регистра логических условий 14. При единичном управляю-.щем сигнале разрешения записи в соответствующий разряд на многоразряд ном выходе управления режимами работы регистра логических условий блока памяти микрокоманд 1 по сигналу запнси со входа 27 устройства произойдет запись логического условия в соответствующий разряд регистра логических условий 14, При этом при нулевых управляющих сигналах разрешения записи в другие разряды регистра 14 на выходе управления режимами работы регистра логических условий блока памяти микрокоманд 1 содержимое этих разрядов не изменится, Необходи" мость указать дополнительную воэможность одновременно с записью кода логического условия в один из разрядов регистра логических условий 14 обнулять один или несколько разрядов, содержащих обработанные логические условия. Для этого достаточно в соответствующие разряды выходов управления режимами работы регистра логических условий и маскирования блока памяти микрокоманд 1 установить соответственно коды нулей и единиц. При наличии на выходе управления приемом логических условий нулевого сигнала, что соответствует работе с векторными логическими условиями, происходит блокировка логического условия, поступающего со входа 2 1 устройства через второй вход первого элемента И 5 на второй вход второго блока элементов ИЛИ 11, Тот же нулевой сигнал, проходя через элемент НЕ 18, открывает соответствующие элементы И четвертого блока элементов И 9. В результате на третий вход второго бло. ка элементов ИЛИ 11 поступят код со входа 22 векторных логических условий устройства и бит со входа 29 прерывания устройства. Так как на втором входе блока 11 находится нуль, то на выход блока 11 поступает код с его третьего входа, дополнительный битом со входа 21 устройства. Полученный объединенный код поступит далее на второй вход блока элементов И 13. Уп" равление режимами записи, гашения, хранения и маскирования указанного кода нли его разрядов осуществляются с вькодов управления режимами работы регистра логических условий и маскирования блока памяти микрокоманд и аналогичного выше описанному режиму работы с логическими условиями (на входе 2 1) . При необходимости независимого от. кода операций перехода по содержимому всего регистра логических условий 14 или отдельных его разрядовдостаточно, чтобы при считывании кода управления из блока памяти 12, соответствующего функции перехода по логическому условию, на второй выход указанного блока был записан нулевой код, блокирующий передачу всех разрядов с выхода регистра кода операций 3 на второй вход формирующего следующий адрес первый блок элементов ИЛИ 10. Ненулевой код на вто О ром выходе блока памяти 12 позволяетпроизвести переход одновременно по логическим условиям и отдельным разрядам или всему коду операций.При необходимости перехода к мик роподпрограмме на выходе управления приемом кода операции устанавливается код 11. Сигналы, соответствующие коду с этого выхода блока памяти микрокоманд 1 через третий блок элементов ИЛИ 17 поступают на управляющий вход мультиплексора 4 и на первый вход второго элемента И 16 . В результате на вьиоде мультиплексора 4 будет выдан код адреса возврата, поданный на его первый информационный вход. По синхросигналу с входа 28 устройст.ва, прошедшему через открытый второйэлемент И 16 на соответствующий входрегистра кода операций 3, код адресавозврата запишется в регистр 3. Описанным выше способом произойдет переход к микроподпрограмме. Для обеспечения хранения адреса возврата привыполнении микроподпрограммы необходимо блокировать прохождение сигна 35ла по выходу записи регистра 3. Блокировка осуществляется установкойна выходе управления приемом кодаопераций блока памяти микрокоманд1 кодов 10 или ОО. В последней микрокоманде микроподпрограммы на выходекода функции выбора следующего адреса блока памяти,1 устанавливается кодфунквди условного перехода по содержимому регистра кода операций 4, поступакипий на первый адресный вход блока памяти кодов управления адреса-,цией 12, выходы которого управляют,как уже было описано, формированиемследующего адреса. В результате врегистр адреса 2 запишется код адреса возврата в основную микропрограмму.Обработка запросов прерываний осу-,ществляется в режиме обработки век торных логических условий, На отдельных линиях входа вектора логических условий 22 устройства внешнее устройство, запрашивающее прерывание, устанавливает код (вектор) адреса микропрограммы обработки прерывания. Сигнал запроса, выработанный внешним устройством подается со входа прерывания 29 устройства на третий вход четвертого блока элементов И9, на первый вход которого поступаетвекторное логическое условие, содержащеЕ код адреса микропрограммы обработки прерывания. Нулевой сигнал с выхода управления приемом логических условий блока памяти ьыкрокоманд 1 блокирует прохождение сигналалогического условия со входа 21 устройства через первый элемент И 5 на второй вход второго блока элементов ИЛИ 11 и, пройдя через элемент НЕ 18 на второй вход четвертого блока элементов И 9, разрешает прохождение сигналов с первого и третьего входов блока 9 на его выход, Намногоразрядном выходе второго блока элементов ИЛИ 11 будут находиться сигналы векторного логического условия прерывания и дополнительно сигнал логического условия со входа 21 устройства. При отсутствии маскирования на выходе управления маскированием блока памятииикрокоманд 1 прерывания и адрес микропрограммы обработки прерывания но- ступят через шестой блок элементов И 13 на информационный вход регистра логических условий 14, При разрешающих единичных сигналах на выходе управления режимами работы регистра логических условий блока памяти мик", рокоманд 1 и при поступлении сннхросигнала со входа 27 устройства произойдет запись сигналов (кодов) пре" рывания и адреса микропрограммы обработки прерывания в регистр 14 логических условий. С первого информационного выхода указанного регистра сигнал прерывания поступает на второй адресный вход блока памяти кодов управления адресацией 12 и одновременно на первый вход третьего блока элементов ИЛИ 17, При поступлении разрешающего сигнала со входа26 устройства на вход чтения блока па.мяти 12 из последнего будет считан код управления, соответствующий функции перехода по. тем разрядам регистра логических условий 14, в которых записан адрес микропрограммы обработки прерывания, В результате описанных уже действий будет сформирован адрес микропрограммы обработки прерываний и записан в регистрадреса 2. Одновременно с формированием адреса сигнал прерывания, поступая на каждый из двух элементов ИЛИ, 5входящих в состав блока 17, сформирует на выходе указанного блока код11. Под управлением данного кода производится запоминание адреса возврата, установленного на выходе кода1 Оадреса возврата блока памяти микро-,команд 1, в регистре кода операций 3.при переходе к микроподпрограмме,Отличие лишь в том, что при переходе .к микроподпрограмме в качестве адреса возврата указывается адрес следующей микрокоманды, а при переходек микропрограмме обработки прерывания - адрес текущей прерываемой микрокоманды, После перехода к микропрограмме обработки прерывания дляисключения повторной обработки тогоже самого запроса необходимо в пер- .вой же микрокоманде погасить разряд прерывания в регистре логических 25условий 14, что осуществляется установкой в нуль соответствующих разрядов на выходе управления маскированием и в единицу Йа выходе управления режима работы регистра логических условий блока памяти микроко- .манд 1. В последней микрокоманде микропрограммы производится возврат восновную микропрограмму таким же образом, как и возврат из микроподпрограммы. Предложенное микропрограммное устроиство управления обеспечивает по . сравнению с прототипом: возможность40 осуществления независимых от кода операций переходов в микропрограммах по коду логических условий как по всему коду, так и по отдельнымраз 45 рядам, за счет параллельного управления подключением разрядов кодов операций и логических условий, реализуемого с помощью блока памяти кодов управления адресацией 12 с соответствующими связями; переходы в мнкропрограммах по одельным полям (разрядам)кода операций, что позволяет сократить объем микропрограммы выполненияопераций за счет организации последовательных переходов по функционально различным полям кода операцийвместо одного перехода по полному ко;ду; возможность принимать и обрабатывать запросы на прерывания отвнешних устройств, в частности можномаскировать, хранить в специальномразряде регистра логических условий14 и "гасить" после выполнения обработки микропрограммы сигнал (код)прерывания, при этом запоминание адреса возврата, производимое под управлением микропрограммы в регистрекода операций 3 с последующим переходом по содержимому этого регистрапозволяет продолжить выполнение исходной микропрограммыф настройкуустройства на конкретное применение,что обеспечивается возможностью изменения набора используемых функцийвыбора следующего адреса.эа счет изменения содержимого блока памятикодов управления адресацией 12, каждое слово которого однозначно соответствует некоторой функции из набора; дополнительные возможности настройки обеспечивают микропрограммноуправляемые режимы работы с одноразрядными (битовыми) логическими ус- .ловиями в режиме их временного разделения и (или) с многоразрядными(векторными) логическими условиями,в частности при работе а одноразрядными логическими условиями, поступающими с входа битовых логических условий, возможна запись кода в любойразряд регистра логических условийего хранения и гашение" после егоиспользования; при работе с многоразрядными логическими условиями,поступающими с входа векторных логических условий, возможна как записьв. регистр логических условий всегокода логический условий и отдельногоразряда или полей (группы разрядов),так и их хранение и (или) гашение.
СмотретьЗаявка
3638865, 30.08.1983
ПРЕДПРИЯТИЕ ПЯ Г-4152
КИЗУБ ВИКТОР АЛЕКСЕЕВИЧ, РОЗЕНБЛЮМ БОРИС ИЛЬИЧ
МПК / Метки
МПК: G06F 9/22
Метки: микропрограммное
Опубликовано: 15.01.1985
Код ссылки
<a href="https://patents.su/10-1134937-mikroprogrammnoe-ustrojjstvo-upravleniya.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммное устройство управления</a>
Предыдущий патент: Микропрограммное устройство управления
Следующий патент: Приоритетное устройство
Случайный патент: 188969