
- •Лабораторная работа n1. Изучение программно-аппаратных средств разработки и отладки систем на базе mc68000. Введение
- •Теоретическая часть
- •1. Программная модель мп мс68000
- •1.1 Внутренние регистры
- •Регистры данных Dn
- •Регистры адреса
- •Программный счетчик рс (Program Counter)
- •Регистр состояния sr (Status Register)
- •1.2. Форматы данных и размещение данных в памяти Форматы данных
- •Форматы команд
- •2. Структура и возможности учебного одноплатного компьютера sbc68k
- •Структура организации памяти модуля sbc68k
- •Каналы последовательного обмена.
- •Порты параллельного ввода/вывода.
- •Программируемые таймеры/счетчики.
- •Контроллер дисковода.
- •3. Встроенный монитор (отладчик)
- •Инициализация системы.
- •Символы управления терминалом.
- •Формат командной строки.
- •Выражение в качестве параметра.
- •Адрес в качестве параметра.
- •Сообщения монитора при выполнении команд.
- •Система команд монитора
- •Заполнение блока памяти (Block of memory Fill)
- •Перемещение блока (Block Move)
- •Ввод точек останова (bReakpoint)
- •Поиск ячеек памяти (Block of memory Search)
- •Преобразование данных (Data Conversion)
- •Отображение состояния регистров процессора.
- •Выполнение программы в реальном времени (go)
- •Непосредственное выполнение программы.
- •Выполнение программы до точки останова (Go unTil breakpoint)
- •Вывод справочной информации (hElp)
- •Загрузка программы в память модуля (lOad)
- •Отображение содержимого памяти (Memory Display)
- •Изменение содержимого памяти (Memory Modify)
- •Запись блока данных в память (Memory Set)
- •Удаление точек останова (nobReakpoint)
- •Отображение/изменение содержимого определенного регистра.
- •"Прозрачный" режим работы последовательных портов (Transparent Mode)
- •Трассировка (tRace)
- •Трассировка до текущей точки останова (Trace to Temporary breakpint)
- •3. Встроенный ассемблер/реассемблер.
- •Язык ассемблера mc68000.
- •Мнемонические обозначения и специальные символы
- •Список символов
- •Директива определения константы dc.W (Define Constant.Word)
- •4. Работа с сервером
- •Запуск и работа ассемблера.
- •Кросс-ассемблер. Формат записи программы.
- •Поле метки
- •Операторы в выражениях.
- •Определение методов адресации.
- •Особенности записи в ассемблере некоторых команд Команды переходов.
- •Команда movem.
- •Команды быстрых вычислений (moveq, addq, subq).
- •Директивы ассемблера. Org Установка начального адреса.
- •Equ Определение имени.
- •Set Установка имени.
- •Reg Определение набора регистров.
- •Dc Определение константы.
- •44 43 20 45 78 61 6D 70 6c 65 0d 0a 00 (в шестнадцатиричном виде). Dbc Определение блока констант.
- •Ds Резервирование памяти.
- •End Конец транслируемого файла.
- •Формат s-Record
- •Содержимое записи s-record.
- •Типы записей s-record.
- •Практическая часть
- •1. Ввод исходных данных и анализ результатов работы программы с помощью команд просмотра и модификации памяти и регистров.
- •2. Ввод программы с помощью встроенного ассемблера
- •3. Режимы выполнения программы
- •4. Подготовка, ассемблирование и загрузка программы с помощью программных средств сервера.
Форматы команд
Команды процессора МС68000 могут содержать от одного до пяти слов. Любая команда всегда распожена по четному адресу. Формат команды в общем виде показан на рис.1.5.
-
Командное слово
(первое слово, определяющее операцию и способ адресации)
Непосредственный операнд
(одно или два слова)
Эффективный адрес источника
(одно или два слова)
Смещение
(одно или два слова)
Рис.1.5 Формат команды в общем виде.
Более подробно о командах и методах адресации будет говориться в следующей лабораторной работе.
2. Структура и возможности учебного одноплатного компьютера sbc68k
Модуль SBC68K представляет собой одноплатный компьютер, созданный на основе микропроцессора MC68000. В состав модуля также входят ОЗУ, ПЗУ, таймеры, контроллер дисковода, контроллеры последовательного и параллельного обмена, интерфейс принтера, а также устройства ввода/вывода и логика, необходимая для работы MC68000. Модуль SBC68K поддерживает работу на частотах 8 и 12МГц. Для работы с медленной памятью в модуле предусмотрен генератор режима ожидания (генератор задержки), обеспечивающий при доступе к памяти задержку на 0, 1 и 2 периода тактовых импульсов синхронизации.
MC68000 поддерживает семь уровней прерывания. В модуле имеется схема обслуживания (кодирования и декодирования) прерываний от различных устройств. Схема устройства слежения, включенного в состав модуля, предусмотрена для контроля работы системной шины: если цикл шины не оканчивается приблизительно за 40 тактов синхронизации, то производится установка сигнала ошибки шины. На рис.2.1 представлена структурная схема модуля SBC68K.
Рис.2.1. Структурная схема модуля SBC68K.
Структура организации памяти модуля sbc68k
На плате модуля имеется шесть 28-выводных панелей для подключения микросхем памяти. Две из них используется для микросхем ПЗУ (U27, U28) и четыре для микросхем ОЗУ (U23, U24, U29, U30). В данном модуле, в качестве микросхем ПЗУ используются микросхемы 27C256 (в них записана системная управляющая программа - монитор TUTOR). ОЗУ представлено двумя микросхемами MCM60256. В ОЗУ производится запись программ и данных пользователя, а также управляющих констант монитора. В целом распределение памяти в модуле можно представить в виде следующей таблицы:
Адреса
|
Устройство, к которому производится доступ
|
000000...00FFFF
|
ÎÇÓ (64Ê)
|
800000...81FFFF
|
ÏÇÓ (64Ê)
|
FE8000...FEFFFF
|
контроллер параллельного интерфейса/таймера 68230
|
FF0000...FF7FFF
|
контроллер последовательного обмена 68681
|
FF8000...FFFFFF
|
контроллер дисковода 1772
|
Следует иметь в виду, что программы пользователя должны располагаться в пределах области памяти $000900-$00FFFF, так как адреса памяти $000000-$0008FF используются программой-монитором TUTOR.