scc 2025.09
SystemC components library
axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL > Class Template Reference

#include <ordered_target.h>

Inheritance diagram for axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >:
Collaboration diagram for axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >:

Public Types

using base = axi_target_pe
using payload_type = base::payload_type
using phase_type = base::phase_type

Public Member Functions

 ordered_target (const sc_core::sc_module_name &nm)
 the constructor
 ordered_target (ordered_target const &)=delete
 ordered_target (ordered_target &&)=delete
ordered_targetoperator= (ordered_target const &)=delete
ordered_targetoperator= (ordered_target &&)=delete
size_t get_outstanding_tx_count () override

Public Attributes

sc_core::sc_in< bool > clk_i {"clk_i"}
axi::axi_target_socket< BUSWIDTH, TYPES, N, POL > sckt {"sckt"}
axi_target_pe pe
rate_limiting_buffer rate_limit_buffer

Protected Member Functions

void end_of_elaboration ()

Detailed Description

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
class axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >

the target socket protocol engine(s) adapted to a particular target socket configuration, sends responses in the order they arrived

Definition at line 100 of file ordered_target.h.

Member Typedef Documentation

◆ base

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
using axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::base = axi_target_pe

Definition at line 102 of file ordered_target.h.

◆ payload_type

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
using axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::payload_type = base::payload_type

Definition at line 103 of file ordered_target.h.

◆ phase_type

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
using axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::phase_type = base::phase_type

Definition at line 104 of file ordered_target.h.

Constructor & Destructor Documentation

◆ ordered_target()

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::ordered_target ( const sc_core::sc_module_name & nm)
inline

the constructor

Parameters
nmmodule instance name

Definition at line 113 of file ordered_target.h.

Member Function Documentation

◆ end_of_elaboration()

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
void axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::end_of_elaboration ( )
inlineprotected

Definition at line 137 of file ordered_target.h.

◆ get_outstanding_tx_count()

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
size_t axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::get_outstanding_tx_count ( )
inlineoverridevirtual

Implements axi::pe::target_info_if.

Definition at line 134 of file ordered_target.h.

Member Data Documentation

◆ clk_i

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
sc_core::sc_in<bool> axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::clk_i {"clk_i"}

Definition at line 105 of file ordered_target.h.

◆ pe

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
axi_target_pe axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::pe

Definition at line 143 of file ordered_target.h.

◆ rate_limit_buffer

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
rate_limiting_buffer axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::rate_limit_buffer

Definition at line 144 of file ordered_target.h.

◆ sckt

template<unsigned int BUSWIDTH = 32, typename TYPES = axi::axi_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
axi::axi_target_socket<BUSWIDTH, TYPES, N, POL> axi::pe::ordered_target< BUSWIDTH, TYPES, N, POL >::sckt {"sckt"}

Definition at line 107 of file ordered_target.h.


The documentation for this class was generated from the following file:
  • /home/eyck/Projects/MINRES/SystemC-Components/third_party/axi_chi/axi/pe/ordered_target.h