使用generate…for语句简化代码
题目描述
在某个module中包含了很多相似的连续赋值语句,请使用generate…for语句编写代码,替代该语句,要求不能改变原module的功能。
module template_module( input [7:0] data_in,output [7:0] data_out
);assign data_out [0] = data_in [7];assign data_out [1] = data_in [6];assign data_out [2] = data_in [5];assign data_out [3] = data_in [4];assign data_out [4] = data_in [3];assign data_out [5] = data_in [2];assign data_out [6] = data_in [1];assign data_out [7] = data_in [0];endmodule
输入描述:
data_in:8bit位宽的无符号数
输出描述:
data_out:8bit位宽的无符号数
`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:gen_i //名字是必须要有的assign data_out[