问题描述
如何使用NC-VHDL运行仿真?
有关编译NC-VHDL仿真库的信息,请参阅(Xilinx答复9420) 。
解决/修复方法
在使用NC-VHDL之前,必须将仿真库编译为<compiled_lib_dir>。有关编译Xilinx VHDL库的说明,请参阅(Xilinx答复9420) 。
根据RTL仿真的设计组成(Xilinx实例化原语,COREGen等),编辑hdl.var和cds.lib文件以指定库映射,如下所示:
#cds.lib
DEFINE unisimr <compiled_lib_dir> / unisim
DEFINE simprim <compiled_lib_dir> / simprim
DEFINE xilinxcorelib <compiled_lib_dir> / xilinxcorelib
DEFINE worklib worklib
#hdl.var
DEFINE VIEW_MAP($ VIEW_MAP,.v => v)
DEFINE LIB_MAP($ LIB_MAP,<compiled_lib_dir> / unisimr => unisim)
DEFINE LIB_MAP($ LIB_MAP,<compiled_lib_dir> / simprim => simprim)
DEFINE LIB_MAP($ LIB_MAP,<compiled_lib_dir> / xilinxcorelib => xilinxcorelib)
DEFINE LIB_MAP($ LIB_MAP,+ => worklib)
设置库后,按如下方式编译和仿真设计:
ncvhdl test_dv.vhd dcmt.vhd
ncelab -vhdl_time_precision 1ps -work worklib -cdslib cds.lib -access + wc worklib.testbench:behavior
注意:如果使用IUS5.5及更高版本,此命令将更改为:
ncelab -lib_binding -vhdl_time_precision 1ps -work worklib -cdslib cds.lib -access + wc worklib.testbench:behavior
ncsim -extassertmsg -gui -cdslib cds.lib worklib.testbench:behavior
有关对SDF文件进行反标注以进行时序仿真的信息,请参阅(Xilinx答复19447) 。
正确注释SDF后,将NC-Elab更改为以下内容:
ncelab -vhdl_time_precision 1ps -work worklib -cdslib cds.lib -SDF_CMD_FILE <file_name> -access + wc worklib.testbench:behavior。
注意:如果使用IUS5.5及更高版本,此命令将更改为:
ncelab -lib_binding -vhdl_time_precision 1ps -work worklib -cdslib cds.lib -SDF_CMD_FILE <file_name> -access + wc worklib.testbench:behavior。
没有回复内容