First, I want to instantiate a bunch of modules using genvar in verilog where each instance basically contains what the value of the index is, to make them have different names so I can tie them to an 8 bit bus, one buffer per bit. Since I want to stay verilog compatible, I cannot have 2D variables in the instantiation of the module.
this is what I want to do, somehow get the i variable into the name of the signal. Not sure if this is even possible.
genvar i;
for (i=0; i<100; i=i+1)
begin
my_module My_mod_"i"
(
.A (input_"i"_value), // example input_1_value[31:0] for i=1
.I (i), // 0 to 99
.O (output_"i"_value) // example output_1_value[31:0] for i=1
);
end
so I synthesize:
my_module my_mod_0
(
.A (input_0_value), // input_0_value[31:0] for i=0
.I (i), // 0 to 99
.O (output_0_value) // output_0_value[31:0] for i=0
);
my_module my_mod_1
(
.A (input_1_value), // input_1_value[31:0] for i=1
.I (i), // 0 to 99
.O (output_1_value) // output_1_value[31:0] for i=1
);
Any suggestions??
Haven't been able to code anything yet that looks credible.