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

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и может использоваться для контроля за выполнением программ в ЭВМ. Цель изобретения - расширение функциональных возможностей устройства за счет обеспечения прерывания по заданному адресу, запоминания значения данных по этому адресу и определения типа обмена. Устройство содержит три регистра, блок сравнения, мультиплексор, одиннадцать элементов И, дешифратор, регистр вектора прерывания, формирователь сигналов прерывания, семь триггеров, два элемента ИЛИ, элементы ИЛИ-НЕ, И-НЕ, элемент задержки. Устройство позволяет прерывать вычислительный процесс по заданному адресу, запомнить данные по этому адресу, определить тип обмена, провести отладку программ в режиме реального времени. 1 з.п.ф-лы, 4 ил.

СО1ОЭ СОВЕТСНИХ

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

РЕСПУБЛИН

„.8 3 „„1594546 (5l)5 G 06 F 11/28

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

Н А BTOPCHOMV СВИДЕТЕЛЬСТВУ

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

ПО ИЭОБРЕТЕНИЯМ И OTHPblTHRM

ПРИ ГКНТ СССР (21) 4377696/24-24 (22) 11.02.88 (46) 23.09.90. Бюл. М 35 (72) Ю.В.Александров, И.В.Михалев, В.Б.Орлов, В.Г.Сиренко и А.В.Шевченко (53) 681.3(088.8) (56) Заявка Японии У 53-41497, кл. G 06 F 11/00, 1978.

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

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

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

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

На фиг.l приведена структурная схема устройства для отладки про грамм; на фиг.2 — структурная схема формирователя сигналов прерывания; на фиг.3 — временные диаграммы чтения и записи регистров устройства; на фиг.4 — временные диаграммы выдачи сигналов прерывания.

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

1 зп. флы, 4ил, устройство содержит первый l u второй 2 регистры, блок 3 сравнения, мультиплексор 4, первый элемент И 5, третий регистр 6, дешифратор 7, регистр 8 вектора прерывания, формирователь 9 сигналов прерывания, триггеры 10-16, элементы И 17-26, элементыKlH 27 и 28, элемент И-НЕ 29, элемент ИЛИ-НЕ 30, элемент 31 задержки, информационный вход 32 устройства, вход 33 синхронизации устройства, вход 34 записи устройства, вход 35 чтения устройства, вход 36 выбора типа прерываний устройства, вход

37 разрешения прерывания устройства, вход 38 разрешения останова устройства, выход 39 сброса признака адреса устройства, выход 40 идентификации данных устройства, выход 4 1 идентификации адреса прерывания

1594546 устройства, выход 42 запроса на прерывание устройства, выход 43 останова устройства, выход 44 разрешения прерывания устройства. Формиро ватель 9 сигналов прерывания (фиг..2) содержит триггеры 45 и 46, элементы И 47-51, элементы ИЛИ 52 и 53, элементы И-HE 54 и 55, вход 56 идентификации адреса прерывания формирователя, вход 57 синхронизации обмена формирователя, вход 58 маскирования прерывания формирователя, вход

59 выбора типа прерывания формирователя, вход 60 разрешения прерывания формирователя, вход 61 разрешения останова формирователя, вход 62 установки формирователя, выход 63

Идентификации прерывания формирователя, выход 64 запроса на прерываI ния формирователя, выход 65 сигнаЛа останова формирователя, выход

66 идентификации данных формировате.— ля, выход 67 разрешения прерывания формирователя. 25

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

Информационное взаимодействие между устройством для отладки программ и ЗВМ осуществляется по магист- 30 рали адрес/данные (информационный вход-выход 32 устройства). Магистраль работает ь режиме разделения времени: сначала передаются адреса, затем данные. Возможны следующие

Процедуры обмена: чтение регистра устройства; запись в регистр устройства; чтение вектора прерывания (безадресный обмен). Для процессора

ЭВМ программно доступны следующие регистры: первый регистр 1, второй регистр 2, триггеры !0-13 управления.

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

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

Триггеры 10-13 служат для управления устройствам.

