I inherited a project that had really only got to the bring up stage. The gist of the system is an FPGA receiving external data packets and putting it into a circular buffer for the DSP to consume.
The FPGA raises an IRQ when a packet is complete, DMA reads the data from the FPGA, reading the last byte of the pkt acknowledges the packet and clears the IRQ. The DSP is set up with 3 DMA channels, the first is a dummy the second 2 are alternately used for the transfer.
The package of code I got was a compile script that had diverged from it beginnings in CCSv4 and code based on BIOS5 EDMA1.x. To have some kind of debuggable environment going forward I recreated the config file in CCSv5 and used the latest of everything. This has gone quite well, I can now debug, see logging over jtag, use ROV, execution graphs etc.
However I seem to have changed something deep down, now the DMA seems to be triggering a lot more and is re-reading data from the circular buffer over and over again.
I suspect a change between edma 1.x and 2.x might be the issue, I believe the code is based on the ping-pong example so I have been comparing example code between the edma folders but cannot see anything promising.
I wonder if this jogs any memories, edge triggering becomming level triggering etc, the code configures rising edges but perhaps this has changed (can a 6433 do level triggered anyway?).
Ta
Chris
(Sorry for the newbie questions - done lots of embedded stuff but new to TI chips)