# TLM Socket Base Classes

A collection of base classes, one for each socket type. The reason for having a base class for each socket is that all the socket (base) types must be known before connect is defined. Socket connection semantics are provided in the derived classes, which are user visible.

Termination Sockets | A termination socket must be the terminus of every TLM path. A transaction originates with an initiator socket and ultimately ends up in a target socket. There may be zero or more pass-through sockets between initiator and target.
Pass-through Sockets | Pass-through initiators are ports and contain exports for instance IS-A port and HAS-A export. Pass-through targets are the opposite, they are exports and contain ports.

Contents

TLM Socket Base Classes | A collection of base classes, one for each socket type.
uvm_tlm_b_target_socket_base | IS-A forward imp; has no backward path except via the payload contents.
uvm_tlm_b_initiator_socket_base | IS-A forward port; has no backward path except via the payload contents
uvm_tlm_nb_target_socket_base | IS-A forward imp; HAS-A backward port
uvm_tlm_nb_initiator_socket_base | IS-A forward port; HAS-A backward imp
uvm_tlm_nb_passthrough_initiator_socket_base | IS-A forward port; HAS-A backward export
uvm_tlm_nb_passthrough_target_socket_base | IS-A forward export; HAS-A backward port
uvm_tlm_b_passthrough_initiator_socket_base | IS-A forward port
uvm_tlm_b_passthrough_target_socket_base | IS-A forward export

## uvm_tlm_b_target_socket_base

IS-A forward imp; has no backward path except via the payload contents.

Summary

uvm_tlm_b_target_socket_base
IS-A forward imp; has no backward path except via the payload contents.
Class Hierarchy
uvm_port_base#(uvm_tlm_if#(T))
uvm_tlm_b_target_socket_base
Class Declaration
> class uvm_tlm_b_target_socket_base #(
> | type | T | = | uvm_tlm_generic_payload
> ) extends uvm_port_base #(uvm_tlm_if #(T))

## uvm_tlm_b_initiator_socket_base

IS-A forward port; has no backward path except via the payload contents

Summary

uvm_tlm_b_initiator_socket_base
IS-A forward port; has no backward path except via the payload contents
Class Hierarchy
uvm_port_base#(uvm_tlm_if#(T))
uvm_tlm_b_initiator_socket_base
Class Declaration
> class uvm_tlm_b_initiator_socket_base #(
> | type | T | = | uvm_tlm_generic_payload
> ) extends uvm_port_base #(uvm_tlm_if #(T))

## uvm_tlm_nb_target_socket_base

IS-A forward imp; HAS-A backward port

Summary

uvm_tlm_nb_target_socket_base
IS-A forward imp; HAS-A backward port
Class Hierarchy
uvm_port_base#(uvm_tlm_if#(T,P))
uvm_tlm_nb_target_socket_base
Class Declaration
> class uvm_tlm_nb_target_socket_base #(
> | type | T | = | uvm_tlm_generic_payload,
> | type | P | = | uvm_tlm_phase_e
> ) extends uvm_port_base #(uvm_tlm_if #(T,P))

## uvm_tlm_nb_initiator_socket_base

IS-A forward port; HAS-A backward imp

Summary

uvm_tlm_nb_initiator_socket_base
IS-A forward port; HAS-A backward imp
Class Hierarchy
uvm_port_base#(uvm_tlm_if#(T,P))
uvm_tlm_nb_initiator_socket_base
Class Declaration
> class uvm_tlm_nb_initiator_socket_base #(
> | type | T | = | uvm_tlm_generic_payload,
> | type | P | = | uvm_tlm_phase_e
> ) extends uvm_port_base #(uvm_tlm_if #(T,P))

## uvm_tlm_nb_passthrough_initiator_socket_base

IS-A forward port; HAS-A backward export

Summary

