马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
第一步,设置modelsim和Debussy链接调用
一、关于debussy软件破解 用ultra edit 的hex模式将后面5个文件中的55 8B EC 81 EC 90 01 00 00 C7 45 FC 替换为33 C0 C3 81 EC 90 01 00 00 C7 45 FC,这五个文件是debussy.exe、nce2report.exe、nCompare.exe、netlistcom.exe、snslmgrd.exe测试过了,这种破解方法绝对可行。这五个.exe的路径是在安装盘的C:\Novas\Debussy\bin,打开进行替换即可。 二、更改配置: 1 安装modeltech_6.5。 2 拷贝文件..\Novas\Debussy\share\PLI\modelsim_pli\WINNT\novas.dll至文件夹..\modeltech_6.5\win32。 3 取消文件..\modeltech_6.5\modelsim.ini的只读属性后,打开。 找到 “; Veriuser = veriuser.sl”替换为“Veriuser = novas.dll”,(这里一定要注意前面的分号也要删除掉,否则无法正确运行,在这里差点吃大亏) 保存;关闭;设为只读。
第二步,在modelsim中自定义添加库文件
1、在想要的位置建立库文件的存放文件夹
2、打开modelsim软件,修改change direction的路径到刚新建的文件夹
3、执行编译功能,将想要添加的库.v文件编译进来,在编译时设定好库文件的名字
4、以可写的方式打开..\modeltech_6.5\modelsim.ini文件,在已有的library后面继续添加新的库
例:编译新建一个machxo3l_vlg的库, machxo3l_vlg = 新建文件夹路径/machxo3l_vlg
第三步、写好联合仿真的run.bat文件
::关闭回显
@ECHO OFF
::设置软件路径
SET debussy=C:\Novas\Debussy\bin\Debussy.exe
SET vsim=C:\modeltech_10.0c\win32\vsim.exe
::设置工程
set run_path=E:\project\wh_panel1\simulation
set top_test=tb_wh_panel1
set run_time=30ms
::write modesim command file
echo vlib work > %run_path%\sim.do
echo vlog -f source_list.f >> %run_path%\sim.do
echo vsim -L machxo3l_vlg -lib work work.%top_test%>> %run_path%\sim.do
echo run %run_time% >> %run_path%\sim.do
echo quit>> %run_path%\sim.do
::ModelSim Command
%vsim% -c -do sim.do
::删除ModelSim生成的相关文件
RD work /s /q
DEL transcript vsim.wlf /q
:ebussy Command
%Debussy% -f source_list.f -y ./lib/machxo3l -libext+.v -ssf %top_test%.fsdb -2001
::删除波形文件
:EL %top_test%.fsdb /q
::删除Debussy生成的相关文件
RD Debussy.exeLog /s /q
DEL novas.rc /q
::退出命令行
EXIT
第四步,写好code和testbench。并将其列入source.f文件
1、根据需要写好code
2、写好testbench。在testbench中生成fsdb文件
initial
begin
$fsdbDumpfile("tb_sim.fsdb");
$fsdbDumpvars(0,tb_sim);
//#3_000_000;
//$finish;
end
3、将Verilog文件列入source.f
例: ./source/tb_sim.v
自此可以运行run.bat文件,在Debussy中查看仿真结果波形
问题集锦
使用Lattice的ispLever软件,利用其IPexpress工具做了一个异步FIFO,并在顶层模块中成功例化,但是在用modelsim做仿真的时候,出现以下问题# ** Error: (vsim-3043) C:/Modeltech_6.2b/Lattice/Latticework/xp/DP8KA.v(116): Unresolved reference to 'GSR_INST'.
# Region: /IPMC_CPU_test/IPMC_CPU/m0/pdp_ram_0_0_0/EBR_INST
# ** Error: (vsim-3043) C:/Modeltech_6.2b/Lattice/Latticework/xp/DP8KA.v(117): Unresolved reference to 'PUR_INST'.
# Region: /IPMC_CPU_test/IPMC_CPU/m0/pdp_ram_0_0_0/EBR_INST
# ** Error: (vsim-3043) C:/Modeltech_6.2b/Lattice/Latticework/xp/FD1P3BX.v(38): Unresolved reference to 'GSR_INST'.
# Region: /IPMC_CPU_test/IPMC_CPU/m0/FF_61
# ** Error: (vsim-3043) C:/Modeltech_6.2b/Lattice/Latticework/xp/FD1P3BX.v(39): Unresolved reference to 'PUR_INST'.
# Region: /IPMC_CPU_test/IPMC_CPU/m0/FF_61
# Loading C:/Modeltech_6.2b/Lattice/Latticework.UDFDL7E_UDP_X
# ** Error: (vsim-3043) C:/Modeltech_6.2b/Lattice/Latticework/xp/FD1P3DX.v(38): Unresolved reference to 'GSR_INST'.
# Region: /IPMC_CPU_test/IPMC_CPU/m0/FF_60
# ** Error: (vsim-3043) C:/Modeltech_6.2b/Lattice/Latticework/xp/FD1P3DX.v(39): Unresolved reference to 'PUR_INST'.
# Region: /IPMC_CPU_test/IPMC_CPU/m0/FF_60
类似于这样的问题还有一大串,就不贴上来了。
PS:Lattice的library库文件我已经编译,仿真时也选择了该库文件。请各位大侠帮我看看,谢谢。
在测试代码上加上
GSR GSR_INST (.GSR(1'b1));
PUR PUR_INST (.PUR(1'b1));
就可以了 |