⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ovm_sequence_builtin.svh

📁 Open Verification Methodology
💻 SVH
字号:
// $Id: //dvt/vtech/dev/main/ovm/src/methodology/sequences/ovm_sequence_builtin.svh#1 $//----------------------------------------------------------------------//   Copyright 2007-2008 Mentor Graphics Corporation//   Copyright 2007-2008 Cadence Design Systems, Inc.//   All Rights Reserved Worldwide////   Licensed under the Apache License, Version 2.0 (the//   "License"); you may not use this file except in//   compliance with the License.  You may obtain a copy of//   the License at////       http://www.apache.org/licenses/LICENSE-2.0////   Unless required by applicable law or agreed to in//   writing, software distributed under the License is//   distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR//   CONDITIONS OF ANY KIND, either express or implied.  See//   the License for the specific language governing//   permissions and limitations under the License.//----------------------------------------------------------------------`ifndef OVM_SEQUENCE_BUILTIN_SVH`define OVM_SEQUENCE_BUILTIN_SVH`include "methodology/ovm_meth_defines.svh"//-----------------------------------------------------------------------------//// CLASS: ovm_random_sequence////-----------------------------------------------------------------------------class ovm_random_sequence extends ovm_sequence;  rand protected int unsigned l_count;  local int unsigned l_exhaustive_seq_kind;  local int unsigned max_kind;  rand local int unsigned l_kind;  protected bit m_success;  extern function new (string name="ovm_random_sequence",     ovm_sequencer_base sequencer=null,    ovm_sequence parent_seq=null);  extern virtual task body ();   //Implement data functions  extern function void do_copy (ovm_object rhs);  extern function bit  do_compare (ovm_object rhs, ovm_comparer comparer);  extern function void do_print (ovm_printer printer);  extern function void do_record (ovm_recorder recorder);  function ovm_object create (string name="");    ovm_random_sequence i; i=new(name);    return i;  endfunction  virtual function string get_type_name();     return "ovm_random_sequence";  endfunction     // Macro for factory creation  `ovm_object_registry(ovm_random_sequence, ovm_random_sequence)endclass//-----------------------------------------------------------------------------//// CLASS: ovm_exhaustive_sequence////-----------------------------------------------------------------------------class ovm_exhaustive_sequence extends ovm_sequence;  rand protected int unsigned l_count;  local int unsigned l_exhaustive_seq_kind;  local int unsigned max_kind;  randc local bit[9:0] l_kind;  protected bit m_success;  extern function new (string name="ovm_exhaustive_sequence",     ovm_sequencer_base sequencer=null,    ovm_sequence parent_seq=null);  extern virtual task body ();   //Implement data functions  extern function void do_copy (ovm_object rhs);  extern function bit  do_compare (ovm_object rhs, ovm_comparer comparer);  extern function void do_print (ovm_printer printer);  extern function void do_record (ovm_recorder recorder);  function ovm_object create (string name="");    ovm_exhaustive_sequence i; i=new(name);    return i;  endfunction  virtual function string get_type_name();     return "ovm_exhaustive_sequence";  endfunction   // Macro for factory creation  `ovm_object_registry(ovm_exhaustive_sequence, ovm_exhaustive_sequence)endclass//-----------------------------------------------------------------------------//// CLASS: ovm_simple_sequence////-----------------------------------------------------------------------------class ovm_simple_sequence extends ovm_sequence;  // constructor  extern function new (string name="ovm_simple_sequence",     ovm_sequencer_base sequencer=null,     ovm_sequence parent_seq=null);  // defines the behavior of this core sequence.  extern virtual task body();   protected rand ovm_sequence_item item;  extern function void do_print (ovm_printer printer);  function ovm_object create (string name="");    ovm_simple_sequence i; i=new(name);    return i;  endfunction  virtual function string get_type_name();     return "ovm_simple_sequence";  endfunction   // Macro for factory creation  `ovm_object_registry(ovm_simple_sequence, ovm_simple_sequence)endclass`endif // OVM_SEQUENCE_BUILTIN_SVH

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -