Generate unique elements in an array

Thank you Dave. Sure, I will, but I have a follow up question. How would you achieve the same result using shuffle() function? I did this, but it only shuffled the rows and not the columns!

module init_array;
byte my_array[4][3];
int k = 1;

initial begin
 for (int i=0; i<4; i++) 
   for (int j=0; j<3; j++) 
       my_array[i][j] = k++;
 my_array.shuffle();
end
endmodule