uvm_sequence_base Class Reference

Inheritance diagram for class uvm_sequence_base:

List of all members.



Public Member Functions

virtual task   body ( )
virtual function void  clear_response_queue ( )
task   create_and_start_sequence_by_name ( string seq_name )
virtual function void  do_kill ( )
task   do_sequence_kind ( int unsigned req_kind )
virtual task   finish_item ( uvm_sequence_item item, int set_priority = -1 )
virtual task   get_base_response ( output uvm_sequence_item response, input int transaction_id )
function int  get_priority ( )
function int  get_response_queue_depth ( )
function bit  get_response_queue_error_report_disabled ( )
function no type  get_sequence_state ( )
function int  get_seq_kind ( string type_name )
function uvm_sequence_base  get_sequence ( int unsigned req_kind )
function uvm_sequence_base  get_sequence_by_name ( string seq_name )
function bit  get_use_response_handler ( )
task   grab ( uvm_sequencer_base sequencer = null )
function bit  has_lock ( )
function bit  is_blocked ( )
virtual function bit  is_item ( )
virtual function bit  is_relevant ( )
function void  kill ( )
task   lock ( uvm_sequencer_base sequencer = null )
function int  m_get_sqr_sequence_id ( int sequencer_id, bit update_sequence_id )
function void  m_set_sqr_sequence_id ( int sequencer_id, int sequence_id )
virtual function void  mid_do ( uvm_sequence_item this_item )
function void  m_kill ( )
function void  new ( string name = "uvm_sequence" )
function int  num_sequences ( )
virtual task   post_body ( )
virtual function void  post_do ( uvm_sequence_item this_item )
virtual task   post_start ( )
virtual task   pre_body ( )
virtual task   pre_do ( bit is_item )
virtual task   pre_start ( )
virtual function void  put_base_response ( input uvm_sequence_item response )
virtual function void  put_response ( uvm_sequence_item response_item )
virtual function void  response_handler ( uvm_sequence_item response )
virtual function void  send_request ( uvm_sequence_item request, bit rerandomize = 0 )
function void  set_priority ( int value )
function void  set_response_queue_depth ( int value )
function void  set_response_queue_error_report_disabled ( bit value )
virtual task   start ( uvm_sequencer_base sequencer, uvm_sequence_base parent_sequence = null, int this_priority = -1, bit call_pre_post = 1 )
virtual task   start_item ( uvm_sequence_item item, int set_priority = -1, uvm_sequencer_base sequencer = null )
function void  ungrab ( uvm_sequencer_base sequencer = null )
function void  unlock ( uvm_sequencer_base sequencer = null )
function void  use_response_handler ( bit enable )
virtual task   wait_for_grant ( int item_priority = -1, bit lock_request = 0 )
virtual task   wait_for_item_done ( int transaction_id = -1 )
virtual task   wait_for_relevant ( )
task   wait_for_sequence_state ( int unsigned state_mask )

Public Attributes

bit  do_not_randomize 
int  m_next_transaction_id = 1; 
int  m_tr_handle 
int  m_wait_for_grant_semaphore 
rand int unsigned  seq_kind 
uvm_phase  starting_phase 
static string  type_name = "uvm_sequence_base"; 

Protected Member Functions

function uvm_sequence_item  create_item ( uvm_object_wrapper type_var, uvm_sequencer_base l_sequencer, string name )

Protected Attributes

protected bit  children_array [ uvm_sequence_base ] 
protected process  m_sequence_process 
protected uvm_sequence_state  m_sequence_state 
protected int  m_sqr_seq_ids [int] 
protected uvm_sequence_item  response_queue [$] 
protected int  response_queue_depth = 8; 
protected bit  response_queue_error_report_disabled 

Constraints

constraint  pick_sequence  ( )


