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

Иллюстрации

Показать все

Реферат

 

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

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

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

РЕСПУБЛИН (gg 4 G 06 F 11/28

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

JWI

° Ю

Ф ° ю

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

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

Н АВТОРСКОМ,К СВИДЕТЕЛЬСТВУ (21) 3700398/24-24 (22) 14.02.84 (46) 07.01. 87. Бюл. И 1 (71) Институт кибернетики им. В.М. Глушкова (72) В.B. Бадашин, В.И. Ланда, В.Л. Леонтьев, А.В. Палагин и В.И. Сигалов (53) 681.3(088.8) (56) Иванов Ю.В., Масленников Ю.А.

Вопросы проектирования систем автоматизации разработки программ для микроЭВМ. - УСИМ, 1978, У 5.

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

Ф 1242965, кл. G 06 F 11/28, 30.08 ° 83 (54) УСТРОЙСТВО ДЛЯ ОТЛАДКИ ПРОГРАМNH0 AIIIIAPATHbIX БЛОКОВ (57) Изобретение относится к областй вычислительной техники и может быть..SU„„1282139 А 1 использовано при создании микроЭВМ, микроконтроллеров и других устройств на основе микропроцессоров. Целью изобретения является повышение производительности при отладке программ.

Устройство содержит коммутатор адреса, блок синхронизации, счетчики, блок памяти переадресации, элемент

2И-ИЛИ, регистр, блок памяти адресов, блок памяти данных, дешифратор, бло+ ки элементов И, регистр, элементы

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

1282139

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

Цель изобретения — повышение производительности при отладке программ.

На фиг. 1 и 2 представлена структурная схема устройства для отладки программно-аппаратных блоков.

Устройство содержит коммутатор 1 адреса, блок 2 синхронизации, счетчик 3, блок 4 памяти переадресации, элемент 2И-ИЛИ 5, регистр 6, блок 7

15 памяти адресов, блок 8 памяти данных, дешифратор 9, блоки элементов

И 10-15, регистр 16, элемент ИЛИ 17, элемент И 18, коммутатор 19 управляющих сигналов, блоки элементов ,И 20-23, элементы ИЛИ 24 и 25, счетчик 26, блоки элементов И 27-30, элемент ИЛИ 31, блок 32 сравнения, блок 33 памяти команд, блок элементов И 34, адресные входы-выходы 35

25 и 36 устройства, информационные входы-.выходы 37 устройства, входы-выходы 38 синхронизации устройства, выход 39 синхронизации устройства, входы 40 и 41 синхронизации устроиства, ЗО выход 42 синхронизации устройства,, выход 43 блока сравнения, внутренние шины 44 и 45 адреса, внутреннюю шину 46 данных, внутреннюю шину 47 синхронизации, адресные. входы-выходы 48 35 и 49 устройства, информационные входы-выходы 50 устройства, входы-выходы 51 синхронизации устройства, вход

52 синхронизации устройства, выходы

53-55 синхронизации устройства, входы 56-59 блока синхронизации, выходы

60 и 61 блока синхронизации, входы

62-65 записи блока памяти переадресации, входы 66-69 элемента 2И-ИЛИ, выход 70 элемента 2И-ИЛИ, выходы 71?3 блока памяти, входы 74-76 и 77-79 блоков элементов И 10 и 11 соответственно, входы 80-82 записи регистра 16 и его выходы 83-86; входы 87-92 коммутатора управляющих сигналов и его выходы 50

93-96 и входы 97-102 блока сравнения.

Устройство работает под управлением управляющей микроЭВМ, в качестве которой может быть использована микроЭВМ УВС-01, и обеспечивает отладку устройства, например, на основе микропроцессоров К580ИК80.или другого аналогичного типа.

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

В режиме управления управляющая микроЭВМ осуществляет обмен информацией с внутренними блоками устройства отладки, памятью и портами ввода-BbIBQда отлаживаемой микроЭВМ, а также ее внутренними узлами.

Рассмотрим работу устройства в режиме управления. В этом режиме работой устройства управляет блок 2 синхронизации. Для обращения к тому или иному блоку устройства отладки управляющая микроЭВМ устанавливает на входах 56 блока 2 синхронизации адрес, логически являющийся одним из портов вывода управляющей микроЭВМ, а на информационных входах регистра 6 — код блока, к которому производится обращение. При поступлении сигнала выдачи информации, поступаю щего на вход 57 блока синхронизации, на его выходе 60 появляется сигнал

1записи в регистр 6. После записи кода блок синхронизации начинает подсчет сигналов начала машинных циклов управляющей микроЭВМ (сигнал начала цикла поступает на вход 58). На седьмом цикле на выходе 61 блока 2 синхронизации появляется сигнал включения дешифратора 9, поступающий одновременно через выход 42 синхронизации на шину блокировки памяти и портов. ввода-вывода управляющей микроЭВМ. При появлении сигнала включения дешифратора 9 на одном из его выходов появляется сигнал обращения к соответствующему блоку устройства.

Первый выход дешифратора 9 управляет загрузкой информации в блок 4 памяти переадресации. В этот блок saгружается информация о состоянии каждого сегмента памяти, адресуемой отлаживаемой микроЭВМ. При этом весь объем адресуемой памяти разбивается на 16 сегментов, определяемых четырьмя старшими разрядами адреса. Для каждого сегмента указывается защищен ли он (разрешено ли к нему обращение), находится ли он в отлаживаемой микроЭВМ, находится ли он в управляющей микроЭВМ. В последнем случае указывается также, какой сегмент памяти управляющей микроЭВМ соответствует данному сегменту памяти отлаживаемой микроЭВМ. Информация

1282139 записывается в блок памяти переадресации через входную шину данных.

Адрес, по которому записывается эта информация, определяется адресом на четырех старших адресных шинах 5 управляющей микроЭВМ, поступающим через коммутатор 1 на адресные входы блока 4 памяти переадресации.

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

Третий выход дешифратора 9 управляет обращениями к блоку 32 сравнения и к регистру 16. Выбор каждого лз этих блоков-производится в зависи-15 мости от кода на трех младших адресных шинах управляющей микроЭВМ, подключенных к входу 100 блока 32 сравнения и входу 81 регистра 16. В блок

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

В регистре 16 устанавливаются сле- дующие сигналы, управляющие отлажи- ЗО ваемой микроЭВМ: "Сброс" (выход 83), "Готов" (выход 84), "Захват" (выход 85), "Блокировка" (выход 86). Назначение этих сигналов следующее: сигнал "Сброс" — это сигнал инициализации, после поступления которого микропроцессор отлаживаемой микроЭВМ начинает обращение к нулевой ячейке памяти. Сигнал Готов высоким уровнем разрешает работу микро- 40 процессора отлаживаемой микроЭВМ, а низким уровнем останавливает его.

При низком уровне сигнала "Готов" микропроцессор останавливается в обращении к очередной ячейке памяти 45 или порту ввода-вывода и не заканчивает это обращение до тех пор, пока уровень сигнала "Готов" не станет высоким. Сигнал "Захват" отключает микропроцессор отлаживаемой микро- 50

ЭВМ от шин отлаживаемой микроЭВМ, позволяя тем самым осуществить прямой доступ к памяти последней. Сигнал "Блокировка" запрещает обращение к памяти и портам ввода-вывода 55 отлаживаемои микроЭВМ и включает схему обращения к регистрам микропроцессора последней. Установка этих сигналов производятся через входную шину данных, подключенную к информационным входам регистра 16. Установка производится при подаче на вход 82 сигнала выдачи информации управляющей микроЭВМ.

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

Эта информация включает состояния шин отлаживаемой микроЭВМ в каждом машинroM цикле. Информация из блока памяти адресов считывается при подаче на вход 76 группы элементов И 10 кода адреса "0", а информация из блока памяти данных считывается при подаче на вход 79 группы элементов И11 кода . адреса 1 .

Второй выход дешифратора 9 управляет обращениями к памяти и портам ввода-вывода отлаживаемой микроЭВМ, а также обращениями к внутренним узлам микропроцессора последней. Для обращения к памяти отлаживаемой микроЭВМ в регистре 16 предварительно устанавливается сигнал "Захват", передающийся через элементы ИЛИ 24 и

31 на соответствующую шину отлаживаемой микроЭВМ. При поступлении этого сигнала микропроцессор последней отключается от шин и позволяет осуществить прямой доступ к памяти. Дешифратор 9 вырабатывает сигнал обращения к отлаживаемой микроЭВМ. При ,этом, если производится запись в ее памяти, адресные, информационные и управляющие сигналы управляющей микроЭВМ через блоки элементов И20-23, которые стробируются сигналами выходов 93 и 94 коммутатора 19 управляющих сигналов, через выходные шины поступают на соответствующие шины отлаживаемой микроЭВМ. Таким образом, информация из управляющей микроЭВМ записывается в память отлаживаемой микроЭВМ. При чтении информации на памяти отлаживаемой микроЭВМ направление передачи адресных и управляющих сигналов остается таким же, как и в режиме записи, а направление передачи информационных сигналов изменяется на противоположное. Сигналы с информационных шин отлаживаемой микроЭВМ через блок элементов И 30 поступают на внутреннюю информационную . шину устройства отладки, а оттуда

1282139 через блок элементов И 15 они поступают в управляющую микроЭВИ.

Коммутатор 19 управляющих сигналов реализует следующие логические функции: 5

У93=Х90 Х88 X87+X90 Х88 Х91, У94=Х90 Х88 Х87+Х90 Х88 Х92, 10

У95=Х90 Х92 Х91, У96=Х90 Х88 Х87+Х90 Х88 Х89 Х92.

Для обйена информацией с внутрен- 15 ними узлами микропроцессоров отлаживаемой микроЭВМ в регистре 16 предварительно устанавливаются сигналы

"Сброс" и "Блокировка", последний из которых включает блок 33 памяти 20 команд. После этого управляющая микроЭВМ записывает в блок 33 памяти команд программу, при помощи которой производится обращение к внутренним узлам микропроцессора отлаживаемой микроЭВМ. Адрес соответствующей ячейки блока памяти команд заносится в счетчик 26 сигналом с второго выхода дешифратора 9. Запись информации в блок памяти команд производится сиг- 30 налом выдачи информации управляющей микроЭВМ через элемент ИЛИ 25.

Iloсле записи программы управляющая микроЭВИ снимает сигнал "Сброс" в регистре 16 и микропроцессор отлаживаемой микроЭВМ начинает выполнять программу, записанную в блоке памяти команд. Считывание информации из блока памяти команд производится через блок элементов И 34 сигналом приема информации отлаживаемой микроЭВМ, который поступает на второй вход блока элементов И 34 через элемент

ИЛИ 17 и элемент И 18. Адрес опраши- 45 ваемой ячейки блока памяти команд увеличивается на 1 сигналом начала машинного цикла отлаживаемой микроЭВМ, поступающим на счетный вход счетчика 26. После появления на 50 третьем выходе счетчика 26 сигнала высокого уровня через элемент ИЛИ 31 вырабатывается сигнал "Захват" для отлаживаемой микроЭВМ, После этого управляющая микроЭВМ может считать из блока памяти команд записываемое в коде выполнения программы содержимое внутренних узлов микропроцессора отлаживаемой микроЭВМ. Чтение информации производится аналогично режиму записи.

После обмена информацией с внут ренними блоками устройства отладки, памятью отлаживаемой микроЭВМ и внутренними узлами микропроцессора отлаживаемой микроЭВМ управляющая микроЭВМ переводит устройство отладки в режим прогона программы. Для этого в регистре 16 снимаются сигналы

"Сброс", "Захват", "Блокировка" и устанавливается уровень лог. "1" сигнала "Готов". Микропроцессор отлаживаемого устройства начинает выполнять программу. Информация с шин отлаживаемой микроЭВИ через блоки элементов И 27-30 поступает на внутренние шины устройства отладки, с которых информация поступает на информационные входы блока памяти адресов и блока памяти данных, где она и запоминается.

На адресные входы блока 4 памяти переадресации поступают сигналы с четырех старших шин отлаживаемой микроЭВИ, определяющие номер сегмента памяти. Для каждого сегмента памяти отлаживаемой микроЭВМ в блоке памяти переадресации хранится информация о том, запрещен ли он и о месте его расположения. Если сегмент памяти, номер которого установлен, защищен, то на выходе 73 блока 4 памяти переадресации устанавливается уровень лог. "1", который через элементы ИЛИ 24 и 31 вырабатывает сигнал "Захват", прекращающий выполнение программы микропроцессором отлаживаемой микроЭВМ.

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

72 блока памяти переадресации устанавливается уровень лог. 1, имитирующий прямой доступ к памяти управляющей микроЭВМ. Код номера сегмента памяти, к которому должно производиться обращение (старшие разряды адреса), появляется на выходах

71 блока памяти переадресации и поступает на входы блока элемен-. тов И 12. Младшие разряды адреса (не модифицируемые) поступают на входы блока элементов И 13. Сигнал с выхода 72 блока памяти переадресации стробирует .блоки элементов

И 12-14 и разрешает прохождение сигналов адреса и сигналов синхронизации отлаживаемой микроЭВМ на соот1282139

55 ветствующие шины управляющей микроЭВМ. Кроме того, он разрешает прохождение информационных сигналов с шин управления микроЭВМ на информационные шины отлаживаемой микроЭВМ через блок элементов И 30 в случае чтения и в противоположном направлении через блок элементов И 1S в случае записи информации в память управляющей микроЭВМ. Таким образом, если в бло- f0 ке памяти переадресации записано, что какой-либо сегмент памяти отлаживаемой микроЭВМ физически находится в базовой микроЭВМ, то отлаживаемая микроЭВМ производит прямой доступ к памяти управляющей микроЭВМ. Номер сегмента памяти, к которому производится прямой доступ, хранится в блоке памяти переадресации.

На входы 98 и 99 блока 32 сравне- 20 ния поступают адресные сигналы отлаживаемой микроЭВМ. Они сравниваются с адресами точек останова прогона программы, заранее записанными в блок сравнения. При совпадении теку- 25 щего адреса, установленного на шинах отлаживаемой микроЭВМ, с адресом одной из точек останова на выходе блока сравнения вырабатывается сигнал уровня лог. "1", устанавливающий че- 30 рез элементы ИЛИ 24 и 31 сигнал "Захват" на шине отлаживаемой микроЭВМ.

После этого управляющая микроЭВМ переводит устройство отладки в режим управления и производит анализ хода 35 выполнения программы, информация о котором записана в блоке памяти адресов и блоке памяти данных. Сигнал"Захват" для отлаживаемой микроЭВМ вырабатывается и в том случае, если 40 произошло обращение к защищенному сегменту памяти (выход 73 блока памяти переадресации).

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

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

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

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

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

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

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

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

1 тринадцатого и четырнадцатого блоков элементов И, выход блока сравнения

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

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

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

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

1282139

Я

С

Я

Е

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

Редактор С. Пекарь Техред В.Кадар Корректор Е тоР Е. Сирокман

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

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

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

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