Tool/software: Code Composer Studio
hi TI Experts,
I created a project in Code composite studio, by using F28377D CPU2 to DMA data from emif1. I encountered an issue that DMA reported overrun when trigger event frequency is 667khz or ever more. There's no overrun flag set when I set trigger event at 500khz.
If it run the same configuration in CPU1, there's no overrun flag reported. What's issue?
I tried with external GPIO interrupt and EPWM1 SOCA in CPU2 as trigger source, both over run if frequency at 667khz or 1M.
I am using DMA ch1. Even I set ch1 highest priority, nothing changed.
Below are code for CPU2 DMA configuration. The DMA clock was enable at main.
// Initialize DMA
DMAInitialize();
EALLOW;
DmaRegs.PRIORITYCTRL1.bit.CH1PRIORITY = 1;// configure channel 1 high priority
EDIS;
DMACH1AddrConfig((volatile Uint16 *) &DMAbuffer[0], (volatile Uint16 *) EXTERNAL_ADC_ADDRESS);
DMACH1BurstConfig(0, 0, 0); //Will set up to use 32-bit data size, pointers are based on 16-bit words
DMACH1TransferConfig(0, 0, 2);
DMACH1WrapConfig(0xFFFF, 0, 0xFFFF, 0);
DMACH1ModeConfig(DMA_EPWM1A, PERINT_ENABLE, ONESHOT_DISABLE, CONT_ENABLE,
SYNC_DISABLE, SYNC_SRC, OVEFLOW_ENABLE, THIRTYTWO_BIT, CHINT_BEGIN,
CHINT_ENABLE);
Can you help analysis?
Thanks in advance.
Jerome Jiang