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

Иллюстрации

Показать все

Реферат

 

ОП ИСАЙИ Е

ИЗОБРЕТЕНИЯ

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

«»999052

Соитз Советск их

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

Республик- (Sl ) Дополнительное к авт. свнд-ву (22) Заявлено 02.07.81 (21) 3310255/18-24 с присоединением заявки .% (5I )M. Кл.

5 06 F 9f2.2

С«06 F ll/16

Гесуаарстваней квинтет (23) Приоритет

Опубликовано 23.02.83.Бюллетень № 7

СССР (53) УД К681.3 (088.8) вв девам взебретевкй н втсрмтий

Дата опубликования описания 25.02.83 (72) Авторы изобретения

В.Б.Самарский, И.C.Õàð÷åíêî, Г. Н.Ч имонькин и"С:ЯРТка енко

i .««Ъ ". < ъ-;,, ф «1««««, f ««.«

k, (71) Заявитель (54) МИКРОПРОГРАММНОЕ. УСТРОЙСТВО УПРАВЛЕНИЯ

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

ЭВМ и других систем.

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

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

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

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

Наиболее близким по технической сущности и достигаемому положительному эффекту к предлагаемому изобретению является микропрограммное устройство управления, содержащее генератор импуль сов; последовательно соединенные первый блок элементов И, регистр адреса, первый дешифратор и первый запоминающий блок, первый выход которого соединен с первым входом буферного регистра, второй выход — с первыми входам@,.счетчика микрокоманд и дешифратора логичеоких условий, выход которого соединен с первым входом регистра логических условий, выход счетчика микрокоманд через последовательно соединенные первый и второй элементы И соединен с вторым входом второго блока элементов И, третий выход первого запоминающего блока соединен с втотым входом дешифратора ло3 99905 гических условий и первым входом счетчика адреса, выход которого соединен с первым входом второго дешифратора,а вход установки нуля соединен с вторыми входами первого дешифратора и регистра логических условий, выход которого соединен с первым вхоцом первого блока элементов

И, а также с третьим входом буферного регистра и выходом третьего элемента И, первый вход которого соединен с выходом 10 первого элемента И, а через первый эле.мент НЕ соединен с первым входом четвертого элемента И, выход которого соединен с вторым Bb!xogoM второго дешифратора., выход которого соединен с входом второ- 5 го запоминающего блока, первый выход которого соединен с выходом устройства, а второй выход — соединен с вторыми входами счетчиков мшсрокоманд и адреса, второй вход третьего элемента И через второй элемент задержки соединен с вторым входом четвертого элемента И и выходом генератора импульсов, а через первый элемент задержки — с вторым входом второго элемента И, четвертый выход первого запоминающего блока соединен со входом "Установки.в нуль" регистра адреса 3).

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

35 микропрограммы.

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

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

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

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

9990 памяти соединен с первым входом первого блока элементов И и с входом треть

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

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

Сущность изобретения состоит в повышении достоверности функционирования микропрограммного устройства управления ° путем использования естественной инфор- З мационной избыточности за счет организации контроля правильности реализации функций, переходов путем сравнения требуемого значения контрольного признака линейной последовательности микрокоманд 0 с его фактическим значением в каждом такте считывания операционных микрокоманд, однозначно определяемом состоянием счетчиков адреса и микрокоманд. формирование требуемого контрольного признака происходит путем суммирования кода числа и (N — количество микрокоманд в линейной последовательности 4>) и кода числа А ° (А — адрес первой микч ч рокоманды в 1 -ой линейной последова$0 тельности).

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

52 4 формирование фактического значения контрольно1.о признака в процессе: считы- вания онерационных микроксь аид из второго зацоминающего блока происходит путем суммирования содержюлого счетчиков адреч. а и микрощжаид, При. этом независимо от адреса считываемой микрокоманды Y „ЕL и количества уже реализованных микрокоманд в линейной последоватепьиоств; значение Я. -. должно быть величиной постоянной и нри праащп:нОм функционировании микропрограммного устройства ччрайления должно выполч яться условие

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

