urm_meth_compatibility.svh

Go to the documentation of this file.
00001 // $Id: urm__meth__compatibility_8svh-source.html,v 1.1 2008/10/07 21:54:56 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_random_sequence    urm_random_sequence;
00029 typedef ovm_simple_sequence    urm_simple_sequence;
00030 //typedef ovm_main_sequence      urm_main_sequence;
00031 typedef ovm_sequencer          urm_driver;
00032 typedef ovm_virtual_sequencer  urm_virtual_driver;
00033 typedef ovm_driver             urm_bfm;
00034 typedef ovm_agent              urm_agent;
00035 typedef ovm_monitor            urm_monitor;
00036 typedef ovm_test               urm_test;
00037 typedef ovm_env                urm_env;
00038 
00039 //
00040 // TLM Adapters to allow backward compatibility
00041 // --------------------------------------------
00042 
00043 typedef enum {
00044   URM_ZERO_OR_MORE_BOUND,
00045   URM_ONE_OR_MORE_BOUND,
00046   URM_ALL_BOUND
00047 } urm_port_policy;
00048 
00049 `define tlm_port_compat_new_func \
00050   function new( string name , ovm_component parent , \
00051                 urm_port_policy policy=URM_ONE_OR_MORE_BOUND ); \
00052     super.new(name,parent,policy); \
00053   endfunction
00054 
00055 `define tlm_export_compat_new_func(T) \
00056   function new( string name , T imp , \
00057                 urm_port_policy policy=URM_ONE_OR_MORE_BOUND ); \
00058     super.new(name,imp); \
00059   endfunction
00060 
00061 class tlm_b_put_port#(type T=int) extends ovm_blocking_put_port#(T);
00062   `tlm_port_compat_new_func
00063 endclass
00064 
00065 class tlm_nb_put_port#(type T=int) extends ovm_nonblocking_put_port#(T);
00066   `tlm_port_compat_new_func
00067 endclass
00068 
00069 class tlm_put_port#(type T=int) extends ovm_put_port#(T);
00070   `tlm_port_compat_new_func
00071 endclass
00072 
00073 class tlm_b_put_export#(type T1=int, type T2=int) extends ovm_blocking_put_imp#(T1,T2);
00074   `tlm_export_compat_new_func(T2)
00075 endclass
00076 
00077 class tlm_nb_put_export#(type T1=int, type T2=int) extends ovm_nonblocking_put_imp#(T1,T2);
00078   `tlm_export_compat_new_func(T2)
00079 endclass
00080 
00081 class tlm_put_export#(type T1=int, type T2=int) extends ovm_put_imp#(T1,T2);
00082   `tlm_export_compat_new_func(T2)
00083 endclass
00084 
00085 class tlm_b_get_port#(type T=int) extends ovm_blocking_get_port#(T);
00086   `tlm_port_compat_new_func
00087 endclass
00088 
00089 class tlm_nb_get_port#(type T=int) extends ovm_nonblocking_get_port#(T);
00090   `tlm_port_compat_new_func
00091 endclass
00092 
00093 class tlm_get_port#(type T=int) extends ovm_get_port#(T);
00094   `tlm_port_compat_new_func
00095 endclass
00096 
00097 class tlm_b_get_export#(type T1=int, type T2=int) extends ovm_blocking_get_imp#(T1,T2);
00098   `tlm_export_compat_new_func(T2)
00099 endclass
00100 
00101 class tlm_nb_get_export#(type T1=int, type T2=int) extends ovm_nonblocking_get_imp#(T1,T2);
00102   `tlm_export_compat_new_func(T2)
00103 endclass
00104 
00105 class tlm_get_export#(type T1=int, type T2=int) extends ovm_get_imp#(T1,T2);
00106   `tlm_export_compat_new_func(T2)
00107 endclass
00108 
00109 class urm_fifo#(type T=ovm_object) extends tlm_fifo#(T);
00110   function new (string name, ovm_component parent, int size=1);
00111     super.new(name, parent, size);
00112   endfunction
00113 endclass
00114 
00115 `endif

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:13 2008
Find a documentation bug? Report bugs to: bugs.intelligentdv.com Project: DoxygenFilterSV