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

 

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

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

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

РЕСПУБЛИК

А2 ()9) SU(ii) (50 4.С 06 F 11/28

Р, 5,,., ) ( ()

)(.

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

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

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

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР

1 (61 ) 1 418719 (21) 4360294/24-24 (22) 08,01. 88 (46) 23. 09.89. Вюл. 9 35 (72) В.Л.Лясковский и И.Н.Лучин (53) 681. 3 (088.8) (56) Авторское свидетельство СССР

Р 1418719, кл. G 06 F 11/28, 1987. (54) УСТРОЙСТВО ДЛЯ КОНТРОЛЯ ПРОГРЫЗ (57) Изобретение относится к вычислительной технике и может быть использовано в устройствах отладки программ, устройствах управления ходом выполнения программ и устройстИзобретение относится к вычислительной технике, может быть использовано в устройствах отладки программ, устройствах управления ходом выполнения программ и устройствах контроля правильности выполнения программ ЦВМ и является усовершенствованием устройства по авт. св.

N - 1418719, Цель изобретения — повышение достоверности контроля хода программ.

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

Устройство содержит адресный 1 и информационный 2 входы, вход 3 пуска, блок 4 регистров адресов контрольных точек, N блоков 5,-5N регистров этавах контроля правильности выполнения программ ЦВМ. Целью изобретения является повышение достоверности контроля хода программ. В блок анализа устройства введены второй блок эле-. ментов И, второй счетчик, второй триггер, третий элемент И, четвертый элемент ИЛИ, второй элемент запрета с соответствующими связями. Устройство позволяет IIpBblcHTb достоверность контроля хода программ за счет обнаружения ошибок, возникающих из-за пропуска ряда команд программы, когда значения контролируемых парамет-1 ров не выходят за пределы ранее заданных значений. 2 ил. лонных значений, группу блоков элементов И 6„ -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 и второй

1509906

33 элементы И, четвертый элемент 34 задержки.

В блоке анализа каждый канал содержит первый блок элементов И 35, первый регистр 36, первый сумматор

37, второй регистр 38, первый элемент

НЕ 39, третий блок элементов И 40, второй блок элементов И 4 1, блок элементов ИЛИ 42, второй сумматор .43, второй элемент НЕ 44, четвертый элемент И 45 и третий регистр 46. В блок анализа также входят блок элементов И 47,счетчик 48,первый элемент

ИЛИ 49, элемент 50 запрета, генера- 15 тор 51 импульсов, элемент 52 задержки, элемент НЕ 53, второй элемент

И 54, второй элемент ИЛИ 55, первый элемент И 56, третий элемент ИЛИ 57, триггер 58, блок 59 элементов за- 20 держки, четвертый элемент ИЛИ 60, второй блок элементов И 61, второй счетчик 62, второй триггер 63, третий элемент И 64 и второй элемент .

65 гру

67, ка

10 запрета.

Кроме того, устройство имеет две ппы информационных выходов 66 и выход 68 останова, выход 69 пуси выход 70 ошибки.

Устройство работает следующим об- 30 повторения фрагмента программы. На

j ì регистре 46 (j = 1,М) записано значение максимально возможного отклонения j é переменной от ее эталонного значения. Остальные регистры, блоки регистров и счетчики устройства обнулены.

После появления сигнала "Пуск" на входе 3 устройства, который озна- чает начало счета контролируемой программы, через элемент ИЛИ 24 импульс поступает -на вход счетчика 23, увеличивая его состояние на единицу ,и через элемент 25 задержки на вход; задания режима блока анализа.

Дешифратор 22 расшифровывает код на выходе счетчика 23 и на его соответствующем входе появляется сигнал, разом.

В исходном состоянии на блоке 4 регистров адресов контрольных точек записаны адреса контрольных точек (блок 4 содержит N регистров по числу контрольных точек в программе).

На i-м блоке 5 регистров (i = 1,N) записаны эталонные значения переменных программ для i — и контрольной точки. На регистре 29 записано число 40 который поступает на второй вход соответствующего элемента И блока элементов И 7, а также на второй вход соответствующего блока элементов И 6, открывая эти элементы. Адрес

i-контрольной точки программы, проходя через открытый элемент И блока элементов И 7 и через элемент ИЛИ 8, поступает на первый вход схемы 9 сравнения, на второй вход которой поступает код со счетчика адреса команд ЭВМ (не показана). Содержимое блока регистров 5 i-й контрольной точки поступает через открытый блок элементов И 6 и блок элементов ИЛИ 20 на группу информационных входов блока анализа.

На предпоследнем регистре блока

5 регистров записано максимально возможное значение времени выполнения фрагмента программы от (i-1)-й до

i-й контрольной точки программы с !. учетом времени задержки элемента 25 (i = 1, N — 1), где под нулевой контрольной точкой подразумевается состояние начала программы. На последнем регистре блока регистров 5 записано минимально возможное значение времени выполнения фрагмента программы от (i-1)-й до i-й контрольной точки программы с учетом времени задержки элемента 25. Элемент 25 задержки задерживает сигнал на время срабатывания счетчика 23, дешифратора 22, элемента И 6 и элемента

ИЛИ 20. Сигнал с выхода элемента 25 задержки устанавливает триггеры 58 и 63, в единичное состояние и, проходя через элементы ИЛИ 49 и 60, пос-. тупает на вторые входы элементов

И 47 и 61. Содержимое М-ro и (M+1)-го регистров блока регистров 5 переписывается соответственно на счетчики 48 и 62. Низкий потенциал с инверсного выхода триггера 58 поступает на управляющий вход элемента 50 запрета, открывая его и, тем самым, разрешая поступление сигналов генератора 51 импульсов на вычитающий вход счетчика 48 и через открытый элемент 65 запрета на вычитающий вход счетчика

62.

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

150990 генератора 51 на вычитающий вход счетчика 48. то значит, что произош ло зацикливание в рассматриваемом фрагменте программы и импульс с нчлевого выхода счетчика 48, проходя через элемент И 47, пройдет на второй выход блока 21 анализа.

В свою очередь, если счетчик 62 не обнулился до прихода импульса с входа задания режима блока анализа, то этот сигнал, проходя через открытый элемент И 64 и далее через элемент ИЛИ 57, проходит на второй выход блока 21 анализа. В этом случае данный сигнал означает, что время выполнения. программы от (i-1)-й до

i-й контрольной точки меньше минимально допускаемого значения времени.

Если коды в схеме 9 сравнения на первом и втором ее входах одинаковы то на выходе схемы 9 сравнения появляется импульс, который поступает на второй вход элемента И 10, на первый вход которого поступает код счетчика адреса команд ЭВМ, который, проходя через открытый элемент И 10, записывается в регистр 11. Сигнал с выхода схемы 9 сравнения поступает также на первый вход элемента И 15 и на вход разрешения блока 21 анализа. При этом элемент И 15 открывается и содержимое регистров арифметического устройства ЭВМ (не показаны) с входа

2 поступает на блок 16 регистров и далее на первый вход элемента И 17 и на группу входов блока 21 анализа.

Сигнал с входа разрешения блока 21 анализа поступает на стробируюцие входы блока элементов И 35 и элемента

И 45 каждого канала, на второй вход

40 элемента ИЛИ 49 и на нулевой вход триггера 58 обнуляя его. Содержимое регистра 46 в инверсном коде переписывается на второй вход сумматора

43, с инверсного выхода триггера 58 поступает на управляющий вход элемента 50 запрета, закрывая его и запрещая прохождение сигналов с генератора 51 импульсов на вычитающий вход счетчика 48.

50 !

Работу блока анализа при сравнении эталонных значений переменных со значениями регистров арифметического устройства рассмотрим на примере одного канала, так как работа остальных каналов аналогична, Значение первой переменной i-й эталонной точки, проходя через открыб 6 тый элемент И 35, записывается на регистр 36. С инверсных выходов регистра 36 код поступает на первый вход сумматора 37. На второй вход сумматоров 37 каждого канала через блок элементов 59 задержки поступает соответствующий код с блока 16 регистров информации. В сумматоре 37 производится вычитание от реального значения переменной в i-й контрольной точке ее эталонного значения. Значение разности поступает на регистр 38 и может быть как отрицательным, так и положительным. Элементы HE 39, И 40 и 41 предназначены д тя получения модуля числа, записанного на регистре

38. Если на первом выходе (знаковый разряд) регистра 38 низкий потенциал, соответствуюц|ий положительному значению кода, то этот код поступает с прямых выходов регистра 38 на вторую группу информационных входов блока элементов И 41, на первый вход стробирования которого поступает высокий потенциал с элемента НЕ 39. В противном случае, инверсный код с регистра

38 поступает через открытый блок элементов И 40. Код с выхода блока элементов И 40 или 41 (в зависимости от знака кода), проходя через элемент

ИЛИ 42, поступает на первый вход сумматора 43, таким образом на первый вход сумматора поступает модуль разности между полученным и эталонным значениями i-й контрольной точке. Поэтому. на сумматоре 43 вычисляется разность между числом, записанным в регистре 46, и значением разности . между полученным и эталонным значениями в i — и контрольной точке. Если значение числа, записанного в регистре 46 больше, чем значение разности между полученным и эталонным значением в i-и контрольной точке, та результат на сумматоре получается орицательный и на его выходе (который является знаковым) остается высокий потенциал, в противном случае на его выходе появляется низкий потенциал. Сигнал на выходе сумматора инвертируется на элементе НЕ 44 и поступает на соответствующий вход элемента ИЛИ 55. При этом, если хотя бы одно значение разности между эталонным и действительным значениями пере-. менной больше заданного заранее максимально возможного значения отклонения, записанного на регистрах 46 ка1509906 налов, то значит, происходит ошибка при выполнении данного фрагмента программы и на выходе элемента ИЛИ 55 присутствует высокий потенциал, кото5 рый, проходя чере з элемент НЕ 53, инвертируется и на первом входе элемента И 54 появляется низкий потенциал.

Элемент 52 задержки задерживает сигнал на время срабатывания элементов канала,1p после чего на его выходе появляется импульс, который поступает на вторые входы элементов И 54 и 56. Поэтому, если произошла ошибка в рассматриваемом фрагменте программы, то импульс, 15 проходя через элемент ИЛИ 57, появляется на втором выходе блока 21 анализа, иначе, если нет ошибки в рассматриваемом фрагменте программы, импульс появляется на первом выходе 20 блока 21 анализа.

Рассмотрим случай, когда ошибка в рассматриваемом фрагменте не произошла, т.е. импульс появился на первом выходе блока 21 анализа. Этот 25 импульс поступает на входы стробирования элементов И 12 и 17, разрешает перепись содержимого регистра 11, в котором записано значение адреса i-й эталонной точки и блока регистров ин- 30 формации, в котором записано содержимое регистров арифметического устройства в i-й эталонной точке на регистр 13 и блок 18 регистров соответственно, а также на вход обнуления счетчика 26, устанавливая его в ноль, 35 и через элемент ИЛИ 24 на вход счетчика 23, изменяя его состояния на единицу.и открывая соответствующий элемент И 7 в блоке элементов И, а также соответствующий элемент И 6.

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

Рассмотрим случай, когда ошибка в рассматриваемом фрагменте программы 45 произошла, т.е. импульс появился на втором выходе блока 21 анализа. Этот импульс поступает на выходы 68 останова вычислений, останавливая выполнение программы в ЭВИ, на счетный вход счетчика.26, увеличивая его состояние на единицу, и на вход элемента 30 задержки. Код со счетчика 26 переписывается на первый вход схемы 27 сравнения. Импульс с элемента 30 задержки поступает на вход элемента 31 задержки и на второй вход элемента

И 29, на первый вход которого поступает код числа повторений участка программы, занесенный в регистр 29;

Если число, записанное в счетчике 26 меньше числа, записанного в регистре

29, то сигнал появляется на первом выходе схемы 27 сравнения и поступает на первый вход элемента И 32. Если число, записанное в счетчике 26, рав-, но числу, записанному в регистре 29, то сигнал появляется на втором выходе схемы 27 сравнения и -поступает на первый вход элемента И 33. Элемент

31 задержки задерживает импульс на время работы схемы 27 сравнения. Импульс с элемента 31 задержки поступает на вторые входы элементов И 32 и

33. Если на первом входе элемента;

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

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

66 и содержимого .блоков регистров 18 в арифметическое устройство 3ВМ по выходу 67 соответственно и восстанавливает состояние ЭВМ по выходу 67 соответственно и восстанавливает состояние 3ВМ Hà (i-1)-м шаге, а также на входе элемента 34 задержки.

Импульс„ задержанный на время переписи содержимого регистра 13 и блока регистров 18 в арифметическое устройство ЭВМ, появляется на выходе

69 пуска устройства, тем самым, осуществляет пуск программ.с (i-1)-й эталонной точки.

Далее работа устройства повторяется аналогичным образом.

Если на первом входе элемента

И .33 присутствует сигнал, то на его выходе появляется импульс, который поступает на выход 70 устройства, который выводится на пульт оператора (не показан) и сигнализирует об ошибке в программе, Формула изобретения

Устройство для контроля программ по авт. св. к- 1418719., о т л и ч а— ю щ е е с я тем, что, с целью повышения достоверности контроля хода программ, в блок анализа дополнительно введены второй блок элементов, второй счетчик, второй триггер, третий элемент И, четвертый элемент

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

1509906

Составитель И.Сафронова

Техред М.дидык . Корректор М.Самборская

Редактор О.Головач

Заказ 5814/47 Тираж 668 Подписное

BHHHI1H Государственного комитета по изобретениям и открытиям при ГКНТ СССР

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

Производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, 101

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

 

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

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

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

Изобретение относится к вычислительной технике

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

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

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

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

Изобретение относится к вычислительной технике и может быть применено для контроля и отладки аппаратной части микроЭВМ и отладки программ

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

Изобретение относится к области вычислительной техники и позволяет контролировать процесс выполнения программ в микропроцессорных системах

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

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

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

Изобретение относится к вычислительной технике и может быть использовано при построении управляющих вычислительных машин (УВМ), нечувствительных к сбоям программ

Изобретение относится к вычислительной технике и может быть использовано в управляющих вычислительных машинах (УВМ), например в системах управления газотурбинного двигателя

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

Изобретение относится к вычислительной технике и может быть использовано в управляющих вычислительных машинах (УВМ)

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