Verilog实现循环左移右移

例1:

实现循环右移;

reg[7:0]shifter;

always@(posedge
clk)

begin

shifter
<= {shifter[0],shifter[7:1]};

end

解释:每一次时钟上升沿来都是把原来的最低位往最高位搬移一次。

例2:

实现循环左移;

reg[7:0]shifter;

always@(posedge
clk)

begin

shifter
<= {shifter[6:0],shifter[7]};

end

解释:每一次时钟上升沿来都是把原来的最高位往最低位搬移一次。

猜你喜欢

转载自blog.csdn.net/qq_40964193/article/details/89529618