OpenCores
URL https://opencores.org/ocsvn/uart2bus_testbench/uart2bus_testbench/trunk

Subversion Repositories uart2bus_testbench

[/] [uart2bus_testbench/] [trunk/] [tb/] [uvm_src/] [tlm2/] [uvm_tlm2_ports.svh] - Blame information for rev 16

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 16 HanySalah
//----------------------------------------------------------------------
2
//   Copyright 2010 Mentor Graphics Corporation
3
//   Copyright 2010 Synopsys, Inc.
4
//   All Rights Reserved Worldwide
5
//
6
//   Licensed under the Apache License, Version 2.0 (the
7
//   "License"); you may not use this file except in
8
//   compliance with the License.  You may obtain a copy of
9
//   the License at
10
//
11
//       http://www.apache.org/licenses/LICENSE-2.0
12
//
13
//   Unless required by applicable law or agreed to in
14
//   writing, software distributed under the License is
15
//   distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
16
//   CONDITIONS OF ANY KIND, either express or implied.  See
17
//   the License for the specific language governing
18
//   permissions and limitations under the License.
19
//----------------------------------------------------------------------
20
 
21
//----------------------------------------------------------------------
22
// Title: TLM2 ports
23
//
24
// The following defines TLM2 port classes.
25
//
26
//----------------------------------------------------------------------
27
 
28
// class: uvm_tlm_b_transport_port
29
//
30
// Class providing the blocking transport port.
31
// The port can be bound to one export.
32
// There is no backward path for the blocking transport.
33
 
34
class uvm_tlm_b_transport_port #(type T=uvm_tlm_generic_payload)
35
  extends uvm_port_base #(uvm_tlm_if #(T));
36
  `UVM_PORT_COMMON(`UVM_TLM_B_MASK, "uvm_tlm_b_transport_port")
37
  `UVM_TLM_B_TRANSPORT_IMP(this.m_if, T, t, delay)
38
endclass
39
 
40
 
41
// class: uvm_tlm_nb_transport_fw_port
42
//
43
// Class providing the non-blocking backward transport port.
44
// Transactions received from the producer, on the forward path, are
45
// sent back to the producer on the backward path using this
46
// non-blocking transport port.
47
// The port can be bound to one export.
48
//
49
 
50
class uvm_tlm_nb_transport_fw_port #(type T=uvm_tlm_generic_payload,
51
                                 type P=uvm_tlm_phase_e)
52
  extends uvm_port_base #(uvm_tlm_if #(T,P));
53
  `UVM_PORT_COMMON(`UVM_TLM_NB_FW_MASK, "uvm_tlm_nb_transport_fw_port")
54
  `UVM_TLM_NB_TRANSPORT_FW_IMP(this.m_if, T, P, t, p, delay)
55
endclass
56
 
57
// class: uvm_tlm_nb_transport_bw_port
58
//
59
// Class providing the non-blocking backward transport port.
60
// Transactions received from the producer, on the forward path, are
61
// sent back to the producer on the backward path using this
62
// non-blocking transport port
63
// The port can be bound to one export.
64
//
65
 
66
class uvm_tlm_nb_transport_bw_port #(type T=uvm_tlm_generic_payload,
67
                                 type P=uvm_tlm_phase_e)
68
  extends uvm_port_base #(uvm_tlm_if #(T,P));
69
 
70
   // Function: new
71
  `UVM_PORT_COMMON(`UVM_TLM_NB_BW_MASK, "uvm_tlm_nb_transport_bw_port")
72
  `UVM_TLM_NB_TRANSPORT_BW_IMP(this.m_if, T, P, t, p, delay)
73
endclass
74
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.