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

Иллюстрации

Показать все

Реферат

 

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

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

РЕСПУБЛИК (я)з 6 06 F 11/28

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

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

ПРИ ГКНТ СССР

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

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4618308/24 (22) 23.11.88 (46) 07.06,91. Бюл, М 21 (71) Всесоюзный научна-исследовательский институт электромеханики (72) В.Б.Иванчук, С.Я,Куцаков, M,В.Протопопов. В,Н.Степанов и B.Е,Лызлов (53) 631.3 (088,8) (56) Авторское свидетельство СССР

hh 1030805, кл. 6 06 F 11/22. 1982. Авторское свидетельство СССР

М 1383372, кл. 6 06 Е 11/28. 1986. (54) УСТРОЙСТВО ДЛЯ ОТЛАДКИ ПРОГРАММ (57) Изобретение относится к автоматике и вычислительной технике и может использоИзобретение относится к автоматике и вычислительной технике и может использоваться при разработке аппаратуры по отладке программ микроЭВМ, Цель изобретения — расширение функциональных воэможностей устройства за счет введения режима останова программы без прерывания работы ЭВМ и перевода ее в режим ожидания.

На чертеже изображена функциональс. ная схема устройства.

Устройство для отладки программ содержит блок 1 оперативной памяти трасс, первый счетчик 2 адреса, дешифратор 3 команд, счетчик 4 циклов, элемент ИЛИ 5, элемент ИЛИ-НЕ 6, элемент ИЛИ 7, блок 8 оперативной памяти точек останова, первый триггер 9, второй счетчик 10 адреса, блок 11 постоянной памяти останова, пер„„Я2„„1б54827 А1 ваться при отладке программ микроЭВМ.

Цель — расширение функциональных возможностей эа счет введения режима останова программы без прерывания работы ЭВМ и перевода ее в режим ожидания. Устройство содержит блок оперативной памяти трассы, два счетчика адреса, два дешифратора команд, счетчик циклов, элемент ИЛИ, элемент ИЛИ-НЕ, блок оперативной памяти точек останова, блок постоянной памяти останова, два регистра адреса, два триггера, элемент И. Устройство обеспечивает выполнение двух режимов работы: записи/чтения трассы исполнения программы и останова отлаживаемой программы по адресу или области адресов без перевода

ЭВМ в режим ожидания. 1 ил. вый регистр 12 адреса, дешифратор 13, второй регистр 14 адреса, элемент И 15, второй триггер 16, шину 17 данных, вход 18 признака чтения команды. вход 19 начальной установки устройства, вход 20 сигнала записи устройства, вход 21 сигнала признака адреса, шина 22 адресов устройства, вход 23 сигнала чтения устройства, вход 24 адресный первого дешифратора 3, выход 25 дешифратора 3, счетный вход 26 счетчика 4 циклов команд, вход 27 установки в йсходйое состояние счетчика 4, вход 28 загрузки счетчика 4; информационные входы 29 счетчика 4, выход 30 элемента ИЛИ 5, являющийся выходом сигнала, сопровождающего чтение кодов команд, информационный вход 31 блока 8, вход 32 адреса блока 8, вход 33 записи блока 8, информационный вход 34 блока 8, счетный вход 35 триггера 9, 1654827 вход 36 установки в исходное состояние триггера 9, вход 37 установки в исходное состояние счетчика 10 адресов, счетный вход 38 счетчика 10, адресные входы 39 блока 11, информационные входы 40 блока 11, вход 41 выбора блока 11, вход 42 бло а 11 счетный вход 43 триггера 16, вход 44 установки в исходное состояние триггера 16, выход 45 триггера 9, информационный вход

46 регистра 12, вход 47 установки регистра

12, информационные выходы 48 регистра

12, информационные выходы 49 блока 1, вход 50 записи блока 1, вход 51 чтения блока

