[验证百花筒] 如何使用verdi的覆盖率报告反推对应的testdata目录

[验证百花筒] 如何使用verdi的覆盖率报告反推对应的testdata目录

引言

一开始我们接触coverage的report通常都是用Synopsys公司的urg指令吃仿真器收集的coverage的database生成urgReport目录,其中包含众多html网页文件,然后再使用网页浏览器打开Dashboard.html文件通过其中的各种超链接调出其他的网页文件来分析覆盖率的,界面如下图所示。这种分析覆盖率的方式就是没法清晰地查看收集代码的hierarchy,与RTL的结合比较差,只能在一个个网页直接来回切,也没有办法添加exclude项,都是只读的。
urg生成的网页版的覆盖率报告

后来Cadence公司的dve也可以吃仿真器收集的coverage的database通过gui界面展示覆盖率报告结果,图形化界面比网页做的更好一些,并且也可以方便的添加exclude信息,用户界面下图所示。
dve分析覆盖率的GUI界面

不知道大家对于dve的使用有何感受,反正我一直用不惯,包括用它来分析波形debug,总觉这个界面设计更应该出现在windows 95的操作系统里,根本不像一款现代软件GUI。Cadence还有一款专门做覆盖率分析的软件IMC,用过一段时间,比dve要舒适很多,但是由于后来的东家门普遍使用的都是synopsys家的产品,也就再没用过该软件。
万幸的是,verdi后来也集成覆盖率分析的功能,只不过需要单独购买license,但是用起来要比dve舒适很多,用户界面如下图所示。
verdi分析覆盖率的GUI

而我们今

使用Verdi打开覆盖率时遇到问题,提示`command -cov not found`,通常是因为Verdi覆盖率分析功能依赖于特定的工具和配置,而这些工具或配置可能未正确设置或未安装。以下是解决该问题的几种方法: 1. **检查Verdi版本和许可证** 确保使用Verdi版本支持覆盖率分析功能,并且许可证中包含覆盖率分析模块。某些功能可能需要额外的许可证支持。可以通过以下命令检查Verdi版本信息: ```bash verdi -version ``` 如果许可证不完整,可能会导致部分命令无法使用。 2. **确认覆盖率数据库(UCDB)存在且有效** 使用Verdi进行覆盖率分析时,需要先生成覆盖率数据库(UCDB)。如果该数据库未正确生成或路径错误,可能导致`-cov`命令无法识别。可以使用以下命令生成UCDB: ```bash vcover compile -access +rwc -f filelist.f vcover simulate -coverage all ``` 确保生成的`.ucdb`文件存在于指定路径中,并且未损坏。 3. **使用正确的命令格式打开覆盖率** 在Verdi中打开覆盖率的正确命令格式如下: ```bash verdi -cov your_design.ucdb ``` 其中`your_design.ucdb`是覆盖率数据库文件。确保文件名和路径正确,并且文件可读。 4. **检查环境变量和安装路径** Verdi的某些功能可能依赖于环境变量的设置,例如`LD_LIBRARY_PATH`和`PATH`。确保这些环境变量包含Verdi所需的库路径。可以在`.bashrc`或`.cshrc`中添加以下内容: ```bash export PATH=/opt/synopsys/verdi/bin:$PATH export LD_LIBRARY_PATH=/opt/synopsys/verdi/lib:$LD_LIBRARY_PATH ``` 然后执行`source ~/.bashrc`或`source ~/.cshrc`使配置生效。 5. **重新安装或更新Verdi工具** 如果以上方法均无效,可能是Verdi安装过程中某些组件未正确安装。可以尝试重新安装Verdi工具,确保所有组件(包括覆盖率分析模块)都已正确安装。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值