Mailbox

In reply to sreelaxmi:

You want something like this?

class stimulus;
  logic [2:0]opcode;
  logic [7:0] op1,op2;

  //Store messages here
  string message;

  //Create constructor and pass mailbox
  //...
  mailbox#(string) msg_mbx;
  //..

  task gen;
 
    op1 = $random;
    op2 = 'd8;
    opcode = $random;
 
    #1 stimulus_vectors();
    op1 = 0;
    op2 = $random;
   opcode = opcode + 1'b1;
 
 
    #1 stimulus_vectors();
    op1 = $random;
    op2 = ~op1;
   opcode = 3;
 
 
    #1 stimulus_vectors();
 
    op1 = $random;
    op2 = $random;
    opcode = $random;
 
    #1 stimulus_vectors();
 endtask //gen
 
 
  task stimulus_vectors();
    $display("stimulus vector is : at %g",$time);
    $display("[Stimulus]:stimulus is generated :: op1 = %d , op2 = %d , opcode = %d",op1,op2,opcode);

    //Store message into mailbox
    message = $sformatf("[Stimulus]:stimulus is generated :: op1 = %d , op2 = %d , opcode = %d",op1,op2,opcode);
    msg_mbx.put(message);
  endtask //stimulus_vectors
 
endclass //stimulus