English
Language : 

HB288032MM1 Datasheet, PDF (65/80 Pages) Hitachi Semiconductor – MultiMediaCard 32 MByte
HB288032MM1
Cyclic Redundancy Check (CRC)
The intention of the ECC method is to protect the HB288032MM1 against permanent storage failures in the
memory field of the card. To protect the data against errors generated during the transport over the
MultiMediaCard bus dynamically, an additional feature is implemented: the cyclic redundancy check
(CRC). Following the MultiMediaCard standard, the HB288032MM1 uses two different CRC codes to
protect the data and the command/response transfer between card and host. Unlike the ECC, the CRC is
intended only to detect transfer errors and not to correct them “on the fly”. When a CRC error is detected
the host has to react. This is normally done by repeating the last command. The first CRC code is intended
to protect the command and response frames. They are also used to synchronize the data stream. This
CRC is generated with and checked against the following polynomial:
CRC polynomial: G(x) = x7 + x3 + 1
M(x) = (start bit) * x39 +...+ (last bit) * x0
CRC[6...0] = Remainder [(M(x) * x7)/G(x)]
One CRC is checked in the HB288032MM1 for every command. For each response a CRC is generate in
the HB288032MM1. Each data block read from the HB288032MM1 will be succeeded by redundancy bits
generated with the second CRC. The code is usable for payload lengths of up to 2048 Bytes:
CRC polynomial: G(x) = x16 + x12 +x5 + 1,
M(x) = (start bit) * xn + xn-1 +...+ (last bit) * x0 , with n < 2048*8
CRC[15...0] = Remainder [(M(x) * x16) / G(x)]
Both CRCs are mandatory for the card and the host.
65