Information

CRC_CTRL field descriptions (continued)
Field Description
0 Writes to the CRC data register are data values.
1 Writes to the CRC data register are seed values.
24
TCRC
Width of CRC protocol.
0 16-bit CRC protocol.
1 32-bit CRC protocol.
23–0
Reserved
This read-only field is reserved and always has the value zero.
30.3 Functional description
30.3.1 CRC initialization/reinitialization
To enable the CRC calculation, the user must program the WAS, POLYNOMIAL, and
necessary parameters for transpose and CRC result inversion in the applicable registers.
Asserting CTRL[WAS] enables the programming of the seed value into the CRC data
register.
After a completed CRC calculation, reasserting CTRL[WAS] and programming a seed,
whether the value is new or a previously used seed value, reinitialize the CRC module for
a new CRC computation. All other parameters must be set before programming the seed
value and subsequent data values.
30.3.2 CRC calculations
In 16-bit and 32-bit CRC modes, data values can be programmed 8 bits, 16 bits, or 32 bits
at a time, provided all bytes are contiguous. Noncontiguous bytes can lead to an incorrect
CRC computation.
30.3.2.1 16-bit CRC
To compute a 16-bit CRC:
1. Clear CTRL[TCRC] to enable 16-bit CRC mode.
2. Program the transpose and complement options in the CTRL register as required for
the CRC calculation. See Transpose feature and CRC result complement for details.
Functional description
K20 Sub-Family Reference Manual, Rev. 2, Feb 2012
576 Freescale Semiconductor, Inc.