http://www.motorola.com/
Безусловный лидер в области производства 8-разрядных микроконтроллеров,
американская компания MOTOROLA уступает первенство на полях сражений
за 16-разрядные архитектуры японским корпорациям Hitachi и Mitsubishi.
Производимые MOTOROLA 16-разрядные микроконтроллеры представлены
сегодня двумя семействами HC12 и HC16, являясь прямыми потомками
(через линию 8-разрядных HC11) прадедушки MC6800, анонсированного
в 1974 го-ду. МК HC16 и HC12 интересны прежде всего тем, что позволяют
разработчику, имеющему опыт работы с семействами HC05 и HC11, без
дополнительных умственных усилий перейти на 16-разрядную архитектуру
вместе со всем накопленным программным обеспечением.
HC12
Процессор CPU12 повторяет регистровую модель 8-разрядного M68HC11,
имея, в отличие от последнего, внутренние шины 16-бит ширины. Процессорное
ядро содержит 16-разрядный регистр-аккумулятор (регистровая пара
АВ), дополнительный 16-разрядный аккумулятор D, используемый при
некоторых операциях, два 16-разрядных индексных регистра, 16-разрядный
указатель стека и 8-разрядный регистр состояния программы.
К имеющимся способам адресации CPU12 добавляет возможность индексной
адресации по указателю стека, адресации со смещением по регистрам-аккумуляторам,
адресации с пре- и постинкрементом и декрементом (от -8 до +8),
косвенно-индексной адресации с 16-бит смещением (записанным в теле
команды или хранящимся в дополнительном регистре-аккумуляторе).
Система команд процессора, состоящая из 208 команд, включает подмножество
команд HC11, добавляя к ним несколько классов новых инструкций.
Сформирован полный набор команд, поддерживающих 16-бит сдвиговые
и арифметические операции, такие как быстрое знаковое и беззнаковое
умножение 16x16 (3 цикла процессора) и деление 32/16 (12 циклов),
дробное знаковое и беззнаковое деление 16/16, а также умножение
16x16 с накоплением. Появился новый класс инструкций по поддержке
операций нечёткой логики (4 команды), которые заменяют собой целые
по-следовательности обычных команд.
Формат команд составляет от 1 до 6 байт. Большинство команд выполняются
за 1–8 циклов процессора (при внутренней тактовой частоте 8 МГц).
Более 50 команд выполняются за 1 процессорный цикл. 6-байт очередь
команд позволяет заносить в буфер следующую инструкцию во время
выполнения текущей. Основной выигрыш в производительности по сравнению
с HC11 дают повышенная внутренняя тактовая частота, сокращение числа
циклов процессора при выполнении большинства инструкций и, естественно,
использование 16-бит шины данных для загрузки и выполнения команд.
Поскольку счётчик команд ограничен 16 разрядами, объём адресуемой
им памяти составляет только 64 Кбайт, что не так уж и много для
16-разрядного микроконтроллера. Для преодоления этого барьера микроконтроллеры
HC12 имеют встроенную схему переключения страниц памяти. Расширенная
память объёмом до 4 Мбайт доступна через 16-Кбайт выделенное окно.
Особенностью HC12 является наличие встроенного отладчика, с помощью
которого возможно получение доступа к внутренним ресурсам процессора
для внешнего хост-контроллера, отладки программы, задания точек
останова.
К настоящему времени известны две основных модели НС12 — 16-разрядные
микроконтроллеры MC68HC812 и MC68HC916B32, модификации которых отличаются
только наличием и размером встроенного ПЗУ и ОЗУ.
MC68HC812A4, выпускаемый в 112-выводном корпусе, содержит 4 Кбайт
ПЗУ EEPROM, 1 Кбайт ОЗУ, 8-разрядный 8-канальный АЦП, 8-канальный
16-разрядный многофункциональный таймер, сторожевой таймер, 2 канала
асинхронного SCI и 1 канал синхронного SPI.
MC68HC916B32 имеет встроенное FLASH ПЗУ ёмкостью 32 Кбайт, 768
байт EEPROM, 1 Кбайт ОЗУ, 10-разрядный 8-канальный АЦП, 8-канальный
16-разрядный таймер, 8-разрядный 4-канальный ШИМ, по-следовательный
асинхронный, синхронный и CAN интерфейсы.
HC16
В дополнение к регистровой модели CPU11, центральное процессорное
устройство 2 новых 16-разрядных индексных регистра и расширенный
до 16 бит регистр состояния программы. Кроме этого, индексные регистры,
16-разрядные счётчик команд и указатель стека имеют дополнительные
4-разрядные расширения, позволяющие адресовать до 1 Мбайт памяти
программ и данных. Для поддержки быстрых операций сложения с накоплением
дробных чисел MAC в процессорный модуль введён набор из 5 специальных
регистров, включая 36-бит регистр-аккумулятор. При внешней тактовой
частоте 25 МГц цикл MAC требует на выполнение операции всего 480
нс.
Процессор может адресовать либо 1 Мбайт совместной памяти программ
и данных или 2 Мбайт раздельных памяти программ и памяти данных.
В дополнительные способы адресации входят индексная адресация с
постмодификацией и индексная с 16-бит знаковым смещением.
Набор команд включает в себя инструкции НС11, дополнительно поддерживая
полный набор команд 16-бит операций, включая дробное умножение и
деление, а также команд поддержки операций цифровой обработки сигналов
(пересылка, сложение, умножение с накоплением и сдвиг дробных чисел).
Инструкции имеют фиксированную длину 2, 4, 6 байт и выполняются
в большинстве своём за 2–8 циклов процессора. Ряд команд требует
на выполнение несколько большего времени, — это, в частности, инструкции
умножения (10 циклов процессора), целочисленного деления 32/16 (24
цикла), дробного деления 32/16 (38 циклов), умножения с накоплением
(18 циклов для первой операции и 12 для каждой последующей). Трёхступенчатый
конвейер команд осуществляет в течение одного процессорного цикла
занесение, декодирование и выполнение до 3 последовательно идущих
инструкций.
Особенностью HC16 также является наличие встроенных средств для
контроля программы в специальном режиме отладки, позволяющих также
программировать встроенное FLASH ПЗУ.
В настоящее время выпускается более десятка основных моделей 16-разрядных
микроконтроллеров 68HC16, из которых 4 модели имеют встроенное FLASH
ПЗУ объёмом 48 и 96 Кбайт. Емкость внутреннего ОЗУ для МК 68НС16
составляет от 1 до 4 Кб.
Внешняя тактовая частота МК составляет 16 МГц. Самые производительные
модели работают на частоте 20 и 25 МГц.
Все микроконтроллеры имеют встроенный 10-разрядный 6- или 8-канальный
аналогово-цифровой преобразователь.
Таймерный блок, в зависимости от версии, может быть построен на
базе модулей CTM7, GPT и TPU.
Основа CTM7 состоит из двух 16-разрядных free-running таймеров,
на базе которых построены подмодули для реализации различных режимов,
включающих счёт, входной за-хват и выходное сравнение (в общей сложности,
до 10 каналов), 16-разрядную широтно-импульсную модуляцию (2 канала).
Модуль GPT (таймер общего назначения) включает в свой состав 8-разрядный
счётчик событий, 16-разрядный free-running таймер с 8 каналами (3
канала захвата, 4 — совпадения, 1 — захвата и совпадения), и конт-роллеры
ШИМ (2 канала по 16-бит).
Кроме этого, ряд микроконтроллеров имеют в своём составе специализированный
таймерный процессор TPU — довольно сложное устройство, содержащее
блок управления и интерфейса, два 16-разрядных таймера, 16 независимых
каналов (каждый с соответствующим регистром событий для реализации
функций захвата/сравнения). Специальный планировочный блок определяет
порядок обслуживания запросов, поступающих от таймерных каналов
в соответствии с установленным приоритетом.
Для последовательного обмена данными с внешним миром МК 68НС16
используют 2-канальный асинхронный SCI и синхронный SPI.
Микроконтроллеры выпускаются в многовыводных корпусах типа QFP.
Стандартное напряжение питания МК составляет 5 В. Модель MC68C16Z1
может успешно работать и при напряжении 3 В.
Для семейств MC68HC12/16 предлагается разнообразное ПО, включающее
интегрированные отладочные среды, ассемблеры, С-компиляторы, отладчики,
программные симуляторы от множества третьих поставщиков.
На сегодняшний день в ряде крупных городов России сформировано
более 10 учебно-методических и консультационных центров, где можно
получить исчерпывающую техническую информацию относительно продукции
компании.
Создано по материалам Chip
News
|