Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Средства и системы разработки микроконтроллеров.




Наличие в микропроцессорной системе, как аппаратных, так и программных средств обуславливает ряд специфических особенностей, присущих процессу ее создания. Он существенно отличается от проектирования традиционных электронных устройств, не предполагающих программное обеспечение. В отличие от традиционного подхода, когда все функции, возлагаемые на устройство, достигаются чисто аппаратными средствами и другой альтернативы просто не существует, при аппаратно-программной реализации выполняемые функции оптимально располагаются между программными и аппаратными средствами микропроцессорной системы.

Идея единства программного и аппаратного обеспечения систем на базе микроконтроллеров является очень важной. Объединение инструментальных средств разработки программного обеспечения с инструментальными средствами разработки аппаратного обеспечения может стать важным преимуществом при разработке устройства. Существуют пять различных инструментов, которые используются для разработки приложений на базе микроконтроллеров, и объединение их функций может существенно облегчить процесс проектирования:

- редактор исходных текстов;

- компилятор/ассемблер;

- программный симулятор;

- аппаратный эмулятор;

- программатор.

Хотя не все из этих инструментов являются необходимыми, и каждый из них может исполняться в отдельности, но их совместное использование упрощает разработку и отладку приложения.

Редактор используется для создания исходного кода программы. Существует множество самых разнообразных редакторов от простых, которые копируют код, вводимый с клавиатуры, в файл, до специализированных редакторов, реакция которых на нажатие определенных клавиш может программироваться пользователем. Такая реакция редактора избавляет разработчика от необходимости заботится о правильном синтаксисе оператора.

Компилятор/ассемблер используется для преобразования исходного текста в машинные коды микроконтроллера, т.е. в формат, который может быть загружен память программ.

Симуляторы — это программы, которые выполняют откомпилированный программный код в инструментальном компьютере. Это позволяет осуществлять наблюдение за программой и реакцией микроконтроллера на различные события. Симулятор может быть неоценимым инструментом в процессе разработки программного обеспечения, позволяя исследовать различные ситуации, которые трудно воспроизвести на реальной аппаратуре.

Важное преимущество симуляторов — возможность многократного воспроизведения рабочих ситуаций. Если надо понять, почему участок программы работает некорректно, можно повторять этот участок снова и снова до тех пор, пока ошибка не будет обнаружена. Воспроизводимость может быть расширена путем использования специальных файлов входных воздействий. Эти файлы служат для того, чтобы задать симулятору различные комбинации входных потоков данных и формы сигналов. Чтобы имитировать внешние условия и ситуации, обычно используется специальный файл входных воздействий. Этот файл задает последовательность входных сигналов, поступающих на моделируемое устройство. Разработка такого файла может потребовать много времени и больших усилий. Но для понимания того, как работают микроконтроллер и программа в определенных ситуациях, использование симулятора и файла входных воздействий является наилучшим методом. В большинстве случаев следует использовать симуляцию перед сборкой и включением реальной схемы. Если устройство не работает ожидаемым образом, то следует изменить файл входных воздействий и попытаться понять, в чем состоит проблема, используя для этого симулятор, который позволяет наблюдать за процессом выполнения программы в отличие от реальной аппаратуры, где можно увидеть только конечные результаты.

Эмуляторы.Наиболее сложным и дорогим инструментом для отладки приложения и электрических интерфейсов является эмулятор. Эмулятор — это устройство, которое заменяет микроконтроллер в схеме и выполняет программу под Вашим управлением. Эмулятор является превосходным инструментом для разработки большинства приложений, хотя имеются некоторые разногласия по вопросу их использования в процессе разработки.

Обычно эмулятор содержит специальный эмуляторный кристалл, который подсоединяется в ведущему компьютеру или рабочей станции. Эмуляторный кристалл - это обычный микроконтроллер, помещенный нестандартный корпус с дополнительными выводами, которые подключаются к шине памяти программ и управляющим сигналам процессора. Эти дополнительные выводы позволяют соединять микроконтроллер с внешней памятью программ, которая подключена к ведущему компьютеру. Такой интерфейс позволяет легко загружать тестовые программы в эмуляторный кристалл. Выводы эмуляторного кристалла соединяются с разъемом (эмуляторная вилка), который подключается к отлаживаемому устройству, заменяя в нем микроконтроллер.

Взаимодействие с эмуляторами очень похоже на работу с симулятором. Разница состоит в том, что эмулятор не воспринимает файл входных воздействий, так как его выводы подключены к реальному устройству. Эмулятор предназначен для отладки приложений на реальном оборудовании.

