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

Номер патента: 1239723

Авторы: Гаврилов, Колесников, Товба, Цветков

ZIP архив

Текст

СОЮЗ СОВЕТСКИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИН 511 4 С 06 Р 11/28 ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ(71) Рижское ордена Ленина производственное объединение ВЭФ им.В.И, Ле. -нина(54) УСТРОЙСТВО ДЛЯ ФОРМИРОВАНИЯЗАПРОСОВ НА ПРЕРЫВАНИЕ ПРИ ОТЛАДКЕПРОГРАММ аюЯОао 1239723 А 1(57)Изобретение относится к области вычислительной техники и может быть применено в устройствах для отладки программ. Целью изобретения является повышение быстродействия при отладке программ за счет появления возможности задания практически любого числа точек прерывания для всех возможных типов машинного цикла про- цессора. Тем самым появляется возможность обеспечивать программные вставки и режим трассировки программ. Поставленная цель достигается введением двух мультиплексоров и трех однообразных блоков па. мяти. 1 ил.12397Изобретение относится к вмчислительной технике и может быть использовано при отладке программ на ЭВМв режиме реального времени.Цель изобретения - повышение 5быстродействия устройства..На чертеже изображено устройстводля прерывания при отладке программ..В его состав входят первый 1,второй 2 и третий 3 регистры, регистр 104 управляющего слова, элемента И-НЕ .5, выход 6 устройства, тактовый вход7 стробирования устройства, первые 8и вторые 9 адресные входы устройства,первые 10 и вторые 11.информационные 15входы устройства. Устройство содержит также первый 12 и второй 13мультиплексоры, первый 14, второй 15и третий 16 блоки памяти, вход 17 разрешения устройства, первый 18, второй19 и третий 20 входы чтения устройства, вход 21 сброса устройства,первый 22 и второй 23 входы записиустройства.Возможность задания произволь" ного числа точек прерываний обеспечивается введением трех блоков 14-16 памяти, кащый из которых хранит часть вектора прерывания (точки оста- нова). Часть вектора прерывания отображается на адрес блока памяти, а "1" по этому адресу свидетельствует о том, что данная часть вектора принадлежит заданному множеству векторов. Совокупность трех блоков памяти формирует информацию о принадлежности текущего состояния адресных и информа.- ционных входов устройства к заданному множеству векторов, Для восьмираэрядных данных и 16-разрядного адреса требуются блоки памяти емкостью 256 х 1 каждый. Блок 14 фиксирует часть вектора, определяющего тип машинного цикла, а блоки 15 и 16 - адресную часть вектора. Мультиплексоры 12 и 13 введены для возможности подключения к адресным входам ЗУ либо информации с адресных входов устройства, либо сигналов с информационных входов, Последнее необходимо при начальной . загрузке блоков памяти заданным наборомвекторов прерывания, Элемент ИЛИ-НЕ 5 объединяет сигналы с выходов блоков памяти и л актовый сигнал с входа 7, а также сигнал запрет/разрешение с выхода регистра 4. Остальные три регистра (1-3) необходимы для воз", можности фиксации значения прервавшего вектора, по которому происходит пре 23 2рывание (совпадение текущего состояния входов устройства с заданным набором векторов прерывания). Состояние регистров 1-3 можно прочитать.Устройство подключается, например к микроЭВМ, и обеспечивает автоматическое слежение эа работой процессора, Перед началом отладки программы устройство программируется путем записи в блоки 14-16 заданного набора векторов прерывания. В регистр 4 записывается соответствующее управляющее слово, задающее режим работы (табл.1) Таблица 1 Выходы регистра 4 Режим работы 6 5 4 3 2 1 О, 0 О О 0 0 Начальное состояние 0 О 0 с Ь а Режим записи в блоки14-16 данных а, 5,соответственно;Разрешение прерывания по заданным точкам останова (разрешение работы устройства в режиме слеже-.ния)Разрешение пошаго",вой отладки,1 О Запрет прерывания(запрет работы устройства в режимеслежения) В табл.1 выход 1 - входные данные для блока 14; выход 2 - входные данные для блока 15; выход 3 - входные данные для блока 16; выход 4 - управление мультиплексорами 12 и 13, выход 5 - запрет/разрешение блоков 14-16;выход 6 " запрет(разрешение выхода прерывания (блокировка выхода 6). Запись в регистр 4 осуществляется по входу 22 (командой вывода в порт).Устройство подключается к микро- ЭВМ своими входами и выходом, Адресные входы 8 и 9 и первые информационные входы 10 устройства подключа" ются к адресной и информационной шине микроЭВМ, информационные входы 11 подключаются непосредственно к инфор-,76543210 О О О О О 1 О О О 1 О О О О 1 О Запись в стек Чтение порта ввода-вывода 00010000 Запись в порт ввода-вывода 00100011 Подтверждение прерывания 35 00000011 00000010 00101011 Подтверждение прерывания-останов 1 О О О 1 О 1 О Подтверждение ос- танова мационным выходам микроцроцессора,а тактовый вход 7 стробирует моментприсутствия на входах 11 состояниястатуса процессора, определяющего тип.машинного цикла. Для микропроцессорасоответствие состояния типу машинного цикла приведено в табл,2. 1 0 1 0 0 0 1 0 Чтение первогобайта команды 1 0 0 0 0 0 1 0 Чтение памяти 0 0 0 0 0 0 0 0 Запись в память 1 0 0 0 0 1 1 0 Чтение стека Подтверждение прерыванияПодтверждение пре- рывания Входы чтения 18-20 и входы записи 22 и 23 подключаются к дешифратору выбора портов ввода-вывода микроЭВМ, обеспечивая управление работой устройства по программе (программа-отладчик). Тем самым обеспечивается возможность чтения состояния регистров 1-3, а также загрузка управляющего слова в регистр 4 и процесс записи в блоки 14-16. Вход 17 разрешения является дополнительным входом, обеспечивающим разрешение момента стробирования по 20 25 30 40 45 50 23 4входу 7. Выход 6 устройства подключается к входу прерывания мцкроЭВМ,обеспечивая прерывание программы присовпадении текущего состояния процессора с одним из заданных векторовпрерыванця,После сброса устройства по входу22 регистр 4 находится в начальномсостоянии которое запрещает работуустройства в режиме слежения. Передвключением устройства в режим слежения необходимо предварительно очистить блоки 14- 16, а затем .загрузитьв них заданный набор векторов прерывания.Устройство на мцкроЭВМ, реализованной на основе микропроцессора, работает следующим образом.Входы 8 подключаются к восьми разрядам младшей части адреса, входы 9 к восьми разрядам старшей части адреса, входы 10 - к восьми разрядам данных, а входы 11 - к информационным выходам микропроцессора. При этом в качестзе ЗУ можно использовать ЗУ емкостью 256 х 1.Вначале осуществляется загрузка блоков 14-16 памяти нулевыми данньии. Для этого в регистр 4 записывается управляющее слово, соответствующее режиму записи в блоки памяти, а в разряды О, Ь и с записывается 0. Затем 256 раз посылается команда вывода в порт, которая поступает на вхоцы записи блоков 14-16 с входа 23 устройства, причем значение сопровождаемых данных на входах 10 и 1 1 меняется от ООНдо ГГН. В режиме записи в блокипамяти мультиплексоры 12 и 13 пропускают на адресные входы блоков 15 и 16 значение с информационных входов 10. После такой процедуры во все ячейки 14-16 записывается "0". Для задания точек останова (векторов прерывания) в блоки памяти позаданным адресам записывают "1". Например, если не-: обходимо иметь точку останова по адресу 0178 Н при чтении кода команды, в блоке 14 памяти необходимо записать "1" по адресу Л 2 Н, в блок 16 памяти - по адресу 01 Н, а в блок 15 памяти - по адресу 78 Н.Для этого в регистр 4 записывается И 1 Н и посылается команда вывода в порт на вход 23, сопровождаемая данными А 2 Н, затем в регистр 4 записывается 82 Н и команда вывода в порт сопровождается данными 878 Н, затем в регистр 4 записывает51239 ся Я 4 Н и команда вывода в порт соп- ровождается данными ф 1 Н. Таким же образом записываются остальные точки останова. После записи всех заданных точек останова в регистр 4 записывается состояние, разрешающее режим слежения с прерыванием по точкам останова, При этом на выход мультиплексоров 12 и 13 передается состоя-. ние адресных входов устройства. При 10 совпадении текущего состояния входов устройства с одной из заданных точек останова на выходах всех трех блоков памяти появляется "1", что приводит к появлению импульса на выходе 6 15 устройства во время действия сигнала на входе 7 устройства, Сигнал с выхода 6 подается на вход прерывания микроЭВМ. Тем самым осуществляется переход к подпрограмме обработки 20 прерывания, т.е. в данном случае к программе-отладчику.Так как блоки 14-16 памяти не изобретения55 Фо р мул а Устройство для формированиязапросов на прерывание при отладкепрограмм, содержащее первый, второй полностью эмулируют ассоциативнуюпамять, возможны паразитные точкиостанова. Это возникает за счет пересечения точек останова в одной чзтрех восьмиразрядных частей, Для исключения влияния .паразитных точекостанова используются регистры 1-3,в которых в момент прерывания фиксируется значение прерывающего вектораПосле каждого прерывания по точкамостанова можно читать состояние регистров 1-3 и сверять их с заданнымивекторами. Если прерывающий вектор35не попадает в область заданных векторов, то он игнорируется,Если в регистр 4 записать состояние, соответствующее режиму пошаговойотладки (трассировки по каждой ко 40маиде), то прерывания будут происходить после каждой комадды. Если задать точки останова, которые возможнытолько при ошибочной работе программыто имеется возможность фиксировать45ошибки в работе программ.Таким образом, использование предлагаемого изобретения позволяет значительно сократить время отладки, .так как позволяет в одном прогонезадавать различные векторы прерывания. 723 бй третий регистры, регистр управляющего слова и элемент И-НЕ, причемвыход элемента И-НЕ соединен с выходом прерывания устройства, тактовыйвход устройства и первый выход регистра управляющего слова соединенысоответственно с первым и вторымвходами элемента И-НЕ, о т л и ч аю щ е е с я тем, что, с целью повышения быстродействия, в него введены первый и второй мультиплексоры,первый, второй и третий блоки памяти,причем первая и вторая группы адресных входов устройства соединены спервыми группами информационныхвходов соответственно первого и второго мультиплексоров, первая группавходов задания данных устройства соединена с вторыми группами информационных входов первого и второго мультиплексоров, с группой информационных входов регистра управляющегослова и с группами информационныхвыходов, второго и третьего регист-.ров, вторая группа входов задания дан- .ных устройства соединена с группамиинформационных входов первого регистра и группой адресных входов первогоблока памяти, группа выходов первогомультиплексора соединена с группой адресных входов второго блока памятии группой информационных входов второго регистра, группа выходов второгомультиплексора соединена с группой:информационных входов третьего регистра и группой адресных входовтретьего блока памяти, второй выходрегистра управляющего слова соединенс управляющими входами первого и второго мультиплексоров, третий выходрегистра управления соединен с входами обращения первого, второго и тре"тьего блоков памяти, четвертый, пятыйи шестой выходы регистра управляющего слова соединены с информационнымивходами соответственно первого, второго и третьего блоков памяти, первыйвход записи устройства соединен с входом записи регистра управляющего слова;второй вход записи устройства соединен с входами записи первого, второгои третьего блоков памяти, вход сбросаустройства соединен с входом начальной установки регистра управляющегослова, вход обращения устройства, иинформационные выходы первого, второго и третьего блоков памяти соединены соответственно с третьим, четвертым, пятым и шестым входами1239723 21 1 О 22 23 77 78 77 Ю 27 осюавитель И. Сигаловехред О.Сопко, Корре Е. Сирохман едактор Е.ПФ Заказ 3398/50 Производственно-полиграфическое предприятие, г.ужгород, ул,Проектная,элемента И-НЕ, выход которого соединен с входами записи первого, второго и третьего регистров, первый,второй и третий входы чтения устройТираж 671 ВЯИИПИ Государственног по делам изобретений 113035, Москва, Ж, Раства соединены соответственно свходами чтения первого, второго итретьего регистров соответственно. Подписноекомитета СССРоткрытийская наб., д. 4

Смотреть

Заявка

3714086, 22.03.1984

РИЖСКОЕ ОРДЕНА ЛЕНИНА ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ ВЭФ ИМ. В. И. ЛЕНИНА

ГАВРИЛОВ АЛЕКСЕЙ АЛЕКСЕЕВИЧ, КОЛЕСНИКОВ АНДРЕЙ НИКОЛАЕВИЧ, ТОВБА МИХАИЛ АВРААМОВИЧ, ЦВЕТКОВ АЛЕКСЕЙ ЕВГЕНЬЕВИЧ

МПК / Метки

МПК: G06F 11/28

Метки: запросов, отладке, прерывание, программ, формирования

Опубликовано: 23.06.1986

Код ссылки

<a href="https://patents.su/5-1239723-ustrojjstvo-dlya-formirovaniya-zaprosov-na-preryvanie-pri-otladke-programm.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для формирования запросов на прерывание при отладке программ</a>

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