|
| using | payload_type = chi::chi_protocol_types::tlm_payload_type |
| using | phase_type = chi::chi_protocol_types::tlm_phase_type |
| using | cb_function_t = std::function<void(chi::pe::channel_e, payload_type&)> |
|
| void | b_snoop (payload_type &trans, sc_core::sc_time &t) override |
| | snoop access to a snooped master
|
| tlm::tlm_sync_enum | nb_transport_bw (payload_type &trans, phase_type &phase, sc_core::sc_time &t) override |
| void | invalidate_direct_mem_ptr (sc_dt::uint64 start_range, sc_dt::uint64 end_range) override |
| size_t | get_transferwith_in_bytes () const |
| void | transport (payload_type &trans, bool blocking) override |
| | The forward transport function. It behaves blocking and is re-entrant.
|
| void | snoop_resp (payload_type &trans, bool sync=false) override |
| | triggers a non-blocking snoop response if the snoop callback does not do so.
|
| | chi_rn_initiator_b (sc_core::sc_module_name nm, sc_core::sc_port_b< chi::chi_fw_transport_if< chi_protocol_types > > &port, size_t transfer_width) |
|
| chi_rn_initiator_b (chi_rn_initiator_b const &)=delete |
|
| chi_rn_initiator_b (chi_rn_initiator_b &&)=delete |
|
chi_rn_initiator_b & | operator= (chi_rn_initiator_b const &)=delete |
|
chi_rn_initiator_b & | operator= (chi_rn_initiator_b &&)=delete |
| void | add_protocol_cb (channel_e e, cb_function_t cb) |
Definition at line 43 of file chi_rn_initiator.h.
◆ cb_function_t
| using chi::pe::chi_rn_initiator_b::cb_function_t = std::function<void(chi::pe::channel_e, payload_type&)> |
◆ payload_type
| using chi::pe::chi_rn_initiator_b::payload_type = chi::chi_protocol_types::tlm_payload_type |
◆ phase_type
| using chi::pe::chi_rn_initiator_b::phase_type = chi::chi_protocol_types::tlm_phase_type |
◆ chi_rn_initiator_b()
◆ ~chi_rn_initiator_b()
| chi::pe::chi_rn_initiator_b::~chi_rn_initiator_b |
( |
| ) |
|
|
virtual |
◆ add_protocol_cb()
| void chi::pe::chi_rn_initiator_b::add_protocol_cb |
( |
channel_e | e, |
|
|
cb_function_t | cb ) |
|
inline |
◆ b_snoop()
| void chi::pe::chi_rn_initiator_b::b_snoop |
( |
payload_type & | trans, |
|
|
sc_core::sc_time & | t ) |
|
overridevirtual |
◆ calculate_beats()
| unsigned chi::pe::chi_rn_initiator_b::calculate_beats |
( |
payload_type & | p | ) |
|
|
inlineprotected |
◆ end_of_elaboration()
| void chi::pe::chi_rn_initiator_b::end_of_elaboration |
( |
| ) |
|
|
inlineoverrideprotected |
◆ get_transferwith_in_bytes()
| size_t chi::pe::chi_rn_initiator_b::get_transferwith_in_bytes |
( |
| ) |
const |
|
inline |
◆ grant_credit()
| void chi::pe::chi_rn_initiator_b::grant_credit |
( |
unsigned | amount = 1 | ) |
|
|
protected |
◆ invalidate_direct_mem_ptr()
| void chi::pe::chi_rn_initiator_b::invalidate_direct_mem_ptr |
( |
sc_dt::uint64 | start_range, |
|
|
sc_dt::uint64 | end_range ) |
|
override |
◆ nb_transport_bw()
| tlm::tlm_sync_enum chi::pe::chi_rn_initiator_b::nb_transport_bw |
( |
payload_type & | trans, |
|
|
phase_type & | phase, |
|
|
sc_core::sc_time & | t ) |
|
override |
◆ snoop_dispatch()
| void chi::pe::chi_rn_initiator_b::snoop_dispatch |
( |
| ) |
|
|
protected |
◆ snoop_handler()
| void chi::pe::chi_rn_initiator_b::snoop_handler |
( |
payload_type * | trans | ) |
|
|
protected |
◆ snoop_resp()
| void chi::pe::chi_rn_initiator_b::snoop_resp |
( |
payload_type & | trans, |
|
|
bool | sync = false ) |
|
overridevirtual |
◆ transport()
| void chi::pe::chi_rn_initiator_b::transport |
( |
payload_type & | trans, |
|
|
bool | blocking ) |
|
overridevirtual |
The forward transport function. It behaves blocking and is re-entrant.
This function initiates the forward transport either using b_transport() if blocking=true or the nb_transport_* interface.
- Parameters
-
| trans | the transaction to send |
| blocking | execute in using the blocking interface |
Timing
Implements tlm::scc::pe::intor_fw< type::BL >.
Definition at line 1040 of file chi_rn_initiator.cpp.
◆ active_tx_by_id
◆ any_tx_finished
| sc_core::sc_event chi::pe::chi_rn_initiator_b::any_tx_finished |
|
protected |
◆ bw_o
| sc_core::sc_port<tlm::scc::pe::intor_bw_b, 1, sc_core::SC_ZERO_OR_MORE_BOUND> chi::pe::chi_rn_initiator_b::bw_o {"bw_o"} |
◆ clk_i
| sc_core::sc_in<bool> chi::pe::chi_rn_initiator_b::clk_i {"clk_i"} |
◆ clk_period
| sc_core::sc_time chi::pe::chi_rn_initiator_b::clk_period {10, sc_core::SC_NS} |
|
protected |
◆ data_interleaving
| cci::cci_param<bool> chi::pe::chi_rn_initiator_b::data_interleaving {"data_interleaving", true} |
◆ fw_i
◆ instance_name
| std::string chi::pe::chi_rn_initiator_b::instance_name |
|
protected |
◆ prio_sresp_chnl
◆ prio_wdat_chnl
◆ req_chnl
◆ req_credits
◆ req_order
◆ snp_counter
| scc::sc_variable<unsigned> chi::pe::chi_rn_initiator_b::snp_counter {"SnpInFlight", 0} |
|
protected |
◆ snp_credit_sent
| scc::sc_variable<unsigned> chi::pe::chi_rn_initiator_b::snp_credit_sent {"SnpCreditGranted", 0} |
|
protected |
◆ snp_dispatch_que
| tlm_utils::peq_with_get<payload_type> chi::pe::chi_rn_initiator_b::snp_dispatch_que {"snp_dispatch_que"} |
|
protected |
◆ snp_peq
| tlm_utils::peq_with_get<payload_type> chi::pe::chi_rn_initiator_b::snp_peq {"snp_peq"} |
|
protected |
◆ snp_req_credit_limit
| cci::cci_param<unsigned> chi::pe::chi_rn_initiator_b::snp_req_credit_limit {"snp_req_credit_limit", std::numeric_limits<unsigned>::max()} |
◆ socket_fw
◆ src_id
| cci::cci_param<unsigned> chi::pe::chi_rn_initiator_b::src_id {"src_id", 1} |
◆ sresp_chnl
◆ strict_income_order
| cci::cci_param<bool> chi::pe::chi_rn_initiator_b::strict_income_order {"strict_income_order", false} |
◆ strict_order_sem
◆ tgt_id
| cci::cci_param<unsigned> chi::pe::chi_rn_initiator_b::tgt_id {"tgt_id", 0} |
◆ thread_active
| unsigned chi::pe::chi_rn_initiator_b::thread_active {0} |
|
protected |
◆ thread_avail
| unsigned chi::pe::chi_rn_initiator_b::thread_avail {0} |
|
protected |
◆ transfer_width_in_bytes
| const size_t chi::pe::chi_rn_initiator_b::transfer_width_in_bytes |
|
protected |
◆ tx_state_by_trans
| std::unordered_map<uintptr_t, tx_state*> chi::pe::chi_rn_initiator_b::tx_state_by_trans |
|
protected |
◆ tx_state_pool
| std::vector<tx_state*> chi::pe::chi_rn_initiator_b::tx_state_pool |
|
protected |
◆ use_legacy_mapping
| cci::cci_param<bool> chi::pe::chi_rn_initiator_b::use_legacy_mapping {"use_legacy_mapping", false} |
◆ wdat_chnl
The documentation for this class was generated from the following files: