You copied the Doc URL to your clipboard.

Classes and interfaces

This section defines the AMBA-PV classes and interfaces.

amba_pv_attributes
This class supports user-defined attributes.
amba_pv_ace_master_base
The base class for AMBA-PV ACE master modules.
amba_pv_ace_master_socket<>
The socket to be instantiated on the master side for full ACE modeling.
amba_pv_ace_slave_socket<>
The socket to be instantiated on the slave side for full ACE modeling.
amba_pv_bw_snoop_if
A tagged variant of the tlm_bw_transport_if interface, for AMBA-PV ACE master modules to implement.
amba_pv_bw_transport_and_snoop_if
A simple combination of the interfaces amba_pv_bw_snoop_if and amba_pv_bw_transport_if.
amba_pv_bw_transport_if
A tagged variant of the tlm_bw_transport_if interface, for AMBA-PV master modules to implement.
amba_pv_control
This class supports control information that is part of the AMBA buses.
amba_pv_dvm
This class provides transaction information for DVM operations.
amba_pv_extension
This class is the AMBA-PV extension type.
amba_pv_fw_transport_if
This interface is a tagged variant of the tlm_fw_transport_if interface, for AMBA-PV slave modules to implement.
amba_pv_if<>
The user-layer transaction interface.
amba_pv_master_base
The base class for AMBA-PV master modules.
amba_pv_master_socket<>
The socket to be instantiated on the master side. This socket is also automatically instantiated on the slave side when an amba_pv_ace_slave_socket<> is instantiated.
amba_pv_slave_base<>
The base class for AMBA-PV slave modules.
amba_pv_slave_socket<>
The socket to be instantiated on the slave side.
amba_pv_snoop_socket<>
This socket is automatically instantiated on the master side when an amba_pv_ace_master_socket<> is instantiated.
amba_pv_trans_pool
This class implements the tlm::tlm_mm_interface and provides a memory pool from which to allocate and free transactions.
amba_pv_trans_ptr
This smart pointer retains sole ownership of a transaction through a pointer and releases that transaction when the amba_pv_trans_ptr goes out of scope.

The templated AMBA-PV classes and interfaces have a BUSWIDTH parameter.

An AMBA-PV bus master invokes methods on its amba_pv_master_socket to generate burst read and write requests on the AMBA-PV bus and check the returned responses.

An AMBA-PV bus slave implements read() and write() methods to process requests and return the associated responses.

The TLM 2.0 b_transport() blocking interface is the basic mechanism that implements this master-slave interaction. In addition, AMBA-PV uses the extension mechanism to extend TLM 2.0 and provide maximum interoperability.

Note

  • For the full list of classes and interfaces, see the AMBA-PV header files. The top-level file is amba_pv.h which contains includes for the other header files.
  • All AMBA-PV classes and interfaces use the amba_pv namespace.
Was this page helpful? Yes No