Read operations are initiated in the same way as Write operations with the exception that the Read/Write select bit in the
device address word is set to one. There are four read operations:
Current Address Read
Random Address Read
Serial Number Read
Current Address Read: The internal data word address counter maintains the last address accessed during the last
Read or Write operation, incremented by one. This address stays valid between operations as long as the chip power is
maintained. The address roll-over during read is from the last byte of the last memory page to the first byte of the first
page. The address roll-over during write is from the last byte of the current page to the first byte of the same page.
Once the device address with the read/write select bit set to one is clocked in and acknowledged by the EEPROM, the
current address data word is serially clocked out. The microcontroller does not respond with an zero but does generate a
following Stop condition (see Figure 10-4 on page 12).
Random Read: A Random Read requires a dummy byte write sequence to load in the data word address. Once the
device address word and data word address are clocked in and acknowledged by the EEPROM, the microcontroller must
generate another Start condition. The microcontroller now initiates a Current Address Read by sending a device address
with the read/write select bit high. The EEPROM acknowledges the device address and serially clocks out the data word.
The microcontroller does not respond with a zero but does generate a following Stop condition (see Figure 10-5 on page
Sequential Read: Sequential reads are initiated by either a current address read or a random address read. After the
microcontroller receives a data word, it responds with an acknowledge. As long as the EEPROM receives an
acknowledge, it will continue to increment the data word address and serially clock out sequential data words. When the
memory address limit is reached, the data word address will roll-over and the Sequential Read will continue. The
Sequential Read operation is terminated when the microcontroller does not respond with a zero but does generate a
following Stop condition (see Figure 10-6 on page 13).
Serial Number Read: Reading the serial number is similar to the sequential read sequence but requires use of the
device address seen in Figure 10-1 on page 12, a dummy write, and the use of specific word address.
The entire 128-bit value must be read from the starting address of the serial number block to guarantee a
Since the address pointer of the device is shared between the EEPROM array and the serial number block, a dummy
Write Sequence should be performed to ensure the address pointer is set to zero. Random reads of the serial number
block are supported but if the previous operation was to the EEPROM array, the address pointer will retain the last
access location, incremented by one. Reading the serial number from a location other than the initial address of the block
will not result in a unique serial number.
Additionally, the word address must begin with a ‘10’ sequence regardless of the intended address. If a word address
other than ‘10’ is used, then the device will output undefined data.
Example: If the application desires to read the first byte of the serial number, the word address input would need to be
When the end of the 128-bit serial number is reached (16 bytes of data), the data word address will roll-over back to the
beginning of the 128-bit serial number. The Serial Number Read operation is terminated when the microcontroller does
not respond with an zero (ACK) and instead issues a Stop condition (see Figure 10-7 on page 13).
Atmel AT24CS01/02 [PRELIMINARY DATASHEET] 11