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

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

Авторы: Гуляев, Киселев, Садомов

Есть еще 2 страницы.

Смотреть все страницы или скачать ZIP архив

Текст

СОЮЗ СОВЕТСКИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИН ю 4 СОбРИСАНИЕ ИЗОБРЕТЕНИЯ ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССРГ 1 О ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИИ АВТОРСКОМУ СВИДЕТЕЛЬСТ(56) Авторское свидетельство СССР В 960821, кл. С 06 Р 11/00, 1982.Авторское свидетельство СССР Мф 1043657, кл. С 06 Р 11/00, 1983 (прототип) .(54) УСТРОЙСТВО ДЛЯ ОТЛАДКИ ПРОГРАММ(57) Изобретение относится к вычислительной технике и может быть использовано при отладке программ и при создании аппаратной части специализированных устройств, предназначенных для отладки программ. Целью изобретения является расширение функциональных возможностей устройства. Устройство для отладки программ содержит блок 1 задания режима отладки, шифратор 2, блок 3 памяти, регистр 4 адреса и регистр 5 данных, триггер 7 управления, триггер 1 готовности, элемент И 12, мультиплексор 6, блок 8 Формирования адреса, блок 10 индикации. Сущность изобретения заключается в том,.801297 О 6 что для осуществления программноаппаратной отладки в среде проектируемого микропроцессорного устройства введены элементы сопряжения магистралей адреса и данных, алгоритм работы которых определяется служебными сигналами управляющей магистрали для организации режима прямогоФдоступа к памяти в блок установки режимов устройства для отладки программ введены регистр адреса, ре-, гистр данных, кодер, формирователь управляющих сигналов, позволяющие передать через элементы сопряжения . в магистрали микропроцессорного устройства содержимое регистра адреса и регистра данных при сформирован- ных сигналах данного отладочного режима; для реализации покомандного режима выполнения программ с одновременной индикацией регистров общего назначения и указателя стека микропроцессорного устройства введены триггер управления, счетчик команд программной выборки регистров общего назначения, триггер готовности, делитель, блок формирования адре" сов памяти, блок динамической индикации, светодиодная матрица.2 з.п. Ф-лы, 7 ил.1297064 Составитель И.Сигал Л. Патай хред Л. Сердюкова Кор дактор Т.Парфено аказ 783/5ВНИИПИ о 113 Производственно-полиграфическое предприятие, г.уж роектная Тираж 673Государственного комитетелам изобретений и открыт, Москва, Ж, Раушская ПодпиСССРйаб., д, 129706Изобретение относится к вычислительной технике и может быть использовано при отладке программ и тести ровании микропроцессорных устройств и систем. 5 Целью изобретения являет ся р асширение функциональных возможностейустройства отладки программ за счетобеспечения индикации содержимого ре- Югистров общего назначения и указателя стека отлаживаемого микропроцессорного устройства в покомандномрежиме отладки,На фиг. представлена структурная 5схема устройства для отладки программ; на фиг.2 - функциональнаясхема блока задания режима отладки;.на Фиг.З - функциональная схема блока памяти; на Фиг.4 - функциональная 20схема блока формирования адреса; нафиг.5 - Функциональная схема блокадинамической индикации; на фиг.б -диаграмма функционирования; на фиг. 7.блок-алгоритм программы выборки регистра общего назначения (РОН) и УС,Устройство для отладки программ(фиг.1) состоит из блока 1 заданиярежима отладки, шифратора 2, блока3 памяти, регистра 4 адреса, регистра 5 данных, мультиплексора 6 адреса памяти, триггера 7 управления,блока 8 формирования адреса, счетчика 9 команд, блока 10 динамическойиндикации, триггера 11 готовности,элемента И 12, причем к входу 13данных отлаживаемого микропроцессорного устройства присоединены регистр5, блоки 3 и 10, к входу 14 адреса -регистр 4, мультиплексор 6, к входу 4015 управления - блоки 1, З.и 8. Шинаадреса содержит 16 разрядов адресаАО-А 15, шина данных - 8 разрядовданных 00-07, в шину управления вхо-дят типовые сигналы управления микроЭВМ: готовность 1 б, блокировка памяти 17, начало команды 18, выходыблока 1 задания режима имеют следующее Функциональное назначение: выход19 пуска, выход 20 признака началь Оного выполнения, выход 21 ввода адреса, выход 22 установки режима,тактовый выход 23, выход 24 вводаданных, выход 25 захват памяти, выход26 чтения памяти, выход 27 записи, 55вход 28 подтверждения захвата, информационный выход 29 блока 3 памяти,первый 30 и второй 31 тактовые входыустройства, адресный вход 32 блока 4 23 памяти, информационный вход 33 бло- .ка 8, вход 34 обнуления блока 8, выход 35 управления мультиплексораблока 8, информационный выход 36 блока 8, выход 37 мультиплексора 6.Блок 1 задания режима отладки(фиг,2) содержит цифронаборник 38,одновибратор 39, дешифратор 40 управляющих сигналов. Одновибратор предназначен для снятия "дребезга" цифронаборника и формирует тактовыйвыход блока. Блок задания режимапредназначен для формирования сигналов нажатия клавиатуры и управляющих сигналов, инициирующих работуустройства в режиме, заданном оператором с клавиатуры,Шифратор 2 предназначен для кодирования позиционных выходов цифронаборника в двоичный код, которыйподается на регистры адреса 5 и данных 4, Блок 3 памяти (фиг.З) содержит триггер 41 стека, элементы ИЛИНЕ 42,1-42,5, элементы И-НЕ 43.1-:43,4, элемент ИЛИ 44, элементы 45,1и 45.2 оперативной памяти, элемент46 постоянной памяти, элементы И47-47.4, 48.1-484, Адресныевходы элемента постоянной памятисоединены с входом 49 адресного входа 14, адресные входы элементов оперативной памяти подсоединены к выходу мультиплексора 6. Блок памятиреализует программу выборки содержимого внутренних регистров РОН и УСотлаживаемого микропроцессорногоустройства в режиме останова или отладки по шагам,Регистр 4 адреса предназначендпя хранения адресного шестнадцатиразрядного двоичного слова, набираемого на цифронаборнике 38 в режимепрямого доступа к памяти. В этом режиме на сигнал "Захват памяти" 25отлаживаемая микроЭВМ отвечает сигналом "Подтверждение захвата" 28,по которому из регистра адреса происходит передача адресного слова навход 14 адреса,Регистр 5 данных предназначен для хранения байта данных, набираемого на клавиатуре в режиме прямого доступа к памяти, При поступлении из блока задания режима сигнапа "Запись памяти" 27 регистр данных передает байт данных на вход 13 данных, при поступлении сигнала "Чтение па-7064 4 510 15 на тактовый вход И, устанавливает в нуль триггер 11 готовности.Блок 10 динамической индикации (фиг.5) содержит дешифратор 55 адреса, мощные токовые ключи 56 и 57, светодиодную матрицу 58. Блок пред назначен для индикации содержимого РОН и УС. На выходы дешифратора 55 адреса непрерывно поступают адреса АО-АЗ 37. При поступлении сигнала 1 отовность" нулевого уровня выходы 30 дешифратора поочередно через мощные токовые ключи 56 подключают гори- зонтальные шины светодиодной матрицы, В соответствии с включенной горизонтальной шиной одновременно на токовые ключи 57 подается байт считываемой информации из блока ОЗУ и подключаются соответствующие вертикальные шины светодиодной матрицы. Таким образом светодиодная матрица индици рует содержимое РОН и УС.Устройство для отладки программ работает следующим образом.В исходном состоянии триггеры 7 управления и готовности 11 устанавливаются в нулевое и единичное состояние соответственно и на микропроцессорное устройство поступают управляющие сигналы 16 и 17, обеспечивающие его непрерывное выполнение программ, 50При задании пошагового режима отладки блок задания режима формирует сигнал "Шаг" 20, который поступает на 0-,вход триггера 7 управления, на тактовый вход которого поступает 55 управляющий сигнал "Начало команды" 18. Таким образом, по началу следующей команды отлаживаемой программы пользователя триггер 7 управления 3 129мяти" 26 в регистр данных заноситсябайт, считанный из памяти.Мультиплексор б предназначен длякоммутации разрядов МАО-МАЗ входаадреса или разрядов АО-АЗ 36 блокаформирования адреса и подачи на одноименные адресные входы блока 3памяти,Блок 8 формирования адреса и уп-.равления мультиплексором (фиг.4)содержит делитель 50 тактовой частоты, триггер 51 стековых операций,элементы И 52, элемент ИЛИ-НЕ 53,счетчик 54 адреса. Блок 8 предназначен для фиксации стековых операцийпри выполнении программы выборкисодержимого РОН и УС отлаживаемогомикропроцессорного устройства и организации адреса хранения содержимого РОН и УС в блоке 3 памяти,переходит в другое устойчивое состояние, и элемент И 12 формирует управляющий сигнал "Блокировка памяти" 17,который отключает основную памятьмикропроцессорного устройства, в которой располагается отлаживаемаяпрограмма. Этот же сигнал являетсясигналом разрешения работы с блоком3 памяти устройства отладки программ(фиг.б), Далее сигнал с триггера 7управления открывает счетчик 9 команд, который осуществляет подсчет числа команд блока 3 памяти. Сигналпереноса счетчика 9 команд поступает Микропроцессорное устройство приполучении сигнала Блокировка памяти"17 не приостанавливает свою работу,а принимает единичный байт, соответствующий коду команды "ВЕЗТАКТ" (7),так как шина 13 данных при блокировке основной памяти имеет высокийлогический уровень, При выполнении2 и 3 циклов команды ВЕЯТАКТ (7)производятся две стековые операции -пересылка содержимого счетчика команд в стек. В этом случае устанавливаются в единицу триггеры 41 и 51,а мультиплексор 6 подключает адресаАО-АЗ 36 счетчика 54 на адресныевходы 45 оперативной памяти блока3 памяти, счетчик 54 уменьшает своесостояние на 2 (число пересылок встек).Таким образом, оперативная память45 выполняет функцию стека, а счет-.,чик 54 - указателя стека, которыйначинает работу с нулевого состояниянезависимо от текущего состоянияуказателя стека микропроцессорногоустройства,Выполнив команду "КЕБТАКТ", микропроцессорное устройство устанавливает адрес 0038 (Н)и начинаетвыполнение программы выборки РОН иУС (фиг.7), хранимой в элементе 46постоянной памяти. Счетчик 9 командотсчитывает с нулевого состояниячисло выполняемых команд.При выполнении программы выборкиРОН и указателя УС (фиг.7) в томслучае, когда обращение к оперативной памяти 45 происходит не по стековым операциям, основным признакомвазделения оперативной и постояннойпамяти является разряд МА 7, для элемента 45 МА 7 в "0", для элемента МА 7=) "1". Поэтому первая команда постоянной памяти (46)которая осуществляет запись пары регистров Н,Ь в оперативную память (45), содержит в третьем байте команды признакМА 7 =1,Команды 6-8 служат для восстановления указателя стека микроЭВМ в результате выполненных стековых команд(фиг.7). Количество стековых опера Оций РОН -+ стек, стек - +РОН одинаково, поэтому реверсивный счетчик 54возвращается в исходное состояние.Последняя команда "КЕТОВА" возвращает микропроцессорному устройству 15содержимое программного счетчика.При этом счетчик 9 команд устанавливается в состояние 1111 (соответствующее числу команд программы выборки РОН и УС) и формирует сигнал 20переноса (фиг,6), Сигнал переносаснимается сигналом Начало команды",т,е, текущей команды пользователя.Задним фронтом переноса счетчика 9на выходе триггера 11 готовности 25устанавливается сигнал Готовность" 6Сигнал "Пуск" устанавливает триггер 7 управления в нулевое состояние, а триггер 11 и сигнал "Готовность" 16 - в единичное состояние, микропроцессорное устройство снимает состояние Ожидание" и выполняет ранее принятую команду пользователя. При поступлении следующего сигнала "Начало команды" 18 новой команды происходит установка в единицу триггера 7, элемент И 12 формирует сигнал "Блокировка памяти" 17 и микроЭВМ принимает единичный байт - код команды "КЕБТАКТ" (7). Затем снова повторяется цикл выборки РОН и УС. Для перехода в непрерывный режим прогона программ из блока 1 задания режима сигнал "Шаг" 20 переводится в нулевой уровень и подается сигнал "Пуск" 19, При этом сигнал "Готовность" 16 принимает единичный уровень, "Блокировка памяти" 17 - нулевой уровень и микропроцессорное устройство продолжает автоматически прогон программы пользователя.низкого логического уровня и на выходе элемента И 12 снимается сигналблокировки памяти 17. Микропроцессорное устройство принимает код команды программы пользователя из разблокированной памяти и устанавливается в состояние ожидания, Одновременно разблокируется делитель 50, выходной сигнал которого запускает счетчик 54 в пересчетный режим, Мультиплексор 6 коммутирует разряды счетчика 54 на адресные входы 37 оперативной памяти 54 и производится периодическое считывание хранящего в оперативной памяти 45 содержимого РОН и УС. Те же раз-ряды адреса АО-АЗ 37 с выхода мультиплексора 6 и считываемое содержимое 00-07 29 подаются на блок 10 динамической индикации, Блок 10 обеспечивает дешифрацию адре ов и подачу считываемой информации и управляющих сигналов на входы мощных элементов (56 и 57), Мощные элементы (56) подключают горизонтальные шины выбора индикаторов РОН, УС, а другие мощные элементы (57) - вертикальные шины разрядов содержимого РОН, УС светодиодной матрицы 5,8, Индикация РОН и УС непрерывно продолжается до появления следующего сигнала "Пуск" 19,Формула и з о б р е т ения 1. Устройство для отладки программ, содержащее блок задания режима отладки, шифратор, регистр адреса и регистр данных, причем информационный и тактовый выходы блока задания режима соединены соответственно с информационным и тактовым входами шифратора, выход которого соединен с информационными входами регистра адреса и регистра данных, выходы разрешения ввода адреса и ввода данных блока задания режима отладкимсоединены соответственно с входом записи регистра адреса и первым входом записи регистра данных, о т - л и ч а ю щ е е с я тем, что, с целью расширения функциональных возможностей устройства за счет обеспечения индикации регистров общего назначения и указателя стека в режиме пошагового выполнения программы, в устройство введены триггер управления, триггер готовности, счетчик команд, элемент И, блок памяти, мультиплексор, блок индикации и блок формирования адреса, причем выход пуска блока задания режима отладки соединен с нулевым и единичным входами соответственно триггера управления и триггера готовности, 1297064 8выходы признаков пошагового выполнения и захвата памяти блока заданиярежима отладки соединены. соответственно с информационным входом тригге"ра управления и с выходом требования захвата памяти устройства, выходпризнака чтения памяти. блока заданиярежима отладки соединен с входомзаписи регистра данных, с входомчтения блока памяти и с входом суммирования адреса блоки формированияадреса, выход признака записи блоказадания режима отладки соединен свходом чтения регистра данных, с входом записи блока памяти и с входомуменьшения адреса блока формированияадреса, вход подтверждения захватаустройства соединен с входом чтениярегистра адреса и с входом разрешения записи регистра данных, входданных устройства через двустороннююмагистраль соединен с информационными входами-выходами регистра данныхи блока памяти и информационным входом блока формирования адреса, выход регистра адреса соединен с первым информационным входом мультиплексораадреса и с аДресным входом блокапамяти, признак начала команды устройства соединен с тактовым входомтриггера управления и со счетнымвходом счетчика команд, инверсныйвыход триггера управления соединенс входом начальной установки счетчика команд и входом обнуления блокаформирования адреса, выход переполнения счетчика команд соединен с нулевым входом триггера готовности,единичные выходы триггеров управления и готовности соединены соответственно с первым и вторым входамиэлемента И, выход которого соединенс входом блокировки блока памяти,единичный выход триггера готовностисоединен с входом разрешения индикации блока индикации, с входом готовности блока формирования адреса и свходом обращения блока памяти, тактовый вход устройства соединен стактовым входом блока памяти и спервым тактовым входом блока формирования адреса, второй тактовый входустройства соединен с вторым тактовым входом блока формирования адреса,информационный выход и выход выбораадреса которого соединены соответственно с вторым информационным входоми управляющим входом мультиплексора,выход которого соединен с вторымадресным входом блока памяти и с первым информационным входом блока индикации, информационный выход блока памяти соединен с вторым информационным входом блока индикации.2. Устройство по и.1, о т л и ч а ю щ е е с я тем, что блок:, формирования адреса содержит первый и второй счетчики, триггер, первый и второй элементы И и элемент ИЛИ-НЕ, причем вход готовности блока соединен с входом начальной установки первого счетчика и с инверсным входом начальной установки триггера, инверсный выход которого является управляющим выходом устройства, прямой выход триггера соединен с первыми входами первого и второго элементов И, выход переполнения первого счетчика и выход первого элемента И соединены соответственно с первым и вторым входами элемента ИЛИ-НЕ, выходы второго элемента И и элемента ИЛИ-НЕ соединены соответственно с входами прямого и инверсного счета, второго счетчиКа, выходы которого образуютинформационный выход блока,второй вход первого элемента И, второй вход второго элемента И, информационныйвход триггера, счетный вход первого счетчика и тактовый вход триггера являются соответственно входом признака записи блока, входом признака чтения блока, информационным входом блока, первым и вторым тактовыми входами блока, вход начальной установки второго триггера является входом обнуления блока. 5У101520-53035 40 Зе Устроиство ПО пв 10 т л ич ающе е ся тем, чтоблокпамяти содержит триггер стека, пятьэлементов ИЛИ-НЕ, элемент ИЛИ, четыре элемента И-НЕ восемь элементов145 И, два элемента оперативной памяти иэлемент постоянной памяти, причемпервый тактовый вход и вход признака чтения блока соединены соответственно с тактовым входом триггерастека и с первым входом первого элемента И-НЕ, выход которого соединен.с первым входом элемента ИЛИ, с первым входом первого элемента И 5 П-НЕи с первым инверсным входом чтения 55 элемента постоянной памяти, выходтриггера стека соединен с вторымвходом первого элемента ИЛ-НЕ ис вторым входом второго элементаИ-НЕ, выход которого соединен с вто 9 129 рым инверсным входом чтения элемента постоянной памяти, выход первого элемента ИЛ 3-НЕ соединен с первым входом второго элемента ИЛИ-НЕ, выход которого соединен с первым входом третьего .элемента И-НЕ, вход признака записи блока соединен с первым входом четвертого элемента И-НЕ и с первым входом третьего элемента ИЛИ-НЕ, вход признака блокировки соединен с нулевым входом триггера стека, с вторым входом первого элемента И-НЕ и с вторым входом четвертого элемента И-НЕ, выход элемента ИЛИ соединен с вторым входом третьего элемента И-НЕ, выход которого соединен с вторым входом третьего элемента ИЛИ-НЕ, выход которого соединен с входом признака чтения первого и второго элементов оперативной памяти, выход четвертого элемента И-НЕ соединен с признаком записи первого и второго элементов оперативной памяти, вход признака обращения блока соединен с входом четвертого элемента ИЛИ-НЕ, выход которого соединен с вторым входом второго элемента ИЛИ-НЕ и с первыми входами первого, второго, третьего, четвертого, пятого, шестого, седьмого и восьмого элементов И, первый адрес 7064 1 Оный вход блока. соединен с адреснымивходами элемента постоянной памяти,вход пятого элемента ИЛИ-НЕ соединен с соответствующим разрядом первого адресного входа блока, выходпятого элемента ИЛИ-НЕ соединен свторыми входами второго элемента ИНЕ и элемента ИЛИ, второй адресныйвход блока соединен с адреснымн вхо- О дами первого и второго элементовоперативной памяти, разрядные выходыкоторых соединены с вторыми входамипервого, второго, третьего, четвертого, пятого, шестого, седьмого и 5 восьмого элементов И, выходы первого, второго, третьего, четвертого,пятого, шестого, седьмого и восьмогоэлементов И через двустороннюю информационную магистраль соединены с ин формационными входами первого и второго элементов оперативной памяти ивходами данных, информационный входтриггера стека соединен с соответствующим разрядом информационной магистрали блока, выходы элемента постоянной памяти соединены через двустороннюю информационную магистральс информационными входами первого ивторого элементов оперативной памяти,информационные выходы которых соединены с информационным выходом блока.1 297 064 т сто розрамиы Рд ЗРА 977 РЮ Лл Эойюлелдр. Ю

Смотреть

Заявка

3966287, 16.10.1985

ПРЕДПРИЯТИЕ ПЯ М-5912

КИСЕЛЕВ СЕРГЕЙ КОНСТАНТИНОВИЧ, ГУЛЯЕВ АНАТОЛИЙ ИВАНОВИЧ, САДОМОВ ЮРИЙ БОРИСОВИЧ

МПК / Метки

МПК: G06F 11/28

Метки: отладки, программ

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

Код ссылки

<a href="https://patents.su/10-1297064-ustrojjstvo-dlya-otladki-programm.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для отладки программ</a>

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