ovm_sequencer_base Class Reference

Inheritance diagram for class ovm_sequencer_base:

List of all members.



Public Member Functions

function void  add_sequence ( string type_name )
virtual function void  analysis_write ( ovm_sequence_item t )
virtual function void  build ( )
virtual function ovm_sequence_base  current_grabber ( )
function string  display_queues ( )
function void  do_print ( ovm_printer printer )
function SEQ_ARB_TYPE  get_arbitration ( )
function int  get_seq_kind ( string type_name )
function ovm_sequence_base  get_sequence ( int req_kind )
virtual task   grab ( ovm_sequence_base sequence_ptr )
virtual function bit  has_do_available ( )
function bit  has_lock ( ovm_sequence_base sequence_ptr )
function bit  is_blocked ( ovm_sequence_base sequence_ptr )
function bit  is_child ( ovm_sequence_base parent, ovm_sequence_base child )
virtual function bit  is_grabbed ( )
function bit  is_locked ( ovm_sequence_base sequence_ptr )
function void  kill_sequence ( ovm_sequence_base sequence_ptr )
virtual task   lock ( ovm_sequence_base sequence_ptr )
function void  new ( string name, ovm_component parent )
function int  num_sequences ( )
virtual function int  register_sequence ( ovm_sequence_base sequence_ptr )
function void  remove_sequence ( string type_name )
virtual function void  send_request ( ovm_sequence_base sequence_ptr, ovm_sequence_item t, bit rerandomize = 0 )
function void  sequence_exiting ( ovm_sequence_base sequence_ptr )
function void  set_arbitration ( SEQ_ARB_TYPE val )
function void  set_arbitration_completed ( int request_id )
function void  set_sequences_queue ( ref string sequencer_sequence_lib[$] )
virtual task   start_default_sequence ( )
virtual task   start_sequence ( ovm_sequence_base seq_base )
virtual function void  stop_sequences ( )
virtual function void  ungrab ( ovm_sequence_base sequence_ptr )
virtual function void  unlock ( ovm_sequence_base sequence_ptr )
function void  unlock_req ( ovm_sequence_base sequence_ptr )
virtual function integer  user_priority_arbitration ( integer avail_sequences[$] )
task   wait_for_arbitration_completed ( int request_id )
virtual task   wait_for_grant ( ovm_sequence_base sequence_ptr, int item_priority = -1, bit lock_request = 0 )
virtual task   wait_for_item_done ( ovm_sequence_base sequence_ptr, int transaction_id )
virtual task   wait_for_sequences ( )

Public Attributes

int  count = -1; 
int  m_exhaustive_count = 0; 
int  m_random_count = 0; 
int  m_simple_count = 0; 
int unsigned  max_random_count = 10; 
int unsigned  max_random_depth = 4; 
int  m_is_relevant_completed 
int unsigned  pound_zero_count = 6; 
string  sequences [$] 

Protected Member Functions

function int  choose_next_request ( )
function ovm_sequence_base  find_sequence ( int sequence_id )
function int  get_seq_item_priority ( seq_req_class seq_q_entry )
function void  grant_queued_locks ( )
task   m_wait_arb_not_equal ( )
virtual function int  m_find_number_driver_connections ( )
function void  m_update_lists ( )
virtual function void  unregister_sequence ( int sequence_id )
task   wait_for_available_sequence ( )

Protected Attributes

protected bit  arb_completed [int] 
protected seq_req_class  arb_sequence_q [$] 
protected string  default_sequence = "ovm_random_sequence"; 
protected ovm_sequence_base  lock_list [$] 
protected int  m_arb_size 
protected int  m_lock_arb_size 
protected int  m_sequencer_id 
protected int  m_seq_item_port_connect_size 
protected int  m_wait_for_item_sequence_id 
protected int  m_wait_for_item_transaction_id 
protected ovm_sequence_base  reg_sequences [int] 
protected int  sequence_ids [string] 
rand protected int  seq_kind 


