Quantcast
Channel: Cadence Functional Verification Forum
Viewing all articles
Browse latest Browse all 1074

Multi Dimensional Dynamic Array Constraint support Issue in System Verilog/UVM

$
0
0

I've  the below example for multi dimensional dynamic array randomization;

    Class base extends uvm_sequence_item;

       ......

        rand integer array_of_frames[][][];

        rand int   frame_height;

        rand int frame_width;

        rand int no_of_frames;

       .................

        constraint no_of_frames_c { no_of_frames>1;no_of_frames<3;} 

        constraint frame_height_c { frame_height>10;frame_height<20;}

        constraint frame_width_c {frame_width>1;frame_width<100;} 

       ........

       function void  post_randomize();

           for(int i=0; i<array_of_frames.size; i++) begin
             for(int j=0; j<array_of_frames[i].size; j++) begin
                for(int k=0; k<array_of_frames[i][j].size; k++) begin
                        $write("0x%x ", (array_of_frames[i][j][k] & 32'hFF));
                end
                $display(" ");
             end
            $display(" ");
           end

       endfunction

    endclass 

   After calling the randomization on above item,IRUN throws the below error.

  Warning: The generated size 130953965 of the queue/dynamic array is extremely large in IRUN and also causing the randomization failure. 

   I've tried with the other tools and no issues found.

Please help and suggest a possible solution in NCSIM to allocate memory for above multi dimensional dynamic array?

Thanks,

Regards,

Mahesh.


 


Viewing all articles
Browse latest Browse all 1074

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>