S32K148, Is it possible to use DMA for CRC Calculation?

cancel
Showing results for 
Search instead for 
Did you mean: 

S32K148, Is it possible to use DMA for CRC Calculation?

Jump to solution
187 Views
Vijay_Arwapally
Contributor III

@nxp 

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.

Tags (3)
0 Kudos
1 Solution
180 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

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

 

View solution in original post

0 Kudos
3 Replies
181 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

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

 

View solution in original post

0 Kudos
177 Views
Vijay_Arwapally
Contributor III

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?

0 Kudos
161 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

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