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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5333|回复: 7

[求助] 菜鸟求助!sv随机化问题

[复制链接]
发表于 2011-10-24 10:26:17 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 hbhbts 于 2011-10-24 10:36 编辑

一个随机类如何在每次仿真启动后能产生一个不同的随机序列?
ps:我每次都产生相同的随机序列!
 楼主| 发表于 2011-10-24 17:06:44 | 显示全部楼层
自个儿给自个儿顶一下
发表于 2011-10-24 19:11:51 | 显示全部楼层
需要在runtime命令中指定不同的seed
 楼主| 发表于 2011-10-24 19:48:42 | 显示全部楼层
能否具体点,thx
发表于 2011-10-24 20:22:33 | 显示全部楼层
vcs运行时指定+ntb_random_seed=seed
发表于 2011-10-25 13:26:16 | 显示全部楼层
或者在代码,类的new函数里面设置类的随机化种子,使用buid-in函数:
this.srandom(seed);
每次开始的时候seed不一样就可以了;你可以这样,使用一个file来记录之前每次你使用过的种子,使用
$fwrite()追加模式,然后在每次启动之前都把当前你设置的种子和file里记录的之前的所有种子比较,如果不一样就可以用了,这个比较的过程很简单,可以使用一个动态或者队列把file的内容读出来,使用buid-in函数如find()之类。
总之,用一个正规的file来让程序自动记录是最好的我认为,一次两次你可以人为的控制让它不同,当时1万次呢,我个人比较喜欢用文件来保存东西,$fopen$fwrite$fscanf$close可以搞定绝大多数应用。
一家之言,也许有其它更简洁的方法,仅供参考
发表于 2011-10-25 13:28:10 | 显示全部楼层
modelsim下是-sv_seed 数字
 楼主| 发表于 2011-10-30 17:22:00 | 显示全部楼层
谢谢大家这么热心!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-14 22:09 , Processed in 0.021648 second(s), 8 queries , Gzip On, Redis On.

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