I am currently using Basys3 board.( Using microblaze soft processor in my design )
I am looking for a way to read and write data into bram quickly. I am using a custom ip to do the computations related to the data. The outputs computed by the ip are then stored into the bram which is then again sent to the ip which processes the data in a different manner this time around and so on.This continues for a few cycles.So data transfer in an out of bram is quite an important factor affecting the peformance of my design.
I went through the method of using Axi dma, i.e., 1. Connecting axi stream interfaces with the custom ip(M_AXIS_MM2S and S_AXIS_S2MM) and 2. (normal)axi interfaces with the bram(through bram controller and then block memory generator) ( using M_AXI_S2MM and M_AXI_MM2S of the dma).
Part 1: If I am understanding this correctly, then although the data in and out of the custom ip is using axi stream but the data transfer in the Bram is using axi interface only which slows down the design ( here i am assuming that data transfer through axi stream is much faster than (normal) axi which will take a lot of cycles to transfer the data in and out of bram - hence slower design.
So, I would like it if someone could approve or reject ( and then clarify the right answer ) this notion of mine. And if possible tell me a better approach than this for my design.
Part 2 : Although I am currently using Basys 3 Board, in future I will move on to a higher end board and will be eventually using ddr memory for my design instead of bram. So is there a way I can use bram ( in my current board ) which will resemble using ddr : Sort of like a design where my bram acts as a ddr so I can check my ideas for the application as if I was actually using ddr in the higher end board right now and not have to change much when I use this design (of basys 3 board) on the higher end board.
Question
hm563562
I am currently using Basys3 board.( Using microblaze soft processor in my design )
I am looking for a way to read and write data into bram quickly. I am using a custom ip to do the computations related to the data. The outputs computed by the ip are then stored into the bram which is then again sent to the ip which processes the data in a different manner this time around and so on.This continues for a few cycles.So data transfer in an out of bram is quite an important factor affecting the peformance of my design.
I went through the method of using Axi dma, i.e., 1. Connecting axi stream interfaces with the custom ip(M_AXIS_MM2S and S_AXIS_S2MM) and 2. (normal)axi interfaces with the bram(through bram controller and then block memory generator) ( using M_AXI_S2MM and M_AXI_MM2S of the dma).
Part 1: If I am understanding this correctly, then although the data in and out of the custom ip is using axi stream but the data transfer in the Bram is using axi interface only which slows down the design ( here i am assuming that data transfer through axi stream is much faster than (normal) axi which will take a lot of cycles to transfer the data in and out of bram - hence slower design.
So, I would like it if someone could approve or reject ( and then clarify the right answer ) this notion of mine. And if possible tell me a better approach than this for my design.
Part 2 : Although I am currently using Basys 3 Board, in future I will move on to a higher end board and will be eventually using ddr memory for my design instead of bram. So is there a way I can use bram ( in my current board ) which will resemble using ddr : Sort of like a design where my bram acts as a ddr so I can check my ideas for the application as if I was actually using ddr in the higher end board right now and not have to change much when I use this design (of basys 3 board) on the higher end board.
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now