- 文件结构如下
vcs_prj
rtl
tb
prj_file
其中rtl存放源代码,tb存放测试代码,prj_file存放Makefile以及生成的仿真文件等。
要生成fsdb文件,需要在tb的测试代码中加入如下代码:
initial
begin
$fsdbDumpfile("test.fsdb"); //指定生成的的fsdb
$fsdbDumpvars(0,u_rec_intra_top); //0表示生成u_rec_intra_top模块及以下所有的仿真数据
$vcdpluson; //下面这两个是保存所有仿真数据
$vcdplusmemon;
end
- Makefile文件内容如下:
comp:
vcs -full64 -cpp g++-4.8 -cc gcc-4.8 -LDFLAGS -Wl,--no-as-needed \
-fsdb \
-sverilog \
../tb/*.v \
../rtl/*.v \
-debug
sim_vcs:
./simv -gui
verdi:
verdi -ssf test.fsdb -f ./../rtl/*.v ./../tb/*.v
#test.fsdb为生成的fsdb文件,这个需要根据实际自己修改
clean:
rm -rf csrc \
rm -rf simv.daidir \
rm -rf DVEfiles \
rm -rf verdiLog \
rm -rf simv \
rm -rf *.vpd \
rm -rf *.key \
rm -rf *.vdb \
rm -rf *.fsdb \
rm -rf *.log \
rm -rf *.rc \
rm -rf *.conf
comp:
-fsdb为指定vcs在仿真的时候生成fsdb文件,-sverilog 为指定vcs在编译时支持sv语法。
3. 运行生成fsdb文件
在终端进入prj_file
文件夹,输入make comp
,之后可以生成simv
可执行文件.
然后继续输入make sim_vcs
执行./simv -gui
运行simv的gui界面,也就是打开dve软件。
之后点击仿真按钮,这个时候就开始生成了fsdb
文件。
仿真结束之后,关闭dve工具,在终端输入make verdi
执行verdi -ssf test.fsdb -f ./../rtl/*.v ./../tb/*.v
即可打开Verdi软件进行使用。