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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2379|回复: 3

[求助] 求助:VHDL package 中定义信号,仿真出错

[复制链接]
发表于 2012-7-30 09:53:42 | 显示全部楼层 |阅读模式

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

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

x
在package中定义全局信号a然后在子模块中对a赋值,在tb中调用a信号,仿真观察波形异常。
若在tb中对a赋值,在tb中调用a信号,则显示波形正常。
特来请教各位大侠。


package test is
signal a : std_logic;
end package;

entity module1 is
end entity;
architecture rtl of module1 is
    signal b: std_logic;
begin
    a <= b;
end rtl;

entity tb is
end entity;
architecture rtl of tb is
    signal c : std_logic;
begin
    c <= a;
end rtl;




截图00.png
 楼主| 发表于 2012-7-30 13:57:35 | 显示全部楼层
找到原因了,我的设计中同样的module1有3个,因此导致多值驱动,输出异常。

我的本意是在仿真时能够查看子模块中变量,看来多次调用同一个模块的设计这种方式是行不通的。
VHDL中也没有像VERILOG一样的层级调用方式,只能用最土的映射到端口来查看子模块内部信号啊。
发表于 2012-7-30 14:12:57 | 显示全部楼层
回复 2# como19860708

仿真时是可以进入到内部模块看每一个值的变化的啊,不需要把相应信号连接到TOP上再来观察,对VHDL与VERILOG都一样。另外,VERILOG可以如你所说,直接和TB上去调用给定底层路径的变量的值,VHDL里面没用过。
 楼主| 发表于 2012-7-30 19:15:56 | 显示全部楼层
回复 3# eaglelsb

功能仿真是可以查看内部信号的,门级仿真信号被打乱了,我用的lattice+modelsim,有时候甚至找不到原信号名。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-23 05:06 , Processed in 0.022375 second(s), 10 queries , Gzip On, Redis On.

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