I'm declaring several modules with the ports connected as follows:
mymodule m0 ( .a(myreg[0]), .b(myreg[3]), .c(2'd0), .d(oreg1));
mymodule m1 ( .a(myreg[1]), .b(myreg[0]), .c(2'd1), .d(oreg1));
mymodule m2 ( .a(myreg[2]), .b(myreg[1]), .c(2'd2), .d(oreg1));
mymodule m3 ( .a(myreg[3]), .b(myreg[2]), .c(2'd3), .d(oreg2));
I am trying to use a generate statement but can't figure out how to get the connections rights.
genvar i;
generate
for(i=0; i<3; i=i+1) begin : mymodules
mymodule m (.a(myreg[i]), .b(???), .c(???), .d(???);
end
endgenerate
In my example above port a is easy enough, but the others I'm not sure how to handle. Any suggestions for how to take care of b, c, and d? Thanks!