На чертеже представлена функциональная схема микропрограммного устройства управления, Устройство содержит дешифратор 1 логических условий, регистр 2 логических условий, второй блок 3 элементов И, .буферный регистр 4, первый блок 5 элементов И, адресный регистр 6, первый дешифратор 7 адреса, первый блок 8 памячи, счетчик 9 микрокоманд, первый элемент И 10, второй элемент И 11, первый блок 12 элемент0B ИЛИ, сумматор 13, третий блок 14 элементов И, регистр 1 5 признака, второй блок 16 элементбв ИЛИ, генератора 17 импульсов и второй элемент 18 задержки, первый элемент 19 задержки, третий эле-. мент И 20, блок 21 сравнения, счетчИк

22 адреса, второй дешифратор 23 адре» са, второй блок 24 памяти, элемент НЕ

25 и четвертый элемент И 26, адресньчй выход 27, выход 28 числа микрокомиид, выход 29 начального адреса и управляющий выход 30 первого блока 8, вход 31 логических условий устройства, вход 32 кода операций устройства, информационный

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

В первый блок 8 памяти записываются адресные микрокоманды, которые вкпюча52 .8 ферного регистра 4, регистра 2 логических условий, счетчика 22 адреса, а также открывает дешифратор 7. С выхода

30 первого запоминающего блока 8 в . буферный регистр 4 записывается косвенный адрес первой микрокоманды очередной линейной последовательности, с выхода 31 в счетчик микрокоманд 9 через второй блок элементов ИЛИ 12 в сумматор 13 подается код числа микрокоманд в выполняемой линейной последовательности. С выхода 32 запоминающего блока 8 .а сумматор 13 через блок элементов ИЛИ 16 поцается код адреса первой микрокоманды текущей линейной последовательности. Этот же, коц запишется в счетчик 22 адреса. В сумматоре 13 происходит формирование контрольного признака ;, который поступает на входы блока 14 элементов И и узла 21 сравнения. Через блок 14 элементов И контрольный признак запишется в регистр

15 и далее поступит на блок 21 сравнения. После записи информации в счетчик

9 его содержимое станет отличным от нуля и на выходе элемента И 10 появится нулевой сигнал, который закроет элемент И 11. Нулевой сигнал с выхода этого элемента закроет блок 14 элементов

И. Нулевым сигналом .с выхода элемента

И 10, инвертируемым элементом НЕ 25, откроется четвертый элемент И 26.

Очередной тактовый импульс с выхода генератора 17 через открытый элемент И 26 произведет считывание информации из .запоминающего блока 21.

@циничным сигналом с управляющего выхода 34 произойдет увеличение (уменьшение) содержимого счетчиков адреса

22 и микрокоманд 9 на единицу. Коды с: выходов этих счетчиков поступят соответственно на входы блоков 16 и 12 элементов ИЛИ и в сумматоре 13 произойдет формирование значения контрольного признака. Я., который поступит на вход узла 21 сравнения. По. сигналу с выхода элемента 19 задержки в узле 21 сравнения произойдет сравнение соответствующих кодов.

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

7 9990 ют адрес первой микрокоманды текущей линейной последовательности, который считывается с входа 32; косвенный адрес микрокоманды операционной линейной по- следовательности, который считывается с S выхода 30; код числа микрокоманд, входящих в линейную последовательность, который считывается -с входа 31.

Во втором блоке 24 записаны операционные микрокоманды, входящие в микроподпрограммы (линейные последовательности), образующие микропрограммы, После считывания информации из первого запоминающего блока 8 о косвенном адресе очередной микрокоманды, адресе первой микрокоманцы текущей последовательности, а также о коде числа микрокоманд, входящих в реализуемую линейную последовательность происходит формирование требуемого значеция контроль- 20 ногопризнака Я, в сумматоре 13 и запись его в регистр 15 для дальнейшего хранения, В процессе реализации микропрограммы при считывании каждой операционной микрокоманды из второго запоминающего блока происходит формирование фактического значения контрольного признака в сумматоре 13. При этом независимо от номера и адреса микрокоманды в соот- 30, ветствующей линейной последовательности, фактическое значение контрольного признака остается неизменным в случае правильной реализации микропрограммы.

Требуемое и фактическое значения контрольного признака сравнивается узлом

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

В случае несовпадения значений C. u

Е; сигналом с выхода узла .сравнения происходит автоматическое отключение микропрограммного устройства управления от реализации заданной микропрограммы и начинается реализация диагностической микропрограммы путем записи фиксированного адреса в регистр 6.

М икропрограммное устройство управления работает следующим образом.

