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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2808|回复: 6

[求助] sv中interface报多驱动错误

[复制链接]
发表于 2014-11-11 15:41:13 | 显示全部楼层 |阅读模式

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

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

x
代码如下:
文件:top.sv
代码:
module top;

    test u_test();
    myinf u_myinf();

    assign u_myinf.u_myinfsub.a=0;

endmodule

文件:test.sv
代码:
module test;
     myinf u_testmyinf();

     assign u_testmyinf.u_myinfsub.a=0;
endmodule   

文件:myinf.sv
代码:
interface myinf();
   myinfsub u_myinfsub();
endinterface

文件:myinfsub.sv
代码:
interface myinfsub();
   logic a;
endinterface


=================
编译时,报a多驱动错误!
如果只在top层下有两个a被赋值,则不会报错误。如:

文件:top.sv
代码:
module top;

    //test u_test();
    myinf u_myinf1();
    myinf u_myinf2();

    assign u_myinf1.u_myinfsub.a=0;
    assign u_myinf2.u_myinfsub.a=0;

endmodule

文件:test.sv
代码:
module test;
     myinf u_testmyinf();

     //assign u_testmyinf.u_myinfsub.a=0;
endmodule   

文件:myinf.sv
代码:
interface myinf();
   myinfsub u_myinfsub();
endinterface

文件:myinfsub.sv
代码:
interface myinfsub();
   logic a;
endinterface

==================
编译上面的没有问题~~

求教!
发表于 2014-11-11 18:13:03 | 显示全部楼层
未做过interface嵌套interface的做法。。可能内部interface是静态的,所以你多驱动了。
 楼主| 发表于 2014-11-12 11:14:48 | 显示全部楼层
如果是 wire a; 就不会有问题~~感觉sverilog对logic类型,有较多限制。
发表于 2014-11-12 11:46:55 | 显示全部楼层
内容 按照楼主的第一个程序编写,并在vcs中仿真,没有任何错误,也没你说的问题
 楼主| 发表于 2014-11-13 09:14:15 | 显示全部楼层
发表于 2014-11-13 12:52:33 | 显示全部楼层
我用questa10.0b也没有发现有报错误
发表于 2014-11-14 09:28:24 | 显示全部楼层
回复 5# payne_shu


   我的vcs2012版本,但是从你的代码分析来看,根本就没错。除非你上面的示例有问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-11-13 13:58 , Processed in 0.022398 second(s), 9 queries , Gzip On, Redis On.

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