Altera_Forum
Honored Contributor
14 years agostrange speed for DMA transfer
Hi guys,
I got my DMA transfer running on a DE2-115 board, from off-chip SDRAM to off-chip SRAM. The data to transfer was 0.5M 32-bit word type, just enough to fill the 2MB SRAM on the board. The burst option of the DMA was disabled. Everything was clocked at 50 MHz through a PLL. I used a performance counter core to measure the transfer speed, and got an amazing reading of 400 us, 20048 clocks, which means in a single clock cycle there were 0.5M/20048=26words transferred, which I don't believe at all !!! I also tested the performance core with usleep() function, and found the core work fine. So why did I get such a weirdly high speed reading of DMA transfer? My understanding is that DMA makes one transfer (with defined data width) every clock cycle, isn't it? The data was transferred correctly, although it was a simple array from 1 to 524288 (2^19). Any input is appreciated !