脚本宝典收集整理的这篇文章主要介绍了谈一谈SystemVerilog的seed,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
在VCS中有编译选项+ntb_random_seed用来指定初始的seed值,当然你也可以参考vcs user guid,里面有+ntb_random_seed_automatic等有关的seed的一些设置。 现在回过头来查看绿皮书6.16.2和6.16.3的内容,理解就更加深刻了一些,但是绿皮书上的内容讲的有点浅,现在通过几个例子,可以再进一步体会一下。
参考链接:https://iksciting.com/random-stability/ https://bbs.eetop.cn/forum.php?mod=viewthread&tid=920774&page=1&extra=#pid10627196
对于command-line seed的初始化对象是module/interface/program/package。
Verilog在整个仿真过程中使用一个PRNG(伪随机数发生器),但是SystemVerilog中,每个对象和线程都有一个独立的PRNG。
举个例子来看看:
改变线程或者class的方法如下:
小结:如果是在一个线程里面,随机化的先后顺序是至关重要的!!!
顺带提一句:在UVM中有uvm_create_random_seed()的函数对随机花做进一步处理来提高随机的稳定性。保证不同的线程对应不同的seed。
以上是脚本宝典为你收集整理的谈一谈SystemVerilog的seed全部内容,希望文章能够帮你解决谈一谈SystemVerilog的seed所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。