Freescale 68HC12

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 02:29, 6 декабря 2016.
68HC12
Дизайнер Freescale Semiconductor
Биты 8-bit/16-bit
Дизайн CISC
Кодирование Variable
Порядок байтов Big
Регистры
8

Freescale 68HC12 (6812 или HC12 для краткости) - это микроконтроллер семейства Freescale Semiconductor. Первоначально введенный в середине 1990-х годов, архитектура - это усиление Freescale 68HC11 . Программы, написанные для HC11, как правило, совместимы с HC12, которая имеет несколько дополнительных инструкций. Первые производные 68HC12 имели максимальную скорость передачи 8 МГц и флэш-память размером до 128 Кбайт[1].

Архитектура 68HC12

Как и 68HC11, 68HC12 имеет два 8-битных аккумулятора А и В (называемый единственным 16-разрядным аккумулятором, D, когда A и B расположены каскадом, чтобы обеспечить операции, включающие 16 бит), два 16-битных регистров X и Y, 16-битный счетчик программы, 16-битный указатель стека и 8-разрядный Condition Code Register. В отличие от 68HC11 процессор имеет 16-битные внутренние каналы передачи данных.

68HC12 добавляет и заменяет небольшое количество 68HC11 инструкции с новыми формами, которые ближе к 6809 процессорам. Что еще более важно это изменяет кодировки инструкции, чтобы быть намного более компактным и добавляет множество 6809 как индексация функций, некоторых еще с большей гибкостью. Конечный результат состоит в том, что размеры кода обычно на 30% меньше.

Производные HCS12 / MC9S12

Начиная с 2000 года семья была расширена с введением производных MC9S12, которые имеют скорость шины до 25 МГц и размеры флэш-памяти до 512 Кбайт.

MC9S12NE64 был введен Freescale в сентябре 2004 года, претендуя на роль "первого в отрасли однокристальных fast-Ethernet флэш-микроконтроллеров." Он имеет CPU HCS12 на 25 МГц, 64 КБ флэш-памяти EEPROM, 8 КБ оперативной памяти, и Ethernet контроллер 10/100 Мбит/с.

Производные MC9S12X

MC9S12XDP512 который был введен в 2004 году имеет скорость шины 40 МГц и периферийный сопроцессор, известный как XGATE, который позволяет, чтобы некоторые задачи были разгружены от процессора. Процессор S12X также включает в себя несколько новых инструкций для увеличения производительности.

Freescale объявил о MC9S12XEP100 в мае 2006, чтобы далее расширить семью S12X до частоты шины на 50 МГц и добавить модуль защиты памяти (на основе сегментации) и схему аппаратных средств для обеспечения эмулированной EEPROM.

HCS12 продукты содержат один процессор, HCS12X имеет дополнительный периферийный процессор XGATE.

Семейство S12X предлагают два основных способа адресации более 64 Кбайт.

  • Области страничной памяти в локальной карте на 64 Кбайта: PPAGE для разбитых на страницы данных программы, RPAGE для страничной памяти, EPAGE для разбитого на страницы EEPROM/flash.
  • Глобальная адресация разрешает доступ к любым адресам в адресном пространстве на 8 Мбайт. GPAGE используется в сочетании со специальными кодами операций. (gldaa и т.д.).

XGATE

Сопроцессор XGATE - 16-разрядный процессор RISC, работает на удвоенной основной частоте шины. Это разгружает работу ядра S12X, только обрабатывая прерывания и не выполняет фоновый цикл. Первые версии XGATE не допускают более высокие приоритетные прерывания. S12X может инициировать программные прерывания на ядре XGATE и наоборот. Система семафоров реализована, чтобы позволить S12X и ядрам XGATE синхронизировать доступ к периферийным устройствам.

Обычно код XGATE скопирован в RAM при запуске устройства и затем выполнен от RAM для преимущества скорости. У XGATE есть частичное 64-килобайтовое адресное пространство без разбивки на страницы. Регистры обмениваются адресами, но флэш-память и RAM появляются в различных адресах между ядрами[1].

Примечания

  1. 1,0 1,1 Freescale 68HC12 [Электронный ресурс] : Материал из Википедии — свободной энциклопедии: — Режим доступа: https://en.wikipedia.org/wiki/Freescale_68HC12