ovm_sequence_defines.svh File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define ovm_register_sequence(TYPE_NAME, SEQUENCER)
#define ovm_sequence_utils_begin(TYPE_NAME, DRIVER)
#define ovm_sequence_utils_end   ovm_object_utils_end \
#define ovm_sequence_utils(TYPE_NAME, DRIVER)
#define ovm_package(PKG)
#define ovm_end_package   endpackage
#define ovm_sequence_library_package(PKG_NAME)
#define ovm_do(OVM_SEQUENCE_ITEM)
#define ovm_do_with(OVM_SEQUENCE_ITEM, CONSTRAINTS)
#define ovm_create(OVM_SEQUENCE_ITEM)
#define ovm_send(OVM_SEQUENCE_ITEM)
#define ovm_rand_send(OVM_SEQUENCE_ITEM)
#define ovm_rand_send_with(OVM_SEQUENCE_ITEM, CONSTRAINTS)
#define ovm_declare_sequence_lib
#define ovm_update_sequence_lib
#define ovm_update_sequence_lib_and_item(USER_ITEM)
#define ovm_sequencer_utils_begin(TYPE_NAME)
#define ovm_sequencer_utils_end   ovm_component_utils_end
#define ovm_sequencer_utils(TYPE_NAME)
#define ovm_do_seq(OVM_SEQ, SEQR_CONS_IF)
#define ovm_do_seq_with(OVM_SEQ, SEQR_CONS_IF, CONSTRAINTS)
#define ovm_create_seq(OVM_SEQ, SEQR_CONS_IF)


Define Documentation

#define ovm_create OVM_SEQUENCE_ITEM   ) 
 

Value:

begin \
  OVM_SEQUENCE_ITEM = new("OVM_SEQUENCE_ITEM");\
  $cast(OVM_SEQUENCE_ITEM , create_item(OVM_SEQUENCE_ITEM, m_sequencer)); \
  end\

Definition at line 139 of file ovm_sequence_defines.svh.

#define ovm_create_seq OVM_SEQ,
SEQR_CONS_IF   ) 
 

Value:

begin \
  ovm_virtual_sequencer vs; \
  if(!$cast(vs, m_sequencer)) \
    ovm_report_fatal("INVACT", \
      "Cannot execute ovm_create_seq on this sequencer."); \
  OVM_SEQ = new("OVM_SEQ");\
  $cast(OVM_SEQ, create_item(OVM_SEQ, SEQR_CONS_IF.seqrb_ref)); \
  end\

Definition at line 310 of file ovm_sequence_defines.svh.

#define ovm_declare_sequence_lib
 

Value:

protected bit m_set_sequences_called = 1;    \
   \
  static protected string m_static_sequences[$]; \
  static function bit add(string type_name); \
    m_static_sequences.push_back(type_name); \
    return 1; \
  endfunction\
  function void ovm_update_sequence_lib();\
    if(this.m_set_sequences_called) begin \
      set_sequences_queue(m_static_sequences); \
      this.m_set_sequences_called = 0;\
    end\
  endfunction

Definition at line 207 of file ovm_sequence_defines.svh.

#define ovm_do OVM_SEQUENCE_ITEM   ) 
 

Value:

begin \
  ovm_virtual_sequencer ovs; \
  ovm_sequence os; \
  OVM_SEQUENCE_ITEM = new("OVM_SEQUENCE_ITEM");\
  if ($cast(ovs, m_sequencer)) \
    if(!$cast(os, OVM_SEQUENCE_ITEM)) \
      ovm_report_fatal("ITMVSQ", "Cannot do items in a virtual sequence."); \
  $cast(OVM_SEQUENCE_ITEM , create_item(OVM_SEQUENCE_ITEM, m_sequencer)); \
  start_item(OVM_SEQUENCE_ITEM); \
  assert(OVM_SEQUENCE_ITEM.randomize()) else begin \
    ovm_report_warning("RNDFLD", "Randomization failed in ovm_do action"); \
  end \
  finish_item(OVM_SEQUENCE_ITEM);\
  end

