The datasheet for i.MX RT1050 states that there is hardware support for CRC-32 calculations, but when looking in the reference manual CRC-32 is not mentioned. Does the processor provide an interface for hardware accelerated CRC-32 calculations for custom usage?
Best regards
Tajs
Datasheet page 4:
Security functions are enabled and accelerated by the following hardware:
• High Assurance Boot (HAB)
• Data Co-Processor (DCP):
— AES-128, ECB, and CBC mode
— SHA-1 and SHA-256
— CRC-32
Reference manual page 446:
For security purposes, the Data Co-Processor (DCP) provides hardware acceleration for
the cryptographic algorithms. The features of DCP are:
• Encryption Algorithms: AES-128 (ECB and CBC modes)
• Hashing Algorithms: SHA-1 and SHA-256
• Key selection from the SNVS, DCP internal key storage, or general memory
• Internal Memory for storing up to four AES-128 keys—when a key is written to a
key slot it can be read only by the DCP AES-128 engine
• IP slave interface
• DMA
Yes, as you can see in the datasheet:
Security functions are enabled and accelerated by the following hardware:
• High Assurance Boot (HAB)
• Data Co-Processor (DCP):
— AES-128, ECB, and CBC mode
— SHA-1 and SHA-256
— CRC-32
I agree with the OP. I can see that there is hardware in the Data co-processor to perform a CRC-32 but I can't see anywhere how I could do this.
To be clear, my requirements are that I have a couple of hundred bytes in internal RAM and I want to calculate the CRC-32 of them. Can anyone tell me which registers I need to set up to get the co-processor to perform that calculation for me?