Я только что нашел ответ. Мы можем сделать это, используя имя блока. Так же, как следующий код:
genvar i;
generate
for(i = 0; i < 4; i = i + 1)
being : my_reg_bank
reg [15:0] register_bank [0:31];
always @(posedge clk)
begin
if(we)
begin
my_reg_bank[i].register[addr] <= data_i[i * 16 +: 16];
end
else
begin
data_o[i * 16 +: 16] <= my_reg_bank[i].register[addr];
end
end
end
endgenerate