cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
loutronique
Visitor
Visitor
4,469 Views
Registered: ‎06-01-2010

Locallink and DMA

Jump to solution

Hi All,

I need to make a DMA transfert between a ddr2 and a bram.

So can i use the do this by connecting the LocalLink interface to xps_LL_fifo which will be connected to the plb_bus(the bram is connected to the plb) ?

 

I am using a powerpc and xps for the first time.

 

Thank you for the help.

regards

lounes

0 Kudos
Reply
1 Solution

Accepted Solutions
shuns
Explorer
Explorer
5,589 Views
Registered: ‎10-01-2008

Hi,

 

Possibly not. It sounds like to me, from your description,  you would like connect the MPMC SDMA PIM through the LL_FIFO to the xps_bram on the PLB bus. Although this is logically possble, it won't work.

 

To explain a little bit, the SDMA engine can move through data with a master peripheral (for example, xps_ll_temac) connected to it. It requires the LL peripheral to be able to initiate a transaction on the LL interface (for example, when xps_ll_temac receives a packet) as well as receving data from the SDMA engine (for example, a user needs to transmit a packet). But nether the xps_bram nor xps_ll_fifo has this kind of function.

 

Local link and SDMA might not be an easy concept to understand for a first time user. To start with, I would suggest keep it with the PLB bus and use the central DMA core to move data around. Although the performance won't be as high as SDMA, it is nonetheless a proven solution and all the necessary cores (MPMC, xps_central_dma, xps_bram) are readily available for you to create a working system quickly.

 

Hope this will help you.

 

-Yan Shun Li

View solution in original post

4 Replies
shuns
Explorer
Explorer
5,590 Views
Registered: ‎10-01-2008

Hi,

 

Possibly not. It sounds like to me, from your description,  you would like connect the MPMC SDMA PIM through the LL_FIFO to the xps_bram on the PLB bus. Although this is logically possble, it won't work.

 

To explain a little bit, the SDMA engine can move through data with a master peripheral (for example, xps_ll_temac) connected to it. It requires the LL peripheral to be able to initiate a transaction on the LL interface (for example, when xps_ll_temac receives a packet) as well as receving data from the SDMA engine (for example, a user needs to transmit a packet). But nether the xps_bram nor xps_ll_fifo has this kind of function.

 

Local link and SDMA might not be an easy concept to understand for a first time user. To start with, I would suggest keep it with the PLB bus and use the central DMA core to move data around. Although the performance won't be as high as SDMA, it is nonetheless a proven solution and all the necessary cores (MPMC, xps_central_dma, xps_bram) are readily available for you to create a working system quickly.

 

Hope this will help you.

 

-Yan Shun Li

View solution in original post

loutronique
Visitor
Visitor
4,424 Views
Registered: ‎06-01-2010

thank you shuns for your answe,

I will try to use the central dma but i just have an other question to be sure .

is there a linux driver to configure the dma with the powerpc because i only found standalone drivers ?

 

 

0 Kudos
Reply
shuns
Explorer
Explorer
4,403 Views
Registered: ‎10-01-2008

Hi,

 

Unfortinately, on the Linux front, there is no driver for the central DMA yet. You may have to write your own.

 

Sorry :(

 

Yan Shun Li

0 Kudos
Reply
loutronique
Visitor
Visitor
4,358 Views
Registered: ‎06-01-2010

thank you again shuns i will try to make the driver myself

 

 

 

0 Kudos
Reply