combinational for-loop:vector reversal 2

Given a 100-bit input vector [99:0], reverse its bit ordering.

Vector100r - HDLBits (01xz.net)

 1 module top_module( 
 2     input [99:0] in,
 3     output [99:0] out
 4 );
 5 // for语句会占用大量资源,因此采用generate for语句
 6     genvar i;
 7     generate    
 8         for(i=0;i<100;i=i+1)begin:reverse_bit  
 9             assign out[99-i] = in[i];
10         end
11     endgenerate
12 
13 endmodule

 当然,要是用for写,也不是不行,这两种写法的差别我还要看一下……

module top_module( 
    input [99:0] in,
    output [99:0] out
);
    integer i;
	always@* begin
        for(i=0;i<100;i++) begin
            out[i]=in[99-i];
    end
    end
endmodule
posted @ 2023-04-20 10:48  江左子固  阅读(37)  评论(2)    收藏  举报