Устройство для отладки программ
Иллюстрации
Показать всеРеферат
Устройство для отладки программ относится к автоматике и вычислительной технике. Целью изобретения является ускорение процесса отладки. Указанная цель длстигается вводом счетчика циклов, блока памяти для хранения отлаживаемых программ, программ отладчиков и одноразрядного блока -памяти для хранения меток, по которым возможна остановка программы в любой команде, двух мультиплексоров . Данное устройство обеспечивает как останов в любой точке программы , так и подмену отлаживаемой программы программой отладчика. 1 ил.
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУ БЛИН
42 А1 (19) (11) (sp 4 G 06 F 11/28
ОПИСАНИЕ ИЗОБРЕТЕНИЯ /
К АВТОРСКОМ,Ф СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР пО делАм изОБРетений и ОткРытий (21) 3811455/24-24 (22) 10.11.84 (46) 07.12.86. Бюл. У 45 (72) Е.В. Андреева, С.А. Архипов, Н.П. Корнышев и В,А. Максимов (53) 681.3(088.8) (56) Авторское свидетельство СССР
В 960821, кл. (06 F 11/00, 1980.
Авторское свидетельство СССР
)) 1043657, кл. G 06 F 11/00, 1980. (54) УСТРОЙСТВО ДЛЯ ОТЛАДКИ ПРОГРАММ ,(57) Устройство для отладки программ .относится к автоматике и вычислительной технике. Целью изобретения является ускорение процесса отладки.
Указанная цель длстигается вводом счетчика циклон, блока памяти для хранения отлаживаемых программ, программ отладчиков и одноразрядного блока памяти для хранения меток, по которым возможна остановка программы в любой команде, двух мультиплексоров. Данное устройство обеспечивает как останов в любой точке программы, так и подмену отлаживаемой программы программой отладчика. 1 ил.
1275452
Изобретение относится к автоматике и вычислительной технике и может быть использовано при отладке программ и при создании специализированных устройств, предназначенных для отладки программ совместно с аппаратными средствами.
Целью изобретения является ускорение процесса отладки.
На чертеже приведена структурная схема устройства.
Устройство содержит блок 1 задания режимов, второй 2 и третий 3 мультиплексоры, генератор 4 одиночнь1х импульсов, блок 5 памяти, второй б и третий 7 элементы И, счетчик 8 тактов, регистр 9 адреса, счетчик
10 циклов, первый элемент И 11, первый мультиплексор 12, триггер 13 приостанова, регистр 14 индикации и бпок 15 индикации.
Блок 1 задания режимов имеет выход 16 задания количества циклов, выход 17 разрешения останова, выход
18 разрешения покомандной работы, выход 19 управления выбором вида индицируемой информации, выход 20 задания количества тактов задержки, первый 21 и второй 22 выходы разрешенин выборки, информационные выходы
23, выход 24 управления мультиплексорами и адресные выходы 25. Блок 1 задания режимов представляет собой клавиатуру с набором тумблеров.
Устройство имеет вход 26 управления режимом "Запись-чтение", вход
27, тактовый информационный вход 28 и адресный вход 29. В состав блока 5 памяти входят одноразрядный блок 30 памяти и блок 31 памяти адресов.
Устройство работает следующим образом.
С блока 1 задаются исходные данные, осуществляется управление устройством. Так, например, отлаживаеиая программа, в зависимости от сигнала на выходе 24 управления мультиплексорами, может быть введена в блэк 5 либо вручную с использованием выходов 21-25 блока 1, либо путем загрузки от внешнего устройства по входам 28 и 29. Введенная программа .хранится в блоке 31 блока 5. Одноразрядный блбк 30 используется для занесения меток (логическая "1") по адресам тех команд, в которых необходимо сделать останов при прогоне
5 !
О
S5 программы с частотой следования тактовых импульсов, (тактовый вход 27) .
Метки заносятся в блок 30 вручную с использованием выходов.21-25 блока 1. При этом по выходу 22 блока 1 блок 31 переводится в режим хранения, а по выходу 21 блока 1 иэ блока 30 разрешается выборка. Установкой необходимого адреса по выходу 25 блока 1 и метки по первому из группы выходов 23, а также при выдаче сигнала записи по входу 26 производится занесение метки в блок 30. Одновременно в зависимости от управляющего сигнала по выходу 18 блока 1 через мультиплексор 12 и регистр 14 индикации в блоке 15 отображается выбираемый адрес или команда ° Таким образом может быть помечено неограниченное число команд, что очень удобно при отладке программ с большим количеством условных переходов.
Перед прогоном программы оператор заносит информацию о количестве циклов прохода через помеченную команду в счетчик 10 циклов. Информация о количестве циклов подается на соответствующий вход счетчика 10 с выхода 16 блока 1 и заносится в счетчик 10 по положительному фронту импульса с генератора 4. Одновременно триггер 13 останова устанавливается в исходное состояние. По выходу 20 блока 1 оператор задает количество тактов задержки для сетчика 8 тактов. Кроме этого, оператор по вьг ходу 17 блока 1 разрешает останов программы, а по выходу 18 запрещает
I покомандную работу. При этом соответствующие сигналы выдаются на входы элементов И 6 и 11. После этого производится запуск прораммы. При этом адресные сигналы поступают по входу
29 через мультиплексор 2 на входы блоков 30 и 31, а также на входы рег гистра 9 и мультиплексора 12. При считывании "помеченной команды логическая "1", поступая на вход записи числа счетчика 8, вызывает запись в него информации о количестве тактов задержки, установленной на
его информационном входе. Одновременно происходит запрещение прохождения тактовых импульсов через элемент
И 7. В результате этого в регистр 9 адрес текущей команды не вводится и, таким образом, в нем фиксируется адрес команды, предшествовавшей
1275452
"помеченной . После отсчета заданного количества тактов задержки, т.е. при равенстве содержимого нулю, счетчик 8 вырабатывает сигнал, поступающий через элемент И 11 на 5 счетный вхо;:,: счетчика 10 циклов. После отсчета заданного в нем количества циклов прохода через "помеченную" команду (т.е ° при равенстве содержимого счетчика нулю), счетчик 10 >0 вырабатывает сигнал, включающий триггер 13 останова. Таким образом, осуществляется останов в команде, которая следует через заданное количество тактов от "помеченной" коман- <5 ды, после прохождения заданного количества циклов через эту команду, что особенно удобно при проверке и отладке программ с циклическими участками. 20
Контроль адреса "помеченной" команды, адреса текущей команды, самой команды или информации от внешнего устройства (шина 28) производится с помощью мультиплексора 12, ре- 25 гистра 9, регистра 14 индикации, блока 15 индикации. Оператор может внести изменения в программу, содержащуюся в блоке 31, занести новые метки в блок 30 и продолжить проверку (отладку) программы. При этом, как и при ручном вводе информации в блок 5, используются выходы 21-25 блока 1.
При переводе блока 31 в режим хранения (выход 22), а также при записи его выход отключается от информационной шины 28. По окончании отладки программа может быть выведена на внешнее устройство по шине
28. По покомандной работе оператор по выходу 18 блока 1 разрешает прохождение через элемент И 6 сигналов с генератора 4 на вход сброса счетчика 8, предварительно установив по 4 выходу 16 блока 1 количество циклов, равное единице. При поступлении положительного перепада импульсов с генератора 4 в счетчике 10 происходит запись числа 1, одновременно триггер
13 устанавливается в исходное состояние. При поступлении отрицательного перепада импульса с генератора 4 происходит сброс (обнуление) счетчика
8 тактов задержки, который при равенстве его содержимого нулю выраба,тывает импульс, поступающий через элемент И 11 на счетный вход счетчика 10. В результате .этого содержимое счетчика 10 также становится равным нулю. формула изобретения
Устройство для отладки программ, содержащее блок задания режимов, первый и второй элементы И, генератор одиночных импульсов, триггер приостанова, блок индикации, регистр адреса, регистр индикации, первый счетчик тактов и мультиплексор, причем выход генератора одиночных импульсов соединен с первым входом пер вого элемента И и нулевым входом триггера приостанова, единичный выход которого является выходом останова устройства, выход разрешения останова блока задания режимов соединен с первым входом второго элемента И, тактовый вход устройства сое-. динен с первым входом третьего элемента И и входом синхронизации счетчика тактов, выходы первого и второго разрядов которого соединены соответственно с вторым входом второго элемента И и входом записи регистра индикации, информационный выход которого соединен с входом блока индикации, выходы задания величины задержки и типа индицируемой информации блока задания режимов соединены соответственно с информационным входом счетчика тактов и управляющим входом первого мультиплексора, выход разрешения покомандной работы блока задания режимов соединен с вторым входом первого элемента И, выход которого соединен с входом разрешения счета счетчика тактов, выход третьего элемента И соединен с входом. записи регистра адреса, выход которого соединен с первым информационным входом первого мультиплексора, выход которого соединен с информационным входом регистра индикации, о т л и ч а ющ е е с я тем, что, с целью ускорения процесса отладки, в устройство введены второй и третий мультиплексоры, счетчик циклов, одноразрядный блок памяти и блок памяти программ, причем адресный вход устройства и адресный выход блока задания режимов соединены соответственно с первым и вторым информационными входами второго мультиплексора, выход котоСоставитель И.Сигалов
Редактор О. Головач Техред В.Кадар Корректор Г.Решетник
Заказ 6562/41
Тираж 671 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб,, д. 4/5
Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4
5 1 рого соединен с вторым информационным входом первого мультиплексора, информационным входом регистра адреса, адресными входами одноразрядного блока памяти и блока памяти программ, выход которого соединен с третьим информационным входом первого мультиплексора, с первым информационным входбм третьего мультиплексора и является адресным выходом устройства, группа информационных выходов блока задания режимов соединена с второй группой информационных входов третьего мультиплексора, первый выход и группа выходов которого соединены соответственно с входом данных одноразрядного блока памяти и группой информационных входов блока памяти программ, первый и второй выходы обращения блока задания режимов соединены с входами разрешения выборки, соответственно
275452 а одноразрядного блока памяти и блока памяти программ, выход одноразрядного блока памяти соединен с информационным входом счетчика тактов и с входом третьего элемента И, вход признака записи устройства соединен с входами записи одноразрядного блока памяти и блока памяти программ, выход управления направле1О нием передачи адреса блока задания режимов соединен с управляющими входами второго и третьего коммутаторов, выход задания количества циклов блока задания режимов соединен
1 с информационным входом счетчика циклов, выход генератора одиночных импульсов и выход второго элемента
И соединены соответственно с входом записи и счетным входом счетчика
2ц циклов, выход которого соединен с единичным входом триггера приостанова.