Generate unique elements in an array

In reply to ssingh:

Hi Dave,

Reading the above link for I tried to generate unique random numbers, but the following code doesn’t seem to work, dont know why?

package env_constants;
  localparam PDW_INDEX_BITS = 6;
  localparam DCD_INDEX_BITS = 3;
endpackage: env_constants


module dcd2pdw;

  import env_constants::*;

  class A;
     rand bit[PDW_INDEX_BITS-1:0] dcd2pdw[bit[DCD_INDEX_BITS-1:0]];
     constraint uniq {unique {dcd2pdw};}
  endclass:A

 initial begin
   A a;

   a = new();

   assert(a.randomize()) else begin
      $display("Randomization failure...");
   end

   $display("size of array: %d",a.dcd2pdw.size());
   foreach(a.dcd2pdw[i]) begin
     $display("PDW: %0d, at dcd_id: %0d",a.dcd2pdw[i],i);
   end 
 end

endmodule: dcd2pdw

Size of array is getting printed as: zero. What is the problem here ?