加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

VCS如何从命令行dump fsdb

2小时前
41
阅读需 3 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

有时候我们不想改Testbench,只能通过vcs的命令参数来配置dump fsdb,那么要怎么实现呢?

简单说明

首先,用命令行参数-ucli让vcs进入ucli模式。

vcs -R -ucli ...
# 或
./simv -ucli ...

再在ucli模式下执行dump fsdb指令,如下。格式与在verilog testbench中用的$fsdbDumpfile()$fsdbDumpvars()两个PLI task一样。

ucli> fsdbDumpfile wave.fsdb
ucli> fsdbDumpvars 0 tb

最后,再ucli模式下,运行run指令继续完成仿真。

ucli> run

一步执行

我们发现开启了ucli之后,需要手动敲入dump指令和run指令。有一些不方便,特别是批量跑脚本时。

其实我们可以把几条指令写成一个tcl文件dumpfsdb.tcl,例如:

# --**-- dumpfsdb.tcl --**--
# dump fsdb 
fsdbDumpfile wave.fsdb
fsdbDumpvars 0 tb
# run
run

同时,vcs或者simv的参数也改进一下:

vcs -R -ucli -do dumpfsdb.tcl ...
# 或
./simv -ucli -do dumpfsdb.tcl ...

一个题外话:kdb

为了更方便的debug,打开波形的同时,可以通过kdb来自动加载rtl和tb。具体如下:

1. vcs加-kdb编译参数

2. verdi -ssf xxx.fsdb

相关推荐

电子产业图谱

公众号ExASIC号主,从事数字IC设计10余年,主要分享日常工作中的经验和技巧,分享让工作更轻松。