alt

generate……for语句是verilog hdl特定的语句,使用循环结构编写可综合的多个形式相近的代码,循环变量必须由特定关键字genvar声明。

同时需要注意for循环内的begin……end最好一直保留,即使只有一个语句,begin后面一般需要对语句块命名。

`timescale 1ns/1ns
module gen_for_module( 
    input [7:0] data_in,
    output [7:0] data_out
);
genvar i;
generate
    for(i=0;i<=7;i = i+1) begin: assignment
        assign data_out[i] = data_in[7-i];
    end
endgenerate
 
endmodule