
- •Изучение принципов арифметической и логической обработки информации в микроЭвм на базе процессора i8085;
- •Разработка программы, обеспечивающей вычисление оценочной функции состояний непрерывных и дискретных процессов Подготовка к работе.
- •Постановка задачи исследования
- •Принцип сканирования в современных управляющих системах
- •Исходные данные для модуля обработки
- •Структура модуля обработки данных
- •Сценарии извлечения входных данных (субмодуль извлечения)
- •1.4.1 Организация ввода адресов параметров
- •1.4.2 Организация извлечения отсчётов параметров
- •Варианты реализации субмодуля вычисления
- •2. Порядок выполнения работы.
- •Распределение адресного пространства микроЭвм
- •Реализация субмодуля извлечения
- •Подготовка эмуляции программы
- •Реализация субмодуля вычисления
- •3. Содержание отчета
Распределение адресного пространства микроЭвм
Модуль обработки взаимодействует с модулем чтения входов Scan_Param, разработанным в Лаб.работе№4 . В задачу Лаб.работе№5 входит их последовательный запуск в виде единого программного продукта.
Поэтому при распределении адресного пространства необходимо учесть ресурсы, уже используемые модулем Scan_Param.
К их числу относятся: часть выделенной программной памяти (кодовый сегмент (CS1)), содержащий программные коды модуля Scan_Param, часть оперативной памяти (сегмент данных (DS1)), использовавшаяся для сохранения отсчётов параметров (массив X). Новые программые коды и новые данные следует располагать, соответственно в сегментах CS2, DS2, но при этом не выходить за пределы заданных адресных пространств.
Из предшествующего анализа следует, что на этом этапе разработки модуля извлечения необходимо
в DS выделить массив PAdrX для приёма и сохранения адресов отсчётов AdrX1, AdrX2.
предусмотреть стековый сегмент SS для обеспечения работы подпрограмм и для хранения промежуточных данных;
выделить в кодовом сегменте массив под коды подпрограмм.
В приложении приведён вариант соответствующего распределения адресного пространства. Используемые абсолютные адреса привязаны к примеру распределения адресного пространства, используемого в Лаб.№4.
Реализация субмодуля извлечения
Субмодуль извлечения обеспечивает последовательный приём абсолютных или относительных адресов AdrX1, AdrX2 из АРМ, с последующим извлечением из оперативной памяти микроЭВМ содержащихся там отсчетов и размещением их во внутренних регистрах процессора.
Пусть принимаемая последовательность AdrX1→ AdrX2 наз. адресным сообщением.
Структура адресного сообщения приведена ранее в Табл.1.
На рисунке 5. представлены граф-схемы алгоритмов (ГСА) различных вариантов программной организации субмодуля извлечения.
При их реализации требуется выбрать формат обмена стробирующими сигналами между микроЭВМ и контроллером АРМ.
Для обмена можно использовать любой их четырех доступных портов c системными адресами 00h, 01h, 02h, 03h. В алгоритмах принято, что такой обмен осуществляется через порт 00h. При этом может быть установлен следующий формат сообщений: 01h – для сообщения “Запрос данных” при активном состоянии строба, и 02H – при активном состоянии строба “Подтверждение”. Отсутствию активного строба соответствует слово 00h.
Нетрудно заметить, что запрос и подтверждение передаются, соответственно, через разряды D0 и D1 используемого порта.
При разработке ГСА принято также, что обмен адресными сообщениями осуществляется через порт 01h. При передачи полуадресов задействованы все разряды этого порта.
В рамках индивидуальной работы может быть предложен иной вариант выбора информационного порта, порта и формата управляющих сообщений.
Подготовка эмуляции программы
Эмуляция облегчается за счет, во-первых, автоматической настройки некоторых опций моделирующего отладчика AVSIM85 при его запуске, во-вторых, имитированием ввода информационных и стробирующих сигналов при обращении к соответствующим портам. Для этих целей необходимо создать командный файл my.cmd и файлы данных my_stb.dat и my_adr.dat.
Файлы my_stb.dat и my_adr.dat. должны содержать информацию об изменениях во время отладки состояния строба “Подтверждение”, а также конкретные адреса выбранных для отладке отсчетах .
П
римеры
содержания таких файлов приведены на
рис.9. При этом, рисунок б) поясняет
содержание файла, обеспечивающего
извлечение отсчетов
при использовании абсолютной адресации,
а файл в) – при относительной адресации.
Данные о стробах и адресах целесообразно представлять в шестнадцатеричной системе счисления, поэтому файлы должны иметь расширение xxxxx.ah. Их трансляция в соответствующие файлы my_stb.dat и my_adr.dat обеспечивается запуском из командной строки FAR утилиты iotran.exe. Она выполняет преобразование символьного файла xxxxx.ah в цифровой формат xxxxx.dat. Запуск iotran.exe осуществляется из командной строки FAR следующими процедурами
iotran.exe hb my_stb.ah my_stb.dat;
и
iotran.exe hb my_adr.ah my_adr.dat;
После запуска необходимо проверить содержимое сформированных файлов my_stb.dat и my_adr.dat . Они должны содержать в 16-ричной форме предусмотренную моделирующую информацию, а также служебную часть.
Далее создаётся командный файл XXXX.cmd для управления моделирующим отладчиком AVSIM85:
Командные файлы служат для загрузки в имитатор программы или её частей (если отладки осуществляется по частям) и настройки имитатора для эмуляции. Пусть отлаживаемая часть программы, имеет условное имя name, при этом создан (скомпилирован и пролинкирован) загрузочный файл name.hex. Тогда файл name.cmd может иметь вид
Файл name.cmd:
Lpname.hex
IOmy_stb.dat
Y
OI:0h,IN
IOmy_adr.dat
Y
OI:1h,IN
e0300h
sma
0800h
0820h
D1a0800h
CY
Созданный в таком виде файл name.cmd обеспечивает подключение файлов my_stb.dat и my_adr.dat соответственно к портам 00h и 01h. Через них по командам IN port информационная часть файлов my_stb.dat и my_adr.dat будет последовательно вводится в ACC.
Кроме того, обеспечивается
загрузка программы name.hex в симулятор,
установка программного счётчика в состояние 0300h,
выделение в адресном пространстве микроЭВМ массива оперативной памяти 0800-0820h,
активизация DAMP1 для контроля информации в массиве
инициализация счётчика тактов.
Для начала работы в AVSIM85 необходимо создать управляющий файл name .bat вида
avsim85.exe -c1 A F name.cmd
Предложенные процедуры настройки и запуска системы могут быть использованы в любом варианте сложности Лаб.работы №5. Они существенно повышают достоверность отладки, количество баллов за сложность (Табл.1) также увеличивается.