Input plusarg to store weighted distribution

You can pass the plusarg value from the command line and catch that value inside your sequence in a variable, later you can use that variable inside a loop where you generate the transactions.

For example,

      if($value$plusargs("WR=%d",wr)) begin
        `uvm_info (get_type_name(),$sformatf ("wr = %0d", wr), UVM_DEBUG)
      end else begin
        wr = 50;
        `uvm_info (get_type_name(),$sformatf ("wr = %0d", wr), UVM_DEBUG)
      end
        rd = 100 - wr;
        `uvm_info (get_type_name(),$sformatf ("rd = %0d", rd), UVM_DEBUG)
randcase
  wr : begin
      `uvm_do_on_with(wseq, seqr, 
      {
        addr inside {[1:10]};
        data == 100;
      })
  rd : begin
      `uvm_do_on_with(rseq, seqr, 
      {
        addr inside {[1:10]};
      })
endcase