circuitcellar.com
Magazine Support   Digital Library   Products & Services   Suppliers Directory 
 
 





 

Issue 163 February 2004
The Growth of the Atmel AVR Family



INSTRUCTION SET

The RISC instruction set is broken into five areas: arithmetic and logic, branch, data movement, bit manipulation, and CPU control. The instructions that manipulate data use either direct addressing or indirect addressing. The former is to a working register, I/O or extended I/O register, or the SRAM. The latter is referenced by a 16-bit register, 16-bit register with offset, or 16-bit register with a pre-execution decrement or a post-execution increment of the register.

The instructions that manipulate the program counter load a new address either directly or indirectly (from a working register pair). When instructions deal with retrieving from or storing to the program memory (flash memory), the 16-bit register pair Z is used. Because program addresses are word-sized (16 bits), Z’s LSB indicates which of the bytes within the word to deal with.

Most operations that deal with two registers can use any of the 32 working registers (0–31). The operations that include a constant (0–255) must use the upper 16 working registers (16–31). For those devices with a hardware multiply, the result of an 8-bit multiplication with two working registers is 16 bits. The 16-bit result is placed in working register pair R0:R1. Branch instructions have a relative offset of 7 bits (63 to –64). Relative jumps and calls use a 12-bit offset (2047 to –2048). Indirect operations use one of the 16-bit register pairs X, Y, or Z (26:27, 28:29, or 30:31); therefore, they can cover a 64-KB address range. For devices with a larger address space, the EIND register in extended I/O space holds the upper bits of an extended indirect operation.

A large group of the instructions deals with bit manipulation and branching based on the outcome of an arithmetic, logic, or manipulation operation. This is ideal for control applications and makes tight code possible. For a more detailed description of the AVR’s innards, refer to my December 1998 column, “Learning to Fly with Atmel’s AVR,” (Circuit Cellar 101).

BRANCHING OUT

It wasn’t so long ago that the first AT90S part made its way onto the scene, followed by the ATiny and ATmega series. Today, the success of the AVR core is a reflection of the growing AVR family; it has enabled the product line to branch out in many directions.

The AVR core can be found in FPSLIC, the 5000- to 40,000-gate FPGA. It is also used in the DVD/CD storage chipsets (along with the ARM micro). Wireless support comes from the SmartRF series of AVR MicroTransmitters and Micro-Transceivers. The secureAVR microcontrollers include a crypto-coprocessor for secure encryption and authorization functions. A range of USB controllers use the AVR core supporting full-speed USB 2.0. The ATmega series has expanded and now includes AVR micros with built-in LCD controller/drivers.

FPSLIC

You may remember Atmel’s 2001 Design Logic FPSLIC contest. The AVR core in this SRAM-based FPGA gives your design a high degree of system level integration. The FPGA macro library has plenty of custom peripherals, which help augment the feature-packed fixed peripherals of the AVR micro. An import feature of the FPGA is the internal interrupt architecture allowing rapid response to that circuitry. A JTAG interface provides extensive on-chip debug support and boundary scan capabilities to the AVR ports.

The 3- to 3.6-V operating voltage assures low-power consumption while being 5-V I/O tolerant. Oscillator speeds to 40 MHz can provide a throughput of up to 30 MIPS. Both instruction code and configuration is loaded from EEPROM at power-up. The core’s cache logic also allows for some dynamic (no data loss) configuration changes. FPSLIC can handle compute-intensive arithmetic functions such as those used in filters and transforms.

DVD/CD STORAGE CHIPSETS

Let’s face it, eight-tracks are dead. (Although some people say they never existed. When my son Kris asked why some of my records had this little plastic doohickey in the large hole, I knew I was teetering on the edge of being labeled Cro-Magnon.) The compact disk media has officially stolen the show.

Even the 12" laserdisc is nothing but junk because DVD formats push the envelope of storage. A DVD/CD ATAPI controller, servo controller, laser power controller, amps, and pre-amps are necessary to provide compact audio and video enjoyment. The AVR core is used in Atmel’s DVD/CD ATAPI chipset to perform internal data path and buffer management control.

SmartRF

Adding high-performance PLL-based RF circuitry to the AVR core creates a convenient and cost-sensitive solution for wireless control and telemetry. The transmitter solution has ultra-low shutdown current until a button is pressed. The microcontroller controls power output while the PLL uses the crystal to maintain a stable carrier.

The transceiver solution brings secure communication allowing handshaking procedures. Its flexible configuration covers a best fit for bandwidth, selectivity, immunity, and range. The RF receiver can supply a wake-up signal to the microcontroller for power-conserving measures when idle. Covering the 400- to 950-MHz bands, the SmartRF data throughput can reach 64 kbps.