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

 

Изобретение относится к вычислительной технике, а именно к устройствам для программного управления, и может быть использовано при разработке и отладке программ для ЭВМ. Устройство содержит одинаковые блоки 1 прерывания (программ) по количеству ЭВМ многомашинной системы, программное обеспечение которой подвергается отладке. Каждый блок содержит регистр 4 в виде коммутационного поля, где заранее с помощью перемычек устанавливаются адреса, при обращении к которым в отлаживаемых программах необходимо выполнить прерывание для реализации отладочных функций. Устройство содержит также дешифраторы 2 и 3, схему 5 сравнения, элементы ИЛИ 6 и 10, триггер 7, элементы И-НЕ 8 и 9, регистр 11, и элемент ИЛИ 12. При возникновении указанного условия в одной ЭВМ устройство формирует сигнал прерывания для всех ЭВМ одновременно, а также формирует код состояния , определяющий причину прерывания. Благодаря этому выход из прерывания также осуществляется одновременно. Устройство обеспечивает комплексную отладку программ многоканальных систем, работающих в реальном масштабе времени. 2 ил. S (Л

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

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

РЕСПУБЛИК

„„Я0„„1383373 А 1

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

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

ОПИСАНИЕ ИЗОБРЕТЕНИЯ „",, Ю/

К А ВТОРСКОМ,Ф СВИДЕТЕЛЬСТВУ (21) 4159631/24-24 (22) 21.10.86 (46) 23.03.88. Бюл. № 11 (71) Киевское проектно-конструкторское бюро автоматизированных систем управления (72) Е. А. Белозерский и С. В. Кулагин (53) 681.3 (088.8) (56) Авторское свидетельство СССР № 962945, кл. G 06 F 11/28, 1980.

Авторское свидетельство СССР № 1171799, кл. G 06 F 11/28, 1984. (54) УСТРОЙСТВО ДЛЯ ПРЕРЫВАНИЯ

ПРИ ОТЛАДКЕ ПРОГРАММ (57) Изобретение относится к вычислительной технике, а именно к устройствам для программного управления, и может быть использовано при разработке и отладке программ для ЭВМ. Устройство содержит одинаковые блоки 1 прерывания (программ) по количеству ЭВМ многомашинной системы, программное обеспечение которой подвергается отладке. Каждый блок содержит регистр 4 в виде коммутационного поля, где заранее с помощью перемычек устанавливаются адреса, при обращении к которым в отлаживаемых программах необходимо выполнить прерывание для реализации отладочных функций. Устройство содержит также дешифраторы 2 и 3, схему

5 сравнения, элементы ИЛИ 6 и 10, триггер

7, элементы И вЂ” НЕ 8 и 9, регистр 11, и элемент ИЛИ 12. При возникновении указанного условия в одной ЭВМ устройство формирует сигнал прерывания для всех ЭВМ одновременно, а также формирует код состояния, определяющий причину прерывания.

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

1383373

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

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

10

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

Устройство содержит блоки 1 прерывания, содержащие первый 2 и второй 3 дешифраторы, регистр 4, схему 5 сравнения, второй элемент ИЛИ 6. D-триггер 7, первый 8 и второй 9 элементы И вЂ” НЕ, первый элемент

ИЛИ 10, регистр 11 состояния. Входы эле- 20 мента ИЛИ 12 соединены с выходами триггеров 7 соответствующих блоков 1, каждый из которых имеет выход 13 признака прерывания, выходы 14 и 15 кодов состояния устройства, информационные входы записи 16 и чтения 17, вход 18, вход 19 конца обработки прерывания, подключенные к соответствующим ЭВМ 20 многомашинной системы.

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

Адрес может быть представлен восьмиразрядным двоичным числом (фиг. 2, адрес порта ввода-вывода в микроЭВМ). Старшие четыре разряда адреса подключены к входам первого дешифратора 2, младшие четыре разряда адреса — к входам второго дешифратора 3. Выходы первого дешифратора 2 подключены к первым шестнадцати входам первой группы, выходы второго дешифратора 40

3 — к вторым шестнадцати входам первой группы коммутационного поля регистра 4. Выходы второй группы регистра 4 подключены попарно к входам двухвходовых элементов И схемы 5 сравнения так, что к первым входам элементов И через перемычки подключены соответствующие выходы первого дешифратора 3, а к вторым входам элементов И вЂ” соответствующие выходы дешифратора 3. Благодаря такому соединению на выходе схемы 5 появляется единичный сигнал, если на шине адреса существует восьмиразрядная информация, соответствующая заданной коммутации.

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

В исходном состоянии триггеры 7 и регистры 11 состояния всех блоков 1 прерывания находятся в нулевом состоянии, т.е. на их выходах присутствуют нули. Во все ЭВМ 20 загружены отлаживаемые про2 граммы. На выходах 13 всех блоков 1 прерывания присутствуют нули, т.е. отсутствуют сигналы прерывания.

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

В первом случае в некоторой ЭВМ при выполнении отлаживаемой программы возникает обращение к одному из заранее заданных на регистре 4 (хранения информации) соответствующего блока прерывания 1 адресов. При этом на выходе схемы 5 появляется единичный сигнал, поступающий на информационный вход D-триггера 7. Одновременно на информационных входах 16 и 17 появляется информация о способе обращения к адресу: «01» †запи, «10» — чтение.

Сигналы с входов 16 и 17, пройдя через второй элемент ИЛИ 6, вызывают на его выходе единичный сигнал, поступающий на стробирующий вход D-триггера 7, который устанавливает его в единичное состояние. Соответствующий сигнал с выхода D-триггера

7 открывает клапанирующие элементы И—

НЕ 8 и 9, через которые инверсный код способа обращения к адресу поступает на соответствующие входы регистра 11 состояния. Этот же единичный сигнал с выхода

D-триггера 7 через первый вход элемента

ИЛИ 10 передним фронтом поступает на вход «Запись» регистра 11, вызывая запись инверсного кода способа обращения к адресу в регистр 11, а также поступает на выход 13.

В результате этого в данной ЭВМ возникает прерывание отлаживаемой программы, причем на выходах 14 и 15 кодов состояния возникают коды: «01» — запись по адресу;

«10» — чтение по адресу.

При этом во всех других ЭВМ также возникает прерывание, но здесь имеет место второй случай, когда прерывание вызвано внешней причиной:в данном случае обращением к заданному адресу в другой ЭВМ.

В этом случае единичный сигнал с выхода D-триггера 7 блока 1 прерывания соответствующей ЭВМ поступает на одно из входов многовходового элемента ИЛИ 12, вызывая появление на его выходе единичного сигнала. Этот сигнал поступает на вторые входы элементов ИЛИ 10 всех блоков 1 прерывания, что приводит к возникновению сигналов прерывания на выходах 13 во всех

ЭВМ, а также к записи передним фронтом этого сигнала информации с выходов клапанирующих элементов И вЂ” НЕ 8 и 9, в соответствующие регистры 11 состояния всех блоков 1. Если в какой-либо ЭВМ 20 источник прерывания внешний, на выходе схемы 5 соответствующего блока 1 появляется нулевой сигнал, присутствующий также и на выходе D-триггера 7 этого блока. Следовательно, клапанирующие элементы И—

1ЗЗЗЗ7З

НЕ 8 и 9 закрыты и на их выходах присутствует код «11», который и записывается в соответствующий регистр 11 состояния.

Благодаря такой кодировке сигналов, образующихся на выходах 14 и 15 в момент наступления прерывания в каждой ЭВМ 20, программа обработки прерывания может распознать причину прерывания, опросив выходы 14 и 15 кодов состояния. Если на них присутствует код «11» (внешний источник прерывания), программа сканирует эти выходы до тех пор, пока код на них не изменится. Если на выходах 14 и 15 присутствуют коды «01» (запись по адресу) или

«10» (чтение по адресу). то программа обработки прерывания обращается к соответствую|цей подпрограмме, реализующей требуемые для отладки действия (например, регистрацию ситуации или имитацию вводавывода информации через указанный порт ввода-вывода и т.п) . После завершения этой подпрограммы программа обработки прерывания выдает единичный сигнал на вход 19, который сбрасывает D-триггер 7 соответствующего блока 1 прерывания в нулевое состояние.

На соответствующем входе элемента

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

13. Таким образом, на всех выходах 14 и

15 кодов состояния образуется код «00».

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

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

Устройство для прерывания при отладке программ, содержащее первый блок прерывания, включающий регистр, схему сравнения и первый элемент ИЛИ, причем выходы регистра соединены с информационными входами схемы сравнения первого блока прерывания, выход первого элемента ИЛИ пер4 вого блока прерывания является выходом признака прерывания первого блока прерывания, отличающееся тем, что, с целью расширения функциональных возможностей за счет обеспечения возможности комплексной отладки программ многомашинных систем, работающих в реальном масштабе времени, в него введены элемент ИЛИ и (n — I) блоков прерывания, где и — количество одновременно отслеживаемых программ, а в каж1ð дый блок прерывания введены первый и второй дешифраторы, триггер, первый и второй элементы И вЂ” НЕ, второй элемент ИЛИ и регистр состояния, причем выход триггера каждого блока прерывания соединен с первыми входами первого и второго элементов И вЂ” НЕ, с первым входом первого элемента ИЛИ своего блока прерывания и с соответствую|цим входом элемента ИЛИ устройства, выход которого соединен с вторым входом первого элемента ИЛИ каждого блока пре 0 рывания, адресный вход каждого блока прерывания соединен с входами первого и второго дешифраторов соответствующего блока прерывания, выходы первого и второго дешифраторов каждого блока прерывания соединены с первым и вторым инфор2 мационными входами регистра, каждый вход конца обработки прерывания устройства соединен соответственно с нулевым входом триггера соответствуюшего блока прерывания, выход схемы сравнения каждого блока прерывания соединен с информационным входом триггера соответствующего блока прерывания, входы записи и чтения каждого блока прерывания соединены соответственно с первым и вторым входами второго элемента ИЛИ и вторыми входами соответственно первого и второго элементов

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

1383373

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

Редактор Н. Лазаренко Техред И. Верес Корректор Л. Патай

Заказ 914/48 Тираж 704 Подписное

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

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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