scc
2024.06
SystemC components library
|
#include <ahb_target.h>
Public Types | |
using | base = ahb_target_b |
using | payload_type = base::payload_type |
using | phase_type = base::phase_type |
![]() | |
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 | |
ahb3_target (tlm::tlm_target_socket< BUSWIDTH, TYPES, N, POL > &socket) | |
the constructor More... | |
ahb3_target (const sc_core::sc_module_name &nm, tlm::tlm_target_socket< BUSWIDTH, TYPES, N, POL > &socket) | |
ahb3_target (ahb3_target const &)=delete | |
ahb3_target (ahb3_target &&)=delete | |
ahb3_target & | operator= (ahb3_target const &)=delete |
ahb3_target & | operator= (ahb3_target &&)=delete |
![]() | |
SC_HAS_PROCESS (ahb_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... | |
void | operation_resp (payload_type &trans, bool sync=false) |
Additional Inherited Members | |
![]() | |
sc_core::sc_in< bool > | clk_i {"clk_i"} |
sc_core::sc_attribute< unsigned > | wr_data_accept_delay {"wr_data_accept_delay", 0} |
the latency between between BEGIN(_PARTIAL)_REQ and END(_PARTIAL)_REQ (AWVALID to AWREADY and WVALID to WREADY) | |
sc_core::sc_attribute< unsigned > | rd_addr_accept_delay {"rd_addr_accept_delay", 0} |
the latency between between BEGIN_REQ and END_REQ (ARVALID to ARREADY) | |
sc_core::sc_attribute< unsigned > | rd_data_beat_delay {"rd_data_beat_delay", 0} |
the latency between between END(_PARTIAL)_RESP and BEGIN(_PARTIAL)_RESP (RREADY to RVALID) | |
sc_core::sc_attribute< unsigned > | rd_resp_delay {"rd_resp_delay", 0} |
the latency between request and response phase. Will be overwritten by the return of the callback function (if registered) | |
sc_core::sc_attribute< unsigned > | wr_resp_delay {"wr_resp_delay", 0} |
the latency between request and response phase. Will be overwritten by the return of the callback function (if registered) | |
![]() | |
ahb_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) | |
ahb_target_b (ahb_target_b const &)=delete | |
ahb_target_b (ahb_target_b &&)=delete | |
ahb_target_b & | operator= (ahb_target_b const &)=delete |
ahb_target_b & | operator= (ahb_target_b &&)=delete |
void | send_resp_thread () |
void | end_of_elaboration () override |
![]() | |
sc_core::sc_port_b< tlm::tlm_bw_transport_if< tlm::tlm_base_protocol_types > > & | socket_bw |
sc_core::sc_semaphore | sn_sem {1} |
sc_core::sc_mutex | wr |
sc_core::sc_mutex | rd |
sc_core::sc_mutex | sn |
bool | fast_resp {false} |
bool | fast_req {false} |
std::function< unsigned(payload_type &trans)> | operation_cb |
scc::ordered_semaphore | rd_resp {1} |
scc::ordered_semaphore | wr_resp {1} |
sc_core::sc_clock * | clk_if {nullptr} |
the target socket protocol engine adapted to a particular target socket configuration
Definition at line 133 of file ahb_target.h.
|
inline |
the constructor
socket | reference to the initiator socket used to send and receive transactions |
Definition at line 142 of file ahb_target.h.