6. AVR CPU
6.1 Features
z 8/16-bit, high-performance Atmel AVR RISC CPU
z 142 instructions
z Hardware multiplier
z 32x8-bit registers directly connected to the ALU
z Stack in RAM
z Stack pointer accessible in I/O memory space
z Direct addressing of up to 16MB of program memory and 16MB of data memory
z True 16/24-bit access to 16/24-bit I/O registers
z Efficient support for 8-, 16-, and 32-bit arithmetic
z Configuration change protection of system-critical features
6.2 Overview
All Atmel AVR XMEGA devices use the 8/16-bit AVR CPU. The main function of the CPU is to execute the code and
perform all calculations. The CPU is able to access memories, perform calculations, control peripherals, and execute
the program in the flash memory. Interrupt handling is described in a separate section, refer to “Interrupts and
Programmable Multilevel Interrupt Controller” on page 29.
6.3 Architectural Overview
In order to maximize performance and parallelism, the AVR CPU uses a Harvard architecture with separate memories
and buses for program and data. Instructions in the program memory are executed with single-level pipelining. While
one instruction is being executed, the next instruction is pre-fetched from the program memory. This enables
instructions to be executed on every clock cycle. For details of all AVR instructions, refer to http://www.atmel.com/avr.
XMEGA A4U [DATASHEET]
9
Atmel-8387H-AVR-ATxmega16A4U-34A4U-64A4U-128A4U-Datasheet_09/2014