
- •Микропроцессорные системы для автоматизации технологических процессов
- •7.1. Введение 39
- •8. Семейство 32-разрядных микроЭвм фирмы Motorola 88
- •9. Организация контроллеров pic фирмы Microchip 113
- •10. Особенности архитектуры сигнальных процессоров 125
- •10.2. Организация памяти 136
- •10.5.1. Прерывания 150
- •11. Пример проектирования асу тп: асу тп подготовки резиновой смеси 158
- •1.Введение
- •2.Архитектура управляющих цвм
- •2.1.Требования к цвм в контуре управления. Сравнительный анализ архитектур
- •2.1.1.Первая массовая управляющая цвм pdp-8
- •2.1.2.Семейства управляющих цвм pdp-11/lsi-11
- •3.Проблема связи между уровнями в многоуровневых мпс
- •3.1.Микроконтроллеры экр1847вг6 (upi - 42)
- •4.Клавиатура и индикация в мпс
- •4.1.Двоичная индикация и ключи
- •4.2.Матричная клавиатура
- •4.3.Сегментная индикация
- •4.4.Контроллер клавиатуры и индикации к580вв79
- •4.4.1.Работа контроллера
- •4.4.1.1.Управление клавиатурой
- •4.4.1.2.Управление дисплеем
- •5.Однокристальные микроЭвм – общие принципы организации
- •5.1.Особенности архитектуры 8-разрядный оэвм фирмы intel
- •5.1.1.Омэвм 8048
- •5.1.2.Семейство омэвм mcs-51
- •6.Обзор 8-разрядных контроллеров фирмы Motorola
- •6.1.Архитектура процессорного модуля семейства mc68hc05
- •6.1.1.Архитектура цпу
- •6.1.2.Организация памяти.
- •6.1.3.Встроенная подсистема ввода/вывода
- •6.2.Семейство мс68нс08
- •6.3.Семейство мс68нс11
- •7.Однокристальная микроЭвм mc68hc11e9
- •7.1.Введение
- •7.1.1.Характеристики
- •7.1.2.Характеристики представителей семейства mc68hc11.
- •7.1.3.Программная модель mc68hc11e9
- •7.1.4.Внутренняя структура и назначение выводов
- •7.1.5.Режимы работы
- •7.1.6.Карта памяти
- •7.1.7.Эсппзу и его программирование
- •7.2.Параллельный ввод/вывод
- •7.2.1.1.Синхронный параллельный обмен
- •7.2.1.2.Асинхронный параллельный обмен
- •7.2.1.2.1.Простой стробируемый ввод/вывод
- •7.2.1.2.1.1.Стробируемый ввод в порт c
- •7.2.1.2.1.2.Стробируемый вывод из порта b
- •7.2.1.2.2.Ввод/вывод с полным квитированием установления связи.
- •7.2.1.2.3.Режима ввода с полным квитированием установления связи
- •7.2.1.2.4.Режима вывода с полным квитированием установления связи
- •7.2.1.2.5.Режима двунаправленного обмена
- •7.2.2.Синхронный параллельный обмен
- •7.2.2.1.Выбор режимов асинхронного обмена
- •7.2.2.2.Краткое резюме по способам параллельного обмена в…е9
- •7.3.Последовательный интерфейс связи (sci).
- •7.3.1.Формат данных
- •7.3.2. Структура последовательного интерфейса связи
- •7.3.3.Передача данных
- •7.3.4.Прием данных
- •7.3.4.1.Распознавание старт-бита
- •7.3.4.2.Особенности при работе в системах с несколькими приемниками
- •7.4.Последовательный периферийный интерфейс (spi).
- •7.4.1.Структура spi
- •7.4.2.Регистры spi.
- •7.4.3.Функциональное описание.
- •7.4.3.1.Работа системы с несколькими ведомыми устройствами
- •7.5.Система контроля временных интервалов
- •7.5.1.Входная фиксация
- •7.5.2.Выходное сравнение
- •7.5.2.1.Принудительное сравнение
- •7.5.2.2.Особенности выходного сравнения 1
- •7.5.3.Счетчик внешних событий
- •7.5.4.Генератор прерываний реального времени
- •7.6.Подсистема аналого-цифрового преобразователя
- •7.7.Прерывания
- •7.7.1.Дисциплина обслуживания прерываний
- •7.7.1.1.Приоритеты запросов
- •7.8.Специальные средства микроконтроллера
- •7.8.1.Регистр выбора конфигурации (option).
- •7.8.2.Режимы пониженного энергопотребления.
- •7.9.Система команд микроЭвм мс68нс11е9
- •7.10.Особенности организации микроЭвм mc68hc11f1
- •7.10.1.Особенности параллельного ввода/вывода
- •7.10.2.Особенности карты памяти mc68hc11f1
- •7.10.3.Функции выбора кристалла (Chip Selects)
- •8.Семейство 32-разрядных микроЭвм фирмы Motorola
- •8.1.Модульность архитектуры
- •8.2.1.Основные характеристики cpu32:
- •8.2.2.Программная модель
- •8.2.3.Регистры
- •8.2.4.Типы данных
- •8.2.5.Системные особенности
- •8.2.6.Система команд
- •8.3.Модуль системной интеграции (sim)
- •8.3.1.Функционирование шины
- •8.3.2. Блок конфигурации и защиты системы
- •8.3.3. Логика выборки внешних устройств
- •8.4.Таймерный сопроцессор (tpu)
- •8.4.1.Таймерные функции высокой точности
- •8.4.2.Характеристики tpu
- •8.4.3.Общая концепция tpu
- •8.5.Озу (с эмуляцией tpu)
- •8.6.Модуль буферизованного последовательного ввода/вывода (qsm)
- •8.6.1.Расширенные возможности qspi
- •8.6.2.Подмодуль sci
- •8.7.Микроконтроллер mc68332
- •8.7.1.Функциональное назначение выводов микроконтроллера
- •9.Организация контроллеров pic фирмы Microchip
- •9.1.Однокристальные микроЭвм
- •9.2.Контроллер can-интерфейса
- •10.Особенности архитектуры сигнальных процессоров
- •10.1.Функциональная схема и назначение внешних выводов
- •10.2.Организация памяти
- •10.2.1. Вспомогательные регистры
- •10.2.2.Методы адресации памяти данных
- •10.2.3.Пересылки из одной области памяти в другую
- •10.3.Центральное арифметико-логическое устройство (calu)
- •10.4.Последовательный порт
- •10.5.Системные средства
- •10.5.1.Прерывания
- •10.5.2.Универсальные контакты *bio и xf
- •10.5.3.Внешняя память и интерфейс ввода-вывода
- •10.5.4.Мультипроцессорная обработка и прямой доступ к памяти
- •10.6.Система команд сигнального процессора
- •10.6.1.Способы адресации и форматы команд
- •Команды пересылки и загрузки
- •Арифметико-логические и специальные команды
- •Команды передачи управления
- •Команды управления
- •11.Пример проектирования асу тп: асу тп подготовки резиновой смеси
- •11.1.Существующая система приготовления резиновой смеси
- •11.2.Требования к разрабатываемой асу тп
- •11.3.Выбор способа реализации управляющего блока
- •11.4.Выбор режима работы микроЭвм и распределение адресного пространства
- •11.4.1.Выбор режима работы
- •11.4.2.Распределение ресурсов ввода/вывода
- •11.4.3.Назначение управляющих клавиш и элементы диалога
- •11.4.4.И Только для чтения спользуемые ресурсы микроЭвм
5.1.2.Семейство омэвм mcs-51
История этого семейства началась с базового микроконтроллера i8051 и за последние 15 лет семейство пополнялось не только изделиями INTEL, но и микроконтроллерами других фирм. Однако почти все модели строго соблюдали архитектурные особенности, предложенные фирмой INTEL.
Но, наряду с существенными преимуществами микроконтроллеры INTEL обладают и недостатками, например: невозможностью построения операционных систем внутри кристалла или сложностью межпроцессорного обмена. Кроме того, часто хотелось бы иметь более высокую производительность при том же потреблении энергии или, наоборот, уменьшить потребление энергии не снижая производительности процессора. Поэтому многие производители семейства MCS51 вносят различные изменения в архитектуру, позволяющие оптимизировать отдельные характеристики микроконтроллера.
Фирма siemens components inc. выпускает микроконтроллеры, ориентированные на использование в бытовой технике, в том числе видеотехнике. Микросхемы содержат разнообразные встроенные устройства (АЦП, массивы счетчиков, дополнительные блоки умножения и деления, расширение портов ввода/вывода).
Фирма philips semiconductors выпускает микроконтроллеры, ориентированные на применение в бытовой или автомобильной технике. Благодаря аппаратной реализации шин I2C и CAN легко могут быть использованы в инструментальных комплексах. Микросхемы содержат разнообразные встроенные устройства (АЦП, массивы счетчиков, расширение портов ввода/вывода). Имеются варианты с пониженным питающим напряжением и в компактных корпусах.
Фирма oki semiconductor производит полностью статические микросхемы по технологии CMOS, являющиеся функциональным аналогом микросхем фирмы INTEL с дополнительными возможностями. Имеют улучшенные характеристики по цепям питания. Применен корпус, в котором внутренняя шина вынесена наружу в виде разъема для установки ПЗУ.
Фирма matra mhs производит статические микросхемы, представляющие собой аналоги стандартных моделей семейства MCS51 с улучшенными выходными цепями портов ввода/вывода.
Фирма advanced micro devices (AMD) выпускает по технологиям CMOS и NMOS функциональные аналоги микросхем фирмы INTEL с дополнительными возможностями.
Фирма fujitsu выпускает функциональные аналоги микросхем i8031, i8051 и i8751 по технологии NMOS.
Объединение atmel производит стандартные микроконтроллеры с ПЗУ по технологии Flash объемом 4 Кбайт в обычных и уменьшенных корпусах.
Рассмотрим основные архитектурные особенности семейства на примере отечественного аналога 8051 микросхемы К1816ВЕ51.
Однокристальные микро-ЭВМ К1816ВЕ51/52 представляют как бы второе поколение микро-ЭВМ серии К1816 со значительно большими вычислительными мощностями. 16-разрядный программный счетчик и 16-разрядные регистры косвенного адреса позволяют управлять внешней памятью программ и данных по 64К байт. Значительно расширены возможности системы команд, расширена номенклатура встроенных ВУ.
Структура ОМЭВМ представлена на Рис. 5 .18
Р
ис.
5.18. Структура микро-ЭВМ
К1816ВЕ52
Микро-ЭВМ ..ВЕ52 позволяет управлять пятью (частично пересекающимися) адресными пространствами памяти, четыре из которых являются областями данных:
RSEG - пространство регистров (4´8 байт);
DSEG - пространство внутренней памяти данных (256 байт);
BSEG - битовое пространство данных (256 бит);
XSEG - пространство внешней памяти данных (до 64К байт);
CSEG - пространство программного кода (до 64К байт).
Пространства RSEG и BSEG частично пересекаются, физически совмещаются с DSEG и образуют единую внутреннюю среду для хранения данных. Это позволяет одни и те же данные рассматривать с разных позиций (ячейка памяти, регистр, битовое поле, порт ввода/вывода и т.п.) и организовывать наиболее удобный для данного случая доступ к ним. Так, к ячейке DSEG[E0] можно обратиться по прямому и косвенному адресу, обратиться как к аккумулятору A и как к полю BSEG[E0..E7] (к каждому биту в отдельности).Характерно, что все порты ввода/вывода, системные регистры, таймеры так же отображены на пространство DSEG.
Память программ (CSEG) адресуется PC[15:0] и может составлять до 64К байт, причем младшие 4..8К могут располагаться непосредственно на кристалле микро-ЭВМ (РПЗУ или ПЗУ), а остальная память - внешнее ЗУ. С точки зрения программиста внешняя и внутренняя память программ представляют единое адресное пространство.
К “внешним” устройствам микроЭВМ К1816ВЕ52 отнесем:
параллельных двунаправленных порта ввода/вывода P0..P3;
буфер SBUF и регистр управления SCON последовательного канала;
таймеры/счетчики T0, T1, их регистр управления TCON и регистр режимов TMOD;
таймер/счетчик T2, его буферный регистр RCAP2 и регистр управления T2CON;
регистры управления подсистемой прерываний: регистр приоритетов IP и регистр маски IE;
регистр управления машиной PCON.
Поскольку порты ввода/вывода размещены в пространстве DSEG, любая команда с операндом из DSEG применима к содержимому P0-P3, а совмещение с BSEG позволяет иметь доступ к каждому биту портов.
При обращении к внешней памяти порты P0 и P2 выполняют функцию системных шин A/D[7:0] и A[15:8] соответственно. Линии порта P3 используются для передачи управляющих сигналов.
Характерно, что при отсутствии в системе внешней памяти линии управления можно использовать как обычные программируемые линии порта. С другой стороны, пользователь может программировать интерфейс памяти, подавая на выходы RD\, WR\, PSEN\ импульсы произвольной длительности.
Буферы портов P0..P2 ..ВЕ52 отличаются от соответствующих буферов ..ВЕ48. При обращении к внешним объектам содержимое буфера P2 не меняется, а P0 устанавливается в FF. Каждый линия P0..P3 может быть использована в качестве выходной независимо от других. Для перевода линии в режим ввода в соответствующий разряд выходного регистра должна быть записана “1”. При использования линий P3 для управления соответствующий разряд ее должен быть установлен в “1”, иначе на выходе всегда будет “0”.
При сбросе микро-ЭВМ все регистры портов устанавливаются в состояние FF.
Линии порта P0 - с открытым стоком, P1..P3 имеют встроенную нагрузку.
В состав ..ВЕ51 входит дуплексный последовательный канал связи с буферизацией, который может быть запрограммирован для работы в одном из четырех режимов:
режим "0" - синхронный ввод/вывод с частотой OSC/12;
режим "1" - асинхронный с 8-бит. кадром, частота k´f;
режим "2" - асинхронный с 9-бит. кадром, частота k´OSC/32;
режим "3" - асинхронный с 9-бит. кадром, частота k´f;
где k {1, 1/2}, f - частота переполнения T1 (fov), деленная на 16.
В состав ..ВЕ51 входят два 16-разрядных таймера/счетчика T0, T1. Состояние таймеров/счетчиков (далее для краткости - таймеров) отображается регистровыми парами TiH-TiL в пространстве DSEG.
В режиме таймеров осуществляется пересчет тактовых сигналов с частотой OSC/12, а в режиме счетчиков подсчитываются переходы с H-уровня в L-уровень на соответствующих входах T0, T1.
Каждый таймер может работать в одном из четырех режимов. Режим 1 – обычный 16-разрядный таймер, режим 0 – то же для13-разрядного таймера. В режиме 2 работает только 8-разрядный таймер (младший байт), а из старшего байта возможна автозагрузка при переполнении таймера. В режиме 3 16-разрядный таймер «распадается» на два независимых 8-разрядных таймера8.
Переполнение таймера вызывает установку программно-доступного флага переполнения и внутреннее прерывание – если оно не замаскировано. Специальные управляющие биты позволяют измерять длительность внешних сигналов.
В состав ВЕ52 дополнительно входит таймер Т2, функционирование которого несколько отличается от работы T0, T1. Помимо регистровой пары T2H.T2L, отображающей состояние таймера/счетчика, предусмотрена регистровая пара RCAP2, в которую осуществляется автозахват и из которой осуществляется автозагрузка T2. Для внешнего управления процессами автозахвата/автозагрузки предусмотрен дополнительный вход T2EX.
Режим захвата осуществляется путем копирования текущего состояния T2 в регистры RCAP2 по отрицательному перепаду импульса на входе T2EX при условии EXEN2 = 1. Захват сопровождается установкой флага EXF2.
В режиме автозагрузки каждое переполнение T2 вызывает установку TF2 и перезагрузку RCAP2 ® T2. Перезагрузку можно осуществить и от внешнего источника - по отрицательному перепаду сигнала на входе T2EX (при условии EXEN2 = 1), причем такая перезагрузка сопровождается установкой флага EXF2.
Архитектура ..ВЕ51/52 поддерживает двухуровневую радиальную приоритетную подсистему прерываний (ПП) с шестью источниками запросов. Программное управление ПП осуществляется через два 8-разрядных регистра
IP - Interrupt Priority - регистр приоритетов прерываний;
IE - Interrupt Enable - регистр разрешения прерываний,
Для приема внешних прерываний служат входы INT0\, INT1\, которые могут быть независимо друг от друга запрограммированы на срабатывание как по переходу "H" ®"L", так и по L-уровню.
Источниками внутренних запросов могут служить сигналы переполнения таймеров T0, T1, Т2 и сигнал окончания работы последовательного канала.
Программно могут быть и установлены все флажки, которые фиксируют запросы, что позволяет активизировать соответствующие процедуры непосредственно из программы. Кроме того, любой флаг запроса может быть проанализирован программно (при выключенной ПП).
Каждый из источников запросов может быть замаскирован с помощью разряда регистра маски IE. Прерывание разрешается при наличии “1” в соответствующем разряде регистра IE.
Разбиение на два подмножества по приоритетам программ осуществляется с помощью разрядов регистра IP. В разряды IP, соответствующие прерываниям, отнесенным к высшему приоритету, следует установить "1", к низшему - "0". Процедура обслуживания низкоприоритетного запроса может быть прервана высокоприоритетным запросом; обслуживание высокоприоритетного запроса не прерывается. При одновременном появлении нескольких одинаково приоритетных запросов выбирается для обслуживания запрос согласно строгому приоритету.