DS1615
052698 14/20
in that writes are performed one byte at a time while
reads are performed in page long (up to 32 byte) bursts.
Writing one byte at a time simply means that a write
command has to be issued before each byte of data that
is written. For example, writing to the user NV RAM
requires that the Write User NV RAM command be writ-
ten followed by the address to be written and then the
actual data byte. Writing a second data byte would
require the same procedure with a new address speci-
fied. Reads, however, are accomplished in bursts. For
example, if an end user wants to read data from a spe-
cific page he would first issue the Read Page command,
followed by the address to begin reading. After the
DS1615 receives the command and starting address, it
will immediately transmit the data that resides at the
given address location. However, rather than stop with
that single byte of data, the DS1615 will continue trans-
mitting the next byte of data and will continue transmit-
ting data until the page boundary is reached. A page
read can begin at any address, but will always end at the
page boundary. Thus, a page read can range from 1 to
32 bytes. It should be noted that a read can be termi-
nated at any time when communicating in synchronous
mode by pulling RST to ground. However, in asynchro-
nous mode, the DS1615 will not stop transmitting data
until the page boundary is reached.
Cyclical Redundancy Check (CRC)
When communicating in the asynchronous mode, a
16–bit CRC is transmitted by the DS1615 following the
transmission of all data. When communicating in syn-
chronous mode, no CRC is transmitted.
The 16–bit CRC (Cyclical Redundancy Check) is used
to insure the accuracy of the data that is read from the
DS1615. The CRC is generated according to the stan-
dardized CRC16–polynomial function X
16
+ X
15
+ X
2
+ 1. Figure 4 illustrates the function of the generator.
The CRC is generated by clearing the CRC generator
and then shifting in data from the register set being read.
A sixteen bit CRC is transmitted by the DS1615 after the
last register of any page of memory is read. In other
words, a CRC is generated at the end boundary of every
page that is read.
CRC HARDWARE DESCRIPTION AND POLYNOMIAL
Figure 4
BIT0
X
0
X
1
X
2
X
3
X
4
X
5
X
6
X
7
Polynomial = X
16
+ X
15
+ X
2
+ 1
BIT1
XOR
BIT2
BIT3
BIT4
BIT5
BIT6
BIT7
BIT8
X
8
X
9
X
11
X
12
X
13
X
14
X
10
X
15
BIT9
XOR
BIT10
XOR
BIT11
BIT12
BIT13
BIT14
BIT15
X
16
CRC
OUTPUT
INPUT
DATA
Communication Reset (Asynchronous
Mode)
When transmitting the command, parameters, or data to
the DS1615, it is possible that communication might be
interrupted. For example, the user might accidentally
disconnect the cable linking the device to the host com-
puter. To insure that communication always starts at a
known state when in the asynchronous mode, the
DS1615 will reset the communication if it senses a prob-
lem. This is accomplished via two methods. First, if dur-
ing the transmission of a byte of data to the DS1615, the
stop bit is not received, communication will be reset.
The lack of a valid stop bit indicates that that particular
byte of data was not received correctly. Second, if more
then 10–bit times expire between the reception of one
byte of data and the reception of the next required byte,
then communication will be reset.
Automatic resetting of communication is not required
when communicating in the synchronous mode. This is
because of the function of the RST pin. Pulling RST low
resets the serial communication of the DS1615.