gem5 v24.0.0.0
|
#include <multi_passthrough_target_socket.h>
Static Public Member Functions | |
static const char * | default_name () |
Protected Attributes | |
std::map< unsigned int, tlm::tlm_bw_transport_if< TYPES > * > | m_multi_binds |
std::vector< tlm::tlm_bw_transport_if< TYPES > * > | m_sockets |
std::vector< callback_binder_fw< TYPES > * > | m_binders |
base_type * | m_hierarch_bind |
bool | m_eoe_disabled |
bool | m_export_callback_created |
callback_binder_fw< TYPES >::nb_func_type | m_nb_f |
callback_binder_fw< TYPES >::b_func_type | m_b_f |
callback_binder_fw< TYPES >::debug_func_type | m_dbg_f |
callback_binder_fw< TYPES >::dmi_func_type | m_dmi_f |
Protected Attributes inherited from tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< tlm::tlm_base_protocol_types >, tlm_bw_transport_if< tlm::tlm_base_protocol_types >, N, POL > | |
port_type | m_port |
Definition at line 43 of file multi_passthrough_target_socket.h.
typedef void(MODULE::* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::b_cb) (int, transaction_type &, sc_core::sc_time &) |
Definition at line 57 of file multi_passthrough_target_socket.h.
typedef base_type::base_initiator_socket_type tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::base_initiator_socket_type |
Definition at line 65 of file multi_passthrough_target_socket.h.
typedef multi_target_base<BUSWIDTH, TYPES, N, POL> tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::base_type |
Definition at line 62 of file multi_passthrough_target_socket.h.
typedef unsigned int(MODULE::* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::dbg_cb) (int, transaction_type &txn) |
Definition at line 58 of file multi_passthrough_target_socket.h.
typedef bool(MODULE::* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::dmi_cb) (int, transaction_type &txn, tlm::tlm_dmi &dmi) |
Definition at line 59 of file multi_passthrough_target_socket.h.
typedef sync_enum_type(MODULE::* tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::nb_cb) (int, transaction_type &, phase_type &, sc_core::sc_time &) |
Definition at line 55 of file multi_passthrough_target_socket.h.
typedef TYPES::tlm_phase_type tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::phase_type |
Definition at line 51 of file multi_passthrough_target_socket.h.
typedef tlm::tlm_sync_enum tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::sync_enum_type |
Definition at line 52 of file multi_passthrough_target_socket.h.
typedef TYPES::tlm_payload_type tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::transaction_type |
Definition at line 50 of file multi_passthrough_target_socket.h.
|
inlineexplicit |
Definition at line 73 of file multi_passthrough_target_socket.h.
|
inline |
Definition at line 78 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_binders.
|
inlinevirtual |
Definition at line 277 of file multi_passthrough_target_socket.h.
References sc_core::sc_export< tlm_fw_transport_if< tlm::tlm_base_protocol_types > >::bind(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::disable_cb_bind(), tlm_utils::convenience_socket_base::display_warning(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_eoe_disabled.
Referenced by tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::check_export_binding(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::operator()().
|
inline |
Definition at line 86 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::bind(), sc_core::sc_export< tlm_fw_transport_if< tlm::tlm_base_protocol_types > >::get_interface(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_binders, and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_export_callback_created.
Referenced by tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::register_b_transport(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::register_get_direct_mem_ptr(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::register_nb_transport_fw(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::register_transport_dbg().
|
inlinestatic |
Definition at line 68 of file multi_passthrough_target_socket.h.
References sc_core::sc_gen_unique_name().
|
inlineprotected |
Definition at line 339 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_eoe_disabled.
Referenced by tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::bind().
|
inlinevirtual |
Implements sc_core::sc_export_base.
Definition at line 227 of file multi_passthrough_target_socket.h.
References tlm_utils::convenience_socket_base::display_error(), tlm_utils::multi_target_base_if< TYPES >::get_binders(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_hierarch_bind(), tlm_utils::multi_target_base_if< TYPES >::get_multi_binds(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_b_f, tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dbg_f, tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dmi_f, tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_eoe_disabled, tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_export_callback_created, tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_hierarch_bind, tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_nb_f, and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_sockets.
|
inlinevirtual |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< tlm::tlm_base_protocol_types >, tlm_bw_transport_if< tlm::tlm_base_protocol_types >, N, POL >.
Definition at line 212 of file multi_passthrough_target_socket.h.
|
inlinevirtual |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< tlm::tlm_base_protocol_types >, tlm_bw_transport_if< tlm::tlm_base_protocol_types >, N, POL >.
Definition at line 220 of file multi_passthrough_target_socket.h.
|
inlinevirtual |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< tlm::tlm_base_protocol_types >, tlm_bw_transport_if< tlm::tlm_base_protocol_types >, N, POL >.
Definition at line 183 of file multi_passthrough_target_socket.h.
References tlm_utils::convenience_socket_base::display_error(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_binders, tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_export_callback_created, and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_hierarch_bind.
|
inlinevirtual |
Reimplemented from tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< tlm::tlm_base_protocol_types >, tlm_bw_transport_if< tlm::tlm_base_protocol_types >, N, POL >.
Definition at line 202 of file multi_passthrough_target_socket.h.
References tlm_utils::convenience_socket_base::display_error(), and tlm::tlm_base_target_socket_b< BUSWIDTH, tlm_fw_transport_if< tlm::tlm_base_protocol_types >, tlm_bw_transport_if< tlm::tlm_base_protocol_types > >::get_base_interface().
|
inlineprotectedvirtual |
Implements tlm_utils::multi_target_base_if< tlm::tlm_base_protocol_types >.
Definition at line 341 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_binders.
|
inlineprotectedvirtual |
Implements tlm_utils::multi_target_base< 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ONE_OR_MORE_BOUND >.
Definition at line 315 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_target_base< BUSWIDTH, TYPES, N, POL >::get_hierarch_bind(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_hierarch_bind.
Referenced by tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::end_of_elaboration(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::size().
|
inlineprotected |
|
inlineprotectedvirtual |
Implements tlm_utils::multi_target_base_if< tlm::tlm_base_protocol_types >.
Definition at line 323 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_multi_binds.
|
inline |
Definition at line 296 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::bind().
|
inline |
Definition at line 300 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_sockets.
|
inline |
Definition at line 130 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::check_export_binding(), tlm_utils::convenience_socket_base::display_warning(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_b_f.
Referenced by MultiSocketSimpleSwitchAT::MultiSocketSimpleSwitchAT().
|
inline |
Definition at line 162 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::check_export_binding(), tlm_utils::convenience_socket_base::display_warning(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dmi_f.
|
inline |
Definition at line 114 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::check_export_binding(), tlm_utils::convenience_socket_base::display_warning(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_nb_f.
Referenced by MultiSocketSimpleSwitchAT::MultiSocketSimpleSwitchAT().
|
inline |
Definition at line 146 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::check_export_binding(), tlm_utils::convenience_socket_base::display_warning(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::m_dbg_f.
|
inlineprotectedvirtual |
|
inline |
Definition at line 307 of file multi_passthrough_target_socket.h.
References tlm_utils::multi_target_base_if< TYPES >::get_binders(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_hierarch_bind().
Referenced by MultiSocketSimpleSwitchAT::dump_status(), and MultiSocketSimpleSwitchAT::start_of_simulation().
|
protected |
|
protected |
Definition at line 349 of file multi_passthrough_target_socket.h.
Referenced by tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::check_export_binding(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_base_interface(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_binders(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_last_binder(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::~multi_passthrough_target_socket().
|
protected |
|
protected |
|
protected |
Definition at line 353 of file multi_passthrough_target_socket.h.
Referenced by tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::bind(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::disable_cb_bind(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::end_of_elaboration().
|
protected |
Definition at line 356 of file multi_passthrough_target_socket.h.
Referenced by tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::check_export_binding(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::end_of_elaboration(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_base_interface().
|
protected |
Definition at line 351 of file multi_passthrough_target_socket.h.
Referenced by tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::end_of_elaboration(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_base_interface(), tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::get_hierarch_bind(), and tlm_utils::multi_passthrough_target_socket< MODULE, BUSWIDTH, TYPES, N, POL >::set_hierarch_bind().
|
protected |
|
protected |
|
protected |