Адрес каждого обмена запоминается на время обмена в регистре 6 по сигналу синхронизации обмена (вход 33 устройства) . Дешифратор 7 опознает

aqpeca регистров контроля и выдает сигнал выборки высоким уровнем на

55 соответствующем выходе. Сигнал синхронизации чтения {вход 35 устройства поступает на элементы И 18-20, на вторые входы этих элементов поступают сигналы выборки регистров с дешифратора 7. На выходах элементов 18 20 вырабатываются сигналы для управления мультиплексором 4, который ыкеет четы ре информационных и четыре управляющих входа. Информация на выходе мультиплексора появляется с одного иэ ин-. формационных каналов при подаче на соответствующий ему управляющий вход

«1«

Сигнал синхронизации записи с входа 34 поступает на элементы И 17 и

21, на вторые входы этих элементов поступают сигналы с первого и третьего выходов дешифратора 7. На выходах этих элементов формируются сигналы записи в первый регистр 1 (триггеры

10-13 соответственно).

Таким образом, первый регистр 1 и триггеры 10-13 управления доступны по чтению и записи, а второй регистр только по чтению. Сигналы выборки с . выхода дешифратора 7 собираются на элементе ИЛИ 27 и поступают на информационный вход триггера 14. По сиг° налу синхронизации обмена входа 33 устройства триггер 14 (если обращение к регистрам устройства контроля) выдает сигнал ответа на выходе 39 устройства, который сбрасываетсясигиалами чтенияипи записичераз-элемент

И-НЕ 29. Сигнал с выхода триггера 1 4 устанавливает в «О« триггер 15, осво божденный на время обмена по входу установки «1« сигналом синхронизации обмена. Таким образом разрешается выдача сигнала ответа по данным при обращении к регистрам устройства. элементу И 25. На элементе И 26 вырабатывается сигнал ответа по данным при чтении вектора прерывания. Результирующий сигнал идентификации данных с элемента ИЛИ-НЕ 30 выдается на выходе 40 устройства. Триггер 16 и эле--.мент ИЛИ 28 формируют строб записи во второй регистр 2, чтобы обеспечить достоверность записываемых данных, запись производится по началу сигнала записи и по кбнцу сигнала чтения.

По начальной установке сигнал с выхода триггера 10 блокирует работу — .;; триггеров 11 -13 и формирователя 9 сигналов прерывания. В триггер !! заносится информация о срабатывании устройства. Триггер 12 используется для управления маскированием выдачи прерываний. В триггер 13 заносится

4546

40

55

5 159 информация о типе обмена на магистра= ли прн срабатывании устройства кантроля. Программная запись "1" в триггеры 10-12 разрешает работу устройства контроля. В этом случае на выходе элемента И 23, а следовательно, на третьем входе первого элемента И будет "1 ". Блок 3 сравнения в каждом обмене сравнивает информацию в первом регистре 1 и адрес, запомненный в регистре б.

При их совпадении на выходе блока

3 сравнения появляется сигнал высокого уровня и, таким образом, по стробу на выходе элемента ИЛИ 28 производится, запись данных во второй регистр 2, сбрасывается триггер

12, а в триггер 13 записывается сос. тояние сигнала синхронизации записи

{т.е.,фактически записывается информация о типе обмена на магистрали).

Если триггеры 10 и 11 находятся в состоянии "1", то на входе 62 установки формирователя 9 и, следовательно, на инверсном входе элемента ИЛИ 52 будет "1". Таким образом триггер 45 будет отпущен по входу установки "0" (на других входах элемента 52 "0"). По сигналу- синхронизации обмена, поступающему на вход 57 формирователя 9, триггер 45 записывает поступающий на вход 56 формирователя сигнал идентификации адреса прерывания с выхода элемента

И 24. Если блок 3 сравнения опознает адрес, по которому необходимо прервать выполнение программы, то на входе 57 формирователя 9 будет

"1" и триггер 45 установится в "1", элемент И 47 отключит ему вход синхронизации и триггер 45 останется в этом состоянии, пока его не сбросят сигналами обработки прерывания или записью в триггер 10 "0". Сигнал с выхода триггера появится также на информационном выходе 41 идентификации адреса прерывания устройства.

Если триггер 12 находится в состоянии "1", т.е. выдача сигналов преры-. вания разрешена, то через элемент.

И 48 сигнал с выхода триггера 45 появится на первых входах элементов

И-НЕ 54 и 55. В зависимости от сигнала на входе 59 выбора типа пре-. . рывания формирователя 9, который поступает на вторые входы элементов

И-НЕ, будет выдан сигнал запроса н пре ывание на выходе 64 или сигнал - на выходе 65 останова процессора.

Если выбран режим выдачи запроса на прерывание, .то сигнал с выхода элемента 54 установит в "1 " триггер 46, а сигнал с входа 37 разрешения прерывания устройства не будет транслироваться на выход 44 разрешения прерывания устройства. Теперь сигнал

1р разрешения прерывания через элемент

И 49, с выхода 66 идентификации данных при чтении вектора прерывания- формирователя 9 поступит на четвертый управляющий вход мультиплексора 4 для выдачи вектора прерывания и на второй вход элемента И 26 для выдачи сигнала ответа по данным.

Кроме того, этот сигнал через элемент

ИЛИ 52 сбросит триггер 45. Если выбран режим выдачи сигнала останова, то триггер 45 будет сброшен сигналом с входа 61 формирователя сигналов прерывания.

На .диаграммах (фиг.4) выдачи сигналов прерывания в левой части показана выдача сигнала останова в цикле чтения, в правой — сигнала запроса на прерывание в цикле записи.

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

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

l.Óñòðoéñòâî для отладки программ, содержащее первый и второй регистры, блок сравнения, мультиплексор, первый элемент. И, причем информационный вы-ход первого регистра соединен с первым входом блока сравнения, первым информационным входом мультиплексора, выход равенства блока сравнения соединен с первым входом первого элемента

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

ИЛИ-HE и элемент задержки, причем

t0 информационные входы"выходы устройства через двустороннюю магистраль соединены с информационными входами первого, второго и третьего регист ров и первого; второго и третьего триггеров, выход третьего регистра. соединен с вторым входом схемы сравнения и входом дешифратора, первый выход которого соецинен с пря-. мыми входами второго и третьего элементов И и с первым входом первого элемента ИЛИ„ прямые выходы первого, второго, третьего и четвертого триггеров соединены с третьим информационным входом муль- 25 типлексора, вход синхронизации устройства соединен с входом записи третьего регистра, с входом синхронизации формирователя сигналов прерывания, с тактовым входом пятого триггера, с единичным входом шестого триггера и с нулевым и информационным входами седьмого триггера, второй выход дешифратора соединен с прямым входом четвертого элемента И и с вторым входом первого элемента

ЮП1, выход которого соединен с информационным входом пятого триггера, третий выход дешифратора соединен с прямыми входами пятого и шестого эле- 4О ментов И и с третьим входом первого элемента ИЛИ, вход сигнала записи устройства соединен с инверсными входами второго и шестого элементов И, с информациониы входом четвертого 4 триггера, с первым вхсдом элемента

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

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

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

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

ro элемента И, с первым инверсным входом четвертого элемента И, с инверсным входом первого элемента ИЛИ, выход первого элемента И соединен с тактовым входом первого триггера, gg прямой выход которого соединен с инверсным входом первого элемента И и с вторым входом второго элемента

И и является выходом признака идентификеции прерывания формирователя, выход второго элемента И соединен с первым входом первого элемента

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

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

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

1эЭ4э40

1 594546

Я

42

Редактор Н.Тупица

Заказ 283! Тирах 570 . Подписное

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

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

Производственно-издательский комбинат "Патент", г. Уигород, ул. Гагарина, 101

33

Я

Я

B4tgo8

ЭЛ. Р

39

32

ЗЗ

Вихор дйЗ

З5

М

Вехами а.28

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

Техред М.Дидык Корректор С.Шевкун