我们如何在系统verilog中获得随机数生成器的当前状态或当前种子?
问问题
1206 次
1 回答
3
使用get_randstate()
,定义为
function string get_randstate();
来自 SystemVerilog 2012 语言规范:
该
get_randstate()
方法返回与给定对象关联的 RNG 内部状态的副本。RNG 状态是一个未指定长度和格式的字符串。字符串的长度和内容取决于实现。
请注意,SystemVerilog 将为每个线程和对象创建一个单独的 RNG,因此您会看到来自不同对象的不同结果。
例子:
t1 = new;
t2 = new;
$display(t1.get_randstate());
$display(t2.get_randstate());
Incisive 的示例输出:
svseed=1 ; 5864a323c57f14c ;
svseed=1 ; bbfc1b9e8eb663ae ;
于 2013-05-14T16:31:26.800 回答