CompactRISC

Семейство архитектур набора команд

CompactRISC — это семейство архитектур набора инструкций от National Semiconductor . Архитектуры разработаны в соответствии с принципами вычисления сокращенного набора инструкций и в основном используются в микроконтроллерах . [1] Подархитектуры этого семейства — 16-битные CR16 и CR16C и 32-битная CRX . [2]

Архитектура

Особенности семейства CR16: компактные реализации (менее 1 мм2 при 250 нм ), адресация 2 МБ (2 21 ), частоты до 66 МГц, аппаратный умножитель для 16-битных целых чисел. [1]

Он имеет сложные инструкции, такие как манипуляция битами, сохранение/восстановление и добавление/извлечение нескольких регистров с помощью одной команды. [1]

CR16 имеет 16 регистров общего назначения по 16 бит и регистры адреса шириной 21 бит. Имеется 8 специальных регистров: счетчик программ, указатель стека прерываний ISP, регистр адреса вектора прерываний INTBASE, регистр состояния PSR, регистр конфигурации и 3 отладочных регистра. Регистр состояния реализует флаги: C, T, L, F, Z, N, E, P, I. [1]

Инструкции кодируются в двухадресной форме в нескольких форматах, обычно они имеют 16-битную кодировку, но есть два формата для средних немедленных инструкций длиной 32 бита. Типичная длина опкода составляет 4 бита (биты 9–12 большинства типов кодирования. Основные форматы кодирования:

  • Регистр-регистр,
  • Короткое 5-битное непосредственное значение для регистрации,
  • Средний немедленный 16-битного значения для регистрации (32-битное кодирование),
  • Загрузка/хранение относительно с коротким 5-битным смещением (2-битный код операции),
  • Загрузка/хранение относительно со средним 18-битным смещением (32-битное кодирование, 2-битный код операции). [1]

CR16C поставляется с другим форматом кодирования кода операции, имеет 23–32-битные адресные регистры и предоставляет два 32-битных регистра общего назначения. [3]

CR16 реализует ловушки и прерывания. Реализации CR16 имеют трехступенчатый конвейер: выборка, декодирование, выполнение. [1]

Продукция CR16

CR16 использовался в нескольких микроконтроллерах National Semiconductor, а с 2001 года появились интегрированные микроконтроллеры со встроенной флэш-памятью. [4] [5] С 2007 года IP на основе CR16 стала доступна для лицензирования [6]

Ссылки

  1. ^ abcdef Брунванд, Эрик. "National Semiconductor CR16, компактный RISC-процессор, базовая ISA и далее" (PDF) . CS/EE 3710 . Университет Юты . Получено 3 декабря 2016 г. .
  2. ^ фон Хаген, Уильям (2011). Полное руководство по GCC. Апресс. п. 422. ИСБН 9781430202196.
  3. ^ «Справочное руководство программиста CR16C» (PDF) .
  4. ^ Грэм, Джин (2001-02-22). "16-битный микроконтроллер National Semi интегрирует флэш-память и аналоговую память". EETimes . Получено 3 декабря 2016 г.
  5. ^ "16-битный RISC-микроконтроллер National рекламирует высоконадежную флэш-память". EETimes. 2001-03-13 . Получено 3 декабря 2016 г.
  6. ^ Хаммершмидт, Кристоф (21.02.2007). "NatSemi использует IPextreme для перепродажи встроенного IP". EETimes . Получено 3 декабря 2016 г.
  • Встраиваемые микроконтроллеры National Semiconductor (CR16 и COP8 )
  • Страница архитектуры ядра CompactRISC на сайте National Semiconductor (архивная копия от 2007 г.)
  • Справочное руководство программиста CR16B, National Semiconductor, 1997 г.
  • Порт GCC CR16


Взято с "https://en.wikipedia.org/w/index.php?title=CompactRISC&oldid=1194078850"