移位寄存器链

时间:2015-08-11 19:13:40

标签: verilog fpga system-verilog vlsi

如何在verilog中将此电路实现为移位寄存器链。

这里a和b是常数,A是32位寄存器

A = A(t-7) + A(t-16) + a.A(t-2) + b.A(t-15) for 16<= t <= 63

由于

1 个答案:

答案 0 :(得分:0)

实现是将公式直接映射到移位寄存器和一些胶合逻辑,或者更正式地映射到有限状态机。我相信你的公式是:

for 16<= t <= 63:
A(t)  = A(t-7) + A(t-16) + a.A(t-2) + b.A(t-15)

A是您的输出变量(或输出函数),其当前值取决于t-7t-2t-15的值。这意味着您需要保留其之前的15个值(例如,使用移位寄存器)。获得这些值后,计算输出非常简单。

网上有很多样本用于Verilog移位寄存器的实现。最简单的方法是描述一个寄存器模块,然后多次实例化它。