2025/3/21学习日志

阻塞赋值/非阻塞赋值再次理解:

Verilog中,非阻塞赋值(<=)的特点是:

并行执行
无论有多少条非阻塞赋值语句,在同一个时钟周期内,它们的赋值结果都会在下一个时钟沿同时更新。因此,所有非阻塞赋值语句在当前时钟周期采样变量值,在下一个时钟周期才把结果更新。

📝 关键点:

  • a <= bb <= a 在同一个时钟周期内采样旧值,在下一个时钟周期同时更新。
  • 非阻塞赋值非常适合建模时序逻辑(sequential logic),如寄存器或触发器。

⚡️ 注意:
如果使用阻塞赋值=),赋值是立即进行的,可能导致顺序变化,从而产生不同的结果。

📚 解释:

  • 非阻塞赋值 (<=) 不会立即更新变量值,而是将新值推迟到下一个时钟周期
  • a <= b 采样 b 的旧值 0010,而 b <= a 采样 a 的旧值 0001
  • 在下一个时钟周期,ab 同时更新,结果 a = 0010b = 0001

⚡️ 总结:

  • =(阻塞赋值):按顺序立即更新,前一条语句影响后续赋值。
  • <=(非阻塞赋值):所有赋值语句在下一拍一起更新,适用于时序逻辑建模。

⚠️ 最佳实践:

  • 组合逻辑使用 =
  • 时序逻辑使用 <=

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值