scc 2025.09
SystemC components library
obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH > Class Template Reference
Inheritance diagram for obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >:
Collaboration diagram for obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >:

Public Types

using payload_type = tlm::tlm_base_protocol_types::tlm_payload_type
using phase_type = tlm::tlm_base_protocol_types::tlm_phase_type

Public Member Functions

 SC_HAS_PROCESS (target)
 target (sc_core::sc_module_name nm)
tlm::tlm_sync_enum nb_transport_bw (payload_type &trans, phase_type &phase, sc_core::sc_time &t)

Public Attributes

tlm::scc::initiator_mixin< tlm::scc::scv::tlm_rec_initiator_socket< 0 > > isckt {"isckt"}
sc_core::sc_in< bool > clk_i {"clk_i"}
sc_core::sc_in< bool > resetn_i {"resetn_i"}
sc_core::sc_in< bool > req_i {"req_i"}
sc_core::sc_out< bool > gnt_o {"gnt_o"}
sc_core::sc_in< sc_dt::sc_uint< ADDR_WIDTH > > addr_i {"addr_i"}
sc_core::sc_in< bool > we_i {"we_i"}
sc_core::sc_in< sc_dt::sc_uint< DATA_WIDTH/8 > > be_i {"be_i"}
sc_core::sc_in< sc_dt::sc_uint< DATA_WIDTH > > wdata_i {"wdata_i"}
scc::sc_in_opt< sc_dt::sc_uint< USER_WIDTH > > auser_i {"auser_i"}
scc::sc_in_opt< sc_dt::sc_uint< USER_WIDTH > > wuser_i {"wuser_i"}
scc::sc_in_opt< sc_dt::sc_uint< ID_WIDTH > > aid_i {"aid_i"}
sc_core::sc_out< bool > rvalid_o {"rvalid_o"}
sc_core::sc_in< bool > rready_i {"rready_i"}
sc_core::sc_out< sc_dt::sc_uint< DATA_WIDTH > > rdata_o {"rdata_o"}
sc_core::sc_out< bool > err_o {"err_o"}
scc::sc_out_opt< sc_dt::sc_uint< USER_WIDTH > > ruser_o {"ruser_o"}
scc::sc_out_opt< sc_dt::sc_uint< ID_WIDTH > > r_id_o {"r_id_o"}
cci::cci_param< sc_core::sc_time > sample_delay {"sample_delay", 0_ns}
cci::cci_param< int > req2gnt_delay {"req2gnt_delay", 0}
cci::cci_param< int > addr2data_delay {"addr2data_delay", 0}

Detailed Description

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
class obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >

Definition at line 41 of file target.h.

Member Typedef Documentation

◆ payload_type

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
using obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::payload_type = tlm::tlm_base_protocol_types::tlm_payload_type

Definition at line 43 of file target.h.

◆ phase_type

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
using obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::phase_type = tlm::tlm_base_protocol_types::tlm_phase_type

Definition at line 44 of file target.h.

Member Data Documentation

◆ addr2data_delay

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
cci::cci_param<int> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::addr2data_delay {"addr2data_delay", 0}

Definition at line 76 of file target.h.

◆ addr_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_in<sc_dt::sc_uint<ADDR_WIDTH> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::addr_i {"addr_i"}

Definition at line 57 of file target.h.

◆ aid_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
scc::sc_in_opt<sc_dt::sc_uint<ID_WIDTH> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::aid_i {"aid_i"}

Definition at line 63 of file target.h.

◆ auser_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
scc::sc_in_opt<sc_dt::sc_uint<USER_WIDTH> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::auser_i {"auser_i"}

Definition at line 61 of file target.h.

◆ be_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_in<sc_dt::sc_uint<DATA_WIDTH / 8> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::be_i {"be_i"}

Definition at line 59 of file target.h.

◆ clk_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_in<bool> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::clk_i {"clk_i"}

Definition at line 52 of file target.h.

◆ err_o

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_out<bool> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::err_o {"err_o"}

Definition at line 68 of file target.h.

◆ gnt_o

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_out<bool> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::gnt_o {"gnt_o"}

Definition at line 56 of file target.h.

◆ isckt

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
tlm::scc::initiator_mixin<tlm::scc::scv::tlm_rec_initiator_socket<0> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::isckt {"isckt"}

Definition at line 50 of file target.h.

◆ r_id_o

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
scc::sc_out_opt<sc_dt::sc_uint<ID_WIDTH> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::r_id_o {"r_id_o"}

Definition at line 70 of file target.h.

◆ rdata_o

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_out<sc_dt::sc_uint<DATA_WIDTH> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::rdata_o {"rdata_o"}

Definition at line 67 of file target.h.

◆ req2gnt_delay

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
cci::cci_param<int> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::req2gnt_delay {"req2gnt_delay", 0}

Definition at line 75 of file target.h.

◆ req_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_in<bool> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::req_i {"req_i"}

Definition at line 55 of file target.h.

◆ resetn_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_in<bool> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::resetn_i {"resetn_i"}

Definition at line 53 of file target.h.

◆ rready_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_in<bool> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::rready_i {"rready_i"}

Definition at line 66 of file target.h.

◆ ruser_o

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
scc::sc_out_opt<sc_dt::sc_uint<USER_WIDTH> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::ruser_o {"ruser_o"}

Definition at line 69 of file target.h.

◆ rvalid_o

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_out<bool> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::rvalid_o {"rvalid_o"}

Definition at line 65 of file target.h.

◆ sample_delay

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
cci::cci_param<sc_core::sc_time> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::sample_delay {"sample_delay", 0_ns}

Definition at line 74 of file target.h.

◆ wdata_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_in<sc_dt::sc_uint<DATA_WIDTH> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::wdata_i {"wdata_i"}

Definition at line 60 of file target.h.

◆ we_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
sc_core::sc_in<bool> obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::we_i {"we_i"}

Definition at line 58 of file target.h.

◆ wuser_i

template<unsigned int DATA_WIDTH = 32, unsigned int ADDR_WIDTH = 32, unsigned int ID_WIDTH = 0, unsigned int USER_WIDTH = 0>
scc::sc_in_opt<sc_dt::sc_uint<USER_WIDTH> > obi::pin::target< DATA_WIDTH, ADDR_WIDTH, ID_WIDTH, USER_WIDTH >::wuser_i {"wuser_i"}

Definition at line 62 of file target.h.


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