4位桶形移位器Verilog代码编写
桶形移位器的定义:如果移出位被放置在左边空位,则电路有效地实现按照指定数目的位数及位置对输入矢量进行循环移位,这样的电路通常称之为桶形移位器。
module barrel(W,S,Y);
input [3:0] W;
input [1:0] S;
output [3:0]Y;
wire [3:0] T;
/*wire型数据定义了一个逻辑部件的输出,连接到另一个逻辑部件的输入,她可以只表示一个单独连接的标量,也可以表示多个连接的向量*/
assign {T,Y}={W,W}>>S;
/*用到位连接运算符 移位运算符*/
endmodule
代码整体解释:循环功能是通过两个输入矢量W的连接复制以及对获得的八位矢量向右移动S规定的位数实现的,得到的八位矢量的最低权重的四位,就是所期望的输出Y。