摘要
UVM验证方法学中的随机验证一般沿用SystemVerilog中的随机测试生成机制,该机制可以满足随机验证的基本要求,但随着验证规模的不断增大,其执行效率会降低且生成的随机数序列的随机性也会变差,而具有良好随机性的随机数序列对于验证覆盖率是否收敛至关重要,因此改进伪随机数发生器算法十分必要。本文提出了一种融合了梅森旋转算法思想的伪随机数发生器改进算法,在摒弃时间和空间复杂度较高的梅森旋转链后将梅森旋转法应用于基本随机序列的生成。经过仿真测试,并对测试结果采用16区间卡方频度分析法和蒙特卡罗法进行评估,结果表明:针对UVM随机验证,该算法可有效提高伪随机数发生器生成随机数序列的随机性,同时可在一定程度上提升其执行效率。
Random verification in UVM verification methodology generally follows the random test generation mechanism in SystemVerilog,which can meet the basic requirements of random verification.However,with the increasing of verification scale,its execution efficiency will decrease and the randomness of the generated random number sequence will become worse.The random number sequence with good randomness is very important for the convergence of verification coverage,and it is necessary to improve the algorithm of pseudo-random number generator.In this paper,an improved pseudo-random number generator algorithm based on Mersenne twister algorithm is proposed.The Mersenne twister algorithm is applied to the generation of basic random sequences after abandoning the Mersenne rotation chain with high time and space complexity.After simulation test,combining with 16-interval Chi-square frequency analysis method and Monte Carlo method evaluation,the results show that,for UVM random verification,the algorithm can effectively improve the randomness of the pseudo-random number generator to generate random number sequence,and improve its execution efficiency to a certain extent.
作者
杨万
金磊
马琪
YANG Wan;JIN Lei;MA Qi(Institute of Microelectronics CAD,Hangzhou Dianzi University,Hangzhou 310018,China)
关键词
UVM
随机测试
伪随机数发生器
随机性
梅森旋转法
UVM
random testing
pseudo-random number generator
randomness
mersenne twister algorithm