用Verilog实现流水移位寄存器,你需要了解这4种描述方法(一)

我们用了3篇文章,分别讨论了Verilog HDL里面的“非阻塞赋值”和“阻塞赋值”。用实例分析了如果在一个always块内等式右边的表达式或者变量,是另一个always块内等式左边的表达式或者变量,仿真器在同一个时间(同一个时钟的边沿)内同时执行两个等式,这就会导致竞争产生。并且我们详细分析了在同一个always块里面,如果混合使用“非阻塞赋值”和“阻塞赋值”,所可能出现的结果,并且给出了建议的编码方式。

今天我给大家分享4种流水移位寄存器的建模方式,并通过代码来比较,这四种方式的优劣。

用Verilog实现流水移位寄存器,你需要了解这4种描述方法(一)

流水移位寄存器

在数字电路设计过程中,流水移位寄存器是非常常用的一种电路结构。电路结构如下图所示:

用Verilog实现流水移位寄存器,你需要了解这4种描述方法(一)

图一 流水移位寄存器

推荐阅读