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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 204|回复: 9

[求助] verilog 中force和release的使用问题

[复制链接]
发表于 4 天前 | 显示全部楼层 |阅读模式

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

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

x
在verilog中, 信号A在force前的值是0,
force信号A在时间T1为1‘bx,然后在时间T2将信号release,release以后期望信号的值是0,但仿真结果是1’bx。

有知道原因的么? 感谢
 楼主| 发表于 4 天前 | 显示全部楼层
顶~~~~~
发表于 4 天前 | 显示全部楼层
是不是给这个信号赋值的信号是x?
发表于 4 天前 | 显示全部楼层
这个信号原本的driver是什么类型的?reg还是wire?
发表于 4 天前 | 显示全部楼层
我理解force就想到于你在电路板上飞根线,给它一个强驱动,release就相当于把这根线拔了。拔完线并不必然回到飞线之前的状态。
发表于 4 天前 | 显示全部楼层
原因是在force之前你不是给A的初始值是0?而不是给它一个连续赋值(驱动)如assign A=0;如果要A回到原始值需要持续的激励。
 楼主| 发表于 3 天前 | 显示全部楼层


gaurson 发表于 2024-12-30 18:39
这个信号原本的driver是什么类型的?reg还是wire?


是reg类型。原因应该是,release以后,没有继续对这个信号驱动,所以信号的值仍然是x态。
如果release以后,这个信号有被驱动为0,这个信号值才是0.
 楼主| 发表于 3 天前 | 显示全部楼层


flyskyseu 发表于 2024-12-30 18:03
是不是给这个信号赋值的信号是x?


是的,release以后,这个信号没有被驱动,也就是floating的,所以呈现x态
 楼主| 发表于 3 天前 | 显示全部楼层


sinva 发表于 2024-12-30 19:07
原因是在force之前你不是给A的初始值是0?而不是给它一个连续赋值(驱动)如assign A=0;如果要A回到原始值 ...


是这样没错。

有去写testbench测试了一下,感谢
 楼主| 发表于 3 天前 | 显示全部楼层


acrofoxAgain 发表于 2024-12-30 18:44
我理解force就想到于你在电路板上飞根线,给它一个强驱动,release就相当于把这根线拔了。拔完线并不必然回 ...


是的,要想回到最开始的0,需要在信号release以后,重新对信号驱动
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2025-1-3 20:24 , Processed in 0.021459 second(s), 6 queries , Gzip On, Redis On.

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