DMA with EDK

Hi!

I unsuccessfully tried to find information about Direct Memory Access trough EDK. I would like to start by creating a simple custom OPB peripheral capable of writing Data to a memory accessible by a power PC on my Virtex 2P. Unfortunately, among other things, none of the signals provided trough user_logic.vhd (when DMA is enable by the IPIF) allows the peripheral to specify the address (where the peripheral could write data) leading me to think I got whole DMA thing wrong.

However, I red in an other thread that IPIF is suppose to create a simple state machine accessing the bus when the DMA option is enable (I saw no state machine in user_logic.vhd) leading me to think that the issue might also be related to the EDK version I'm using (v8.1). Anybody knows where I could find pertinent information on the subject?

Thanks

Reply to
louis.dupont
Loading thread data ...

Hi Louis,

I built OPB peripheral with DMA included using create/import peripheral. Operation is very simple: write value to DMACR (control register) write source address to SA write destination address to DA write transfer length to LENGTH - this starts transfer

Registers for DMA are at peripheral_base_address+0x400. Search for more information in DS416 and in generated peripheral header file (access addresses).

Make it work

Guru

Reply to
Guru

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.