Устройство для контроля микропрограмм
Иллюстрации
Показать всеРеферат
.УСТРОЙСТВО ДЛЯ КОНТР01И. ; МИКРОПРОГРАММ , . содержащее первый- ., блок памяти, perHCTJp микрокоманд, . первый и;ВТОРОЙ триггеры.результата, триггер управления, первый, второй, третий и четвертый элементы И,, пер- ВЫЙ и второй элементы ЙЛИ, элемент задержки и блок элементов И,при« ем ВЫХОД первого элемента И соединен/ / с ВХОДОМ считывания перЕГого блока памяти, ВЫХОД которого соединен .. с ВХОДОМ регистра микрокоманд, вы- : ходы поля микроопераций и адресного поля регистра микрокоманд соединены с входами первого элемента ИЛИ, выход первого элемента задержки и ну:лёвой ВЫХОД триггера управления сое-. динены соответственнос первим и . вторым входами, второго элемента И, единичные выходы первого и второго триггеров результата соединены с первыми входами третьего и четвертого элементов И соответствеяно нулевые выходы первого и вхорог триггеров результата соединены с вторыми входами четверФого и fp&тьего элементов И соотвётетвеннй, .. рыходы которых соединены с первым и вторым входами второго элемента |ИЛИ соответственно, от ли ч a юИ её с я тем, что, с целью повы .шения надежности контроля в него .введены триггер пуска, одновибратор,- ; ,счетчик, второй и третий блоки памяти , коммутатор, пятый; шестой и седь.- : :мой -элементы :И, второй и третий .. -: .; .элементы задержки, причем вход синх:роимпул ьсов устройства и едиЙ11ЧН1 1й . V . ,ВЫХОД триггера пуска соединены со ответственно с. первым и вторьш вхо- : ;дами; пятого И, выход которо .го соединён спервыми входамц йер-; .;вого и шестого элементов И и через . первьай йвторой;, элеменч Ц) задержки v. е6 счетным вход(эм счетчика, гшкод-; . переполнения счетчика соединен со .. .счётным вх6дс л триггера управленид/- . информационные выходы счетчика соеди . яёны с ,адрееными входами; второго блр-S ка п алцтя, первыми йнформадаонными : .-.входами:.кс1ммутатора и первыми: входа:-: f/1| :г -,ми блока элементо:в И; .выходы которо- У,. .го соединены е информационными входа f /ми nepspEo блока памяти, единичный - :выход триггера управления. сое,Е йенч- g. :С первым управляющим входом , . тора ..ис вторда входом шестого ;элемей та И, йшсЬд Которого соединен с вхог дами Считывания второго и третьего/-: .блоков памяти и с входами синхррйи-зации Триггеров результата и через..,-: - третий элемент з адержки с третьими ; .входами третьего и четвертого э;лёментов И, нулевой ВЫХОД триггера -управ:Яения соединен с вторыми, входами . блока .элементов и, вторым входом пер ..Вогй элемента И, вторым упра.влякадим ;звходон; коммутатора и через одновиб-. ;ратоЕ1.- с третггюв входом второгоэлемента ИЛИ выхрд адресного поля регистра мнк-Ё(Окоманд соединен с вторш .информационным входом коммутатора, ЭБКод KoTogfoFo соединвн с адресным Входом Фретьёго блока памяти, вы- . ход второго; элемента И соединен с первым входом седьмого.элемента и не ;входами записи второго и третьего блоков памяти, выходы которых сое;дкнены соответственно с D-входами
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН
8% (И) ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБ ЕТЕНИЙ И ОТНРЫТИй
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
W ABT0PCWOMV СВИДЕТЕЛЬСТВУ
358 G 06F 11 22 21) 3412079/18-24
22) 26.03.82 (46) 07.08.83 Бюл.Р29 (72) Н.Ф. Сидоренко, Г.Н. Тимонькин, В.С. Харченко, С.Н. Ткаченко
A.Í. Першин.и Б.В.. Остроумов (53) 681.3(088.8) (56) 1. Авторское свидетельство СССР
Р 391563,:.кл.. GOSF 11/02, 1971
2. Авторское свидетельство СССР
842823, кл. Q06F 11/30, 1981, 3. Авторское свидетельство СССР по заявке У 3224689/18-24, кл. 6 06 F 11/30, 26. 12. 1980 (прототип) . (54 ) (57.) УСТРОЙСТВО ДЛЯ КОНТРОЛЯ;
МИКРОПРОГРАММ, содержащее первый блок памяти, регистр микрокоманд, первый и второй триггеры. результата," триггер управления, первый, второй, третий и четвертый элементы И,.первый и второй элементы ИЛИ, элемент задержки и блок элементов И,.причем выход первого элемента И соединен с входом считывания первого блока памяти, выход которого соединен с входом регистра микрокоманд, выходы поля микроопераций и адресного поля регистра микрокоманд соединены с входами первого элемента ИЛИ, выход первого элемента задержки и нулевой выход триггера управления сое-. динены соответственно. с первым и вторым входами второго элемента И» единичные выходы первого и второго триггеров результата соединенЫ с первыми входами третьего и четвер-. того элементов И соответственно, нулевые -выходы первого. и второго триггеров результата соединены с вторыми входами четвертого и тра тьего элементов И соответственнО, выходы которых соединены с цервым и вторым входами второго элемента
;ИЛИ соответственно, о т л и ч а ю д е е с я тем, что, с целью новы,шения надежности контроля в него
I введены триггер пуска, одновибратор, .счетчик, второй..и третий блоки памяти, коммутатор, пятый," шестой. и седь..мой элементы И, второй и.третий элементы задержки, причем вход синх:роимпульсов устройства и единичный .. выход триггера пуска соединены соответственно с-первым и вторым вхо-, дами: пятого элемента И, выход которого соединен с первыми входами йер-, вого и шестого элементов И и через первый и-второй:,элементы, задержки .со счетным входом счетчика, выход переполнения счетчика соединен со счетным входом триггера управления,ииформациаиные -выходы счетчика соеди пены с.адресными входами второго бло-Е . ка-паьщти,-первыми информационнымивходами коммутатора и первыми входа-. И
-мй блока элементов И, выходы которо- го соединены с информационными входа С ми первого блока памяти, единичный выход триггера управления соепинен Я с первым управляющим входом:коммутатора..и.втоо входом шестого элемен. та И, ВЫХОД Котсрого соеДинен с вХо. дами считывания второго и третьего. ( блоков:намяти.и с входами синхронизации триггеров результата и через . третий элемент задержки с третьими входами третьего и четвертого-элемен-. тов И, нулевой выход триггера-управления соединен с вторыми входами.
:блока. элементов И, вторым входом-пер.вого элемента И, вторым управляющим
:,мюдои коммутатора и через одновйб- .. ратер .- с третвиМ входом второго эле мента ИЛИ,.выход адресного поля -регистра микрокоманд соединен с.вторьиа Ж» .информационным входом коммутатора, выход:которого соединен с адресным входом третьего блока памяти,, выход второго элемента И соединен с пер- . вым входОм седьмого элемента И и с входами записи второго и третьего блоков памяти, выходы которых сое-. диыены соответственно с З-входами
1034042 первого и второго триггеров результата, выход первого элемента ИЛИ соеди.нен с информационным входом второго блока памяти и вторым входом седьмого элемента И, выход которого соединея с информационным входом третьего блока памяти, выход второго элемента
Изобретение относится к цифровой вычислительной технике и может быть . использовано при разработке аппаратуры систем контроля программного обеспечения. 5
Известно устройство для контроля микропрограмм, содержащее контролируемый микропрограммный автомат, элементы И, ИЛИ, триггер, элемент ЗаДержКН r.ll ° fG
Недостатком указанного устройства является низкая полнота контроля, вызванная отсутствием средств контроля субъективных ошибок.
Известно устройство для контроля выполнения программ, содержащее триг геры, элементы И, ИЛИ, элементы за- держки, блок оперативной (динамической) памяти P2).
Недостатком данного Устройства является большой объем средств контро, ля, обусловленный тем, что в устрой стве должна храниться информация о всех разрешенных последовательностях модулей программы. Наиболее близким к предлагаемому по. технической сущности и достигаемому положительному эффекту является устройство, содержащее блок памя ти микропрограмм, регистр микрокоманд, регистр результата, триггер ЗО управления, первый, второй, третий и четвертый элементы И, первый и второй элементы ИЛИ, элемент задерж . ки и блок элементов И, причем выход первого элемента И соединен с входом 35 считывания блока памяти микропрограмм, выход которого соединен с входом регистра микрокоманд, выходы поля микроопераций и адресного поля регист-» ра микрокоманд соединены с входами пер. 40 вого элемента ИЛИ, выход первого эле. мента задержки и нулевой выход триггера управления .соединены соответственно с первым и вторым входами второго элемента И, единичные выходы . 45 первого и.второго триггера результа- . та соединены с первыми входами третьего и четвертого элементов И соответственно, нулевые выходы первого и второго триггера регистра результата соединены с вторыми входами
ИЛИ соединен с нулевым входом триггера пуска, единичный вход которого является входом запуска устройства, выходы третьего и чЕтвертого элементов И являются соответственно первым и вторым выходами ошибки устройства. четвертого и третьего элементов И соответственно, выходы которых соединены с первым и вторым входом второго элемента ИЛИ соответственно j3).
Недостатком устройства является узкая область применения вследствие низкой полноты контроля, субъективных ошибок.
В указанном устройстве осуществляется контроль субъективнйх,ошибок типа "тупик", т.е. ошибок, допущенных на этапе проектирования и приво дящих к тому, что в микропрограмме (программе) существуют микрокоманды (команды), не имеющие последо вателей.
Таким образом, низкая полнота. контроля обусловлена ограниченным классом обнаруживаемых ошибок. Кроме гого, указанное устройство ориентировано на использование в режиме основного функционирования контролируемого микропрограммного программного автомата, т.е. в режиме оперативного Контроля, что снижает надежность контроля автомата.
Цель изобретения — повышение надежности контроля.
Поставленная цель достигается тем, что в устройство для контроля микропрограмм;. содержащее первый блок памяти, регистр микрокоманд, первый и второй триггеры результата, триггер:управления, первый, второй, третий и четвертый элементы И, первый и второй элементы ИЛИ, элемент задержки и блок элементов И, причем выход перВого элемента И соединен
1 с входом считывания. первого блока памяти микропрограмм, выход которого соединен с входом регистра микрокоманд, выходы поля микроопераций и адресного поля регистра мик;рокоманд соединены с входами первого элемента ИЛИ, выход первого элемента з рдержки и нулевой выход триггера управления соединены соответственна с первым и вторым входами второго элемента И, единичные выходы первого и второго триггеров результата соеди нены с первыми входами третьего и
1034042
Каждому слову (линейкеДхранимов блоке памяти, ставится в соотетствие двухразрядный признак 7 =(Р1
11}
„-),причем четвертого элементов И соответственно, нулевые выходы первого и второго му триггеров результата соединены с в вторыми входами четвертого и третье- Р го элементов И соответственно, выходы которых соединены с первым и вторым входами второго элемента ИЛИ соответственно, введены триггер. пуска, одновибратор, счетчик, второй и третий блоки памяти, коммутатор, пятый, шестой и седьмой элементы И, второй и третий элементы задержки, причем вход синхроимпульсов устройства и единичный выход триггера пуска соединены соответственно с первым и вторым входами пятого элемента 35
И, выход которого соединен с первыми входами первого и шестого элементов
И и через первый и второй элементы задержки со счетным входом счетчика, выход переполнения счетчика соединен }и со счетным входом триггера управления, информационные выходы счетчика соединены с адресными входами второго блока памяти, первыми информационными входами коммутатора и первыми входами блока элементов И, выходы которого соединены с информационными входами первого блока памяти, единичный выход триггера управления соединен спе вым а бло"B3„M,N — число линеек в блоке памяти.
Тогда справедливо, следующее выражение
Признаки 7С формируются путем последовательного считывания информации из блока памяти и анализа адресных частей.
Если 7Г 6 01,10), то это свидетепьствует о некорректности микропрограммы, т.е. наличии в ней ошибок типа
"тупик" или "недостижимая: вершина".
Комбинации %„ Е (00,11) являются разрешенными.
Введение в устройство счетчика и обусловленных им связей позволяет формировать адреса линеек блоков памяти, а при выходе на последнюю линейку формировать сигнал управления режимом работы.
Введение коммутатора и обусловленных им связей позволяет управлять . адресными цепями третьего блока памяти.
Введение второго и третьего блоков памяти и обусловленных щли связей. необходимо для хранения признаков Р„„ иР .
Введение триггера пуска, пятого элемента И и обусловленных ими связей позволяет управлять подачей синхроимпульсов в устройство.
Введение шестого элемента И и обусловленных им связей необходимо дйя управления подачей импульсов считывания во второй и третий блоки памяти.
Введение седьмого элемента И и обусловленных им связей позволяет управлять записью признака Р „. в третий блок памяти.
65 р упр вляющим входом коммута тора и вторым. входом шестого элемента И, выход которого соединен с вхо- дами считывания второго и третьего блоков памяти, с входами синхронизации триггеров результата и через третий элемент задержки с третьими входами третьего и четвертого элементов И, нулевой выход триггера управления соединен с вторыми входами блока элементов И, вторым входом первого элемента И, вторым управляющим 40 входом коммутатора, и через одновибратор - с третьим входом второго эле.мента ИЛИ, выход адресного погя ре гистра микрокоманд соединен.с вторым информационным входом коммутатора, выход которого соединен с адресным входом третьего блока памяти, выход второго элемента И соединен с первым входом седьмого элемента И и с входами записи второго и третьего бло ков памяти, выходы которых соединены соответственно,с Э -входами первого и второго триггеров результата, выход первого элемента ИЛИ соединен с информационным входом второго блока памяти и вторым входом седьмого элемента И, выход которого соединен с информационным входом третьего блока памяти, выход второго элемента
ИЛИ соединен с нулевым входом тригге:ра пуска, единичный вход которого является входом запуска устройства, выходы третьего и четвертого элемен тов И являются соответственно первым и вторым выходами ошибки уотройства.
О, если в линейке 5; информация — отсутствует;
1 1, если в линейке : записана
1 ненулевая информация, 1, если в адресной зоне ка памяти записан адрес линейки Б„;.
О, в противном случае.
00, если линейка не использует1 ся в микропрограммах, для записи микрокоманд;
101 если в линейке 5„ записана недостижимая микрокоманда, . (g)
0, если в линейке 5„ записана тупиковая микрокоманда, адресная часть которой является адресом линейки „, 11, если в линейке С.; записана: микрокоманда, которая не являет- ся недостижимой и не является конечной микрокомандой "тупико-. вого" участка. 1034042
Блоки 16 и 23 памяти предназначены для хранения признаков Pg
Триггеры 17 и 18 осуществляют их за поминание после считывания из блоков 16 и 23 памяти.
Элементы И 22,14 и 15 управляют записью, считыванием информации из этих блоков. КоМмутатор 13 адреса в зависимости от режима работы осуществляет коммутацию адресных цепей блока 16 памяти.
° 65
Введение одновибратора и обуслойленных им связей позволяет формировать сигнал останова устройства после
I окончания проверки.
Соединение выходов третьего и четвертого элементов И с выходами ошиб- 5 ки устройства, а выхода второго эле.— мента ИЛИ с нулевым входом триггера пуска. позволяет формировать сигналы ошибки и блокировать при их появлении работу устройства. 10
Введение второго элемента задержки и обусловленных им связей необходимо для задержки импульса на время записи информации во второй и третий блоки памяти. 15
Введение третьего элемента Задерж- " ки и обусловленных им связей позволя- ет задержать имнульс опроса триггеров результата на время считывания информации из второго и третьего бло-® ков памяти.
На чертеже представлена функцио-. нальная схема устройства для контроля микропрограмм.
Устройство содержит тригrep 1 пус 5 ка, пятый элемент И 2,.первый 3 и .второй 4 элементы задержки, счетчик 5, блок б элементов И, первый элемент .И 7, первый блок 8 памяти микрако- манд и регистр 9 микрокомаид с Поля- : ми адресным 9,1 и микраонераций 6. 2, образующие контролируемый автомат
:10, первый элемент. ИЛИ 11, триггер
12 управления, коммутатор 13, второй элемент И 14, седьмой элемент И 15, второй блок 16 памяти, первый триггер 17 результата и второй триггер
18 результата, третий 19 и четвертый
20 элементы И, второй 21 и шестой
22 элементы И, третий блок 23 памяти,.третий элемент 24 задержки и одйо- 40 вибратор 25. Кроме того, символами
26-29 .обозначены соответственно вход . пуска и синхроимпульсов, первый и второй выходы ошибки устройства.
В блоке 8 памяти хранится инфор- 45 мация о микропрограммах (программах), которая считывается в региСтр 9.
Счетчик 5 осуществляет формирование адреса при считывании информации из блоков 8,16 и 23 памяти.
Триггер 12 управляет режимом рабаты устройства, а триггер 1 - его .пуском и остановом.
Элемент ИЛИ 11 фиксирует ненулевой код, записанный в регистр 9. Элементы И 19 и 20 формируют сигналы ошибки на основе кода в триггерах
17 и 18.
Элемент ИЛИ- 21 при появлении сигналов ошибки или окончании работы подает сигнал останова на триггер 1 °
Предлагаемое устройство функционирует в двух режимах: режиме формирования признаков и режиме анализа признаков 7L i=1 hi.
Режим формирования признаков Х;.
B исходном состоянии все триггеры и счетчик обнулены, в блоках 16 и 23 памяти записана нулевая, информация.
В блоке 8 памяти записаны контролируемые микропрограммы (программы).
В поле адреса последних микрокоманд записаны начальные адреса соответствующих микропрограмм.
После прихода на выход.: 26 сигнала "Пуск" триггер 1 устанавливается в единичное состояние и первый импульс с входа 27 устройства проходит на. выход элемента И 2. По этому импульсу происходит считывание информации, хранимой в нулевой (начальной) линейке блока 8 памяти. С задержкой, равной времени считывания информации из блока 8, импульс появляется на выходе элемента 3 и разрешает запись информации в блоки 16 и 23. Адрес в блок 16 подается с выхода поля 9.2 через коммутатор 13, а в блок 23 непосредственно с выходов счетчика
13.«Если па начальному адресу в блоке 8 записан ненулевой код, то
B блоки 16 и 23 по соответствующим адресам запишется единица, в противном случае †.нуль.
После записи информации в блоки
16 и 23 импульс с выхода элемента
4 задержки .увеличивает .. на единицу содержимое счетчика 5,,формируя в неМ адрес следующей линейки. С приходом очередного синхроимпульса на вход 27 цикл функционирования повторяется в соответствии с ойисанным алгоритмом.
С появлением на выходе счетчика
5 сигнала переполнения триггер 12 устанавливается в единичное состояние и устройстЫо переходит во второй режим.
Режим анализа признаков 1 .
Исходное состояние устройства перед началом работы в этом режиме следующее:,триггеры 1 и 12 находятся в единичном состоянии, счетчик 5 и триггеры 17 и 18 обнулены, в блоках
16 и 23 памяти записаны признаки Т; . IIo первому импульсу, проходящему через элементы И 2 и ИЛИ, 22, проис ходит считывание информации из бло.ков 16 и 23 в триггеры 17 и 18. Адрес
1034042
7 ячейки, иэ которой считывается инфор« мация из обоих блоков, определяется
;кодом,в счетчике 5. Поскольку в нем записан нулевой код, то из блоков 16 и 23 считывается признак Т . Тогда в соответствии с выражением (4) осуществляется его дешифрация если ЯГ =
=00V11, то сигналы, стробируемые задержанным на время считывания информации сигналом с выхода элемента. 24 задержки,на выходах элементов И 19 10 и И 20 отсутствуют, и разрешается прохождение следующего аинхроимпульса, если @; =01Ч10,.то появляется сигнал на выходе 28 или .29, который проходит через элемент ЙЛИ 21 и обну f5 ляет триггер пуска, информируя одновременно о типе ошибки.
При Т4 =ООЧ11 очередной импульс осуществляет считывание из блоков
16 и 23 признака Ц, анализ которого осуществляется аналогично описанному выше алгоритму.
Если после считывания последнего признака. Вц ошибка не обнаруживается, то bio сигналу переполнения счетчика
5 триггер 12 устанавливается в нулевое состояние, а одновибратор 25 формирует.импульс обнуления триггера
1 пуска.
Таким образом, технические.преи-: мущества предлагаемого устройства по сравнению с прототипом и базовым обьектом состоят в более высокой полноте контроля (в 2-3 раза) и более низкой
„нзбыточнасти программ и микропрограмм за счет выявления и удаленця нереали зуемых участков.
Использование предлагаемого изобретения позволяет сократить сроки разработки,повысить надежность и ка кестЪо программного обеспечения.
1034042
QHHHIIH Заказ 5б27/52 Тираж 706 Подписное
«« »»»» M»»»»»»»
° »» «»»»» ««1
Филиал ППП "Патент", r. Ужгород, ул. Проектная; е