CHAPTER 19: Programmable CRC
954 FM4 Peripheral Manual, Doc. No. 002-04856 Rev. *E
4. Set the computing input/output format for the PRGCRC_CFG register. The size of the input data is
32-bit. Select and set (SZ="11") and the computing input/output data format (FI, FO) respectively
according to the memory storage format of the input/output data.
5. and 6. Set the computing input data of the specified input format (FI) for the PRGCRC_WR register
in order of receiving. In this example, writing is performed twice with 32-bit width. Each time writing
is performed, checking of computing completion with LOCK is performed.
7. Read the CRC computing results from the PRGCRC_RD register. The position where the computing
results can be read varies depending on the computing output format (FO). In case of format A and
C, the values read from PRGCRC_RD[31:16] are the CRC computing results. In case of format B
and D, the values read from PRGCRC_RD[15:0] are the CRC computing results.
The CRC computing results vary if the output format (FO) is different, however, the bit sequence will be
same regardless of the data format.
CRC computing result memory storage format
(0x 1D 0F) ・・・Format A
(0x 0F 1D) ・・・Format B
(0x B8 F0) ・・・Format C
(0x F0 B8) ・・・Format D
CRC computing result bit sequence
00011101 00001111
You can determine that no error is detected in the CRC check with generator polynomial, x
16
+x
12
+x
5
+1.