
- •Введение
- •1. Архитектура микропроцессорных систем.
- •1.1. Базовая структура мпс.
- •1.2. Типы межмодульных связей.
- •1.3. Функции средств сопряжения.
- •1.4. Методы адресации элементов.
- •1.5. Способы организации связи с внешними устройствами.
- •1.5.1. Программно-управляемый обмен.
- •1.5.2. Обмен по прерываниям.
- •1.5.3. Прямой доступ к памяти (пдп).
- •1.6. Типы магистралей.
- •1.7. Элементы памяти мпс.
- •1.8. Сопряжение микропроцессора с магистралью.
- •1.9. Аналого-цифровые и цифро-аналоговые компоненты.
- •1.9.1. Цифро-аналоговые преобразователи.
- •1.9.2. Аналого-цифровые преобразователи.
- •1.10. Мп в контуре управления.
- •1.11. Особенности многопроцессорных систем.
- •1.12. Программное обеспечение мпс.
- •2. Разработка микропроцессорных систем.
- •2.1. Формулировка проблемы.
- •2.2. Выбор коллектива разработчиков.
- •2.3. Разработка модели управления объектом.
- •2.4. Разработка алгоритма.
- •2.5. Выбор мп и построение структуры мпс.
- •2.6. Разработка аппаратных средств мпс.
- •2.7. Разработка программного обеспечения мпс.
- •3. Отладка мпс.
- •3.1. Особенности контроля и диагностики мпс.
- •3.2. Источники ошибок при проектировании и виды неисправностей.
- •3.3. Методы и инструментальные средства тестирования.
- •4. Лабораторный практикум.
- •4.1. Указание по технике безопасности.
- •4.2. Описание лабораторного комплекса.
- •4.2.1. Состав.
- •4.2.2. Работа с учебным микропроцессорным комплектом.
- •4.2.3. Работа с кросс-системой.
- •4.2.4. Описание модулей.
- •5. Проведение лабораторных работ.
- •5.1. Порядок выполнения работы.
- •5.2. Указания к отчету.
- •5.3. Варианты заданий.
- •5.4. Лабораторная работа № 1. Разработка математической модели мпс
- •5.5. Лабораторная работа № 2. Разработка концептуального алгоритма мпс
- •5.6. Лабораторная работа № 3. Разработка структурной электрической схемы мпс
- •5.7. Лабораторная работа № 4. Разработка программы мпс
- •5.8. Лабораторная работа № 5. Сборка макета структуры мпс
- •5.9. Лабораторная работа № 6. Отладка подпрограмм взаимодействия с ву
- •5.10. Лабораторная работа № 7. Комплексная отладка макета мпс
- •Список литературы
1.12. Программное обеспечение мпс.
Вопросы программного обеспечения (ПО) МПС наиболее широко освещены в учебной и технической литературе. Поэтому задачей данного учебного пособия является только некоторое упорядочивание знаний о многообразии ПО с точки зрения системного подхода к проектированию МПС.
МП как числовой исполнитель способен выполнять некоторые функционально завершенные последовательности действий над числами - операндами. Эти последовательности маркируются (обозначаются) тем же "языком" чисел, который воспринимается устройством управления МП. Число-маркер, поставленное в соответствие некоторой последовательности действий МП по обработке информации в рамках своей структуры, называется кодом операции, а сама последовательность – командой.
Полный набор команд, которые способен выполнять МП, носит название системы команд. Программой называется последовательность действий конкретного элемента МПС, описанная в терминах его команд.
Таким образом, принципиальным достоинством МП является его программируемость, т.е. возможность настройки на конкретный вид преобразований входного информационного потока. Необходимое условие программируемости - возможность описать любое действие с требуемой для МП степенью детализации (до команд).
Структура ПО.
На заре возникновения вычислительной техники большую часть затрат при разработке составляли аппаратные средства. В настоящее время при создании МПС свыше 90% затрат приходится на программное обеспечение (ПО), так как совершенствовались технологии производства аппаратных средств, а труд программиста оставался таким же затратным (см. рис.61). Поэтому одним из условий успешного внедрения МПС является наличие уже разработанного и хорошо развитого ПО под выбранный МПК, которое обычно состоит из двух частей: резидентной и кросс-обеспечения (см. рис.62).
Резидентное ПО - это совокупность программ, разработанных для конкретной МПС на языке используемого в ней процессора. К нему можно отнести:
программы самодиагностики для контроля правильности функционирования данной МПС;
прикладные программы, непосредственно реализующие функции, возлагаемые на систему пользователями (управление объектами, проектирование изделий и многое другое);
операционная система, обеспечивающая как организацию совместного функционирования всех элементов ее структуры (монитор, включающий в себя драйверы внешних устройств – программы, реализующие информационно-логическое сопряжение ВУ с ним), так и распределение ресурсов МПС между прикладными программами (процессами) пользователя (супервизорная часть);
среды разработки ПО, представляющие собой комплекс программ, необходимых для создания программного обеспечения МПС: текстовые редакторы; трансляторы, осуществляющие перевод исходного текста программы на формальном языке в исполняемую программу на языке процессора; отладчики, позволяющие различными методами находить ошибки в разрабатываемом ПО. При этом средства отладки должны управлять исполнением программы (останавливать, изменять порядок, запускать), собирать информацию о ходе ее выполнения, обеспечивать диалог между программистом и ЭВМ на уровне языка программирования.
|
|
Рис.61 | |
| |
Рис.63 |
Рис.62 |
Другую большую часть программного обеспечения МПК составляет кросс-обеспечение - это совокупность программ для разработки и отладки резидентного ПО МПС на МПС (ПЭВМ) с другим типом МП. К ним относятся:
текстовый редактор, обеспечивающий ввод в кросс-систему и корректировку программы пользователя на исходном языке;
интерпретатор, осуществляющие перевод программы с исходного языка в команды МП с одновременным их исполнением;
дизассемблер - транслятор, осуществляющий обратное преобразование исполняемой программы с языка команд МП на формальный язык – Ассемблер;
программный эмулятор, позволяющие промоделировать работу МП и прочих аппаратных средств разрабатываемой МПС на другой ЭВМ,
и многое другое.
Распределение (картирование) памяти.
Картирование памяти МПС является очень важным этапом в ее разработке и связано с распределением частей ПО в адресном пространстве запоминающего устройства МПС. Правильное картирование памяти обеспечивает не только компактность программы и, как следствие, малую долю ошибок и повышенное быстродействие исполнения, но также может привести к ограничениям на будущее совершенствование системы.
Обычно разработка целевой программы ведется по частям, каждая из которых выполняет определенную функцию. Здесь можно указать следующие блоки:
- обработки данных;
- реализации обмена между МП и ВУ (монитор с входящими в него драйверами - подпрограммами, преобразующими формат данных при передаче их от одного ВУ или МП к другому);
- планирования, распределения и управления использованием ресурсов МПС (супервизор) и др.
Кроме того, в ЗУ МПС выделяются поля под хранение постоянной (таблицы и константы) и оперативно изменяющейся информации (рабочие ячейки). Применение подпрограмм значительно сокращает потребность в ЗУ.
Обычно при разработке специализированной МПС управления некоторым технологическим объектом программу работы МПС и константную информацию хранят в ПЗУ, сохраняющем ее при отключении питания, а оперативные данные и стек реализуют в ОЗУ.
В качестве примера на рисунке 63 приведено укрупненное распределение ПО для ПЭВМ клона РС (фирма IBM) в сравнение с компьютерами фирмы Apple. Это распределение было обусловлено патентной борьбой за рынок ПЭВМ и привело к серьезным проблемам в настоящем времени при их использовании.
Проблемы, возникающие при разработке ПО.
Задача создания ПО не так проста, как может показаться на первый взгляд. Перед руководителем возникают требующие пристального внимания вопросы
- измерения, оценки и управления производительностью труда программистов, подлежащего оплате;
- повышения качества ПО (отсутствие ошибок, компактность и др.) путем разработки новых технологий создания ПО;
- транспортабельности ПО, то есть совместимости его с разными МПС, особенно в массовом производстве;
- эксплуатации ПО (не соответствует ожиданиям заказчика, ошибки при разработке и адаптации МПС к ТОУ и т. д. - наиболее дорогостоящий вопрос).
Наблюдается нехватка специалистов в этой области и, как следствие, взрывной рост занятости в сфере создания и адаптации ПО к нуждам производства.
Основная трудность в области разработки целевого ПО заключается в том, что заказчик не знает, что ему нужно. Развитая система стоит дорого, а упрощенная оказывается неконкурентоспособной по сравнению с другими системами.
Все сказанное выше определяет задачи по созданию ПО.
Разработка общей методологии и эффективных технологий программирования.
Повышение квалификации программистов.
Создание средств программного обучения.
Разработка способов измерения эффективности и трудоемкости работы программистов (в качестве примера можно привести критерий оценки производительности по количеству операторов в программе).
Мы кратко рассмотрели особенности построения МПС управления ТОУ и "слегка" коснулись таких важных вопросов, как построение многопроцессорных МПС и сетей МПС, реализации микропрограммного управления и др. Желающих углубить свои знания отсылаем к литературе [1-6,8-19] и спецкурсам, читаемым по соответствующим дисциплинам.