在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 17366|回复: 19

[求助] vcs验证问题

[复制链接]
发表于 2013-1-11 20:24:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
测试平台是会产生随机数测试向量,工具采用vcs,但是测试跑几天之后内存就不足了。如果关闭vcs再重新跑,verilog测试平台在vcs产生的随机数向量与前几天的相比是不变的。有什么方法可以使得vcs重新跑的时候随机向量与上一次跑的不同呢?
发表于 2013-1-11 21:32:47 | 显示全部楼层
使用不同的随机种子,simv的时候加上选项"-seed=XXX“,XXX就是你设定的随机种子。
发表于 2013-1-13 20:55:50 | 显示全部楼层
楼上正解
 楼主| 发表于 2013-1-15 16:44:30 | 显示全部楼层
回复 2# kaka5358


    谢谢,但是我在加上时遇到问题,说-seed=5(这里的数是不是每次仿真都换一个不一样的就可以使得随机量不同?)是不被支持的选项,我的版本是E-2011.03,谢谢大牛指点
发表于 2013-1-15 22:31:49 | 显示全部楼层
试一下:+ntb_random_seed=value
下面是manual里面的解释:
Sets the seed value to be used  by the top-level random number
generator at the start  of simulation. The srandom( seed)  system
function call overrides  this setting. The value can be any integer.
 楼主| 发表于 2013-1-16 23:13:33 | 显示全部楼层
回复 5# kaka5358


   谢谢,这个我看过,也按照这个试过,还是不好用。$random函数采用这样{$random}%8的形式,并没有$random(seed)用到
发表于 2013-1-17 21:50:54 | 显示全部楼层




   不要使用$random这种随机,其实这个$random是调用系统(UNIX)自带的函数,而不是vcs仿真器(sv)里面的,这个是不受种子(seed)控制的,要使用$urandom,或者$urandom_range。
发表于 2013-1-18 14:38:45 | 显示全部楼层
嗯 同求此问题答案
发表于 2013-1-18 20:27:07 | 显示全部楼层
应该是用 不同的种子来运行
 楼主| 发表于 2013-1-21 20:16:11 | 显示全部楼层
回复 7# kaka5358


   module test_seed;       reg [9:0] test_reg;
       initial begin
           test_reg = $urandom(256);
           $display("test_reg is %b",test_reg);
       end
    endmodule


    vcs test_seed.v -sverilog
    ./simv +ntb_random_seed=5
// ./simv +ntb_random_seed=56
  这两个随机数还是一样的,这样写有什么问题吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-28 20:28 , Processed in 0.033178 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表