urm_meth_compatibility.svh

Go to the documentation of this file.
00001 // $Id: a00309.html,v 1.1 2009/01/07 19:29:48 alex.marin Exp $
00002 //----------------------------------------------------------------------
00003 //   Copyright 2007-2008 Mentor Graphics Corporation
00004 //   Copyright 2007-2008 Cadence Design Systems, Inc.
00005 //   All Rights Reserved Worldwide
00006 //
00007 //   Licensed under the Apache License, Version 2.0 (the
00008 //   "License"); you may not use this file except in
00009 //   compliance with the License.  You may obtain a copy of
00010 //   the License at
00011 //
00012 //       http://www.apache.org/licenses/LICENSE-2.0
00013 //
00014 //   Unless required by applicable law or agreed to in
00015 //   writing, software distributed under the License is
00016 //   distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
00017 //   CONDITIONS OF ANY KIND, either express or implied.  See
00018 //   the License for the specific language governing
00019 //   permissions and limitations under the License.
00020 //----------------------------------------------------------------------
00021 `ifndef URM_METH_COMPATIBILITY_SVH
00022 `define URM_METH_COMPATIBILITY_SVH
00023 
00024 
00025 //typedef ovm_sequence_base      urm_item;
00026 typedef ovm_sequence_item      urm_sequence_item;
00027 //typedef ovm_sequence           urm_sequence;
00028 typedef ovm_sequence_base      urm_sequence;
00029 //typedef ovm_random_sequence    urm_random_sequence;
00030 //typedef ovm_simple_sequence    urm_simple_sequence;
00031 //typedef ovm_main_sequence      urm_main_sequence;
00032 //typedef ovm_sequencer          urm_driver;
00033 typedef ovm_sequencer_base          urm_driver;
00034 //typedef ovm_virtual_sequencer  urm_virtual_driver;
00035 typedef ovm_sequencer_base  urm_virtual_driver;
00036 //typedef ovm_driver             urm_bfm;
00037 typedef ovm_agent              urm_agent;
00038 typedef ovm_monitor            urm_monitor;
00039 typedef ovm_test               urm_test;
00040 typedef ovm_env                urm_env;
00041 
00042 //
00043 // TLM Adapters to allow backward compatibility
00044 // --------------------------------------------
00045 
00046 typedef enum {
00047   URM_ZERO_OR_MORE_BOUND,
00048   URM_ONE_OR_MORE_BOUND,
00049   URM_ALL_BOUND = 255
00050 } urm_port_policy;
00051 
00052 `define tlm_port_compat_new_func \
00053   function new( string name , ovm_component parent , \
00054                 urm_port_policy policy=URM_ONE_OR_MORE_BOUND ); \
00055     super.new(name,parent,0,policy); \
00056   endfunction
00057 
00058 `define tlm_export_compat_new_func(T) \
00059   function new( string name , T imp , \
00060                 urm_port_policy policy=URM_ONE_OR_MORE_BOUND ); \
00061     super.new(name,imp); \
00062   endfunction
00063 
00064 class tlm_b_put_port#(type T=int) extends ovm_blocking_put_port#(T);
00065   `tlm_port_compat_new_func
00066 endclass
00067 
00068 class tlm_nb_put_port#(type T=int) extends ovm_nonblocking_put_port#(T);
00069   `tlm_port_compat_new_func
00070 endclass
00071 
00072 class tlm_put_port#(type T=int) extends ovm_put_port#(T);
00073   `tlm_port_compat_new_func
00074 endclass
00075 
00076 class tlm_b_put_export#(type T1=int, type T2=int) extends ovm_blocking_put_imp#(T1,T2);
00077   `tlm_export_compat_new_func(T2)
00078 endclass
00079 
00080 class tlm_nb_put_export#(type T1=int, type T2=int) extends ovm_nonblocking_put_imp#(T1,T2);
00081   `tlm_export_compat_new_func(T2)
00082 endclass
00083 
00084 class tlm_put_export#(type T1=int, type T2=int) extends ovm_put_imp#(T1,T2);
00085   `tlm_export_compat_new_func(T2)
00086 endclass
00087 
00088 class tlm_b_get_port#(type T=int) extends ovm_blocking_get_port#(T);
00089   `tlm_port_compat_new_func
00090 endclass
00091 
00092 class tlm_nb_get_port#(type T=int) extends ovm_nonblocking_get_port#(T);
00093   `tlm_port_compat_new_func
00094 endclass
00095 
00096 class tlm_get_port#(type T=int) extends ovm_get_port#(T);
00097   `tlm_port_compat_new_func
00098 endclass
00099 
00100 class tlm_b_get_export#(type T1=int, type T2=int) extends ovm_blocking_get_imp#(T1,T2);
00101   `tlm_export_compat_new_func(T2)
00102 endclass
00103 
00104 class tlm_nb_get_export#(type T1=int, type T2=int) extends ovm_nonblocking_get_imp#(T1,T2);
00105   `tlm_export_compat_new_func(T2)
00106 endclass
00107 
00108 class tlm_get_export#(type T1=int, type T2=int) extends ovm_get_imp#(T1,T2);
00109   `tlm_export_compat_new_func(T2)
00110 endclass
00111 
00112 class urm_fifo#(type T=ovm_object) extends tlm_fifo#(T);
00113   function new (string name, ovm_component parent, int size=1);
00114     super.new(name, parent, size);
00115   endfunction
00116 endclass
00117 
00118 `endif

Intelligent Design Verification
Intelligent Design Verification
Project: OVM, Revision: 2.0.1
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.5.5
Wed Jan 7 19:27:18 2009
Find a documentation bug? Report bugs to: bugs.intelligentdv.com Project: DoxygenFilterSV