We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

Showing results for 
Search instead for 
Did you mean: 
Observer dkartis2
Registered: ‎11-07-2013

Fast BRAM read

I have a Microblaze design that uses a DMA controller to store ADC data in BRAM, I only have a limited amount of BRAM on my Artix-7 chip, so I need to constantly read from BRAM to get a continuous stream of data. I have the DMA controller firing an interrupt each time the start or end of a transfer occurs. Half of the BRAM is written to per transfer


Currently, I'm reading each memory address individually in a for loop using Xil_In32. I need to read a fixed chunk at a time. I put a counter that increments everytime I get an end of transfer interrupt and another to show I acted on the flag and cleared it. When I don't read the data, my code interrupt count and and my acted upon count matches, but when I do read from BRAM, I see another 6 interrupts, or 3 full BRAM data writes, happening after I start reading the data.


Is there a faster way to read memory? I have a memory constraint so expanding isn't an option as of now.

0 Kudos
1 Reply
Xilinx Employee
Xilinx Employee
Registered: ‎02-01-2008

Re: Fast BRAM read

How is the bram connected to the microblaze? LMB would provide the fastest path.



0 Kudos