How does DMA work?

Any technical questions about the Epiphany chip and Parallella HW Platform.

Moderator: aolofsson

How does DMA work?

Postby rfw » Tue Dec 31, 2013 10:44 am

I'm just wondering about how DMA works with the Epiphany architecture.

From the documentation, I gather that you can set the STARTUP bit to 1 to make the DMA engine fetch a DMA descriptor from memory and load it into the register. Does that mean the new DMA descriptor (and configuration) from memory overwrites the configuration I would have just loaded into the DMA register to load the new configuration?

After DMA completes, I understand that it triggers an interrupt to signal its completion (if IRQEN is set). If STARTUP is still set after DMA completes, does it fetch a new descriptor from the address contained in the DMA configuration last loaded from the first descriptor? If so, what's the difference between STARTUP and CHAINMODE (apart from STARTUP kickstarting DMA)?

I am also unclear about the purpose of DMAEN -- if I set STARTUP, do I need to set DMAEN?
rfw
 
Posts: 1
Joined: Mon Dec 17, 2012 3:23 am

Re: How does DMA work?

Postby aolofsson » Sun Jan 05, 2014 9:36 pm

User avatar
aolofsson
 
Posts: 1005
Joined: Tue Dec 11, 2012 6:59 pm
Location: Lexington, Massachusetts,USA


Return to Epiphany and Parallella Q & A

Who is online

Users browsing this forum: No registered users and 19 guests