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

 

УСТРОЙСТВО ДЛЯ ОТЛАДКИ ПРОГРАММ, содержащее регистр исполнительного адреса, регистр адреса -) команд, блок буферных регистров, распределитель, счетчик, тригГер три элемента И, первый элемент ИЛИ и элемент задержки, причем выход, : регистра исполнительного адреса соединен с первым входом первого элемента И,.выход которого соединен с входом регистра адреса команд, выход последнего соединен с информационным входом блока буферных регистров, входы команд условного и безусловного переходов признака устройства соединены соответственно с первым и вторым входами первого элемента ИЛИ, выход которого соединен с первьлм входом второго элемента И и через элемент задержки с вторым входом первого элемента И,-выход втброг6 элемента И соединен с управляющим входом записи блока буферных регистipOB и счетными входами счетчика и , распределителя, выходы которого соединены с адресными входами блока буферных регистров, выходы которого являются информационными выходами устройства, выход счетчика и первый управляющий вход режима работы устройства соединены соответственно с первым и вторым входами третьего элемента И, выход которого соединен с нулевым входом триггера и является первым выходом прерывания устройства , выход триггера соединен с вторым входом второго элемента И, отличающееся тем, что, с целью повышения производительности, в него введены регистр начального адреса, схема сравнения, два элемента И и второй элемент ИЛИ, причем информационный вход устройства соединен с входом регистра начального адреса (Л и информационным входом счетчика, выход регистра начального гщреса сое динен с первым входом схемы сравнения , выход регистра адреса команд соединен с вторым входом схемы сравнения , выход которой соединен с первыми входами четвертого и пятого элементов И, первый и второй управляющие входы режима работы устройст00 00 ва соединены с вторыми входами четг вертого и пятого элементов И соответственно , выход четвертого элемента И соединен с первым входом второ го элемента ИЛИ, выход которого соединен с единичном входом триггера, управляющий вход трассировки прогрги мы устройства соединен с вторым йходом второго элемента ИЛИ, выход пятого элемента И является вторьм выходом прерывания устройства.

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

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

РЕСПУБЛИН (19) (11) 3(51) G 06 F 11 22

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

N ABTOPCHOMY CBNQETEflbCTBV (21) 3522600/18-24 (22) 17.12.82 (46) 30.03.84. Вюл. В 12 (72) В.Н.Сучков и С.А.Шалин (53) 681.3(088.8) ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

flO ДЕЛАМ ИЗОБРЕТЕНИЙ И OTHPbITHA (56) 1. Авторское свидетельство СССР

9 598077, кл. G 06 F, 9/20, 1974.

2..Авторское свидетельство СССР

Р 754419, кл. 0 06 F 9/20, 1978 (прототип). (54)(57) УСТРОЙСТВО ДЛЯ ОТЛАДКИ

ПРОГРАИИ, содержащее регистр исполнительного адреса, регистр адреса ) команд, блок буферных регистров, распределитель, счетчик, триггер, три элемента И, первый элемент ИЛИ и элемент задержки, причем выход регистра исполнительного адреса соединен с первым входом первого элемента И, выход которого соединен

- с входом регистра адреса команд, вы" ход последнего соединен с информационным входом блока буферных регистров, входы команд условного и безусловного переходов признака устройства соединены соответственно с первым и вторым входами первого элемента

ИЛИ, выход которого соединен с первым входом второго элемента И и через элемент задержки с вторым вхо-. дом первого элемента И, выход второго элемента И соединен с управля1ощим входом записи блока буферных регистров и счетными входами счетчика и

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

1083194

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

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

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

Наиболее близким к предлагаемому является устройство для управления памятью, содержащее регистр адреса команд, блок буферных регистров, распределитель, счетчик, триггер, три элемента И, элемент ИЛИ. элемент задержки, регистр исполнительного адреса, выход которого через первый элемент И соединен с входом регистра адреса команд, выход которого соединен с входом блока буферных регистров, элемент ИЛИ, входы которого сое- З0 динены с входами устройства, а выход через элемент задержки — с входом первого элемента И, распределитель, два элемента .И, счетчик и триггер, причем выходы элемента ИЛИ и тригге- 35 ра соединены через второй элемент И с входами счетчика, блока буферных регистров и распределителя, выходы которого соединены с группой входов блока буферных регистров, выходы 40 которого соединены с группой устройства, выход счетчика и управляющий вход устройства соединены через третий элемент И с первым входом триггера, второй вход котоРого соединен 45 с входом установки устройства Р2 3.

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

Кроме того, в таком устройстве отсутствует воэможность оперативного изменения количества команд перехо- 55 дов, после выполнения которых вырабатывается сигнал прерывания. Все это уменьшает производительность операторов, ведущих отладку программ.

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

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

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

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

На чертеже приведена блок-схема предлагаемого устройства.

Устройство содержит регистр 1 исполнительного адреса, первый элемент

И 2, регистр 3 адреса команд, блок 4 буферных регистров, схему 5 сравнения, регистр 6 начального адреса, счетчик 7, распределитель 8, второй элемент И 9, триггер 10, первый элемент

1083194

ИЛИ 11, элемент 12 задержки, пятый и четвертый элементы И 13 и 14, второй элемент ИЛИ 15, третий элемент

И 16, информационный вход И 17, входы 18 и 19 признаков команд условного и безусловного переходов, первый управляющий вход 20 режима работы устройства, управляющий вход 21 трассировки программы, второй управляю-. щий вход 22 режима работы устройст ва, первый выход 23 прерывания устройства, информационный выход 24 и второй выход 25 прерывания устройства.

Выход регистра 1 исполнительного адреса соединен через первый элемент 15