Definition at line 87 of file ovm_sequence_defines.svh.

#define ovm_do_seq OVM_SEQ,
SEQR_CONS_IF   ) 
 

Value:

begin \
  ovm_virtual_sequencer vs; \
  if(!$cast(vs, m_sequencer)) \
    ovm_report_fatal("INVACT", \
      "Cannot execute ovm_do_seq on this sequencer."); \
  OVM_SEQ = new( "OVM_SEQ");\
  $cast(OVM_SEQ , create_item(OVM_SEQ, SEQR_CONS_IF.seqrb_ref)); \
  start_item(OVM_SEQ); \
  assert(OVM_SEQ.randomize()) else begin \
    ovm_report_warning("RNDFLD", \
      "Randomization failed in ovm_do_seq action"); \
  end \
  finish_item(OVM_SEQ);\
  end \

Definition at line 262 of file ovm_sequence_defines.svh.

#define ovm_do_seq_with OVM_SEQ,
SEQR_CONS_IF,
CONSTRAINTS   ) 
 

Value:

begin\
  ovm_virtual_sequencer vs; \
  if(!$cast(vs, m_sequencer)) \
    ovm_report_fatal("INVACT", \
      "Cannot execute ovm_do_seq_with on this sequencer."); \
  OVM_SEQ = new( "OVM_SEQ");\
  $cast(OVM_SEQ , create_item(OVM_SEQ, SEQR_CONS_IF.seqrb_ref)); \
  start_item(OVM_SEQ); \
  assert(OVM_SEQ.randomize() with CONSTRAINTS ) else begin \
    ovm_report_warning("RNDFLD", \
      "Randomization failed in ovm_do_seq_with action"); \
  end \
  finish_item(OVM_SEQ);\
  end\

Definition at line 284 of file ovm_sequence_defines.svh.

#define ovm_do_with OVM_SEQUENCE_ITEM,
CONSTRAINTS   ) 
 

Value:

begin \
  ovm_virtual_sequencer ovs; \
  ovm_sequence os; \
  OVM_SEQUENCE_ITEM = new("OVM_SEQUENCE_ITEM");\
  if ($cast(ovs, m_sequencer)) \
    if(!$cast(os, OVM_SEQUENCE_ITEM)) \
      ovm_report_fatal("ITMVSQ", "Cannot do items in a virtual sequence."); \
  $cast(OVM_SEQUENCE_ITEM , create_item(OVM_SEQUENCE_ITEM, m_sequencer)); \
  start_item(OVM_SEQUENCE_ITEM); \
  assert(OVM_SEQUENCE_ITEM.randomize() with CONSTRAINTS ) else begin \
    ovm_report_warning("RNDFLD", "Randomization failed in ovm_do_with action"); \
  end \
  finish_item(OVM_SEQUENCE_ITEM);\
  end

Definition at line 113 of file ovm_sequence_defines.svh.

#define ovm_end_package   endpackage
 

Definition at line 56 of file ovm_sequence_defines.svh.

#define ovm_package PKG   ) 
 

Value:

package PKG; \
  class ovm_bogus_class extends ovm::ovm_sequence; endclass

Definition at line 52 of file ovm_sequence_defines.svh.

#define ovm_rand_send OVM_SEQUENCE_ITEM   ) 
 

Value:

begin \
  start_item(OVM_SEQUENCE_ITEM); \
  assert(OVM_SEQUENCE_ITEM.randomize()) else begin \
    ovm_report_warning("RNDFLD", "Randomization failed in ovm_rand_send action"); \
  end \
  finish_item(OVM_SEQUENCE_ITEM);\
  end\

Definition at line 177 of file ovm_sequence_defines.svh.

#define ovm_rand_send_with OVM_SEQUENCE_ITEM,
CONSTRAINTS   ) 
 

