HOME

TheInfoList



OR:

CompactRISC is a family of
instruction set architecture In computer science, an instruction set architecture (ISA) is an abstract model that generally defines how software controls the CPU in a computer or a family of computers. A device or program that executes instructions described by that ISA, ...
s from
National Semiconductor National Semiconductor Corporation was an United States of America, American Semiconductor manufacturing, semiconductor manufacturer, which specialized in analogue electronics, analog devices and subsystems, formerly headquartered in Santa Clara, ...
. The architectures are designed according to
reduced instruction set computing In electronics and computer science, a reduced instruction set computer (RISC) is a computer architecture designed to simplify the individual instructions given to the computer to accomplish tasks. Compared to the instructions given to a com ...
principles, and are mainly used in
microcontroller A microcontroller (MC, uC, or μC) or microcontroller unit (MCU) is a small computer on a single integrated circuit. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable input/output peripherals. Pro ...
s. The subarchitectures of this family are the 16-bit CR16 and CR16C and the 32-bit CRX.


Architectures

Features of CR16 family: compact implementations (less than 1 mm2 with 250 nm), addressing of 2 MB (2), frequencies up to 66 MHz, hardware multiplier for 16-bit integers. It has complex instructions such as bit manipulation, saving/restoring and push/pop of several registers with single command. CR16 has 16 general purpose registers of 16 bits, and address registers of 21 bits wide. There are 8 special registers: program counter, interrupt stack pointer ISP, interrupt vector address register INTBASE, status register PSR, configuration register and 3 debug registers. Status register implements flags: C, T, L, F, Z, N, E, P, I. Instructions are encoded in two-address form in several formats, usually they have 16-bit encoding, but there are two formats for medium immediate instructions with length of 32-bit. Typical opcode length is 4 bits (bits 9–12 of most encoding types. Basic encoding formats are: * Register-to-register, * Short 5-bit immediate value to register, * Medium immediate of 16-bit value to register (32-bit encoding), * Load/store relative with short 5-bit displacement (2-bit opcode), * Load/store relative with medium 18-bit displacement (32-bit encoding, 2-bit opcode). CR16C comes with a different opcode encoding format, has 23–32-bit-wide address registers and provides two 32-bit general purpose registers. CR16 implements traps and interrupts. Implementations of CR16 has three-stage pipeline: fetch, decode, execute.


CR16 products

CR16 was used in several National Semiconductor microcontrollers, and since 2001 integrated microcontrollers were available having built-in flash memory. Since 2007 CR16-based IP was available to licensing


References


External links


National Semiconductor Embedded Microcontrollers
(CR16 and COP8)
CompactRISC Core Architecture
page on National Semiconductor website (archived copy from 2007)
CR16B Programmer’s Reference Manual
National Semiconductor, 1997

Microcontrollers {{microcompu-stub