English
Language : 

DS2704 Datasheet, PDF (8/18 Pages) Maxim Integrated Products – 1280-Bit EEPROM with SHA-1 Authentication
DS2704: 1280-Bit EEPROM with SHA-1 Authentication
address. The bus master can issue a reset pulse at any point or continue to issue read time slots until the end of
the 32-byte page is reached. If reading occurs through the end of the 32-byte page, the bus master can issue eight
additional read time slots and the DS2704 will respond with a 8-bit CRC of all data bytes read from the initial
starting byte through the last byte of the current page. After the CRC is received, additional read time slots return
data starting with the first byte of the next page. This sequence will continue until the bus master reads PAGE 3
and its accompanying CRC. Thus each page of data can be considered to be 33 bytes long: the 32 bytes of user-
programmed EEPROM data and an 8-bit CRC that gets generated automatically at the end of each page. The
Read Data/Generate 8-Bit CRC command sequence can be exited at any point by issuing a reset pulse.
READ ALL [65h]
The Read All command is used to read data from all 1280 bits (PAGE 0 – PAGE 4) of the EEPROM data field. This
includes PAGE 0 – PAGE 3 which are accessible via the DS2502 Read Memory and Read Data/Gen CRC legacy
commands and PAGE 4 which is only accessible using the Read All command.
The bus master follows the command byte with a 2-byte address (TA1=(T7:T0), TA2=(T15:T8)) that indicates a
starting byte location within the data field. An 8-bit CRC of the command byte and address bytes is computed by
the DS2704. The bus master must issue 8 read time slots to receive the CRC value, and then issue additional read
time slots to receive data from the DS2704 starting at TA2:TA1.
When reading begins within the EEPROM data field (0000h – 009Fh) and continues past 009Fh, an 8 bit CRC of
all data returned is computed by the DS2704 and returned following the last byte of the data field. If reading begins
in the reserved range or time slots are issued after receiving the 8 bit CRC, the DS2704 returns logical 1’s.
WRITE SCRATCHPAD [6Ch]
The Write Scratchpad command is used to write up to 8-bytes to the scratchpad buffer which is in turn used to
program 1280-bit EEPROM data field via the Copy Scratchpad command. The bus master issues the Write
Scratchpad function command followed by a 1-byte address argument that depicts the starting byte position in the
scratchpad of the following byte stream to be written. The valid range for the address is 00h – 07h. The address is
auto-incremented after each data byte is written. When the address is greater than 07h, no further bytes will be
accepted. Incomplete bytes are not written to the scratchpad. The Write Scratchpad command fills the scratchpad
LSByte first, so when fewer than 8 bytes are written, the upper bytes of the scratchpad buffer contain data from
previous operations. Since the Copy Scratchpad command transfers the entire scratchpad to the EEPROM data
field, incomplete writing of the scratchpad should be done with caution. If the master determines the scratchpad
data is unsuitable to copy to the EEPROM, the entire write sequence (command and data) must be repeated after
issuing a reset pulse.
READ SCRATCHPAD [69h]
The Read Scratchpad command is used to return scratchpad data if verification of the scratchpad data is required
prior to programming the EEPROM data field. The bus master issues the Read Scratchpad function command
followed by a 1-byte address argument that depicts the starting byte position in the scratchpad of the first byte to be
read. The valid range for the address is 00h – 07h. The address is auto-incremented after each data byte is read.
When the address is greater than 07h, any further reads will return bit values of 1. The DS2704 returns up to 64
bits from the scratchpad beginning with the least significant bit of the least significant byte.
COPY SCRATCHPAD [48h]
The Copy Scratchpad function command is used to transfer data from the 8-byte scratchpad buffer to the EEPROM
data field memory. Transfers are aligned on 8 byte boundaries. The bus master issues the Copy Scratchpad
function command followed by the 2-byte target address (TA1=(T7:T0), TA2=(T15:T8)). The DS2704 aligns target
addresses to the least significant byte (LSByte) of each eight byte boundary by zeroing the three least significant
bits of TA1. That is, TA1[T2:T0] are set internally to 000b. As an example, issuing the Copy Scratchpad command
with TA2:TA1 = 0x0020 or TA2:TA1 = 0x0027 results in the same 8-byte block being copied to PAGE 1 beginning
at address 0x0020.
A delay of tEEC is required to program the scratchpad contents to the EEPROM array. See Figure 9 for command
timing.
8 of 18