Architectural overview – Rainbow Electronics ATmega103L User Manual

Page 7

Advertising
background image

ATmega603/103

7

Architectural Overview

Figure 4. The ATmega603/103 AVR RISC Architecture

The AVR uses a Harvard architecture concept - with separate memories and buses for program and data. The program
memory is accesses with a single level pipeline. While one instruction is being executed, the next instruction is pre-fetched
from the program memory. This concept enables instructions to be executed in every clock cycle. The program memory is
in-system programmable Flash memory. With a few exceptions, AVR instructions have a single 16-bit word format,
meaning that every program memory address contains a single 16-bit instruction.

During interrupts and subroutine calls, the return address program counter (PC) is stored on the stack. The stack is
effectively allocated in the general data SRAM, and consequently the stack size is only limited by the total SRAM size and
the usage of the SRAM. All user programs must initialize the SP in the reset routine (before subroutines or interrupts are
executed). The 16-bit stack pointer SP is read/write accessible in the I/O space.

The 4000 bytes data SRAM can be easily accessed through the five different addressing modes supported in the AVR
architecture.

32K/64K x 16

Program

Memory

Instruction

Register

Instruction

Decoder

Program

Counter

Control Lines

32 x 8

General

Purpose

Registers

ALU

Status

and Test

2K/4K x 8

EEPROM

Peripherals

Data Bus 8-bit

AVR ATmega603/103 Architecture

4K x 8

Data

SRAM

DirectAddressing

IndirectAddressing

Advertising