1, являющийся входом чтения устройства, адресные входы 52 блока 1, информационные выходы 53 блока 1, 1лнформационные входы 54 счетчика 2 адреса, счетный вход 55 счетчика 2, вход 56 установки в исходное состояние счетчика 2, вход 57 загрузки счет ",ика 2, информационные выходы 58 c98T éка 2, входы 59 дешифратора i33, вход 60 разрешения дешифратора 13, выходы 61, 62 дешифратора 13, информационный вход 63 регистра 14, вход 64 установки регистра 14., вход 65 разрешения выходов регистра 14, информационный выход 66 регистра 14, выход 67 сигнала запрета обращения к блоку с отлаживаемой программой.

Устройство обеспечивает выполнение двух режимов работы: записи/чтения трассы исполнения программы и останава отлаживаемой программы по адресу или области адресов без перевода 3ВМ в режим ожидания.

В режиме записи трассы на адресные входы дешифратора 3 поступают данные с шины данных ЗВМ (в качестве дешифратора 3 используется ПЗУ с малым временем выборки, например К556РТ4, и записанным в него числом циклов исполнения команд

ЗВМ по адресам, которые являются кодами этих команд).

Доичный код, представляющий число циклов, с выхода дешифратора 3 поступает на информационные входы счетчика 4 циклов 4, которые загружаются при логическом нуле на входе 28. Логический нуль на вход

28 может выставляться по сигналу низкого уровня установки в исходное состояние на входе 19 устройства, Тогда входы 29 счетчика 4 обнуляются, и логический нуль устанавливается на выходе элемента ИЛИ 5, или в конце счета числа циклов по синхросигналу, поступающему на вход 26. Сигнал загрузки счетчика 4 является сопровождающим чтение кода команд ЭВМ. По этому сигналу, поступающему через элемент ИЛИ 7, при логическом нуле на другом входе этого элемента, на вход блока 1 происходит запись информации с адресной шины, соответству5

55 ющей значению счетчика команд ЭВМ, по адресам, определяемым счетчиком 2 адреса, пересчет которых идет по сигналу с элемента ИЛИ 5. Чтение значения счетчика команд из блока 1 происходит по сигналу чтения, поступающему на вход 51 при логической единице на входе 50 и логическом нуле на входе 57 загрузки счетчика 2 адреса, которые выставляются после формирования сигнала останова. Чтение производится по адресам, определяемым состоянием адресной шины 48, адреса выставляются на адресных входах 52 блока 1. Выход 53 блока

1 подсоединен к шине 17 данных, Определить адрес последней ячейки блока 1, в которую записывалась информация, возможно при чтении регистра 14, в котором по сигналу останова "защелкнулся" этот адрес, Обращение к регистру 14 производится посредством дешифратора 13 сигналов обращения.

Режим останова отлаживаемой программы делится на два подрежима: формирование точек останова M сам останов (см.фиг,2 и 3).

Точки останова формируются в блоке 8 оперативной памяти записью нуля по адресам останова, выставляемым по адресной шине 48 3ВМ на входе 32. При исполнении отлаживаемой программы и возникновении условий останова, т.е. выставлений на адресной шине 48 адреса останова, на выходе

34 блока 8 памяти устанавливается логический нуль, который через элемент ИЛИ вЂ” НЕ б при логическом нуле на другом его входе, характеризующем чтение кода команд

ЭВМ, перебрасывает триггер 9, а также поступая на вход 44 сброса триггера 16, устанавливает его в исходное состояние. Сигнал с прямого выхода триггера 9, поступающий на вход 37 счетчика 10 адреса, переводит счетчик из исходного состояния в состояние счета по сигналам признака адреса, поступающим íà его счетный вход 38, запрещает запись в блок 1 и защелкивает на регистре

14 значение последней записанной ячейки блока 1, Сигнал с инверсного выхода триггера 9, поступая на вход 41 блока 11 постоянной памяти, разрешает его выбор и, поступая на вход 57 счетчика 2, переводит его в режим загрузки, Информация, записанная в нулевую ячейку блока 11, не представляющая собой код трехбайтной команды перехода, появляется на входе 40 блока 11 сразу после выставления 3ВМ адреса, соответствующего точке останова и переходу синхросигнала, по которому 3ВМ читает код команды.