В исходном состоянии все элементы памяти обнулены. Код операции поступает на вход регистра 6 и задает адрес соответствующей ячейки памяти в блоке 8.

Я

Первый импульс генератора 17 через элемент 19 задержки и открытый элемент

И 20 производит установку в нуль бу9 9990

Микропрограммное устройство уцравле ния, содержащее первый и второй блоки памяти, первый и второй дешифраторы адреса, дешифратор логических условий, счетчик адреса, счетчик микрокоманд, регистр логических условий, регистр адреса, буферный регистр, генератор иь -, пульсов, первый и второй элементы задержки, элемент НЕ, первый и второй блоки элементов И, первый и второй, третий и четвертый элементы И, причем вход кода операции устройства соединен с первыминформационным входом регистра адреса, выход KOTopDFO соединен с информационным входом nepsoro дешифратора адреса, выход первого дешифратора адреса соединен свходом первого блока памяти, адресный выход которого соединен с первым информационным входом буферного регистра, выход числа микрокоманд первого блока памяти соединен с первым инфор . мапионным входом дешифратора логических условий, выход которого соединен с информационным входом регистра логичвоких условий, выход начального адреса .первого блока памяти соединен с вторым информационным входом дешифратора логических условий и информационным входом счетчика адреса, выход которого сое динен с информационным входом второго дешифратора ацреса, управляющий выход первого блока памяти соединен с установочным входом регистра адреса, выход второго дешифратора адреса соединен с входом второго блока памяти, информа ! ционный выход которого является вых >дом.микроопераций устройства, управля4 ющий выход второго блока памяти сое динен с счетными входами счетчика адреса и счетчика микрокоманд, выходы которого соединены с входами первого элемента И, выход первого элемента И coe» динен с первыми входами второго, треть- его и четвертого элементов И, выход генератора импульсов - с вторым входом четвертого элемента И и через первый элемент задержки - с входом второго элемента задержки и вторым входом тре тьего элемента И, выход которого сое- . динен с управляющим входом первого дешифратора адреса и с установочными входами счетчика адреса, буферного регистра и регистра логических условий, второго блока 24 произойдет обнуление счетчика 9 микрокоманд и на выходе элемента И 10 появится единичный сигнал, который откроет элемент И 11. Тактовым импульсом с выхода генератора 17, проходящим через элементы 19 и 18 задержки и элемент И 11, произойдет запись адреса следующей адресной микрокоманды линейной последовательности через открытый блок 5 элементов И. в адресный ре- 14

3 гистр 6. Тактовым импульсом с выхода генератора 17 через элемент 19 задержки и элемент И 20 произойдет обнуление счетчика 22 адреса, регистров 2 и 4, а также запуск дешифратора 7. При.счи- З тывайии информации из блока 8 сигналом с выхода 30 произойдет обнуление регис тра 15 и подготовка его для записи оче- . редного значения контрольного признака

3. 1. В дальнейшем работа устройства . 20 будет протекать аналогично описанной выше.

Рассмотрим работу микропрограммного устройства управления при возникновении отказов во время считывания микрокоманд23

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

При возникновении.отказов в указенныхщ блоках блок 21 сравнения фиксирует вы= полнение условия Е ф »,. н на его вы1 Ф ходе появляется единичный сигнал, кото-. рый поступает на.вход адресного регист ра 6, прекращая выполнение заданной микропрограммы и задавая фиксированный адрес первой микрокоманды диагностической микропрограммы.

Кроме того, в микропрограммном устройстве управления организуется zow роль правильности функционирования таких узлов схемы контроля как сумматор 13, регистр 15, Отказ в любом из этих блоков приводит к выполнению условия и обуславливает воэможность самоконтроля ® средств проверки микропрограммного уст ройства управления.

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

И некоторыми возможностями для самопроверки

Использование предлагаемого изобре тения позволяе строить самоконтролиру52 10 юшке микропрограммные устройства с высокой достоверностью функционирования.

Ф о р м.у.л а и з о б р е т е н и я..

999ОГ выход второго элемента задержки соединен с вторым входом второго элемента

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

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

Источники информации, принятые во внимание при экспертизе

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

N482744,,кл. Q 06 F 9/16, 1974.

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

¹ 849891, кл. С, 06 F 9/16, 1981..

3. Авторское свидетельство СССР № 703811, кл. G 06 F 9/16, 1981 (прототип) .