|  | 
|  | SC_HAS_PROCESS (ace_lite_target) | 
|  | 
|  | ace_lite_target (sc_core::sc_module_name const &nm) | 
|  | 
|  | aw_ace (const char *prefix) | 
|  | 
| template<typename OTYPES > | 
| void | bind_aw (aw_ace< CFG, OTYPES > &o) | 
|  | 
|  | wdata_axi (const char *prefix) | 
|  | 
| template<typename OTYPES > | 
| void | bind_w (wdata_axi< CFG, OTYPES > &o) | 
|  | 
| template<typename OTYPES > | 
| void | bind_wdata (wdata_axi< CFG, OTYPES > &o) | 
|  | 
| template<typename OTYPES > | 
| void | bind_w (wdata_axi_lite< CFG, OTYPES > &o) | 
|  | 
| template<typename OTYPES > | 
| void | bind_wdata (wdata_axi_lite< CFG, OTYPES > &o) | 
|  | 
|  | b_axi (const char *prefix) | 
|  | 
| template<typename OTYPES > | 
| void | bind_b (b_axi< CFG, OTYPES > &o) | 
|  | 
| template<typename OTYPES > | 
| void | bind_b (b_axi_lite< CFG, OTYPES > &o) | 
|  | 
|  | ar_ace (const char *prefix) | 
|  | 
| template<typename OTYPES > | 
| void | bind_ar (ar_ace< CFG, OTYPES > &o) | 
|  | 
|  | rresp_axi (const char *prefix) | 
|  | 
| template<typename OTYPES > | 
| void | bind_r (rresp_axi< CFG, OTYPES > &o) | 
|  | 
| template<typename OTYPES > | 
| void | bind_rresp (rresp_axi< CFG, OTYPES > &o) | 
|  | 
| template<typename OTYPES > | 
| void | bind_r (rresp_axi_lite< CFG, OTYPES > &o) | 
|  | 
| template<typename OTYPES > | 
| void | bind_rresp (rresp_axi_lite< CFG, OTYPES > &o) | 
|  | 
|  | 
| sc_core::sc_in< bool > | clk_i {"clk_i"} | 
|  | 
| axi::axi_initiator_socket< CFG::BUSWIDTH > | isckt {"isckt"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< CFG::IDWIDTH > > | aw_id {"aw_id"} | 
|  | 
| TYPES::template m2s_t< sc_dt::sc_uint< CFG::ADDRWIDTH > > | aw_addr {"aw_addr"} | 
|  | 
| TYPES::template s2m_t< bool > | aw_ready {"aw_ready"} | 
|  | 
| TYPES::template m2s_t< bool > | aw_lock {"aw_lock"} | 
|  | 
| TYPES::template m2s_t< bool > | aw_valid {"aw_valid"} | 
|  | 
| TYPES::template m2s_t< sc_dt::sc_uint< 3 > > | aw_prot {"aw_prot"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 3 > > | aw_size {"aw_size"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 4 > > | aw_cache {"aw_cache"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 2 > > | aw_burst {"aw_burst"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 4 > > | aw_qos {"aw_qos"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 4 > > | aw_region {"aw_region"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 8 > > | aw_len {"aw_len"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 2 > > | aw_domain {"aw_domain"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< CFG::AWSNOOPWIDTH > > | aw_snoop {"aw_snoop"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 2 > > | aw_bar {"aw_bar"} | 
|  | 
| TYPES::template m2s_t< bool > | aw_unique {"aw_unique"} | 
|  | 
| TYPES::template m2s_full_t< typename CFG::user_t > | aw_user {"aw_user"} | 
|  | 
| TYPES::template m2s_t< bool > | aw_stashniden {"aw_stashniden"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 11 > > | aw_stashnid {"aw_stashnid"} | 
|  | 
| TYPES::template m2s_t< bool > | aw_stashlpiden {"aw_stashlpiden"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 5 > > | aw_stashlpid {"aw_stashlpid"} | 
|  | 
| TYPES::template m2s_opt_t< sc_dt::sc_uint< 6 > > | aw_atop {"aw_atop"} | 
|  | 
| TYPES::template m2s_opt_t< bool > | aw_trace {"aw_trace"} | 
|  | 
| TYPES::template m2s_opt_t< sc_dt::sc_uint< CFG::IDWIDTH > > | w_id {"w_id"} | 
|  | 
| TYPES::template m2s_t< typename CFG::data_t > | w_data {"w_data"} | 
|  | 
| TYPES::template m2s_t< typename CFG::strb_t > | w_strb {"w_strb"} | 
|  | 
| TYPES::template m2s_full_t< bool > | w_last {"w_last"} | 
|  | 
| TYPES::template m2s_t< bool > | w_valid {"w_valid"} | 
|  | 
| TYPES::template s2m_t< bool > | w_ready {"w_ready"} | 
|  | 
| TYPES::template m2s_opt_t< typename CFG::user_t > | w_user {"w_user"} | 
|  | 
| TYPES::template m2s_full_t< bool > | w_ack {"w_ack"} | 
|  | 
| TYPES::template m2s_opt_t< bool > | w_trace {"w_trace"} | 
|  | 
| TYPES::template s2m_t< bool > | b_valid {"b_valid"} | 
|  | 
| TYPES::template m2s_t< bool > | b_ready {"b_ready"} | 
|  | 
| TYPES::template s2m_full_t< sc_dt::sc_uint< CFG::IDWIDTH > > | b_id {"b_id"} | 
|  | 
| TYPES::template s2m_t< sc_dt::sc_uint< 2 > > | b_resp {"b_resp"} | 
|  | 
| TYPES::template s2m_opt_t< typename CFG::user_t > | b_user {"b_user"} | 
|  | 
| TYPES::template s2m_opt_t< bool > | b_trace {"b_trace"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< CFG::IDWIDTH > > | ar_id {"ar_id"} | 
|  | 
| TYPES::template m2s_t< sc_dt::sc_uint< CFG::ADDRWIDTH > > | ar_addr {"ar_addr"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 8 > > | ar_len {"ar_len"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 3 > > | ar_size {"ar_size"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 2 > > | ar_burst {"ar_burst"} | 
|  | 
| TYPES::template m2s_t< bool > | ar_lock {"ar_lock"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 4 > > | ar_cache {"ar_cache"} | 
|  | 
| TYPES::template m2s_t< sc_dt::sc_uint< 3 > > | ar_prot {"ar_prot"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 4 > > | ar_qos {"ar_qos"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 4 > > | ar_region {"ar_region"} | 
|  | 
| TYPES::template m2s_t< bool > | ar_valid {"ar_valid"} | 
|  | 
| TYPES::template s2m_t< bool > | ar_ready {"ar_ready"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 2 > > | ar_domain {"ar_domain"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 4 > > | ar_snoop {"ar_snoop"} | 
|  | 
| TYPES::template m2s_full_t< sc_dt::sc_uint< 2 > > | ar_bar {"ar_bar"} | 
|  | 
| TYPES::template m2s_opt_t< typename CFG::user_t > | ar_user {"ar_user"} | 
|  | 
| TYPES::template m2s_opt_t< bool > | ar_trace {"ar_trace"} | 
|  | 
| TYPES::template m2s_opt_t< sc_dt::sc_uint< 4 > > | ar_vmidext {"ar_vmidext"} | 
|  | 
| TYPES::template s2m_full_t< sc_dt::sc_uint< CFG::IDWIDTH > > | r_id {"r_id"} | 
|  | 
| TYPES::template s2m_t< typename CFG::data_t > | r_data {"r_data"} | 
|  | 
| TYPES::template s2m_t< sc_dt::sc_uint< 2 > > | r_resp {"r_resp"} | 
|  | 
| TYPES::template s2m_full_t< bool > | r_last {"r_last"} | 
|  | 
| TYPES::template s2m_t< bool > | r_valid {"r_valid"} | 
|  | 
| TYPES::template m2s_t< bool > | r_ready {"r_ready"} | 
|  | 
| TYPES::template s2m_opt_t< typename CFG::user_t > | r_user {"r_user"} | 
|  | 
| TYPES::template s2m_opt_t< bool > | r_trace {"r_trace"} | 
|  | 
|  | 
| using | payload_type = axi::axi_protocol_types::tlm_payload_type | 
|  | aliases used in the class 
 | 
|  | 
| using | phase_type = axi::axi_protocol_types::tlm_phase_type | 
|  | 
|  | base (size_t transfer_width, bool coherent=false, axi::fsm::protocol_time_point_e wr_start=axi::fsm::RequestPhaseBeg) | 
|  | the constructor  More... 
 | 
|  | 
| virtual | ~base () | 
|  | the destructor 
 | 
|  | 
| tlm::tlm_sync_enum | nb_fw (payload_type &trans, phase_type const &phase, sc_core::sc_time &t) | 
|  | triggers the FSM based on TLM phases in the forward path. Should be called from np_transport_fw of the respective derived class  More... 
 | 
|  | 
| tlm::tlm_sync_enum | nb_bw (payload_type &trans, phase_type const &phase, sc_core::sc_time &t) | 
|  | triggers the FSM based on TLM phases in the backward path. Should be called from np_transport_bw of the respective derived class  More... 
 | 
|  | 
| axi::fsm::fsm_handle * | find_or_create (payload_type *gp=nullptr, bool ace=false) | 
|  | retrieve the FSM handle based on the transaction passed. If non exist one will be created  More... 
 | 
|  | 
| void | process_fsm_event () | 
|  | processes the fsm_event_queue and triggers FSM aligned 
 | 
|  | 
| void | process_fsm_clk_queue () | 
|  | processes the fsm_clk_queue and triggers the FSM accordingly. Should be registered as rising-edge clock callback 
 | 
|  | 
| void | schedule (axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, unsigned cycles) | 
|  | processes the fsm_sched_queue and propagates events to fsm_clk_queue. Should be registered as falling-edge clock callback 
 | 
|  | 
| void | schedule (axi::fsm::protocol_time_point_e e, payload_type *gp, unsigned cycles) | 
|  | 
| void | schedule (axi::fsm::protocol_time_point_e e, tlm::scc::tlm_gp_shared_ptr &gp, sc_core::sc_time delay, bool syncronize=false) | 
|  | processes the fsm_sched_queue and propagates events to fsm_clk_queue. Should be registered as falling-edge clock callback 
 | 
|  | 
| void | schedule (axi::fsm::protocol_time_point_e e, payload_type *gp, sc_core::sc_time delay, bool syncronize=false) | 
|  | 
| void | react (axi::fsm::protocol_time_point_e event, tlm::scc::tlm_gp_shared_ptr &trans) | 
|  | triggers the FSM with event and given transaction  More... 
 | 
|  | 
| void | react (axi::fsm::protocol_time_point_e event, payload_type *trans) | 
|  | 
| void | react (axi::fsm::protocol_time_point_e, axi::fsm::fsm_handle *) | 
|  | 
| ::scc::peq< std::tuple< axi::fsm::protocol_time_point_e, payload_type *, bool > > | fsm_event_queue | 
|  | 
| ::scc::fifo_w_cb< std::tuple< axi::fsm::protocol_time_point_e, payload_type *, unsigned > > | fsm_clk_queue | 
|  | 
| sc_core::sc_process_handle | fsm_clk_queue_hndl | 
|  | 
| size_t | transfer_width_in_bytes | 
|  | 
| const axi::fsm::protocol_time_point_e | wr_start | 
|  | 
| const bool | coherent | 
|  | 
| std::unordered_map< payload_type *, axi::fsm::fsm_handle * > | active_fsm | 
|  | 
| std::deque< axi::fsm::fsm_handle * > | idle_fsm | 
|  | 
| std::vector< std::unique_ptr< axi::fsm::fsm_handle > > | allocated_fsm | 
|  | 
| std::string | instance_name | 
|  | 
| sc_core::sc_event | finish_evt | 
|  | 
template<typename CFG>
struct axi::pin::ace_lite_target< CFG >
Definition at line 36 of file ace_lite_target.h.