Member Function Documentation

  function void
 ovm_sequencer_base::add_sequence

 (  string type_name  ) 

 virtual function void
 ovm_sequencer_base::analysis_write

 (  ovm_sequence_item t  ) 


 Superseding functions 
 ovm_sequencer_param_base :: analysis_write 

 virtual function void
 ovm_sequencer_base::build

 (   ) 


 Superseded functions 
 ovm_component :: build 
 Superseding functions 
 ovm_sequencer_param_base :: build 
 ovm_sequencer :: build 
 svt_sequencer :: build 
 svt_mem_sequencer :: build 

 protected function int
 ovm_sequencer_base::choose_next_request

 (   ) 

 virtual function ovm_sequence_base
 ovm_sequencer_base::current_grabber

 (   ) 

  function string
 ovm_sequencer_base::display_queues

 (   ) 

  function void
 ovm_sequencer_base::do_print

 (  ovm_printer printer  ) 


 Superseded functions 
 ovm_object :: do_print 
 ovm_component :: do_print 
 Superseding functions 
 ovm_sequencer_param_base :: do_print 

 protected function ovm_sequence_base
 ovm_sequencer_base::find_sequence

 (  int sequence_id  ) 

  function SEQ_ARB_TYPE
 ovm_sequencer_base::get_arbitration

 (   ) 

 protected function int
 ovm_sequencer_base::get_seq_item_priority

 (  seq_req_class seq_q_entry  ) 

  function int
 ovm_sequencer_base::get_seq_kind

 (  string type_name  ) 

  function ovm_sequence_base
 ovm_sequencer_base::get_sequence

 (  int req_kind  ) 

 virtual task
 ovm_sequencer_base::grab

 (  ovm_sequence_base sequence_ptr  ) 

 protected function void
 ovm_sequencer_base::grant_queued_locks

 (   ) 

 virtual function bit
 ovm_sequencer_base::has_do_available

 (   ) 

  function bit
 ovm_sequencer_base::has_lock

 (  ovm_sequence_base sequence_ptr  ) 

  function bit
 ovm_sequencer_base::is_blocked

 (  ovm_sequence_base sequence_ptr  ) 

  function bit
 ovm_sequencer_base::is_child

 (  ovm_sequence_base parent , ovm_sequence_base child  ) 

 virtual function bit
 ovm_sequencer_base::is_grabbed

 (   ) 

  function bit
 ovm_sequencer_base::is_locked

 (  ovm_sequence_base sequence_ptr  ) 

  function void
 ovm_sequencer_base::kill_sequence

 (  ovm_sequence_base sequence_ptr  ) 

 virtual task
 ovm_sequencer_base::lock

 (  ovm_sequence_base sequence_ptr  ) 

 protected task
 ovm_sequencer_base::m_wait_arb_not_equal

 (   ) 

 protected virtual function int
 ovm_sequencer_base::m_find_number_driver_connections

 (   ) 


 Superseding functions 
 ovm_push_sequencer :: m_find_number_driver_connections 
 ovm_sequencer :: m_find_number_driver_connections 

 protected function void
 ovm_sequencer_base::m_update_lists

 (   ) 

  function void
 ovm_sequencer_base::new

 (  string name , ovm_component parent  ) 


 Superseded functions 
 ovm_component :: new 
 Superseding functions 
 ovm_sequencer_param_base :: new 
 ovm_push_sequencer :: new 
 ovm_sequencer :: new 
 ovm_scenario_controller :: new 

  function int
 ovm_sequencer_base::num_sequences

 (   ) 

 virtual function int
 ovm_sequencer_base::register_sequence

 (  ovm_sequence_base sequence_ptr  ) 

  function void
 ovm_sequencer_base::remove_sequence

 (  string type_name  ) 

 virtual function void
 ovm_sequencer_base::send_request

 (  ovm_sequence_base sequence_ptr , ovm_sequence_item t , bit rerandomize = 0  ) 


 Superseding functions 
 ovm_sequencer_param_base :: send_request 

  function void
 ovm_sequencer_base::sequence_exiting

 (  ovm_sequence_base sequence_ptr  ) 

  function void
 ovm_sequencer_base::set_arbitration

 (  SEQ_ARB_TYPE val  ) 

  function void
 ovm_sequencer_base::set_arbitration_completed

 (  int request_id  ) 

  function void
 ovm_sequencer_base::set_sequences_queue

 (  ref string sequencer_sequence_lib [$]  ) 

 virtual task
 ovm_sequencer_base::start_default_sequence

 (   ) 


 Superseding tasks 
 ovm_sequencer_param_base :: start_default_sequence 

 virtual task
 ovm_sequencer_base::start_sequence

 (  ovm_sequence_base seq_base  ) 

 virtual function void
 ovm_sequencer_base::stop_sequences

 (   ) 


 Superseding functions 
 ovm_sequencer :: stop_sequences 

 virtual function void
 ovm_sequencer_base::ungrab

 (  ovm_sequence_base sequence_ptr  ) 

 virtual function void
 ovm_sequencer_base::unlock

 (  ovm_sequence_base sequence_ptr  ) 

  function void
 ovm_sequencer_base::unlock_req

 (  ovm_sequence_base sequence_ptr  ) 

 protected virtual function void
 ovm_sequencer_base::unregister_sequence

 (  int sequence_id  ) 

 virtual function integer
 ovm_sequencer_base::user_priority_arbitration

 (  integer avail_sequences [$]  ) 

  task
 ovm_sequencer_base::wait_for_arbitration_completed

 (  int request_id  ) 

 protected task
 ovm_sequencer_base::wait_for_available_sequence

 (   ) 

 virtual task
 ovm_sequencer_base::wait_for_grant

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

 virtual task
 ovm_sequencer_base::wait_for_item_done

 (  ovm_sequence_base sequence_ptr , int transaction_id  ) 

 virtual task
 ovm_sequencer_base::wait_for_sequences

 (   ) 


