移位寄存器的设计:
有三个模式:
左循环
右循环
加载预置的数
具体功能可以根据需要对程序做出一些修改即可
代码如下:
1 | module shift1(clk,D,MD,QB); |
测试文件
1 | module shift1_tb(); |
这里图形没有从一开始截取,而是选择能看到三个模式效果的时间段,MD=0时,一直在加载预置数,输出等于D 11110000.MD=1时,开始循环左移。MD=2时,开始循环右移。
基本的设计就是这样子,可以在它的基础上进行改进,以达到大家需要的功能,比如在shift1中的case加几个模式。D的值也可以随便赋值。
我也写了几篇关于Veirlog的文章,感兴趣的同学可以去看看。该模块链接如下:
Verilog学习