Sign In

Don't have a Xilinx account yet?

  • Choose to receive important news and product information
  • Gain access to special content
  • Personalize your web experience on Xilinx.com

Create Account

Username

Password

Forgot your password?
XClose Panel
Xilinx Home
Reply
Visitor
iostrym
Posts: 6
Registered: ‎12-05-2011
0

compxlib problem with modelsim

[ Edited ]

Hi,

 

on windows on modelsim 6.5b, I run following command :

 

compxlib -s mti_se -l verilog -lib all -arch virtex5 -w -dir E:/WORKING/Xilinx_projects/ddr3_ctrl_test/compiled_lib/

 

and I get following libraries compiled and modelsim.ini is modified like this :

 

secureip = E:\WORKING\Xilinx_projects\ddr3_ctrl_test\compiled_lib\/secureip
unisims_ver = E:\WORKING\Xilinx_projects\ddr3_ctrl_test\compiled_lib\/unisims_ver
unimacro_ver = E:\WORKING\Xilinx_projects\ddr3_ctrl_test\compiled_lib\/unimacro_ver
simprims_ver = E:\WORKING\Xilinx_projects\ddr3_ctrl_test\compiled_lib\/simprims_ver
xilinxcorelib_ver = E:\WORKING\Xilinx_projects\ddr3_ctrl_test\compiled_lib\/xilinxcorelib_ver

 

But on linux on modelsim 6.5f on linux, with same command (compxlib -s mti_se -l verilog -lib all -arch virtex5 -w -dir /home/riboure/work/xilinx_projects/compiled_lib/) , following lines are added in modelsim.ini and compilation time increase :

 

secureip = /home/riboure/work/xilinx_projects/compiled_lib/secureip
unisims_ver = /home/riboure/work/xilinx_projects/compiled_lib/unisims_ver
unimacro_ver = /home/riboure/work/xilinx_projects/compiled_lib/unimacro_ver
simprims_ver = /home/riboure/work/xilinx_projects/compiled_lib/simprims_ver
xilinxcorelib_ver = /home/riboure/work/xilinx_projects/compiled_lib/xilinxcorelib_ver

unisim = /home/riboure/work/xilinx_projects/compiled_lib/unisim
unimacro = /home/riboure/work/xilinx_projects/compiled_lib/unimacro
simprim = /home/riboure/work/xilinx_projects/compiled_lib/simprim
xilinxcorelib = /home/riboure/work/xilinx_projects/compiled_lib/xilinxcorelib
edk = /home/riboure/work/xilinx_projects/compiled_lib/edk
cdn_axi3_master_bfm_wrap_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi3_master_bfm_wrap_v1_00_a
cdn_axi3_master_bfm_wrap_v2_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi3_master_bfm_wrap_v2_01_a
cdn_axi3_slave_bfm_wrap_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi3_slave_bfm_wrap_v1_00_a
cdn_axi3_slave_bfm_wrap_v2_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi3_slave_bfm_wrap_v2_01_a
cdn_axi4_lite_master_bfm_wrap_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_lite_master_bfm_wrap_v1_00_a
cdn_axi4_lite_master_bfm_wrap_v2_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_lite_master_bfm_wrap_v2_00_a
cdn_axi4_lite_master_bfm_wrap_v2_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_lite_master_bfm_wrap_v2_01_a
cdn_axi4_lite_slave_bfm_wrap_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_lite_slave_bfm_wrap_v1_00_a
cdn_axi4_lite_slave_bfm_wrap_v2_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_lite_slave_bfm_wrap_v2_00_a
cdn_axi4_lite_slave_bfm_wrap_v2_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_lite_slave_bfm_wrap_v2_01_a
cdn_axi4_master_bfm_wrap_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_master_bfm_wrap_v1_00_a
cdn_axi4_master_bfm_wrap_v2_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_master_bfm_wrap_v2_00_a
cdn_axi4_master_bfm_wrap_v2_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_master_bfm_wrap_v2_01_a
cdn_axi4_slave_bfm_wrap_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_slave_bfm_wrap_v1_00_a
cdn_axi4_slave_bfm_wrap_v2_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_slave_bfm_wrap_v2_00_a
cdn_axi4_slave_bfm_wrap_v2_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_slave_bfm_wrap_v2_01_a
cdn_axi4_streaming_master_bfm_wrap_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_streaming_master_bfm_wrap_v1_00_a
cdn_axi4_streaming_master_bfm_wrap_v2_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_streaming_master_bfm_wrap_v2_01_a
cdn_axi4_streaming_slave_bfm_wrap_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_streaming_slave_bfm_wrap_v1_00_a
cdn_axi4_streaming_slave_bfm_wrap_v2_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/cdn_axi4_streaming_slave_bfm_wrap_v2_01_a
proc_common_v3_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/proc_common_v3_00_a
ahblite_axi_bridge_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/ahblite_axi_bridge_v1_00_a
common_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/common_v1_00_a
apu_fpu_v3_10_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/apu_fpu_v3_10_a
apu_fpu_virtex5_v1_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/apu_fpu_virtex5_v1_01_a
axi2axi_connector_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi2axi_connector_v1_00_a
axi_7series_ddrx_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi_7series_ddrx_v1_00_a
axi_7series_ddrx_v1_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi_7series_ddrx_v1_01_a
axi_7series_ddrx_v1_02_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi_7series_ddrx_v1_02_a
axi_ahblite_bridge_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi_ahblite_bridge_v1_00_a
axi_apb_bridge_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi_apb_bridge_v1_00_a
axi_bram_ctrl_v1_01_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi_bram_ctrl_v1_01_a
axi_bram_ctrl_v1_02_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi_bram_ctrl_v1_02_a
axi_bram_ctrl_v1_03_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/axi_bram_ctrl_v1_03_a
lib_common_v1_00_a = /home/riboure/work/xilinx_projects/compiled_lib/edk/lib_common_v1_00_a

 

