2.3构建-seq中使用rand型变量
资料来源
(1) UVM实战-张强;
(2) (8条消息) [SV] 内嵌约束中local::的用法_lbt_dvshare的博客-CSDN博客_sv中local
1.seq内rand型变量
(1)在sequence内可以使用随机变量,用以约束它产生的transaction;
(2)在sequence中定义rand类型变量时,需要注意变量的命名,不要和transaction中相应字段的名字一致;
(3)如果seq内rand类型变量与transaction中相应变量名字一样,在transaction随机约束时,可以使用local::;
注1:在使用内嵌约束randomize() with {constraint}时,约束体中的变量名的查找顺序默认是从被随机化对象开始查找,但如果调用randomize()函数局部域中也有同名变量,就需要使用local::来显式声明该变量来源于外部,而非被随机化的对象;
注2:local::只表示“域”,并不指代某个句柄,所以也可以用 local::this 表示调用randomize()函数的对象句柄。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?