Устройство для управления восстановлением микропрограмм при сбоях

 

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

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

РЕСПУБЛИК ((9) (Н) ш (з 06 Е 9/22 G F 11/00

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

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

p "с.- x;T

ФР, д

:.,%,..., ф.

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

/ (21) 3486366/18-24 (22) 24 .08.82 (46) 23. 11.,83. Бюл. " 43 (72) В.С. Харченко, Н,П. Благодарный, Г.H. Тимонькин и С,Н. Ткаченко (53) 681:3(088.8) (56) 1. Авторское свидетельство СССР

Р 741267 кл.," 06 F 9/22, 1980.

2,. Авторское свидетельство СССР по заявке ((3310256/18-24, 02.07.81.

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

N 470806, кл. 6 06 Р 9/22, 1975 (прототип). (54)(57) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ

ВОССтАНОВЛЕНИЕИ МИКРОИРОГРАМИ ПРИ

СБОЯХ, содержащее блок памяти микрокоманд, блок контроля, регистр микрокоманд, регистр адреса микрокоманд, регистр адреса возврата, счетчик числа сбоев, дешифратор, первый, второй. и третий блоки элементов И, генератор тактовых импульсов, триггер пуска, формирователь адреса, причем входы кода операций устройства соединены с первой группой входов регистра адреса микрокоманд, выходы регистра адреса микрокоманд соединены с адресными. входами блока памяти микрокоманд, выходы которого соединены с входами регистра микрокоманд, выходы полей базового адреса, кода проверяемого логического условия, микроопераций регистра микрокоманд соединены с группой входов блока контроля, выходы счетчика числа сбоев соединены с входами дешифратора, выходы фор-, мирогателя адреса — с входами модифицированной части адреса второй группы входов регистра адреса микрокоманд, выходы поля микроопераций регистра микрокоманд - с выходами микроопераций устройства, выход генератора тактовых импульсов соединен с входом считывания блока памяти микрокоманд, вход пуска устройства соединен с единичным входом триггера пуска, о тл и ч а ю щ е е с я тем, что, с целью повышения быстродействия, в уст" ройство введены регистр адреса сбоя, схема сравнения, элемент задержки, одновибратор, триггер сбоя, первый, второй, третий и четвертый элементы И, первый, второй и третий элементы ИЛИ, четвертый блок элементов И и блок элементов ИЛИ, причем выходы поля базового адреса регистра микрокоманд соединены с информационными . с® входами первого блока элементов И, выходы которого соединены с первой группой входов блока элементов ИЛИ, выходы немодифицируемой части адреса С» которого соединены. с входами немодифицируемой части адреса второй группы входов регистра адреса, выходы модифицируемой части адреса блока элементов ИЛИ соединены с первой группой входов формирователя адреса, выходы поля кода проверяемого логического ус. ловия регистра микрокоманд - с первыми информационными входами второго блока элементов И, с информационными входами третьего блока элементов И и с информационными входами регистра адреса возврата, выходы второго блока элементов И соединены с второй группой входов формирователя адреса, вы-,Ьь ход поля первой метки регистра микрокоманд соединен с первым управляющим входом вт< рого блока элементов И, первым входом первого элемента ИЛИ, вы" ход которого соединен с первым входом блока контроля, с первым входом n>6i второго элемента ИЛИ, выход которого соединен с первыми управляющими входами третьего и четвертого блоков элементов И, выход поля второй метки регистра микрокоманд соединен с вторым входом первого элемента ИЛИ и первым входом первого элемента И, выход которого соединен с входом синхронизации регистра адреса возврата, выходы которого соединены с информационными входами четвертого блока элементов И, выходы четвертого блока элементов И соединены с второй группой входов блока элементов ИЛИ, первый выход блока контроля соединен с вторым управляющим входом второго блока элементов И и первым управляющим входом первого Ьлока элементов И, второй выход блока контроля соединен с вторыми управляющими входами третьего и четвертого блоков элементов И, единичным входом триггера сбоя, первыми входами второго и третьего элемен" тов И,третий выход блока контроля соединен с вторым входом первого элемента И, четвертый выход блока контроля соединен с вторым входом второго элемента ИЛИ, выход конца микропрограммы группы выходов микроопераций устройства соединен с нулевым вхо дом регистра адреса возврата и первым входом третьего элемента ИЛИ, выход которого соединен с нулевым входом триггера пуска, прямой выход которого соединен с входом пуска генератора тактовых импульсов, первый выход дешифратора - с вторым входом второго элемента И, второй выход дешифратора "

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

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

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

1О команд, регистр микрокоманд, регистр адреса, Ьлок контроля, Ьлок элементов И, формирователь адреса (1) „

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

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

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

Наиболее близким по технической 0 сущности и достигаемому положительному эффекту к изобретению является устройство для управления восстановлением при сбоях, содержащее блок памяти микрокоманд, блок контроля, регистр адреса микрокоманд, регистр микрокоманд, регистр адреса возврата, счетчик числа сбоев, дешифратор, первый, второй и третий блоки элементов И, генератор тактовых импульсов, триггер пуска, формирователь адреса, причем входы кода операций устройства соединены с первой группой входов регистра адреса микрокоманд, выходы регистра адреса микрокоманд соединены с адресными входами блока памяти микрокоманд, выходы которого соединены с входами регистра микрокоманд, выходы полей базового адреса, кода проверяемого логического условия, микроопераций регистра микрокоманд - с группой входов Ьлока контроля, выходы счетчика - с входами дешифратора, выходы формирователя адреса — с входами модифицированной части адреса второй группы входов регистра адреса мик .35 рокоманд, выходы поля микроопераций . регистра микрокоманд соединены с выходами микроопераций устройства, выход генератора тактовых импульсов — с вхо40 дом считывания блока памяти микрокод j3)

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

50 ной микрокоманды не вызывает искажения обрабатываемой информации, то сбой (-ой микрокоманды устраняется путем ее повтора, который производится не более rn pan, Если повторное считывание искаженной микрокоманды искажает оЬрабатываемую информацию, то сбой -ой микрокоманды устраняется путем повтора осей 1 -ой микропрограммы, Если после п1 повторных считываний микрокоманды или прогонов микропрограммы сбой не исчезает, то фиксируетcR отказ устройства, включается диагностическая процедура и локализируется место возникновения отказа устройстоа, Цель изобретения — повышение быстродействия устройства.

»

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

10561

3 группы входов регистра адреса, выходы

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

-MBTKN регистра микрокоманд соединен с 15 .первым управляющим входом второго блока элементов И, первым входом пер вого элемента ИЛИ, выход которого соединен с первым входом блока контроля, с первым входом второго элемента ИЛИ, (2в выход которого соединен с первыми управляющими входами третьего и четвертого блоков элементов И, выход поля второй метки регистра кикрокоманд соединен с вторым входомпервого элемен- 25 та ИЛИ и первым входом первого элемента И, выход которого соединен с входом синхронизации регистра адреса возврата выходы которого соединены с информационными входами четвертого блока элементов И,выходы четвертого блока элементов И соединены с второй группой входов блока элементов ИЛИ, первый выход блока контроля соединен с вторым управляющим входом второго блока эле35 ментов И и первым управляющим входом первого блока элементов И, второй выход блока контроля соединен с вторыми управляющими входами третьего и четвертого блоков элементов И, единичным входом триггера сбоя, первыми входами второго и третьего элементов И, третий выход блока контроля соединен;. с вторым входом первого элемента И, четвертый выход блока контроля соеди45 нен с вторым входом второго элемента ИЛИ, выход конца микропрограммы группы выходов микроопераций устройства соединен с нулевым входом регистра адреса возврата и первым входом тре. тьего элемента ИЛИ, выход которого соединен с нулевым входом триггера пуска, прямой выход которого соединен с входом пуска генератора тактовых импульсов, первый выход дешифратора -. с вторым входом второго элемента И, второй выход дешифратора — с вторым управляющим входом третьего элемента И, вторым входом третье| о элемен93 ,та ИЛИ и выходом отказа устройства, выход третьего элемента И соединен с ,нулевым входом счетчика числа сбоев и нулевым входом триггера сбоя, прямой выход котьрого соединен с первым входом четвертого элемента И, выход которого соединен со счетным входом счетчика числа сбоев, выход второго элемента И соединен через одновибратор с входом синхронизации регистра адреса сбоя, выходы которого соедине" ны с первой группой входов схемы срав. нения,вторая группа входов которой соединена с выходами регистра адре:-.а микрокоманд и информационными Входами регистра адреса сбоя, выход схемы сравнения соединен с третьим входом третьего элемента И, вход элемента задержки - с вторым входом четверта го элемента И и выходом генератора тактовых импульсов, выход элемента задержки соединен с четвертым входом третьего элемента И, вторым управляющим входом первого блока элементов И и третьим управляющим входом второго блока элементов И, входы кода опера-. ции устройства соединены с асинхронными информационными входами регистра адреса возврата, входы логических условий устройства соединены с вторыми информационными входами второго блока элементов И, выходы третьего блока элементов И соединены с третьей группой входов блока элементов ИЛИ, Сущность изобретения состоит в по" вышении быстродействия путем формирования адреса первой микрокоманды повторяемого участка в зависимости от точки микропрограммы, в которой произошел сбой, и места сбоя в формате микрокоманды.

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

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

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

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

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

Таким образом, в предлагаемом устройстве считываемые из блока памяти микрокоманд микрокоманды состоят 35 из первого поля кода базового адреса очередной микрокоманды; второго поля кода проверяемого логического услоена (адреса контрольной тонкн), третьего поля первой метки, четвертого 40 поля второй метки и пятого поля микрооперации, I

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

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

На фиг. 1 приведена Функциональная схема предлагаемого устройства для управления восстановлением микропрограмм при сбоях; на фиг. 2 - функциональная схема блока контроля.

Устройство для управления восста» новлением микропрограмм при сбоях (Фиг. 1) содержит Формирователь l адреса, регистр 2 адреса микрокоманд, входы 3 кода операции, блок 4 памяти микрокоманд, регистр 5 микрокоманд с полями базового адреса очередной микрокоманды 6, кода логических ус" ловий 7, первой метки 8, второй метки 9, микроопераций 10, входы 11 сигналов логических условий, первый блок элементов И 12, блок элементов

ИЛИ 13, второй блок элементов И 14, триггер 15 пуска, генератор .16 тактовых импульсов, схему 17 сравнения, регистр 18 адреса возврата, четвертый блок элементов И 19, третий блок элементов И 20, регистр 21 адреса: сбоя, первый элемент ИЛИ 22, первый элемент И 23, второй элемент ИЛИ 24, второй элемент И 25, одновибратор 26, четвертый элемент И 27, элемент 28 задержки, блок 29 контроля, выходы 30 микроопераций устройства, выход 31 микроопераций конца микропрограммы, триггер 32 сбоя, третий элемент ИЛИ 33,: третий элемент И 34, счетчик 35, де-, шифратор 36, вход 37 сигнала пуска устройства, выход 38 сигнала отказа . устройства.

Блок 29 контроля {фиг. 2) содержит группу входов 39, первый выход 40, первый сумматор 41 по модулю два, элемент ИЛИ-НЕ 42, инвертор 43, второй выход 44, второй сумматор 45 по модулю два, элемент ИЛИ 46, четвертый выход 47, третий сумматор 48 по моду9 1056 лю два, первый элемент И 49, первый вход 50, второй элемент И 51 и третий выход 52„

Назначение основных элементов уст.ройства состоит в следующем. 5

Формирователь 1 адреса представляет собой сумматор по модулю два и служит для формирования модифицируе" мой части адреса очередной микрокоманды путем сложения по модулю дйа 10 сигналов, поступающих на первую и вторую группы его входов. Регистр 2 служит для хранения кода адреса очередной микрокоманды. 8 блоке 4 памяти микрокоманд хранятся микрокоманды, формируемые устройством.

Устройство формирует микрокоманды трех типов. К первому типу относятся микрокоманды, в поля 7 кода проверяемого логического условия которых за- 20 писан код контрольной точки, к которой необходимо возвратиться при считывании данной микрокоманды со сбоем а в полях первой 8 и второй 9 меток записан нулевой код. К второму типу относятся иикрокоманды, в поле 7 кода проверяемого логического условия которых записан адрес контрольной точки, к которой необходимо обратиться при считывании со сбоем данной микро-з команды либо микрокоманды ветвления, выполняемой после данной микрокоманды, в поле 8 первой метки запи- . сан нулевой код, а в поле 9 второй метки " единичный код. К третьему типу микрокоманд относятся микрокоманды ветвления, в поле 7 этих микрокоманд записан код проверяемого логического условия, в поле 8 первой метки - единичный код, в поле 9 второй метки " нулевой код.

Регистр 5 предназначен для хранения кода считанной микрокоманды и выдачи ее на блок 29 контроля, выходы 30 микроопераций устройства, на блоки элементов И 12 и 14. Блок элементов И 12 служит для выдачи при правильном считывании микрокоманды кода базового адреса очередной микрокоман-. ды через блок элементов ИЛИ 13 на формирователь 1 адреса и регистр 2. Блок элементов И 14 предназначен для про-i верки сигналов логических условий, поступающих на входы 11.устройства, кодами логических условий с поля 7 регистра 5 и выдачи результатов про- >5 верки на формирователь 1 адреса. Регистр 18 позволяет хранить адрес контрольной --чки, к которой необходимо, 193 10 возвратиться при считывании со сбоем микрокоманды третьего типа либо команд первого и второго типов, при считывании которых происходят сбои одновременно в полях 7 и 6 или 10.

Блок элементов И 19 служит для передачи кода адреса контрольной точки с регистра 18. Блок элементов И 20 позволяет передавать адрес контрольной точки считанной со сбоем микрокоманды первого или второго типа с поля 7 регистра 5 на блок элементов ИЛИ 13.

Триггер 15 служит для формирования сигнала включения генератора 16 перед выполнением микропрограммы и его вы" ключения при отказе устройства или окончания выполнения микропрограммы.

8ход 37 служит для подачи на вход триггера 15 сигнала запуска перед началом выполнения микропрограммы. Схема 17 сравнения позволяет формировать сигнал при равенстве кодов в регистрах 2 и 21.

Элемент И 27 служит для формирования сигналов на счетный вход счетчика 35, который служит для подсчета числа повторных считываний микрокоманды и выдачи кода этого числа на . входы дешифратора 36, позволяющего формировать сигнал на первом выходе при содержимом счетчика 35, равном нулю, и на втором выходе при содержимом,,счетчика 35, равном числу повторов, при котором идентифицируется отказ уст" ройства. Элемент И 25 позволяет формировать сигнал возбуждения одновибратора 26, который выдает сигнал на вход синхронизации регистра 21. Если текущая микрономанда считана со сбоем, то на выходе элемента И 25 появляется единичный сигнал. При этом одновибратор 26 формирует импульс на вход синхронизации регистра 21. Длительность этого импульса выбирается такой, чтобы обеспечить перезапись в регистр 21 из регистра 2 адреса микрокоманды, при выполнении которой происходит сбой, и исключить запись . адреса контрольной точки (этот адрес при сбое микрокоманды записывается с поля 7 регистра 5 либо с регистра 18 через блоки элементов И 19, 20 и блок элементов ИЛИ 13 в регистр ф

Регистр 21 служит для хранения адреса микрокоманды, при считывании которой происходит сбой. Генератор 16 служит для формирования импульсов на вход считывания блока 4 памяти микрокоманд и считывания из него по

11; 10561 адресам, хранящимся в регистре 2, кодов микрокоманд. Элемент 28 задержки предназначен для задержки импульсов с выхода генератора 16 на время считывания микрокоманды из бло- 5 ка 4 памяти микрокоманд, записи ее. в регистр 5 и проверки на неискаженность в блоке 29 контроля. Блок 29

;контроля служит для проверки считываемой микрокоманды. Сумматоры 41, 10

45 и 48 по модулю два проверяют поступающую на их входы информацию. Если информация записана в регистре 5 без искажений, то на выходе соответствующего сумматора 41 (45 и 48) по модулю два сигнал отсутствует.

Блок.29 контроля функционирует следующим образом.

Контроль микрокоманд первого типа.

Если микрокоманда считана из блока 4 памяти в регистр 5 без искажений, то сигналы на выходах сумматоров по модулю два отсутствуют. На вход 50 блока 29 контроля поступают нулевые сигналы. При этом на выходе 40 бл ка контроля появляется единичный сигнал, соответствующий факту правильного считывания микрокоманд, На выходе 44 сигнал отсутствует (единичное значение сигнала на этом выходе соответствует считыванию микрокоманды со сбоем), Если микрокоманда первого типа считана со сбоем и сбой происходит в полях 6 или 10, то на выходе сумматора 41 или 45 по модулю два появляется единичный сигнал,. При этом единичный сигнал на выходе 40 блока 29 контроля исчезает, а на выходе 44 появляется. Если сбой происходит в поле 7 при считывании микрокоманды первого типа, то на вы- 40 ходе сумматора 48 по модулю два появляется единичный сигнал, Так как на вход 50 поступают нулевые сигналы, то на выходе 40 будет оставаться единичный сигнал. Если сбой происходит 45 одновременно в полях 6 и (или) 10 и 7 считанной микрокоманды, то на выходы 44, 47 и 52 блока контроля поступают единичные сигналы..

Контроль микрокоманд второго типа.

При считывании в регистр 5 микрокоманд второго типа на вход 50 блока 29 контроля поступает единичный сигнал. При возникновении сбоя в микрокоманде в IloIlRx 6 и 10 или одновре" 55 менно в полях 6, 7 и 10 блок 29 конт" роля функционирует аналогично обработке этих сбоев при считывании микроко93 12 манд первого типа. Если сбой возник только в поле 7, то на выходе сумматора 48 Ilo модулю два появляется единичный сигнал. При этом единичный сигнал на выходе 40 блока 29 контроля исчезает, а на выходах 44 и 52 появляется (единичное значение сигнала на выходе 52 запрещает перезапись информации с поля 7 регистра 5 в регистр 18) .

Контроль микрокоманд третьего типа.

При считывании микрокоманд третьего типа в регистр 5 на входе 50 блока 29 контроля присутствует единичный сигнал. Если сбой возник в полях 6, 7 и 10, то на выходах соответ" ствующих сумматоров 41, 45 и 48 Ilo мо дулю два появляются единичные сигналы. При этом на выходе 40 единичный сигнал исчезает, а на выходах 44, 47 и 52 появляется, При правильном считывании микрокоманды третьего типа значения сигналов на выходах 40;

44, 47 и 52 аналогичны их значениям при правильном считывании микрокоманд, первого и второго типов. Элемент ИЛИ 33 служит для формирования сигнала обнуления триггера 15, триггер 32 служит для идентификации режима работы устройства . При нулевом состоянии триггера 32 устройство находится в режиме выполнения микропрограммы, при единичном состоянии триггера 32 в режиме восстановления сбоя. Элемент И 34 предназначен для формирования сигна) а, соответствующего факту устранения сбоя в считываемой микрокоманде.

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

Перед началом функционирования триггеры 15 и 32, регистры 2, 21, 18 и 5 и счетчик 35. устанавливаются в

I нулевое состояние (входы их обнуления условно не показаны). На входы 3 устройства поступает код операции и записывается в регистры 2 и 18.

Одновременно с этим на вход 37 поступает сигнал начала выполнения микропрограммы (сигналы на выходы 3 и вход 37 устройства могут посту ать, например, от центрального устройства управления. ЭВИ). При этом триггер 15 устанавливается в единичное состояние и включает генератор 16 тактовых импульсов. Тактовые импульсы с выхода генератора 16 поступа1056193

13 ют на вход считывания блока 4 памяти микрокоманд. С поступлением первого тактового импульса по коду адреса микрокоманды, поступающему с регистра 2 на адресные входы блока 4 памяти микрокоманд, с последнего считывания поступает первая микро-. команда микропрограммы и записывается в регистр 5 микрокоманды. Далее код никрокоманды с регистра 5 посту- 10 пает в блок 29 контроля, а сигналы микроопераций с поля 10 регистра 5на выходы 30 микроопераций устройства„ Если микрокоманда является микрокомандой первого типа и считана без сбоев, то на первом выходе 40 блока 29 контроля появляется единич" ный сигнал.

При поступлении импульса с выхода элемента 28 задержки блок элементов И 12 оказывается открытым по управляющим входам и базовый адрес очередной микрокоманды с поля 6 регистра 5 поступает на блок элементов

ИЛИ 13 и с его выходов - на формирователь 1 адреса и регистр 2 адреса.

При этом модифицируемая часть базового адреса проходит на входы модифи" . цированной части адреса второй группы входов регистра 2 через формирова- 30 тель 1 адреса, а немодифицируемая часть базового адреса с блока элементов ИЛИ 13 поступает на входы немодифицированной части адреса второй группы входов регистра 2 непосредственно.

С приходом на вход считывания блока 4 памяти микрокоманд очередного импульса с выхода генератора 16 из блока 4 памяти микрокоманд считывается оче" редная микрокоманда в соответствии с адресом, записанным в регистре 2.

Если считываемая микрокоманда является микрокомандой второго типа и ,считана из блока 4 памяти микрокоманд в регистр 5 правильно, то сигналы микроопераций с поля 10 регистра по- 45 ступают на выходы 30 устройства, базовый адрес очередной микрокоманды с поля 6 регистра 5 поступает через блок элементов И 12 на блок элементов ИЛИ 13, адрес контрольной точки 50 с поля 7 регистра 5 записывается в регистр 18, открытый по входу синхронизации единичным сигналом с выхода элемента И 23. Элемент И 23 при этом открыт,так как на него поступают еди- у ничный сигнал с поля 9 регистра 5 и нулевой сигнал с выхода 52 блока ?9 контроля.

14

Далее устройство функционирует ана логично алгоритму при формировании микрокоманд первого типа„

Если считываемая микрокоманда является микрокомандой третьего типа и считана без искажений, то сигналы микроопераций с поля 10 регистра 5 поступают на выходы 30 микроопераций уст" ройства, код базового адреса с паля б регистра 5 поступает через блок элементов И 12 на блок элементов ИЛИ 13, код проверяемого логического условия с поля 7 регистра 5 - на блок элементов И 14, где проверяет значения сигналов логических условий, поступающих на входы 11 устройства. Сигналы, соответствующие результатам проверки логических условий, с выходов блока элементов И 14 поступают на формирователь 1 адреса, где складываются по модулю два с модифицируемой частью адреса очередной микрокоманды, поступающей на формирователь 1 с блока элементов ИЛИ 13„

Далее устройство функционирует аналогично алгоритму функционирования при выполненяи микрокоманд первого и второго типов.

Если при считывании очередной микрокоманды происходит сбой, то на выходе 44 блока 29 контроля появляется единичный сигнал. При этом регистр 21 открывается по входу синхронизации и

s него записывается с регистра 2 адрес считанной со сбоем микрокоманды.

В регистр 2 в зависимости от типа микрокоманды, при считйвании которой происходит сбой, записывается адрес контрольной точки либо с поля 7 регистра 5, либо с регистра 18. Если сбой происходит при считывании микрокоманды первого типа, то адрес контрольной точки в регистр 2 записывается с регистра 18 через блок элементов И 19, блок элементов ИЛИ 13 и формирователь 1 адреса. Если сбой происходит при считывании микрокоманды второго типа и информация в поле 7 регистра 5 не искажена, то адрес контрольной точки в регистр 2 записывается с поля 7 регистра 5 через блок элементов И 14 и блок элементов ИЛИ 13 в регистр 2. Если сбой происходит при считывании микрокоманды третьего типа либо при считывании микрокоманды второго типа (информация в поле 7 регистра 5 при считывании этих микрокоманд искажена), то адрес контроль ïÀ точки в регистр 2 записывается

1 056193

15 с регистра 18 через блок элементов И 19, блок элементов ИЛИ 13 и формирователь 1.

С приходом очередного тактового .импульса с, выхода генератора 16 тактовых импульсов из блока 4 памяти микрокоманд считывается микрокоманда

: контрольной точки и поступает в ре: гистр 5. Одновременно этот импульс 10 через элемент И 27 поступает на счетный вход счетчика 35 и увеличивает его содержимое на единицу. При этом единичный сигнал на первом выходе деШиФратора 36,исчезает. В процессе повторного считывания микрокоманд устройство функционирует аналогично алгоритму. При каждом считывании микрокоманд содержимое счетчика 35 увеличивается на единицу. 20

Если при повторном считывании искаженной микрокоманды сбой не возникает (на выходе 44 блока 29 контроля сигнал отсутствует) и при этом число повторов меньше критического (сигнал на втором выходе дешифратора 36 отсутствует, то на выходе элемента- И 34 появляется единичный сигнал, так как элемент И 34 открыт по всем входам. Этим сигналом триггер 32 и счетчик 35 обнуляются. Далее устройство Формирует аналогично алгоритму очередные микрокоманды микропрограммы.

16

Если же после критического числа гювторов сбой микрокоманды не исчезает, то содержимое счетчика 35 становится равным критическому. При этом на втором выходе дешифратора 36 гюявляется единичный сигнал, соответствующий Факту отказа устройства. Этот сигнал поступает на выход 38 устройства и через элемент ИЛИ 33 устанавливает в нулевое состояние триггер 15, При этом генератор 16 тактовых импульсов прекращает выдачу тактовых импульсов и устройство переходит в состояние отказа.

После восстановления отказа устройство функционирует аналогично.

При считывании последней микрокоманды микропрограммы на выходе 31 конца микропрограммы появляется единичный сигнал. Этот сигнал обнуляет регистр 18 и через элемент ИЛИ 13триггер 15. При поступлении очеред" ного кода операции на входы 3 уст" ройства оно функционирует аналогичнс алгоритму., При использовании предлагаемого устройства существенно (на 703) уменьшается время восстановления сбоев путем формирования адреса первой микрокоманды повторяемого участ" ка микропрограммы в зависимости от характера микрокоманды, при выполнении которой происходит сбой, и места сбоя в ее формате.

1056)gg

1056193

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

Редактор А, Коэориз Техред С.Легеза Корректор А. Зимокосов

Заказ 9308/43 Тираж 70б Подписное

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

11 ОД Москва Ж-3 Ра шская наб.д g, 4/5

Филиал ППП "Патент", г.ужгород, ул. Проектная, ч

Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях Устройство для управления восстановлением микропрограмм при сбоях 

 

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