What is really remarkable is the true low power consumption by these devices when idling as well as when they are delivering processing power. These devices can retain data available on the system RAM at current levels of as low as 0.1 micro Amp, 0.8 micro amp real time clock mode and delivers full processing power at 250 micro amps per MIP. The family delivers 16 bit RISC MIPS from 8 to about 25 for a range of applications. Thus embedded systems, particularly the portable types that use battery power can easily live on that kind of power for a long time.
The ADC and the DAC devices provide interface with the analog world. Timers both real time and general purpose can provide various timing requirements of an embedded system. Watch dog timers make sure there are no latch ups in the software operation. Flash memory controller, DMA controller control on board resources. LCD controller, when available on the chip provide interface to LCD displays. Digital I/O and USART devices take care of communication with the external world. The USART device may be available as an UART, UART configured for SPI communication or a UART configured for I2C communication. Hardware multipliers in some of the devices can ease calculations of numbers including scaling etc that are frequently required in instrumentation designs. A JTAG access helps development, during the debug phase and field maintenance too.
Architecturally all the resources are connected via a system address bus and a system data bus in a classic von Neumann fashion. While the data bus is 16 bit connecting Flash, memory or ROM/OTP resources an adaptor scales it down to 8 bit operation for connecting with the devices on-board. Thus all these devices are straight memory mapped. The flexible interrupt structure helps implement real-time monitoring and control quite easy to implement. The programming model is that of a linear space that includes the special function registers (The PC, SP and so on), general purpose registers, the peripherals ( both 8 and 16 bit), memory resources and interrupt vectors. SFR occupy the lower end of addresses while the top end is occupied by the interrupt vectors. Besides the ALU there are 16 registers of which two are assigned to the Program counter (PC) and the Stack Pointer (SP) and a status register. Couple of registers does dual duty as constant generator 1 & 2. The rest are fully general purpose registers.