AM6442: Issue transferring data of size 400KB using DMA

Part Number: AM6442


Hi team,

    I am trying to use DMA method to copy data from the source and transfer to shared memory region 0xA7000000. When i try to do this .. I am not able to transfer 40)KB data at one shot. The maximum i can transfer is 16KB. 

SDK details:

  MCU SDK version 11.00.00.15 

Processor SDK version 11.01.05.03

I have refered to this example AM64x MCU+ SDK: UDMA Memcpy Interrupt .

Is there any restriction for UDMA tranfer.

My final goal is to use to merge the shared memory example between remote core and linux and the dma tranfer concept.

I also tried sending the 400KB data in chuncks of 10 KB and i found it was taking almost 5ms , to write the data to shared memory.

Please provide the input on this .

Thank You

Mamatha B M

  • Hello Mamatha B,

    I am working on your queries and you may get reply in one or two days .

    Regards,

    Anil.

  • HI Anil, 

       Is there any update on this front 

    Thank You

    Mamatha B M 

  • Hello Mamatha,

    The UDMA is available on the AM64X and supports 4D transfer.

    And each dimension can transfer up to 64KB.
    So, to achieve a 400KB transfer, we need to configure icnt0 and icnt1.
    The DMA is able to transfer till 64K * 64K * 64K * 64K.
    Are you doing this testing on the A53 or R5F cores?
    Can you please share all your test setup details?
    Like DMA initialization and what is the remote core here, R5F0_0 or any other core?
    Are you doing the transfer A53 to R5F or R5F to A53 as well?
    Where did you do the DMA initialization and DMA start — on the R5F core or A53 core?
    Did you perform the testing in a debug or release build?

    Regards,

    Anil.