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

Иллюстрации

Показать все

Реферат

 

Союз Советснин

Социапистичесних

Респубпии

ОП ИСАЙ ИЕ

ИЗОВРЕТЕ Н ИЯ

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

<«985789 (51) Лополннтельное к авт. спид-ву

<я>м. кл. (22) Заявлено 15. 07. 81 (21) 3318130/18-2Ь с присоединением заявки № (23) Приоритет

G 06 F 9/22

G 06 F 11/16

3Ьоударстеснный квинтет но делам изобретений н открытий

Опубликовано 30. 12. 82. Бюллетень,% "8

Дата опубликования описания 30. 12. 82 (53) УДК 681. 3 (088. 8) В.А.Колосков, Г.П.Колоскова и А.П.Типикиц (72) Авторы изобретения (71) Заявитель

Курский политехнический институт (g4) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ

С ИСПРАВЛЕНИЕМ ОШИБОК

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

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

При считывании из памяти адреса

15 некоторых микрокоманд запоминается точки возврата на регистр адреса пов тора. Повторное считывание и выполнение микропрограммы с точки воз20 врата пооизводится при обнаружении ошибки схемо, контроля. Классификация выявленной ошибки как постоян.— ной производится после фиксирован2 ного числа повторений одинаково для всех повторяемых участков (1 ).

Недостатком данного устройства является отсутствие возможности изменения числа повторов различных микрокоманд с целью достижения максимальной исправляющей способности каждого отдельного повторяемого участка. Кроме того, в устройстве не предусматривается исправление случайных ошибок, пропущенных схемой контроля, Известен также микропрограммный процессор с восстановлением при сбоях, содержащий арифметикологический блок, блок управления, блок регистров, память микрокоманд, регистры адреса и микрокоманд, ОЗУ, блок контроля, счетчик сбоев, регистр адреса повтора, входную и выходную магистрали, группы элементов И (2 ).

Недостатком устройст ва является то, что при обнаружении ошибки производится повторное выполнение ошибоч985?89 ной микрокоманды. 4исло повторений при ошибке определяется разрядностью счетчика сбоев и не изменяется при переходе от микрокоманды к микрокоманде, исходя из реального времени обработки на их выполнение. При этом сбои, длительность которых превышает время повторных выполнений микрокоманд, фиксируются как отка" û. .Наличие в ряде случаев резерва време- 10 ни, в течение которого можно было бы устранить влияние обнаруженных блоком контроля сбоев, а также исправить и необнаруженные сбои в данном устройстве не используетая. 15

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

И 33/.

8 отличие от рассмотренных выше устройств в прототипе в качестве критерия различения сбоя от отказа используется безошибочное выполнение участка микропрограммы хотя бы один раз не на заданном числе повторов, а на заданном промежутке времени. При этом максимально используется резерв времени, который остается для ряда участков микропрограмм после фиксированного числа повторов этих участков с тем, чтобы увеличить число повторных вычислений и уменьшить вероятность ложной интерпретации сбоя или Ц) отказа, Однако при этом исправляются лишь те ошибки, которые были обнаружены блоком контроля, несмотря на то, что результатами сбоя может быть значительное число ошибок в ходе выполнения. микропрограмм (например лож45 ные переходы на новые участки микропрограмм ), которые пропускаются апнаратурой контроля. Увеличение обнаруживающей способности схем контроля известными методами потребует значительных аппаратурных затрат и не дает эффективного решения.

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

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

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

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

985789 блока свертки по модулю два, второй выход информационного регистра соединен с первыми входами первого и второго элементов И, вторые входы которых соединены соответственно с перBblM и вторым выходами второго блока свертки по модулю Два, выходы первого и второго элементов И соединены соответственно с вторым входом четвертого блока элементов И и первым 16 управляющим входом счетчика времени, выход генератора импульсов и четвертого блока элементов И соединены соответственно со счетным и вторым управляющим входами счетчика времени, !5 выход которого является выходом устройства и через первый элемент НЕ соединен с вторым входом третьего блока элементов И, введены третий элемент И, элемент ИЛИ и второй элемент 20

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

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

В его состав входят блок 1 памяти микрокоманд, регистр 2 микроко- 4в манд, регистр 3 адреса, блок 4 ассоциативной памяти, информационный регистр . 5, регистр 6 адреса повтора, блоки 7-10 элементов И, элементы И 11-13, элемент ИЛИ 14, первый 15 и второй 16 45 блоки сверток по модулю два, первый

17 и второй l8 элементы НЕ, счетчик

19 времени и генератор 20 импульсов.

