Микропроцессорные средства и системы 1984 №2 1983 г.

Иванов В. И , Лобанов В. И., Митрофанов А. В. - отладочные средства для ПРОГРАММНОЕ малоразрядных однокристальных микроЭВМ.


ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

УДК 681.326.3:681.3.06

В. И. Иванов, В. MJ Лобанов, А. В. Митрофанов

ОТЛАДОЧНЫЕ СРЕДСТВА ДЛЯ МАЛОРАЗРЯДНЫХ
ОДНОКРИСТАЛЬНЫХ МИКРОЭВМ

Новые инструменты инженеров-разработчиков радио-
электронной аппаратуры — средства отладки программ
пользователей — позволят не только отладить програм-
му на эмулирующей ЭВМ с использованием кросс-
средств программирования и программно-логической мо-
дели, но и проверить ее в реальном масштабе времени
на физической модели отлаживаемого устройства.

Среди многообразия микропроцессорных
устройств необходимо выделить однокристаль-
ные микроЭВМ со встроенными программной
и оперативной памятью. Такие микроЭВМ
ориентированы на использование в крупносе-
рийной аппаратуре, поэтому важно упростить
и удешевить отладку микроЭВМ.

Архитектура и система команд однокрис-
тальных микроЭВМ (в первую очередь 4- и
8-разрядных) выбираются такими, чтобы при
заданных технологических нормах кремниевый
кристалл был минимальных размеров (от
этого зависит удешевление БИС). Програм-
мная и оперативная память занимают обычно
до 50% площади кристалла, арифметическо-
логическое устройство и программируемые с
помощью маски матрицы микрокоманд — до
30%. Как правило, БИС микроЭВМ разме-
щается в корпусе с числом выводов не более
40. Большинство однокристальных микроЭВМ
ориентированы преимущественно на управле-
ние периферийными устройствами и имеют
развитую систему портов ввода-вывода (до
60% выводов БИС). Поэтому число выводов,
которые могут быть использованы для приема
и выдачи управляющих сигналов, а также для
тестирования, ограничено. Управляющая логи-
ка, занимающая на кристалле относительно
небольшую площадь, также недостаточна для
организации работы однокристальных микро-
ЭВМ в отладочном режиме. Дополнительные
трудности возникают из-за динамического ха-
рактера логических элементов БИС.

Все эти факторы осложняют выполнение
служебных программ, например, чтения содер-
жимого внутренних регистров или организа-
ции точек останова в произвольных адресах

программы с последующим восстановлением
статуса. Поэтому создать универсальное отла-
дочное средство для достаточно широкой но-
менклатуры однокристальных микроЭВМ тех-
нически сложно.

Универсальный отладочный комплекс

Перечислим основные функции универ-
сального устройства программно-аппаратной
отладки программ пользователя для однокри-
стальных микроЭВМ:

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

— перевод в режим точек останова, т. е.
остановов в произвольных контрольных точ-
ках программы по условиям, задаваемым
пользователем (частный случай — пошаговый
режим). Устройство должно автоматически пе-
реходить с выполнения программы в реальном
масштабе времени на режим точек останова
(обратный переход по команде пользователя);

— чтение и модификация любых внутрен-
них регистров;

— трассирование — анализ «следа», остав-
ляемого отлаживаемой системой в течение оп-
ределенного числа шагов программы до точки
останова или после нее. В простейшем случае
анализируется «след», оставляемый при вы-
полнении программы счетчиком команд. Для
хранения информации трассирования исполь-
зуется либо специальное ОЗУ, либо опреде-
ленная зона системной памяти отладочного
устройства. В нее, кроме состояний счетчика
команд, могут заноситься признаки текущего
состояния отлаживаемой микроЭВМ и ее пе-
риферии.

Для реализации перечисленных функций
оптимален отладочный комплекс из ведущей
стандартной ЭВМ и дополнительного аппарат-
но-программного блока. Последний исполняет
общие (для отладки всех однокристальных

микроЭВМ) функции и учитывает особенно-
сти микроЭВМ. Такой блок в системе отладки,
промежуточный между ведущей ЭВМ и уст-
ройством пользователя, называется системным
эмулятором (СЭ).

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

