Устройство для отладки микроэвм
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1410708
Авторы: Зобин, Кривопальцев, Минкович, Огнев, Серебрянный, Школьник
Текст
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТ К А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ(71) Специальное конструкторское: бюро прецизионного станкостроения и Всесоюзный научно-Исследовательский институт электроизмерительных приборов (72) Г.Я,Зобин, А.И.Огнев, А.Б.Минкович Е.С,Кривопальцев, В.А,Серебрянный и Б.А,111 кольник(56) МуЬгапе зуаешу зрошо 8 атпа 01 а т 11 гоКощрисегй гойз 1 пу ИСБ, 1 МРОВМАТУКА, 1983, У 1, с. 10" 12.1 СЕ1 Я С 1 КС 111 Т ЕМ 1 Л.АТОК ОРЕИАТ 1 ВС 1 ЫБТКЦСТ 1 ОИЯ РОК 1818-11 08 ЕК 8, .1979, 1 пСе 1 Согрогаоп, БапСа С 1 ага, Со.(54) УСТРОЙСТВО ДЛЯ ОТЛАДКИ МИКРОЭВМ1(57) Яаобретение относится к вычислительной технике и может быть использовано для автоматизации отладки программ в реальном масштабе времени для специализированных йрограммных устройств на базе однокристальной микроЭВМ (ОМЭ), для записи отлаженных программ пользователя во внутреннее постоянное запоиинащлее устройство (ПЗУ) ОМЭ и для отладки аппаратнойчасти програь 1 м)пи устройств на базе .ОМЭ. Изобретение позволяет повысить .производительность процесса отладкиза счет предоставления дольэователюполного адресного пространства дляразмещения программ, обеспечения впошаговом режиме функций таймера ипрерываний, а также эа счет реализа"ции возможностей записи и контроля .информации во внутренпем ПЗУ. Уст"ройство для отладки микроЭВМ содержит блок Формирования адреса, регистр адреса останова, два регистрауправления, мультиплексор, блок ключей, блок сравнения адреса, эмулирующую микроЭВМ, регистр отображения,регистр адреса, блок памяти данных,дешифратор команд, два коммутатора,;подключения к управляющей ЭВМ и имеет средства для подключения к отлаживаемой микроЭВМ. 2 з.п. Ф-лы,3 ил.,1 табл.ветстненно останова, пуска, синхройи- зации и разрешения блокасравнения адреса, выход пятого разряда перного регистра управления соединен с входом разрешения блока памяти программ, входы записи первого регистра управления и регистра адреса останова под ключены соответственно к первому и второму входам записи устройства для 1 О подключения к выходной шине управления управляющей ЭВМ, выход регистра адреса о"танова соединен с первым информационным входом блока сравнения адреса, выход регистра адреса соединен с адресным входом блока памяти данных и с вторым информационным входом блока сравнения адреса, выход которого соединен с входом "Шаг" эму лирующей микроЭВМ, вторая группа ин формационных входов-выходов эмулирующей микроЭВМ образует второй информа" цнонный вход регистра адреса, вход записи блока памяти программ и первый управляющий вход первого коммута тара подключены к третьему входу записи устройства для подключения к выходной шйне управления управляющей ЭВМ, второй управляющий вход первого коммутатора подключен к четвертОму З 0 нходу записи устройства для подключения к выходной шине управления управляющей ЭВМ, о т л и ч а ю щ е е с я тем, что, с целью повышения произво" дительности яроцесса отладки, оно со- дерхолт второй регистр управления первый и второй элементы ИЛИ, регистр отображения, блок ключей, вспомогательный блок памяти, мультиплексор и блок формирования адреса, информа 40 ционный вход .нторого регистра управления и выход регистра отображения подключены к входу"выходу данных уст" ройстна для подключения к двунаправленной шине данных управляющей ЭВМ, выход синхронизации эмулирующей мик 45 роЭВМ соединен с первым входом синх" ронизации блока формирования адреса, выход блока сравнения адреса соединен с вторым входом синхронизации блока формирования адреса, входы пуска и . останова которого соединены соответственно с первым и вторым выходом де шифратора команд, первый выход блока формирования адреса соединен с первым информационным входом мультиплек сора и с информационным входом блока ключей, первый и второй выходы кото" рого подключены соответственно к дву" направленной шине данных эмулирующеймикроЭВМ и к второй группе информационных входон-выходов эмулирующей микроЭВМ, второй выход блока формирования адреса соединен с первь.м управляющим входом мультиплеКсора, нторой и третий информационные входи которого соединены с адресным входом устройстна для подключения к выход" ной шине адреса управляющей ЭРМ и с выходом регистра адреса, выход муль" типлексора соединен с адресными входами блока памяти программ и нспомогательного блока памяти, информационный вход-выход которого соединенс информационным входом-выходом блока памяти программ, вторым информационным входом-выходом первого коммутатора и первым информационным входом- выходом второго коммутатора, первый вход записи вспомогательного блока памяти подключен к третьему входу. записи устройства для подключения к выходной шине управления управляющей ЭВМ, первый ииформациониъй вход регистра отображения подключен к второй группе информационных входов"выходов эмулирующей микроЭВМр второй и третий информационные входы регистра отображения соединены соответственно с двунаправленной шиной данных эмулирующей микроЭВМ и с находом блока сравнения адреса, выход записи эмулирующей микроЭВМ соединен с входом записи регистра отображения.вход чтения которого подключен квходу чтения устройства для подключения к выходной шине управления уп" равляюшей ЭВМ, разряд выхода второго регистра управления соединен с входом выбора источника программ эмулирую" щей микроЭВМ, второй разряд выходавторого;регистра управления соединен с первым входом управления вводом-ны" ноцом эмулирующей микроЭВМ и с вторым управляющим входом второго коммутатора, третий разряд выхода второго регистра управления соединен с вторым входом управления.вводом-выводом эмулирующей микроЭВМ, с третьим управляющим входом второго коммутатора и с вторым входом записи вспомогатель. ного блока памятир четвертый разряд выхода второго регистра упранления соединен с входами сброса эмулирующей микроЭВМ и блока формирования адреса, с пятого по двенадцатый разряды выхода второго регистра упранле"ния соединены соответственно с первым входом первого элемента ИЛИ, спервым входом второго элемента ИЛИ,с входом разрешения вспомогательногоблока памяти, с вторым управляющимвходом мультиплексора, с входом признака Этап" блока формирования адреса, с входом признака "Фрагмент" блока формирования адреса, с управляю" 10щим входом блока ключей и с разрешающим входом блока формирования адреса, вторые входы первого и второгоэлементов ИЛИ подключены соответственно к первому и второму входам 15прерывания устройства для подключенияк двунаправленной шине управления отлаживаемой микроЭВМ, выходы первогоФи второго элементов ИЛИ соединенысоответственно с первым и вторым входами прерывания эмулирующей микроЭВМ, вход записи второго регистра уп"равления соединен с пятым входом записи устройства для подключения квыходной шине управления управляю" 25щей ЭВМ.2. Устройство по п. 1, о т л и -ч а ю щ е е с я тем, что блок сравнения адреса содержит компаратор адреса, элемент ИЛИ, первый и второйтриггеры, причем первый и второй информационные входы компаратора адреса являются соответственно первым ивторым информационными входами блока, разрешающий вход компаратора адреса является входом разрешения бло"35ка, первый вход элемента ИЛИ, К-входпервого триггера, С-вход второготриггера и К-вход второго триггераявляются соответственно входами оста Онова, пуска, синхронизации и установочным входом блока, выход компаратора адреса соединен с вторым входомэлемента ИЛИ, выход которого соединен с Б-входом первого триггера, инверсный выход которого соединен с Б-входом второго триггера, выход которого является выходом блока, 0-входвторого триггера подключен к шине единичного потенциала устройства.3. Устройство по п.1, о т л и -ч а ю щ е е с я тем, что блок форми"рования адреса. содержит первый и.второй элементы И, триггер, счетчик, первый и второй формирователи им. пульсов, элемент ИЛИ, шифратор, ре гистр фрагмента, первый, второй и третий регистры константы и мультиплексор, выход которого является пер вым выходом блока, первый, второй,третий и четвертый информационные,входы мультиплексора соединены с выходами соответственно регистра фрагмента, первого, второго и третьегорегистров константы, информационныйвход регистра фрагмента является информационным входом блока, первыйвход первого элемента И, первый ивторой входы второго элемента И яв"ляются соответственно входами пуска,останова и сброса блока, выходы первого и второго элементов И соединенысоответственно с С и К-входами триггера, выход которого. соединен с.первым входом шифратора, второй и тре"тий входы которого соединены соответственно с первым и вторым выходами счетчика, вход сброса которогосоединен с выходом первого формирователя импульсов, счетный вход счет"чика и первый вход второ го формирова.теля импульсов подключены к входупризнака "Этап" блока, вход первогоформирователя импульсов, второй входпервого элемента И и третий вход второго элемента И подключены к входупризнака "Фрагмент" блока, второй итретий входы второго формирователяимпульсов являются первым и вторымвходами синхронизации блока, входразрешения блока подключен к первомувходу элемента ИЛИ, второй вход которого соединен с выходом второго формирователя импульсов, выход элемента ИЛИ является вторым выходом блока,первый и второй выходы шифратора соединены соответственно с первым и вторым управляющими входами мультиплексора. Выходы Входы О О О, О 0 О 1 1 1 1 1 О 0 О 0 11 О 0 О 0 01410708 Осф. Я тавитель Д. ВанюхинРед М,Ходанич ктор М.Иа о каз 3323 Произво приятие актор Н. Ког Тираж 572 ВНИИПИ Государстве по делам изобре 13035, Москва, Ж"35, полиграфическо Подпиого комитета СССРний и открытийаушская наб., д.Устройство работает следующим обраэом.Управляющая ЭВМ 1 (УЭВМ) в символьном виде на ассемблере ОМЭ позво"ляет редактировать текстовые файлы,транслировать их в машинные коды ОМЭи подготовитьзагрузочные модулипрограмм пользователя. Кроме того, впамяти УЭВМ 1 размещается, специальнаяпрограмма "Отладчик", которая управляет работой устройства. Программа"Отладчик" постоянно. поддерживаетсвязь с оператором посредством терми"нала, входящего в состав УЭВМ 1, Уп"равление режимами работы устройствапроисходит по командам оператора, на"бираемым на клавиатуре терминала,при этом вся необходимая информациявыводится на дисплей.1Устройство имеет следующие режимыработы:1, Сброс микроЭВМ.2. Загрузка программы пользователя в блок памяти программ.3. Чтение и модификация блока памяти программ.4. Выбор источника программы мик"роЭВМ.5. Установка и сброс точки останова.6. Переустановка счетчика командмикроЭВМ,7, Пуск программы в реальном вре"мени.8. Выполнение программы по шагам.9. Принудительный останов программы.10. Чтение и модификация содержимого внутренних ячеек микроЭВМ.11. Обеспечение. прерываний программы микроЭВМ от внешнего событияили внутреннего счетчика событий.12. Обеспечение прерывания программы микроЭВМ от внутреннего таймера.13, Программирование внутреннегоПЗУ микроЭВМ.. 14. Тестирование внутреннего ПЗУмикроЭВМ.Каждый режим работы устройствапредставляет собой некоторую последовательность состояний устройства.Переключение устройства иэ одногосостояния в другое осуществляется посылкой соответствующего кода из УЭВМв первый 6. и второй 7 регистры управления, выходы которых соединены с На Фиг, 1 приведена структурная схема устройства для отладки МикроЭВМ; на фиг. 2 - структурная схема блока Формирования адреса; на фиг. 3структурная схема блока сравнения адреса.1 Устройство содержит управляющую 25 ЭВМ 1 с шиной 2 адреса и шиной 3 данных, блок 4 формирования адреса, .регистр 5 адреса останова, первый 6 и второй 7 регистры управления, мультиплексор 8, буфер 9 программирова ния, блок 10 сравнения адреса, однокристалльную эмулирующую микроЭВМ 11 (ОМЭ 11), регистр 12 отображения, шину 13 данных эмулирующей микроЭВМ, регистр 14 адреса, буфер 15 польэова теля, блок 16 памяти данных, дешифратор 17 команд, информационный вход- выход 18 блока памяти программ, пер" выйфкоммутатор 19, второй коммутатор 20, воспомогательный блок 21 памяти, 40 блок 22 памяти. программ, первый элемент ИЛИ 23, второй элемент ИЛИ 24, двунаправленную шину 25 устройства для подключения к отлаживаемой микро- ЭВМ.45Блок 4 формирования адреса содержит триггер 26, шифратор 27, счетчик 28, мультиплексор 29, регистр 30 фрагмента, первый 31, второй 32 и третий 33 регистры констант, второи . формирователь 34 импульсов, первый элемент И 35, второй элемент И 36, первый формирователь 37 импульсов, элемент ИЛИ 38.Таблица истинности шифратора 27 .1Блок 10 сравнения адреса содержит компаратор 39 адреса, элемент ИЛИ 40, первый триггер 41, второй триггер 42,141070Изобретение относится к вычислительной технике и может быть использовано для автоматизации отладки программ,в реальном масштабе времени для специализированных программных устройств на базе однокристальной микроЭВМ (ОМЭ), для записи отлаженны программ пользователя во внутреннее .постоянное эапоминакицее устройство 10 (ПЗУ) ОМЭ и для отладки аппаратной части программных устройств на базе ОМЭЦелью изобретения является повыше" ние производительности процесса от ладки.14107 входами управления всех элементовустройства.Все режимы работы устройства неикаются и заканчиваются исходным сос"тоянием устройства. Исключение сос"тавляют режимы: "Пуск программы вреальном времени" и "Принудительныйостанов",В исходном состоянии устройствана выходах регистров 6 и 7 управления активный уровень имеет сигналыМ и "Фрагмент". Уровень сигнала,"Раэр." на выходе первого регистра 6управления и сигнала на первом выходе второго регистра 7 управления висходном состоянии может быть произвольным - это определяется последнимвыполнешьм режимом устройства, нопри включении устройства они устанав ливаются в пассивный уровень. Все остальные выходы обоих регистров управления имеют в исходном состоянии пассивный уровень. В результате этого висходном состоянии: 251) мультиплексор 8 соединяет шину2 адреса с адресным входом блока 22памяти программ;2) вход-выход данных блока 22 памяти программ подключен к шине 18данных, которая в свою очередь черезпервый коммутатор 19 соединена с ши"ной 3 данных, таким образом блок 22памяти программ подключен к УЭВМ 1;3) ОМЭ 11 с помощью блока 10 переводится в состояние "Останов". Приэтом ОМЭ 11 через шину 13. данных, атакже через свой второй порт переда"ет в регистр 12 отображения. содержи"мое своего счетчика команд; 404) выход блока 10 подключен к регистру 12 отображения и отображаетналичие или отсутствие состояния Ос"Итанов" ОМЭ 11, Таким образомУЭВМпри чтении через первую шину 3 дан. ных регистра 12 отображения получаетинформацию о содержимом счетчика команд ОМЭ и состоянии "Останов" ОМЭ;5) буфер 9 программирования отключает первый выход блока 4 от шины13 данных и от второго порта ОЮ 11.Устройство имеет два исходных состояния, обеспечивающих подготовку ОЮлибо к работе от внутреннего ПЗУ ОЮ11, либо от блока 22 памяти программ.Это определяется специальными командами оператора в режиме "Выбор источника программы ОМЭ". При включении питания устройство, переходит в 08исходное состояние, ориентирующееОМЭ 11 на работу с блоком 22 памяти1программ,Работа устройства в указанных ре"жимах происходит следующим образом.Сброс ОМЭ,В этом режиме второй регистр 7 управления выдает активный уровень сигнала СБРОС на вход У 4 ОМЭ 11, который осуществляет сброс ОМЭ. При этомвнутри ОМЭ 11 происходят необходимыепереустановк; в частности обнулкет"ся счетчик команд и все порты перевод 4 тся в отключенное состояние.Этотже сйгнал обнуляет триггер в блоке 4.,Режим заканчивается снятием сигналаСБРОС и переводом устройства в исхоД-ное состояние.Загрузка программы пользователяв блок-памяти программ.В этом режиме подготовленный загрузочный модуль программь пользователя изУЭВМ 1 переписывается по- .байтно в блок 22 памяти программ. Запись в блок памяти программ осуществляется иэ исходного состояния устройства с помощью сигнала "Запись в блокпамяти программ" от УЭВМ 1,Чтение и м,ц 1,икания блока памятипрограмм.В этом режиме па дисплей выводитсясодержимое ячейки блока 22 памятипрограмм, адрес которой задан оператором с клавиатуры. Оператор можетввести в ячейку новое содержимое.Чтение и модификация блока памятипрограмм осуествляется из исходного 1состояния устройства с помощью сигналов от УЭВМ 1 "Запись в блок памяти,программ" и "Чтение блока памятипрограмм".Выбор источника программы ОМЭ.Сначала второй регистр 7 управления выдает на вход У 4 ОМЭ 11 активный уровень сигнала СБРОС, чем осуществляет сброс ОМЭ, Затем упомянутыйрегистр устанавливает на входе У 1 ОМЭ11 сигнала "Лог. 0" (для работы ОМЭ11 от внутреннего ПЗУ) или сигнал"Лог. 1" для работы ОЮ от блока 22памяти программ или от внешней программной памяти пользователя, под"ключаемой через буфер 15 пользователя в соответствии с командой оператора. После этого снимается сигналСБРОС, и устройство переходит в исходное состояние, УстаНовленный приэтом уровень сигнала на входе У ОМЭ11 определяет в дальнейшем для всехпоследующих режимов устройства ис"точник программы дпя ОМЭ,Установка и сброс точки останова.Установка точки станова исполь"зуется для обеспечения возможностиостанова программы ОМЭ в заданномместе при выполнении программы пользователя в реальном времени, 10При установке точки остановаУЭВМ 1 по шине 3 данных записываетв регистр 5 адреса останова заданныйоператором адрес, а первый регистр 6выдает активный уровень сигнала 151 Разр.". При этом разрешается работакомпаратора 39 адреса в блоке 10. Присбросе точки останова сигнал"Раэр." переводится в пассивный уровень, что запрещает работу компаратора адреса 39 в блоке 10.Переустановка счетчика команд.Режим выполняется при работе ОМЭ11 от блока 22 памяти программ илиот внешней программной памяти пользо 25вателя. После распознавания командоператора УЭВМ 1 формирует во вспомо.,гательном блоке 21 памяти код команды безусловного перехода по укаэаному оператором адресу. Для этого сигналы М и И 1, воздействуя на входыуправления соответственно блока 22памяти программ и вспомогательногоблока 21 памяти, подключают к шине18 данных вход-выход вспомогательно"го блока 21 памяти вместо блока 2235памяти программ), Апрес ячейки вспомогательного блока 21 памяти, содер"жащей код команды безусловного перехода по укаэанному адресу, заносится 40в регистр. 30 фрагмента блока 4. Затем шина 18 данных подключается к:шине 13 данных через второй коммутатор 20. Далее, второй регистр 7 управления выдает на вход Уб блока 4 45уровень "Лог. 0" сигнала "Фрагмент",который через формирователь 37 импульсов обнуляет счетчик 28. Затемвторой регистр 7 управления последовательно выдает на вход У 5 блока 4два импульса Этап , которые перево 11 1150дят счетчик 28 в состояние, обеспечивающее передачу содержимого регистра 30 фрагмента на выход мультиплексора 29, Это достигается тем, чтовыходы счетчика 28 через шифратор 27воздействуют на входы управлениямультиплексора 29. Одновременно совторым импульсом "Этап" первый регистр 6 управления выдает на вход ОМЭ 11 сигнал "наг", что приводит к пуску ОМЭ 11 на один командный цикл и появлению импульсов синхронизации на выходе "Синхр." ОМЭ 11, которые выключают формирователь 31 импульсов в блоке 4 после исполнения одной команды, В результате этого на время одного командного цикла мультиплексор В:подключает к адресному входу вспомогательного блока 21 памяти первый выход блока 4, т.е. содержимое регистра 30 фрагмента. Таким образом ОЙЭ 11 исполняет команду безусловного перехода по укаэанному адресу, т.е. перестраивает счетчик команд. Затем устройство переводится в исходное состояние.Пуск программы в реальном времени.Пуск программы ОМЭ в реальном .времени возможен как с текущего значения счетчика команд, так и с произвольного заданного оператором адреса.Пуск программы ОМЭ в реальном . времени с текущего значения счетчика команд осуществим при любом источни" ке программы ОМЭ и выполняется следующим образом.Мультиплексор 8 подключает выход регистра 14 адреса к адресному входу блока 22 памяти программ, вход-выход данных которого сигналом М 1 подключается к шине 18 данных, которая через второй коммутатор 20 подключается к шине 13 данных, Таким образом блок памяти 22 программ подключен к ОМЭ 11 для работы. Далее первый регистр б управления формирует активный уровень сигнала "Пуск", который поступает на третий вход управления блока 10. Сиг" нал "Пуск" сбрасывает триггер 41 вблоке 10 и устанавливает в блоке 10 триггер 42 в активное состояние, не зависящее от наличия сигнала на первом входе управления У .блока 10. Тем самым активизируется вход "Наг" ОМЭ 11, в результате чего ОМЭ 11 начинает выполнять программу в реальном времени либо от внутреннего ПЗУ, либо от блока 22 памяти программ, либо от внешней программной памяти пользователя (в зависимости от того, что было выбрано ранее). Выполнение программы будет происходить до выявления точки останова или осуществления опе" ратором принудительного останова.При работе ОМЭ 11 от блока 22 памяти программ юли внешней програм1410708 мной памяти пользователя в начале каждого командного цикла содержимое,счетчика команд переписывается с помощью сигнала на вьассде Синхр. ОМЭ11 в регистр 14 адреса со второго5порта ОМЭ 11 и шины 13 данных. Регистр 14 адреса передает адрес команды на компаратор 39 адреса блока 10(через второй адресный вход), а также через мультиплексор 8 на адресныйвход блока 22 памяти программ. Кодкоманды с выхода блока памяти программ или внешней программной памяти.пользователя передается через шину13 данных ца вход"выход "Лина" ОМЭпод управлением сигнала с выходачтения команд (ЧТК) ОМЭ 11 (связь выхода ЧТК и ОЗУ программ на фиг. 1 непоказана). 20Выявление точки остацова происходит с помощью компаратора 39 адреса в блоке 10. Если точка остановаустановлена, т.е, сигнал "Раэр." навходе У 5 блока 10 активен, то при .ранецстве текущего адреса команды иадреса остацова (соответственно цавтором и первом адресных входах компаратора 39 адр"са в блоке 10) компаразор адреса активным уровнем на 30своем выходе через элемент ИЛИ 40 вблоке 10 устанавливает в активноесостояние триггер 41, чем снимаетсигнал установки с триггера 42 вблоке 10. При этом сигнал с выхода"Синхр," ОМЭ 11, поступающий на первый вход управления блока 10, переводит триггер 42 в пассивное состояние.Пассивный уровень с выхода триггера42 блока 1 С поступает на вход "11 аг"ОМЭ 11 и переводит %1 Э в исходноесостояние. Выявление точки останованевозможно при работе ОМЭ 1 от внут.реццего ПЗУ, так как в регистр 14адреса не передается содержимое счетчика команд 011 Э,Пуск программы ОМЭ в реальном времени с произвольного заданного оператором адреса возможен когда источником программы ОМЭ служит либо блок22 памяти программ, либо внешняяпрограммная память пользователя,подключаемая через буфер 15 программирования, При этом сначала осуществляет-.ся переустановка счетчика команд ОМЭ,а затем пуск программы в реальномвремени с текущего значения счетчикакоманд. Выполнение программы будетпроисходить до выявления точки оста 8нова или осуществления. оператором принудительно го останова.Выполнение программы по шагам.По команде оператора.возможно вы-. полнение одной команды ОМЗ с последующим остановом ОМЭ (одии шаг) ипи выполнение нескольких команд с последующим остановом ОМЭ (несколько шагов). Этот режим возможен для любого источника программы ОМЭ.Для выполнения очередной одной команды первый регистр 6 управления вы" дает импульс ",Яаг", который переводит триггер 42 блока 10 в активное состояние и через вход "Наг" ОМЗ 11 осуществляется пуак ОМЭ 11. При этом на выходе "Синхр." появляются импульсы командного цикла, которые через вход У 1 блока О сбрасывают триггер 42 в блоке 10. Таким образом.происходит выполнение одной команды, после чего ОМЭ 11 возвращается в состояние "Останов". Если задано выполнение нескольких 1шагов, то УЭВМ 1 выдает заданное ко" личество импульсов "Иаг" через первый регистр 6 управления. При этом после выполнения очередного шага, что проверяется наличием состояния "Останов" ОМЗ через регистр 12 отображения, УЭВМ 1 выдает очередной сигнал "111 аг", ждет перехода ОМЭ 11 в состояние "Останов" и так до выполнения заданного количества шагов. Ре" жим заканчивается переводом устройства в исходное состояние.При выполнении программы ОМЗ от блока 22 памяти программ или от внешней программной памяти пользователя . как в реальном времени, так и по шагам триггера 26 блока 4 отражается режим работы внутреннего таймера ОМЭ. Это достигается тем, что дешифратор 17 команд,. тестируя коды командпоступающие на шину 13 данных, выделяет команду управления внутренним таймером ОМЗ "Старт таймера" и "Стоп таймера" и вырабатывает сигналы"Старт" и "Стоп", поступающие с выходов дешифратора 7 команд соответственно на входы У 3 и У 4 блока 4. Зти сигналы, проходя через первый 35 и второй 36 элементы И соответственно, устанавливают или сбрасывают триггер 26. Сброс триггера 26 возможен также по сигналу "Сброс" (вход У 7 в бло-.ке 4)осуществляющему сброс ОМЭ 11,14107 так как при сбросе ОМЭ происходит остовов внутреннего таймера.При выполнении программы ОМЭ от любого источника программы ОМЭ уст,5 ройство обеспечивает либо работу с реальной. отлаживаемой системой поль" зователя, подключаемой через буфер 15 пользователя, либо имитирует работу системы пользователя, ОДля имитации системы пользователя предложенное устройство содержит блок 1 б памяти данных, а также первый 23 и второй 24 элементы ИЛИ, Блок 16 памяти данных служит для имитации раба ты ОМЭ 1 1 с внешними относительно ОИЭ ячейками данных пользователя или устройствами ввода-вывода пользователя. На вход блока 1 б памяти данных поступает адрес внешней. ячейки данных с регистра 14 адреса, а его вход"выход подключается к шине 13 данных.Первый элемент ИЛИ 23 передает на первый вход прерывания П 1 ОМЭ 11 соответствующий сигнал от системы поль зователя или имитирующий сигнап пре", рывания с пятого выхода второго ре-гистра 7 управления. Второй элемент ИЛИ 24 передает на второй вход прерывания П 2 ОМЭ 11 соответствующий сиг" 30 нал от системы пользователя или имитирующий сигнал прерывания с выхода второго регистра 7 управления.Принудительный останов.Этот режим позволяет осуществить останов выполнения программы ОМЭ при работе ОМЭ в реальном времени от любого источника программы.Для астанова ОМЭ первый регистр б управления формирует импульс. "Останов", который, поступая на вход У 2 блока 10, устанавливает в активное 1 состояние триггер 41, чем снимает сигнал установки триггера 42. Приэтом сигнал с выхода "Синхр" ОМЭ 11, ,поступающий:на вход. У 1 блока 1 О, пере. водит триггер 42 в пассивное состояние. Пассивный уровень с выхода триг" гера 42 поступает на вход "Шаг" ОМЭ 11 и переводит ОМЭ в состояние "Останов", После этого устройство переводится в исходное состояние.Чтение и модификация содержимоговнутренних ячеек ОМЭ.Режим выполняется из исходного , состояния, соответствующего работе ОМЭ от блока 22 памяти программ или . от внешней программной памяти пользователя. Чтение или модификация содер 08 10Фжимого внутренней ячейки ОМЭ достигается тем, что ОМЭ 11 принудительно переключается на выполнение специального программного фрагмента отладки, записанного во вспомогательном блоке 2 памяти. Назначение фрагмента от" ладки состоит в считывании или записи интересуемой ячейки ОМЭ 11 Так как обращение к внутренним ячейкам ОМЭ возможно только через аккумулятор или регистры общего назначения, т 1 это приводит к.потере действительной ин" формации программы пользователя. Поэтому фрагмент отладки должен также содержать команды для сохранения и последующего .восстановления действительной информации. Кроме тога, Фрагмент отладки должен содержать коман" ду возврата в программу пользователя.После распознавания команды опера" тора УЭВМ 1 запоминает адрес текущей команды программь 1 пользователя, Далее для перехода к выполнению фраг мента отладки УЭВМ 1 формирует во вспомогательном блоке 21 памяти код команды безусловного перехода на Фрагмент отладки, а адрес этой команды записывает в регистр 30. Фрагмента блока 4, Затем УЭВМФормирует ва вспомогательном блоке 21 памяти соб"ственно Фрагмент отладки. Кроме того, для обеспечения правильной работы внутреннего таймера ОМЭ 11 во вспомо" гательном блоке 21 памяти формируют". ся; код команды Старт таймера" (по адресу, хранящемуся в первом регистре 31 константы), кад команды "Стоп- таймера" (по адресу, хранящемуся во втором регистре 32 констаиты);,и код команды "Нет. операции" (по адресу, хранящемуся в третьем регистре 33 константы).Затем УЭВМ 1 подключает ОМЭ 11 к вспомогательному блоку 21 памяти, для чего мультиплексор 8 передает на адресный вход вспомогательного блока 21 памяти вход регистра 14, а вход- выход данных вспомогательного блока 21 памяти через шину 18, данных и второй коммутатор 20 подключается к ши" 1не 13 данных. Далее второй регистр 7 управления вьщает на вход Уб блока 4 уровень "Лог, 0". сигнала "фрагмент", который, во"первых, через фор"мирователь 37 импульсов обнуляетфсчетчик 28,а, во-вторых, через первый 35 и, второй 36 элемент И запрещает изменение состояния триггера 2 б;отражающего работу внутреннего таймера ОМЭ . Затем второй регистр 7управления выдает на вход У 5 блока 4импульс "Этап", который увеличиваетсодержимое счетчика 28 и запускаетформирователь 34 импульсов, выход которого через элемент ИЛИ 38 передается на вторбй выход блока 4. При этомблок 4 выдает на первьй выход либо 10содержимое третьего регистра 33. константы (если триггер 26 сброшен, т.е.внутренний таймер ОМЭ отключен), либосодержимое второго регистра 32 константы (если триггер 26 установлент.е. пущен внутренний таймер ОМЭ),что определяется содержимым. первогои второго выходов дешифратора 27, управляющих работой второго мультиплексора 29. Одновременно с импульсом20"Этап" первый регистр 6 управленияб посылает сигнал "цаг" на четвертыйвход управления блока 10, что приво"дит к пуску ОМЭ И на один командныйцикл и появлению импульсов синхрони" 25зации на выходе "Синх," ОИЭ 11, которые выключают Формирователь 34 импульсов в блоке 4 после исполненияодной команды. В результате этого навремя одного командного цикла муль- З 0типлексор. 8 подключает к адресномувходу вспомогательного блока 21 памяти первый выход блока 4. Таким образом, первый импульс . "Этап" вызывает выполнение одной команды ОМЭ: "Стоп таймера" или "Нет операции", Это подготовительный этап перед отработкой Фрагмента отладки, позволяющий сохранить неизменным со держимое внутреннего таймера ОМЭ. Затем первый 6 и второй 7 регистры уп- . равления еще раз одновременно формируют импульс "Этап" и сигнал "Рвг", в результат чего содержимое счетчика 28 в блоке 4 увеличивается-на еди" ницу, и в течение одного командного цикла нв адресный вход вспомогательного блока 21 памяти передается содержимое регистра 30 фрагмента в котором хранится адрес команды безусловного перехода на начало фрагмента отладки. Таким образом, следствием второго импульса "Этап" является переустановка счетчика команд ОМЭ нв начало Фрагмента отладки. 55Затем УЭВМ 1 путем выдачи последо" ввтельности импульсов "Шаг" осуществляет выполнение фрагмента отладки по шагам. При этом устройство работаетв режиме, аналогичном режиму "Выполнение программы по шагам", с той лишьразницей. что в качестве программнойпамяти для ОМЭ 11 используется не,блок 22 памяти йрограмм, а вспомогательный блок 21 памяти. При отработке фрагмента отладки первый регистр6 управления отключает шину 13 данныхот блока 16 памяти и от буфера 15пользователя. Это позволяет передавать содержимое внутренних ячеекОИЭ 1 в регистр 2 отображения беэискажения ячеек блока.16 памяти данных или устройств ввода-вывода пользователя. При выполнении команд Фрагмента отладки ОИЭ 11 сначала. передаетв регистр 12 отображения данные, необходимые для сохранения. Они в своюочередь .считываются в УЭВМ 1 и запоминаются во вспомогательном блоке 21памяти. Затем из ОИЭ 11 в регистр 12отображения передается содержимое искомых ячеек, которое поступает в:УЭВМ(так осуществляется чтение со"держимого,внутренних ячеек ОМЭ), Длямодификации содержимого внутреннихячеек ОМЭ 1 в самом фрагменте отладки Формируются. команды записи необходимых данных в нужнъе ячейки, ДалееОМЭвыполняет команды по восстановлению сохраненных данных. Последней командой фрагмента отладки является безусловный переход, перестраи"вающий счетчик команд ОМЭ 11 в значение, на единицу меньше адреса текущей команды программы пользователя. Далее одновременно выдаются третий импульс "Этап" и сигнал "Шаг". При этом за счет перестройки счетчика 28 в блоке 4 и в зависимости от исходного состояния внутреннего таймера ОМЭ, которое отражается в триггере 26 боярка 4, будет выполнена нли команда "Старт таймера", или команда "Нет операции". Это заключительный этап режима, который возвращает внутренний таймер и счетчик команд ОМЭ в исходное состояние.После этого сигнал "Фрагмент" переводится в состояние "Лог.", что открывает возможность триггеру 26 в блоке 4 следить эа состоянием внутреннего таймера ОИЭ при работе от реальной программы пользователя, и одновременно подключает шину 13 дан" ных к блоку 16 памяти данных и к бу 410708314феру 15 пользователяРежим заканчи. вается переводом устройства в исходное состояние.Предложенная организация режима "Чтение и модификация содержимого внутренних ячеек ОМЭ" за счет применения описанного блока 4 формирования адреса и введения вспомогатель" ного блока 21 памяти позволяет исклю чить возможность искажения достоверной работы внутреннего таймера ОМЭ, а также позволяет снять ограничение на использование полного адресного пространства ОМЭ для программ пользователя, так как программа пользователя помещается в блоке 22 памяти программ, а все необходимые команды для нужд отладки (фрагмент отладки "Старт таймера" и т.п.) располагаются 20 во вспомогательном блоке 21 памяти.Обеспечение прерывания программы ОМЭ от внешкего события и внутреннего счетчика событий.Прерывание программы ОМЭ от. вкеш" 25 него события и внутреннего счетчика события ОМЭ обеспечивается при выполнении прбграммы ОМЭ как в. реальном времени, так и по шагам, Это достигается тем, что первый 23 и второй 24 30 элементы ИЛИ передают соответственно на первый П и второй П 2 входы прерывания ОМЭ 11 или имитирующие сигналы Прерывания из устройства (с пятого и шестого выходов второго регистра 7 управления), или сигналы прерывания от системы пользователя,Обеспечение прерывания программы ОМЭ от внутреннего таймера.Прерывание программы ОМЭ от внутреннего таймера обеспечивается при выполнении программы ОМЭ как в ре альном времени, так и по шагам, Это достигается тем, что при работе уст-. ройства в любом режиме (в частности, при чтении и модификации содержимого внутренних ячеек ОМЭ) с помощью блока 4 обеспечивается достоверная работа внутреннего. таймера, т.е. осуществляется остановка .таймера при вы. полнении ОМЭ 11 служебных команд, связанных с отладочными процедурами (например, выполнение команд фрагмента отладки)Программирование внутреннего ПЗУ ОМЭ. 55При программировании внутреннего ПЗУ ОМЭ 11 отлаженной программы, хранящейся в блохе 22 памяти программ,переносятся во.внутреннее ПЗУ ОМЭ 11. Это происходит. следующим образом.Второй регистр 7 управления выда" ет на вход Уб блока 4 уровень "Лог, 0" сигнала "Фрагмент", который через формнрователь 37 импульсов обнуляет счетчик 28 в блоке 4. Далее второй регистр 7 управления последовательно выпает два импульса Этап", которые переводят счетчик 28 в состояние, обеспечивающее передачу на выход мультиплексора 29 содержимого регистра 30 фрагмента. Это достигается тем, что выходы счетчика 28 через шифра-,гФ тор 27 воздействуют на входы управления мультиплексора 29. Затем второй регистр 7 управления выдает сигнал М, который через элемент ИЛИ 38 устанавливает второй выход блока 4 в активное состояние, в результате че" го на выход мультиплексора В,передается содержимое регистра 30 фрагмента блока 4, Таким образом адресация блока 22 памяти программ осуществля" ется через регистр 30 фрагмента блока 4.Далее второй регистр 7 управления переводит ОМЭ 11 в состояние программирования внутреннего ЛЗУ, для чего на вход У 4 ОМЭ 11 выдает сиг" нал "Сброс", а затем иа вход У 1 ОМЭ 11 выдает сигнал напряжением +25 В После этого второй регистр 7 управле" ния выдает сигнал ВЗ и подключает тем самым чер э буфер 9 программирования первый выход блока 4 (т.е, содержимое регистра 30 фрагмента) к шине .13 данных и входу"выходу "11 ииа" ОМЭ 11, а также к второму порту ОМЭ 11, Затем УЭВМ 1 заносит в регистр фрагмента адреса текущей программирующей ячейки, который записывается внутрь ОМЭ 11 снятием сигнала "Сброс", Далее снимается сигнал 113, отключающий связь буфера 9 программировакия со входом-выхедом "111 ина" и вторым портом ОМЭ 11. Следующим этапом является перезапись содержимого ячейки блока 22 памяти программ (адрес которой задан в регистре 30 фрагмента) в соответствующую ячейку. внутреннего ПЗУ ОМЭ 1. Для этого второй коммутатор 20 под" ключает шину 18 данных к шине 13 данных и осуществляет тем самым связь входа-выхода данных блока 22 памяти программ с входом-выходом "11 ина" ОМЭ 11. Далее сигналы с второго и третье15 1410708го выходов второго регистра 7 управ с.ления осуществляют запись вводимого,кода во внутреннее ПЗУ. ОИЭ 1. Дпязаписи новой ячейки сигналом Н 3 снова 5подключается буфер 9 программирования, УЭВМ 1 заносит в. регистр 30Фрагмента ноный адрес, и процесс повторяется,Тестирование внутреннего ПЗУ ОМЭ. О. В этом режиме содержимое внутреннего ПЗУ ОМЭ 11 переносится но вспомогательный блок 21 памяти. В дальнейшем эта информация может быть либовыведена на дисплей, либо пройти побайтное сравнение с эталонной программой, расположенной в блоке 22 памяти программ. Последовательность работы устройства в этом режиме следующая. 20Первый 6 и второй 7 регистры управления с помощью сигналов И 1 и М 11подключают к шине 8 данных вспомогательный блок 21 памяти вместо блока22 памяти программДалее аналогично 2режиму "Программирование внутреннегоПЗУ ОМЭ" обеспечивается передача наныход мультиплексора 8 содержимогорегистра 30 Фрагмента блока 4 и эа"пись адреса текущей ячейки внутрьОМЭ 1. После этого второй регистр 7управления, воздействуя на входы У 2и УЗ ОМЭ 1, обеспечивает передачусодержимого текущей ячейки внутрен"него ПЗУ из ОМЭ 1 через вход-выход"Нина" ОМЭ 11 по шине 13 данных через второй коммутатор 20 и шину 18данных во вспомогательньй блок 2памяти.Далее УЭВМ 1 заносит в регистр 30фрагмента блок 4 адрес следующей считываощей ячейки и процесс, повторяетсяснова. После переноса всего сбдержи"мого внутреннего ПЗУ ОМЭ 11 но вспомогательный блок 21 памяти УЭВМ 1 взависимости от команды оператора осу.ществляет либо побайтное сравнениесодержимого вспомогательного блока21 памяти с эталонной программой,расположенной в блоке 22 памяти программ, либо индикацию на дисплее заданных ячеек. 16 Формула изобретения. Устройство для отладки микрО-.:55ЭВИ,.содержащее регистр адреса остарова, первый" регистр управления, блоксравнения адреса, блок аамятн программ, первый и,второй коммутаторы,дешифратор команд, регистр адреса,блок памяти данных и эмулирующую Иик.роЭВМ; причем нход-ныход данных уст" ройстна для подключения к двунаправленной шине данных управляющей ЭВМподключен к информационным входамрегистра адреса останова и первогорегистра управления и к первому информационному входу-выходу первого коммутатора, информациошп Й вход-выход блока памяти программ соединен с вторым информационным входом-выходомпервого коммутатора и с первым информационным входом-выходом второгокоммутатора, второй информационный вход-выход которого соединен с инфор мационныМ входом дешкфратора команди подключен к двунаправленной шинеданных эмулирующей микроЭВМ двуна"правленная шина данных эмулирующеймикроЭВМ подключена к информационно-.му входу-выходу блока памяти .данных,к первому информационному входу регистра адреса и к входу-ныходу данных устройства для подключения к двунаправленной шине данных адреса Ртлажинаемой микроЭВМ, первая и втораягруппы информационных входов-выходовэмулирующей микроЭВМ подключены со-.ответственно к первой и второй группам информационных входов-выходовустройства для подключения к двунаправленной шине данных адреса отла-.жпнаемой микроЭВМ, выходы чтения изаписи эмулирующей микроЭВМ соединены с входами еоответственно чтенияи записи блока памяти данных и подключены к вьгсодам соответственночтения и записи. устройства для подключения к двунаправленной шине управления отлаживаемой микроЭВМ, выход чтения команд эмулирующей микроЭВМ соединен с первым управляющимвходом второго коммутатора и подключен к выходу чтения команд устройства для подключения к двунаправленнойшине упранления отлаживаемой микроЭВМ; выход синхронизации эмулирующеймнкроЭВМ соединен с входом записи регистра адреса, с установочным входомблока сравнения адреса и подключен квыходу синхронизации устройства для,подключения к двунаправленной шинеуправления .отлаживаемой микроЭВМ, вы"ходы первого, второго, третьего ичетвертого разрядовпервого регистрауправления соединены с входами соот
СмотретьЗаявка
3997002, 04.11.1985
СПЕЦИАЛЬНОЕ КОНСТРУКТОРСКОЕ БЮРО ПРЕЦИЗИОННОГО СТАНКОСТРОЕНИЯ, ВСЕСОЮЗНЫЙ НАУЧНО-ИССЛЕДОВАТЕЛЬСКИЙ ИНСТИТУТ ЭЛЕКТРОИЗМЕРИТЕЛЬНЫХ ПРИБОРОВ
ЗОБИН Г. Я, ОГНЕВ А. И, МИНКОВИЧ А. Б, КРИВОПАЛЬЦЕВ Е. С, СЕРЕБРЯННЫЙ В. А, ШКОЛЬНИК Б. А
МПК / Метки
МПК: G06F 11/26
Опубликовано: 15.09.1990
Код ссылки
<a href="https://patents.su/13-1410708-ustrojjstvo-dlya-otladki-mikroehvm.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для отладки микроэвм</a>
Предыдущий патент: Устройство ямр
Следующий патент: Устройство для сопряжения периферийного устройства с эвм
Случайный патент: Установка для изготовления объемных элементов