Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Can't write on BRAM area which is initialized ???

Status
Not open for further replies.

FINALFANTASYFAN

Member level 1
Joined
Mar 22, 2007
Messages
32
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
1,491
I'm using S3E kit and facing a problem that I can't write data on Block RAM area which is initialized with .MIF file by Xilinx tool.

I can read data from this area, then compute and/or write to any other area. When I try writing to initialized area, all data in this BRAM is cleared to ZEROs. So, is it the fact that we can't write data on BRAM area which we 've initialize with .MIF file?

Did anyone experience this? Plz, help me answer this question. I really wanna know if it's my design's fault or it's somewhat BRAM problem.
 

I'm sure it's not ROM. And as I said I could write data to any other area in this BRAM

More detailed, I initialize an image to BRAM to do unit test of a Smoothen-Image block which uses 3x3 window of Gaussian Coef. I smoothen this image( that is initialized at the beginning area of BRAM which called area "0" ) 3 times. There are 3 ways:

- Read area "0" => smoothened => write area "1" ( defferent from area "0") then
Read area "1" => smoothened => write area "2" ( defferent from area "1") then
Read area "2" => smoothened => write area "3" ( defferent from area "2")
* This way it worked and the result is OK.

- Read area "0" => smoothened => write area "1" ( defferent from area "0") then
Read area "1" => smoothened => write area "0" then (**)
Read area "0" => smoothened => write area "1"
* This way, all memory is cleared to ZEROs. Even if I stop at (**), that means just read data from area "1" and write to "0", both areas are cleared.


- Read area "0" => smoothened => write area "1" ( defferent from area "0") then
Read area "1" => smoothened => write area "2" ( defferent from area "1") then (***)
Read area "2" => smoothened => write area "0"
* This way, all memory is cleared to ZEROs. However, if I stop at (***), there are correct smoothened images in area "1" and "2"


That's why I think there is something wrong with writing to area "0" which is initialized with a .MIF file.

Does anyone have any idea?
 

Problem resolved!

Reason: careless mistake in wrapper entity for testing leads to recursion, so force all pixels to ZEROs.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top