17
AT90PWM216/316 [DATASHEET]
7710H–AVR–07/2013
5.
Memories
This section describes the different memories in the AT90PWM216/316. The AVR architecture has two main mem-
ory spaces, the Data Memory and the Program Memory space. In addition, the AT90PWM216/316 features an
EEPROM Memory for data storage. All three memory spaces are linear and regular.
5.1
In-System Reprogrammable Flash Program Memory
The AT90PWM216/316 contains 16K bytes On-chip In-System Reprogrammable Flash memory for program stor-
age. Since all AVR instructions are 16 or 32 bits wide, the Flash is organized as 8K x 16. For software security, the
Flash Program memory space is divided into two sections, Boot Program section and Application Program section.
The Flash memory has an endurance of at least 10,000 write/erase cycles. The AT90PWM216/316 Program
Counter (PC) is 13 bits wide, thus addressing the 16K program memory locations. The operation of Boot Program
section and associated Boot Lock bits for software protection are described in detail in
“Boot Loader Support –description on Flash programming in SPI or Parallel programming mode.
Constant tables can be allocated within the entire program memory address space (see the LPM – Load Program
Memory.
Figure 5-1.
Program Memory Map
5.2
SRAM Data Memory
Figure 5-2 shows how the AT90PWM216/316 SRAM Memory is organized.
The AT90PWM216/316 is a complex microcontroller with more peripheral units than can be supported within the
64 locations reserved in the Opcode for the IN and OUT instructions. For the Extended I/O space from 0x60 - 0xFF
in SRAM, only the ST/STS/STD and LD/LDS/LDD instructions can be used.
0x0000
0x1FFF
Program Memory
Application Flash Sec
tion
Boot Flash S
ection