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

 

Изобретение относится к вычислительной технике и, позволяет повысить эффективность средств, обеспечивающих отладку программ. Целью изобретения является расширение диагностических возможностей.устройства . Устройство содержит блок задания режимов, элементы И, блок управляемой задержки, триггер приостанова, генератор одиночных сигналов, блок сравнения, триггер, схему сравнения, счетчики и блок оперативной памяти, регистр, элемент задержки и блок индикации . Устройство позволяет организовать до 17 режимов останова отлаживаемой программы и зафиксировать информахщю о ходе программы, которая может быть использована для устранения ошибок в программе. 4 ил. : UD 00 00

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

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

РЕСПУБЛИК

А1 (I9) SU (II) (504 06 F 11 28

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

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ

К А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4011114/24-24 (22) 13.01.86 (46) 23.06.87. Бюл. 119 23 (72) В, М. Вайннтейн (53) 681.3(088.8) (56) Авторское свидетельство СССР

М 1124315, кл. G 06 F 11/28, 1984. авторское свидетельство СССР

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

1319038

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

Целью изобретения является расширение диагностических возможностей устройства, На фиг, 1 приведена блок-схема to предлагаемого устройства; на фиг, 2— пример выполнения блока сравнения; на фиг. 3 и 4 — временные диаграммы записи и считывания информации.

Устройство содержит блок зада- 15 ния режима отладки с подключенным к . нему элементом И 2, блоком 3 управляемой задержки, элементом И 4, к выходу которого через триггер 5 приостанова подключен генератор 6 оди- 20 ночного сигнала. Кроме того, к блоку

1 подключены блок 7 сравнения, триггер 8, элемент И 9 и через схему 10 сравнения счетчик 11, подключенный к счетчику 12 адреса, соединенному с блоком 13 оперативной памяти, ре-. гистром 14 и элементом 15 задержки, который соединен с элементом И 16.

Причем выходы блока 13 подключены к входам блока 17 индикации, а входы 30 устройства подключены соответственно к адресным входам 18, индюрмационным входам 19, тактовым входам 20, входу 21 направления обмена и входу

22 признака наличия информации на входе. При этом блок 7 сравнения связан с блоком 1 входами адреса 23, блокировки данных 24, информационны ми 25, блокировки направления обмена

26, направления обмена 27. 40

Блок 1 состоит из соответствующего количества тумблеров, с помощью которых, указанные входы можно подключать либо к логическому "0", либо к логической "1".

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

Для управления считывателем в блок 1 введен одновибратор, аналогичный генератору 6 одиночного сигнала, выход которого подключен к входу "1" счетчика 12.

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

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

УВК СМ4 (СМЗ).

Кривая 35 (фиг. 3) показывает сигнал на входе 20, кривая 36 — на входе 22, 37 — на входах 18 и 19 данных, 38 — на входах записи блока 13, 39 — на входе "+1" счетчика 12 адреса, 40 — на входе записи регистра

14, 41 — на выходе счетчика 12 адреса и 42 — на выходе регистра 14, Часть I диаграммы показывает операцию считывания информации из внешнего устройства, часть II — опера" . цию записи ин(юрмации во внешнее устройство, В состав внешних устройств входят устройства ввода-выБлок 7 сравнения (фиг. 2) состоит из трех схем 28 — 30 совпадения, выходной сигнал схем 29 и 30 поступает на элемент И 31 через элементы ИЛИ

32 и 33, а сигнал разрешения работы блока 7 поступает на вход элемента И

31 через инвертор 34, Блок 1 реализован в виде набора ,тумблеров и состоит из двух различных по построению частей, Первая обеспечивает выдачу информации на входы

23, 25, 27 на линии 24 и 26 блокировки, на соответствующие входы элементов И 2 и 4, а также кода, определяющего величину задержки, на третий вход блока 3 управляемой задержки н кода на входы схемы 10 сравнения. вода, специализированные устройства и ОЗУ управляюще-вычислительного комплекса СМ4 (СМ3), на примере подключения к которому рассматривается работа предлагаемого устройства для отладки программ.

При чтении информации из внешнего устройства УВК СМ4 процессор вначале (фиг. 3, диаг„ I) выставляет адрес на вход 18 и через промежуток времени gt, на линию синхронизации (вход

20), внешнее устройство УВК СМ4 расшифровывает адрес и выставляет на вход 19 требуемую информацию. Через время àt внешнее устройство выдает сигнал на вход 22, по которому процессор УВК воспринимает информацию, снимает сигнал с входа 20, и с зарали и считывание этой информации, работа этой части устройства одинакова для любых режимов прерывания, при этом обеспечивается хранение и . индикация соответствующего объема информации, необходимого для успеш- . ной отладки программ.

Остальные схемы, входящие в состав устройства, обеспечивают прерывание отлаживаемой программы в интересующем оператора месте. В зависимости от состояния элементов коммутации в блоке 1 устройство фиксирует следующие состояния: обращение к определенному адресу, когда анализ направления обмена и информации блокируется по линиям 26 и 24; запись в определенный адрес, когда блокиру1 ется сравнение информации; чтение из определенного адреса, запись определенной информации в определенный адрес, когда блокировка отсутствует; чтение определенной информации из определенного адреса °

3 13190 держкой сигналы с входа 18. По отсутствию сигнала на входе 20 внешнее устройство УВК СМ4 снимает сигналы с входа 22 и входа 19. Правильный адрес существует во время действия сигнала на входе 20, а правильная информация на входе 19 находится во время действия сигнала на входе 22.

Таким образом, правильный адрес и информация находятся на магистрали 10 при одновременном действии сигналов на линиях 20 и 22 (at» аt ).

При записи информации во внешнее устройство УВК СМ4 данное соотноше.ние не нарушается, поэтому запись в 15 блок 13 происходит по выходному сигналу элемента И 16, который вырабатывается по совпадению сигналов на входах 20 и 22 ° Далее строб записи в блок 13 задерживается элементом 15 2р задержки так, что на счетчик 12 адреса (вход "+1") он поступает через время at< после окончания действия строба записи в блок 13, строб записи в регистр 14 должен начинаться не 25 раньше строба "+1" в счетчик адреса, а заканчиваться с задержкой относительно этого сигнапа, что позволяет фиксировать в регистре 14 последнее содержимое счетчика 12 адреса.. 30

Таким образом, при обмене через магистраль состояние всех ее линий и подшин (в том числе и линии направления обмена) фиксируется в блоке 13, Состояние линий 20 и 22 одинаково для каждого цикла, поэтому запись информации с этих линий в блок 13 -не производится. При каждом последующем обмене через магистраль происходит запись состояния этой магистрали в 40 следующую ячейку блока 13. По достижении максимально возможного адреса счетчик 12 обнуляется и блок 13 начинает заполняться с нулевого адреса. При этом новая информация запи- 45 сывается.на место наиболее старой, например запись в нулевую ячейку происходит только после записи во все последующие. Таким образом, в блоке

13 хранится информация о последних 50 состояниях магистрали.

При считывании оператор воздействует на блок 1, с выхода которого после каждого нажатия оператором соответствующей кнопки выдается одиноч-55 ный импульс (фиг. 4, .кривая 43). Кривая 44 показывает состояние выходов .счетчика 12 адреса, кривая 45 — вы38 4 ходной сигнал генератора 6 одиночного сигнала 6, кривая 46 — выходную информацию блока 13. Одиночный импульс поступает на вход "+1" счетчика 12 адреса. При этом после первого нажатия устанавливается адрес информации о последнем обмене. При повторном воздействии оператора на выходе блока 13 появляется информация о предпоследнем состоянии магистрали и т.д.

После окончания считывания интересующей информации оператор для продолжения отлаживаемой программы .Bos действует на генератор 6 одиночного сигнала, при этом сбрасывается триггер 5 приостанова, обнуляются счетчик 11 и триггер 8,. а в счетчик 12 адреса переписывается информация из регистра 14, а поскольку в этот регистр

14 записано последнее состояние счетчика, запись информации в блок 13 производится в ту ячейку, в которую она должна была бы записаться, если бы прерывания не было, Таким образом, достигается полное соответствие между информацией блока 1З,и процессами, происходящими в магистрали при прогоне отлаживаемой программы, независимо от количества прерываний, режима работы устройства и воздействия оператора на это устройство, Наличие блока 13 с соответствующими схемами управления обеспечивает запись информации о состоянии магист5 13

Состояние коммутационных элементов а, b, с блока 1 задает режимы останова: а — 1, b, с — безразлично— останов по выходному сигналу блока 7 сравнения (первый режим); a — 2, Ь—

1, с — останов по прохождению заданного количества циклов обмена через магистраль после выдачи сигнала блоком 7 (второй режим); а — 2, Ь вЂ” 2, с — 2 — останов по определенному количеству выходных импульсов блока 7 (третий режим); а — 2, b — 1, с — 2—

Останов по количеству команд после пуска (четвертый режим).

В первом режиме останова выход блока 7 непосредственно подключен к входу блока 3 управляемой задержки и останов производится по любому из фиксируемых этим блоком состояний, т.е ° существует пять подрежимов.

Во втором режиме выход блока 7 подключен к S-входу триггера 8, а выход схемы 10 сравнения — к входу блока 3, при этом после появления соответствующего состояния магистрали выходной сигнал блока 7 сравнения устанавливает триггер 8, разрешая прохождение через элемент 19 сигналов синхронизации задатчика с линии

20 на вход счетчика 11. В счетчике происходит подсчет количества обменов через магистраль, по совпадению этого количества с заданным с блока

1 сигнал с выхода схемы 10 сравнения поступает на блок 3 и вызывает останов.

19038 6

f0

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

Полностью устройство функционирует следующим образом.

Оператор пускает отлаживаемую программу, по магистрали происходят обмены, информация, выдаваемая процессором, сопровождается синхросигналом на входе 20, а информация, выдаваемая внешним устройством, сопровождается сигналом на входе 22, причем истинное состояние магистрали (истинный адрес, истинные информация и направление обмена) начинается раньше и кончается позже совпадения сигналов на входах 20 и 22. Но совпадению сигналов на входах 20 и 22 состояние магистрали записывается в блок 13, в перерыве между обменами происходит подготовка счетчика 12 адреса и блока 13 к записи следующего состояния магистрали, Запись в блок 13 происходит по циклически изменяющимся адресам, причем новая информация заносится на место наиболее старой, что позволяет хранить в блоке 13 последние состояния магистрали. В то же время, блок 7 сравнения (третий режим останова) анализирует состояние магистра40

В третьем режиме счетчик ll через элемент И 9 подключен к выходу блока

7, триггер 8 принудительно установлен, т.е. трансляция сигнала элементу И 9 разрешена. При появлении соответствующего состояния магистрали выходным сигналом блока 7 содержимое счетчика 11 наращивается на единицу до тех пор, пока не срабатывает схема 10 сравнения, сигнал с которой вызывает останов.

В четвертом режиме 4 блок 7 сравнения отключен, трансляция сигналов с линии 20 в счетчик 11 разрешена, поэтому происходит останов по заданному с блока 1 количеству циклов обмена по магистрали.

Таким образом, предлагаемое устройство позволяет организовать 16 видов останова, кроме того, можно организовать останов по времени выполнения программы, если таймер доли и в зависимости от подрежима фик- сирует одно из ее состояний.

Появление искомого состояния приводит к выработке сигнала на выходе блока 7 сравнения, Этот сигнал проходит через элемент И 9 (Ь-2) на вход счетчика 11, поскольку триггер

8 установлен подачей низкого уровня на вход (с-2), Счетчик 11 подсчитывает количество выходныХ сигналов блока 7 сравнения, По достижении содержимым этого счетчика 11 состояния, задаваемого с клавиатуры на эталонные входы схемы 10 сравнения, вырабатывается сигнал на соответствующий вход блока 3 управляемой задержки, что приводит к срабатыванию триггера 5 приостанова и прерыванию от лаживаемой программы, После останова (при необходимости считать ийформацию предыдущих состояний магистрали) оператор через блок 1 воздействует одиночными импульсами на вход "+1"

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

19038 8

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

Формула изобретения рой выходы разрешения останова блока задания режима отладки соединены с вторыми входами соответственно второго и третьего элементов И, о т— л и ч а ю щ е е с я тем, что, с целью расширения диагностических возможностей устройства при отладке, в устройство введены триггер, схема сравнения, четвертый элемент И, счетчик, элемент задержки и счетчик адреса, причем информационные выходы блока оперативной памяти соединены с входами блока индикации, вход признака наличия информации на входе устройства соединен с вторым входом первого элемента И, выход которого соединен с входом записи блока оперативной памяти, с входом разрешения работы блока сравнения и через элемент задержки с входом записи регистра и счетным входом сложения счетчика адреса, выходы которого соединены с адресными входами блока оперативной памяти и информационными входами регистра, выход генератора одиночного сигнала соединен с нулевым входом триггера, входом записи счетчика адреса и входом начальной установки счетчика, выход которого соединен с первыми входами схемы сравнения, выход регистра соединен с информационными входами счетчика адреса, выход задания количества обменов блока задания режима отладки соединен с вторым входом схемы сравнения, выход которой соединен с первым входом останова блока задания режима отладки, выход блока сравнения соединен с вторым входом останова блока задания режима отладки, первый выход останова которого соединен с вторым входом четвертого элемента И, выход признака считывания соединен со счетным входом вычитания счетчика адреса, адресный вход устройства соединен с первым информационным входом блока оперативной памяти, информационный вход устройства соединен с третьим информационным входом блока сравнения и вторым информационным входом блока памяти, вход признака направления обмена устройства соединен с третьим информационным входом блока памяти и четвертым информационным входом блока сравнения, выходы задания информационных кодов и направления обмена блока задания режима отладки соединены соответственно с пя9 1319038 I Î тым и шестым информационными входами дания режима соединены соответствен= блока сравнения, выходы блокировки но с первым и вторым входами блокиданных и направления обмена блока за- ровки блока сравнения.

Ф

6

1319038 Составитель А. Сигалор

Техред И.Попович

Редактор О. Бугир

Корректор А. Обручар

Заказ 2514/44 Тираж б72 Подписное

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

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

Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

Изобретение относится к вычислительной технике и может быть использовано при построении управляющих вычислительных машин (УВМ), нечувствительных к сбоям программ

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

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

Изобретение относится к вычислительной технике и может быть использовано в управляющих вычислительных машинах (УВМ)

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