- •Лабораторная работа №1. Средства разработки и отладки систем на базе оэвм мс68нс705с8.
- •1.1. Теоретическая часть.
- •1.1.1. Отладочный модуль м68нс05еvм.
- •Блок оэвм.
- •Последовательный интерфейс.
- •Блок программирования.
- •Порты расширения.
- •Внешнее пзу с отладчиком evm-bug.
- •Псевдо-пзу.
- •1.1.2. Команды отладчика evm-bug. Начало работы.
- •Команды отладчика evm-bug.
- •Ассемблер/дизассемблер (asm - аSseMbler).
- •Заполнение области памяти (bf - Block Fill).
- •Запуск программы на выполнение (g - Go to).
- •Помощь (help).
- •Прозрачный режим (tm - Transparent Mode).
- •Загрузка (load).
- •Отображение памяти (md - Memory Display).
- •Изменение памяти (mm - Memory Modify).
- •Отмена точки останова (nobr - no bReakpoint).
- •Выполнять без учета точек останова (p - Proceed).
- •Отображение регистров (rd - Registers Display).
- •Изменение регистров (rm - Registers Modify).
- •Скорость обмена (speed).
- •Трассировка (т - Trace).
- •1.1.3. Работа с сервером.
- •Запуск и работа ассемблера.
- •1.1.4. Кросс-ассемблер. Формат исходной программы. Формат оператора.
- •Поле метки.
- •Поле команды.
- •Поле операнда.
- •Двухоперандные выражения.
- •Временное переключение систем счисления.
- •Поле комментариев.
- •Элементы программы, определяемые пользователем.
- •1.1.5. Директивы ассемблера.
- •1.2.2. Использование средств сервера для подготовки и загрузки программ.
- •1.3. Контрольные вопросы.
Псевдо-пзу.
Как уже отмечалось выше, в псевдо-ПЗУ записываются (вводятся с клавиатуры либо загружаются) программы пользователя для их последующего выполнения. Чтобы узнать, в какую область памяти можно записывать (загружать) программы, рассмотрим карту памяти ОЭВМ МС68НС705С8, представленную на рис. 1.3, и показанную с учетом особенностей эмуляции данной ОЭВМ отладочным модулем.
Особенности следующие:
· вместо встроенного ПЗУ на карте памяти обозначено псевдо-ПЗУ (с точки зрения программиста их можно считать идентичными; различие состоит в том, что псевдо-ПЗУ доступно для записи командами отладчика, но, подобно реальному ПЗУ ОЭВМ, недоступно для записи из программы);
· регистр конфигурации, выполняющий некоторые специфические функции (см. лабораторную работу №2) и расположенный в реальной ОЭВМ по адресу $1FDF, в ОМ находится по адресу $3FDF.
Рис. 1.3. Карта памяти ОЭВМ MC68HC705C8.
Таким образом, пользователь может располагать свои программы с адреса $0020 по адрес $004F и с адреса $0100 по адрес $1FFF.
Встроенное ОЗУ, занимающее адреса с $0050 по $00FF, является полным аналогом встроенного ОЗУ реальной ОЭВМ и, естественно, доступно для чтения и записи как командами отладчика, так и из программы.
Наконец, область портов ввода/вывода и внутренних регистров содержит служебные ячейки, отвечающие за работу встроенных аппаратных средств ОЭВМ, которые будут подробно рассматриваться в следующих лабораторных работах.
1.1.2. Команды отладчика evm-bug. Начало работы.
После включения питания или нажатия кнопки S3 (MASTER RESET) отладчик отображает на экране терминала следующее сообщение:
EVMbug-HC05 2.2
S=FF P=õõõõ A=õõ X=õõ C=E8 111.I...
>
Знак х показывает, что регистры установлены в неопределенное состояние. Последним в строке отображается состояние регистра флагов (С) в шестнадцатиричной и двоичной форме. При этом возможен вывод следующих знаков:
1 |
|
фиксированные установленные биты |
.(точка) |
|
флаг сброшен |
H |
Half carry |
установлен бит полупереноса |
I |
Interrupt mask |
установлен бит маски прерывания |
N |
Negative |
установлен бит отрицательного результата |
Z |
Zero |
установлен бит нулевого результата |
C |
Carry |
установлен бит переноса/заема |
Знак > означает, что ОМ ожидает ввода команды с терминала пользователя.
Командная строка должна иметь следующий формат:
><команда> [<параметры>] (RETURN)
здесь:
<команда>-мнемоническое обозначение команды,
<параметры>-выражение или адрес.
Команды отладчика evm-bug.
Таблица 1.1. Список команд отладчика EVM-bug2.
ASM <адрес> |
Ассемблер/дизассемблер (диалоговый) |
BF <адр.1> <адр.2> <данные> |
Блочное заполнение памяти |
BR [<адрес>]... |
Установить точки останова |
BULK <óñòð-âî> |
Полное стирание ЭСППЗУ |
CHCK [<àäð.1> <àäð.2>] <óñòð-âî> |
Проверка на незапрограммированность ППЗУ/СППЗУ/ЭСППЗУ |
G [<адрес>] |
Запуск программы на выполнение |
COPY [<àäð.1> <àäð.2>] <óñòð-âî> |
Копирование ППЗУ/СППЗУ/ЭСППЗУ |
HELP |
Вывод на экран списка команд |
LOAD <порт>[=<текст>] |
Загрузка из порта ввода/вывода |
MD <àäð.1> [<àäð.2>] |
Отображение памяти |
MM <адрес> |
Изменение памяти |
NOBR [<адрес>]... |
Отменить точку останова |
P [<число раз>] |
Выполнять, игнорируя точку останова |
PROG [<àäð.1> <àäð.2>] <óñòð-âî> |
Програмирование ППЗУ/СППЗУ/ЭСППЗУ |
RD |
Отображение регистров |
RM |
Изменение регистров |
SPEED <скорость в бодах> |
Выбор скорости обмена через порт ввода/вывода |
T <число команд> |
Трассировка |
TM [<символ выхода>] |
Прозрачный режим |
VERF [<àäð.1> <àäð.2>] <óñòð-âî> |
Проверка ППЗУ/СППЗУ/ЭСППЗУ |