УДК 681.32
В.Н.НЕГОДА
О ПОСТРОЕНИИ УЧЕБНО-ИССЛЕДОВАТЕЛЬСКОЙ СИСТЕМЫ ФУНКЦИОНАЛЬНО-ЛОГИЧЕСКОГО МОДЕЛИРОВАНИЯ МИКРОПРОЦЕССОРНЫХ СИСТЕМ
В статье рассматриваются требования к учебно-исследовательской системе моделирования микропроцессориых систем, информационные технологии, используемые при ее построении, и содержание базовых информационных ресурсов, на которых строятся учебно-проектная деятельность студентов и обучающие процедуры системы.
ВВЕДЕНИЕ
Успех изучения микропроцессорной техники (МПТ) во многом определяется свойствами инструментальных средств, предоставляемых студентам для проведения лабораторных исследований и курсового проектирования. Наиболее эффективными средствами такого типа являются системы эмуляции микропроцессоров (МП) и микроконтроллеров (МК), которые обеспечивают функционально-логическое моделирование (ФЛМ) на уровне межрегистровых передач [1]. В настоящее время доступно много эмуляторов и кросс-ассемблеров. Основные трудности их применения в вузе связаны со следующими обстоятельствами [2]:
• фирменные эмуляторы рассчитаны на профессиональных специалистов, а не на студентов, только приступающих к изучению МПТ;
• практически все эмуляторы ориентированы на процесс отладки машинных программ, но не на изучение МПТ и проектных решений микропроцессорных систем (МПС);
® их функциональные возможности не предусматривают подключение моделей микропроцессорных устройств (МПУ), внешних относительно МП и МК;
• для моделирования различных МП и МК требуется использовать различные по организации диалога и технологии применения эмуляторы;
• эмуляторы становятся доступными для применения в учебном процессе только через несколько лет после начала производства соответствующего семейства МПС.
В этой связи актуально создание специальных учебно-исследовательских систем (УИС) ФЛМ, обеспечивающих изучение основ МПТ и учебно-инженерное проектирование (МПС).
© В.Н.Негода, 1998 63
ФУНКЦИИ И СВОЙСТВА СИСТЕМЫ МОДЕЛИРОВАНИЯ
Функции и свойства УИС ФЛМ должны обеспечивать эффективную учебно-проектную деятельность студента и к ним целесообразно отнести следующее:
1. Поддержка проектной деятельности:
• формирование структуры МПС и организация взаимодействия его компонентов на основе палитры моделей МП, МК, МПУ, функциональных узлов и интерфейсов;
• экранное редактирование состояний всех объектов моделируемой МПС и трассировка моделей в режиме полноэкранного отладчика;
• интеграция в инструментальной среде процессов разработки ассемблер-программ и моделирования процессов выполнения соответствующих машинных программ;
» обеспечение варьирования в широких пределах темпа, масштаба времени и детальности отображения процессов моделирования с поддержкой комментирования этих процессов;
о реализация наиболее широко распространенных моделей МП, МК и МПУ в единой среде управления моделированием;
• обеспечение открытости моделей, чтобы создать условия для наращивания палитры моделей и возможности студентам использовать свои программы в качестве моделей отдельных узлов, устройств и процессов;
• обеспечение совместной деятельности нескольких человек над одним проектом в режиме распределенной обработки данных с использованием разделяемых информационных и программных ресурсов;
• поддержка многосеансового режима проектной деятельности с возможностью продолжать работу на различных ПЭВМ учебных классов и домашних ПЭВМ.
2. Поддержка обучения:
• изучение инструментальной среды (предоставление НЕЬР-данных с описанием системы моделирования и обучающих средств по технологии проектной деятельности в этой среде);
• возможность получения учебно-методической и организационно-методической информации предметной области (задания на лабораторные исследования и рекомендации по их проведению, описания используемых устройств и типовых проектных решений, в том числе базовых решений, модификация которых входит в содержание проектной деятельности студента);
• поддержка режимов автоматизированного обучения с реализацией созданных преподавателем сценариев и формированием достаточно подробной информации о ходе обучения;
• предоставление студенту и преподавателю средств коммуникаций (обеспечение доступа преподавателя к проектным решениям студента,
проведение дистанционных консультаций в режиме телеконференций, организация проектирования МПС в режиме деятельности рабочей группы);
• управление доступом пользователей к информационным и программным ресурсам системы, обеспечивающее сохранность этих ресурсов при возможности выполнения действий, связанных с их модификацией.
БАЗОВЫЕ ТЕХНОЛОГИИ СОЗДАНИЯ СИСТЕМЫ
Для реализации УИС ФЛМ с перечисленными выше возможностями и свойствами целесообразно использовать следующие технологии:
• сетевые технологии INTERNET и INTRANET, обеспечивающие все коммуникационные потребности системы моделирования и ее пользователей, а также эффективную гипертекстовую реализацию ее информационных ресурсов;
• технология «клиент-сервер», дающая возможности организовать информационные ресурсы системы в легко управляемые единицы данных с поддержкой разделяемого доступа;
• объектно-ориентированное программирование (ООП), обеспечивающее высокую производительность процесса создания моделей;
• технология программирования взаимодействующих процессов на основе языка Java, дающая возможность уменьшить затраты времени на реализацию довольно сложных задач синхронизации процессов в моделях, а также обрабатывать процедуры моделирования как данные;
в ситуационное управление деятельностью на основе сценариев, обеспечивающее уменьшение непроизводительных затрат времени на изучение материала и выполнение проектов и дающее возможность частично автоматизировать верификацию правильности проектной деятельности. Включение в перечисленный список двух позиций, характеризующих инструменты реализации (ООП и Java), может показаться неправомерным при рассмотрении базовых технологий построения УИС ФЛМ. Однако традиционно системы эмуляции реализуются на языках, обеспечивающих прежде всего высокое быстродействие моделей. Обычно это языки С и Ассемблер. Даже при использовании объектно-ориентированного языка С++ моделирование МП и МК, как правило, выполняется без применения технологии объектно-ориентированного программирования. Это естественно по двум причинам. Во-первых, достигается более высокое быстродействие моделей. Во-вторых. при моделировании одного семейства микропроцессоров трудно построить множество абстракций, дающее повторное использование кода классов за счет наследования и полиморфизма. При построении УИС ФЛМ ситуация меняется, и уческо-ксслсдовательском проекте не предполагается
\-< i pv/ri 1 d ivl^wm ¡ш»Ч/ v иилошпш -mwium дюшип^шио п ^ипрл! аю ш wu"
рудованием, функционирующим в реальном масштабе времени. Это делает
допустимым использование ООП и языка Java, несмотря на проигрыш в скорости моделирования по отношению к языкам С и Ассемблер примерно в 30-40 раз. Кроме того, задача создания развитой палитры моделей средств Ml Н создает возможности формирования системы абстракций, эффективно реализуемых в ООП.
ОСНОВНЫЕ ИНФОРМАЦИОННЫЕ ОБЪЕКТЫ УИС ФЛМ
Наиболее крупной единицей работы в УИС ФЛМ является проект МПС, который в общем случае представляется как восьмерка:
P = <D,B,M,R,W,Vm,Vr, Vw>,
где D - постановка задачи на проектирование;
В - совокупность базовых решений МПС, выдаваемых студентам в качестве исходных данных;
М - множество решений, формируемых студентами в режиме модификации базовых решений В;
R-множество решений, формируемых студентами в режиме свободного проектирования объектов и процессов МПС без выполнения требований сохранения определенных решений из В;
W - множество сценариев деятельности;
Vr-процедуры верификации проектных решений в части множеств М и R;
Vw- процедуры верификации проектной деятельности (проверка владения технологией деятельности).
В традиционном курсовом проектировании наиболее часто проект имеет структуру вида <D, R, VR> либо <D, R>.
Множества решений В, М, R включают в себя объекты следующих типов: структурно-функциональные схемы МПС и ее компонентов, фрагменты программ на ассемблере, фрагменты программ в машинных кодах, последовательности операторов настройки и управления микропроцессорными устройствами, данные, представляющие состояния объектов МПС в ходе моделирования. Выделение из постановки задачи набора базовых решений В и вынесение результатов работы М из общего множества решений R упрощает формирование процедур верификации.
Процедуры верификации проектных решений Vm, Vr строятся на основе двух механизмов: сопоставление описаний проектных решений студентов с базой данных эталонных решений и тестирование моделей. Первый механизм является традиционным в автоматизированном обучении и не требует специальных комментариев. Второй механизм строится с учетом специфики ФЛМ и на основах его реализации следует остановиться подробнее.
Тест модели в общем случае представляет собой последовательность элементарных проверок Т = ц, t2,... , tp. При ФЛМ модель МПУ рассматривается как четверка следующего вида:
М = <8, Е, Б, С>,
где Б = {8( | \ = l-.Ps} - множество наборов значений переменных б«,, моделирующих состояния внутренних объектов МПУ (регистров, триггеров, ячеек памяти и т.п.); переменные вь з2,Sw образуют множество У8;
Е = {Н| 11 = 1..РЕ} - множество наборов значений переменных еь е2, ..., еу, моделирующих состояния внешних объектов МПУ (порты ввода-вывода, состояния входных и выходных шин данных и т.п.); переменные еь е2, ..., еу образуют множество УЕ;
Р = 11 = 1..Рг} - множество операций, выполняемых в модели;
С = {С; | 1= 1..Рс} — множество команд, обеспечивающих инициирование одной операции или последовательности операций; в частном случае команда С, может быть полностью представлена последовательностью элементов из Б; интерпретация такой последовательности, как определенной команды целесообразна как для процесса построения модели, так и для разработки тестов.
Элементарная проверка теста оформляется как запись базы данных. Реализация проверки заключается в воспроизведении определенного состояния МПУ из Б, инициализации выполнения команды из С, обеспечения необходимой последовательности состояний внешних объектов из Е и проверки результата, который представляет собой наборы значений переменных из УЕ и У8. Таким образом, элементарная проверка представляется как вектор
Ъ = <С, Ляи^Е^,
где: С' - выполняемая команда;
8', - состояние моделей внутренних объектов МПУ соответственно до и после выполнения команды;
Е', Е+ - последовательность наборов значений переменных УЕ, воспроизводимая в ходе выполнения команды и имеющая место по завершению выполнения.
Сценарии из множества W обеспечивают управление деятельностью и играют роль основы для контроля владения студентом технологией проектирования МПС. Формирование проводится в соответствии с естественной и классификацией видов работ: формирование структуры МПС, разработка структур устройств, алгоритмов функционирования и структур программ, программирование и разработка функциональных и принципиальных схем, отладка схем и программ. База данных сценариев учитывает многовариантность эффективных последовательностей проектных действий. Процедуры верификации Уу/ строятся на основе механизма сопоставления действий студента и содержимого базы данных сценариев.
ЗАКЛЮЧЕНИЕ
Анализ задачи построения УИС ФЛМ МПС приводит к следующим выводам. Основными подсистемами и базами данных УИС ФЛМ должны быть:
67
подсистема авторизации доступа, редактор структурных схем МПС и программ МП и МК, многофункциональный кросс-ассемблер, многофункциональный отладчик программ, подсистема верификации проектных решений и действий, подсистема обучения основам МПТ и ее проектирования, подсистема коммуникаций, базы данных учебно-методической информации, сценариев проектной деятельности, постановок задач, базовых проектных решений, предлагаемых студентам для модификации.
СПИСОК ЛИТЕРАТУРЫ
1. Рафикузаман М. Микропроцессоры и машинное проектирование микропроцессорных систем. В 2-х кн. Кн. 2. М.: Мир, 1988.
2. Негода В.Н., Никищенков И.А. Применение САПР для поддержки обучения по схемотехнике и микропроцессорной технике // Тез. докл. 2-й меж-дунар. конф. Интерактивные системы: Проблемы человеко-компьютерного взаимодействия. Ульяновск: УлГТУ, 1997.
Негода Виктор Николаевич, кандидат технических наук, окончил радиотехнический факультет Ульяновского политехнического института. Профессор кафедры ВТ УлГТУ. Имеет статьи и монографии в области проектирования микропроцессорных систем и автоматизации обучения.
УДК 658.512.22
А.Ф. ПОХИЛЬКО, С.А.СУХОВ
ИНФОРМАЦИОННАЯ ИНТЕГРИРОВАННАЯ СРЕДА
ДЛЯ СОЗДАНИЯ АДАПТИРОВАННЫХ ПРИЛОЖЕНИЙ САПР
Рассматриваются архитектура и свойства информационной среды, позволяющей реализовать механизмы адаптации при создании приложений САПР. Предлагаются структуры данных и процессов, отображающие реальные процессы проектирования и соответствующие им функциональные компоненты среды - информационные процессоры. Приводится спецификация их свойств и возможностей.
Под информационной средой (ИС) понимается совокупность взаимодействующих информационных процессоров, используемых для создания и настройки элементов прикладных пользовательских систем (приложений САПР) [1]. Каждый информационный процессор ориентирован на опреде-
© А.Ф. Похилько, С.А.Сухов, 1998