Note:
The different BOOTSZ Fuse configurations are shown in Figure 29-2.
Table 29-8. Read-While-Write Limit, ATmega640
Section(1)
Pages
224
Address
Read-While-Write section (RWW)
No Read-While-Write section (NRWW)
0x0000 - 0x6FFF
0x7000 - 0x7FFF
32
Note:
1. For details about these two section, see “NRWW – No Read-While-Write Section” on page
319 and “RWW – Read-While-Write Section” on page 319.
Table 29-9. Explanation of different variables used in Figure 29-3 and the mapping to the Z-
pointer, ATmega640
Corresponding
Variable
Z-value(2)
Description(1)
Most significant bit in the Program Counter.
(The Program Counter is 15 bits PC[14:0])
PCMSB
14
6
Most significant bit which is used to address
the words within one page (128 words in a
page requires seven bits PC [6:0]).
PAGEMSB
ZPCMSB
Bit in Z-pointer that is mapped to PCMSB.
Because Z0 is not used, the ZPCMSB equals
PCMSB + 1.
Z15
Bit in Z-pointer that is mapped to PCMSB.
Because Z0 is not used, the ZPAGEMSB
equals PAGEMSB + 1.
ZPAGEMSB
PCPAGE
Z7
Program Counter page address: Page select,
for Page Erase and Page Write
PC[14:7]
PC[6:0]
Z15:Z8
Z7:Z1
Program Counter word address: Word select,
for filling temporary buffer (must be zero
during Page Write operation)
PCWORD
Note:
1. Z0: should be zero for all SPM commands, byte select for the (E)LPM instruction.
2. See “Addressing the Flash During Self-Programming” on page 323 for details about the use of
Z-pointer during Self-Programming.
330
ATmega640/1280/1281/2560/2561
2549L–AVR–08/07