
18
AT90PWM216/316 [DATASHEET]
7710H–AVR–07/2013
The lower 768 data memory locations address both the Register File, the I/O memory, Extended I/O memory, and
the internal data SRAM. The first 32 locations address the Register File, the next 64 location the standard I/O
memory, then 160 locations of Extended I/O memory, and the next 512 locations address the internal data SRAM.
The five different addressing modes for the data memory cover: Direct, Indirect with Displacement, Indirect, Indi-
rect with Pre-decrement, and Indirect with Post-increment. In the Register File, registers R26 to R31 feature the
indirect addressing pointer registers.
The direct addressing reaches the entire data space.
The Indirect with Displacement mode reaches 63 address locations from the base address given by the Y- or Z-
register.
When using register indirect addressing modes with automatic pre-decrement and post-increment, the address
registers X, Y, and Z are decremented or incremented.
The 32 general purpose working registers, 64 I/O Registers, 160 Extended I/O Registers, and the 512 bytes of
internal data SRAM in the AT90PWM216/316 are all accessible through all these addressing modes. The Register
Figure 5-2.
Data Memory Map
5.2.1
SRAM Data Access Times
This section describes the general access timing concepts for internal memory access. The internal data SRAM
access is performed in two clk
Figure 5-3.
On-chip Data SRAM Access Cycles
32 Registers
64 I/O Registers
Internal SRAM
(1024 x 8)
0x0000 - 0x001F
0x0020 - 0x005F
0x04FF
0x0060 - 0x00FF
Data Memory
160 Ext I/O Reg.
0x0100
clk
WR
RD
Data
Address
Address valid
T1
T2
T3
Compute Address
Read
Wr
ite
CPU
Memory Access Instruction
Next Instruction