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

Иллюстрации

Показать все

Реферат

 

Изобретение относится к цифровой вычислительной технике и может быть использовано для выявления ошибок функционирования оборудования ЭВМ в процессе выполнения программ. Устройство содержит два счетчика вре мени 1 и 2, дешифратор 3 адреса, два триггера 9 и 21, четыре элемента , И 10,11,12 и 22, элементы ИЛИ 12 и ИЛИ-НЕ 18, два регистра 13, 14 метки перехода, регистр 15 контрольной метки , две схемы сравнения 16 и 13, элемент задержки 20 и блок 23 индикации; Работа устройства основана па одновременном контроле времени выполнения программы сегментов и переходов между ними. Устройство выдает сигнал ошибки, если время выполнения сегмента превышает установленное или осуществляется запрещенный программный переход. 2 ил. (Л ОО о --J о:) о Фиг.1

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

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

РЕСПУБЛИК (5!! 4 С Об Р 1/28

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

Фиг.1

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

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

К А BTOPCHOMY СВИДЕТЕЛЬСТВУ (2!) 3996184/24-24 (22) 25,12.85 (46) 30,04.87. Бюл. Н - 16 (72) Г. И. Климович и В. П. Ткачев (53) 681,3(088.8) (56) Авторское свидетельство СССР

В 798851, кл. G Ol Р ll/28, 1978.

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

М 1176336, кл. G 06 Р 1!/28, 1985. (54) УСТРОЙСТВО ДЛЯ КОНТРОЛЯ ВЫПОЛНЕНИЯ ПРОГРАММ (57) Изобретение относится к цифровой вычислительной технике и может быть использовано для выявления ошибок функционирования оборудования

ЭВМ в процессе выполнения программ.

„„SU„„1307460 А 1

Устройство содержит два счетчика вре мени 1 и 2, дешифратор 3 адреса, два триггера 9 и 21, четыре элемента

И 10,11,12 и 22, элементы ИЛИ 12 и

ИЛИ-НЕ 18, два регистра 13, 14 метки перехода, регистр 15 .контрольной метки, две схемы сравнения 16 и 13, элемент задержки 20 и блок 23 индикации. Работа устройства основана на одновременном контроле времени выполнения программы сегментов и переходов между ними. Устройство выдает сигнал ошибки, если время выполнения сегмента превышает установленное или осуществляется запрещенный программный переход, 2 ил.

13074 I

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

Цель изобретения - сокращение аппаратурных затрат.

На фиг. 1 представлена структурная схема устройства; на фиг. 2— графа контролируемой программы, 1О

Устройство содержит первый 1 и второй 2 счетчики времени, дешифратор 3 адреса, адресный вход 4 устройства, вход 5 разрешения записи контроля устройства информационный вход 6 устройства, вход 7 начальной установки устройства, тактовый вход

8 устройства, первый триггер 9, элементы И 10-12, первый 13 и второй 14 регистры метки перехода, регистр 15 20 контрольной метки, первую 16 и вторую 17 схемы сравнения, элемент

ИЛИ-НЕ 18, элемент ИЛИ 19, элемент

20 задержки, триггер 21 прерывания, четвертый элемент И 22, блок 23 инди- 25 кации, выход 24 фиксации неисправности в программе результата контроля устройства и информационный выход 25.

Устройство осуществляет контроль выполнения программ для синхронных вычислительных систем, в которых время выполнения команд может измеряться в периодах синхронизирующего генер атор а, Для контроля берется готовая пол- 35 костью отлаженная программа, представляющая собой некоторую последовательность команд, которая разбивается на тестируемые участки-сегменты. Равномерность сегментов и их 40 количество определяется разрядностью используемых в устройстве счетчиков времени, регистров, а также сред" ним временем выполнения команд процессором. 45

Каждому из се гмент ов ставится в соответствие метка х и список вида (Т,,;, dT M М ), где Т1 — минимальное время выполнения i-го сегмента; дт,; — разность между максимальным и минимальным временем выполнения i-го сегмента; М;, и М - — соответственно первая и вторая метки возможного программного перехода из

i-го сегмента. Ограничение на количе- 55 ство меток перехода вытекает из числа используемых в устройстве регистров метки перехода. Времена Т; и

60 2 дт; вычисляются на основании времен выполнения команд, входящих в i-й сегмент и связей между ними.

Для графа программы, приведенного на фиг. 2, где вершинами являются программные сегменты, а ребрами— возможные переходы между сегментами, можно составить следующие списки: (т,, лт;, 2, 2);

3: (т... лт,, 4 5);

4: (Т, ЛТ4 2, 6);

5 . (Т, лт, 3, 7);

6: (Т, dT@ „5, 7);

7: (T» T» 2, 8);

Контроль в устройстве сводится к одновременной проверке длительности выполнения программных сегментов и соответствия выполняемым переходов графу, при этом разрешаются переходы только между смежными вершинами (Сегментами) при выполнении условия

T> - t; < Т + dT;, где t; — время, фактически затраченное на выполнение i-ro сегмента, в противном случае устройство выдает в вычислительную систему сигнал ошибки, Устройство работает следующим образом, Перед началом контроля устройство устанавливается в исходное состояние подачей на вход 7 начальной установки нулевого импульса сброса, который устанавливает триггер 9 и триггер 21 прерывания в "0". При .этом элемент И 10 переходит в закрытое состояние, что препятствует прохождению тактовых импульсов с входа

8 устройства на счетные входы первого 1 и второго 2 счетчиков времени.

Устройство по отношению к вычислительной системе является внешним.

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

13 и 14 метки перехода и регистр 15 контрольной метки, т,е. каждому из перечисленных блоков соответствует свой программно неизменяемый номер (адрес), указываемый в команде вывода, Начало каждого программного сегмента обозначается программным обращением к первому 1, второму 2 счетчикам времени, а также первому 13 и второму 14 регистрам метки перехода, в которые заносятся целочисленные параметры, характеризующие соответственно Т., Т„, М;,, М;1. 5

Конец каждого программного сегмента обозначается программным обращением в регистру 15 контрольной метки, при котором на вход 6 данных устройства выставляется код, опреде- 10 ляющий метку, достигнутую в резуль-. тате выполнения рассматриваемого сегмента, При программном обращении к первому счетчику 1 времени на адресном 15 входе 4 устройства появляется адрес данного счетчика, сопровождающийся управляющим сигналом на входе 5 разрешения записи устройства. Управляющий сигнал разрешает работу дешиф- 20 ратора 3 адреса, который вырабатывает на своем первом выходе сигнал, разрешающий запись с входа 6 данных устройства код временного интервала

Т. в первый счетчик 1 времени и пе1 реводящий триггер 9 по входу J в единичное состояние, На выходе триггера 9 появляется сигнал "Начало цикла контроля", Аналогично записи в первый счет- 30 чик 1 времени производится запись временного интервала 1Т; во второй счетчик 2 времени сигналом с второго выхода дешифратора 3 адреса, а также запись кодов меток М;1 и М; со 35 ответственно в первый 13 и второй 14 регистры метки перехода по сигналам с третьего и четвертого выходов дешифратора 3 адреса, Сигнал "Начало цикла контроля" 40 открывает элемент И 10, который разрешает прохождение тактовых импульсов с тактового входа 8 устройства через открытый элемент И 10 и элемент И 11, открытый повторому входу единичным потенциалом с выхода переполнения первого счетчика 1 времени, Тактовые импульсы с выхода элемента

И 1 1 поступают на счетный вход — 1 первого счетчика 1 времени, содержи-. 50 мое которого уменьшается по мере выполнения команд контролируемого программного сегмента, Когда первый счетчик 1 времени обнулится, сигнал обратного переноса с его выхода зак 55 рывает элемент И ll и открывает по инверсному входу элемент И 12, через который тактовые импульсы проходят

1 307460 4 на счетный вход — 1 второго 2 счетчика времени, содержимое которого уменьшается на единицу с приходом каждого тактового импульса, Сигнал Конец цикла контроля" форьыруется на пятом выходе дешифратора 3 адреса при программном обращении к регистру 15 контрольной метки, при этом ранее на входе 6 данных устройства выставляется код метки сегмента, достигнутого в результате выполнения контролируемого сегмента. Сигналом "Конец цикла контроля" триггер 9 по входу К устанавливается в нулевое состояние, что закрывает путь прохожденйю тактовых импульсов через элемент

И 10 на счетный вход второго счетчика времени, Одновременно передним фронтом сигнала "Конец цикла контроля происходит запись состояния входа В триггера 21 прерывания на его выход.

Код метки, выставленный на вход 6 данных устройств при программном обращении к регистру 15 контрольной метки, подается на его информационные входы, а также на первые информационные входы первой 16 и второй

17 схем сравнения, на вторых информационны>; входах которых присутствуют занесенные ранее в первый L3 и второй 14 регистры метки перехода коды

М,„ и М;;. Если выставленный на вхо- де 6 данных устройсгва код метки совпадает хотя бн с одним кодом, записанным в первой 13 или второй 14 регистры метки перехода, то на выходе элемента ИЛИ-НЕ 18 появляется нулевой логический потенциал, в противном случае — единичный потенциал.

Если дешифратор 3 адресов обнарулявает признак конца сегмента раньше, чем обнуляется первый счетчик 1 времени (что соответствует выполнению сегмента за время меньше

Т;), то на первом входе элемента

ИЛИ 19, а следовательно, и на входе D триггера 21 прерывания в мо- мент фронта сигнала Конец цикла контроля" присутствует единичиый логический потенциал, что приводит к переключению триггера 21 прерывания в единичное состояние, выстав лению на выходе 24 устройства сигнала ошибки и включению блока 23 индикации. Так как переключение триггера 21 прерывания происходи

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

Если дешифратор 3 адреса обнаруживает конец проверяемого сегмента после обнуления первого счетчйка 1 времени и до обнуления второго счетчика 2 времени (что соответствует 10 выполнению сегмента за время Т; . Т, + лТ,), то при правильно выполненном меточном переходе, на выходе элемента ИЛИ 19 и, следовательно, на входе D триггера 21 прерыва- 15 ния в момент фронта сигнала "Конец цикла контроля" присутствует нулевой логический потенциал, что не приводит к переключению триггера 21 прерывания. Через некоторое время с выхода элемента 20 задержки на второй вход элемента И 22 поступит задержанный на время переключения триггера 21 прерывания сигнала, Так как на первый вход элемента И 22 с 25 инверсного выхода триггера 21 прерывания подается единичный потенциал, то на выходе элемента И 22 появляется сигнал записи информации с входа 6 данных устройства в ре- 30 гистр 15 контрольной метки. Таким образом, по содержимому регистра 15 контрольной метки, выставленному на информационном выходе 25 устройства, можно однозначно определить последнюю правильно выполненную метку сегмента, что дает возможность осуществления рестарта программы при возникновении сбоя оборудования, При неправильно выполненном пере- 40 ходе из сегмента в сегмент на выходе элемента ИЛИ-НЕ 18, втором входе и выходе элемента ИЛИ 19, а следовательно, и на входе D триггера 21 прерывания появляется единичный 45 потенциал, который по фронту сигнала "Конец цикла контроля" вызывает переключение триггера 21 прерывания, выставление сигнала ошибки на выходе 24 устройства и выключение блока

23 индикации, Если второй счетчик 2 времени обнуляется до обнаружения дешифратором

3 адреса признака конца сегмента (что соответствует выполнению программного сегмента за время, большее Т; + ДТ,1), то нулевой импульс сигнала обратного переноса с выхода второго счетчика 2 времени посту60 6 пает на вход установки триггера 21 прерывания в единичное состояние, что приводит к его переключению, выставлению сигнала ошибки на выходе 24 устройства и выключению блока 23 индикации.

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

Устройство для контроля выполнения программ, содержащее первый и второй счетчики времени, дешифратор

O адреса, первый триггер, четыре эле- мента И, элемент ИЛИ, регистр контрольной метки, первый регистр метки перехода, первую схему сравнения, причем группа информационных входов устройства соединена с группами информационных входов первого и второго счетчиков, первого регистра перехода, регистра контрольной метки и с первой группой информационных входов первой схемы сравнения, выход первого триггера и тактовый вход устройства соединены соответственно с первым и вторым входами первого элемента И, выход которого соединен с первым входом второго и прямым входом третьего элементов И, выходы первого и второго элементов И соединены со счетными входами соответственно первого и второго счетчиков времени, выход переполнения первого счетчика времени соединен с вторым входом второго элемента И, инверсным входом третьего элемента И и первым входом элемента ИЛИ, группа адресных входов устройства соединена с группой информационных входов дешифратора адреса, вход разрешения контроля устройства соединен со стробирующим входом дешифратора адреса, первый выход которого соединен с входом записи первого счетчика времени и входом первого триггера, второй и третий выходы дешифратора адреса соединены с входами записи соответственно второго счетчика времени и первого регистра метки перехода, вход начальной установки устройства соединен с входом установки в "0" первого триггера, четвертый выход дешифратора адреса соединен с К-вхо1 3074

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

Редактор Л, Пчолинская Техред Л.Олейник Корректор А Ильин

Заказ 1634/49 Тираж 673 Подписное

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

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

Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4 дом первого триггера, выход четвертого элемента И соединен с входом записи регистра контрольной метки, группа информационных выходов которого является группой выходов результата контроля устройства, группа информационных выходов первого регистра метки перехода соединена с второй группой информационных входов первой схемы сравнения, о т — 10 л и ч а ю щ е е с я тем, что, с целью сокращения амплитудных затрат, в него введены второй регистр метки перехода, вторая схема сравнения, элемент ИЛИ-НЕ, элемент задержки 15 и второй триггер, причем вход начальной установки устройства и выход переполнения второго счетчика соединены соответственно с нулевым и единичным входами второго триггера, 20 группа информационных входов устройства соединена с первой группой входов второй схемы сравнечия и группой

60 8 информационных входов второго регистра метки перехода, пятый выход дешифратора адреса соединен с входом записи второго регистра метки перехода, группа выходов которого соединена с второй группой второй схемы сравнения, выходы равенства первой и второй схем сравнения соединены с первым и вторым входами элемента

ИЛИ-НЕ, выход которого соединен с вторым входом элемента ИЛИ, выход которого соединен с информационным входом второго триггера, первый выход дешифратора адреса соединен с тактовым входом второго триггера и через элемент задержки — с первым входом четвертого элемента И, инверсный выход второго триггера соединен с вторым входом четвертого элемента

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