DS1961S-F3 Maxim Integrated Products, DS1961S-F3 Datasheet - Page 8

no-image

DS1961S-F3

Manufacturer Part Number
DS1961S-F3
Description
IBUTTON EEPROM 1KBit SHA-1 2CAN
Manufacturer
Maxim Integrated Products
Series
iButton®r
Datasheet

Specifications of DS1961S-F3

Rohs Information
IButton RoHS Compliance Plan
Memory Size
128B
Memory Type
EEPROM
Lead Free Status / RoHS Status
Contains lead / RoHS non-compliant
DS1961S
scratchpad command. The EN_LFS flag enables the use of load first secret to addresses 0000h–007Fh.
Using load first secret allows the master to copy the scratchpad to memory without the MAC computation
necessary during a copy scratchpad. If the master attempts any command after refresh scratchpad that
could change the scratchpad data or the target address, EN_LFS is reset to 0. This prevents the use of load
first secret to load any data other than the refreshed memory data to any location other than the one
specified during refresh scratchpad. Refresh scratchpad behaves exactly as write scratchpad does for
target addresses 0080h and above. In this case the EN_LFS flag is not set, so it is not possible to refresh
the data in the secret (0080h) or in the register page (0088h). This prevents the secret from being revealed
by a refresh scratchpad followed by a read scratchpad.
MEMORY AND SHA FUNCTION COMMANDS
Due to its design as a secure device, the DS1961S has to behave differently from other memory iButtons.
Although most of the memory of the DS1961S can be read the same way as any other memory iButton,
attempts to read the secret results in FFh-bytes rather than real data. The Memory and SHA Function
Flow Chart (Figure 7) describes the protocols necessary for accessing the memory and operating the SHA
engine. The communication between master and DS1961S takes place either at regular speed (default,
OD = 0) or at overdrive speed (OD = 1). If not explicitly set into overdrive mode the DS1961S assumes
regular speed.
Write Scratchpad [0Fh]
The write scratchpad command applies to the data memory, the secret and the writeable addresses in the
register page. If the bus master sends a target address higher than 90h, the command is not executed.
After issuing the write scratchpad command, the master must first provide the 2-byte target address,
followed by the data to be written to the scratchpad. The data is written to the scratchpad starting at the
beginning of the scratchpad. Note that the ending offset (E2..E0, see Figure 6) is always 111b regardless
of the number of bytes that the master has transmitted. For this reason the master should always send
eight bytes, especially if the data is to be loaded as a secret. If the master sends less than eight data bytes
and does not read back the scratchpad for verification, parts of the new secret can be random data that is
unknown to the master. Only full data bytes are accepted. If the last data byte is incomplete its content is
ignored and the partial byte flag (PF) is set.
When executing the write scratchpad command the CRC generator inside the DS1961S (see Figure 12)
calculates a CRC of the entire data stream, starting at the command code and ending at the last data byte
as sent by the master. This CRC is generated using the CRC16 polynomial by first clearing the CRC
generator and then shifting in the command code (0Fh) of the write scratchpad command, the target
addresses (TA1 and TA2), and all the data bytes. Note that the CRC16 calculation is performed with the
actual TA1 sent by the master even though the DS1961S sets TA1 bits T2..T0 to 000b for the actual write
scratchpad command. The master can end the write scratchpad command at any time. However, if the
scratchpad is filled to its capacity, the master can send 16 read-time slots and receives the CRC generated
by the DS1961S. If the master continues reading after the CRC all data is be FFh.
After receiving the target addresses (TA1 and TA2), the DS1961S clears the EN_LFS flag. If EPROM
mode is active and a write scratchpad is attempted within page 1 (0020h–003Fh), the scratchpad is loaded
with the logical AND of the scratchpad data sent by the master and the current content of the target
memory location. If a write scratchpad is attempted to the register page (0088h–008Fh), any bytes that
are write-protected overwrite the corresponding scratchpad data byte sent by the master with the existing
value. In all other cases, the data sent by the master is written to the scratchpad unaltered.
8 of 36

Related parts for DS1961S-F3