虚拟机:VMware -14.0.0.24051
环 境:ubuntu 18.04.1
脚 本:makefile
应用工具:vcs 和 verdi
新增代码覆盖率查看(教程,点击跳转)
一、脚本内容
LAB_DIR = /home/cyl/target/personal/sync_fifo
#LAB_DIR = /home/cyl/target/personal/async_fifo
#LAB_DIR = /home/cyl/target/personal/uart
#LAB_DIR = /home/cyl/target/personal/uartnew
#LAB_DIR = /home/cyl/target/personal/spi
#LAB_DIR = /home/cyl/target/personal/apb
#LAB_DIR = /home/cyl/target/personal/ahb2apb
DFILES = $(LAB_DIR)/*.v
all:clean elab run verdi
elab:
vcs -full64 -LDFLAGS -Wl,-no-as-needed -debug_acc+all -timescale=1ns/1ps \
-fsdb -sverilog -l comp.log \
${DFILES}
run:
./simv -l run.log
rung:
./simv -gui -l run.log
verdi:
verdi ${DFILES} \
-ssf ./*.fsdb &
clean:
rm -rf AN.DB \
rm -rf DVEfiles \
rm -rf csrc \
rm -rf simv.* \
rm -rf *simv \
rm -rf inter.vpd \
rm -rf ucli.key \
rm -rf *.log \
rm -rf verdiLog \
rm -rf novas* \
rm -rf *.fsdb
二、讲解
(1)make all
以上面的makefile为例,在终端输入make all,回车,会依次执行clean elab run verdi。
(2)make elab
以上面的makefile为例,在终端输入make elab,回车,会执行elab的内容,这部分只要是编译自己编写的verilog代码。
(3)make run/rung
以上面的makefile为例,在前面已经运行elab,编译好的verilog后,终端输入make run或 make rung,回车,会执行run或rung的内容,主要生成log文件,run和rung的区别在于,make rung会调用vcs的可视化窗口,可在这个窗口直接进行仿真波形的查看。窗口如下:
(4)make verdi
以上面的makefile为例,在前面生成log文件后,在终端输入make verdi,可以调起verdi波形仿真软件直接查看波形。
(5)make clean
以上面的makefile为例,在下一次仿真前,需要清除上一次仿真的一些相关文件,重新编译。所以我一般都是直接make all,依次执行:clean elab run verdi
作者:xlinxdu
版权:本文版权归作者所有
转载:未经作者允许,禁止转载,转载必须保留此段声明,必须在文章中给出原文连接。