EDK Sim: BRAM won't init

Ugggggghhhhhhhhhhhhhhhhhhhhhhh!!!!!! I HATE UPGRADING XILINX TOOLS!!! Seems like every time we do, there are days of pain involved.

I have a sim that used to work in 8.2 that now does not work in 9.1. I have traced the problem to the fact that the BRAM for Microblaze instructions never initialize to anything. I have checked the system_init.v file and there is certainly non-zero data there. I have the system_conf module instantiated in my testfixture so there should be no problem there. The only warning that ModelSim SE 6.2f gives is"

** Warning: Parameter expressions did not converge. Possible loop involving defparams." But it doesn't tell anything about what parameter expressions are causing this or where they are. The sim continues on fine. But internally, all I get is a program counter that increments to infinity. There is nothing coming over the LMB.

Is there something that I am missing? I run the system.do file in ModelSim. Then I invoke the simulator with: vsim -L unisims_ver -L XilinxCoreLib_ver -voptargs="+acc" system_tb glbl. This is really driving me nutz! It is probably going to be some thing stupid!!!!

Reply to
motty
Loading thread data ...

I found a workaround. It seems that the system_init.v file differs between the 8.2 and 9.1 tools. There is an extra hierarchical component in the 9.1 generated file's defparam statements. I can deleted that from every line and the RAMs init fine and all is well and good. It even gets rid of a 'possible defparam loop' warning in ModelSim.

Now, why did that file change from the old tools? Who knows, right? Is no one simulating EDK projects with 9.1 tools? I can't believe that. Is my project screwed up such that this problem results? I have a webcase open and have given detailed explanation of the problem and my workaround. But I just spent a full day doing this. Yay! I am back to where I was before upgrading to the 9.1 tools!!! I didn't want to do it, but I needed some updated IP wizard.

Reply to
motty

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.