8位并入,1位串出的移位寄存器

今天,有朋友叫我写一个8位并入,1位串出的移位寄存器。在这里就当复习了移位寄存器了,笑。

移位寄存器,比较简单,就不介绍了,直接上代码和测试文件。

顶层文件如下:

由计数器自加1,为移位寄存器提供控制信号。移位寄存器部分,分为三部分,cnt>0,cnt=0和cnt<0(当然不可能小于0)。

在cnt>0的条件下,从低7位向高7位左移一位;在cnt=0的条件下,将din赋值给d_reg;在cnt<0的条件下,保持d_reg。

最后只需将d_reg的最高位赋值给dout即可。

8位并入,1位串出的移位寄存器


测试文件如下:

8位并入,1位串出的移位寄存器

波形测试,达到移位寄存器的目的。如下:

8位并入,1位串出的移位寄存器