I dont see any data in reference manual of S32K, where it mentions on DMA based CRC calculation.
I want to cyclically calculated CRC over the application area, and get notified after the completion via DMA interrupt.
Kindly let me know if this is possible for S32, if yes, and example to the same would be highly appreciated.
Solved! Go to Solution.
Hi,
yes, DMA can be used for CRC calculation. It doesn't matter if data are written to CRC data register by core or by DMA.
I wrote this simple example for MPC5748G:
https://community.nxp.com/t5/MPC5xxx-Knowledge-Base/Example-MPC5748G-CRC32-GHS614/ta-p/1119736
It is different device but the principle is still the same and also DMA module is the same. So, it can be partially re-used.
Regards,
Lukas
Hi,
yes, DMA can be used for CRC calculation. It doesn't matter if data are written to CRC data register by core or by DMA.
I wrote this simple example for MPC5748G:
https://community.nxp.com/t5/MPC5xxx-Knowledge-Base/Example-MPC5748G-CRC32-GHS614/ta-p/1119736
It is different device but the principle is still the same and also DMA module is the same. So, it can be partially re-used.
Regards,
Lukas
Thanks for the hint.
I see that S32 has only one CRC engine instance? Am I right?
Actually I want two instances of CRC, one for instantaneous value calculation and other for background continuous calculations.
Is it possible?
Hi,
that's correct, there's only one instance of CRC module, so you can't calculate two checksums at the same time. You can either develop some scheme of sharing of the CRC module or you can use software calculation for instantaneous needs (at the cost of performance).
Regards,
Lukas