gem5  v22.0.0.2
Public Member Functions | Private Member Functions | Private Attributes | List of all members
gem5::fastmodel::AmbaToTlmBridge64 Class Reference

#include <amba_to_tlm_bridge.hh>

Inheritance diagram for gem5::fastmodel::AmbaToTlmBridge64:

Public Member Functions

 AmbaToTlmBridge64 (const sc_core::sc_module_name &name)
 
gem5::Portgem5_getPort (const std::string &if_name, int idx=-1) override
 

Private Member Functions

void bTransport (amba_pv::amba_pv_transaction &trans, sc_core::sc_time &t)
 
bool getDirectMemPtr (amba_pv::amba_pv_transaction &trans, tlm::tlm_dmi &dmi_data)
 
unsigned int transportDbg (amba_pv::amba_pv_transaction &trans)
 
void invalidateDirectMemPtr (sc_dt::uint64 start_range, sc_dt::uint64 end_range)
 
void maybeSetupAtomicExtension (amba_pv::amba_pv_transaction &trans)
 

Private Attributes

tlm_utils::simple_target_socket< AmbaToTlmBridge64, 64, tlm::tlm_base_protocol_typestargetProxy
 
tlm_utils::simple_initiator_socket< AmbaToTlmBridge64, 64, tlm::tlm_base_protocol_typesinitiatorProxy
 
sc_gem5::TlmInitiatorWrapper< 64 > tlmWrapper
 
AmbaTarget ambaWrapper
 

Detailed Description

Definition at line 47 of file amba_to_tlm_bridge.hh.

Constructor & Destructor Documentation

◆ AmbaToTlmBridge64()

gem5::fastmodel::AmbaToTlmBridge64::AmbaToTlmBridge64 ( const sc_core::sc_module_name name)

Member Function Documentation

◆ bTransport()

void gem5::fastmodel::AmbaToTlmBridge64::bTransport ( amba_pv::amba_pv_transaction &  trans,
sc_core::sc_time t 
)
private

Definition at line 103 of file amba_to_tlm_bridge.cc.

References initiatorProxy, maybeSetupAtomicExtension(), and gem5::VegaISA::t.

Referenced by AmbaToTlmBridge64().

◆ gem5_getPort()

Port & gem5::fastmodel::AmbaToTlmBridge64::gem5_getPort ( const std::string &  if_name,
int  idx = -1 
)
override

Definition at line 92 of file amba_to_tlm_bridge.cc.

References ambaWrapper, and tlmWrapper.

◆ getDirectMemPtr()

bool gem5::fastmodel::AmbaToTlmBridge64::getDirectMemPtr ( amba_pv::amba_pv_transaction &  trans,
tlm::tlm_dmi dmi_data 
)
private

Definition at line 111 of file amba_to_tlm_bridge.cc.

References initiatorProxy.

Referenced by AmbaToTlmBridge64().

◆ invalidateDirectMemPtr()

void gem5::fastmodel::AmbaToTlmBridge64::invalidateDirectMemPtr ( sc_dt::uint64  start_range,
sc_dt::uint64  end_range 
)
private

Definition at line 124 of file amba_to_tlm_bridge.cc.

References targetProxy.

Referenced by AmbaToTlmBridge64().

◆ maybeSetupAtomicExtension()

void gem5::fastmodel::AmbaToTlmBridge64::maybeSetupAtomicExtension ( amba_pv::amba_pv_transaction &  trans)
private

Definition at line 131 of file amba_to_tlm_bridge.cc.

References fa, and fatal_if.

Referenced by bTransport().

◆ transportDbg()

unsigned int gem5::fastmodel::AmbaToTlmBridge64::transportDbg ( amba_pv::amba_pv_transaction &  trans)
private

Definition at line 118 of file amba_to_tlm_bridge.cc.

References initiatorProxy.

Referenced by AmbaToTlmBridge64().

Member Data Documentation

◆ ambaWrapper

AmbaTarget gem5::fastmodel::AmbaToTlmBridge64::ambaWrapper
private

Definition at line 68 of file amba_to_tlm_bridge.hh.

Referenced by gem5_getPort().

◆ initiatorProxy

tlm_utils::simple_initiator_socket< AmbaToTlmBridge64, 64, tlm::tlm_base_protocol_types> gem5::fastmodel::AmbaToTlmBridge64::initiatorProxy
private

Definition at line 66 of file amba_to_tlm_bridge.hh.

Referenced by AmbaToTlmBridge64(), bTransport(), getDirectMemPtr(), and transportDbg().

◆ targetProxy

tlm_utils::simple_target_socket< AmbaToTlmBridge64, 64, tlm::tlm_base_protocol_types> gem5::fastmodel::AmbaToTlmBridge64::targetProxy
private

Definition at line 64 of file amba_to_tlm_bridge.hh.

Referenced by AmbaToTlmBridge64(), and invalidateDirectMemPtr().

◆ tlmWrapper

sc_gem5::TlmInitiatorWrapper<64> gem5::fastmodel::AmbaToTlmBridge64::tlmWrapper
private

Definition at line 67 of file amba_to_tlm_bridge.hh.

Referenced by gem5_getPort().


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

Generated on Thu Jul 28 2022 13:33:29 for gem5 by doxygen 1.8.17