H 2 с входом регистра 3 адреса команд, выход которого подключен к входу блока 4 буферных регистров и входу схемы 5 сравнения, второй .вход которой соединен с выходом регистра 6 началь- 70 ного адреса, вход которого подключен к входу счетчика 7, второй вход которого соединен с входом блока 4 буферных регистров, входом распределителя 8 и выходом второго элемента И 9, первый вход которого соединен с выходом триггера 10, а второй - с выходом первого элемента ИЛИ 11 и через элемент 12 задержки с вторым входом первого элемента И 2. Выход схемы 5 срав 30 нения соединен с входом пятого элемента И 13 и через четвертый элемент

И 14 с входом второго элемента ИЛИ 15, выход которого соединен с входом триггера 10. Второй вход триггера 10 соединен с выходом третьего элемента

И 16, входы которого соответственно соединены с вторым входом четвертого элемента И 14 и выходом счетчика 7, группа входов блока 4 буферных реги-. стров соединена с группой выходов 40 распределителя 8.

Входы 17-22 служат для приема уп равляющих сигналов, а выходы 23-25 ; для их выдачи.

Устройство работает следующим об- 45 разом..

Режим работы устройства определяется подачей управляющего сигнала на вход 22 (режим 1) или вход 20 (режим 2).

В режиме 1 устройство обеспечивает формирование сигнала прерывания в любой заданной точке программы. Для этого адрес команды, после выполнения которой необходимо произвести прерывание, записывается по входной шине 17 в регистр начального адреса . Адрес выполняемой команды находится на регистре 3 адреса команд, с выхода которого адрес поступает на первый вход схемы 5 сравнения, на второй вход которой подается содержимое регистра 6 начального адреса. При равенстве содержимого ре гистров 3 и 6 схемой 5 сравнения вы-. рабатывается сигнал, который проходит65 через элемент И 13 на выход 25 устройства и далее на схему прерывания

CIIBN. Вызванная программа производит фиксирование состояния процессора в оперативной памяти СЦВМ, что позволяет программисту анализировать и контролировать ход вычислений.

В режиме 2 устройство обеспечивает формирование сигнала прерывания при выполнении заданного количества команд условных и безусловных переходов. В этом случае при выполнении команды условного или безусловного п ехода на вход 18 или 19 устройства поступает сигнал перехода, который проходит через элемент ИЛИ 11 и поступает на входы элемента 12 задержки и элемента И 9. На второй вход этого элемента подается единич" ный сигнал с выхода триггера 10, установка,в единичное состояние которого производится двумя способами в зависимости от режима трассировки.

При трассировке заданного участка программы начальный адрес этого участка записывается в регистр 6 по входной шине 17. Адрес выполняемой команды, как и в режиме 1, находится на регистре 3. При равенстве содержимого регистров 3 и 6 схемой 5 сравнения вырабатывается сигнал, который проходит через элементы H 14 и ИЛИ 15, устанавливая триггер 10 в единичное состояние.

При трассировке программы сигнал с входа 21 устройства через элемент

ИЛИ 15 поступает на вход триггера 10 и устанавливает его в единичное состояние. Количество команд переходов, после выполнения которых необходимо произвести прерывание, записывается в дополнительном коде в счетчик 7 по входной шине 17.

При наличии единичного сигнала на входе элемента И 9 сигнал перехода с выхода этого элемента производит запуск распределителя 8, осуществляет прибавление 1 к счетчику 7 и переписывает содержимое регистра 3 на первый регистр блока 4. Сигнал с выхода элемента 12, задержанный на время, необходимое для занесения регистра 3 на регистр блока 4, осуществляет перепись содержимого регистра 1 на регистр.3. Распределитель 8 вырабатывает управляющие импульсы, которые разрешают перепись информации с одного регистра на другой и т.д. Работа распределителя завершается за время выполнения одной команды перехода. Содержимое регистров блока 4 выводится для переписи в основную оперативную память по выходной шине 24. Счетчик считает количество выполненных команд переходов и вьщает сигнал переполнения при выполнении заданного количества команд. Сигнал. переполнения проходит через эле1083194

76 tg

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

Техред И.Надь Корректор О.Вилаак

Редакт р М.Рачкулинец

Заказ 1755/43

Тираж 699 Подписное

BHHHIIH Государственного комитета СССР по делам изобретений и открытий

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

Филиал ППП "Патент", r.Óæãîðîä, ул.Проектная, 4 мент И 16, поступает на вход триггера 10 и устанавливает его в нулевое состояние. Этот же сигнал с выхода 23 устройства подается на схему прерывания СЦВМ.

Йулевой сигнал с триггера 10 поступает на вход элемента И 9 и блокирует поступление сигнала перехода на входы регистра блока 4, распределителя 8 и счетчика 7. БЛокировка обес- 0 печивает сохранение содержимого регистров 3 блока до и» переписи в основную память. После переписи содержимого этих регистров в память устройство подготавливается к следующе- 15 му циклу (установка в единичное состояние триггера 10) аналогично укаэанному выше. !

Таким образом, изобретение позволяет .ускорить отладку программ, работающих в системах реального времени, так как при отладке в реальных условиях есть возможность контролировать ход вычислений без останова программы, задавая прерывание в любой ее точке. Трассировка только заданного участка программы и оперативное его изменение (например с пульта управления PBH) позволяют сэкономить время на организацию прерываний и их обработку, что очень важно для систем реального времени. В этом же направлении необходимо рассматривать возможность оперативного изменения количества выполненных команд переходов, после выполнения которых вырабатывается сигнал прерывания.

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

 

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

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

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

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

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

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

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

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

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

Изобретение относится к средствам тестирования взаимосвязанных больших интегральных микросхем (БИС) на уровне плат в реальных условиях эксплуатации
Наверх