Communication between sequence and scoreboard

In reply to chr_sue:

This is my transaction class which has the enum for WRITE or READ transaction indication.

`ifndef APB_MASTER_TRANS_SV
`define APB_MASTER_TRANS_SV
  
class apb_master_trans extends uvm_sequence_item;
      
   //------------------------------------------
   // Data Members (Outputs rand)
   //------------------------------------------
   //Write Read transaction type enum handle
   rand trans_kind_e kind_e;
   randc bit [(`ADDR_WIDTH  - 1) :0] PADDR;
   rand bit [(`DATA_WIDTH  - 1) :0] PWDATA;
   rand bit [(`DATA_WIDTH  - 1) :0] PRDATA;
    
   constraint trans_type {soft kind_e == WRITE;}

   //UVM Factory Registration Macro
   //
     `uvm_object_utils_begin(apb_master_trans)
        `uvm_field_enum(trans_kind_e,kind_e,UVM_DEFAULT);
        `uvm_field_int(PADDR,UVM_DEFAULT | UVM_DEC);
        `uvm_field_int(PWDATA,UVM_DEFAULT | UVM_DEC);
    `uvm_object_utils_end

   //Constraint for the PADDR
   //
   constraint addr {soft PADDR inside {[0:30]};}

   //------------------------------------------
   // Methods
   //------------------------------------------

   //Standard UVM Methods:      
   function new(string name = "apb_master_trans");
      super.new(name);
   endfunction : new

endclass : apb_master_trans
`endif //APB_MASTER_TRANS_SV

and for the architecture please check this link:- APB-ARC-V7-v3 hosted at ImgBB — ImgBB

In this slave sequence have one memory that gives the read data whenever master send the read request.

Here my slave monitor samples the write transaction and read transaction both and put them into a analysis fifo which i have taken inside the slave sequencer and communication is done through analysis port and my slave sequence is retrieving that using get() method and when write transaction is there then write operation is done into memory of the slave sequence and when read transaction is there then read data is put into the transaction and using `uvm_send provided to the slave driver and slave driver drives the PRDATA to the interface.

Also my slave monitor monitors the PRDATA and provides it for comparison to scoreboard.

Thank you.