Программатор. Последний инструмент разработчика - это программатор памяти программ микроконтроллера. Хотя некоторые производители микроконтроллеров предпочитают выпускать их с масочнопрограммируемой памятью программ, они обычно выпускают также аналогичные версии микроконтроллеров с E(E)PROM памятью для разработки приложений. Это значит, что существует возможность непосредственного программирования микроконтролле­ра при разработке приложения.

Для некоторых микроконтроллеров требуется специальный программатор, но чаще всего используются возможности внутрисистемного программирования ISP. В таком случае программатор является частью проектируемого устройства. Некоторые программаторы реализуют функции схемного эмулятора. При этом установленный в программаторе микроконтроллер подключается к отлаживаемой системе и управляет ее работой аналогично тому, как это выполняется в эмуляторе.

29. Системы ввода/вывода (СВВ). Способы подключения СВВ к процессору, их достоинства и недостатки.

Функции систем ввода/вывода(СВВ). Их структура.

1. Обеспечение преобразования форматов квантов данных, поступающих от ПУ в форматы ЦП или оперативной памяти. И обратное преобразование при выводе информации.

2. Формирование адреса ячейки памяти в ОЗУ, в которую должен быть помещен сформированный квант данных

3. Формирование управляющих сигналов, регламентирующих работу ПУ при различных режимах его работы.

4. Получение управляющей информации от процессора и преобразование ее в сигнал, управляющих работой ПУ.

Два режима работы системы ввода/вывода:

1. центрально-синхронный режим работы СВВ(рис.2).

Все операции ввода/вывода и обработки информации осуществляются последовательно, т.е. обработка информации возможна только после окончания ввода/вывода информации.

В таких устройствах 1 команда ввода/вывода обеспечивает обмен одного кванта данных.

Для передачи массива данных необходимо организовать систему переходов. Для таких систем время обработки данных = сумме операций ввода/вывода + сумма времени, затрачиваемого на операции вычисления.

Достоинства: Медленнодействующий, но дешевый.

Наиболее быстродействующим является асинхронный принцип ввода/вывод

 

30. Организация адресного пространства системы ввода/вывода. Совмещенное и выделенное адресное пространство, достоинства и недостатки.
Адресное пространство системы ввода/вывода

Как и обращение к памяти, операции ввода/вывода также предполагают наличие некоторой системы адресации, позволяющей выбрать один из модулей СВВ, a также одно из подключенных к нему внешних устройств. Адрес модуля и ВУ является составной частью соответствующей команды, в то время как расположение дан­ных на внешнем устройстве определяется пересылаемой на ВУ информацией.

Адресное пространство ввода/вывода может быть совмещено с адресным про­странством памяти или быть выделенным. При совмещении адресного пространства для адресации модулей ввода/выво­да отводится определенная область адресов (рис. 8.2). Обычно все операции с моду­лем ввода/вывода осуществляются с использованием входящих в него внутренних регистров: управления, состояния, данных. Фактически процедура ввода/вывода сводится к записи информации в одни регистры МВВ и считыванию ее из других регистров. Это позволяет рассматривать регистры МВВ как ячейки основной па­мяти и работать с ними с помощью обычных команд обращения к памяти, при этом в системе команд ВМ вообще могут отсутствовать специальные команды ввода и вывода. Так, модификацию регистров МВВ можно производить непосредствен­но с помощью арифметических и логических команд. Адреса регистрам МВВ на­значаются в области адресного пространства памяти, отведенной под систему вво­да/вывода.

Рис. 8.2.Распределение совмещенного адресного пространства

Такой подход представляется вполне оправданным, если учесть, что ввод/вы­вод обычно составляет малую часть всех операций, выполняемых вычислитель­ной машиной, чаще всего не более 1% от общего числа команд в программе.

Реализация концепции совмещенного адресного пространства в ВМ с кэш-па­мятью и виртуальной адресацией сопряжена с определенными проблемами. В част­ности, усложняется отображение виртуального адреса устройства ввода/вывода на физическое ВУ. Сложности также возникают и с кэшированием регистров МВВ.

Сформулируем преимущества и недостатки совмещенного адресного простран­ства.

Достоинства совмещенного адресного пространства:

  • расширение набора команд для обращения к внешним устройствам, что позво­ляет сократить длину программы и повысить быстродействие;
  • значительное увеличение количества подключаемых внешних устройств;
  • возможность внепроцессорного обмена данными между внешними устройства­ми, если в системе команд есть команды пересылки между ячейками памяти; возможность обмена информацией не только с аккумулятором, но и с любым регистром центрального процессора.

