AT45DB161
4
MAIN MEMORY PAGE TO BUFFER TRANSFER: A page
of data can be transferred from the main memory to either
buffer 1 or buffer 2. An 8-bit opcode, 53H for buffer 1 and
55H for buffer 2, is followed by the two reserved bits, 12
address bits (PA11-PA0) which specify the page in main
memory that is to be transferred, and 10 dont care bits.
The CS
pin must be low while toggling the SCK pin to load
the opcode, the address bits, and the dont care bits from
the SI pin. The transfer of the page of data from the main
memory to the buffer will begin when the CS
pin transitions
from a low to a high state. During the transfer of a page of
data (t
XFR
), the status register can be read to determine
whether the transfer has been completed or not.
MAIN MEMORY PAGE TO BUFFER COMPARE: A page
of data in main memory can be compared to the data in
buffer 1 or buffer 2. An 8-bit opcode, 60H for buffer 1 and
61H for buffer 2, is followed by 24 address bits consisting of
the two reserved bits, 12 address bits (PA11-PA0) which
specify the page in the main memory that is to be com-
pared to the buffer, and 10 dont care bits. The loading of
the opcode and the address bits is the same as described
previously. The CS
pin must be low while toggling the SCK
pin to load the opcode, the address bits, and the dont care
bits from the SI pin. On the low-to-high transition of the CS
pin, the 528 bytes in the selected main memory page will
be compared with the 528 bytes in buffer 1 or buffer 2. Dur-
ing this time (t
XFR
), the status register will indicate that the
part is busy. On completion of the compare operation, bit 6
of the status register is updated with the result of the
compare.
Program
BUFFER WRITE: Data can be shifted in from the SI pin
into either buffer 1 or buffer 2. To load data into either
buffer, an 8-bit opcode, 84H for buffer 1 or 87H for buffer 2,
is followed by 14 dont care bits and 10 address bits (BFA9-
BFA0). The 10 address bits specify the first byte in the
buffer to be written. The data is entered following the
address bits. If the end of the data buffer is reached, the
device will wrap around back to the beginning of the buffer.
Data will continue to be loaded into the buffer until a low-to-
high transition is detected on the CS
pin.
BUFFER TO MAIN MEMORY PAGE PROGRAM WITH
BUILT-IN ERASE: Data written into either buffer 1 or buffer
2 can be programmed into the main memory. An 8-bit
opcode, 83H for buffer 1 or 86H for buffer 2, is followed by
the two reserved bits, 12 address bits (PA11-PA0) that
specify the page in the main memory to be written, and 10
additional dont care bits. When a low-to-high transition
occurs on the CS
pin, the part will first erase the selected
page in main memory to all 1s and then program the data
stored in the buffer into the specified page in the main
memory. Both the erase and the programming of the page
are internally self-timed and should take place in a maxi-
mum time of t
EP
. During this time, the status register will
indicate that the part is busy.
BUFFER TO MAIN MEMORY PAGE PROGRAM WITH-
OUT BUILT-IN ERASE: A previously erased page within
main memory can be programmed with the contents of
either buffer 1 or buffer 2. An 8-bit opcode, 88H for buffer 1
or 89H for buffer 2, is followed by the two reserved bits, 12
address bits (PA11-PA0) that specify the page in the main
memory to be written, and 10 additional dont care bits.
When a low-to-high transition occurs on the CS
pin, the
part will program the data stored in the buffer into the spec-
ified page in the main memory. It is necessary that the
page in main memory that is being programmed has been
previously erased. The programming of the page is inter-
nally self-timed and should take place in a maximum time
of t
P
. During this time, the status register will indicate that
the part is busy.
PAGE ERASE: The optional Page Erase command can be
used to individually erase any page in the main memory
array allowing the Buffer to Main Memory Page Program
without Built-in Erase command to be utilized at a later
time. To perform a Page Erase, an opcode of 81H must be
loaded into the device, followed by two reserved bits, 12
address bits (PA11-PA0), and 10 dont care bits. The 12
address bits are used to specify which page of the memory
array is to be erased. When a low-to-high transition occurs
on the CS
pin, the part will erase the selected page to 1s.
The erase operation is internally self-timed and should take
place in a maximum time of t
PE
. During this time, the status
register will indicate that the part is busy.
BLOCK ERASE: A block of eight pages can be erased at
one time allowing the Buffer to Main Memory Page Pro-
gram without Built-in Erase command to be utilized to
reduce programming times when writing large amounts of
data to the device. To perform a Block Erase, an opcode of
50H must be loaded into the device, followed by two
reserved bits, nine address bits (PA11-PA3), and 13 dont
care bits. The nine address bits are used to specify which
block of eight pages is to be erased. When a low-to-high
transition occurs on the CS
pin, the part will erase the
selected block of eight pages to 1s. The erase operation is
internally self-timed and should take place in a maximum
time of t
BE
. During this time, the status register will indicate
that the part is busy.
AT45DB161
5
MAIN MEMORY PAGE PROGRAM: This operation is a
combination of the Buffer Write and Buffer to Main Memory
Page Program with Built-in Erase operations. Data is first
shifted into buffer 1 or buffer 2 from the SI pin and then pro-
grammed into a specified page in the main memory. An
8-bit opcode, 82H for buffer 1 or 85H for buffer 2, is fol-
lowed by the two reserved bits and 22 address bits. The 12
most significant address bits (PA11-PA0) select the page in
the main memory where data is to be written, and the next
10 address bits (BFA9-BFA0) select the first byte in the
buffer to be written. After all address bits are shifted in, the
part will take data from the SI pin and store it in one of the
data buffers. If the end of the buffer is reached, the device
will wrap around back to the beginning of the buffer. When
there is a low-to-high transition on the CS
pin, the part will
first erase the selected page in main memory to all 1s and
then program the data stored in the buffer into the specified
page in the main memory. Both the erase and the program-
ming of the page are internally self-timed and should take
place in a maximum of time t
EP
. During this time, the status
register will indicate that the part is busy.
AUTO PAGE REWRITE: This mode is only needed if multi-
ple bytes within a page or multiple pages of data are
modified in a random fashion. This mode is a combination
of two operations: Main Memory Page to Buffer Transfer
and Buffer to Main Memory Page Program with Built-in
Erase. A page of data is first transferred from the main
memory to buffer 1 or buffer 2, and then the same data
(from buffer 1 or buffer 2) is programmed back into its origi-
nal page of main memory. An 8-bit opcode, 58H for buffer 1
or 59H for buffer 2, is followed by the two reserved bits, 12
address bits (PA11-PA0) that specify the page in main
memory to be rewritten, and 10 additional dont care bits.
When a low-to-high transition occurs on the CS
pin, the
part will first transfer data from the page in main memory to
a buffer and then program the data from the buffer back
into same page of main memory. The operation is internally
self-timed and should take place in a maximum time of t
EP
.
During this time, the status register will indicate that the
part is busy.
If a sector is programmed or reprogrammed sequentially
page by page, then the programming algorithm shown in
Figure 1 on page 17 is recommended. Otherwise, if multi-
ple bytes in a page or several pages are programmed
randomly in a sector, then the programming algorithm
shown in Figure 2 on page 18 is recommended.
STATUS REGISTER: The status register can be used to
determine the devices ready/busy status, the result of a
Main Memory Page to Buffer Compare operation, or the
device density. To read the status register, an opcode of
57H must be loaded into the device. After the last bit of the
opcode is shifted in, the eight bits of the status register,
starting with the MSB (bit 7), will be shifted out on the SO
pin during the next eight clock cycles. The five most signifi-
cant bits of the status register will contain device
information, while the remaining three least significant bits
are reserved for future use and will have undefined values.
After bit 0 of the status register has been shifted out, the
sequence will repeat itself (as long as CS
remains low and
SCK is being toggled) starting again with bit 7. The data in
the status register is constantly updated, so each repeating
sequence will output new data.
Ready/Busy status is indicated using bit 7 of the status reg-
ister. If bit 7 is a 1, then the device is not busy and is ready
to accept the next command. If bit 7 is a 0, then the device
is in a busy state. The user can continuously poll bit 7 of the
status register by stopping SCK once bit 7 has been output.
The status of bit 7 will continue to be output on the SO pin,
and once the device is no longer busy, the state of SO will
change from 0 to 1. There are eight operations which can
Block Erase Addressing
PA11 PA10 PA9 PA8 PA7 PA6 PA5 PA4 PA3 PA2 PA1 PA0 Block
000000000XXX0
000000001XXX1
000000010XXX2
000000011XXX3
111111100XXX508
111111101XXX509
111111110XXX510
111111111XXX511
AT45DB161
6
cause the device to be in a busy state: Main Memory Page
to Buffer Transfer, Main Memory Page to Buffer Compare,
Buffer to Main Memory Page Program with Built-in Erase,
Buffer to Main Memory Page Program without Built-in
Erase, Page Erase, Block Erase, Main Memory Page Pro-
gram, and Auto Page Rewrite.
The result of the most recent Main Memory Page to Buffer
Compare operation is indicated using bit 6 of the status
register. If bit 6 is a 0, then the data in the main memory
page matches the data in the buffer. If bit 6 is a 1, then at
least one bit of the data in the main memory page does not
match the data in the buffer.
The device density is indicated using bits 5, 4, and 3 of the
status register. For the AT45DB161, the three bits are 1, 0,
and 1. The decimal value of these three binary bits does
not equate to the device density; the three bits represent a
combinational code relating to differing densities of Serial
DataFlash devices, allowing a total of eight different density
configurations.
Read/Program Mode Summary
The modes listed above can be separated into two groups
modes which make use of the Flash memory array
(Group A) and modes which do not make use of the flash
memory array (Group B).
Group A modes consist of:
1. Main Memory Page Read
2. Main Memory Page to Buffer 1 (or 2) Transfer
3. Main Memory Page to Buffer 1 (or 2) Compare
4. Buffer 1 (or 2) to Main Memory Page Program with
Built-in Erase
5. Buffer 1 (or 2) to Main Memory Page Program
without Built-in Erase
6. Page Erase
7. Block Erase
8. Main Memory Page Program
9. Auto Page Rewrite
Group B modes consist of:
1. Buffer 1 (or 2) Read
2. Buffer 1 (or 2) Write
3. Status Register Read
If a Group A mode is in progress (not fully completed) then
another mode in Group A should not be started. However,
during this time in which a Group A mode is in progress,
modes in Group B can be started.
This gives the serial DataFlash the ability to virtually
accommodate a continuous data stream. While data is
being programmed into main memory from buffer 1, data
can be loaded into buffer 2 (or vice versa). See application
note AN-4 (Using Atmels Serial DataFlash) for more
details.
HARDWARE PAGE WRITE PROTECT: If the WP
pin is
held low, the first 256 pages of the main memory cannot be
reprogrammed. The only way to reprogram the first 256
pages is to first drive the protect pin high and then use the
program commands previously mentioned. The WP
pin is
internally pulled high; therefore, connection of the WP
pin is
not necessary if this pin and feature will not be utilized.
However, it is recommended that the WP
pin be driven high
externally whenever possible.
RESET
: A low state on the reset pin (RESET) will terminate
the operation in progress and reset the internal state
machine to an idle state. The device will remain in the reset
condition as long as a low level is present on the RESET
pin. Normal operation can resume once the RESET pin is
brought back to a high level.
The device incorporates an internal power-on reset circuit,
so there are no restrictions on the RESET
pin during
power-on sequences. The RESET
pin is also internally
pulled high; therefore, connection of the RESET
pin is not
necessary if this pin and feature will not be utilized. How-
ever, it is recommended that the RESET
pin be driven high
externally whenever possible.
READY/BUSY
: This open drain output pin will be driven
low when the device is busy in an internally self-timed oper-
ation. This pin, which is normally in a high state (through an
external pull-up resistor), will be pulled low during program-
ming operations, compare operations, and during page-to-
buffer transfers.
The busy status indicates that the Flash memory array and
one of the buffers cannot be accessed; read and write
operations to the other buffer can still be performed.
Power-on/Reset State
When power is first applied to the device, or when recover-
ing from a reset condition, the device will default to SPI
Mode 3. In addition, the SO pin will be in a high-impedance
state, and a high-to-low transition on the CS
pin will be
required to start a valid instruction. The SPI mode will be
automatically selected on every falling edge of CS
by sam-
pling the inactive clock state.
Status Register Format
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
RDY/BUSY
COMP101XXX

AT45DB161-JC

Mfr. #:
Manufacturer:
Description:
IC FLASH 16M SPI 13MHZ 32PLCC
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union

Products related to this Datasheet