在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2366|回复: 6

[讨论] covergroup例化问题求助

[复制链接]
发表于 2022-5-26 19:33:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 Kei 于 2022-5-26 20:29 编辑

XSXK~R2{)SU%~G228243W5I.png
如图,是2017年(09 12标准也有)标准关于covergroup的一段解释,按照他的意思,covergroup例化或者说是创建对象的方式和class是一致的,可以自己定义实例名,但我使用questa vcs xcelium都会报错,请问这是为什么呢?
又尝试了一下,如果在module中定义并例化、在program中定义并例化、在package中定义在class中例化是可以给实例名的,而在class中定义并例化是不能有实例名的
发表于 2022-5-26 22:49:57 | 显示全部楼层
上代码看看
发表于 2022-6-4 16:14:48 | 显示全部楼层
本帖最后由 追乐人66 于 2022-6-4 16:19 编辑

covergroup可以在class里例化
 楼主| 发表于 2022-6-6 20:41:21 | 显示全部楼层


追乐人66 发表于 2022-6-4 16:14
covergroup可以在class里例化


您没理解我的意思,covergroup是肯定可以在class里面例化。可是如果我定义了一个叫cg的covergroup,则在class里面例化时只能使用cg = new(),如果再给个实例名,比如 以cg inst = new()的方式就会报错,而如果在module、program、package中使用cg inst = new()的方式例化又不会报错,这是为什么呢
发表于 2023-6-14 14:48:29 | 显示全部楼层


Kei 发表于 2022-6-6 20:41
您没理解我的意思,covergroup是肯定可以在class里面例化。可是如果我定义了一个叫cg的covergroup,则在c ...


找到原因没?遇到同样的问题,求解
发表于 2024-8-7 15:14:39 | 显示全部楼层
class中定义的 cg貌似默认生成的是 class的子成员,而不是type。如果需要规避这个问题,需要把 cg的定义放到 class外。此时就可以使用  cg cg_ins = new();这方式来例化了。

我最近也在研究 cg的通用化和参数化的问题,也没明白这么实现的用意,不是很符合编程直觉,复用也困难,只适合那种ctrl c/v 的写法,不够简洁。

我觉得 SV的CG感觉整个结构设计都不好, 有时候 coverpoint 还挺需要复用之后来做 cross的,但是貌似没有什么好办法
发表于 2024-10-10 21:09:35 | 显示全部楼层
在class之前定义covergroup,然后在class的new函数中例化,,仿真出来创建了4个instance,不知道为什么变成了4个

//covergroup   my_cp(int i) with sample(event);
//...
//end covergroup   

class test
my_cp cp_instx;
my_cp cp_insty;
  function new();
    cp_instx = new(x);
    cp_insty = new(y);
  end function
end class


仿真出来的结果是
my_cp::my_cp(1)
  -->  cp_instx
  -->  cp_instx(1)
  -->  cp_instx(2)
  -->  cp_instx(3)
my_cp::my_cp(y)
  -->  cp_insty
  -->  cp_insty(1)
  -->  cp_insty(2)
  -->  cp_insty(3)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-16 14:24 , Processed in 0.020021 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表