3.3
AVR Controller
3.3.1 AVR Controller Sub-System
The AVR® controller sub-system consists of the AVR CPU core, its program memory, and a data bus with data memory and
peripheral blocks attached. The receive path also has its user interfaces connected to the data bus.
3.3.2 CPU Core
The main function of the CPU core is to ensure correct program execution. For this reason, the CPU core must be able to
access memories, perform calculations, control peripherals, and handle interrupts.
Figure 3-3. Overview of Architecture
Data Bus 8-bit
ROM
Flash
Program
Memory
Program
Counter
Status and
Control
Interrupt
Unit
SPI
32 x 8
General
Purpose
Registers
Unit
Instruction
Register
Watchdog
Timer
Instruction
Decoder
ALU
Clock
Management
Control Lines
I/O Module 1
I/O Module n
PortN
Data
SRAM
EEPROM
In order to maximize performance and parallelism, the AVR 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 prefetched from the program memory. This concept enables instructions
to be executed in every clock cycle. The program memory is in-system reprogrammable Flash memory and ROM.
The fast-access register file contains 32 × 8-bit general purpose working registers with a single clock cycle access time.
This allows a single-cycle arithmetic and logic unit (ALU) operation. In a typical ALU operation, two operands are output from
the register file, the operation is executed, and the result is stored back in the register file—in one clock cycle.
Six of the 32 registers can be used as three 16-bit indirect address register pointers for data space addressing, enabling
efficient address calculations. One of these address pointers can also be used as an address pointer for lookup tables in the
Flash program memory. Referred to as ‘X,’ ‘Y,’ and ‘Z’ registers, these higher 16-bit function registers are described later in
this section.
ATA8210/ATA8215 [SUMMARY DATASHEET]
15
9344CS–INDCO–09/14