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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: Ka2ken

[求助] 【UVM】如何单独随机化transaction中的某个变量

[复制链接]
发表于 2022-8-24 15:09:28 | 显示全部楼层


Ka2ken 发表于 2022-8-24 11:44
我想全部随机然后对某个变量赋值,然后再随机部分变量  这样的话callback该怎么操作
...


好奇为啥会有这样的需求?赋值的那个变量是rand还是非rand?
 楼主| 发表于 2022-8-24 16:54:45 | 显示全部楼层


seabeam 发表于 2022-8-24 15:09
好奇为啥会有这样的需求?赋值的那个变量是rand还是非rand?


item b extends item a super.pack以后赋值给b的非rand动态数组,然后b也有rand的动态数组size由这个非rand的数组决定,所以要单独再随机一次

发表于 2022-8-24 23:00:31 | 显示全部楼层
直接随机某一个变量可以用std::randomize(a,b,c) with{};
如果a中有一个变量data,让他随机再100-200,那就是std::randomize(a.data) with {a.data inside {[100:200]}};
发表于 2022-8-25 10:20:43 | 显示全部楼层
可以的,可以单独对类里面的变量进行再次随机化且可以带with,像这样assert(tran1.randomize(c,d) with { c inside {你想要的c范围};d inside {你想要的d范围};});
 楼主| 发表于 2022-8-26 10:40:56 | 显示全部楼层


qsh123_123 发表于 2022-8-25 10:20
可以的,可以单独对类里面的变量进行再次随机化且可以带with,像这样assert(tran1.randomize(c,d) with { c ...


感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-22 13:45 , Processed in 0.015615 second(s), 6 queries , Gzip On, Redis On.

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