VCS命令行选项总结&简单脚本实例

本文总结常用的VCS命令行选项,并提供两个简单的脚本,用于简单的仿真。第一个脚本用于笔者学习systemverilog时相关脚本。另一个是VCS+Verdi联合仿真的demo

VCS命令行选项总结&简单脚本实例

1.命令行选项介绍

命令行选项解释
-R编译后,立即执行仿真 ./simv
+v2k支持verilog 2001标准
-sverilog支持SV语言
-gui启用DVE图形界面
-f file文件包含一个源文件的绝对路径
-debug_all打开全部的调试

2.仿真脚本demo1

就是编写一个Makefile文件,然后执行make,即可执行相关命令,进行仿真,第一个仿真文件用于仿真一个简单的SV文件,不输出波形。
注:其中dut.f文件相当于一个列表,将需要编译的列出来即可。
Makefile文件的内容如下

vcs		:
		vcs 	\
		-f dut.f 	\
		-full64 -R +vc +v2k -sverilog -debug_all \
		| tee vcs.log
clean	:
		rm -rf *.log simv *.daidir csrc *.key DVEfiles *.vpd 

其中dut.f的文件内容如下

/home/icer/Desktop/IC/flow_SV/vcs/lec_code/lec1/data_type.sv

data_type.sv文件内容如下(该文件来自路科验证课内提供的codeing,笔者对于部分内容进行裁剪,这里仅仅作为示例)

module data_type;
bit b_signed_vs_unsigned = 1;
// TODO-1: distinguish signed and unsigned type
initial begin: signed_vs_unsigned
  byte b0;
  bit[7:0] b1;
  wait(b_signed_vs_unsigned == 1); $display("signed_vs_unsigned process block started");
  b0 = 'b1000_0000;
  $display("byte variable b0 = %d", b0);
  b1 = b0;
  $display("bit vector variable b1 = %d", b1);
end
endmodule

使用make vcs命令,运行方式如下
在这里插入图片描述
运行结束后可以使用make clean对相关过程文件清理

2.仿真脚本demo2

Makefile文件的内容如下

vcs		:
		vcs 	\
		-f dut.f 	\
		-fsdb -full64 -R +vc +v2k -sverilog -debug_all \
		| tee vcs.log
verdi 	:
		verdi -sv -f dut.f -ssf tb_top_uart.fsdb -sswr novas.rc &
clean	:
		rm -rf *.log simv *.daidir csrc *.key DVEfiles *.vpd *.conf *.rc *.fsdb verdiLog

其中dut.f的文件内容如下

/home/icer/Desktop/IC/flow_uart/vcs/uart/tb_top_uart.v
/home/icer/Desktop/IC/flow_uart/vcs/uart/top_uart.v
/home/icer/Desktop/IC/flow_uart/vcs/uart/uart_rx.v
/home/icer/Desktop/IC/flow_uart/vcs/uart/uart_tx.v

仿真文件如下:

蓝奏云
https://wwa.lanzoui.com/iQBp6kfqgfc
密码:2294

注意需要在仿真文件中添加以下代码(下载的仿真文件中未进行添加)
在这里插入图片描述

initial begin 
    $fsdbDumpfile("tb_top_uart.fsdb");
    $fsdbDumpvars(0,tb_top_uart);
    $fsdbDumpMDA();
end

使用make vcs命令进行编译,运行方式如下
在这里插入图片描述
使用make verdi命令查看波形,运行方式如下(具体的verdi使用可以见verdi专栏相关博文)
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值