Блок 1 памяти микрокоманд пред50 назначен для хранения рабочих микропрограмм, предварительно разбитых на повторяемые участки. Блок 4 ассациативной памяти хранит допустимые интервалы времени обработки каждого из участков, выбираемые из нее на инфор55 мационный регистр 5 по признаку адреса последней микрокоманды повторяемого участка и заносимые s счетчик

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

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

Перед записью в память микрокоманд на каждом повторяемом участке выделяют циклические фрагменты (из одной или нескольких микрокоманд) и в местах зацикливания вместо связей к ранее пройденным микрокомандам предусматривают переход к специально введенной микрокоманде, указывающей на циклический характер микропрограммы и позволяющей перейти к микрокоманде, адрес которой указан в регистре 6 адреса повтора. Независимо от числа циклов вводят одну дополнительную микрокоманду на всю микропрограмму и при формировании на регистре 3 адреса номера (или адреса) этой микрокоманды на выходе регистра

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

Сигналы на выходах блока 1g и 16 соответствуют безошибочной работе блока 1 памяти микрокоманд и правильному считыванию из блока 4 ассоциативной памяти кода интервала времени.

При ошибке в работе блока 1 памяти микрокоманд и неправильном считывании кода допустимого времени обработки участка из блока 4 ассоциативной памяти на выходах блоков 15 и 16 вырабатываются соответственно сигналы наличия ошибки в работе блоков

1 и 4. .Перед началом выполнения очередного участка микропрограммы (параллельно выполнению .последней микрокоманды предыдущего участка ) на выходе информационного регистра 5 блока 4 ассоциативной памяти появляется сигнал считывания, свидетельствующий о наличии на выходе информации допустимого времени обработки участ ка. При правильном считывании времени обработки участка из блока 4 ассоциативной памяти (сигнал на выходе блока 16 1 производится передача адреса начала повторных вычислений на регистр 6 адреса повтора и начальная установка счетчика 19 времени на отсчет интервала времени„ характерного для данного участка.

Если в момент перехода к очередному участку микропрограммы интервал

985789 времени «В- блока ч ассоциативной памяти считан неверно (сигнал на выходе блока 16 ), то в счетчика 19 времени подачей сигнала на установочный вход счетчика устанавливается минимальный резерв времени обработки, характерный для микропрограммы и используемый в качестве начальной установки, а в регистре 6 адреса повтора записывается адрес точки воз- IG врата. При установке минимального (постоянного для всей микропрограммы) резерва времени устройство не теряет способности к восстановлению и при обнаружении ошибки повторяемые iÁ вычисления проводятся в пределах втога времени.

При реализации рабочей микропрограммы адрес очередно" микрокоманды поступает из регистра 2 микрокоманд N на регистр ) адреса только при отсутствии ошибки в блоке 1 и Отсутствии режима циклического повтора, о чем свидетельствуе г единичный сигнал на выходе 1) элемента И. g$

При обнаружении ошибки в процессе выполнения участка микропрограммы (сигнал на выходе блока 1 ), если не исчерпан запас времени:- а участок, ppoè3BîäèTñë перезапуcK микоопрограм- О мь, с начала участка. Адрес налача участка передается на регистр 3 адреcd из регистра б адреса повтора.

Повторные выполнения прекращаются пр,:1 Оезошибочном исполнении участ-З

:;:;= микропрограммы от начала до конца, либо -,,ðè появлении сигнала об окон чании запаса времени на втором выходе счег-. ка !9 времени, Сигнал Отказа зырабатывсетсл в i cÒpoécTBB при ОкОн —;В -цанин -агаса рсмени на участок при гереполнении =четчика 19 времени.

Я случае попадания B циклы(наличие сигнBilB на выходе регистра 5 ) даже при отсутствии сигнала об ошибке производится перезапуск микропрограммы с начала участка.

Повторное выполнение микропрограммы с последней точки повтора поз56 вол. ет возобновить результат. Если до пспацания в цикл блоком 15 была зафи« lpc BHB Ошибка TG в известных устрОйствах 3То привОдило к неправиль ной реализа илии микропрограммы При»

Ы нудительный возврат в HB 4BEto по содержимому регистра 6 при попадам,и в цикл позволяет B предлагаемом устройстве MLI равить cil чайную Ошибку (без ее Обнаружения ) путем обновления результата.

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

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

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

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

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

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

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

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

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

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

1. Патент Франции N 2065898, кл. G. 06 F 11/00, опублик. 1971.

2. Авторское свидетельство СССР и 470806, кл. 6 06 F 11/00, 1975.

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

М 741267, -кл. G 06 F 9/14, 1978 (прототип) .

9%789

Заказ 10166/69

Тираж 731 Подписное

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

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

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

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

Редактор Н. Стащишина Техред Л,Пекарь Корректор Г. Решетник