SV coverage
covergroup是对coverage model的一种包装,每个covergroup可以包含:
1) sync event来触发采样,
2) 很多coverpoint,
3) cross coverpoint,
4) 可选的formal arguments,
5) 很多options。
covergroup与class类似,也是需要new出来对象,本身定义的只是一个原型,covergroup可以被定义在
package,module,program,interface,checker或者class中。
sync event是可选的,省略的情况下,显示调用内部的sample() function来进行采样,build-in的sample是不支持参数传递的。
formal arguments,不可以定义为inout和output,只能定义为ref和input,这时的ref等同于const ref。这时在new的时候,需要传递进去参数。
这样的参数是不能被hier引用到的。
一个covergroup特有的option,strobe,表明只在当前time slot的最后,进行sample,避免有时可能在同一slot采样多次。

coverpoint的定义,一般需要加一个label,方便分析coverage report。
$可以在数组中,表示上限和下限;
iff可以表示条件;
default,可以表示default的数值bin;
default sequence,可以表示default的 transition bin;
wildcard bins,主要可以使用?、x、z等匹配符;需要匹配x、z的时候,使用===
with语句,表示附件条件,类似于&&;但是coverpoint中并不能使用&&;
定义全集合bins,ignore_bins,illegal_bins,否则coverage计算不能收集全。

transition的bins:[*n]表示连续的n次迭代;
[->n]表示不连续的n次迭代,但是紧跟着的是连续的跳变;
[=n]表示不连续的n次迭代,下一次的跳变不需要连续;

cross bins,可以使用逻辑运算符,!,&&,||,关键字,with,matches,binsof,intersect等。

也可以直接对cross bin进行赋值,与coverpoint相同;

covergroup中内建的几个function,
void sample();real get_coverage();real get_inst_coverage();
void set_inst_name();void start(); void stop();
用户也可以重载sample的方法,使用with function的语法:(加入参数的传递)

covergroup,coverpoint,cross point定义的option,type_option没见过用处。


auto_bin_max只对用户不定义bins的情况,auto的大小的限制;
weight,在不同的层次,表示对上一级贡献的百分比。cross中的weight,表示该cross对整个group的coverage report的影响。
SV coverage的更多相关文章
- 转:SYNOPSYS VCS Makefile文件编写与研究
SYNOPSYS VCS Makefile文件编写与研究 这个Makefile是synopsys提供的模板,看上去非常好用,你只要按部就班提供实际项目的参数就可以了.我们来看这个文件的头部说明:mak ...
- Cadence UVM基础视频介绍(UVM SV Basics)
Cadence关于UVM的简单介绍,包括UVM的各个方面.有中文和英文两种版本. UVM SV Basics 1 – Introduction UVM SV Basics 2 – DUT Exampl ...
- SV processses
SV中的structured procedure: 1)intial procedure,keyword只有initial:最开始被调用一次: 2)always procedure,keyword包括 ...
- SV中的覆盖率
SV采用CRT的激励形式,而判断验证进度的标准也就是覆盖率(coverage). 覆盖率的两种指定形式:显式的,直接通过SV来指定出的,如SVA,covergroup. 隐式的,在验证过程中,随&qu ...
- coverage report
转载:http://blog.sina.cn/dpool/blog/s/blog_7853c3910102yn77.html VCS仿真可以分成两步法或三步法, 对Mix language, 必须用三 ...
- 挣值管理(PV、EV、AC、SV、CV、SPI、CPI) 记忆
挣值管理法中的PV.EV.AC.SV.CV.SPI.CPI这些英文简写相信把大家都搞得晕头转向的.在挣值管理法中,需要记忆理解的有三个参数:PV.AC.EV. PV:计划值,在即定时间点前计划 ...
- Python 代码覆盖率统计工具 coverage.py
coverage.py是一个用来统计python程序代码覆盖率的工具.它使用起来非常简单,并且支持最终生成界面友好的html报告.在最新版本中,还提供了分支覆盖的功能. 官方网站: http://ne ...
- test homework ~ coverage about method printPrimes
/******************************************************* * Finds and prints n prime integers * Jeff ...
- test lab ~ triangle test by using junit and coverage
first set up a new folder as your test class place, and then let your package in test class folder b ...
随机推荐
- HTML 01 请求过程
与 HTTP 关系密切的协议, IP, TCP, DNS IP协议的作用是把各种数据包传送给对方, 而要保证确实传送到对方那里, 需要满足各种条件. 其中两个最重要的条件是 IP地址 和 MAC 地址 ...
- 使用 maven 自动将源码打包并发布
1.maven-source-plugin 访问地址 在 pom.xml 中添加 下面的 内容,可以 使用 maven 生成 jar 的同时 生成 sources 包 <plugin> & ...
- Unity游戏推送技术
https://www.cnblogs.com/wuzhang/p/wuzhang20150401.html https://www.cnblogs.com/yangwujun/p/5789969.h ...
- 【Oracle】PL/SQL 显式游标、隐式游标、动态游标
在PL/SQL块中执行SELECT.INSERT.DELETE和UPDATE语句时,Oracle会在内存中为其分配上下文区(Context Area),即缓冲区.游标是指向该区的一个指针,或是命名一个 ...
- share drive 无效
docker设置的share dirve怎么按都无效 试了几遍都不行,想想刚才电脑系统更新了,然后查了下百度,发现是电脑策略的问题,设置成经典的就可以了
- 关于JAVA项目中的常用的异常处理
一.简介(摘自百度百科) 异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件). 异常有以下的一些特点: (1)偶然性.程序运行 ...
- 【登录异常解决】Ubuntu 输入正确的密码后重新返回到登陆界面
症状 Ubuntu 输入正确的密码后,黑屏一闪,重新返回到登陆界面. 原因一:主目录下的.Xauthority文件拥有者变成了root,从而以用户登陆的时候无法都取.Xauthority文件.说明:X ...
- APP安全在线检测
腾讯金刚审计系统 http://service.security.tencent.com/kingkong 免费 无限制 腾讯御安全 http://yaq.qq.com/ 免费 查看漏洞详情需认证 阿 ...
- 剑指offer——python【第30题】连续子数组的最大和
题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学.今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决.但是,如果向量 ...
- ERROR org.hibernate.hql.internal.ast.ErrorCounter unexpected token: form 异常解决
ERROR org.hibernate.hql.internal.ast.ErrorCounter unexpected token: form 异常解决 根据异常提示:我找了我的MySQL语句:果然 ...