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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 15526|回复: 14

[求助] 用modelsim编译systemverilog的问题

[复制链接]
发表于 2012-7-17 15:25:14 | 显示全部楼层 |阅读模式

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

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

x
由于条件不足,没有VCS想在windows下用modelsim跑systemverilog。但有如下代码用modelsim6.5D编译都不过,部分代码




  1. interface va7_if(input bit sclk);
  2. logic         mode;
  3. logic         set;
  4. logic         sin;
  5. logic         sout;
  6. logic        [2:0]        c_out;
  7. logic         set_in;
  8. logic         e_out;
  9. logic         out;

  10. clocking cb @(posedge sclk);
  11. default input #1 output #1;
  12. input         c_out;
  13. endclocking

  14. modport tb (
  15. output         mode,
  16. output         set,
  17. output         sin,
  18. input         sout,
  19. clocking        cb,
  20. output         set_in,
  21. input         e_out,
  22. input         out);

  23. endinterface


复制代码






  1. program automatic test(
  2.         input bit resetb,
  3.         va7_if.tb va[num_chip]);

  4.         `include "../tb/environment.sv"
  5.         environment env;
  6. ....
  7. end program


复制代码






  1. module top;

  2.         bit sclk, resetb;
  3.         time half_clk;

  4.         initial begin
  5.                 #1ns;
  6.                 forever #(half_clk) sclk = ~sclk;
  7.         end

  8.         va7_if va[num_chip](sclk);

  9.         test t(resetb, va);
  10. endmodule


复制代码


以上的三个模块代码是三个独立的文件va7_if.sv  top.sv  test.sv

modelsim提示的错误为
program automatic test(
input bit resetb,

va7_if.tb va[num_chip]);
总是说va "already decleared in this scope"
这个program中端口的参数为形参,即使与top.sv中的参数同名应该也没什么关系啊

我已经将modelsim中的compile option改成了use systemverilog,但还是不行
modelsim6.5D已经支持sv了,是我的这种写法有语法错误还是这种写法modelsim不认识
 楼主| 发表于 2012-7-19 14:38:20 | 显示全部楼层
另外,又发现如果像一个class和一个module top。在module中定义了一个int d=100。在class中定义一个int e=0。然后在module中 e=top.d,我就是想在类一级的作用域下调用顶层或上一层module或program的变量。这样的写法questa sim 10.0不认识总是报错
“Dotted name (top.d) not found in current scope.Note that hierarchical references are not allowed from within a package or $unit”
 楼主| 发表于 2012-7-24 16:41:21 | 显示全部楼层
为什么没有人回复呢,只能自己顶个了
发表于 2012-7-24 19:24:41 | 显示全部楼层
类定义里面不能 e = top.d什么的。 定义的时候压根就不知道top是什么。
可以实例化后再赋值。
发表于 2012-11-9 14:02:36 | 显示全部楼层
最近刚接触sV,先学习
发表于 2012-11-9 16:06:24 | 显示全部楼层
用Questa编译systemverilog会出问题  不知道怎么解决
发表于 2013-6-4 12:52:10 | 显示全部楼层
发表于 2013-6-4 16:47:29 | 显示全部楼层
学习一下~
发表于 2014-9-25 15:40:34 | 显示全部楼层
kankan
发表于 2015-5-21 21:17:09 | 显示全部楼层
学习了e
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-5-9 18:43 , Processed in 0.034726 second(s), 9 queries , Gzip On, Redis On.

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