1
к вычисли быть исполь программы °
Изобретение относится тельной технике и может зовано для контроля хода специализированной ЭВМ в АСУ,- работающих в реальном масштабе времени, и является усовершенствованием устройства по авт. св. № 892446,
Целью изобретения является расширение функциональных возможностей устройства путем проверки выполнения циклических участков программ.
На фиг. 1 приведена структурная схема устройства для контроля хода программы; на фиг. 2 - структура специальной команды.
Устройство содержит счетчик 1, первьй элемент И-НЕ 2, первый 3 и второй 4 элементы И, элемент ИЛИ 5, схему 6 сравнения, второй счетчик 7, второй элемент И-НЕ 8, третий 9 и четвертьй 10 элементы 10, триггер 11, пятый элемент И 12, входы разрешения 13, счета 14, сброса 15 первого счетчика, первую группу информационных выходов 16 устройства, вход 17 признака контроля устройства вход 18 признака контроля перехода, вход 19 признака перехода, вход 20 признака условия, выход 21 ошибки, вход 22 признака контроля, вход 23 признака условного перехода,, вторую группу информационных выходов 24, вход 25 устройства.
Специальная команда (фиг, 2) включает поле 26, в котором записывается код команды, одноразрядное поле 27, в которое записывается 1, если необходимо контролировать правильность условного перехода на участок программы, который начинается этой специальной командой, поле 28, в котором записьшается значение признка условного перехода, поле 29 признака контроля цикла, в которое записывается 1, если необходимо контролировать правильность выполнения циклического участка програмг-ы, котрый начинается этой специальной командой, и О, если правильность выполнения цикла не контролируется, поле 30, в которое записьшается число команд, подлежащих выполнению на участке программы, ограниченном специальной командой и первой, встретишейся после нее, командой условного перехода или командой останова,поле 31, в которое записывается число повторений циклического участка прораммы.
5
Устройство работает следующим образом.
Если в,программе нет команд услов- ных переходов, то заранее можно указать число команд,, подлежащих вьшол- нению, В этом случае в ,начале программы ставится специальная команда, в поле 27 которой записан О, в поле 30 - число команд, подлежащих выполнению в программе без учета команды останова, в полях 28, 29 и 31 записаны О.
В этом случае устройство контроля хода программы работает следующим 5 образом.
При выполнении специальной команды в устройстве управления ЦВМ проводят анализ кода специальной коман- ды„ Если в поле 27 специальной коман- 0 ды записан О, на вход 18 устрой- .ства не поступает единичньш сигнал признака контроля перехода, элемент И 4 закрыт и анализ правильности выполнения условного перехода не проводят. На вход 15 устройства поступает сигнал, сбрасьшающий счетчик 1 в нулевое состояние. На вход 13 устройства поступает управляющий сигнал занесения кода на счетчик, по которому прямой код числа команд, подлежащих выполнению, записаниьм в поле 30 специальной команды,преобразовывается в дополнительный и поступает на счетчик 1. В. конце выполнения каждой команды, кроме команды условного перехода и останова на вход 14 устройства поступает сигнал, по которому содержимое счетчика 1 увеличивается на единицу.
При выполнении команды останова на входе 17 устройства формируется единичньзй сигнал признака конца кон- троля. Если ход .программы не нарушен, т.е. не пропущена ни одна команда и не выполнено ни одной линей команды, то все разряды счетчика 1 находятся в единичном состоянии. С выхода элемента И-НЕ 2 на вход элемента И 3 поступает нулевой сигнал и- на его выходе не формируется единичньш сигнал. Если при вьшолнении програм- iMbi пропущена хотя бы одна команда, то к моменту выполнения команды останова не все разряды счетчика 1 находятся в единичном состоянии, на выходе - элемента И-НЕ 2 присутствует единичный сигнал. При вьшолнении команды останова единичный сигнал, поступа- | ощий на вход 17 устройства, сформиру0
5
0
5
0
3
ет на-выходе элемента И 3 единичгшш сигнал, которьш поступает на вход элемента ИЛИ 5. На выходе последнег формируется единичньй сигнал, кото- рый поступает на выход 21 устройства и свидетельствует об ошибке в ходе программы. Если при вьшолнении программы выполнена лишняя команда, то еще до выполнения команды останова на второй вход элемента ИЛИ 5 с выхода переноса из старшего разряда счетчика 1 поступает -единичньш сигнал, на выходе 21 устройства формируется единичный сигнал.
Если в программе имеются команды условного перехода, то заранее можн указать число команд, выполняемь х на участках программы от начала прораммы до первой команды условного перехода между командами условного перехода и от последней ветви программы команды УСЛОВНОГО перехода до команды останова. Для организации контроля хода программы, первой поле каждого разветвления программы, должна вьшолняться специальная команда. В этом случае при выполнении специальной команды как проверяется правильность выполнения условного перехода, так и задается число команд, подлежащих вьшолнению на участке программы, до следующей команды условного перехода или останова.При выполнении команды условного перехода на вход 17 признака конца контроля поступает единичный сигнал, как и. при выполнении команды останова.
При выполнении специальной команды участка программы, куда происходит передача управления по команде условного перекода, при выполнении которой осуществляется контроль пра- йильности перехода, устройство контроля хода программы работает следующим образом.
На вход 18 устройства поступает единичный сигнал, который открьюает элемент И 4. На второй вход элемента И 4 поступает сигнал с выхода схемы 6 сравнения, на вход 19 которой поступает сигнал признака условного перехода, сформированный в машине, а на вход 20 поступает сигнал одноразрядного признака с того разряда регистра команд машины, в котором при выполнении специальной команды хранится значение одноразрядного кода, записанного в поле 28. Если условньй
42967 4
переход осуществлен правильно, то на входы 19 и 20 устройства поступают одинаковые сигналы, с выхода схе- . мы 6 на второй вход элемента И 4 пос- тупает нулевой сигнал. Если условный переход осуществлен неправильно,на входы 19 и 20 устройства поступают .разные сигналы и с выхода схемы б на второй вход элемента И 4 поступает
IQ единичный сигнал. С выхода, элемента И 4 единичный сигнал поступает на третий вход элемента ИЛИ 5 и формирует на выходе 21 устройства единичный сигнал, свидетельствующий об
j ошибке в ходе программы..
Если в программе имеются циклические участка, то заранее можно указать число повторений цикла. В этом перед циклическим участком
2Q становится специальная команда, в поле 29 КОТОРО.Й записана 1, в поле 31 - число повторений цикла в дополнительном коде. Первой командой циклического участка становится спе5 циальная команда, в поле 27 которой записан О, в поле 30 - число команд, подлежащих выполнению в циклическом участке без учета команды условного перехода, в полях 28,29 и 31 записаны О. Первой командой участка программы, на который происходит передача управления после выхода из цикла, становится специальная команда, в поле 27 которой записана 1, в поле 28 записано
с
эталонное значение сигнала условного, перехода (й)э 1) а в остальных полях (29-31) записаны О.
В этом случае устройство контроля хода программы работает следующим образом.
о При начальных установках цикла в устройстве управления ЦВМ проводится а.нализ кода специальной команды. Если в поле 29 специальной команды
5 записана 1 то на вход 22 устройства поступает единичный сигнал признака контроля цикла, который устанавливает в единичное состояние триггер 11 и обнуляет все разряды счетчика 7,
на который после этого заносится код из поля 31 специальной команды. При очередном вьшолнении циклического участка (тела цикла) в устройстве .управления ЦВМ проводится анализ спе5 циальной команды. Так как в поле 27 записан О, на вход 18 устройства не поступает единичный сигнал признака контроля перехода, элемент И 4
0
0
акрыт и анализ правильности услового перехода не проводится. На вход„ 15 устройства поступает сигнал, сбра- .ьшающий счетчик 1 я нулевое состояие На вход 13 устройства поступает правляющий сигнал занесения кода на четчик, по которому прямой код числа оманд, подлежащих выполнению в цикическом участке, записанный: в поле 30 специальной команды, преобразуется в дополнительный и поступает на счетчик 1. В конце вьшолнения каждой команды, кроме команды условного перехода, на вход 14 устройства поступает сигнал, по которому содержимое счетчика 1 увеличивается на единицу. При выполнении команды условного перехода в начале цикла на входе 23 устройства формируется единичный сигнал условного -перехода coj,, который поступает на входы первого 3 и третьего 9 элементов И.Если ход вы„ полнения циклического участка не нарушен, т,е„ ке пропущена ни одна команда и не вьшолнено ни одной лиш-- ней команды, все разряды счетчика 1 находятся в единичном состоянии, С выхода элемента И-НЕ 2 ни вход элемента И 3 поступает нулевой сигнал и на его выходе не формируется единичный сигнал.
Если при выполнении циклического участка программы пропз щена хотя бы одна команда, то на выходе элемента И-НЕ 2 сформируется единичный сигнал,, который сфор шрует на выходе элемента И 3 также единичный сигнал,кото- . рый поступает на вход элемента ИЛИ 5, На выходе элемента ИЛИ 5 формируется единичный сигнал, который поступает на выход 21 устройства и свидетельствует об ошибке в ходе программы. Если при выполнении програ. выполнена лишняя командвд то еще до выполнения команды перехода в начале
цикла на второй вход элемента ИЛИ 5 с выхода переноса из старшего разряда счетчика 1 поступает единичный сигнал на вьрсоде 21 yqrpoftcTBa формируется единичный сигнал опшбки.. Единичный сигнал условного перехода
-СО а с входа 23 поступает на вход элемента И 9, кото рый открыт разрешающим потенциалом, с выхода триггера
11 с На выходе элемента И 9 формируется сигнал, поступающий на счетный вход счетчика 7j по которому его со- держимое увеличивается на единицу.
0
5
0
5
0
5
Q
5
0
5
При выходе из цикла по команде условного перехода в устройстве управления ЦВМ проводят анализ специальной команды, выполняемой первой . после выхода из цикла, В полях 27 и 28 данной специальной команды записаны 1, которые в виде единичных сигналов поступают с входов 18 и 20 устройства на первый и второй входы элемента И 12, открытые по первому входу потенциалом с выхода триггера 11 Элемент И 12 срабатывает и выдает на выходе сигнал, устанавливающий в О триггер 11 и поступающий на вход элемента И 10. Если ход программы не нарушен, т.е. цикл вьшол- нен заданное число раз, то все разряды счетчика 7 находятся в единичном состоянии. С выхода элемента И-НЕ 8 на вход элемента И 10 поступает нулевой сигнал и на его выходе не формируется единичный сигнал. Если цикл вьтол1.шется число раз меньше задан- ного, то при вькоде из цикла не все разряды счетчрпса 7 находятся в единичном состоянии, на выходе элемента И-НЕ 8 присутствует единичный сигнал, который сформирует на выходе элемента И 10 также единичный сигнал, который поступает на вход элемента ИЛИ 5. На выходе элемента ИЛИ 5 формируется единичньш сигнал, которьш поступает на вькод 21 устройства и CBi-щегельствует об ошибке в ходе программы. Если программа зациклилась, то на второй вход элемента ШШ 5 с выхода переноса из старшего разряда счетчика 7 поступает единичный сигнал и на выходе 21 устройства формируется единичный сигнал.
Предлагаемое устройство способно контролировать ход программь и при наличии прерываний. При отработке прерываний содержимое основных регистров машины запоминается в памяти, С вькодов 16 и 24 устройства контроля хода программы, соединенных с выходами единичных разрядов соответственно счетчиков 1 и 7, коды, находящиеся на счетчиках, поступают и запоминаются в соответствуюш 1х ячейках памяти машины. При-возвращении к прерванной программе необходимо восстановить на счетчиках 1 и 7 информацию, которая находится в момент прихода сигнала прерывания. Это дела-; ется путем вычисления специальной команды, в полях 30 и 31 которой записаны коды, записанные в память.
Формула изобретени
Ус тройство для контроля хода программ по авт, св. № 89-2446, отличающееся тем, что, с целью расширения функциональных возможностей устройства путем проверки выполнения циклических участков программ в него введены второй счетчик, второй элемент И-НЕ, третий, четвертый и пятьш элементы И и триггер, причем вход триггера объединен с установочным входом второго счетчика и подключен к входу признака контроля цикла устройства, прямой выход триггера соединен с первыми входами третьего и пятого элементов И, второй вход третьего элемента И объединен с первым входом первого элемента И и подключен к входу признаРедактор Н.Гунько
Составитель И.Сафронова
Техред М.Ходанич Корректор Т. Колб
Заказ 3707/49
Тираж 671Подписное
ВНИИПИ Государственного комитета СССР
по делам изобретений и открытий 113035, Москва, Ж-35, Москва, Ж-35, Раушская наб., д, 4/5
Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4
ка повторения цикла устройства, выход третьего элемента И соединен со счет- . ным входом второго счетчика, группа информационных входов которого является группой информационных входов устройства, информационные выходы
второго счетчика соединены с соответствующими входами второго элемента
10 И-НЕ и образуют группу информационных выходов устройства, вькод второго элемента И-НЕ соединен с первым вхо- . дом четвертого элемента И, второй вход которого объединен с нулевым
f5 входом триггера и подключен к выходу пятого элемента И, второй и третий входы которого подключены соответственно к входам признака условия и признака контроля перехода устройства, выход переполнения счетчика и выход четвертого элемента И соединены с вторым и четвертым входами элемента ИЛИ соответственно.
20
название | год | авторы | номер документа |
---|---|---|---|
Устройство для контроля хода программы | 1985 |
|
SU1325488A2 |
Устройство для контроля хода программы | 1980 |
|
SU892446A1 |
Микропрограммное устройство управления с контролем | 1983 |
|
SU1270772A1 |
Многоканальная система для контроля и диагностики цифровых блоков | 1984 |
|
SU1269137A1 |
Устройство для контроля микропроцессорной системы | 1985 |
|
SU1287161A1 |
Устройство для отладки программ | 1982 |
|
SU1049914A1 |
Устройство для контроля условных переходов микропроцессора | 1984 |
|
SU1238076A1 |
Устройство для тестового контроля больших интегральных схем | 1984 |
|
SU1218390A1 |
Устройство для контроля хода программы | 1988 |
|
SU1663612A1 |
Микропрограммный процессор | 1984 |
|
SU1262495A1 |
Изобретение относится к вычисли- тельной технике и может быть использовано для контроля хода программы специализированных ЭВМ и является усовершенствованием устройства по авт. св. № 892446. Цель изобретения - расширение функциональных возможностей путем проверки выполнения циклических участков программ. Устройство содержит два счетчика, два элемента И-НЕ, пять элементов И, схему сравнения, элемент ИЛИ. 2 ил. Ю i4 1ч9 Q& ГО
Устройство для контроля хода программы | 1980 |
|
SU892446A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1986-07-07—Публикация
1984-12-04—Подача