1 МИКРОНТРОЛЛЕРЫ FUJITSU MB-90
1.1 Общая характеристика и применение
Серия MB90385 – 16-разрядные высокопроизводительные микроконтроллеры общего назначения, которые разработаны для выполнения функций управления в пользовательской электронике, где требуется высоко быстродействующая обработка информации в реальном времени. Микроконтроллеры этой серии содержат встроенный интерфейс .
За счет наследования архитектуры F2MC данные микроконтроллеры характеризуются готовностью к выполнению инструкций языков высокого уровня, расширенным режимом адресации, расширенными инструкциями умножения/деления и богатым набором инструкций битовой обработки. Кроме того, использование 32-разрядного аккумулятора позволяет выполнять обработку длинных слов данных (32-разр.).
Основные особенности микроконтроллеров данной серии:
Адресное пространство CPU 16 Мбайт (24-разрядная внутренняя адресация)
Произведен по -технологии
Память
Флэш-ПЗУ: 64 кбайт
Емкость ОЗУ: 2 кбайт
32-битный аккумулятор
Обработка команд с использованием 4х-байтной очереди
Мощная таймерная подсистема (сторожевой таймер, перезагружемый таймер, многофункциональный таймер ввода/вывода)
Мощная функция обработки прерывания с 8 уровнями и 32 факторами.
1CAN (англ. Controller Area Network — сеть контроллеров) — стандарт промышленной сети, ориентированный прежде всего на объединение в единую сеть различных исполнительных устройств и датчиков. Режим передачи — последовательный, широковещательный, пакетный.
2КМОП-структура [CMOS, Complementary Metal-Oхide-Semiconductor] - усовершенствованная (комплиментарная) структура построения микроэлектронных схем на трехслойной (МОП) основе метал-окисел-полупроводник. Используется для производства микропроцессоров; оперативных запоминающих устройств (ОЗУ); CMOS RAM; микросхем, реализующих функцию часов реального времени (RTC, Real Time Clock) - RTC CMOS RAM; фоточувствительных точечных датчиков для цифровой фотографии - CMOS APS (Active Piхel Sensor) и др.
Функция автоматической передачи данных независимо от ЦПУ
8 входов внешних прерываний, программируемых на вход фронта или уровня
Субтактирование на частоте 32,768 кГц (тактирование часовым кварцем)
Малое энергопотребление (до 40 мА)
Режимы остановки CPU, спящий режим (энергопотребление до 10 мкА)
Малый уровень электромагнитных помех
Температурный диапазон -40…+85
Корпус: 48-выводной plastic-LQFP
1.2 Внутренняя архитектура
Внутренняя архитектура микроконтроллеров семейства MB90 представленная на рис. 1 (серия MB90385).
Рис. 1 Внутренняя архитектура микроконтроллеров серии MB90385
В микроконтроллер встроена схема умножения тактовой частоты с ФАПЧ, которая дает возможность выбора источника тактирования поделенной на 2 и умноженной на 1-4 основного тактового генератора (при частоте генератора 4 МГц доступны опции: 2, 4, 8, 12, 16 МГц). Возможна работа с дополнительной тактовой частотой (8,192 кГц). Минимальное время выполнения команды: 62,5 нс (при частоте тактового генератора 4 МГц и умножении на 4 схемой ФАПЧ).
ЦПУ имеет 16 Мб пространство памяти. Все входные и выходные данные программы, управляемый ЦПУ размещены в этом 16 Мб пространстве памяти. ЦПУ обращается к ресурсам, указывая их адреса, используя 24-разрядную адресную шину. Память не разделена на память программ и память данных, используется одна внутренняя шина. Данный тип микроконтроллеров основан на архитектуре фон Неймана.
Регистры MB90385 можно разделить на два типа: специальные регистры в ЦПУ и регистрах общего назначения в памяти. Специальные регистры это выделенные внутренние аппаратные средства ЦПУ, и они имеют специфическое использование, определенное архитектурой ЦПУ. Регистры общего назначения (РОН) совместно используют адресное пространство ЦПУ с ОЗУ. РОН - те же самые, что и специальные регистры, в которые они могут обращаться без использования адреса. Применение РОН может быть определено пользователем, как обыкновенное пространство памяти.
РОН расположены от адресов 000180H до 00037FH (максимальная конфигурация) оперативной памяти. Указатель банкового регистра (RP) показывает, какие из вышеупомянутых адресов в настоящее время используются как банковый регистр (используются при банковой адресации). Каждый банк имеет три следующих типа регистров:
R0…R7: 8-битный РОН
RW0…RW7: 16-битный РОН
RL0…RL3: 32-битный РОН
Также данное семейство процессоров характеризуют повышенной производительностью за счет улучшения высокоточных вычислений с помощью применения 32-битного аккумулятора и расширенного набора команд умножения/деления.
1.3 Состав встроенных устройств
Выходной компаратор 16 разрядов на 8 каналов
16 разрядное устройство захвата фронтов: 8 каналов
Таймеры
•Таймер интервалов времени, таймер синхронизации, сторожевой таймер: 1 канал
•8/16 – битный таймер программируемого генератора импульсов: 8 бит на 4 канала или 16 бит на 2 канала
•16-битный таймер перезагрузки: 2 канала
•16-битный таймер ввода/вывода
- 16-битный циклический таймер: 1 канал
- 16-битный вывод при захвате фронта (ICU): 4 канала
- Запрос прерывания происходит во время фиксирования значения 16-битного циклического таймера при обнаружении фронта сигнала на входном контакте
АЦП: 8 каналов
- Выборочная разрешающая способность: 8 или 10 разрядов
- Возможность активизации внешним триггерным входом
- Время преобразования: 6.125 мкс (при тактовой частоте 16 МГц, в т.ч. время выборки)
8/16-разрядный программируемый генератор импульсов: 8 каналов 16-разр./ 16каналов 8-разр.
PLL-синтезатор (x1/2; x2; x3; x4) (возможность применения различных кварцевых резонаторов)
1.4 Способы адресации
Контроллеры семейства MB90 поддерживают 23 режима адресации, в частности непосредственную, косвенную, индексную, регистровую адресации, а также банковую адресацию (восемь старших битов адреса определены соответствующим банковым регистром, а оставшиеся 16 битов младшего разряда определены командой).
1.5 Система команд
Система команд MB90 считается очень удобной. Она относится к архитектуре CISC по соответствующим признакам. Однако есть некоторые отличия. Набор команд содержит, помимо стандартных арифметических, логических команд и команд перехода и условного перехода, команды, работающие со строками, со стеком, изменяющие флаги, команды доступа I/O, управления прерываниями, команды циклического сдвига и работы с указателями. Число РОН сравнительно не велико, за счет увеличения объема памяти, но есть большое количество способов адресации, поэтому можно сказать, что микроконтроллеры Fujitsu достаточно соответствуют классической CISC-архитектуре.
1.6 Работа с внутренними и внешними устройствами
Порты ввода/вывода:
Порты ввода/вывода общего назначения (КМОП выходы): 34 порта (MB90F387) (в т.ч. 4 порта с мощным выходам). На микроконтроллерах MB90F387S, если вспомогательный источник тактирования не используется, возможно расширение до 36 портов.
Интерфейсы:
Полный CAN, версии 2.0a и 2.0b
8 входов DTP (механизм пересылки данных внешней периферии по запросу DMA/прерываний с активацией сервиса EI2OS - расширенная функция интеллектуального ввода-вывода)
Полный дуплекс UART на скорость до 2 Мбит
Возможность подключения внешней памяти объёмом до 16 Мбайт
Встроенный интерфейс I2C (не во всех моделях)
2. МИКРОКОНТРОЛЛЕРЫ INTEL 296
2.1 Общая характеристика и применение
В семейство MCS-196 фирмы Intel (иногда используется и название 80C196) входит более 30 разновидностей микроконтроллеров. Это 16-разрядные, быстродействующие ИС высокой степени интеграции, ориентированные на решение задач управления процессами в реальном масштабе времени. Типичные области применения для этих микроконтроллеров - управление двигателями, модемы, безюзовые тормозные системы, контроллеры жестких дисков, медицинское оборудование.
История MCS-196 насчитывает более 12 лет. За это время специалисты фирмы Intel увеличили адресное пространство с 64 КБайт до 6 Мбайт, повысили тактовую частоту с 10 до 50 МГц, улучшили быстродействие в 16 раз.
Микроконтроллеры 80C196 фактически стали индустриальным стандартом для 16-разрядных встроенных систем управления, обеспечивая сочетание высоких технических показателей и экономической эффективности. Например, именно благодаря этим микроконтроллерам, установленным в системе управления зажиганием, специалистам концерна Ford удалось существенно снизить потребление топлива, уменьшить выбросы вредных веществ и одновременно повысить скоростные характеристики своих машин.
Серия MCS-296 это последнее обновление семейства MCS-96. Микроконтроллеры 80296SA имеют повышенную производительность, по сравнению с наиболее производительными контроллерами 196 серии (8xC196NP и 8xC196NU).
Основные особенности серии MCS-96
80C196 имеет всего одно адресное пространство, в котором находятся и инструкции, и данные.
80C196 содержит больше периферийных узлов, чем более простые, 8-разрядные микроконтроллеры. Однако каждый из этих узлов не является более сложным.
80С196 имеет существенно более высокое быстродействие, чем 8-разрядные микроконтроллеры, и потребляет больше. Но кристаллы 80C196 изготавливаются по КМОП-технологии. А это значит, что при понижении тактовой частоты энергопотребление снижается по практически линейному закону. Итак, если некоторая прикладная задача может быть решена при помощи 8-разрядного микроконтроллера, то ее можно решить и при помощи 80C196, работающего на пониженной тактовой частоте. При этом энергопотребление 80C196 будет слабо отличаться от потребления 8-разрядного микроконтроллера, работающего на своей номинальной частоте, и может быть даже меньшим.
У 80C196 можно использовать 16-разрядную внешнюю шину. Кроме того, цикл шины 80C196 в 3-4 раза короче, чем у 8051. В результате, 80C196 в 6-8 раз быстрее работает с внешней памятью.
80C196 имеет полноценный набор 16-разрядных арифметических инструкций.
Стек 80C196 имеет размер до 64 КБайт, а в качестве указателя можно использовать любое из 116 слов встроенной регистровой памяти.
Рассмотрим технические характеристики кристалла MCS-296 – 80C296SA:
Частота процессора 40, 50 МГц.
Адресное пространство 6 Мбайт.
16-разрядная шина памяти, может расширяться до 16/24-разрядной (адреса/данных).
Память ОЗУ 2 кбайт (+512 байт регистровой ОЗУ памяти), ПЗУ 2 кбайт.
40-разрядный аккумулятор, с возможностями цифровой обработки сигналов и выполнений операций умножения и накопления за 80 нс.
Прерывания:
19 источников прерываний, из них 14 – с программируемым приоритетом.
Энергопотребление:
Общее потребление - не более 150 мА на частоте 50 МГц. Имеются режимы с пониженным энергопотреблением: IDLE и POWER DOWN.
Температурный диапазон, корпуса:
Существует четыре разновидности по температурному диапазону работы: коммерческий (0...+70 градусов), расширенный (-40...+85), автомобильный (-40...+125) и военный. Кроме того, микроконтроллеры могут быть подвергнуты динамической электротермотренировке.
ИС устанавливаются в 100-выводные корпуса типов QFP или SQFP.
2.2 Внутренняя архитектура
Внутренняя архитектура контроллеров серии 296 показана на рис. 2 (на примере 80296SA). Очевидно, что данные микроконтроллеры спроектированы на основе принстонской архитектуры (основанной на принципах фон Неймана), т.к. память для хранения данных и команд не разделена (единое адресное пространство), а микроконтроллер содержит две шины: данных и адреса.
Рис.2 Внутренняя архитектура кристалла 80296SA
На частоте 50 МГц ЦПУ выполняет до 16 млн. оп/с на стандартном наборе команд и до 12,5 млн. оп/с при использовании специальных команд цифровой обработки сигналов. Память ЦПУ имеет одно адресное пространство размером 6 Мбайт, в котором находятся регистры общего назначения, регистры специального назначения, встроенная программная память, внешняя память для программы и данных. ПЗУ имеет объем 2 кбайт и оснащено защитой от несанкционированного доступа. Контроллер памяти работает с 16- и 24-разрядной внешней шиной, причем ширина шины может динамически переключаться, можно вводить циклы ожидания.
Основные компоненты CPU во всех микроконтроллерах семейства MCS-96 — это Регистровый Файл (Register File) и Регистровое Арифметико-Логическое Устройство (Register/Arithmetic Logic Unit - RALU). Регистровый файл - это адресуемое пространство регистров процессора. Ячейки от 00h до 17h - это управляющие регистры ввода-вывода или регистры cпециальных функций (Special Function Registers - SFR). Ячейки 18h и 19h содержат указатель стека, они могут использоваться как обычная RAM-память, когда не выполняются стековые операции. Остальные байты регистрового файла служат как обычная RAM-память, доступная как байт, слово или как двойное слово. CPU выполняет вычисления в RALU. RALU содержит 17-битное арифметико-логическое устройство (ALU), слово состояния программы (PSW), счетчик команд (PC), счетчик циклов и три временных регистра. RALU работает напрямую с регистровым файлом, таким образом, устраняются пересылки через аккумулятор, и обеспечивается прямое управление операциями ввода/вывода через SFR.
Другие составные микропроцессора рассмотрим в пункте 2.3
2.3 Состав встроенных устройств
Таймеры:
Два 16-разрядных таймера TIMER1 и TIMER2 обеспечивают синхронизацию работы устройства ввода-вывода импульсных сигналов с реальным временем и внешними событиями. TIMER1 синхронизируется изнутри, тогда как TIMER2 синхронизируется снаружи.
Генератор сигналов CHIP SELECT (CHIP SELECT UNIT):
Этот узел появился ещё у кристалла 8XC196NP, имеется у 8XC296SA. Он позволяет существенно упростить аппаратуру, необходимую для подключения внешней памяти к процессору, и, тем самым, удешевить систему. Он может генерировать до 6-ти сигналов выборки (Chip Select), с независимо устанавливаемыми циклами ожидания и шириной шины. Кроме того, кристаллы, имеющие Chip Select Unit, имеют демультиплексированную шину, что позволяет отказаться от внешних регистров-защелок и использовать медленную и дешевую память, сохранив при этом быстродействие системы.
Импульсный ввод/вывод EPA (EVENT PROCESSOR ARRAY):
Данный узел пришел на смену HSIO, начиная с кристалла 8XC196KR. EPA имеет более простую архитектуру, чем HSIO, обладая при этом лучшей разрешающей способностью. В HSIO, все входные каналы имеют общую память, 7-уровневое FIFO (first in/first out), в которой запоминаются временные отметки, соответствующие событиям на входах. То же касается выходных линий HSIO - все они имеют общую память (8 ячеек), в которую процессор записывает команды для всех выходных каналов HSIO. Поэтому за один такт HSIO может обработать только один входной и один выходной канал. В EPA, каждый канал имеет свой собственный буфер, а выдача и прием сигналов производятся одновременно по всем каналам. Поэтому разрешающая способность EPA выше, чем у HSIO, в 4 раза. Кроме того, EPA - более гибкий узел: каждый его канал может служить и входом, и выходом, тогда как HSIO имеет 4 выходных, 2 входных, и 2 двунаправленных линии.
Дополнительное ОЗУ (Code RAM):
Это дополнительное ОЗУ, в котором можно размещать исполняемый код. Этот код будет выполняться очень быстро, так как Code RAM имеет 16-разрядный интерфейс с нулевым циклом ожидания. Code RAM может принести существенную пользу в задачах, где требуется максимально быстрое выполнение только небольших фрагментов кода, позволяя при этом использовать сравнительно медленное и дешевое 8-битное ПЗУ для хранения остальной части программы. Конечно, эту память можно использовать и для размещения данных или стека.
MCS-96 содержит полный набор команд, включающий операции с битами, байтами, словами, двойными словами (беззнаковые 32 бит), длинные операции (32 бит со знаком), работу с флагами, а также переходы и вызовы подпрограмм. Все стандартные логические и арифметические команды работают как с байтами, так и со словами. Команды перехода по установке бита (Jump Bit Set) и очистке бита (Jump Bit Clear) могут работать с каким-либо регистром SFR или с другими байтами регистрового файла. Эти быстрые битовые операции позволяют ускорить функции ввода/вывода.
2.4 Способы адресации
Система команд MCS-96 содержит следующие типы адресации: регистровая (register — direct), косвенная (indirect), автоинкрементная (indirect with autoincrement), непосредственная (immediate), короткая индексная (short-indexed ) и длинная индексная (long-indexed). Эти типы адресации увеличивают гибкость и скорость выполнения команд устройствами MCS-96. Каждая команда использует по крайней мере один из способов адресации.
Регистровая адресация и непосредственная адресация выполняются наиболее быстро. Регистровая адресация обеспечивает доступ к файлу регистров и SFR. Непосредственная адресация использует информацию, следующую за кодом команды, как операнд. Уникальной особенностью микроконтроллера 80296SA является расширение возможностей оконной адресации внутреннего регистрового ОЗУ на область внешней памяти, что позволяет применять быстродействующую прямую регистровую адресацию для доступа не только к внутренней регистровой памяти, но и к внешней памяти.
Оба режима косвенной адресации используют значение слова в регистре как адрес операнда. Автоинкрементная адресация увеличивает адресное слово на единицу после операции с байтом, и на два после операции со словом. Этот способ адресации обеспечивает легкий доступ к справочным таблицам.
Длинная индексная адресация обеспечивает прямой доступ к любой ячейке 64К адресного пространства. Этот способ формирует адрес операнда добавлением 16-битного значения к регистровому слову. Индексирование с нулевым регистром позволяет иметь прямую адресацию к любой ячейке. Короткая индексная адресация формирует адрес операнда добавлением 8-битного значения к регистровому слову.
Кроме того имеются расширенные версии команд прерываемой и непрерывной передачи блока. Множество способов адресации семейства MCS-96 делает легким программирование на языке ассемблера и обеспечивает отличную взаимосвязь с языками высокого уровня. Команды ассемблера, состоят из мнемоники, за которой следуют адрес или данные.
2.5 Система команд
Система команд MCS-96 содержит более 100 команд различного назначения: арифметические команды, логические команды, стековые команды, команды работы с данными, команды перехода, команды вызова, команды условного перехода, команды сдвига, блочные команды, специальные команды, а также прочие команды. Арифметические и логические команды могут использовать любой из способов адресации, доступных в микроконтроллере. Архитектура данной системы команд — CISC (архитектура с полным набором команд). Об этом свидетельствует большое количество машинных команд, разнообразие способов адресации, наличие команд, где обработка совмещается с обращением к памяти. Однако есть отклонение от классической CISC-архитектуры: широко используется работа с регистрами, число регистров (регистровое ОЗУ), в зависимости от модели микроконтроллера, варьируется от 232 до 1500 (в частности 80296SA имеет 512 регистров).
2.6 Работа с внешними и внутренними устройствами
Стандартные I/O порты. 80296SA имеет четыре 8-битных I/O порта.
Все порты могут работать на вход и на выход. Порты 1-3 – это стандартные порты ввода/вывода с индивидуальным выбором специальных сигналов. Порт 4 – также является стандартным портом ввода/вывода, но обладает повышенной пропускной способностью.
Последовательный порт имеет один синхронный режим (Mode0) и три асинхронных (1, 2 и 3). Асинхронные режимы полностью дуплексные, т.е. они могут передавать и принимать данные одновременно. Приемник буферизован так, что прием второго байта может начаться до считывания первого. Передатчик также дважды буферизован. Наиболее общее использование синхронного Режима 0 — расширение возможностей устройств ввода-вывода, использующих регистры сдвигов. Режим 1 - стандартный асинхронный режим, используемый для нормальных последовательных коммуникаций. Структура данных для режима 1 состоит из 10 бит: стартовый, 8 бит данных (LSB первый) и стоповый бит. Если передача бита четности разрешена (PEN=1), бит дополнения до четности посылается вместо восьмого бита данных. Режимы 2 и 3 - девятибитные режимы общего пользования для межпроцессорных коммуникаций. Структура данных, используемых в этих режимах, состоит из 11 бит: стартовый, 9 бит данных (LSB первый) и стоповый бит. Устройства, работающие в режиме 2, будут вырабатывать прерывание при приеме только тогда, когда девятый информационный бит будет установлен. Устройства, работающие в режиме 3, всегда будут вырабатывать прерывание при приеме. Режим 3 позволяет передавать 8 информационных бит плюс бит дополнения до четности.
3 СРАВНЕНИЕ МИКРОКОНТРОЛЛЕРОВ INTEL MCS-296 И FUJITSU MB90
Данные микроконтроллеры имеют сходные области применения, однако в Fujitsu упор делается на ускорение вычислений, а в Intel — на стабильность работы устройства.
Максимальная частота работы выше у микроконтроллеров Intel 296 – 50 МГц.
Fujitsu имеет больший объем памяти, чем Intel: 64 Мб (по сравнению с 6 Мб у 80296SA), в свою очередь микроконтроллеры Intel имеют гораздо больше РОН.
В Fujitsu максимальная скорость выполнения команды — около 68 нс при частоте 4 МГц, его производительность — 3,6 миллиона операций. Это меньше, чем у микроконтроллера Intel, выполняющего максимум 16 миллионов простейших операций сложения при частоте 50 МГц.
Микроконтроллеры MCS-296 имеют более сложную архитектуру и более высокую скорость передачи данных за счет наличия двух шин — адреса и данных, в Fujitsu лишь одна внутренняя шина.
В Fujitsu предусмотрено больше способов адресации — 23 по сравнению с 6 в Intel. Это позволяет найти наиболее подходящий способ адресации в зависимости от поставленной задачи.
Fujitsu имеет больше возможностей для работы с внешними устройствами, чем Intel (имеет больше портов ввода/вывода, а также интерфейсы CAN, DTP, I2C).
Микроконтроллеры Intel 296 не имеют встроенного АЦП, в то время как Fujitsu имеют производительный встроенный преобразователь (на обработку тратится 3 мкс).
Микроконтроллеры Intel выпускаются в различных конфигурациях устойчивости к температурам, поэтому их можно применять в более широком температурном диапазоне.
Среднее энергопотребление у MB90 ниже, чем у MCS-296 (40 мА и 150 мА), но вторые имеют режим POWER DOWN с потреблением 0,1 мкА, в то время как соответствующий режим Fujitsu имеет потребление 1 мкА.
11.Fujitsu имеют более мощную и функциональную систему таймеров, чем Intel.
Итог: при сравнении оказалось, что, в общем, микроконтроллеры Intel 296 обладают большей производительностью, чем Fujitsu MB90. Кроме того, серия MCS-296 имеет более низкую стоимость. Поэтому использование микроконтроллеров Intel 296 предпочтительнее. Однако, контроллеры Fujitsu в некоторых случаях удобнее в использовании за счет большого количества способов адресации, памяти и встроенного АЦП.
ЛИТЕРАТУРА
Fujitsu Semiconductor Datasheet «MB90470 F2MC-16LX Microcontrollers hardware manual»
80296SA Microcontrollers User’s Manual
«Практическое руководство по применению 16-разрядных микроконтроллеров Intel MCS-196/296 во встроенных системах управления» Козаченко В.Ф. М.:ЭКОМ, 1997. -500с., илл
http://www.ce.cctpu.edu.ru/msclub/LITERATU/gusev/
http://www.gaw.ru/html.cgi/txt/publ/micros/phuton6.htm
http://www.gaw.ru/html.cgi/txt/ic/Fujitsu/micros/mb90/MB90385.htm