例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
解释:每一次时钟上升沿来都是把原来的最高位往最低位搬移一次。