systemverilog : register value after reset must be "static" value

问:register 在reset之后,有时候想要是其他register的 default value ( or reset value),为什么这时候可能会有风险?


答:你怎么知道到底是哪个register的先被reset呢?

        1.如果是右边的register还没有reset或者正在reset,它现在还是不稳定的值。

        2.但是左边我们要赋值的register已经reset,那他岂不是得到了一个不稳定的值。

        3.所以LRM上是这么教导我们的,reset赋值要给 “static”,也就是一个干干净净,老老实实的数。

        4.在reset的下一拍在把左边的register赋值成它要的右边register的value。如下图:



reset_ff 就是reset的edge。其实如果做的不规范,nLint 或 综合也应该能检查出来吧,我没试过哦。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值