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

 

Изобретение может найти применение в вычислительной технике при отладке программ на ЭВМ в режиме реального времени. Цель изобретения - повьшение надежности устройства. Устройство содержит регистры 1-3,управляющий регистр 4, элемент И-НЕ 5, первый и второй мультиплексоры 12 и 13, блоки памяти 14-15, осуществляющие запоминание заданного множества векторов прерывания путем записи в них логической 1 по адресам, соответствующим част ям векторов прерывания . Триггер 24 ограничивает область работы устройства от начала процесса отладки путем программного включения устройства до момента обнаружения первой точки останова, запрещая через элемент И 26 запись в регистры 2 и 3, которые фиксируют адрес первого байта команды. Дешифратор 25 вьщеляет информацию о действии цикла чтения первого байта команды. 1 ил. i с 9 ю 2J гг 23

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

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

PEGllYSf)HH (19) ()1) (51) 4 G 06 F 9/46

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

Н АВТОРСКОМ,Ф СВИДЕТЕЛЬСТВУ

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 3910442/24-24 (22) 13,06.85 (46) 23.04.87. Бюл. В 15 (7 1) Рижское производственное объединение ВЭФ им.В.И.Ленина (72) A.А.Гаврилов, А.Н.Колесников и В.П.Федосов (53) 681.325 (088.8) (56) Авторское свидетельство СССР

У 1171799, кл. G 06 F 9/46, 1984.

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

Р 1239723, кл. G 06 F 11/28, 1984. (54) УСТРОЙСТВО ДЛЯ ФОРМИРОВАНИЯ ПРЕРЫВАНИЯ ПРИ ОТЛАДКЕ ПРОГРАММ (57) Изобретение может найти применение в вычислительной технике при отладке программ на ЭВМ в режиме реального времени. Цель изобретения — повышение надежности устройства. Устройство содержит регистры 1-3,управляющий регистр 4, элемент И-НЕ 5, первый и второй мультиплексоры 12 и

13, блоки памяти 14-15, осуществляющие запоминание заданного множества векторов прерывания путем записи в них логической "1" по адресам, соответствующим частям векторов прерыва" ния. Триггер 24 ограничивает область работы устройства от начала процесса отладки путем программного включения устройства до момента обнаружения первой точки останова, запрещая через элемент И 26 запись в регистры 2 и 3, которые фиксируют адрес первого байта а команды. Дешифратор 25 выделяет информацию о действии цикла чтения первого байта команды. 1 ил.

130568

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

Цель изобретения — повышение быс- 5 тродействия устройства.

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

Устройство содержит первый 1, второй 2 и третий 3 регистры, управляющий регистр 4, элемент И-НЕ 5, выход

6 устройства, вход 7 стробирования устройства, первые 8 и вторые 9 адресные входы устройства, первые 10 и вторые 1 1 информационные входы устройства, первый 12 и второй 13 мультиплексоры, первый 14, второй 15 и третий 16 блоки памяти, вход 17 разрешения, первый 18, второй 19 и третий 20 входы чтения устройства, вход 21 опроса устройства, первый 22 и второй 23 входы записи устройства, триггер 24, дешифратор 25, элемент

И 26, вход 27 включения устройства.

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

Блоки 14-16 памяти обеспечивают реализацию двух функций: запоминание заданного множества векторов прерывания (точек останова) путем записи в них " 1" по адресам, соответствующим частям векторов прерывания, блок памяти запоминает соответствующую часть вектора прерывания: блок 14 памяти — тип машинного цикла, блок 15 памяти — младший байт адреса, блок 16 памяти—

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

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

2 и 3, которые фиксируют адрес первого байта команды. ДешифратЬр 25 выделяет информацию о действии цикла чтения первого байта команды. В этот момент элемент И 26 пропускает на входы записи регистров 2 и 3 сигнал

0 г с входа 7 устройства, который стробирует момент нахождения на входах

