Port full register file from/to a verilog modue
With Verilog you cannot have an input or output port with more than one dimension - so you can't declare a 2D array to be an input or output.

Instead you need to pack the array into a single dimension which can be done using a generate loop.