Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20705 Discussions

DMA vs MM templates

Altera_Forum
Honored Contributor II
1,042 Views

The goal is for the nios needs to transmit short bursts of data (512bits) from sdram to an ip block every 50 usec. 

 

Probably tons of ways to do this, but I figure one way would be for the ip block to instantiate 512bits of ram to store the incoming data, as well as a mm slave template for access to the avalon bus.. the nios could then command a transfer from sd to the ip block. 

 

However, would a dma be more effective? For example, could a dma controller write directly from sdram to an ipblock (not on the avalon bus)? 

 

Is there a better way to do this?
0 Kudos
2 Replies
Altera_Forum
Honored Contributor II
326 Views

thank you!!!!!!!!!!!!!!!!!!!

0 Kudos
Altera_Forum
Honored Contributor II
326 Views

The Nios CPU would need to do 16 32-bit transfers to write 512 bits to your IP, and this doesn't seem a lot to do it every 50 us. 

You could use a DMA too. A SGDMA component, as an example, could transfer the data to your IP block through an Avalon Stream interface. But if the DMA needs to read your main RAM at a different location each time, I think that the time to fill the DMA descriptor will take some time too, and I'm not sure that you'll gain a lot.
0 Kudos
Reply