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

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

Авторы: Наконечный, Орехов, Юренков

ZIP архив

Текст

СОЮЗ СОВЕТСКИНСОЦИАЛИСТИЧЕСКИХРЕСПУБЛИК 14 19) 4 собР 1 ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ О Е ИЗОБРЕТЕНИ К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ 6(56)У 868У 118 Авторское свидетельство ССС 58, кл. С 06 Г 9/00, 1981. орское свидетельство СССР 742, кл. С Об Р 11/28, 198(54) УСТРОЙСТВО ДЛЯ ОТЛАДКИ ПРОГРАММ(57) Изобретение относится к цифровойвычислительной технике и может бытьиспользовано при разработке и отладкеустройств с микропрограммным управлением, Цель изобретения - повышениебыстродействия при отладке программ,Устройство содержит блок 1 заданиярежима, коммутаторы 2,8 и 27, счетчик3, блок 4 постоянной памяти, регистр5 микрокоманд, блок 6 сравнения, де1410038 и Ф;яторыи 32, элементы И 9,10, 16,1,18,19,20,21 и 22, элементы ИЛИ 11,23,24,25 и 26, элемент 12 задержки, сумматор 13 по модулю дна, триггеры 14,15,30 и 31, блоки 28 и 29 памяти. За счет вновь введенных блоков изобретение обеспечивает возможность Изобретение относится к циФровой ычислительной технике и может быть спользовано при разработке и отладке стройств с микропрограммным управлеием,Цель изобретения - повышение быстроействия при отладке программ.На чертеже представлена Функциоальная схема устройства, 10Устройство содержит блок 1 задания ежимов, первый коммутатор 2 адреса, четчик 3 адреса, блок 4 постоянной амяти, регистр 5 микрокоманд, блок бавнения, дешифратор 7 признака ус-. 15овного перехода, коммутатор 8 услов й, первый и второй элементы И 9,10, првый элемент ИЛИ 11, элемент 12 задержки, сумматор 13 по модулю два, т иггер 14 цикла отладки, триггер 15 20 б окировки синхронизации, элементы И 16-22, элементы ИЛИ 23-2 б, второй к ммутатор 27 адреса, первый и второй б оки 28 и 29 памяти, первый и второй т иггеры 30 и 31 управления, дешифра тор 32 режима работы, адресный 33, информационный 34 входы, вход 35 заданИя условий устройства,Устройство функционирует в одном из 30 двух режимов (режим 1 и 2), каждый из которых имеет свой цикл предварительной настройки, включающий фиксацию н;%чального и конечного адресов, кода р 1 жима в блоке задания режимов, за пйсь в соответствующие блоки памяти меток по адресам остановов и зацикливания (в блок 28 памяти в режиме 1) или меток по адресам управляемых переходов с метками управления направле нцем перехода (в блоки 28 и 29 памяти н режиме 2). управления переходами по командам ветвления независимо от действительногозначения сигналов условий на входеустройства. что позволяет отлаживать последовательность участков программыбез останона в промежуточных точках.1 ил,Циклы предварительной настройки задаются нулевым значением управляющего сигнала отладки блока задания режи- мон, а рабочие циклы - единичным значением этого сигнала,В режиме 1 при нулевом значении управляющего сигнала отладка блока задания режимов коммутатор 27 адреса переключаетсяна прием информации с адресного входа 33 устройства, блоки 28 и 29 памяти переключаются сигналом отладки н режим записи по управляющему входу записи чтения, блок 28 памяти выбирается по сигналу с элемента ИЛИ 25, н результате чего в блоке 28 памяти (емкостью Их 1 бит, где Ы - емкость блока 4 памяти микропрограмм) через информационный вход 34 устройства производится загрузка информации Единичное значение загружаемой информации определяет метку адреса изменения хода выполнения микропрограммы н рабочем цикле режима 1. 11 осле загрузки информации в блок 28 памяти упупранляющий сигнал отладки блока задания релимон принимает единичное значение и переключает коммутатор 27 адреса на прием адреса микрокоманды с выхода счетчика 3 адреса через коммутатор 2 адреса. По сигналу начальной установки триггеры цикла отладки 14, блокировки синхронизации 15, управления 30 устанавливаются в нулевое состояние, Управляющий сигнал пуска блока задания режимов, длительностью одного периода тактовой частоты, поступает на вход элемента ИЛИ 11 и Б- вход триггера 15 блокировки синхронизации, С выхода элемента ИЛИ 11 единичный сигнал поступает на управляющий нхоц коммутатора 2 адреса, чтообеспечивает прохождение начального адреса микрокоманды с блока 1 задания режимов на вход блока 4 памяти микро- команд и через элемент ИЛИ 23 на уп 5 равляющий вход разрешения записи счетчика 3 адреса, обеспечивая разрешение занесения в счетчик 3 адреса начального адреса микрокоманды с выхода коммутатора 2 адреса, Кроме того,10 сигнал пуска устанавливает триггер 15 блокировки синхронизации в единичное состояние и разрешает прохождение сигнала такта блока 1 задания режимов через элемент И 17 на входы синхрони зации регистра 5 микрокоманд, счетчика 3 адреса, триггера 14 цикла отладки, триггеров 30 и 31 управления.В устройстве может быть сформировано два типа микрокоманд; переход по 20 счетчику адреса и условный переход, отличающийся признаком условного перехода в коде микрокоманды,-Микрокоманда, выбираемая из блока 4 постоянной памяти, Фиксируется по заднему Фрон ту тактового импульса на регистре 5 микрокоманд. Код признаков переходов микрокоманды поступает с выхода 2 регистра 5 микрокоманд на вход дешифратора 7 признака условного перехода.Если выбрана микрокоманда перехода по счетчику адреса, то на выходе дешифратора 7 признака условного перехода Формируется нулевой сигнал, определяющий появление единичного сигнала на инверсном выходе элемента И 9, который разрешает при поступлении на счетный вход счетчика 3 адреса переднего фронта тактового импульсаприбавлять единицу. В следующем микротакте устройство Формирует микрокоманду, адрес которой отличается на единицу от адреса текущей микрокоманды, Если в текущей микрокоманде на регистре 5 45 микрокоманд фиксируется команда условного перехода, то на выходе дешифратора 7 признака условного перехода формируЬтся единичный сигнал, поступающий на вход элемента И 9. Одновре 50 менно на первый управляющий вход коммутатора 8 условий поступает из регистра 5 микрокоманд код номера условия. При этом коммутатор 8 условий пропускает на вход с сумматора 13 по модулю два сигнал одного из условий по входу 35, номер которого закодирован в микрокоманде. Кроме того, на вход элемента И 21 с выхода регистра 5 микрокоманд поступает признак управления полярностью перехода, определяющий прямое или инверсное значение управляюцего входа 35, при котором возможен переход по адресу, хранимому в регистре 5 микрокоманд илипо счетчику 3 адреса, Управляющий сигнал кода режима работы блока 1 задания режимов на втором выходе дешифратора 32 определяет нулевой сигнал,который через элемент И 20 с инверсного выхода задает единичный сигнал навход элемента И 21 Управляющий сигнал с прямого выхода элемента И 20 через элемент И 22 определяет нулевойсигнал на втором входе элемента ИЛИ 26,При выдаче нулевого сигнала признакауправления полярностью перехода совторого выхода регистра 5 мпкрокомандна втором входе сумматора 13 по модулю два установится нулевой сигнал,что определяет прямое значение признака условного перехода, соответствующеевыходу коммутатора 8 условий. Управляюший сигнал разрешение счета насчетчик 3 адреса с инверсного выходапервого элемента И 9 принимает значение лог,"1", если управляющий сигнална выбранном входе коммутатора 8 условий имеет нулевое знайение, Нулевой сигнал с прямого выхода элементаИ 9 через элемент ИЛИ 23 при нулевомзначении сигнала на первом входе элемента ИЛИ 23 разрешает передачу адреса микрокоманды через коммутатор 2адреса со счетчика 3 адреса, Если анализируемое ветвление микропрограммывыполнено, то на вход элемента И 9поступает единичный сигнал с выходасумматора 13 по модулю два. Выходнойсигнал с прямого выхода элемента И 9поступает через элемент ИЛИ 23 на управляющий вход коммутатора 2 адресаи пропускает на его выход адрес микрокоманды из регистра 5 микрокоманд.Если на выходе регистра 5 установленединичный сигнал признака управленияполярностью перехода, то на вход сумматора 13 по модулю два через элементы И 21, ИЛИ 26 проходит единичныйсигнал, В этом случае выбранный коммутатором 8 сигнал условия переходапринимает инверсное значение на выходе сумматора 13 по модулю два, В последующих тактах устройство формируетадреса микрокоманц анаЛогично изложенному выше, Адрес исполняемой микрокоманды в каждом такте работы уст1 О ЗО 3 1- 4 О 5 О 5141 фойства поступает на блок Ь сравнениявыхода коммутатора 2 адреса. На фторой вход блока 6 сравнения поступает конечный адрес микропрограммы, востановленный на выходе блока 1 задания режимов. Когда микропрограмма фостигает адреса, равного конечному, а выходе блока б сравнения устанаввается единичный сигнал, поступаюй на вход элемента И 10 и прямой ход элемента И 16. Если сигнал циклического режима блока 1 задания рекимов принимает единичное значение, о триггер 14 цикла отладки устаняввается в единичное состояние через лемент 12 задержки по зацнему Фрону.тактового импульса, Сигнал с вь 1 коа триггера 14 цикла отладки через лемент ИЛИ 11 устанавливает устрой: тво в исходное состояние аналогично игналу пуска блока 1 задания Режиов, зацикливая микропрограмму с наального адреса. В случае задания нуевого значения сигнала циклического ежима, поступающего на инверсный ход элемента И 16, единичный сигналвыхода блока 6 сравнения через элеент И 16 поступает на К-вход тригера 15 блокировки синхронизации и о заднему фронту тактового импульса ереключает его в нулевое состояние, игнал с выхода триггера 15 блокиовки синхронизации блокирует пост.пение тактовых импульсов через эле- ент И 17 на блоки устройства, Затем абота устройства может быть повторе" а заданием других значений началаконца микропрограмм, устанавливаемых в блоке 1 задания режимов. С выМода коммутатора 2 адреса адрес микокоманды поступает через коммутатор 7 адреса на вход блока 28 памяти. Единичный сигнал с первого выхода де 1 пифратора 32 режима работы через элеМент ИЛИ 25 разрешает выборку инфорМации из блока 28 памяти. Инйормация йз блока 28 памяти фиксируется по заднему фронту тактового импульса на триггере 30 управления. При единичном значении управляющего сигнала останова блока 1 задания режимов и Инверсного выхода элемента И 17 сиг" йал с выхода элемента И 18 устаняв- Ливает в нулевое .состояние через элеМент ИЛИ 24 триггер 15 блокировки синхронизации. Выход триггера 15 блоКирует поступление тактовых импульсов через элемент И 17 на элементы 0038 6;стройства, и счетчик 3 адреса фиксиРует адрес микрокомянды, ПО которому в блоке 28 памяти была предварительно записана единица,.В режиме 2 в блок 28 памяти записываются метки по тем ацресам ьплкрокоманд условных переходов, ветвление в которых определяется или на неотлаженных аппаратных средствах, или при практически не прогнозируемых поступлениях внешних сигналов условий на управляющий вход 35 устройства, или когда сигналы условий определяютсярезультатами работы блока обработкиданных, Перед отладкой очередного участка микропрограммы определяетсястрого ориентированный граф перехо,дов в помеченных узловых точках ветвления путем задания наиболее вероятного,или необходимого направленияперехо 1-,я. Направление переходов в микрокомандах условного ветвления определяется содержимым блока 29 памяти и соответствии с адресами указаннькмикрокоманд блока 28 памяти. По нуледому значению сигнала отладка с вьгхода блока 1 задания режимов коммутатор 27 адреса пропускает ня адресный входблоког, 28 и 29 памяти адреса микрокоманд с выхода коммутатора 2 адреса,Управляюший сигнал кода режима работыблока 1 зяцания Режимов через дешифратор 32 режима работы по второму выходу разрешает выборку информации изблоков 28 и 29 памяти и подготавливает прохождение сигналов через элементИ 20, С выхода блоков 8,29 памятиинформация Фиксируется по заднемуФронту тактового импульса соответственно на триггерах 30,31 управления.Единичный сигнал на выходе триггера30 управления опрецеляющий помеченную микрокоманду условного перехода,проходит элемент И 20 и нулевым значением с инверсного выхода блокируетэлемент И 21, не пропуская управляющий сигнал признака управления полярностью перехода со второго выхода регистра 5 микрокомянд, Кроме того, нулевое значение инверсного выхода элемента И 20 по второму управляющемувходу коммутатора 8 условий устанавливает ня его выходе нулевое значение. Единичный сигнал с прямого выкода элемента И 20 Разрешает прохождение через элемент И 22 выходного сигналатриггера 31 управления, Значение выхдя триггера 31 управления определя 14100 ет направленце ветвления в помеченных узловых точках микрокоманд условного перехода. Значение нулевого сигнала триггера 31 управления поступает через элементы И 22, ИЛИ 26 на второй5 вход сумматора 13 по модулю два, По аналогии с режимом 1 нулевой сигнал с выхода сумматора 13 по модулю два вырабатывает на инверсном выходе эле мепта И 9 единичное значение сигнала разрешения счета на счетчик 3 адреса. Единичное значение триггера 31 управления определяет выработку управляющего сигнала разрешения записи на 15 счетчик 3 адреса с выхода элемента ИЛИ 23 через элементы И 9, сумматор 13, ИЛИ 26, И 22 и переключающий коммутатор 2 адреса на прием следующего адреса микрокоманды с выхода 20 регистра 5 микрокоманд,.формула из обретенияУстройство для отладки программ, 25 содержащее блок задания режимов, первый коммутатор адреса, счетчик адреса, блок постоянной памяти, регистр микрокоманд , блок сравнения, дешифратор признака условного перехода, 30 коммутатор условий, первый и второй элементы И, первый элемент ИЛИ, причем выходы адресов начала и конца программы блоха задания режимов соединены соответственно с первым инфор- З 5 мационным входом коммутатора адреса и первым входом блока сравнения, выход первого коммутатора адреса соединен с информационным входом счетчика адреса, выход блока постоянной памяти 40 соединен с информационным входом регистра микрокоманд, выходы дешифратора признака условного перехода и блока сравнения соединены с первыми входами соответственно первого и второго 45 элементов И, входы задания условий устройства соединены с информационными входами коммутатора условий, о тл и ч а ю щ е е с я тем, что, с целью повышения быстродействия при отладке программ, в устройство введены второй коммутатор адреса, дешифратор режима работы, триггер цикла отладки, триггер блокировки синхронизации, элемент задержки, сумматор по модулю два, первый и второй триггеры управления, первый и второй блоки памяти, семь элементов И, четыре элемента ИЛИ, причем выходы пуска, задания циклического режима, начальной установки,тактовых импульсов, задания режимаостапова, задания кода режима работы,задания режима отладки блока заданиярежима соединены соответственна с первым входом первого элемента ИЛИ, инверсным входом третьего элемента И,нулевым входом триггера цикла отладки, первым входом четвертого элемента И, первым входом элемента И, входомдешифратора режима работы и управляющим входом второго коммутатора адреса, выходы пуска, задания циклическогорежима, начальной установки и заданиярежима отладки блока задания режимасоединены соответственно с единичнымвходом триггера блокировки синхронизации, вторым входом второго элементаИ, нулевым входом первого триггерауправления, с входом признака записипервого блока памяти, выходы начальной установки и установки режима отладки блока задания режима соединенысоответственно с первым входом второ-го элемента ИЛИ, с входом признака записи второго блока памяти, выход первого элемента ИЛИ соединен с первымуправляющим входом первого коммутатораадреса и первым входом третьего элемента ИЛИ, выход которого соединенс входом разрешения записи счетчикаадреса и вторым управляющим входомпервого коммутатора адреса, выходсчетчика адреса соединен с вторым информационным входом первого коммутатора адреса, выход которого соединенс адресным входом блока постояннойпамяти, вторым входом блока сравненияи первым информационным входом второго .коммутатора адреса, первый информационный выход регистра микрокомандсоединен с третьим информационным входом первого коммутатора адреса, выходкода признаков перехода регистра микрокоманд соединен с входом дешифратора признака условного перехода, первымуправляющим входом коммутатора условийи первым входом шестого элемента И,выход второго элемента И через элемент задержки соединен с информационным входом триггера цикла отладки,выход которого соединен с вторым входом первого элемента ИЛИ, выход блокасравнения соединен с входом третьегоэлемента И, выход которого соединенс К-входом триггера блокировки синхронизации, выход которого соединен свторым входом четвертого элемента И,0 38 Составитель СигаловРедактор А, Долинич Техред Л.Олийнык Корректор З.Лончаков 481/45 Тираж 704 ВНИИПИ Государственног по делам изобретений 113035, Москва, Ж, РаушПодписнокомитета СССРи открытийская наб д. 4/5 Зака ино-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4 Произведет 14100 прямой выход которого соединен со счетным входом счетчика адреса, с входом синхронизации триггера цикла отладки, входом записи регистра микро-5 команд, входами синхронизации первого и второго триггеров управления, инверсный выход четвертого элемента И соединен с вторым входом пятого эле ь мента И, выход которого соединен с 10. вторым входом второго элемента ИЛИ, выход которого соединен с нулевым ,входом триггера блокировки синхронизации,1-вход которого соединен с ши,ной единичного потенциала устройства, )б адресный вход устройства соединен с вторым информационным входом второго коммутатора адреса, выход которого соединен с адресными входами первого и второго блоков памяти, информацион ный вход устройства соединен с информационными входами первого и второго блоков памяти, выходы первого и второго блоков памяти соединены с информационными входами соответственно 25 первого и второго триггеров управления, прямой выход первого триггера управления соединения - с первыми ходами седьмого и восьмого элементовинверсный выход восьмого элемен- ЗО та И соединен с вторым управляющим входом коммутатора условий и вторым ,входом шестого элемента И, первый выход дешнфратора режима работы соединен с первым входом четвертого элемента ИЛИ и вторым входом восьмогоэлемента И, выход которого соединен с третьими входами пятого элементаИ первого элемента ИЛИ, второй выходдешифратора режима работы соединенс вторым входом четвертого элементаИЛИ, с вторым входом седьмого элемента И, входом записи второго блока памяти, выход четвертого элемента ИЛИсоединен с входом записи первого блока памяти, прямой выход второго триггера управления соединен с первымвходом девятого элемента И, прямойвыход седьмого элемента И соединенс вторым входом девятого элемента И,выход которого соединен с первым вхо-дом пятого элемента ИЛИ, выход шестого элемента И соединен с вторым входомпятого элемента ИЛИ, выход которогосоединен с входом первого операндасумматора по модулю два, выход коммутатора условий соединен с входом второго операнда сумматора по модулю два,выход которого соединен с вторым входом первого элемента И, прямой и инверсный выходы которого соединены соответственно с вторым входом третьего элемента ИЛИ и с входом разрешениясчетчика адреса.

Смотреть

Заявка

4145220, 10.11.1986

ПРЕДПРИЯТИЕ ПЯ Р-6380

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

МПК / Метки

МПК: G06F 11/28

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

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

Код ссылки

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

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