Member Attribute Documentation

 protected bit  attribute
 ovm_sequencer_base::arb_completed[int]

 protected seq_req_class  attribute
 ovm_sequencer_base::arb_sequence_q[$]

 int  attribute
 ovm_sequencer_base::count = -1

 protected string  attribute
 ovm_sequencer_base::default_sequence = "ovm_random_sequence"

 protected ovm_sequence_base  attribute
 ovm_sequencer_base::lock_list[$]

 protected int  attribute
 ovm_sequencer_base::m_arb_size

 int  attribute
 ovm_sequencer_base::m_exhaustive_count = 0

 protected int  attribute
 ovm_sequencer_base::m_lock_arb_size

 int  attribute
 ovm_sequencer_base::m_random_count = 0

 protected int  attribute
 ovm_sequencer_base::m_sequencer_id

 protected int  attribute
 ovm_sequencer_base::m_seq_item_port_connect_size

 int  attribute
 ovm_sequencer_base::m_simple_count = 0

 protected int  attribute
 ovm_sequencer_base::m_wait_for_item_sequence_id

 protected int  attribute
 ovm_sequencer_base::m_wait_for_item_transaction_id

 int unsigned  attribute
 ovm_sequencer_base::max_random_count = 10

 int unsigned  attribute
 ovm_sequencer_base::max_random_depth = 4

 int  attribute
 ovm_sequencer_base::m_is_relevant_completed

 int unsigned  attribute
 ovm_sequencer_base::pound_zero_count = 6

 protected ovm_sequence_base  attribute
 ovm_sequencer_base::reg_sequences[int]

 string  attribute
 ovm_sequencer_base::sequences[$]

 protected int  attribute
 ovm_sequencer_base::sequence_ids[string]

 rand protected int  attribute
 ovm_sequencer_base::seq_kind