This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS570LC4357 CRC module - Auto mode operation checking

In the Technical Reference Manual, I understand the CRC Auto mode act follow this sequence.

- preconditon : use dma0_channel -> pre-determined CRC, use dma1_channel -> PSA Signature Register, both channel software DMA request

1. SW Trigger -> dma0_channel and dma1_channel act

2. After finish transfer data to PSA Signature Register, CRC compress is act

3. After the compressing, match the pre-determined CRC and compressed CRC

4. (1) Is matched : CRC module send SW Trigger to dma0_channel (repeat 1 ~ 4)

    (2) Is not matched : generate CRC fail interrupt and stop

Is it right operation of CRC Auto mode?

Then, the CRC calculation is started automatically and I have no time to change the dma settings.

 I just check the CRC Auto mode operation as crcreg->STATUS change? (0 -> 1 / 1->0 repeatly)

I want to check the operation confirmly as CRC value changing(Before the CRC calculation, i change the dma setting(address))

Would you tell me the way to check the opertion like this way or the other ways?

  • Hello,

    You are understanding is correct. In Auto-Mode, CRC controller can automatically compare the resulting signature stored at the PSA signature register with the pre-determined value stored at the CRC Value Register. If the verification fails, CRC Controller generates an CRC fail interrupt if the interrupt is enabled.

    In Auto-mode, the DMA request is automatically generated when Auto mode is enabled. You can read status in the interrupt routine to check if the operation completes or if there is any error. It is hard to read the CRC value from PSA signature register during the DMA transfer.