... and many more !

 

How can I make modelsim in linux compile only secureip, unisims_ver, unimacro_ver, simprims_ver and xilinxcorelib_ver ?

 

regards,

 

 

Xilinx Employee
debrajr
Posts: 122
Registered: ‎04-17-2011
0

Re: compxlib problem with modelsim

Try using:

compxlib -s mti_se -l verilog -lib secureip -lib unisims_ver -lib unimacro_ver -lib simprims_ver -lib xilinxcorelib_ver -arch virtex5 -w -dir E:/WORKING/Xilinx_projects/ddr3_ctrl_test/compiled_lib/
Visitor
iostrym
Posts: 6
Registered: ‎12-05-2011
0

Re: compxlib problem with modelsim

hi thanks for your answer but compxlib doesn't accept to compile separately these library.  valid library name for compxlib are the followings :

 

#
# -lib <library> : Specify the name of the library to be compiled. The valid
# library names are :-
#
# unisim (alias u)
# simprim (alias s)
# uni9000 (alias n)
# xilinxcorelib (alias c)
# coolrunner (alias r)
# edk (alias e)
#

Visitor
iostrym
Posts: 6
Registered: ‎12-05-2011
0

Re: compxlib problem with modelsim

Hello,

 

is there a solution to limit the compilation to the needed library and then save time.

 

regards,

Xilinx Employee
scampbell
Posts: 69
Registered: ‎10-04-2011
0

Re: compxlib problem with modelsim

Hello "iostrym",

 
One of the behaviors with modelsim.ini as set by the $MODELSIM environement variable is that it seems to merge with existing modelsim.ini file content, overwriting only what is modified. So, if you already have a modelsim.ini file with edk libraries for instance, those will not be removed if you later re-compile with only a subset of the libraries.
 
So, to start I usually set the $MODELSIM location to where I will compile the libriaries, and then remove any existing modelsim.ini files from that location. If no file is found, compxlib will create a new one.
 
Then, given your example of library subsets, I would run this ...
 
compxlib -s mti_se -arch virtex5 -lib unisim -lib simprim -lib xilinxcorelib -dir ./libraries
 
I compiled the libraries to a local "libraries" directory, but you may remove this command if you wish.
 
Your original command had the "-lib all" switch in it which of course compiled all you libraries.
 
OK, hope this helps ....
 
 
Visitor
iostrym
Posts: 6
Registered: ‎12-05-2011
0

Re: compxlib problem with modelsim

Hi thanks for your answer.

 

I don't have a $modelsim variable, I created a modelsim.ini in modelsim working directory. So i think it must use this modelsim.ini instead of those present in modelsim installation directory.

 

you want to compile the following libraries -lib unisim -lib simprim -lib xilinxcorelib but I was said that (at least) secure_ip library is needed for my PCIe and DDR3 xilinx IP simulations. And in my upper post I precise that compxlib don't want do compile separately secure_ip library. So without using "-lib all" option I don't know how to compile secure_ip.

 

Also, I don't know what are the library taken in account by the "-lib all" option, and why in some case with such option there are 5 libraries that are compiled and why in other case there are more than 20 libraries that are compiled :/

 

Also, I don't know difference between unisim and unisim_ver and also between simprim and simprim_ver...

 

Best regards,