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

Номер патента: 1056193

Авторы: Благодарный, Тимонькин, Ткаченко, Харченко

Есть еще 3 страницы.

Смотреть все страницы или скачать ZIP архив

Текст

СОЮЗ СОВЕТСКИХСОЦИАЛИСТИЧЕСКИРЕСПУБЛИН шо 06 Е 9 О 2 С 1 00 ГОСУД ПО ДЕ ИЗОБРЕТЕВИДЕТЕЛЬСТВУ(21) 3 (22) 2 4 2 годако ТВЕННЫЙ НОМИТЕТ СССМ ИЗОБРЕТЕНИЙ И ОТКРЫТ ОПИСАНИЕ Н АВТОРСКОМУ С 486366/18-244,08.82(56) 1, Авторское свидетельство СССР К 741267, кл. ,1 06 Г 9/22, 1980.2 Авторское свидетельство СССР по заявке я 3310256/18-24, 02.07.81,3. Авторское свидетельство СССР Н 470806, кл. С 06 Г 9/22, 1975 (прототип).(54)(57) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ ВОССТАНОВЛЕНИЕМ МИКРОИРОГРАММ ПРИ СБОЯХ, содержащее блок памяти микро- команд, блок контроля, регистр микро- команд, регистр адреса микрокоманд, регистр адреса возврата, счетчик чисЛа сбоев, дешифратор, первый, второй и третий блоки элементов И, генератор тактовых импульсов, триггер пуска, Формирователь адреса, причем входы кода операций устройства соединены с первой группой входов регистра адреса мцкрокоманд, выходы регистра адреса мцкрокоманд соединены с адресными, входами блока памяти микро- команд, выходы которого соединены с входами регистра микрокоманд, выходы полей базового адреса, кода проверяемого логического условия, микро- операций регистра микрокоманд соединены с группой входов блока контроля, выходы счетчика числа сбоев соединены с входами дешифратора, выходы фор-, мцрогателя адреса - с входами модифицированной части адреса второй группы входов регистра адреса микрокоманд, выходы поля микроопераций регистра мцкрокоманд - с выходами микооопераций устройства, выход генератора тактовых импульсов соединен с входом счцтыванця блока памяти микрокоманд, вход пуска устройства соединен с единичным входом триггера пуска, о тл и ч а ю щ е е с я тем, что, с целью повышения быстродействия, в уст" ройство введены регистр адреса сбоя, схема сравнения, элемент задержки, одновцбратор, триггер сбоя, первый, второй, третий и четвертый элементы И, первый, второй и третий элементы ИЛИ, четвертый блок элементов И и блок элементов ИЛИ, причем выходы поля базового адреса регистра микро- команд соединены с информационными . се входамц первого блока элементов И, выходы которого соединены с первой группой входов блока элементов ИЛИ, выходы немодифццируемой части адреса которого соединены. с входами немодиФиццруемой части адреса второй группы входов регистра адреса, выходы модифцццруемой части адреса блока элементов ИЛИ соединены с первой группой входов Формирователя адреса выходы поля кода проверяемого логического ус. ловця регистра микрокоманд - с первымц информационными входами второго блока элементов И, с информационными входамц третьего блока элементов И и с инФормационными входами регистра ад" реса возврата, выходы второго блока элементов И соединены с второй груп" пой входов Формирователя адреса, вы- ,Ьф ход поля первой метки регистра микро- команд соединен с первым управляющим входом вт; рого блока элементов И, первым входом первого элемента ИЛИ, вы" ход которого соединен с первым входом блока контроля, с первым входомТ Подписнокомитета СССРи открытийкая наб,д д, М 5д, ул. Проектная,ЦВ О венногоретений РаУ оал жго л Редактор А Заказ 9308 СостаКоэориз Текле ИПИ Государс по делам изоМосква ЖПП "Патент",ель И. Си1061 второго элемента ИЛИ, выход которого соединен с первыми управляющими входами третьего и четвертого блоков элементов И, выход поля второй метки регистра микрокоманд соединен с вторым входом первого элемента ИЛИ и первым входом первого элемента И, выход которого соединен с входом синхронизации регистра адреса возврата, выходы которого соединены с информационными входами четвертого блока элементов И, выходы четвертого блока элементов И соединены с второй группой входов блока элементов ИЛИ, первый выход блока контроля соединен с вторым управляющим входом второго блока элементов И и первым управляющим входом первого Ьлока элементов И, второй выход блока контроля соединен с вторыми управляющими входами третьего и четвертого блоков элементов И, единичным входом триггера сбоя, первыми входами второго и третьего элемен" тов И,третий выход блока контроля соединен с вторым входом первого элемента И, четвертый выход блока контроля соединен с вторым входом второго элемента ИЛИ, выход конца микропрограммы группы выходов микроопераций устройства соединен с нулевым вхо дом регистра адреса возврата и первым входом третьего элемента ИЛИ, вы" ход которого соединен с нулевым входом триггера пуска, прямой выход которого соединен с входом пуска генератора тактовых импульсов, первый выход дешифратора - с вторым входом второго элемента И, второй выход дешифратора " 93с вторым управляющим входом третьегоэлемента И, вторым входом третьегоэлемента ИЛИ и выходом отказа устрой"ства, выход третьего элемента И соединен с нулевым входом счетчика сбоеви нулевым входом триггера сбоя, пря-,мой выход которого соединен с первым .входом четвертого элемента И, выходкоторого соединен с счетным входомсчетчика числа сбоев, выход второгоэлемента И соединен через одновибратор с входом синхронизации регистраадреса сбоя, выходы которого соединены с первой группой входов схемысравнения, вторая группа входовкоторой соединена с выходами регистраадреса микрокоманд и информационнымивходами регистра адреса сбоя, выходсхемы сравнения соединен с третьимвходом третьего элемента И, вход элемента задержки - с вторым входом четвертого элемента И и выходом генератора тактовых импульсов, выход элемента задержки соединен с четвертымвходом третьего элемента И, вторымуправляющим входом первого блока элементов И и третьим управляющим вхо-,дом второго блока элементов И, входы.кода операции устройства соединены сасинхронными информационными входами регистра адреса возврата, входылогических условий устройствасоединены с вторыми информационными входами второго блокаэлементов И, выходы третьегоблока элементов И соединены стретьей группой входов блока элементов ИЛИ, Изобретение относится к автоматике и вычислительной технике и может быть использовано при проектировании микропрограммных процессоров с высокой оперативностью восстановле" 5 ния сбоев. Известно микропрограммное устройство управления с восстановлением при сбоях, содержащее блок памяти микро".1 О команд, регистр микрокоманд, регистр адреса, Ьлок контроля, Ьлок элементов И, формирователь адреса 1Недостатком этого устройства является большая временная избыточность, обусловленная тем, что независимо от места возникновения сбоя при выполнении заданной микропрограммы восстановление микропрограммы осуществляет" ся только с фиксированной ее точки.Известно также устройство контроля и восстановления микропрограмм процессора, содержащее регистр адреса, блок памяти микрокоманд, регистр микрокоманд, буферные регистры, элементы И, ИЛИ, счетчик и триггеры 21,109 Ь3Недостатками изи.стного устройства являются низкая оперзтионость восстановления и большая сложность устройства, обусловленные наличием специального блока анализа, определяющего возможность восстановления микропрограммы путем повтора либо линейной последовательности, либо повторавсей микропрограммы.Наиболее близким по технической 10сущности и достигаемому положительному эффекту к изобретению являетсяустройство для управления восстановлением при сбоях, содержащее блок памяти микрокоманд, блок контроля, регистр адреса микрокоманд, регистр микрокоманд, регистр адреса возврата,счетчик числа сбоев, дешифратор, первый, второй и третий блоки элементов И, генератор тактовых импульсов,триггер пуска, Формирователь адреса,причем входы кода операций устройствасоединены с первой группой входов регистра адреса микрокоманд, выходы регистра адреса микрокоманд соединеныс адресными входами блока памяти микрокоманд, выходы которого соединеныс входами регистра микрокоманд, выходыполей базового адреса, кода проверяемого логического условия, микроопераций регистра микрокоманд - сгруппой входов Ьлока контроля, выходысчетчика - с входами дешифратора, выходы формирователя адреса - с входами модифицированной части адреса второй группы входов регистра адреса мик,35рокоманд, выходы поля микроопераций. регистра микрокоманд соединены с выходами микроопераций устройства, выходгенератора тактовых импульсов - с вхо 40дом считывания блока памяти микрокоманд ЗДНедостатком известного устройстваявляется большое время восстановлениясбоев, обусловленное отсутствием анализа места возникновения сбоя при вы 45полнении микропрограммы,В известном устройстве устранениесбоев осуществляется следующим образом,Если повторное считывание искажен50ной микрокоманды не вызывает искажения обрабатываемой информации, тосбой ( -ой микрокоманды устраняетсяпутем ее повтора, который производится не более Рз раз , Если повторное 55считывание искаженной микрокоманды искажает оЬрабатываемую информацию, тосбой-ой микрокоманды устраняется пу 193тем повтора осей 1 -ой микропрограммы, Если после т повторных считываний микрокоманды или прогонов микропрограммы сбой не исчезает, то фиксируется отказ устройства, включается диагностическая процедура и локализируется место возникновения отказа устрой"стоа,Цель изобретения - повышение быстродействия устройства,теПоставленная цель достигается тем,что в устройство для управления восстаноолением икропрограмм при сбоях, содержащее блок памяти микрокоманд, блок контроля, регистр адреса микро- команд, регистр микрокоманд, регистр адреса возврата, счетчик числа сбоев, дешифратор, первый, второй и третий блоки элементов И, генератор тактовых импульсов, триггер пуска, Формирователь адреса, причем входы кода операций устройства соединены с первой группой входов регистра адреса микро- команд, выходн регистра адреса микро- команд соединены с адресннми входами блока памяти микрокоманд выходы которого соединены с входами регистра микрокоманд, выходы полей базового адреса кода проверяемого логического условия, микроопераций регистрамикрокоманд соединены с группой входов Ьлока контроля, выходы счетчика числа сбоев соединены с входами дешифратора, выходы Формирователя адреса - с входами модифицированной части адреса второй группы входов регистра адреса микрокомад выходы поля микроопераций регистра микрокоманд - с выходами микроопераций устройстеа, выход генератора тактовых импульсов соединен с входом считывания блокз памяти микрокоманд вход пуска устройства соединен с единичным входом триггера пуска, дополнительно введены регистр адреса сбоя, схема сравнения, элемент задержки, одновибратор, триггер сбоя, первый, второй, третий и четвертый элементы И, первый, второй и третий элементы ИЛИ, четвертый блок элеМентов И, блок элементов ИЛИ, причем выходы поля базового адреса регистра микрокоманд соединены с информацион-. ными входами первого блока элементов Ивыходы которого соединены с первой группой входов блока элементов ,ИЛИ, выходы немодифицируемой части адреса которого соединены с вход,з и немздиФицируемои части адреса второи105613группы входов регистра адреса, выходы ,лодиФицируемой части адреса блока эле" ментов ИЛИ соединены с первой группой входов Формирователя адреса, выходы поля кода проверяемого логического 5 условия регистра микрокоманд соедине" ны с первыми информационными входами второго блока элементов И, с инФормационными входами третьего блока элементов И и с информационными 10 входами регистра адреса возврата, выходы второго блока элементов И соединены с второй группой входов Фор -. мирователя адреса, выход поля первой -метки регистра микрокоманд соединен с 15 ,первым управляющим входом второго блока элементов И, первым входом пер вого элемента ИЛИ, выход которого соединен с первым входом блока контроля, с первым входом второго элемента ИЛИ,2 О выход которого соединен с первыми управляющими входами третьего и четвертого блоков элементов И, выход поля второй метки регистра кикрокоманд соединен с вторым входомпервого элемен та ИЛИ и первым входом первого элемента И, выход которого соединен с входом синхронизации регистра адреса возврата выходы которого соединены с информационными входами четвертого блока элементов И,выходы четвертого блока элементов И соединены с второй группой входов блока элементов ИЛИ, первый выход блока контроля соединен с вторым управляющим входом второго блока эле 35 ментов И и первым управляющим входом первого блока элементов И, второй выход блока контроля соединен с вторыми управляющими входами третьего и четвертого блоков элементов И, единичным входом триггера сбоя, первыми входами второго и третьего элементов И, третий выход блока контроля соединен;.с вторым входом первого элемента И, четвертый выход блока контроля соеди 45 нен с вторым входом второго элемента ИЛИ, выход конца микропрограммы группы выходов микроопераций устройства соединен с нулевым входом регистра адреса возврата и первым входом третьего элемента ИЛИ, выход которого соединен с нулевым входом триггера пуска, прямой выход которого соединен с входом пуска генератора тактовых импульсов, первый выход дешифраторас вторым входом второго элемента И, 55 второй выход дешифратора - с вторым управляющим входом третьего элемента И, вторым входом третье о элемен 93,та ИЛИ и выходом отказа устройства, выход третьего элемента И соединен с ,нулевым входом счетчика числа сбоев и нулевым входом триггера сбоя, прямой выход котьрого соединен с первым входом четвертого элемента И, выход которого соединен со счетным входом счетчика числа сбоев, выход второго элемента И соединен через одновибратор с входом синхронизации регистра адреса сбоя, выходы которого соедине"ны с первой группой входов схемы срав.нения,вторая группа входов которой соединена с выходами регистра адреса микрокоманд и информационными Входами регистра адреса сбоя, выход схемы сравнения соединен с третьим входом третьего элемента И, вход элемента задержки - с вторым входом четвертщ го элемента И и выходом генератора тактовых импульсов, выход элемента задержки соединен с четвертым входом третьего элемента И, вторым управляющим входом первого блока элементов И и третьим управляющим входом второго блока элементов И, входы кода опера". ции устройства соединены с асинхронными информационными входами регистра адреса возврата, входы логических условий устройства соединены с вторыми информационными входами второго блока элементов И, выходы третьего блока элементов И соединены с третьей группой входов блока элементов ИЛИ,Сущность изобретения состоит в повышении быстродействия путем формирования адреса первой микрокоманды повторяемого участка в зависимости от точки микропрограммы, в которой произошел сбой, и места сбоя в Формате микрокоманды.При сбоях микрокоманд, которые нельзя устранить их повторным считыванием, необходимо повторно прогонять не всю микропрограмму, а только ее отдельный участок, начиная с ближайшей контрольной точки. Под контрольными точками понимаются те микро- команды, при повторном считывании которых, а также следующих за ниии мик" рокоманд повторяемого участка микропрограммы обрабатываемая в управля" емом объекте информация не будет искажена.Формат микрокоманд обычно состоитиз поля базового адреса очередной микрокоманды, поля кода проверяемого логического условия и поля микроопераций. Так как в поле логических условий полезная инФормация записанатолько в микрокоиандах ветвления, тоэто поле в предлагаемом устройствеиспользуется для записи адреса контрольной точки, к которой необходимовозвратиться при неправильном считывании текущей микрокоманды, В данномслучае, если адрес контрольной точкиравен адресу текущей микрокоманды,происходит ее повторное считывание,Для идентиФикации инФормации, записанной в поле логических условий, вФормат микрокоманды введено полепервой метки. Единичное значение это,го поля соответствует тому,что в поле .логических условий записан код про"веряемого логического условия, нулевое значение поля соответствует ситуации, когда в поле логических условийзаписан адрес контрольной точки.20Так как сбой может возникнуть присчитывании микрокоманды ветвления,то для нее также необходимо хранитьадрес контрольной точки, С этой целью в Формат микрокоманды введеноеще одно поле - поле второй метки,Единичное значение метки в этом полесвидетельствует о том, что в поле проверяемого логического условия Форматамикрокоманды записан код адреса контрольной точки, к которой необходимообратиться при считывании со сбоеммикрокоманды ветвления,Таким образом, в предлагаемомустройстве считываемые из блока памяти микрокоманд микрокоманды состоят 35из первого поля кода базового адресаочередной микрокоманды; второго полякода проверяемого логического услоена адреса контрольной тонкн), третьего поля первой метки, четвертого 40поля второй метки и пятого полямикрооперации,Если при считывании микрокоманд возникает сбой, то в следующем такте считывается микрокоманда ее контроль,ной точки. В очередных тактах считываются следующие за ней микрокоманды повторяющегося участка микрокоманд." мы. Если при повторном считывании мик рокоманды (при пеовом считывании ко тЬрой происходит сбой) сбой не возникает, то выполнение микропрограммы продолжается. В противном случае производится повторное обращение к контрольной точке. Если в течение крити" 55 ческого числа повторений сбой не исчезает, то идентиФицируется отказ усту .Ройства.Если при считывании микропрограммы возникает сбой только во втором поле Формата микрокоманды и микроко" манда не является микрокомандой ветвления, то обращения к контрольной точке не производится и продолжается дальнейшее выполнение микропрограммы, Иаскирование таких сбоев при Формировании микрокоманд, т.е. отказ от возврата к контрольной точке, позволяет повысить быстродействие устройства.Таким образом, в предлагаемом устройстве реализуется "плавающая" контрольная точка, возврат к которой определяется точкой возникновения сбоя в микропрограмме. Это позволяет при каждом сбое Формировать минимальный участок повтора.На Фиг. 1 приведена Функциональнаясхема предлагаемого устройства для уп.равления восстановлением микропрог"рамм при сбоях; на Фиг, 2 " Функциональная схема блока контроля.Устройство для управления восстановлением микропрограмм при сбоях(Фиг. 1) содержит Формирователь 1 адреса, регистР 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 служит для хранения кода адреса очередной микрокоманды. В блоке 4 памяти микрокоманд хранятся микрокоманды, Формируемые устройством.Устройство Формирует микрокоманды трех типов. К первому типу относятся микрокоманды, в поля 7 кода проверяемого логического условия которых за- о писан код контрольной точки, к которой необходимо возвратиться при считывании данной микрокоманды со сбоем а в полях первой 8 и второй 9 меток записан нулевой код. К второму типу относятся иикрокоманды, в поле 7 кода проверяемого логического условия которых записан адрес контрольной точки, к которой необходимо обратиться при считывании со сбоем данной микро- команды либо микрокоманды ветвления, выполняемой после данной микро- команды, в поле 8 первой метки запи- . сан нулевой код, а в поле 9 второй метки " единичный код. К третьему типу микрокоманд относятся микрокоманды ветвления, в поле 7 этих микрокоманд записан код проверяемого логического условия, в поле 8 первой метки - единичный код, в поле 9 второй метки " нулевой код.Регистр 5 предназначен для хранения кода считанной микрокоманды и выдачи ее на блок 29 контроля, выходы 30 микроопераций устройства, на блоки элементов И 12 и 14. Блок элементов И 12 служит для выдачи при правильном считывании микрокоманды кода базового адреса очередной микрокоман-. ды через блок элементов ИЛИ 13 на Формирователь 1 адреса и регистр 2. Блок элементов И 1 М предназначен для проверки сигналов логических условий, поступаоцих на входы 11.устройства, кодами логических условий с поля 7 регистра 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 навремя сцитывания микрокоманды из блока 4 памяти микрокоманд, записи ее. врегистр 5 и проверки на неискаженность в блоке 29 контроля. Блок 29;контроля служит для проверки считываемой микрокоманды. Сумматоры 41, 1045 и 48 по модулю два проверяют поступающую на их входы информацию, Если информация записана в регистре 5без искажений, то на выходе соответствующего сумматора 41 (45 и 48) помодулю два сигнал отсутствует,Блок.29 контроля Функционируетследующим образом.Контроль микрокоманд первого типа,Если микрокоманда считана из блока 4 памяти в регистр 5 без искажений то сигналы на выходах сумматоров по модулю два отсутствуют. Навход 50 блока 29 контроля поступаютнулевые сигналы, При этом на выходе 40 блка контроля появляется единичный сигнал, соответствующий Фактуправильного считывания микрокоманд,На выходе 44 сигнал отсутствует (единичное значение сигнала на этом выходе соответствует считыванию микрокоманды со сбоем), Если микрокоманда первого типа считана со сбоем исбой происходит в полях 6 или 10, тона выходе сумматора 41 или 45 по модулю два появляется единичный сигнал При этом единичный сигнал навыходе 40 блока 29 контроля исчезает,а на выходе 44 появляется. Если сбойпроисходит в поле 7 при считываниимикрокоманды первого типа, то на выходе сумматора 48 по модулю два появляется единичный сигнал, Так как навход 50 поступают нулевые сигналы, тона выходе 40 будет оставаться единичный сигнал. Если сбой происходит 45одновременно в полях 6 и (или) 10 и 7считанной микрокоманды, то на выходы 44, 47 и 52 блока контроля поступают единичные сигналыКонтроль микрокоманд второго типа.50При считывании в регистр 5 микро- команд второго типа на вход 50 блока 29 контроля поступает единичный сигнал. При возникновении сбоя в микрокоманде в попях 6 и 10 или одновре минно в полях 6, 7 и 10 блок 29 конт" роля функционирует аналогично обработке этих сбоев при считывании микроко 93 12манд первого типа, Если сбой возниктолько в поле 7, то на выходе сумматора 48 по модулю два появляется единичный сигнал. При этом единичныйсигнал на выходе 40 блока 29 контроля исчезает, а на выходах 44 и 52 появляется (единичное значение сигнала на выходе 52 запрещает перезаписьинФормации с поля 7 регистра 5 в регистр 181,Контроль микрокоманд третьего типа.При считывании микрокоманд третьего типа в регистр 5 на входе 50блока 29 контроля присутствует единичный сигнал. Если сбой возник в полях 6, 7 и 10, то на выходах соответ"ствующих сумматоров 41, 45 и 48 по модулю два появляются единичные сигналы, При этом на выходе 40 единичныйсигнал исчезает, а на выходах 44, 47и 52 появляется, При правильном считывании микрокоманды третьего типазначения сигналов на выходах 40;44, 47 и 52 аналогичны их значениямпри правильном считывании микрокоманд,первого и второго типов. Элемент ИЛИ 33служит для Формирования сигнала обнуления триггера 15, триггер 32 служит для идентификации режима работыустройства. При нулевом состояниитриггера 32 устройство находится врежиме выполнения микропрограммы,при единичном состоянии триггера 32в режиме восстановления сбоя. Элемент И 34 предназначен для Формирования сигнала, соответствующего фактуустранения сбоя в считываемой микрокоманде.Устройство для управления восстановлением микропрограмм при сбояхФункционирует следующим образом,Перед началом функционированиятриггеры 15 и 32, регистры. 2, 21, 18и 5 и счетчик 35. устанавливаются в1нулевое состояние входы их обнуления условно не показаны), На входы 3 устройства поступает код операции и записывается в регистры 2 и 18.Одновременно с этим на вход 37 поступает сигнал начала выполнения микропрограммы (сигналы на выходы 3 ивход 37 устройства могут посту атьнапример, от центрального устройства управления, ЭВИ). При этом триггер 15 устанавливается в единичноесостояние и включает генератор 16тактовых импульсов. Тактовые импульсы с выхода генератора 16 поступа"1056193 13ют на вход считывания блока 4 памяти микрокоманд. С поступлением первого тактового импульса по коду адреса микрокоманды, поступающему с регистра 2 на адресные входы блока 4 памяти микрокоманд, с последнего считывания поступает первая микро-. команда микропрограммы и записывается в регистр 5 микрокоманды. Далее код никрокоманды с регистра 5 посту пает в блок 29 контроля, а сигналы микроопераций с поля 10 регистра 5- на выходы 30 микроопераций устройства Если микрокоманда является микрокомандой первого типа и считана без сбоев, то на первом выходе 40 блока 29 контроля появляется единиц" ный сигнал.При поступлении импульса с выхода элемента 28 задержки блок элементов И 12 оказывается открытым по управляющим входам и базовый адрес очередной микрокоманды с поля 6 регистра 5 поступает на блок элементов ИЛИ 13 и с его выходов - на Формирователь 1 адреса и регистр 2 адреса. При этом модифицируемая часть базового адреса проходит на входы модифи" . цированной части адреса второй группы входов регистра 2 через Формирователь 1 адреса, а немодифицируемая часть базового адреса с блока элементов ИЛИ 13 поступает на входы немоди" фицированной части адреса второй группы входов регистра 2 непосредственно.С приходом на вход считывания блока 4 памяти микрокоманд очередного импульса с выхода генератора 16 из блока 4 памяти микрокоманд считывается оче" редная микрокоманда в соответствии с адресом, записанным в регистре 2.40Если считываемая микрокоманда является микрокомандой второго типа и ,считана из блока 4 памяти микрокоманд в регистр 5 правильно, то сигналымикроопераций с поля 10 регистра поступают на выходы 30 устройства, базовый адрес очередной микрокоманды споля 6 регистра 5 поступает через блок элементов И 12 на блок элементов ИЛИ 13, адрес контрольной точки 50 с поля 7 регистра 5 записывается в регистр 18, открытый по входу синхронизации единичным сигналом с выхода элемента И 23. Элемент И 23 при этом открыт,так как на него поступают еди ничный сигнал с поля 9 регистра 5 и нулевой сигнал с выхода 52 блока 29 контроля. 14Далее устройство Функционирует аналогично алгоритму при Формировании мик. рокоманд первого типаЕсли считываемая микрокоманда является микрокомандой третьего типа и считана без искажений, то сигналы микроопераций с поля 10 регистра 5 поступают на выходы 30 микроопераций уст" ройства, код базового адреса с поля 6 регистра 5 поступает через блок элементов И 12 на блок элементов ИЛИ 13, код проверяемого логического условия с поля 7 регистра 5 - на блок элементов И 14, где проверяет значения сигналов логических условий, поступающих на входы 11 устройства. Сигналы, соответствующие результатам проверки логических условий, с выходов блока элементов И 14 поступают на формирователь 1 адреса, где складываются по модулю два с модифицируемой частью адреса очередной микрокоманды, поступающей на формирователь 1 с блока элементов ИЛИ 13Далее устройство функционирует аналогично алгоритму функционирования при выполненяи микрокоманд первого и второго типов.Если при считывании очередной микрокоманды происходит сбой, то на выходе 44 блока 29 контроля появляется единичный сигнал, При этом регистр 21 открывается по входу синхронизации и в него записывается с регистра 2 адрес считанной со сбоем микрокоманды. В регистр 2 в зависимости от типа микрокоманды, при считйвании которой происходит сбой, записывается адрес контрольной точки либо с поля 7 регистра 5, либо с регистра 18. Если сбой происходит при считывании микро- команды первого типа, то адрес контрольной точки в регистр 2 записывается с регистра 18 через блок элементов И 19, блок элементов ИЛИ 13 и Формирователь 1 адреса. Если сбой происходит при считывании микрокоманды второго типа и информация в поле 7 регистра 5 не искажена, то адрес контрольной точки в регистр 2 записывается с. поля 7 регистра 5 через блок элементов И 14 и блок элементов ИЛИ 13 в регистр 2, Если сбой происходит при считывании микрокоманды третьего типа либо при считывании микрокоманды второго типа(информация в поле 7 регистра 5 при считывании этих микро- команд искажена), то адрес контрольной точки в регистр 2 записывается1 Щ 6193 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конца микропрограммы появляетсяединичный сигнал. Этот сигнал обнуляет регистр 1 ци через элемент ИЛИ 13.триггер 15. При поступлении очеред"ного кода операции на входы 3 уст"ройства оно функционирует аналогичнсалгоритму.,При использовании предлагаемого устройства существенно (на 70)уменьшается время восстановлениясбоев путем Формирования адреса первой микрокоманды повторяемого участка микропрограммы в зависимости отхарактера микрокоманды, при выполнении которой происходит сбой, и местасбоя в ее формате.

Смотреть

Заявка

3486366, 24.08.1982

ХАРЬКОВСКОЕ ВЫСШЕЕ ВОЕННОЕ КОМАНДНО-ИНЖЕНЕРНОЕ УЧИЛИЩЕ ИМ. МАРШАЛА СОВЕТСКОГО СОЮЗА КРЫЛОВА Н. И

ХАРЧЕНКО ВЯЧЕСЛАВ СЕРГЕЕВИЧ, БЛАГОДАРНЫЙ НИКОЛАЙ ПЕТРОВИЧ, ТИМОНЬКИН ГРИГОРИЙ НИКОЛАЕВИЧ, ТКАЧЕНКО СЕРГЕЙ НИКОЛАЕВИЧ

МПК / Метки

МПК: G06F 11/00, G06F 9/22

Метки: восстановлением, микропрограмм, сбоях

Опубликовано: 23.11.1983

Код ссылки

<a href="https://patents.su/11-1056193-ustrojjstvo-dlya-upravleniya-vosstanovleniem-mikroprogramm-pri-sboyakh.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для управления восстановлением микропрограмм при сбоях</a>

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