Compile all the files once only for all round of simulations

Status
Not open for further replies.

syedshan

Advanced Member level 1
Joined
Feb 27, 2012
Messages
463
Helped
27
Reputation
54
Reaction score
26
Trophy points
1,308
Location
Jeonju, South Korea
Visit site
Activity points
5,134
Hi all


I tried to explain the Title itself...
Actually I am desining osmething communicating with the DDR3 for that I use the MIG, hence there are loads of files that I need to compile, which takes quite a lot of time.
Then after that simulation itself takes time.

Hence what I want is to compile the files that are not subject to any change (i.e. which are made by Xilinx IP core, etc.) only once, and later just use the compiled file etc. of this when I load in the modelsim. Is there any way to do that.

Note that I am using .do file for running the modelsim from ISE.
 

stick the MIG and DDR code in it's own directory. Create the work library in modelsim:

vlip work;

compile all of the DDR model and MIG code

vcom/vlog filea.vhd
--etc

now in your working directory, do the following command:

vlib MIG_lib
vmap MIG_lib /somewhere/MIG_lib/work

then vcom/vlog your working files.

no need to compile all of the DDR and MIG as they shouldnt be changing.
 

Thank you for your response...

I tried many times and followed different steps, ultimately I think this is the best, but even then it does not work....

Lets say the Main folder is

C:/.../prj_UD_ver2

2. Then MIG files are in C:/.../prj_UD_ver2/src/RTL/MIG_files
3. I ddid following steps.
Code:
cd C:/.../prj_UD_ver2/src/RTL/MIG_files
vlib work
vmap work C:/.../prj_UD_ver2/src/RTL/MIG_files/work
then vcom/vlib all....

4. Now these are the run.do file that I ran.(not that I invoke it thru ISE, giving the proper .do file location etc.)
Code:
#change back to simulation folder
cd C:/.../prj_UD_ver2/src/sim

vmap unisim C:/Xilinx/13.2/ISE_DS/ise/vhdl/mti_se/6.5c/nt64/unisim

vlib MIG_lib;
vmap MIG_lib C:/.../prj_UD_ver2/src/RTL/MIG_files/work;

vlib work;
vmap work C:/.../prj_UD_ver2/src/sim/work;
vcom other simulation and other RTL files (except ofcourse MIG)

vsim -t fs -novopt +notimingchecks -L unisim work.sim_tb_top glbl

...
..

5. But at vsim location I get the following errors, where as they are already compiled in the the MIG_lib

- - - Updated - - -

Hence simulation did not proceed furhter as expected,
 

The errors seems like the modules clk_ibuf, odelay_ctrl, infrastructure and memc_ui_top are not compiled yet or may be the compilation order is not proper.

You can compile these modules/files by include it in the *.do file, if the files are already there in the *.do file then you can change the compilation order according to the module instantiation.

If any of the modules are Xilinx primitive, then you need to map the Xilinx libraries like Simprim, Unisim, XilinxCorelib to the ModelSim
 

Thank you for reply...


Can you verify, are the steps
I have seen in the MIG_RTL/work folder (to which to MIG_lib is mapped) that the infrassctrue is copiled there, similarly memc_uip_top as well.

I have used the unisim already mapped ( I think it is enough for Blk memory and FIFO) since I never ised xilinxCorelib as far as I remember, but even then it worked( I mean FIFO and ROM)
 

The thing is that have you compiled these modules/files clk_ibuf, odelay_ctrl, infrastructure and memc_ui_top, before the compilation of the mig_des_MT41J256.vhd file, because when the ModelSim is tries to compile the mig_des_MT41J256.vhd file the modules clk_ibuf, odelay_ctrl, infrastructure and memc_ui_top are not in the work library.

You should compile these clk_ibuf, odelay_ctrl, infrastructure and memc_ui_top modules/files before the compilation of mig_des_MT41J256.vhd
 

again the errors


The MIG_IPs library shows that it has infrastrucre, iodelay, and others compiled.... Then why not working properly

What is rom_table.mif, note that rom_table is a ROM generated with xilinx core and hence its library xilinxcoelib also mapped already...!!!



waiting madly
 

What is rom_table.mif, note that rom_table is a ROM generated with xilinx core and hence its library xilinxcoelib also mapped already...!!!
[/B]

*.mif is nothing but the Memory Initializing File. When you are generating the ROM module, you can initialize the ROM using the *.coe file.Then after the ROM generation there will be a *.mif file for the ROM module

- - - Updated - - -

For sample *.coe you can google it
 

Pardon me if this iterates you,

but yes I got to your point and even found and saw the .mif files for the respective cores.
Even they exist at location.

I Also want to verify the .do file and the the flow that I am following.

Bests,
Shan
 

you have ; on the end of some lines in the TCL file. you dont use ; on the end and may be causing the vmap to fail.

and this line "vcom other simulation and other RTL files (except ofcourse MIG)" need to be commented out.
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…