Verilog阻塞与非阻塞赋值与延时覆盖的通俗理解

基本原则(Reg)

组合=

时序<=

1.连续赋值

组合b=a;c=b; === c=b=a === a->b->c导线 / c=b;b=a; === b->c a->b移位器(不推荐!)

时序b<=a;c<=b; === b1=a0;c1=b0; === a->b b->c移位器

2.生效时刻

详见

组合: 当场有效

时序:下一时钟沿有效(~@沿计算,@沿赋值)

=阻塞, if条件满足时数据暂存(|1), 待下次敏感表满足(|2)有效

3.覆盖

1)线网用assign =, 后来者覆盖

2)延时

C<= #5 A+B 内定并行不覆盖(并行全输出)<->C= #5 A+B 正规并行覆盖(旧的阻塞占位期间忽视新)

#5 D<=A+B == #5 D=A+B 立即运算覆盖(触发到点时刻最新)

3)多次赋值

y<=a;

y<=b;

以后一个为准

4.本质

非阻塞: 所有的右端表达式RHS1、RHS2…在进程开始时同时计算,计算完毕后 ,等进程结束时同时分别赋给左端变量LHS1、LHS2…;
阻塞赋值语句在每个右端表达式计算完后立即赋给左端变量,即赋值语句LHS1=RHS1执行完后LHS1是立即更新的,且只有LHS1=RHS1执行完后才可执行语句LHS1=RHS2.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值