![](http://datasheet.mmic.net.cn/150000/DS2422X_datasheet_5001533/DS2422X_19.png)
DS2422/DS2423
021998 19/23
READ/WRITE TIMING DIAGRAM Figure 11 cont’d
Read–data Time Slot
VPULLUP
VPULLUP MIN
VIH MIN
VIL MAX
0V
tSLOT
tREC
tRDV
tLOWR
Regular Speed
60
s < tSLOT < 120 s
1
s < tLOWR < 15 s
0 < tRELEASE < 45 s
1
s < tREC < 1
tRDV = 15 s
tSU < 1 s
tRELEASE
MASTER SAMPLING
WINDOW
RESISTOR
MASTER
DS242X
Overdrive Speed
6
s < tSLOT < 16 s
1
s < tLOWR < 2 s
0 < tRELEASE < 4 s
1
s < tREC < 1
tRDV = 2 s
tSU < 1 s
tSU
CRC GENERATION
With the DS242X there are two different types of CRCs
(Cyclic Redundancy Checks). One CRC is an 8–bit
type and is stored in the most significant byte of the
64–bit ROM. The bus master can compute a CRC value
from the first 56 bits of the 64–bit ROM and compare it to
the value stored within the DS242X to determine if the
ROM data has been received error–free by the bus
master. The equivalent polynomial function of this CRC
is: X8 + X5 + X4 + 1. This 8–bit CRC is received in the
true (non–inverted) form when reading the ROM of the
DS242X. It is computed at the factory and lasered into
the ROM.
The other CRC is a 16–bit type, generated according to
the standardized CRC16–polynomial function x16 + x15
+ x2 + 1. This CRC is used for error detection when
reading Data Memory using the Read Memory +
Counter command and for fast verification of a data
transfer when writing to the scratchpad. It is the same
type of CRC as is used with NVRAM based iButtons for
error detection within the iButton Extended File Struc-
ture. In contrast to the 8–bit CRC, the 16–bit CRC is
always returned or sent in the complemented (inverted)
form. A CRC–generator inside the DS242X chip (Figure
12) will calculate a new 16–bit CRC as shown in the
command flow chart of Figure 7.
The bus master
compares the CRC value read from the device to the
one it calculates from the data and decides whether to
continue with an operation or re–read the portion of the
data with the CRC error.
With the initial pass through the Read Memory +
Counter flow chart the 16–bit CRC value is the result of
shifting the command byte into the cleared CRC gener-
ator, followed by the two address bytes, data bytes,
value of the counter associated with the page and zero
bits. Subsequent passes through the Read Memory +
Counter flow chart will generate a 16–bit CRC that is the
result of clearing the CRC generator and then shifting in
the data bytes, the value of the counter and the zero bits.
With the Write Scratchpad command the CRC is gener-
ated by first clearing the CRC generator and then shift-
ing in the command code, the Target Addresses TA1
and TA2 and all the data bytes. The DS242X will trans-
mit this CRC only if the data bytes written to the scratch-
pad include scratchpad ending offset 11111b. The data
may start at any location within the scratchpad.
For more details on generating CRC values including
example implementations in both hardware and soft-
ware, see the Book of DS19xx iButton Standards.