11 устройства статусной информации.

После обнаружения точки останова запрещается также запись в регистр 1, где фиксируется тип машинного цикла, на котором происходит обнаружение точки останова. Устройство подключается, например, к микро-3ВМ и осуществляет слежение за работой процессора. Адресные входы 8 и 9 подключаются к адресной шине микро-ЭВМ, а информационные входы 10 и 1 1 — соответственно к информационной шине микро- ЭВМ и к информационным выходам процессора. Вход 7 стробирования стробирует момент присутствия. на входах 11 устройства состояния статуса, определяющего тип машинного цикла. Для микропроцессора типа

КР580ИК80А соответствие состояния типу машинного цикла приведено в таблице.

Тип машинного цикла

Биты статуса (входы 11 устройства) 76543210

10100010 чтение первого байта команды

1 0 0 0 0 0 1 0 чтение памяти

00000000 запись в память

1 0 0 0 0 1 1 0 чтение стека

0 0 0 0 0 1 0 0 запись в стек чтение порта ввода/

/вывода запись в порт ввода/вывода

00010000

0010001 1 подтверждение прерывания 1

0 0 0 0 0 0 1 1

00000010 подтверждение прерывания 2 подтверждение прерывания 3

00101011 подтверждение прерывания — останов

1 0 0 0 1 0 1 0 подтверждение останова на входе 7 устройства. Этот сигнал подается на вход прерывания микроЭВМ, записывает текущее значение входов 11 в регистр 1 и переключает триггер 24 (по заднему перепаду импульса) в нулевое состояние, запрещающее запись в регистры 2 и 3 (предполагаем, что D-вход триггера 24 подключен к нулевому потенциалу). Тем самым в этих регистрах фиксируется значение адреса первого байта коман- . ды, на которой обнаружена точка бстанова. Запись в регистры 2 и 3 осуществляется импульсом с выхода элемента И 26, который возникает только в момент действия импульса на входе

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

3 3056

Входы 18-20 чтения, входы 22 и 23 записи и вход включения устройства подключаются к дешифратору выбора портов ввода/вывода микро-ЭВМ,обеспечивая управление работой устройства по программе. Тем самым обеспечивается возможность чтения состояния регистров 1-3, а также загрузка управляющего слова в регистр 4 и процесс записи в блоки 14-16 памяти. 10

Выход 6 устройства подключается к входу прерывания микро-3ВМ. В дальнейшем будем рассматривать работу устройства в составе микро-ЭВМ,реализованной на основе микропроцессо- 15 ра КР580ИК80А.

После сброса устройства по входу

21 регистр 4 находится в начальном нулевом состоянии, которое запрещает работу устройства в режиме слеже- 20 ния. Перед загрузкой векторов прерывания необходимо произвести очистку блоков памяти. В качестве блоков 1416 памяти можно использовать ОЗУ емкостью 256 х 1, так как микро-3BN на основе микропроцессора КР580ИК80А имеет 8-разрядную. шину данных и 16разрядную шину адреса. !

Для очистки блоков 14-16 памяти в регистр 4 записывается соответствующее управляющее слово в 256 раз посылается команда записи по входу

23 устройства, причем значение сопровождаемых данных меняется с Р Р Н до

FFH. В режиме записи в блоки памяти

35 мультиплексоры 12 и 13 пропускают на адресные входы блоков 15 и 16 памяти значение информационных входов 10.

Для загрузки точек останова в блок 40 памяти по заданным адресам записывается "1". Например, при записи точки останова по адресу ф 178Н при чтении первого байта команды в блок 14 памяти необходимо записать 1 по адре- 4> су ф А2Н, в блок 16 памяти — по адресу ф1Н, а в блок 15 памяти — по адресу 78Н. Для этого в регистр 4 записывается управляющее слово, соответствующее режиму загрузки. блоков

