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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

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

请教如何动态载入外部文件,而不用readmem

[复制链接]
发表于 2009-11-11 10:37:39 | 显示全部楼层 |阅读模式

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

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

x
使用readmem系统任务在编译时就需要定义好相应文件,如果我想实现不需要重新编译,在运行的过程中动态载入相应文件,请问怎么实现?

碰到的问题:
目前仿真时只能在编译的时候给PM载入程序,但是,如果有多个验证方案,每个方案只是程序不同而已,我需要每次重新编译,需要有一种方式,不用重新编译,最好在仿真时动态指定载入的文件. systemverilog也没有找到相应的实现方式.
 楼主| 发表于 2009-11-11 11:21:56 | 显示全部楼层
请教高手,在线等啊!
发表于 2009-11-11 13:16:56 | 显示全部楼层
你说的是rtl么?
verilog里有伪指令“$fopen,$fscanf,$fclose”,如果想动态指定文件名称,估计要用pearl之类的定义参数传递给tb了,如果你的tb也是靠tcl生成的话。
 楼主| 发表于 2009-11-11 15:43:34 | 显示全部楼层


你说的是rtl么?
verilog里有伪指令“$fopen,$fscanf,$fclose”,如果想动态指定文件名称,估计要用pearl之类的定义参数传递给tb了,如果你的tb也是靠tcl生成的话。
layow 发表于 2009-11-11 13:16




是的。可是这样的话,参数传递过去以后要重新编译。我希望能够不需要重新编译rtl代码就可以实现。感觉如果嵌入C的话好像可行,就是不知道有没有更好的办法。
发表于 2009-11-11 16:16:10 | 显示全部楼层
把动态文件在使用时copy成另外一个文件名,这个文件名就是tb里readmem所用的文件名啊,不用重新编译,只要不停的copy覆盖就行了
 楼主| 发表于 2009-11-11 16:35:45 | 显示全部楼层


把动态文件在使用时copy成另外一个文件名,这个文件名就是tb里readmem所用的文件名啊,不用重新编译,只要不停的copy覆盖就行了
hanshan1122 发表于 2009-11-11 16:16



Good idea!这是一个解决办法,我也想到过,但是感觉有点"土"(没有贬义,请勿介意!).另外,如果我的pattern很多,需要多个进程同时跑的时候这种方法就会有问题了.继续等待高人指点!谢谢!
 楼主| 发表于 2009-11-12 09:00:44 | 显示全部楼层
继续等..........................
发表于 2009-11-13 15:03:18 | 显示全部楼层
那你就一个目录跑一个case好了,5楼的是正解
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-25 01:44 , Processed in 0.032177 second(s), 8 queries , Gzip On, Redis On.

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