XST block ram init in include files

hi,

I'm having trouble initializing some memory in a verilog include file. If I do the following :

BRAM16_S9 memory ( ... ); // synthesis attribute init_00 of memory is "...."

Everything works fine.

However, I really want to have the memory initialization done in an include file (because it is generated), like such:

BRAM16_S9 memory ( ... ); `include "init.v"

(with the init.v file containing the // synthesis attribute ...).

But then I get an error from XST:

Cannot find in module

Is there a way to make this work ?

Arlet

Reply to
Arlet
Loading thread data ...

Hi Arlet, You can use a coe. file (memory coefficient file) that will be attached to your BRAM. The Xilinx "core generator GUI" has internal tool called "Memory Editor" it's under the Core generator "Tools" menu. Using this tool you can easily create memory init files that can be attached to your memory.

Regards, Moti.

Reply to
Moti

file.

Did you try to put the memory instantiation in the include file? I am assuming it won't change from build to build so you could just think of it as a header to the generated file. The tools should be able to deal with this if the memory and its initialization are in the same file (but I haven't tried it myself).

Reply to
Gabor

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.