1
Изобретение относится к вычислительной технике и может быть использовано для отладки программ.
Известны устройства i для отладки программ, содержащие блок памяти, блок формирования адреса, блок приема и выдачи чисел и команд, блок управления, регистр режима .программы и триггер управления.
Недостаток известных устройств состоят в длительности отладки программ.
Наиболее близким к предложенному по сущности технического решения является устройство 2 для отладки программ, содержащее регистр первого перехода/ регистр второго перехода, схему сравнения, счетчик команд, дешифратор, блок операций, первый, второй и третий переключатели, регистр команд, вход которого соединен с первым входом устройства, а выход через первый переключатель с первым входом схемы сравнения и со входом блока операций, первый выход которого соединен со входом деишфратора, а второй выход со вторым входомсчетчика команд. Выход дешифратора соединен с первым входом счетчика команд, выход которого через второй переключатель соединён со вторым входом схемы сравнения и с первым входом регистра второго
5 перехода, выход которого соединен с первым входом регистра первого перехода. Выход схемы сравнения соединен с выходом устройства. Устройство содержит также первый, вто0 рой и третий триггеры, первый и
второй элементы задержки, вход первого элемента задержки, первый вход первого триггера и через третий переключатель «гервый вход третьего
15 триггера соединены со вторым выходом блока операций. Выход первого элемента Зсщержки соединен со входом второго элемента задержки, с первым входе второго триггера и со вторым
20 входом первого триггера, выход которого соединен со вторым входом регистра первого перехода. Выход второго элемента задержки соединен со вторялм входом второго триггера,
25 выход которого соединен со вторым входом регистра второго перехода. Выход третьего триггера соединен с выходом устройства, а второй вход третьего триггера - со входом устройства. Устройство позволяет производить поиск места сбойной команды в программе, так как фиксирует в ав тематическом режиме работы ЦВМ в регистрах переходов два последних перехода в отлаживаемой программе, а также в полуавтоматическом режиме с остановами ЦВМ-адреса подряд идущих переходов, Однако оно имеет следующие недостатки:-в автоматическом режиме не фик сируется адрес команды, предшествующий адресу перехода, т.е. адрес команды, откуда был совершен переход;-в полуавтоматическом режиме не производится останов ЦВМ в местах ветвления отлаживаемой программы, что существенно ограничивает возможности устройства при отладке про граммы и вызывает увеличение сроков отладки. Объясняется это тем, что в проце се отладки для поиска сбойной команды программы оператору- программи ту в автоматическом режиме работы необходимо знать не только адрес программы, куда был осуществлен переход, но и с какого места программы этот переход был осуществлен. Кроме того, в полуавтоматическом режиме работы оператор не только должен знать переходы в отлаживаемой программе, но. и все места в программе, где производится ветвление, и те условия, при которых они осуществляются или не осуществляются. Второй из указанных режимов в принципе возможен, однако требуется для каждого останова машины набирать соответствующий адрес команды Останов ЦВМ, что существенно увеличивает время отладки. Целью изобретения является сокра щение времени отл-адки программ устр ства, Поставленная цель достигается тем, что в устройство, содержащее регистр первого перехода, соединенн первым входом с выходом регистра второго перехода, а вторым входом с выходом первого триггера, первый вход которого подключен ко входу п вого элемента задержки, а второй вход - к выходу первого элемента з держки, входу второго элемента задрржки и первому входу второго три гера, второй вход и выход которого соединены соответственно с выходом второго элемента задержки и первым входом регистра второго перехода, гистр команд, вход которого являет первым входом устройства, а первый ход - соединен со входом блока опе ций, первый выход которого соедине через дешифратор с первым входом счетчика команд, соединенного первы выходом со вторым входом регистра второго перехода, схему сравнения, первым входом подключенную через первый переключатель к первому и второму выходам регистра команд, и вторым входом - через второй переключатель к первому и второму выходам счетчика команд, и третий триггер, первый вход и выход которого являются соответственно вторым входом и выходом устройства, а второй вход - через третий переключатель соединен со вторым входом счетчика команд, подключенного ко второму выходу блока операций, согласно изобретению, введены четвертый триггер, два элемента И, третий элемент задержки и три переключателя, причем первый вход первого элемента И соединен со вторым выходом блока операций, третий и четвертый выходы которого через четвертый переключатель соединены со вторым входом первого элемента И, выходом соединенного с первым входом четвертого триггера и через элемент задержки с первым входом второго элемента И, выход которого подключен ко входу первого элемента задержки и второму входу четвертого триггера, выходом соединенного со вторым входом второго элемента И, второй вход первого элемента И подключен через пятый переключатель ко второму входу третьего триггера, выход схемы сравнения через шестой переключатель соединен с выходом устройства и третьим входом первого элемента И. На чертеже представлена структурная схема устройства, содержащего блок 1 управления, регистр 2 первого перехода, регистр 3 второго перехода, узел 4 управления регистраг.Ш перехода, схему 5 сравнения, ре гистр 6 команд, блок 7 операций, дешифратор 8, счетчик 9 команд, первый вход 10, элементы задержки 11, 12, триггеры 13-15, второй вход 16, третий переключатель 17, первый переключатель 18, второй переключатель 19, (20), четвертый переключатель 21 (22), шестой переключатель 23, пятый переключатель 24, узел 25 управления переходами, включающий первый элемент И 26, четвертый триггер 27, второй элемент И 28 и третий элемент, задержки 29. Устройство работает в двух режимах: в автоматическом режиме в реальном масштабе времени и в полуавтоматическом режиме с остановами машины по калодому условному или безусловному переходу (УП или БП). Если переключатели 21-24 находятся в отключенном положении, то устройство работает как прототип, т.е. в регистрах 2, 3 переходов фиксируются адреса двухпоследних переходов (УП или БП) на момент останова программы (останова Цвм).
В автоматическом режиме, если включить переключатель 21 (или 22) сигнал с блока 7 операций поступит в узел 25 на вход открытого элемента И 26, так как сигнала запрета на его работу со схемы сравнения 5 нет (переключатель 23 находится в ключенном положении). Сигнал УП ил БП из блока 7, через элемент И 26 поступит на вход триггера 27, кото откроет элемент И 28. Одновременно сигнал с элемента И 26 через элемент задержки 29 поступает на второй вход элемента И 28, после срабатывания которого сигнал поступит на вход триггера 27, Триггер 27 вновь изменит сйое состояние и в результате на вход элемента И 28 пступит сигнал запрета.
Узел 4 управления сработает от сигнала элемента И 28 таким образо что на момент выработки сигнала перехода (УП или БП) в блоке 7 адрес команды, который находился в счетчике 9, запишется в регистр 3, т;е запишется адрес, предшествующий адресу перехода.
Временная диаграмма работы ЦВМ обычно построена так, что вначале по одному из машинных тактов вырабатывается в блоке 7 сигнал перехода (УП или БП), по следующему такту, если условия выполнены, вырабатывается сигнал обнуления счетчика 9 команд (). В результате, после того как сработали элементы узла 25 и узла 4 от сигнала УП и БП, эти узлы вновь сработают от сигнала , который поступит на один из входов элемента И 26, Процесс повторится, но при этом в счетчике 9 команд уже находится адрес перехода, который при срабатывании узла 4 управления от сигнала запишется в регистр 3, а тот адрес, который там был, перепишется в регистр 2. Если в данный момент остановить ЦВМ, то оператор на поле индикации будет иметь возможность наблюдать: адрес команды с регистра 6 команд, адрес счетчика 9 команд, адрес перехода с регистра 2 и адрес, предшествующий переходу с регистра 2. Часто возникает необходимость зафиксировать адрес перехода (обычно условноГо) и адрес, предшествуквдий переходу, на каком-то участке программы при условии, что программа на ЦВМ прошла весь участок (задачу).Для этого необходимо включить переключатель 23 в устройстве, а место, где необходимо прервать работу узла 25 управления переходами, зафиксировать с помощью переключателя 19 (или 20), т.е. с помощью этого переключателя устанавливается гщрес команды, при которой сработает схема сравнения 5 и вьщаст через переключатель 23 сигнал запрещения работы элемента И 26. В результате в регистрах 2, 3 зафиксируются интересующие оператора адреса, процесс идет в реальном масштабе времени.
В полуавтоматическом режиме включается переключатель 24, Те0перь с канодым приходом сигнала перехода с блока 7 (УП или БП) будет срабатывать триггер 15 и выдавать сигнал Ост. ЦВМ в блок 1. Чтобы вновь осуществить пуск машины,
5 оператор с пульта ЦВМ подает сигнал обнуления по входу 16 на триггер 15. И снова пройдет цикл работы машины до прихода сигнала УП (или БП). В данном режиме оператор
0 достаточно оперативно контроль адресов переходов и адресов, предшествующих переходам.
Таким образом, из-за введения
5 новых элементом в управление ЦВМ функциональные возможности машины при откладке программ значительно расширяются, что приводит к существенному сокращению времени отлад0ки прогоамм, так как оператору-программисту в данном случае приходится затрачивать меньше времени на поиск ошибки (особенно системной) при наличии большого числа ветвле5ний программы,
Формула изобретения
Устройство для отладки программ, содержащее регистр первого перехода, соединенньгй первым входом с выходом регистра второго перехода, а вторым входом - с выходом первого триггера, первый вход которого подключен ко входу первого элемента задержки, а второй вход - к выходу первого элемента задержки, входу второго элемента задержки и первому входу второго триггера, второй вход и выход которого соединены соответственно с выходом второго элемента задержки и первым входом регистра второго перехода, регистр ко7-1анд, вход которого является первым входом устройства, а первый выход - соединен со входом блока операций, первый выход которого соединен через дешифратор с первым входом счетчика команд, соединен- ного первым выходом со вторым входом регистра второго перехода, схему сравнения, первым входом подключенную через первый переключатель к первому и второму выходам регистра команд, а вторым входом через второй переключатель к первому и второму выходам счетчика команд, и третий триггер, первый вход и выход которого являются соответственно вторым входом и выходом устройства, а второй вход - через третий переключатель соединен со вторым входом счетчика команд, подключенного ко второму выходу блока операций, отличающееся тем, что, с целью сокреицения времени отладки программы, в него введены четвертый триггер, два элемента И, третий элемент задержки и три переключателя, причем первый вход первого элемента И соединен со вторым выходом блока операций, третий и четвертый выходы которого через четвертый переключатель соединены со вторым, входом первого элемента И, выходом соединенного с первым входом четвертого триггера и через элемент
задержки с первым входом второго элемента И, выход которого подключен ко входу первого элемента задержки и второму входу четвертого триггера, выходом соединенного со вторым входом второго элемента И, второй вход первого элемента И подключен через пятый переключатель ко второму входу третьего триггера выход схемы сравнения через шестой переключатель соединен с выходом устройства и третьим входом первого элемента И.
Источники информации, принятые во внимание при экспертиз
1.Авторское свидетельство СССР по заявке 2499775,
кл. G 06 F 11/00, 1977.
2.Авторское свидетельст о СССР по заявке 2016696/18-24,
кл. G 06 F 9/20, 1974 (прототип).
название | год | авторы | номер документа |
---|---|---|---|
Устройство для отладки программ | 1983 |
|
SU1104521A1 |
Устройство для отладки программ | 1986 |
|
SU1363221A1 |
Устройство для отладки программ | 1974 |
|
SU598077A1 |
Устройство для обмена информацией между аналоговой и цифровой вычислительными машинами | 1990 |
|
SU1755372A1 |
Устройство для отладки программ | 1984 |
|
SU1166122A1 |
Устройство для обмена информацией между цифровой и аналоговой вычислительными машинами | 1983 |
|
SU1257673A1 |
Устройство для отладки программ | 1986 |
|
SU1327112A1 |
Имитатор абонентов | 1983 |
|
SU1291987A1 |
Устройство для коррекции программ | 1982 |
|
SU1092514A1 |
Устройство для отладки программ | 1980 |
|
SU960828A1 |
Авторы
Даты
1980-09-15—Публикация
1978-06-21—Подача