Passing parameters from command line

In reply to rgarcia07:

Please do not apologize, I am the first who dont explain very good the problem that I am having. Try this code in a simulator to see the differences between what I want and your idea of nested for loops:


typedef bit [127:0] tdata_t;
module tb;
	tdata_t expected_tdata_pkg;
  	tdata_t tdata;
	int WDW = 32, RDW = 16;
  	bit [7:0] data;
  
	initial begin
      $display ("tdata=%0h \n expected_tdata_pkg=%0h \n", tdata, expected_tdata_pkg);
	  tdata = 32'hcafeabcd;

      $display ("tdata=%0h \n expected_tdata_pkg=%0h \n", tdata, expected_tdata_pkg);
      
      for (int i = 0; i < (WDW/RDW); i++) begin
        //for (int j = 0; j < RDW; j++) begin
          expected_tdata_pkg = tdata[16*i +: 16]; // RDW
        //end
        $display ("tdata=%0h \n expected_tdata_pkg=%0h \n", tdata, expected_tdata_pkg);
      end 
      
      expected_tdata_pkg = 0;
      for (int i = 0; i < (WDW/RDW); i++) begin // I'm assuming you know the length or use a foreach
         for (int j = 0; j < RDW; j++) begin
             data[j] = tdata[i*RDW + j]; 
         end
         expected_tdata_pkg[i] = data;
         $display ("tdata=%0h \n expected_tdata_pkg=%0h \n", tdata, expected_tdata_pkg);
      end
	end
endmodule