AT43USB320A_04 ATMEL [ATMEL Corporation], AT43USB320A_04 Datasheet - Page 8

no-image

AT43USB320A_04

Manufacturer Part Number
AT43USB320A_04
Description
Full-speed USB Microcontroller with an Embedded Hub
Manufacturer
ATMEL [ATMEL Corporation]
Datasheet
The General-
purpose
Register File
8
AT43USB320A
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 pro-
grams must initialize the Stack Pointer (SP) in the reset routine (before subroutines or
interrupts are executed). The 10-bit SP is read/write accessible in the I/O space.
The 512-byte data SRAM can be easily accessed through the five different addressing modes
supported in the AVR architecture.
The memory spaces in the AVR architecture are all linear and regular memory maps. A flexi-
ble interrupt module has its control registers in the I/O space with an additional global interrupt
enable bit in the status register. All interrupts have a separate interrupt vector in the interrupt
vector table at the beginning of the program memory. The interrupts have priority in accor-
dance with their interrupt vector position. The lower the interrupt vector address, the higher the
priority.
Table 1. AVR CPU General Purpose Working Register
All register operating instructions in the instruction set have direct and single cycle access to
all registers. The only exception is the five constant arithmetic and logic instructions SBCI,
SUBI, CPI, ANDI, and ORI between a constant and a register, and the LDI instruction for load
immediate constant data. These instructions apply to the second half of the registers in the
register file – R16..R31. The general SBC, SUB, CP, AND, and OR and all other operations
between two registers or on a single register apply to the entire register file.
As shown in Table 1, each register is also assigned a data memory address, mapping them
directly into the first 32 locations of the user Data Space. Although not being physically imple-
mented as SRAM locations, this memory organization provides great flexibility in access of the
registers, as the X-, Y-, and Z-registers can be set to index any register in the file.
Register
R0
R1
R2
..
R13
R14
R15
R16
R17
..
R26
R27
R28
R29
R30
R31
Address
$00
$01
$02
$0D
$0E
$0F
$10
$11
$1A
$1B
$1C
$1D
$1E
$1F
Comment
X-register low byte
X-register high byte
Y-register low byte
Y-register high byte
Z-register low byte
Z-register high byte
1443E–USB–4/04

Related parts for AT43USB320A_04