Forum Discussion
Altera_Forum
Honored Contributor
19 years agoDMA receive channel
Hi Nios community, I'm building a system that uses a DMA device in a NiosII core. It is set up as a DMA receive channel to stream data from a fixed address peripheral to SRAM memory. T...
Altera_Forum
Honored Contributor
19 years ago --- Quote Start --- originally posted by mumford@Mar 29 2007, 12:52 AM further comments / questions:
the hal api for controlling the dma process appears to be incomplete. to operate a receive side dma from a fixed address and using flow control (including an endofpacket signal) some bits of the dma control register need to be set / cleared. the only way to do this is to resort to the iowr_altera_avalon_dma_control macros and set / clear the bits manually.
now i'm thinking why use the api at all, if i need to resort to older style register access macros. is there any disadvantage to using these macros?
any comments or suggestions welcome.
peter
<div align='right'><{post_snapback}> (index.php?act=findpost&pid=22603)
--- quote end ---
--- Quote End --- Hi Peter, well I tried to use the HAL API functions, but failed. Maybe I included some headerfiles in the wrong way or don't no what. Then I changed over to use the IOWR_ALTERA_AVALON_DMA_... macros and it works perfectly. So I couldn't find any disadvantages. Additionally I use the "streaming_output_register" component from "Post your own IP" here in the forum. But in my case it's again a memory to peripheral design, so can't tell about the other way round. Anyway, maybe you find some ideas there on how to do it. Big success!