在使用内嵌约束randomize()with {CONSTRAINT}时,约束体中的变量名的查找顺序默认是从被随机化对象开始查找,

但如果调用randomize()函数局部域中也有同名变量,那就需要使用local::来显式声明该变量来源于外部函数,而非被随机化的对象(在约束中也可用this/super来索引这些变量)
具体代码示例如下:

class chnl_generator;rand int pkt_id = -1;rand int ch_id = -1;rand int data_nidles = -1;rand int pkt_nidles = -1;rand int data_size = -1;rand int ntrans = 10;constraint cstr{soft ch_id == -1;soft pkt_id == -1soft data_size == -1;soft data_nidles == -1;soft pkt_nidles == -1;soft ntrans == 10;
task send_trans();chnl_trans req, rsp;req = new();assert(req.randomize with {local::ch_id >= 0 -> ch_id == local::ch_id; //此处local::id指来自chnl_generator的ch_idlocal::pkt_id >= 0 -> pkt_id == local::pkt_id;local::data_nidles >= 0 -> data_nidles == local::data_nidles;local::pkt_nidles >= 0 -> pkt_nidles == local::pkt_nidles;local::data_size >0 -> data.size() == local::data_size; })
endtask
endclass

本文参考链接如下:
https://blog.csdn.net/lbt_dvshare/article/details/107280692

【SV中local::的用法】相关推荐

  1. linux中EOF的用法梳理

    2019独角兽企业重金招聘Python工程师标准>>> linux中EOF的用法梳理 在linux运维工作中,我们会碰到这样一个场景: 执行脚本的时候,需要往一个文件里自动输入N行内 ...

  2. python中的threading_python中threading超线程用法实例分析

    本文实例讲述了python中threading超线程用法.分享给大家供大家参考.具体分析如下: threading基于Java的线程模型设计.锁(Lock)和条件变量(Condition)在Java中 ...

  3. Nginx配置中的log_format用法梳理(设置详细的日志格式)

    Nginx配置中的log_format用法梳理(设置详细的日志格式) nginx服务器日志相关指令主要有两条:一条是log_format,用来设置日志格式:另外一条是access_log,用来指定日志 ...

  4. python中sorted的用法append_Python中高阶函数sorted()用法

    在Python中,有内置的排序方法:sorted(iterable, key, reverse). Sorted()函数也是一个高阶函数,它还可以接收一个key函数来实现自定义的排序.key指定的函数 ...

  5. 任务队列:celery快速入门及django中celery的用法

    文章目录 一.celey的简介 1.1 celery的工作机制 1.2 安装celery(5.2版本) 二.celery快速入门 2.1 选择broker 2.2 celery的简单使用 2.2.1 ...

  6. 简述Putty中psftp的用法

    很早之前,大家远程服务器下载一个文件会用winscp,而如今用习惯了Putty,就会发现在putty文件夹里有一个pscp和psftp,这样上传和下载会更好用和方面.下面给大家简单讲一下Putty中p ...

  7. SV 中 ‘ . / : / :: ‘的使用总结

    文章目录 前言 一.冒号作为层次索引 二.双冒号" ::" 和 索引 "." 前言 总结了 在SV中 ' . / : / :: '的用法 一.冒号作为层次索引 ...

  8. mysql中change用法,mysql 中alter的用法以及一些步骤

    mysql 中alter的用法以及一些方法 在用到alter的时间,查到了这个文章,就copy下来了,详细进入下面链接: MySQL之alter语句用法总结 1:删除列 ALTER TABLE [表名 ...

  9. mysql中正则表达式的用法_Mysql中正则表达式Regexp常见用法

    Mysql中Regexp常见用法 模糊匹配,包含特定字符串 # 查找content字段中包含"车友俱乐部"的记录 select * from club_content where ...

最新文章

  1. php 换行 \n \r\n br 简介
  2. Socket心跳包机制
  3. Chromium:编译,运行
  4. 论文浅尝 | 用增强学习进行推理:问答与知识库完善(KBC)
  5. python 日志输出变量_python中记录打印的log模块logging的用法实例
  6. android 图片拍照,Android获取图片拍照时间
  7. 使用git-bash向码云提交项目
  8. 光刻机的“崛起秘密”,第一本ASML的企业成长传记来了!
  9. 音乐播放插件Aplayer+WebAPI的使用【附下载】
  10. C程序设计--排序(冒泡、选择、插入)--冒泡
  11. 校园智能安防监控解决方案
  12. iOS开发 处理置顶聊天的功能
  13. 区块链加/解密:对称加密
  14. Canoe-OSEK网络管理自动化测试脚本CAPL 这适用于主流osek nm的测试用例
  15. Macbook Air如何将m4a格式转化为mp3格式?
  16. 数字人民币解决中小企收付难点
  17. linux中jdk添加字体_在Linux上为Openjdk Java定义/安装字体的位置
  18. 5G的关键技术与所面临的挑战
  19. 微信小程序 Wxs篇
  20. 【高中数学选修2-3】排列,组合,二项式定理,杨辉三角

热门文章

  1. 蓝桥杯——2021第十二届C/C++真题[省赛][B组]
  2. [AssistantTool]_7_添加生成测试图的功能
  3. 下载windows10.iso
  4. 【服务器管理】搭建FTP
  5. Jenkins配置自动打包app发布蒲公英显示二维码
  6. c++ string assign和operator=
  7. 服务网关配置:Zuul
  8. JavaScript怎么识别360浏览器?JS识别360急速模式方案,360流氓浏览器
  9. Java实现字符串反转的几种方法
  10. Apriori算法总结