scc 2025.09
SystemC components library
apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH > Class Template Reference
Inheritance diagram for apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >:
Collaboration diagram for apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >:

Public Types

using addr_t = sc_dt::sc_uint<ADDR_WIDTH>
using data_t = typename std::conditional<is_larger(DATA_WIDTH), sc_dt::sc_biguint<DATA_WIDTH>, sc_dt::sc_uint<DATA_WIDTH>>::type
using strb_t = sc_dt::sc_uint<DATA_WIDTH / 8>

Public Member Functions

 initiator (const sc_core::sc_module_name &nm)

Public Attributes

sc_core::sc_in< bool > PCLK_i {"PCLK_i"}
sc_core::sc_in< bool > PRESETn_i {"PRESETn_i"}
sc_core::sc_out< addr_t > PADDR_o {"PADDR_o"}
scc::sc_out_opt< sc_dt::sc_uint< 3 > > PPROT_o {"PPROT_o"}
scc::sc_out_opt< bool > PNSE_o {"PNSE_o"}
sc_core::sc_out< bool > PSELx_o {"PSELx_o"}
sc_core::sc_out< bool > PENABLE_o {"PENABLE_o"}
sc_core::sc_out< bool > PWRITE_o {"PWRITE_o"}
sc_core::sc_out< data_t > PWDATA_o {"PWDATA_o"}
scc::sc_out_opt< strb_t > PSTRB_o {"PSTRB_o"}
sc_core::sc_in< bool > PREADY_i {"PREADY_i"}
sc_core::sc_in< data_t > PRDATA_i {"PRDATA_i"}
sc_core::sc_in< bool > PSLVERR_i {"PSLVERR_i"}
scc::sc_out_opt< bool > PWAKEUP_o {"PWAKEUP_o"}
tlm::scc::target_mixin< tlm::tlm_target_socket< DATA_WIDTH > > tsckt {"tsckt"}

Detailed Description

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
class apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >

Definition at line 36 of file initiator.h.

Member Typedef Documentation

◆ addr_t

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
using apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::addr_t = sc_dt::sc_uint<ADDR_WIDTH>

Definition at line 40 of file initiator.h.

◆ data_t

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
using apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::data_t = typename std::conditional<is_larger(DATA_WIDTH), sc_dt::sc_biguint<DATA_WIDTH>, sc_dt::sc_uint<DATA_WIDTH>>::type

Definition at line 41 of file initiator.h.

◆ strb_t

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
using apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::strb_t = sc_dt::sc_uint<DATA_WIDTH / 8>

Definition at line 42 of file initiator.h.

Constructor & Destructor Documentation

◆ initiator()

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH>
apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::initiator ( const sc_core::sc_module_name & nm)

Definition at line 74 of file initiator.h.

Member Data Documentation

◆ PADDR_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_out<addr_t> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PADDR_o {"PADDR_o"}

Definition at line 46 of file initiator.h.

◆ PCLK_i

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_in<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PCLK_i {"PCLK_i"}

Definition at line 44 of file initiator.h.

◆ PENABLE_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_out<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PENABLE_o {"PENABLE_o"}

Definition at line 50 of file initiator.h.

◆ PNSE_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
scc::sc_out_opt<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PNSE_o {"PNSE_o"}

Definition at line 48 of file initiator.h.

◆ PPROT_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
scc::sc_out_opt<sc_dt::sc_uint<3> > apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PPROT_o {"PPROT_o"}

Definition at line 47 of file initiator.h.

◆ PRDATA_i

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_in<data_t> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PRDATA_i {"PRDATA_i"}

Definition at line 55 of file initiator.h.

◆ PREADY_i

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_in<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PREADY_i {"PREADY_i"}

Definition at line 54 of file initiator.h.

◆ PRESETn_i

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_in<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PRESETn_i {"PRESETn_i"}

Definition at line 45 of file initiator.h.

◆ PSELx_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_out<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PSELx_o {"PSELx_o"}

Definition at line 49 of file initiator.h.

◆ PSLVERR_i

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_in<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PSLVERR_i {"PSLVERR_i"}

Definition at line 56 of file initiator.h.

◆ PSTRB_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
scc::sc_out_opt<strb_t> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PSTRB_o {"PSTRB_o"}

Definition at line 53 of file initiator.h.

◆ PWAKEUP_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
scc::sc_out_opt<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PWAKEUP_o {"PWAKEUP_o"}

Definition at line 57 of file initiator.h.

◆ PWDATA_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_out<data_t> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PWDATA_o {"PWDATA_o"}

Definition at line 52 of file initiator.h.

◆ PWRITE_o

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
sc_core::sc_out<bool> apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::PWRITE_o {"PWRITE_o"}

Definition at line 51 of file initiator.h.

◆ tsckt

template<unsigned DATA_WIDTH, unsigned ADDR_WIDTH = 32>
tlm::scc::target_mixin<tlm::tlm_target_socket<DATA_WIDTH> > apb::pin::initiator< DATA_WIDTH, ADDR_WIDTH >::tsckt {"tsckt"}

Definition at line 59 of file initiator.h.


The documentation for this class was generated from the following file:
  • /home/eyck/Projects/MINRES/SystemC-Components/src/interfaces/apb/pin/initiator.h