cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Observer
Observer
3,737 Views
Registered: ‎01-18-2010

want to add DMA mechanism in my processor

Hi all,

 

I am making a processor in verilog that implements wavelet algorithms. It works fine but there is a lot of load/store over head that the ALU has to do regarding fetching data and storing results. so I want add DMA capability to avoid ALU processing for loading and storing of data. 

Please suggest how can I add DMA capability to my processor.

 

Best Regards

Hamza Ali

0 Kudos
3 Replies
Highlighted
Xilinx Employee
Xilinx Employee
3,734 Views
Registered: ‎08-02-2011

Can you give more information? Are you using Microblaze? AXI?

 

I would guess you have streaming data for your wavelets. At first glance, you may want to look at AXI DMA pcore. You can just drag-drop it into your EDK project and hook it up to your AXI Stream peripheral

www.xilinx.com
0 Kudos
Highlighted
Observer
Observer
3,726 Views
Registered: ‎01-18-2010

I mean how can I write data to register file while processing some that from register file in parallel.

0 Kudos
Highlighted
Instructor
Instructor
3,722 Views
Registered: ‎07-21-2009

I mean how can I write data to register file while processing some that from register file in parallel.

 

I do not understand the meaning of your post.  Are you asking:

 

How can I both read from and write to a single register file, concurrently?

 

If this is the true meaning of your question, the answer is to use a dual-port memory.  A dual-port memory allows both reads and writes, concurrently, with independent addresses.  Use the LogiCore Block Memory Generator to create a customised dual-port memory.  See this page for documents describing this IP.

 

-- Bob Elkind

SIGNATURE:
README for newbies is here: http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369

Summary:
1. Read the manual or user guide. Have you read the manual? Can you find the manual?
2. Search the forums (and search the web) for similar topics.
3. Do not post the same question on multiple forums.
4. Do not post a new topic or question on someone else's thread, start a new thread!
5. Students: Copying code is not the same as learning to design.
6 "It does not work" is not a question which can be answered. Provide useful details (with webpage, datasheet links, please).
7. You are not charged extra fees for comments in your code.
8. I am not paid for forum posts. If I write a good post, then I have been good for nothing.
0 Kudos