DMA half major loop issue

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

DMA half major loop issue

295 Views
Ayaz
Contributor IV

Hi,
I’ve designed a setup where the DMA is triggered by a PIT every 25 µs to transfer data from one buffer to another. This happens 10 times per major loop, so the full major loop completes every 250 µs — which I can confirm using a logic analyzer.

PIT--> DMA ---> major loop Interrupts 

Now, I’m trying to configure the DMA to trigger an interrupt at half the major loop interval (i.e., every 125 µs). However, the interrupt still only fires every 250 µs, as if the half-major loop interrupt feature isn’t working.

Ayaz_0-1759849791163.png

 

To help investigate this, I’ve created an example project that you can look at. I’d appreciate your help in figuring out why the half-major loop interrupt isn’t triggering as expected.
Also, I have one more question:
What is the "End of Packet Signal" in the context of DMA, and how is it typically used?

Tags (1)
0 Kudos
Reply
1 Reply

254 Views
PetrS
NXP TechSupport
NXP TechSupport

Hi,

if you have period trigger and enable DMA half major interrupt only, the fist trigger happens after half interval (125us) but subsequent interrupts will be triggered again at 250us rate. Enable both half major and major interrupts and you get interrupt each 125us.

The "End of Packet Signal" feature should be disabled, I think. Some discussion was done in 
https://community.nxp.com/t5/S32-Design-Studio/Possible-bug-in-DMA-RTD-driver/td-p/1701972

BR, Petr

0 Kudos
Reply