微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > 请教一句system verilog中的断言

请教一句system verilog中的断言

时间:10-02 整理:3721RD 点击:
if (random_delay_mode) begin
assert (std::randomize(delay) with {delay dist {0 := 1, !0 :/ 2};}) else
$error ("random delay generate error");

repeat (delay) @(sys_if.cb);
end
请问红色的那行断言什么意思呀?O(∩_∩)O谢谢指点!

randomize with在线consrtaints结构,后面的constraints和对象delay的原有constaints一起起作用

randomize(delay) with {delay dist {0 := 1, !0 :/ 2}
这个语句执行:
随机化变量delay,且结果为0的概率为1/3,为非0的概率为2/3
assert()的目的是调试,如果随机运算不成功,
则报告断言失败且打印"random delay generate error"信息

解释正确,到位。支持!

nice~

支持TommyGG ,正解!

分布约束

一点点的学习

3楼正解。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top