Дизайнер | Freescale Semiconductor |
---|---|
Биты | 8 бит / 16 бит |
Дизайн | CISC |
Кодирование | Переменная |
Порядок байтов | Большой |
Регистры | |
8 |
68HC12 (6812 или HC12 для краткости) является микроконтроллер семья из Freescale Semiconductor. Первоначально представленная в середине 1990-х годов, эта архитектура является усовершенствованием Freescale 68HC11. Программы, написанные для HC11, обычно совместимы с HC12, у которого есть несколько дополнительных инструкций. Первые производные 68HC12 имели максимальную частоту шины 8 МГц и объем флэш-памяти до 128 КБ.
Как и 68HC11, 68HC12 имеет два 8-битных аккумулятора A и B (называемых одним 16-битным аккумулятором, D, когда A и B каскадно соединены, чтобы обеспечить выполнение операций с 16 битами ), два 16-битных регистра X и Y, 16-разрядный программный счетчик, 16-разрядный указатель стека и 8-разрядный регистр кода состояния. В отличие от 68HC11 процессор имеет 16-битные внутренние пути передачи данных.
68HC12 дополняет и заменяет небольшое количество инструкций 68HC11 новыми формами, близкими к процессору 6809. Что еще более важно, он изменяет кодировки инструкций, чтобы они были намного более плотными, и добавляет множество 6809-подобных функций индексации, некоторые с еще большей гибкостью. В результате размер кода обычно на 30% меньше.
Начиная с 2000 года семейство было расширено за счет введения производных MC9S12, которые имеют скорость шины до 25 МГц и размер флэш-памяти до 512 КБ.
MC9S12NE64 был введен Freescale в сентябре 2004 года, претендующие на «первой в отрасли однокристальный быстрого Ethernet флэш - микроконтроллер.» Он оснащен процессором HCS12 25 МГц, 64 КБ FLASH EEPROM, 8 КБ ОЗУ и контроллером Ethernet 10/100 Мбит / с.
MC9S12XDP512, которая была введена в 2004 году имеет скорость шины 40 МГц и периферийный сопроцессор, известный как XGATE который позволяет некоторые задачи, которые будут выгружены из ЦП. ЦП производной от S12X также имеет несколько новых инструкций для повышения производительности.
Freescale анонсировала MC9S12XEP100 в мае 2006 года, чтобы расширить семейство S12X до скорости шины 50 МГц и добавить блок защиты памяти (на основе сегментации ) и аппаратную схему для обеспечения эмуляции EEPROM.
Продукты HCS12 содержат один процессор, а HCS12X - дополнительный периферийный процессор XGATE.
Семейство S12X предлагает два основных метода для адресации более 64 Кбайт.
Сопроцессор XGATE - это 16-битный RISC-процессор, работающий на частоте в два раза превышающей тактовую частоту основной шины. Он разгружает ядро S12X, обрабатывая только прерывания, и не запускает фоновый цикл. Первые версии XGATE не позволяют прерываниям с более высоким приоритетом упреждать обрабатываемое в настоящее время прерывание, но «XGATEV3», представленный в 9S12XEP100 (и других), позволяет это. S12X может запускать программные прерывания на ядре XGATE и наоборот. Реализована система семафоров, позволяющая ядрам S12X и XGATE синхронизировать доступ к периферийным устройствам.
Обычно код XGATE копируется в ОЗУ при запуске устройства, а затем выполняется из ОЗУ для повышения скорости. XGATE имеет частичное адресное пространство размером 64 КБ без подкачки. Регистры имеют общие адреса, но флэш-память и ОЗУ находятся по разным адресам между ядрами. (Более подробную информацию см. В таблице данных.)