Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

Архитектура CR16 [ править ]

Особенности семейства 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 имеют трехступенчатый конвейер: Fetch, Decode, Execute. [1]

CR16 продукты [ править ]

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

Ссылки [ править ]

  1. ^ a b c d e f Брунванд, Эрик. «National Semiconductor CR16, компактный процессор RISC, базовая версия ISA и выше» (PDF) . CS / EE 3710 . Университет Юты . Проверено 3 декабря +2016 . CS1 maint: обескураженный параметр ( ссылка )
  2. ^ фон Хаген, Уильям (2011). Полное руководство по GCC . Апресс. п. 422. ISBN. 9781430202196.
  3. ^ "Справочное руководство программиста CR16C" (PDF) .
  4. ^ Грэм, Жанна (2001-02-22). «16-битный микроконтроллер National Semi объединяет аналоговую вспышку» . EETimes . Проверено 3 декабря +2016 . CS1 maint: обескураженный параметр ( ссылка )
  5. ^ "16-битный RISC MCU от National рекламирует высокопрочные вспышки" . EETimes. 2001-03-13 . Проверено 3 декабря +2016 . CS1 maint: обескураженный параметр ( ссылка )
  6. Перейти ↑ Hammerschmidt, Christoph (21.02.2007). «NatSemi использует IPextreme для перепродажи встроенных IP-адресов» . EETimes . Проверено 3 декабря +2016 . CS1 maint: обескураженный параметр ( ссылка )

Внешние ссылки [ править ]

  • National Semiconductor Встроенные микроконтроллеры (CR16 и КС - 8 )
  • Страница CompactRISC Core Architecture на веб-сайте National Semiconductor (архивная копия 2007 г.)
  • Справочное руководство программиста CR16B , National Semiconductor, 1997 г.
  • Порт GCC CR16