27
AT45DB161B
2224G–DFLSH–5/03
Figure 2. Algorithm for Randomly Modifying Data
Notes: 1. To preserve data integrity, each page of a DataFlash sector must be updated/rewritten at least once within every 10,000
cumulative page erase/program operations.
2. A Page Address Pointer must be maintained to indicate which page is to be rewritten. The Auto Page Rewrite command
must use the address specified by the Page Address Pointer.
3. Other algorithms can be used to rewrite portions of the Flash array. Low-power applications may choose to wait until 10,000
cumulative page erase/program operations have accumulated before rewriting all pages of the sector. See application note
AN-4 (“Using Atmel’s Serial DataFlash”) for more details.
Sector Addressing
PA11 PA10 PA9 PA8 PA7 PA6 PA5 PA4 PA3 Sector
0 0 0 000000 0
0 0 0 0XXXXX 1
0 0 0 1XXXXX 2
0 0 1 0XXXXX 3
• • • •••••• •
• • • •••••• •
• • • •••••• •
1 1 0 0XXXXX 13
1 1 0 1XXXXX 14
1 1 1 0XXXXX 15
1 1 1 1XXXXX 16
START
MAIN MEMORY PAGE
TO BUFFER TRANSFER
(53H, 55H)
INCREMENT PAGE
ADDRESS POINTER
(2)
AUTO PAGE REWRITE
(2)
(58H, 59H)
END
provide address of
page to modify
If planning to modify multiple
bytes currently stored within
a page of the Flash array
MAIN MEMORY PAGE PROGRAM
THROUGH BUFFER
(82H, 85H)
BUFFER WRITE
(84H, 87H)
BUFFER TO MAIN
MEMORY PAGE PROGRAM
(83H, 86H)