当前位置:首页 » 《随便一记》 » 正文

VCS查看代码覆盖率(行、状态机、翻转、条件、分支覆盖率等)

29 人参与  2022年07月21日 08:21  分类 : 《随便一记》  评论

点击全文阅读



虚拟机:VMware -14.0.0.24051
环 境:ubuntu 18.04.1
脚 本:makefile(点击直达)原来的脚本没有代码覆盖率查看功能,新添加了这个功能


文章目录

一、脚本内容二、讲解(1)代码覆盖率选项(2)查看方法


一、脚本内容

#LAB_DIR = /home/cyl/target/personal/sync_fifo#LAB_DIR = /home/cyl/target/personal/async_fifo#LAB_DIR = /home/cyl/target/personal/uart#LAB_DIR = /home/cyl/target/personal/spi#LAB_DIR = /home/cyl/target/personal/apb#LAB_DIR = /home/cyl/target/personal/ahb2apbDFILES = $(LAB_DIR)/*.v # code coverage commandCM = -cm line+cond+fsm+branch+tglCM_NAME = -cm_name simvCM_DIR = -cm_dir ./covdir.vdball :clean elab rungall1:clean elab run cov verdiall2:clean elab run verdielab:vcs -full64 -LDFLAGS -Wl,-no-as-needed -debug_acc+all -timescale=1ns/1ns \-fsdb -sverilog -l comp.log  \${DFILES} \${CM} \${CM_NAME} \${CM_DIR} run:./simv -l run.log \${DFILES} \${CM} \${CM_NAME} \${CM_DIR} rung:./simv -gui -l run.log \${DFILES} \${CM} \${CM_NAME} \${CM_DIR} verdi:verdi ${DFILES} \-ssf ./*.fsdb &cov:dve -full64 -covdir *.vdb &clean:rm -rf  AN.DB \rm -rf  DVEfiles \rm -rf  csrc \rm -rf  simv.* \rm -rf  *simv \rm -rf  inter.vpd \rm -rf  ucli.key \rm -rf  *.log \rm -rf  verdiLog \rm -rf  novas* \rm -rf  *.fsdb \rm -rf  *.vdb

二、讲解

VCS在统计代码覆盖率的过程中,需要在编译和仿真命令上添加对应的开关命令,生成.vdb文件记录覆盖率情况,再使用dve打开该文件进行查看覆盖率。

(1)代码覆盖率选项

# code coverage commandCM = -cm line+cond+fsm+branch+tglCM_NAME = -cm_name simvCM_DIR = -cm_dir ./covdir.vdb
-cm < coveragetype > :打开对应类型覆盖率,例如 -cm cond+tgl+lin+fsm+path为统计所有覆盖率。-cm_name:统计覆盖率文件名字。-cm_dir:指定生成.vdb文件目录。-cm_log+filename.log:记录仿真过程中log信息。-cm_nocasedef: 在统计case语句的条件覆盖率时,不考虑default条件未达到的情况。-cm_hier xxx.cfg:通过.cfg文件选择要查看覆盖率的模块或文件。

(2)查看方法

就上面的脚本而言,在make all查看波形之后,再make cov即可查看。或者直接make all1,用verdi查看波形,用DVE查看代码覆盖率。绿色是覆盖到的,红色是没有覆盖到的。总之是编译仿真完成之后,make cov就能查看。

在这里插入图片描述

方法二,通过文本格式查看

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


作者:xlinxdu
版权:本文是作者原创,版权归作者所有。
转载:未经作者允许,禁止转载,转载必须保留此段声明,必须在文章中给出原文连接。


点击全文阅读


本文链接:http://zhangshiyu.com/post/43600.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1