This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

EDMA LLD configuration takes long time

Part Number: TMS320C6424
Other Parts Discussed in Thread: SYSBIOS

Tool/software: Code Composer Studio

Hello everyone,

I'm trying to do memory transfer from DDR2 to IRAM of the DSP processor, I'm using the EDMA LLD code example , when I calculated the time consumed by this code I found that it's too much, more than 1.2 million cycles, the actual memory copy process takes around 2000 cycles, the rest of the time is consumed by the configuration functions, specially edma_config function it takes almost 700K cycles, I'm wondering why does it take all this time ?! and is there any way to reduce the time it takes ?

Thanks in advance.

  • Hi,

    Can you elaborate what EDMA LLD release you used? Also do you have a callflow for the EDMA LLD, like in your main file, you call some EDMA LLD init, channel request, transfer, etc....? It looks that you already analyzed the cycle spend for the some top level functions? The real transfer happens when you write the EDMA ESR register and poll or use interrupt callback when the EDMA IPR register is set. It is possible that the EDMA setup spends a lot of cycles. But in the usage you don't need to run the setup all the time for the next transfers. You can use linked or chained transfer, for the manual triggered transfer, what you need is request a channel with A-B CNT, SRC, DST setup, OPT field. I hope it doesn't need that much of cycles.

    Regards, Eric
  • the EDMA release is : LLD version: edma3_lld_01_06_00_01 , yes the EDMA setup can be done once in the application , but is it normal to take this much time ? , the other problem is that the function to request the channel and setup the transfer parameters also takes time around 36000 cycles, which I need to call for each transfer separately and this is not going to be efficient this way, is there no way to reduce this time ?

  • Hi,

    Are you using BIOS 5 with EDMA LLD? The toolset is too old and I'm sure if you plan to upgrade to EDMA LLD 2.x with SYSBIOS. I don't have the benchmarking numbers for EDMA LLD.

    Something to try may be build the project with release mode. If it is still much of improvement, you may consider the CSL code or bare metal one.

    Regards, Eric