I tested EE-401 "SC58x_MDMA_Throughput" with the following settings on ADZS-SC584-EZLITE. 1) MDMA2 2) SYSCLK = 225 MHz 3) DMA count = 16384 bytes 4) MSIZE = 32 5) PSIZE = 4 6) from C1L1S1 to C1L1S1
The measured throughput is 893.9 MB/s.
I changed the code to use the DMA Service "adi_mdma_Copy1D" instead of "MDMA_CONFIG".The throughput is degraded to 224.7 MB/s.Does the DMA Service support maximum theoretical throughput?
I think it is caused by setting DMA_CFG.PSIZE=0 and DMA_CFG.EN=1 simultaneously in the DMA service (MDmaUpdateXferStatus()).I modified the code as shown below, the throughput changed to 895.6 MB/s.====before: adi_mdma_Copy1D(hStream, pMemDest, pMemSrc, ADI_DMA_MSIZE_32BYTES, Bytes/32);after: adi_mdma_Copy1D(hStream, pMemDest, pMemSrc, 0x520, Bytes/32);
Hello, Our sincere apologize for the delayed response. We found that there is a bug "adi_mdma_Copy1D" API By default both MSIZE and PSIZE value are 4 bytes. While calling "adi_mdma_Copy1D" API…