Datasheet

290
8011O–AVR–07/10
ATmega164P/324P/644P
23.8.16 ATmega644P Boot Loader Parameters
In Table 23-13 through Table 23-15, the parameters used in the description of the Self-Programming are given.
Note: 1. The different BOOTSZ Fuse configurations are shown in Figure 23-2 on page 279.
Note: 1. For details about these two section, see ”NRWW – No Read-While-Write Section” on page 277 and ”RWW – Read-While-
Write Section” on page 277.
Note: 1. Z0: should be zero for all SPM commands, byte select for the (E)LPM instruction.
See ”Addressing the Flash During Self-Programming” on page 281 for details about the use of Z-pointer during Self-
Programming.
Table 23-13. Boot Size Configuration
(1)
BOOTSZ1 BOOTSZ0 Boot Size Pages
Application
Flash Section
Boot Loader
Flash Section
End Application
Section
Boot Reset
Address
(Start Boot
Loader Section)
1 1 512 words 4 0x0000 - 0x7DFF 0x7E00 - 0x7FFF 0x7DFF 0x7E00
1 0 1024 words 8 0x0000 - 0x7BFF 0x7C00 - 0x7FFF 0x7BFF 0x7C00
0 1 2048 words 16 0x0000 - 0x77FF 0x7800 - 0x7FFF 0x77FF 0x7800
0 0 4096 words 32 0x0000 - 0x6FFF 0x7000 - 0x7FFF 0x6FFF 0x7000
Table 23-14. Read-While-Write Limit
(1)
Section Pages Address
Read-While-Write section (RWW) 224 0x0000 - 0x6FFF
No Read-While-Write section (NRWW) 32 0xF000 - 0x7FFF
Table 23-15.
Explanation of different variables used in Figure 23-3 on page 281 and the mapping to the Z-pointer
Variable
Correspondi
ng
Z-value Description
(1)
PCMSB 14
Most significant bit in the Program Counter. (The Program Counter is 15 bits
PC[14:0])
PAG EM SB 7
Most significant bit which is used to address the words within one page (128
words in a page requires seven bits PC [6:0]).
ZPCMSB Z15
Bit in Z-pointer that is mapped to PCMSB. Because Z0 is not used, the ZPCMSB
equals PCMSB + 1.
ZPAGEMSB Z8
Bit in Z-pointer that is mapped to PCMSB. Because Z0 is not used, the
ZPAGEMSB equals PAGEMSB + 1.
PCPAGE PC[14:7] Z15:Z7 Program Counter page address: Page select, for Page Erase and Page Write
PCWORD PC[6:0] Z7:Z1
Program Counter word address: Word select, for filling temporary buffer (must be
zero during Page Write operation)