verilog学习总结

verilog学习总结

always内使用非阻塞赋值, 即“<=
always外使用阻塞赋值, 即“=

若always外面使用非阻塞赋值或者always内部使用阻塞赋值,会是什么结果呢?

$ 符号代表verilog的系统任务和函数
$time: 获取当前的仿真时间
$display: 显示和监视信号值得变化
$monitor: 显示和监视信号值得变化
$stop :暂停仿真
$finish : 结束仿真

if elsecase 语句一定是完备的语句,要避免系统综合生成锁存器。
注意:

  1. if 语句后面必须有else语句,且两者数目相同。
  2. case 语句必须加上 default语句。
  3. 锁存器:没有锁存器就意味着春组合电路,若综合生成锁存器,则变成时序电路。因为组合电路只与当前输入有关,与过去时刻输入没有关系,引入锁存器后,会有之前的状态影响到当前结果的输出,即此时电路由组合电路转变为时序电路。

猜你喜欢

转载自blog.csdn.net/weixin_44144171/article/details/90056394