Member Function Documentation

 virtual task
 uvm_sequence_base::body

 (   ) 


 Superseding tasks 
 svt_dispatch_sequence :: body 
 svt_mem_ram_sequence :: body 
 uvm_exhaustive_sequence :: body 
 uvm_random_sequence :: body 
 uvm_sequence_library :: body 
 uvm_simple_sequence :: body 

 virtual function void
 uvm_sequence_base::clear_response_queue

 (   ) 

  task
 uvm_sequence_base::create_and_start_sequence_by_name

 (  string seq_name  ) 

 protected function uvm_sequence_item
 uvm_sequence_base::create_item

 (  uvm_object_wrapper type_var , uvm_sequencer_base l_sequencer , string name  ) 

 virtual function void
 uvm_sequence_base::do_kill

 (   ) 

  task
 uvm_sequence_base::do_sequence_kind

 (  int unsigned req_kind  ) 

 virtual task
 uvm_sequence_base::finish_item

 (  uvm_sequence_item item , int set_priority = -1  ) 

 virtual task
 uvm_sequence_base::get_base_response

 (  output uvm_sequence_item response , input int transaction_id  ) 

  function int
 uvm_sequence_base::get_priority

 (   ) 

  function int
 uvm_sequence_base::get_response_queue_depth

 (   ) 

  function bit
 uvm_sequence_base::get_response_queue_error_report_disabled

 (   ) 

  function no type
 uvm_sequence_base::get_sequence_state

 (   ) 

  function int
 uvm_sequence_base::get_seq_kind

 (  string type_name  ) 

  function uvm_sequence_base
 uvm_sequence_base::get_sequence

 (  int unsigned req_kind  ) 

  function uvm_sequence_base
 uvm_sequence_base::get_sequence_by_name

 (  string seq_name  ) 

  function bit
 uvm_sequence_base::get_use_response_handler

 (   ) 

  task
 uvm_sequence_base::grab

 (  uvm_sequencer_base sequencer = null  ) 

  function bit
 uvm_sequence_base::has_lock

 (   ) 

  function bit
 uvm_sequence_base::is_blocked

 (   ) 

 virtual function bit
 uvm_sequence_base::is_item

 (   ) 


 Superseded functions 
 uvm_sequence_item :: is_item 

 virtual function bit
 uvm_sequence_base::is_relevant

 (   ) 

  function void
 uvm_sequence_base::kill

 (   ) 

  task
 uvm_sequence_base::lock

 (  uvm_sequencer_base sequencer = null  ) 

  function int
 uvm_sequence_base::m_get_sqr_sequence_id

 (  int sequencer_id , bit update_sequence_id  ) 

  function void
 uvm_sequence_base::m_set_sqr_sequence_id

 (  int sequencer_id , int sequence_id  ) 

 virtual function void
 uvm_sequence_base::mid_do

 (  uvm_sequence_item this_item  ) 

  function void
 uvm_sequence_base::m_kill

 (   ) 

  function void
 uvm_sequence_base::new

 (  string name = "uvm_sequence"  ) 


 Superseded functions 
 uvm_object :: new 
 uvm_sequence_item :: new 
 Superseding functions 
 uvm_sequence :: new 
 svt_dispatch_sequence :: new 
 uvm_exhaustive_sequence :: new 
 uvm_random_sequence :: new 
 uvm_sequence_library :: new 
 uvm_simple_sequence :: new 

  function int
 uvm_sequence_base::num_sequences

 (   ) 

 virtual task
 uvm_sequence_base::post_body

 (   ) 


 Superseding tasks 
 svt_sequence :: post_body 
 svt_reactive_sequence :: post_body 

 virtual function void
 uvm_sequence_base::post_do

 (  uvm_sequence_item this_item  ) 

 virtual task
 uvm_sequence_base::post_start

 (   ) 


 Superseding tasks 
 svt_reactive_sequence :: post_start 

 virtual task
 uvm_sequence_base::pre_body

 (   ) 


 Superseding tasks 
 svt_sequence :: pre_body 
 svt_reactive_sequence :: pre_body 

 virtual task
 uvm_sequence_base::pre_do

 (  bit is_item  ) 

 virtual task
 uvm_sequence_base::pre_start

 (   ) 


 Superseding tasks 
 svt_broadcast_sequence :: pre_start 
 svt_reactive_sequence :: pre_start 

 virtual function void
 uvm_sequence_base::put_base_response

 (  input uvm_sequence_item response  ) 

 virtual function void
 uvm_sequence_base::put_response

 (  uvm_sequence_item response_item  ) 


 Superseding functions 
 uvm_sequence :: put_response 

 virtual function void
 uvm_sequence_base::response_handler

 (  uvm_sequence_item response  ) 


 Superseding functions 
 svt_dispatch_sequence :: response_handler 

 virtual function void
 uvm_sequence_base::send_request

 (  uvm_sequence_item request , bit rerandomize = 0  ) 


 Superseding functions 
 uvm_sequence :: send_request 

  function void
 uvm_sequence_base::set_priority

 (  int value  ) 

  function void
 uvm_sequence_base::set_response_queue_depth

 (  int value  ) 

  function void
 uvm_sequence_base::set_response_queue_error_report_disabled

 (  bit value  ) 

 virtual task
 uvm_sequence_base::start

 (  uvm_sequencer_base sequencer , uvm_sequence_base parent_sequence = null, int this_priority = -1, bit call_pre_post = 1  ) 

 virtual task
 uvm_sequence_base::start_item

 (  uvm_sequence_item item , int set_priority = -1, uvm_sequencer_base sequencer = null  ) 


 Superseding tasks 
 svt_reactive_sequence :: start_item 

  function void
 uvm_sequence_base::ungrab

 (  uvm_sequencer_base sequencer = null  ) 

  function void
 uvm_sequence_base::unlock

 (  uvm_sequencer_base sequencer = null  ) 

  function void
 uvm_sequence_base::use_response_handler

 (  bit enable  ) 

 virtual task
 uvm_sequence_base::wait_for_grant

 (  int item_priority = -1, bit lock_request = 0  ) 

 virtual task
 uvm_sequence_base::wait_for_item_done

 (  int transaction_id = -1  ) 

 virtual task
 uvm_sequence_base::wait_for_relevant

 (   ) 

  task
 uvm_sequence_base::wait_for_sequence_state

 (  int unsigned state_mask  ) 


Member Attribute Documentation

 protected bit  attribute
 uvm_sequence_base::children_array[ uvm_sequence_base ]

 bit  attribute
 uvm_sequence_base::do_not_randomize

 int  attribute
 uvm_sequence_base::m_next_transaction_id = 1

 protected process  attribute
 uvm_sequence_base::m_sequence_process

 protected uvm_sequence_state  attribute
 uvm_sequence_base::m_sequence_state

 protected int  attribute
 uvm_sequence_base::m_sqr_seq_ids[int]

 int  attribute
 uvm_sequence_base::m_tr_handle

 int  attribute
 uvm_sequence_base::m_wait_for_grant_semaphore

 protected uvm_sequence_item  attribute
 uvm_sequence_base::response_queue[$]

 protected int  attribute
 uvm_sequence_base::response_queue_depth = 8

 protected bit  attribute
 uvm_sequence_base::response_queue_error_report_disabled

 rand int unsigned  attribute
 uvm_sequence_base::seq_kind

 uvm_phase  attribute
 uvm_sequence_base::starting_phase

 static string  attribute
 uvm_sequence_base::type_name = "uvm_sequence_base"


Member Constraint Documentation

  constraint
 uvm_sequence_base::pick_sequence


constraint pick_sequence {
       (num_sequences() <= 2) || (seq_kind >= 2);
       (seq_kind < num_sequences()) || (seq_kind == 0); }