用VCS直接仿真vivado工程

前言

在日常搬砖过程中,在IC design进行fpga原型验证时,在上fpga测试之前,往往需要对vivado工程进行仿真,而vivado工程中可能存在较多的xilinx ip或者block design,直接使用vivado仿真,速度难以接收。如果使用vcs进行仿真,这些ip的仿真文件较多,更恶心的是如果使用axi_interconnect等ip时,每重新generate一次block design,仿真文件会发生变化,难以维护固定的vcs仿真脚本。为了直接对vivado工程进行仿真,vcs可以直接调用vivado自动生成的vcs脚本。包含以下几个步骤:

编译vcs仿真库

选好vcs的path进行编译:

在这里插入图片描述

simulation设置

1、选择Verilog Compiler Simulator (VCS)
2、勾选“Generate simulation scripts only”,只生成脚本即可
3、避免在编译时出错,编译选项加入:-sverilog -timescale=1ns/1ps
在这里插入图片描述

Run Simulation

运行仿真生成vcs脚本:compile.sh和elaborate.sh

写Makefile

编写vcs仿真的makefile,调用上面的两个脚本文件。

#-------------------------------------------------------------------------------------------------------
all:comp elaborate sim
#-------------------------------------------------------------------------------------------------------
export VERDI_HOME=/nfs/tools/synopsys/verdi/R-2020.12-SP1
vcs_elab_opts=-full64 -debug_pp -t ps -licqueue -l elaborate.log -P ${VERDI_HOME}/share/PLI/VCS/LINUX64/novas.tab ${VERDI_HOME}/share/PLI/VCS/LINUX64/pli.a
vcs_sim_opts=-ucli -licqueue -l sim.log
top=top
#ref_dir=$(abspath $(lastword $(MAKEFILE_LIST)))
ref_dir=$(shell pwd)
#-------------------------------------------------------------------------------------------------------
comp: 
	cd ../project_test/project_ex.sim/sim_1/behav/vcs && ./compile.sh

#-------------------------------------------------------------------------------------------------------
elaborate:
	cd ../project_test/project_ex.sim/sim_1/behav/vcs && ./elaborate.sh
	cp -rf ../project_test/project_ex.sim/sim_1/behav/vcs/csrc ./
	cp -rf ../project_test/project_ex.sim/sim_1/behav/vcs/t* ./
#-------------------------------------------------------------------------------------------------------
sim:
	./tb_${top}_simv ${vcs_sim_opts} -do simulate.do \
	-cm line+cond+fsm+branch+tgl \
	-cm_name ${top} \
	-cm_dir ./${top}.vdb

执行脚本,运行vcs仿真

terminal下直接make命令执行vcs仿真,生成fsdb文件

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值