前段时间看到网上有人在使用debussy软件对Verilog代码进行调试,而且都称赞其是多么的好用,看着很是馋人,说吧,现在用的是quartus与modelsim的联调,似乎还是可以的,但就是每次稍微改一下代码,想要添加一些输出信号的时候,又得改很多地方,而且仿真时间也越来越长,尤其是现在自己做的设计是越来越大,想着这个没接触过的debussy软件究竟怎么个好法,能不能解决我的这些问题呢?不管怎样,试一试就知道了,但每次安装软件的时候,就要破解啊什么的,找各种资料,很是麻烦,但是我的好奇心呢又迫使我硬着头皮搞这个软件,今天整整搞了一天,总算是,搞定了,debug的好日子就在后头了哦。下面记录一些中间的步骤。实现了不打开modelsim的GUI,使用批处理文件,执行之后,就可以出现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 安装、和谐软件。略。
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”,(这里一定要注意前面的分号也要删除掉,否则无法正确运行,在这里差点吃大亏)
保存;关闭;设为只读。
配置完,以后就一劳永逸了。
三、然后是各个文件的安排,在一个主文件夹里,新建文件夹rtl,用来放置设计文件和testbench文件,与其并行放置的是rtl.f、run.bat、sim.do三个文件,可以参考下图:
1、编写欲仿真的文件和testbench放在rtl文件夹中,在写testbench时,除遵守一般规则外,需要在其中另外添加如下代码,用来产生debussy所需要的波形文件。
// dump fsdb file for debussy
initial begin
$fsdbDumpfile("wave.fsdb");
$fsdbDumpvars;
end
2、编写HDL文件列表文件,供ModelSim和Debussy使用。
rtl.f如下:
rtl/cmd_control.v
rtl/cmd_control_test.v
rtl/cmd_gen.v
rtl/cmd_send.v
rtl/data_detect.v
rtl/data_process.v
rtl/miller2_dec.v
rtl/uart_tx.v
3、编写ModelSim命令行脚本文件。
sim.do如下:
vlib work
vlog -f rtl.f
vsim work.cmd_control_tst
run 1000ms
quit
4、编写批处理脚步文件,调用命令行ModelSim生成波形文件,再调用Debusyy查看。
run.bat如下:
::关闭回显
@ECHO OFF
::设置软件路径
SET debussy=C:\Novas\Debussy\bin\Debussy.exe
SET vsim=D:\modeltech_6.5g\win32\vsim.exe
::ModelSim Command
%vsim% -c -do sim.do
::删除ModelSim生成的相关文件
RD work /s /q
DEL transcript vsim.wlf /q
::Debussy Command
%bussy% -f rtl.f -ssf wave.fsdb -2001
::删除波形文件
DEL wave.fsdb /q
::删除Debussy生成的相关文件
RD Debussy.exeLog /s /q
DEL debussy.rc /q
::退出命令行
EXIT
5、双击运行run.bat
四、几个注意的地方
bat文件在任何情况下都是通用的,除非不需要删除一些文件时,可以更改下里面的程序;
source file的路径rtl一定记得要加上;
.v文件的开头都应该加上timescale;
rtl.f中文件的路径,注意路径用的是/,而不是\,实践证明路径是可以随意更改的,保证路径正确
sim.do文件中顶层文件的修改,即testbench,切忌这个文件后面不加.v,并且run 后面的时间不能为1s,报错说是invalid time value
testbench文件即可直接拷贝.vt文件过去,但是有一点要注意,要添加debussy的那几个函数,不然无法生成fsdb文件,而且要保存为.v文件
每个文件上都要加上'timescale的时间定义
至此,大功告成。