Value:

begin \
  start_item(OVM_SEQUENCE_ITEM); \
  assert(OVM_SEQUENCE_ITEM.randomize() with CONSTRAINTS ) else begin \
    ovm_report_warning("RNDFLD", "Randomization failed in ovm_rand_send_with action"); \
  end \
  finish_item(OVM_SEQUENCE_ITEM);\
  end\

Definition at line 197 of file ovm_sequence_defines.svh.

#define ovm_register_sequence TYPE_NAME,
SEQUENCER   ) 
 

Value:

static bit is_registered_with_sequencer = SEQUENCER::add("TYPE_NAME"); \
  SEQUENCER p_sequencer;\
  virtual function void m_set_p_sequencer(); \
    $cast(p_sequencer, get_sequencer());\
  endfunction

Definition at line 21 of file ovm_sequence_defines.svh.

#define ovm_send OVM_SEQUENCE_ITEM   ) 
 

Value:

begin \
  start_item(OVM_SEQUENCE_ITEM); \
  finish_item(OVM_SEQUENCE_ITEM);\
  end\

Definition at line 158 of file ovm_sequence_defines.svh.

#define ovm_sequence_library_package PKG_NAME   ) 
 

Value:

import PKG_NAME::*; \
  PKG_NAME::ovm_bogus_class M_PKG_NAMEovm_bogus_class

Definition at line 70 of file ovm_sequence_defines.svh.

#define ovm_sequence_utils TYPE_NAME,
DRIVER   ) 
 

Value:

Definition at line 38 of file ovm_sequence_defines.svh.

#define ovm_sequence_utils_begin TYPE_NAME,
DRIVER   ) 
 

Value:

ovm_register_sequence(TYPE_NAME, DRIVER) \
  ovm_object_utils_begin(TYPE_NAME) \

Definition at line 29 of file ovm_sequence_defines.svh.

#define ovm_sequence_utils_end   ovm_object_utils_end \
 

Definition at line 34 of file ovm_sequence_defines.svh.

#define ovm_sequencer_utils TYPE_NAME   ) 
 

Value:

Definition at line 252 of file ovm_sequence_defines.svh.

#define ovm_sequencer_utils_begin TYPE_NAME   ) 
 

Value:

Definition at line 243 of file ovm_sequence_defines.svh.

#define ovm_sequencer_utils_end   ovm_component_utils_end
 

Definition at line 248 of file ovm_sequence_defines.svh.

#define ovm_update_sequence_lib
 

Value:

if(!sequence_ids.exists("ovm_random_sequence")) \
    add_sequence("ovm_random_sequence"); \
  if(!sequence_ids.exists("ovm_exhaustive_sequence")) \
    add_sequence("ovm_exhaustive_sequence"); \
  begin \
    ovm_virtual_sequencer tmp; \
    if(!$cast(tmp, this)) \
      if(!sequence_ids.exists("ovm_simple_sequence")) \
        add_sequence("ovm_simple_sequence"); \
  end \
  ovm_update_sequence_lib(); \

Definition at line 223 of file ovm_sequence_defines.svh.

#define ovm_update_sequence_lib_and_item USER_ITEM   ) 
 

Value:

ovm_factory::set_inst_override({get_full_name(), "*.item"}, \
    "ovm_sequence_item", "USER_ITEM"); \
  ovm_update_sequence_lib \

Definition at line 237 of file ovm_sequence_defines.svh.


Intelligent Design Verification
Intelligent Design Verification
Project: OVM, Revision: 1.1.0
Copyright (c) 2008 Intelligent Design Verification.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included here:
http://www.intelligentdv.com/licenses/fdl.txt
doxygen
Doxygen Version: 1.4.6
Mon Sep 29 14:20:26 2008

Find a documentation bug? Report bugs to: bugs.intelligentdv.com Project: DoxygenFilterSV