Ведущая ЭВМ при таком подходе не рас-
ходует свои системные ресурсы на управление
эмуляцией (для этого ее архитектура не пред-
назначена), а лишь предоставляет стандарт-
ное программное обеспечение отладки (сис-

темные команды с пульта оператора, кросс-
ассемблер, редактор связей, загрузчик, управ-
ление файлами, при необходимости — про-
граммно-логическая модель). Недорогие ЭВМ,
целесообразные в качестве ведущих, зачастую
не могут обеспечить необходимого быстродей-
ствия для эмуляции в реальном масштабе
времени (например, универсальная микроЭВМ
«Электроника 60» имеет быстродействие
250 тыс. операций/с, что соизмеримо с быстро-
действием некоторых однокристальных микро-
ЭВМ с командным циклом 4 мкс).

Универсальная отладочная система

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

устройство. Его аппаратная и программная
части должны допускать несколько конфигу-
раций, от простых (соответственно дешевых,
но с небольшими возможностями) до слож-
ных, с максимумом удобств при отладке, тес-
тировании и диагностике устройств с фикси-
рованной памятью команд.

Перечислим назначение и основные функ-
ции блоков отладочной системы.

Интерфейс к ведущей ЭВМ и контроллер
системного эмулятора принимает команды и
данные от ведущей ЭВМ и передает данные
обратно по последовательному каналу типа
RS-232; декодирует адреса и принятую инфор-
мацию; вводит систему в один из трех режи-
мов: диалог с ведущей ЭВМ, выполнение мо-
ниторных программ СЭ и выполнение (про-
гон) программы пользователя. Кроме того,
интерфейс содержит аппаратные средства для
исполнения программы пользователя в поша-
говом режиме.

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

Блок управляющих подпрограмм (мони-
тор) распределяет память системного эмуля-
тора, отображая виртуальный адрес програм-
мной памяти пользователя (для однокристаль-
ных микроЭВМ 4 Кбайт) в физический адрес
системной памяти. Он включает также различ-
ные подпрограммы: распечатывает содержи-
мое внутренних регистров при останове, а так-
же восстанавливает их при переходе к испол-
нению программы; управляет доступом к ин-
формации о состоянии периферийных уст-
ройств системы пользователя. Это придает от-
ладочной системе черты диагностической.

Блок системной памяти загружается объ-
ектными загрузочными модулями, получен-
ными в результате работы кросс-ассемблера,
а также служебными программами для выпол-
нения системных команд. Системная память в
4—8 раз превосходит по объему программную
память отлаживаемого объектного процессо-
ра.

Блок трассирования служит для запис^ со-
стояний. системы (включая логические узлы
устройства пользователя). Глубина трассиро-
вания должна быть не меньше числа адресов
на одной странице командной памяти отлажи-
ваемого процессора.

Блок отлаживаемого процессора (отладоч-
ная модель) — единственный блок СЭ, кото-
рый полностью заменяется при смене типа
отлаживаемых однокристальной микроЭВМ
или микропроцессора. Его основа — отладоч-

ная БИС однокристальной микроЭВМ. В ре-
жиме прогона эта БИС задает выборку адре-
сов и интерпретирует полученные из програм-
мной памяти команды. Другой его важнейший
элемент — архитектурное ПЗУ, в котором
записаны все признаки отлаживаемой микро-
ЭВМ, а также служебные подпрограммы для
прочтения содержимого внутренних регистров
при останове. Разработка блока объектного
процессора всегда затруднительна, так как
требует отчетливого знания не только архитек-
туры и временных характеристик, но часто и
микросхемотехники отлаживаемой микроЭВМ.

Автономное отладочное устройство

Среди отладочных систем, предназначен-
ных преимущественно для однокристальных
микроЭВМ и микропроцессоров с разрядно-
стью 8 и ниже, следует выделить подкласс
устройств с упрощенными функциями, работа-
ющих не только от ведущей ЭВМ, но и авто-
номно (см. рис. 1, справа). Для автономной
работы устройство оснащается местным пуль-
том управления с шестнадцатеричной клавиа-
турой и однострочным дисплеем. Такие уст-
ройства выгодны при объемах отлаживаемых