Выставление на шине данных информации из следующих двух ячеек памяти происхо1654827 дит по сигналам 20 признака адреса, После считывания ЭВМ всей команды перехода к подпрограмме обработки останова на выходах счетчика 10 выставляются сигналы высокого уровня, которые через элемент И 15, поступая на вход 43 триггера 16, перебрасывают его в единичное состояние, и тем самым запрещается вывод информации блоком 11 на шину данных. Этим обеспечивается возможность работы с шиной данных во время выполнения подпрограммы обработки останова. В конце подпрограммы обработки останова должна присутствовать команда, обеспечивающая с помощью дешифратора 13 выдачу сигнала сброса останова, который сбрасывает в исходное состояние триггер 9, тем самым разрешая дальнейшее обращение к блоку с отлаживаемой программой, Таким образом, вместо выполняемой команды по адресу точки останова аппаратно подставляется команда обработки точки останова, что обеспечивает останов отлаживаемой программы без останова ЭВМ.

Формула изобретения

Устройство для отладки программ, содержащее блок оперативной памяти трасс, первый счетчик адреса, счетчик циклов первый элемент ИЛИ и первый триггер, причем информационные выходы первого счетчика адреса соединены с адресными входами блока оперативной памяти трасс, вход чтения устройства соединен с входом чтения блока оперативной памяти трасс, вход признака чтения команды устройства соединен со счетным входом счетчика циклов, информационные выходы которого соединены с входами первого элемента ИЛИ, о т л и ч аю щ е е с я тем, что, с целью расширения функциональных возможностей за счет введения режима останова программы без и рерывания работы отлаживаемой ЭВМ и перевода ее в режим ожидания, в него введены дешифратор команд, дешифратор адреса, второй элемент ИЛИ, блок оперативной памяти точек останова, элемент ИЛИ вЂ” HE, второй счетчик адреса, блок постоянной памяти, элемент И, второй триггер, первый и второй регистры адреса, причем информационный вход блока оперативной памяти точек останова, выходы блока оперативной памяти трасс, второго регистра адреса и блока постоянной памяти, входы дешифратора команд подключены к шине данных устройства, выходы дешифратора команд соединены с информационными входами счетчика циклов, вход начальной установки устройства соединен с нулевыми установочными входами первого счетчика адреса и счетчика циклов, выход первого элемента ИЛИ соединен с первым входом элемента MJlL4 — НЕ, входом загрузки счетчика циклов, первым входом второго элемента ИЛИ и счетным входом первого

10 счетчика адреса, выход первого регистра ад15

55 реса соединен с адресным входом блока оперативной памяти точек останова, информационными входами блока оперативной памяти трасс и первого счетчика адреса и входом дешифратора адреса, вход записи устройства соединен с тактовым входом дешифратора адреса и входом записи блока оперативной памяти точек останова, выход которого соединен с вторым входом элемента ИЛИ вЂ” HE, выход которого соединен со счетным входом первого триггера и нулевым входом второго триггера, первый и второй выходы дешифра тора адреса соединены соответственно с нулевым входом первого триггера и входом разрешения записи второго регистра адреса, информационный вход первого триггера соединен с шиной единичного потенциала устройства, прямой выход первого триггера соединен с нулевым входом второго счетчика адресов, вторым входом второго элемента ИЛИ, входом записи второго регистра адреса и является выходом запрета обращения устройства, инверсный выход первого триггера соединен с входом обращения блока постоянной памяти и входом разрешения записи первого счетчика адреса, выход которого соединен с информационным входом второго регистра адреса, вход признака адреса устройства соединен со счетным входом второго счетчика адреса и входом записи первого регистра адреса, адресные входы устройства соединены с информационными входами первого регистра адреса, выход второго злемента ИЛИ соединен с входом записи блока оперативной памяти трасс, выходы второго счетчика адреса соединены с адресными входами блока постоянной памяти и входами элемента И, выход которого соединен с тактовым входом второго триггера, информационный вход, второго триггера соединен с шиной единичного потенциала устройства, прямой выход второго триггера соединен с входом разрешения чтения блока постоянной памяти.

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

Редактор Б.Федотов Техред M,Моргентал Корректор М.Максимишинец

Заказ 2291 Тираж 420 Подписное

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

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

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