Недостатки совмещенного адресного пространства:

  • сокращение области адресного пространства памяти;
  • усложнение декодирующих схем адресов в СВВ;
  • трудности распознавания операций передачи информации при вводе/выводе среди других операций. Сложности в чтении и отладке программы, в которой простые команды вызывают выполнение сложных операций ввода/вывода;
  • трудности при построении СВВ на простых модулях ввода/вывода: сигналя управления не смогут координировать сложную процедуру ввода/вывода. По­этому МВВ часто должны генерировать дополнительные сигналы под управ­лением программы.

Совмещенное адресное пространство используется в вычислительных маши­нах MIPS и SPARC.

В случае выделенного адресного пространства для обращения к модулям вво­да/вывода применяются специальные команды и отдельная система адресов. Это позволяет разделить шины для работы с памятью и шины ввода/вывода, что дает возможность совмещать во времени обмен с памятью и ввод/вывод. Кроме тог:., адресное пространство памяти может быть использовано по прямому назначению в полном объеме. В вычислительных машинах фирмы IBM и микроЭВМ на базе процессоров фирмы Intel система ввода/вывода, как правило, организуется в со­ответствии с концепцией выделенного адресного пространства.

Достоинства выделенного адресного пространства:

  • адрес внешнего устройства в команде ввода/вывода может быть коротким. В большинстве СВВ количество внешних устройств намного меньше количе­ства ячеек памяти. Короткий адрес ВУ подразумевает такие же короткие ко­манды ввода/вывода и простые дешифраторы;
  • программы становятся более наглядными, так как операции ввода/вывода вы­полняются с помощью специальных команд;
  • разработка СВВ может проводиться отдельно от разработки памяти, Недостатки выделенного адресного пространства: ввод/вывод производится только через аккумулятор центрального процессо­ра. Для передачи информации от ВУ в РОН, если аккумулятор занят, требуется выполнение четырех команд (сохранение содержимого аккумулятора, be из ВУ, пересылка из аккумулятора в РОН, восстановление содержимого аккумулятора);
  • перед обработкой содержимого ВУ это содержимое нужно переслать в ЦП.

 

31. Категории и структура внешних устройств.
Внешние устройства

Связь ВМ с внешним миром осуществляется с помощью самых разнообразных, внешних устройств. Каждое ВУ подключается к МВВ посредством индивидуальной шины. Интерфейс, по которому организуется такое взаимодействие МВВ и ВУ, часто называют малым. Индивидуальная шина обеспечивает обмен данными и управляющими сигналами, а также информацией о состоянии участников обмена. Внешнее устройство, подключенное к МВБ, обычно называют периферийным ус­тройством (ПУ). Все множество ПУ можно свести к трем категориям [200]:

  • для общения с пользователем;
  • для общения с ВМ;
  • для связи с удаленными устройствами.

Примерами первой группы служат видеотерминалы и принтеры. Ко второй группе причисляются внешние запоминающие устройства (магнитные и оптичес­кие диски, магнитные ленты и т. п.), датчики и исполнительные механизмы. От­метим двойственную роль внешних ЗУ, которые, с одной стороны, представляют собой часть памяти ВМ, а с другой — являются внешними устройствами. Нако­нец, устройства третьей категории позволяют ВМ обмениваться информацией с удаленными объектами, которые могут относиться к двум первым группам. В роли удаленных объектов могут выступать также другие ВМ.

 

Рис. 8.3.Структура внешнего устройства

 

Обобщенная структура ВУ показана на рис. 8.3. Интерфейс с МВБ реализует­ся в виде сигналов управления, состояния и данных. Данные представлены сово­купностью битов, которые должны быть переданы в модуль ввода/вывода или по­лучены из него. Сигналы управления определяют функцию, которая должна быть выполнена внешним устройством. Это может быть стандартная для всех устройств функция — посылка данных в МВБ или получение данных из него, либо специ­фичная для данного типа ВУ функция, такая, например, как позиционирование головки магнитного диска или перемотка магнитной ленты. Сигналы, состояния характеризуют текущее состояние устройства, в частности включено ли ВУ и го­тово ли оно к передаче данных.

Логика управления — это схемы, координирующие работу ВУ в соответствии с направлением передачи данных. Задачей преобразователя является трансфор­мация информационных сигналов, имеющих самую различную физическую при­роду, в электрические сигналы, а также" обратное преобразование. Обычно совместно с преобразователем используется буферная память, обеспечивающая временное хранение данных, пересылаемых между МВБ и ВУ.

32. Модули ввода-вывода. Функции модуля ввода-вывода.

Модули ввода/вывода


Поделиться:

Дата добавления: 2015-04-18; просмотров: 160; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты