scc  2022.4.0
SystemC components library
apb::pe::apb_target< BUSWIDTH, TYPES, N, POL > Class Template Reference

#include <apb_target.h>

Inheritance diagram for apb::pe::apb_target< BUSWIDTH, TYPES, N, POL >:
Collaboration diagram for apb::pe::apb_target< BUSWIDTH, TYPES, N, POL >:

Public Types

using base = apb_target_b
 
using payload_type = base::payload_type
 
using phase_type = base::phase_type
 
- Public Types inherited from apb::pe::apb_target_b
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

 apb_target (tlm::tlm_target_socket< BUSWIDTH, TYPES, N, POL > &socket)
 the constructor More...
 
 apb_target (const sc_core::sc_module_name &nm, tlm::tlm_target_socket< BUSWIDTH, TYPES, N, POL > &socket)
 
 apb_target (apb_target const &)=delete
 
 apb_target (apb_target &&)=delete
 
apb_targetoperator= (apb_target const &)=delete
 
apb_targetoperator= (apb_target &&)=delete
 
- Public Member Functions inherited from apb::pe::apb_target_b
 SC_HAS_PROCESS (apb_target_b)
 
void b_transport (payload_type &trans, sc_core::sc_time &t) override
 
tlm::tlm_sync_enum nb_transport_fw (payload_type &trans, phase_type &phase, sc_core::sc_time &t) override
 
bool get_direct_mem_ptr (payload_type &trans, tlm::tlm_dmi &dmi_data) override
 
unsigned int transport_dbg (payload_type &trans) override
 
void set_operation_cb (std::function< unsigned(payload_type &trans)> cb)
 Set the operation callback function. More...
 

Additional Inherited Members

- Public Attributes inherited from apb::pe::apb_target_b
sc_core::sc_in< bool > clk_i {"clk_i"}
 
- Protected Member Functions inherited from apb::pe::apb_target_b
 apb_target_b (const sc_core::sc_module_name &nm, sc_core::sc_port_b< tlm::tlm_bw_transport_if< tlm::tlm_base_protocol_types >> &port, size_t transfer_width)
 
 apb_target_b (apb_target_b const &)=delete
 
 apb_target_b (apb_target_b &&)=delete
 
apb_target_boperator= (apb_target_b const &)=delete
 
apb_target_boperator= (apb_target_b &&)=delete
 
void response ()
 
void end_of_elaboration () override
 
- Protected Attributes inherited from apb::pe::apb_target_b
tlm::tlm_generic_payload * active_tx {nullptr}
 
sc_core::sc_port_b< tlm::tlm_bw_transport_if< tlm::tlm_base_protocol_types > > & socket_bw
 
std::function< unsigned(payload_type &trans)> operation_cb
 
sc_core::sc_clock * clk_if {nullptr}
 
sc_core::sc_process_handle mhndl
 

Detailed Description

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
class apb::pe::apb_target< BUSWIDTH, TYPES, N, POL >

the target socket protocol engine adapted to a particular target socket configuration

Definition at line 94 of file apb_target.h.

Constructor & Destructor Documentation

◆ apb_target()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
apb::pe::apb_target< BUSWIDTH, TYPES, N, POL >::apb_target ( tlm::tlm_target_socket< BUSWIDTH, TYPES, N, POL > &  socket)
inline

the constructor

Parameters
socketreference to the initiator socket used to send and receive transactions

Definition at line 103 of file apb_target.h.


The documentation for this class was generated from the following file: