12.11.3 32-bit Cyclic Redundancy Check CRC32

The DSU unit provides support for calculating a cyclic redundancy check (CRC32) value for a memory area (including Flash and AHB RAM).

When the CRC32 command is issued from:
  • The internal range, the CRC32 can be operated at any memory location
  • The external range, the CRC32 operation is restricted; DATA, ADDR, and LENGTH values are forced (see below)
Table 12-4. AMOD Bit Descriptions when Operating CRC32
AMOD[1:0] Short name External range restrictions
0 ARRAY CRC32 is restricted to the full Flash array area (EEPROM emulation area not included) DATA forced to 0xFFFFFFFF before calculation (no seed)
1 EEPROM CRC32 of the whole EEPROM emulation area DATA forced to 0xFFFFFFFF before calculation (no seed)
2-3 Reserved

The algorithm employed is the industry standard CRC32 algorithm using the generator polynomial 0xEDB88320 (reversed representation).