AnsweredAssumed Answered

Optimizing DMA Descriptors

Question asked by sidhantgupta on Aug 17, 2010
Latest reply on Aug 23, 2010 by gyi

Hi All,


I have setup the DMA in array descriptor mode since I want to be able to copy several blocks of data from the SPORT into memory before generating an interrupt. That is, the DMA will copy 8 Bytes from SPORT to memory, 256 times, so that the memory now has buffered 2048 bytes, and then trigger an interrupt so that this data can be processed.


The way I have it setup right now is have a descriptor array of size 256 with the 256th descriptor telling the DMA to trigger an interrupt. Each descriptor is NDSIZE_3 (SAL,SAH,CFG).


Now I need to setup a ping-pong buffer, which will require its own 256 descriptor array and have the interrupt switch the descriptor pointer for switching buffers.


I wanted to know if there is a more memory efficient way of doing the above?


Thank you.