svt_dispatch Class Reference

Inheritance diagram for class svt_dispatch:

List of all members.


Detailed Description

This class defines a methodology independent dispatch technology for sending transactions to downstream components.



Public Member Functions

function void  new ( uvm_report_object reporter )
task   send_xact ( T xact )

Class Parameters

type  T = svt_sequence_item

Public Attributes

uvm_analysis_port  analysis_port 
uvm_report_object  reporter 
svt_sequencer  seqr 

Protected Attributes

protected semaphore  dispatch_semaphore = new; 
protected svt_dispatch_sequence  dispatch_seq 


Member Function Documentation

  function void
 svt_dispatch::new

 (  uvm_report_object reporter  ) 


CONSTRUCTOR: Create a new svt_dispatch instance.

reporter - `SVT_XVM(report_object) instance used for messaging.

  task
 svt_dispatch::send_xact

 (  T xact  ) 


Dispatch the transaction downstream.

xact - Transaction to be sent.


Class Parameters Documentation

 type  attribute
 svt_dispatch::T = svt_sequence_item


Member Attribute Documentation

 uvm_analysis_port  attribute
 svt_dispatch::analysis_port


(Optional) Analysis Port used to dispatch the transaction to the downstream component.

 protected semaphore  attribute
 svt_dispatch::dispatch_semaphore = new


Semaphore to make sure only one transaction displatch occurs at a time

 protected svt_dispatch_sequence  attribute
 svt_dispatch::dispatch_seq


Sequence used to dispatch the transaction to the downstream component via a downstream sequencer.

 uvm_report_object  attribute
 svt_dispatch::reporter


Shared `SVT_XVM(report_object) used for internal messaging.

 svt_sequencer  attribute
 svt_dispatch::seqr


(Optional) Sequencer used to dispatch the transaction to the downstream component.