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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2468|回复: 1

[求助] 如何将设计中某个节点变量的路径传给task内的fwrite函数?

[复制链接]
发表于 2018-3-16 22:36:16 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 418478935 于 2018-3-16 22:40 编辑

大家好:
       请教一个问题,我想写一个 task ,将设计中某个节点变量连续100个时钟周期的数值打印到 txt 文件中,

因此这个 task 内会有一个 fwrite 函数,现在最大的问题是,如何将我所需要的节点变量传递到 task 内的 fwrite 函数。

这个 task 示意如下,我希望每次调用 task 的时候, 能将我想要的不同的节点打印到 txt 文件中去。






  1. task DATA_DOU;
  2.       input xxx ;

  3.       integer fid, iter;

  4.       fid = $fopen("xxx.txt","w+");

  5.       for (iter = 0; iter < 100; iter=iter+1)
  6.           begin
  7.               @(posedge clk)
  8.                   fwrite(fid,"04x\n",DUT.A.B.data);
  9.           end
  10.       
  11.       fclose(fid);
  12. endtask


复制代码


我尝试过将节点的路径作为字符串传给fwrite函数,但是没有成功。
发表于 2018-3-17 17:02:30 | 显示全部楼层
我以前用过define一个宏来传递信号路径作为参数,比如define XXXX(signal_name),在打印的时候用fprintf(fp, "name is ``signal_name``"),你可以试一下。手边没有具体的环境,可能有记忆错误,这个``符号是键盘上1左边的,我们俗称”双飘飘“,不是:右边的那个单引号哈。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-4-20 03:39 , Processed in 0.015390 second(s), 6 queries , Gzip On, Redis On.

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