ΣSigmaStudio Ask AI Русский Log in

ADSP-21489 DMA Modes

Processors & DSP bughunter Mar 22, 2019 00:00 1 replies Original on forum ↗
Thread Summary

Thread Summary

The user inquires about DMA modes for reading data from the AD7768 ADC using the ADSP-21489 SPORT Interface. The final answer explains the differences between Standard, Chained, and Ping-Pong DMA, confirms that Ping-Pong DMA can be used with the SPORT Interface, and suggests that the best DMA mode depends on the application. The user is directed to the ADSP-21489 Hardware Reference Manual for more details and example code for different DMA modes.
AI Generated Content
Subscribe
bughunter Question
Mar 22, 2019 00:00

Hi,

I am planning to read data from the ADI AD7768 ADC using the ADSP-21489 SPORT Interface and DMA mode. Data from the ADC can have a Data Clock/ODR from 4096K/1K to a maximum of 32768K/256K. Initially 4 Channels will be read.

I have read the ADSP-21489 documentation and searched the EZ, but I still have the following questions about its' DMA modes with the SPORT interface;

1) What is the difference between Standard DMA and Chained DMA and Ping-Pong DMA? (short example would help greatly)

2) Can Ping-Pong DMA be used on the ADSP-21489 SPORT Interface?

3) Which DMA is the best option?

Thanks

Dan

Audio Signal Processors

sharc

dma

adsp-21489

Simultaneous Sampling A/D Converters

ad7768

Precision A/D Converters

21489

sport

SHARC Audio Processors/SoCs

Show More

ADIApproved Reply
Mar 29, 2019 00:00

Hello,

Regarding,"What is the difference between Standard DMA and Chained DMA and Ping-Pong DMA? (short example would help greatly)"
>> Please note that , Standard DMA: A standard DMA (once it is configured) transfers data from location A to location B. An interrupt can be used to indicate the end of the transfer. To start a new DMA sequence after the current one is
finished, a program must first clear the DMA enable bit (control register), write new parameters to the index, modify, and count registers (parameter registers), then set the DMA enable bit to re-enable DMA (control register). An instance where standard DMA can be used is to copy data from a peripheral to internal memory for processor booting. With the help of the loader tool, the tag (header information) of the boot stream is decoded to get the storage information which includes the index, modify, and count of a specific array to start another standard DMA.

Chained DMA: Chained DMA sequences are a set of multiple DMA operations, each autoinitializing the next in line. To start a new DMA sequence after the current one is finished, the IOP automatically loads new index, modify, and count values from an internal memory location (or external memory location for DMA to external ports) pointed to by that channel’s chain pointer register. Using chaining, programs can set up consecutive DMA operations and each operation can have different attributes.

Ping-pong DMA (IDP): In ping-pong DMA, the parameters have two memory index values (index A and index B), one count value and one modifier value. The DMA starts the transfer with the memory indexed by A. When the transfer is completed as per the value in the count register, the DMA restarts with the memory location indexed by B. The DMA restarts with index A after the transfer to memory with index B is completed as per the count value. This repeats until the DMA is stopped by resetting the DMA enable bit.

For more information please refer the HRM of ADSP-21489.

Regarding,"Can Ping-Pong DMA be used on the ADSP-21489 SPORT Interface?"
>> Yes, you can use.

Regarding,"Which DMA is the best option?"
>> It depends on your application. Can you please refer the HRM for difference modes of DMA.

214xx_StandardDMA.C.zip

Circular_buffered_DMA.zip

External Port DMA_ChainingMode.zip

Regards,
Lalitha.S