uvm_tlm_nb_passthrough_initiator_socket_base
IS-A forward port; HAS-A backward export
Class Hierarchy
uvm_port_base#(uvm_tlm_if#(T,P))
uvm_tlm_nb_passthrough_initiator_socket_base
Class Declaration
> class uvm_tlm_nb_passthrough_initiator_socket_base #(
> | type | T | = | uvm_tlm_generic_payload,
> | type | P | = | uvm_tlm_phase_e
> ) extends uvm_port_base #(uvm_tlm_if #(T,P))

## uvm_tlm_nb_passthrough_target_socket_base

IS-A forward export; HAS-A backward port

Summary

uvm_tlm_nb_passthrough_target_socket_base
IS-A forward export; HAS-A backward port
Class Hierarchy
uvm_port_base#(uvm_tlm_if#(T,P))
uvm_tlm_nb_passthrough_target_socket_base
Class Declaration
> class uvm_tlm_nb_passthrough_target_socket_base #(
> | type | T | = | uvm_tlm_generic_payload,
> | type | P | = | uvm_tlm_phase_e
> ) extends uvm_port_base #(uvm_tlm_if #(T,P))

## uvm_tlm_b_passthrough_initiator_socket_base

IS-A forward port

Summary

uvm_tlm_b_passthrough_initiator_socket_base
IS-A forward port
Class Hierarchy
uvm_port_base#(uvm_tlm_if#(T))
uvm_tlm_b_passthrough_initiator_socket_base
Class Declaration
> class uvm_tlm_b_passthrough_initiator_socket_base #(
> | type | T | = | uvm_tlm_generic_payload
> ) extends uvm_port_base #(uvm_tlm_if #(T))

## uvm_tlm_b_passthrough_target_socket_base

IS-A forward export

Summary

uvm_tlm_b_passthrough_target_socket_base
IS-A forward export
Class Hierarchy
uvm_port_base#(uvm_tlm_if#(T))
uvm_tlm_b_passthrough_target_socket_base
Class Declaration
> class uvm_tlm_b_passthrough_target_socket_base #(
> | type | T | = | uvm_tlm_generic_payload
> ) extends uvm_port_base #(uvm_tlm_if #(T))

> class uvm_tlm_b_target_socket_base #(
> | type | T | = | uvm_tlm_generic_payload
> ) extends uvm_port_base #(uvm_tlm_if #(T))

IS-A forward imp; has no backward path except via the payload contents.

> class uvm_tlm_b_initiator_socket_base #(
> | type | T | = | uvm_tlm_generic_payload
> ) extends uvm_port_base #(uvm_tlm_if #(T))

IS-A forward port; has no backward path except via the payload contents

> class uvm_tlm_nb_target_socket_base #(
> | type | T | = | uvm_tlm_generic_payload,
> | type | P | = | uvm_tlm_phase_e
> ) extends uvm_port_base #(uvm_tlm_if #(T,P))

IS-A forward imp; HAS-A backward port

> class uvm_tlm_nb_initiator_socket_base #(
> | type | T | = | uvm_tlm_generic_payload,
> | type | P | = | uvm_tlm_phase_e
> ) extends uvm_port_base #(uvm_tlm_if #(T,P))

IS-A forward port; HAS-A backward imp

> class uvm_tlm_nb_passthrough_initiator_socket_base #(
> | type | T | = | uvm_tlm_generic_payload,
> | type | P | = | uvm_tlm_phase_e
> ) extends uvm_port_base #(uvm_tlm_if #(T,P))

IS-A forward port; HAS-A backward export

> class uvm_tlm_nb_passthrough_target_socket_base #(
> | type | T | = | uvm_tlm_generic_payload,
> | type | P | = | uvm_tlm_phase_e
> ) extends uvm_port_base #(uvm_tlm_if #(T,P))

IS-A forward export; HAS-A backward port

> class uvm_tlm_b_passthrough_initiator_socket_base #(
> | type | T | = | uvm_tlm_generic_payload
> ) extends uvm_port_base #(uvm_tlm_if #(T))

IS-A forward port

> class uvm_tlm_b_passthrough_target_socket_base #(
> | type | T | = | uvm_tlm_generic_payload
> ) extends uvm_port_base #(uvm_tlm_if #(T))

IS-A forward export