14 и 15 или 16 памяти и посылается команда записи по входу 23. В каждом случае загрузки выбран только один блок памяти, а остальные два находятся в невыбранном состоянии, что предотвращает изменение их состояния..

После загрузки всех заданных векторов прерывания устройство переключается в режим слежения путем записи в ре80 4 гистр 4 соответствующего управляющего слова.

Входы регистра 4

6 5 4 3 2 1

0 0 0 О 0 0 — начальное состояние (после сброса);

0 0 0 1 1 1 — режим очистки блоков

14 — 16 памяти;

0 1 0 0 О 1 — режим загрузки блока

14 памяти;

0 1 0 0 1 0 — режим загрузки блока

15 памяти;

0 1 0 1 0 0 — режим загрузки блока

16 памяти;

1 — 1 1 1 1 — разрешение прерывания по заданным точкам останова (разрешение работы устройства в режиме слежения);

1 — 1 0 0 0 — разрешение пошаговой отладки

Π— — — — — — запрет работы устройства в режиме слежения °

После этого по входу 27 включается триггер 24 и осуществляется переход в отлаживаемую программу. В режиме слежения мультиплексоры 12 и 13 передают на свои выходы состояние адресных входов 8 и 9 устройства.

При совпадении текущего состояния входов устройства с одной из заданных точек останова на выходах блоков

14-16 памяти появляется "1", что приводит к появлению сигнала на выходе элемента 5 во время действия сигнала тем самым и на входы записи регистров 2 и 3. В регистре 1 фиксируется тип машинного цикла, на котором обнаружена точка останова.

Прочитав значение адреса первого байта команды из регистров 2 и 3 можно программно проанализировать наличие установленных на данную команду точек останова и выдать на дисплей соответСтвующее сообщение, При этом ни одна" точка останова не будет потеряна. После этого по входу 27 триггер 24 включается в состояние, разрешающее дальнейшую работу устройства до обнаружения следующих точек останова. Возможные паразитные точки останова исключаются путем программного анализа после прерывания и чтения первого байта команды. Чтением состояния регистра 1 можно сократить время программного анализа. Если из регистра 1 читается состояние, соответствующее всем типам машинного цикла, кроме чтения инструкции, то это свидетельствует об отсутствии других точек останова на данной команде. сли в регистр 4 записать управляющее слово, соответствующее режиму пошаговой отладки (трассировка по каждой команде), тб прерывание происходит после каждой команды. В этом режиме все блоки памяти находятся в невыбранном состоянии, которое приводит к постоянному присутствию "I" на их выходах. Можно также в невыбранное состояние перевести только второй и третий блок памяти, записав в первый блок памяти "1" по адресу, соответствующему коду какого-либо типа адресации, тем самым, обеспечивается трассировка программы по заданному типу адресации.

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

Устройство для формирования прерывания при отладке программ, содержащее регистр управляющего слова,пер— вый, второй и третий регистр, первый и второй мультиплексор, первый, второй и третий блоки памяти, элемент

И-НЕ, выход элемента И-НЕ соединен с выходом прерывания устройства и с входом записи первого регистра, вход чтения которого соединен с первым входом чтения устройства, второй и третий входы чтения устройства соединены соответственно с входом чтения

2S

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

5680 6 второго и третьего регистров, группы информационных выходов первого, второго и третьего регистров, группа информационных входов регистра управляющего слова и первые группы информационных входов первого и второго мультиплексоров соединены с группой входовых программных данных устройства„ группа

1 входов статусных данных устройства

1305680

Составитель Г.Пономарева

Редактор Г.Гербер Техред П.Олейник Корректор А.Зимокосов

Заказ 1452/46 Тираж 673 Подписное

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

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

Производственно-полиграфическое предприятие, r.Óæãoðoä, ул.Нр,4

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

Изобретение относится к системе и способу для обеспечения возможности исполнения кода режима управления системой (SMM) во время защищенной работы в микропроцессорной системе

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

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

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

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