棋子 · 2023年12月25日

verdi基础01_关联仿真波形和代码

在定位问题时,我通常期望使用verdi同时查看代码和波形,鼠标选择代码信号即可添加波形,点击波形信号可以trace代码。要达到这样的效果,在编译RTL文件和打开verdi时都有一些注意事项,具体步骤如下:

步骤1:准备好RTL代码和相干的仿真代码。

步骤2:使用VCS进行编译,需要添加合适的编译选项,

image.png

NOTE: -kdb 选项必须添加,否则步骤4 verdi会报错

步骤3:VCS仿真,运行编译产生的二进制文件simv,产生仿真波形vcs.fsdb和文件夹simv.daidir

image.png

dump.tcl文件内容如下:

image.png

本案例中,波形为vcs.fsdb

simv.daidir 包含了VCS仿真中使用的代码路径信息

image.png

NOTE: 步骤2和步骤3也可以合并

步骤4:使用verdi打开波形,并且同时指定文件夹simv.daidir

image.png

-ssf vcs.fsdb: 这个参数告诉 Verdi 从哪里加载模拟数据。-ssf 表示 "source simulation file",而 vcs.fsdb 是一个 Fast Signal Database (FSDB) 文件,通常包含由 VCS生成的模拟数据。

-dbdir ./simv.daidir: 这个参数指定了一个目录,该目录包含模拟的额外数据和信息。-dbdir 表示 "database directory",而 ./simv.daidir 是一个指向这些额外数据的本地目录的路径。

综合起来,这条命令的作用是启动 Verdi GUI,并从指定的 FSDB 文件和数据库目录中加载模拟数据和信息,以便用户可以查看和分析模拟结果。

最终实现的效果如下所示:信号与波形关联,选中代码中的信号,ctrl+4即可将其添加波形到波形窗口,同理,选中波形信号,双击左键,页面会跳转到代码界面信号的驱动源的位置。    

image.png

作者:IC小鸽
文章来源:IC的世界

推荐阅读

更多IC设计干货请关注IC设计专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。
推荐阅读
关注数
20196
内容数
1307
主要交流IC以及SoC设计流程相关的技术和知识
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息