Can any one please provide me an example program for using to process data on external memory using DMA and PEYEN bit enabled.
Or any ideas of how to use external memory through DMA for simd operations.
Thanks & RegardsSravan
SIMD can be used with Core accesses to the external memory . Here the data present in external memory is accessed by the Core (in SIMD mode) and does the processing in both the processing elements (X and Y). Then the data can be written back to the external memory in core mode. Here the DMA is not used. The disadvantage here is the high latency in the read/write access to external memory and the usage of Core MIPS in doing the data transfer operations
I would recommend the following.
Do a DMA data transfer from the External memory to L1 Internal memory . The core can do the processing(SIMD) on this data and write the result back to another buffer in L1. Once the processing completes, start the DMA to transfer the processed data back to external memory.
You can actually pipeline you processing/data transfer such that the Core is always in use and achieve maximum efficiency, as the DMA can happen in parallel with Core operations.
You can refer to one of the Audio talkthrough example codes (present in the BSP) where the ping-pong DMA mechanism is used to achieve this
Enabling SIMD mode has no effect on DMA operations. So the scenario that you are trying is no a valid one.
Thanks for reply.
Sorry I am not clear in the query and I am a beginner ,here I am elaborate
When I want to use data from external memory , what all things I have to take care for fast computations, how to use DMA in my case?
Do I have to copy all data from external to internal memory using dma, and perform my simd operation and then write back the output??
Or is there any other way so directly I can access data using dma to core and process it ??
Thanks I will refer to the example .
I went through BSP of ADSP 21437,ADSP-21489 and ADSP - 21479, but not able to find ping-pong mechanism of DMA transfer, every where SPORT based TCBs are used, I didn't find any example based on external memory
Can you please tell the exact example and from which BSP , I am using ADSP-21489 and there are not much examples on this BSP regarding audio talk-through
Yes, the Ping pong DMA mechanism is explained with respect to SPORT transfers in all the Audio Talkthrough example code. You can use this framework reference to build your code on External memory DMA transfers.
Retrieving data ...