03 makeflie脚本,verilog代码一步完成编译仿真

虚拟机:VMware -14.0.0.24051
环 境:ubuntu 18.04.1
脚 本:makefile
应用工具:vcs 和 verdi


文章目录

  • 一、脚本内容
  • 二、讲解
  • (1)make all
  • (2)make elab
  • (3)make run/rung
  • (4)make verdi
  • (5)make clean


一、脚本内容

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的可视化窗口,可在这个窗口直接进行仿真波形的查看。窗口如下:
03 makeflie脚本,verilog代码一步完成编译仿真_第1张图片

(4)make verdi

  以上面的makefile为例,在前面生成log文件后,在终端输入make verdi,可以调起verdi波形仿真软件直接查看波形。
03 makeflie脚本,verilog代码一步完成编译仿真_第2张图片

(5)make clean

  以上面的makefile为例,在下一次仿真前,需要清除上一次仿真的一些相关文件,重新编译。所以我一般都是直接make all,依次执行:clean elab run verdi


作者:xlinxdu
版权:本文版权归作者所有
转载:未经作者允许,禁止转载,转载必须保留此段声明,必须在文章中给出原文连接。

你可能感兴趣的:(Linux&Vi,makefile,vcs,verdi,verilog,linux)