программ менее 2 Кбайт и доступны более
широкому кругу пользователей благодаря ма-
лой стоимости.

Автономное отладочное устройство (рис. 2)
несмотря на упрощенные функции содержит в
себе все признаки отладочных систем высокой
производительности. Обязателен загрузочный
блок (интерфейса-контроллера), обычно объе-
диняемый с блоком монитора. «Архитектур-

ное» ПЗУ превращается в ПЗУ служебных
команд. Оно подключается к отладочной
БИС в точке останова программы пользовате-
ля и обеспечивает программу прочтения реги-
стров и восстановления статуса. Служебное
ПЗУ подключается к отладочной БИС внутри
командного цикла после завершения считыва-
ния из основной программной памяти. Важно

(хотя зачастую для однокристальных микро-
ЭВМ технически затруднительно) зафиксиро-
вать статус в момент останова и восстановить
его при возобновлении прогона.

Автономное отладочное устройство не име-
ет преимуществ, предоставляемых ведущей
ЭВМ, так как программировать приходится в
шестнадцатеричных машинных кодах без ре-
дактирования. Однако во многих случаях
пользователь готов идти на это.

Автономное отладочное устройство состоит
из блока загрузки и управления (БЗУ), отла-
дочной модели (ОМ).

БЗУ выполняет следующие функции: за-
грузки и чтения программы пользователя в
энергонезависимом ОЗУ программ; организа-
ция различных режимов работы ОМ (ручной,
автоматический и режим контрольных точек);
организация канала связи с внешней ЭВМ.

Для реализации этих функций в состав
БЗУ включены следующие узлы:

одноплатная микроЭВМ, ОЗУ программ
пользователя, ОЗУ контрольных точек (ОЗУ—
КТ), интерфейс для организации взаимодей-
ствия между микроЭВМ, ОЗУ программ и
ОЗУ—КТ, интерфейс с внешней ЭВМ, клавиа-
тура и однострочный дисплей.

Наличие на выходе БЗУ шин адреса, дан-
ных и управления позволяет включать про-
грамматоры любого типа. В настоящее время
эксплуатируется программатор для ППЗУ с
ультрафиолетовым стиранием К573РФ1,
К573РФ2 и их модификаций.

Автономное отладочное устройство в сос-
таве системы на базе микроЭВМ «Электрони-
ка 60» экспонировалось на ВДНХ СССР и
получило одну золотую и несколько серебря-
ных медалей. Разработаны и эксплуатируют-
ся на предприятиях автономные отладочные
устройства с моделями для двух типов 4-раз-
рядных микроЭВМ, одной 8-разрядной микро-
ЭВМ и микропроцессора КР580ИК80. Данное
автономное отладочное устройство можно
считать универсальным, так как оно легко пе-
рестраивается на любой тип микроЭВМ с же-
сткой системой команд.

Результат работы программно-аппаратного
комплекса отладки однокристальных микро-
ЭВМ — управляющая информация на магнит-
ной ленте, необходимая для формирования
маски фотошаблона встроенного ПЗУ.

В качестве ведущих ЭВМ приняты серий-
ные микроЭВМ «Электроника 60» и ДВК
«Электроника НЦ-80-20/2», программно-сов-
местимые с СМ ЭВМ. Автономные отладоч-
ные средства могут быть' расширены, напри-
мер, дополнительными блоками тестирования
и диагностики отлаживаемой системы, а так-
же программаторами внешнего ПЗУ.

Статья поступила 23 марта 1984 г.

УДК 681.3:068




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
сказка - мы сидим в парке...
Новости - История знакомства.
CC'999 - Chaos Construction'999 - Хроника событий и впечатления о былом.
Система - продолжение темы "Недокументированные команды процессора Z-80".
CODING - Об обечатке в листинге использования стека (в 5 номере).

В этот день...   21 ноября