Устройство для контроля выполнения программ
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано для контроля выполнения программ управляющих вычислительных машин и микропроцессорных контроллеров. Цель - повышение достоверности контроля. Устройство содержит регистр контрольной метки, постоянный запоминающий блок, четыре счетчика времени, две схемы сравнения, триггер, шесть элементов И, два элемента задержки, три элемента ИЛИ, элемент И-НЕ, триггер прерывания. Устройство обеспечивает контроль по максимально и минимально допустимым временам выполнения и правильности следования контролируемых программных участков, а также контроль минимального и максимального допустимого времени снятия готовности медленнодействующими устройствами ввода-вывода и памяти. 2 ил.
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН (s) SU)))) 1 54 1 1 (51)5 G 06 F 11/28
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н А ВТОРСНОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТ8ЕННЫЙ НОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ
ПРИ ГКНТ СССР
1 (21 ) 4431 7 54/24-24 (22) 26.05,88 (46) 07.02.90. Бюл, Р 5 (72) В.П. Ткачев, А.А, Баранник и А.А. Плешаков (53) 681.325(088.8) (56) Keuntopf Р, е.t.s. Mucrocomputer fault detection using the timebased method. Large Scale Integration, EUR0MICR0 Symp., 4 th, Munich, 1978, Proc, р.р. 74-79, Fcs.3.
Авторское свидетельство СССР
Р 1307460, кл. G 06 F 11/28, 1987. (54) УСТРОЙСТВО ДЛЯ КОНТРОЛЯ ВЫПОЛНЕ-.
НИЯ ПРОГРАММ (57) Изобретение относится к вычислительчой технике и может быть использовано для контроля выполнения проИзобретение относится к вычислительной технике и может быть использовано для выявления ошибок функцио нирования оборудования ЭВИ и микропроцессорных систем в процессе выполнения программ.
Цель изобретения . — повышение достоверности контроля.
На фиг. 1 показана функциональная схема устройства; на фиг. 2 †. временная диаграмма работы устройства.
Устройство содержит две схемы
1 и 2 сравнения, четыре счетчика
3-6, триггер 7, шесть элементов
И 8-13, элемент И-НЕ 14, три элемента ИЛИ 15-17, два элемента 18 и 19 задержки, регистр 20 контрольной .метки, блок 21 памяти, информационграмм управляющих вычислительных машин и микропроцессорных контроллеров. Цель — повьппение достоверности контроля. Устройство содержит регистр контрольной метки, постоянный запоминающий блок, четыре счетчика времени, две схемы сравнения, триггер, шесть элементов И, два элемента задержки, три элемента ИЛИ, элемент
И-НЕ, триггер прерывания. Устройство обеспечивает контроль по максимально и минимально допустимым временам выполнения М правильности следования контролируемых программных участков, а также контроль минимального и максимального допустимого времени снятия готовности медленнодействующими устройствами ввода-вывода и памяти.
2 ил. ный вход 22 устройства, вход 23 за- Я пуска контроля, вход 24 п1 изнака 4ь контрольной метки, тактовый вход 25 yggggL устройства, вход 26 "Готовность", в вход 27 сброса, выход 28 фиксации неисправности и информационный выход 29 устройства, Устройство осуществляет контроль выполнения программ для управляющих
ЭВМ и микропроцессорных контроллеров, 1 в которых время выполнения команд мо)жет измеряться в периодах синхронизиру ющего генератора. Ь
Лля контроля берется готовая, полностью отлаженная программа, представляющая собой некоторую последовательность команп, которая разбивается на контролируемые участки — сегменты.
1: (2,2, 3: (4, 5, 4: (2, 6, 5: (3, 7, 6: (5, 7, 7: (2, 8, 8: (6, 8, л
Т»9 ЬТ» 9 4» 9
Т, АТ, с
ТЭ ° "Тэ "э с.
Т 9 LTD. с+
Т;, ЬТ„, T»99 h ТД9 6
Т79 Т7 9 а, Т89 /TED» 8
Э)9
9 » ) 9
9 Г 5)9
9 Ь б)9
„a ) „
45
Контроль в устройстве сводится к одновременной проверке длительнос- 50 ти выполнения программных сегментов и соответствия выполнения переходов графу, при-этом разрешены переходы только между сменными вершинами (сегментами) в соответствии с возможным 55 направлением переходов при выполнении ус.повий
Т,, т, . т;;
3 15416
Размерность сегментов и их количество определяются информационной емкостью входа 22 устройства, разрядностью используемых счетчиков времени и средним временем выполнения команд микропроцессором. . Каждому из сегментов ставится в
4 соответствие метка 1 и список вида (1г1;», М,, Т,, hT;,г.,;, д;), где
И,, и М; — соответственно первая и вторая метки возможного программного перехода, Т; — минимальное время выполнения i-ro сегмента (без учета времени.снятия готовности), 5Т, разность между максимальным и минимальным временами выполнения i-го сегмента (также без учета возможного времени снятия готовности), ; — минимальное время снятия готовности на i-м сегменте, дс „ - разность между максимальным и минимальным временами снятия сигнала готовности медленнодействующими (по сравнению с быстродействием процессора) устройствами вво.да-вывода и памяти.
Времена Т, и 5т, вычисляются на основании времен выполнения команд, входящих в i-й сегмент, и связей между ними. Времена и 6 »;; определяются временными характерчстиками используемых в системе медленнодействуюшнх устройств и возможной частотой обращения к ним на 1.-м сегменте.
Для графа програ»згы9 пргеденного на фиг. 2, где вершинами являются
35 программные сегменты, а ребрами— возможные переходы между сегментами, можно составить следующие списки:
18 где t; — время, фактически затраченное на выполнение i-ro сегмента; — время снятия готовности на
i-м сегменте, в противном случае устройство выдает сигнал ошибки.
Устройство работает следующим образом.
При включении устройства по сигналу сброса, приходящему9 с входа 27 сброса через элемент ИЛИ 17 íà S-вход триггера 7, устанавливая на выходе
28 фиксации неисправности сигнал
"Лог."1", показывающий наличие неисправности (а в данном случае отсутствие контроля). При этом "Лог."0", подаваемый с инверсного выхода триггера 7 на первые входы элементов И
10-13, блокирует прохождение тактовых сигналов с входа 25 устройства на счетные входы счетчиков времени и прохождение сигнала с входа 24 прихода контрольной метки на выходы элементов И 10 и 11.
Для запуска контроля процессор устанавливает номер контрольной метки на информационном входе 22 устройства и подает сигнал на вход 23 запуска контроля, который проходит через элемент ИЛИ 15 на вход записи регистра 20 контрольной метки, осуществляя запись в него номера контрольной метки, и на вход элемента l9 задержки.
Значение номера контрольной метки подается на адресные входы блока 21 памяти, с информационных выходов которого информация подразделяется на шесть групп. Первая и вторая группы разрядов хранят значения Y. и М, О, которые подаются соответственно на вторые информационные входы первой
1 и второй 2 схем сравнения соответственно. Третья, четвертая, пятая и шестая группы разрядов обеспечивают задание в первый 3, второй 4, третий 5 и четвертый 6 счетчики соответственно значений Т;, hT,, ;, с ; .
По сигналу "Лог.1", приходящему через элемент 19 задержки на входы записи счетчиков 3-6 и на R-вход триггера 7, осуществляется запись информации в счетчики и сброс их выходов в "0", а также установка выхода 28 фиксации неисправности устройства в "0". На инверсном выходе триггера устанавливается "Лог.1", которая подается на первые входы
5 15 элементов И 10-13 и разрешает прохождение тактовых импульсов с входа
25 устройства и срабатывание устрой ства при приходе сигнала с входа 24 контрольной метки. Элементы И 12 и
13 управляются сигналом, приходящим с входа 26 "Готовность" на вторые входы этих элементов. При этом нулевое значение сигнала "Готовность" соответствует нормальному состоянию и тактовые импульсы через элемент
И 12 поступают на счетный вход первого счетчика 3 и второй вход элемента И8.
При уровне "Лог."1" на входе 26, что соответствует снятого сигнала готовности медленнодействующими устройствами, тактовые импульсы поступают на счетный вход счтчика 5 и на второй вход второго элемента И 9. При этом содержимое соответствующего счетчика уменьшается. При обнулении счетчика 3 (что соответствует отработке временного интервала Т;) на его выходе устанавливается "Лог." 1", поступающая на первый вход элемента И 8, и начинается отсчет интервала dÒ; .
При обнулении третьего 5 счетчика л. (что соответствует обработке c ) на его выходе устанавливается уровень
"Лог,"1", разрешающий прохождение тактовых импульсов через элемент И 9 на счетный вход счетчика 6, т,е. обработку dс, При нормальном выполнении программного сегмента В соответствии с ходом выполнения программы процессор на информационный вход 22 устройства выставляет новую контрольную метку чеI рез время t„ + t, причем T; (t, Т; +
+ b,T; (т.е. выходы счетчиков 3 и 4 установлены в состояния "Лог. 1" и
"Лог.0" соответственно), далее i,с t.(c c, + dc; (т.е. выходы счетчиков 5 и 6 установлены в состояния "Лог."1" и "Лог."0" соответственно), а значение новой метки, поступающей на первые информационные входы схем 1 и 2 сравнения, должно соответствовать М„ 1 или М; . При сравнении значения контрольной метки со значением M, < или
М; выход соответствующей схемы сравнения устанавливается в "Лог.i", через элемент ИЛИ 16 "Лог."1" подается на первый вход элемента И-НЕ 14.
При правильном выполнении программ на входы элемента И-НЕ 14 подаются три "Лог."1", на входы эле41618 6 мента ИЛИ 17 подаются три "Лог."0" и соответственно с выхода элемента
И-НЕ 14 на П-входе триггера 7 и с выхода элемента ИЛИ 17 íà S-вход триггера 7 подаются значения "Лог."0".
Сигнал прихода контрольной метки от процессора поступает с входа 24 устройства на вход элемента 18 задержки и второй вход элемента И 11 (на пер1О вом входе которого Лог. 1 ) и проII II 1! ходит на С-вход триггера 7, но состояние выхода 28 триггера 7 не меняет1 ся, так как на его S- u D-входах состояние "Лог."0". Поэтому на первом входе элемента И 10 сохраняется состояние "Лог."1" и сигнал с выхода элемента 18 задержки проходит через элемент ИЛИ 10, через .элемент ИЛИ 15 на вход записи регистра 20 и вход элемента 19 задержки. В регистр 20 контрольной метки записывается значение контрольной метки, поступающее на его информационный вход, информация на выходе блока 21.памяти устанавливается в соответствии -с адресом на выходе регистра 20. Проходя через элемент 19 задержки на входы записи счетчиков 3 и 4, положительный им30 пульс осуществляет запись в них установившейся на выходах блока 21 памяти информации и сброс выхода счетчиков в "Лог. 01. При поступлении положительного импульса на R-вход триггера 7 состояние "Лог."0" на его
35 выходе 28 фиксации неисправности сохраняется в "Лог."0", с инверсного выхода триггера 7 "Лог."1" поступает на элементы И 10-13, разрешая контроль выполнения программы на но40 вом программном сегменте.
Если при приходе новой контрольной метки на устройство не произойдет сравнение ее ни с одним из значе45 ний М )g HJII! Ng или к этому МОмен ту времени не произойдет обнуление первого счетчика 3 и установки в
"Лог."1" его выхода, или обнуление счетчика 5 и установки в "Лог.1" его ВыхОда То с ВыхОдя элемента
И-НЕ 14 "Лог."1" поступает на Р-вход триггера 7 и по "Лог.".1", приходящей с входа 24 устройства через элемент И 11 на С-вход устройства, триггер 7 перебрасывает состояние выхо55 да 28 фиксации неисправности в
"Лог."1". При этом "Лог."О" с инверсного выхода триггера запирает элемен1ты И 10-13 °,1541618
Если произойдет обнуление содержимого счетчика 4и установка его выхода в "Лог."1" (значение t, превысит Т, + h,Т, ) или обнуление содержимого четвертого 6 счетчика и установка его выхода в "Лог."1" (значение t; превысит »., + Ль,), то "Лог."1" с выхода элемента ИЛИ 17 поступит на S-вход триггера 7, устанавливая выход 28 фиксации неисправности в
"Лог."1". На информационном выходе
29 устройства сохраняется номер последней контрольной метки правильного выполнения прсграммы.
Таким образом, предлагаемое уст-. ройство позволяет фиксировать неправильное выполнение программных сегментов, следствием которого являются выход на метку, не соответствующую графу переходов, уменьшение времени выполнения программ (t; с Т, ), превышение времени выгголнения (t„ yТ, +
+ET; ), а также изменение времени обращения к устройствам — уменьшение (; + ", ) и превышение (t- > с ; +
+ 6»,; ) времени доступа к устройствам, 1
Форм улан зобретения
Устройства для контроля выполнения праграм»», содержащее дв;. счетчи-. ка времени, две схемы срагне;п»я, :-."етыре элемента И, триггер, элемент з-".держки, элемент ИЛИ и регистр контрольной метки, группа информационных входов которого объединена с первыми группами инАормационных входов и первой и второй схем сравнения и подключена к группе информационных входов устройства, группа выходов регистра является группой инйормационных выходов устройства, выход первого счетчика подключен к первому входу первого элемента И, выход которого подключен к счетному входу второго счетчика, прямой выход триггера является выходом фиксации неисправности устройства, инверсный выход триггера подключен к первому входу второго элемента И, второй вход которого подключен к выходу первого элемента задержки, о т л и ч а ю щ ее с я тем, что, с целью повышения достоверности контроля, в устройство введены блок памяти, третий и четвергь»й счетчики времени, пятый и шестой элементы И, в торой и третий элементы
ИЛИ, элемент И-HF. и второй элемент
l5
55 задержки, причем вход запуска контроля устройства подключен к первому входу первого элемента ИЛИ, второй вход которого подключен к выходу второго элемента И, выход первого элемента ИЛИ подключен к входу записи регистра контрольной метки и входу второго элемента задержки, выход которого подключен к входам записи первого, второго, третьего, четвертого счетчиков и Р-входу триггера, группа инАормационных выходов регистра контрольной метки подключена к группе адресных входов блока памят»», шесть групп информационных выходов которого подключены соответственно к вторым группам»»г»Аормац.»о»шых входа<. первой и второй схем сравнения и группам инАормацион»н-.х входов пегвого, второго, третьего и четвертого счетчиков времени, выходы вервой и второй схел» сравнения падкл»оче»»ы соответственно к первому и второму входам второго элемента ИЛИ, выход которога подключен к первому входу элемента ИЛИ-НЕ,, второй вход которого объединен с первым входом первого элемента И и подключен к выходу псреполнения первого с »етчHKë, третий вход элемента И-HF, объедп.»ен с первым входам шестога элемента И и подключен к выходу переполнения третьего счетчика, выход -.ëå»»åíòà И-НЕ подключен к D-»»õîäó триггера, вход признака контрольной метки устройства подключен к входу первого элемента задержки и первому входу третьего элемента И, выход которого подключен к
С-входу триггера, инверсный выход которога подключен к второму входу третьего и первым входам четвертога и пятого элементов И, тактовый вход устройства г»адкл»очег» к DTopbIM входам четвертого и пятого элементов И, вход
"Готовность устройства подключен к третьим входам четвертого и пятого элементов И, выход четвертого элемента И подключен к счетному входу нервого счетчика .и второму входу первого элемента И, выход пятого элемента
И подключен к счетному входу третьего счетчика и второму входу шестого элемента И, выход которого подключен к счетному входу четвертого счетчика, вход сброса устройства подключен к первому входу третьего элемента ИЛИ, второй и третий входы которого подключены соотг1етс твен»»а к выходам переполнения второго и четвертого счетчиков, вмход третьего ж
ФигЛ.
2Б
Риг. 2
Со с тавитель И; Сафронова
Редактор А. Козориз Техред М.Яндык Корректор:N. Иаксимишинец
Заказ 282 Тираж 565 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Иосква, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, 101
И
И
1Б
f4
fl
1541618
1О элемента ИЛИ подключен к S-иходу триггера.