MultiMediaCard Product Manual
SanDisk MultiMediaCard Product Manual Rev. 2 © 2000 SANDISK CORPORATION
46
Figure 5-3
CRC7 Generator/Checker
CRC16
—The CRC16 is used for payload protection
in block transfer mode. The CRC check sum is a 16
bit value and is computed as follows:
generator polynomial G(x) = x
16
+ x
12
+x
5
+1
M(x) = (first bit) * x
n
+ (second bit)* x
n-1
+...+ (last
bit) * x
0
CRC[15...0] = Remainder [(M(x) * x
16
) / G(x)]
All CRC registers are initialized to zero. The first
bit is the first data bit of the corresponding block.
The degree n of the polynomial denotes the
number of bits of the data block decreased by one.
For example, n = 4,095 for a block length of 512
bytes. The generator polynomial G(x) is a
standard CCITT poly-nomial. The code has a
minimal distance d=4 and is used for a payload
length of up to 2,048 bytes (n
≤
16,383).
Figure 5-4 CRC16 Generator/Checker