Page 1 of 1

[SOLVED] Inexplicable pauses when using EBI + DMA (SAMA5D35)

Posted: Wed Jun 13, 2018 1:02 pm
by arhiv6
Hello,

I use EBI interface for connecting to FPGA. All works fine (read, write, including using DMA). But I found that DMA transmits data in batches of 16 write cycles. For example, I run DMA-transfering 1024 bytes to FPGA and see (part of the transmission is visible):

Image
It's normal behavior for DMA? Why do these pauses appear? Code for configuring and starting DMA transaction taken in this driver (see atmel_nand_dma_op function) as a basis. Processor: SAMA5D35.

Best Regards, arhiv6.

Re: Inexplicable pauses when using EBI + DMA (SAMA5D35)

Posted: Thu Jun 14, 2018 9:15 pm
by blue_z
arhiv6 wrote:It's normal behavior for DMA? Why do these pauses appear?
Looks like ordinary burst-mode DMA to me. What were you expecting?
Allowing the DMAC to hog the memory bus (e.g. a "block" transfer) would be detrimental to CPU performance (e.g. interrupt latency).

Regards

Re: Inexplicable pauses when using EBI + DMA (SAMA5D35)

Posted: Mon Jun 18, 2018 7:26 am
by arhiv6
blue_z wrote:
Thu Jun 14, 2018 9:15 pm
Looks like ordinary burst-mode DMA to me. What were you expecting?
This is not specified in the documentation, and I was surprised at these pauses.

blue_z wrote:
Thu Jun 14, 2018 9:15 pm
Allowing the DMAC to hog the memory bus (e.g. a "block" transfer) would be detrimental to CPU performance (e.g. interrupt latency).
It sounds reasonable. Thanks for the answer!

Best Regards, arhiv6.