|
gem5
v19.0.0.0
|
#include <gem5_to_tlm.hh>
Classes | |
| class | BridgeSlavePort |
Public Types | |
| typedef Gem5ToTlmBridgeBaseParams | Params |
Protected Attributes | |
| AddrRangeMap< MemBackdoorPtr > | backdoorMap |
Protected Attributes inherited from sc_core::sc_module | |
| sc_sensitive | sensitive |
Private Attributes | |
| BridgeSlavePort | bsp |
| tlm_utils::simple_initiator_socket< Gem5ToTlmBridge< BITWIDTH >, BITWIDTH > | socket |
| sc_gem5::TlmInitiatorWrapper< BITWIDTH > | wrapper |
| System * | system |
| tlm::tlm_generic_payload * | blockingRequest |
| A transaction after BEGIN_REQ has been sent but before END_REQ, which is blocking the request channel (Exlusion Rule, see IEEE1666) More... | |
| bool | needToSendRequestRetry |
| Did another gem5 request arrive while currently blocked? This variable is needed when a retry should happen. More... | |
| tlm::tlm_generic_payload * | blockingResponse |
| A response which has been asked to retry by gem5 and so is blocking the response channel. More... | |
| AddrRangeList | addrRanges |
Definition at line 89 of file gem5_to_tlm.hh.
| typedef Gem5ToTlmBridgeBaseParams sc_gem5::Gem5ToTlmBridge< BITWIDTH >::Params |
Definition at line 195 of file gem5_to_tlm.hh.
| sc_gem5::Gem5ToTlmBridge< BITWIDTH >::Gem5ToTlmBridge | ( | Params * | p, |
| const sc_core::sc_module_name & | mn | ||
| ) |
Definition at line 448 of file gem5_to_tlm.cc.
|
overridevirtual |
Reimplemented from sc_core::sc_module.
Definition at line 473 of file gem5_to_tlm.cc.
References sc_core::sc_module::before_end_of_elaboration(), sc_gem5::Gem5ToTlmBridge< BITWIDTH >::bsp, sc_gem5::Gem5ToTlmBridge< BITWIDTH >::invalidate_direct_mem_ptr(), sc_core::sc_object::name(), sc_gem5::Gem5ToTlmBridge< BITWIDTH >::nb_transport_bw(), SlavePort::sendRangeChange(), and sc_gem5::Gem5ToTlmBridge< BITWIDTH >::socket.
|
override |
Definition at line 461 of file gem5_to_tlm.cc.
References sc_gem5::Gem5ToTlmBridge< BITWIDTH >::bsp, sc_core::sc_module::gem5_getPort(), and sc_gem5::Gem5ToTlmBridge< BITWIDTH >::wrapper.
|
inlineprotected |
Definition at line 183 of file gem5_to_tlm.hh.
References sc_core::sc_module::gem5_getPort(), and ArmISA::t.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::BridgeSlavePort::getAddrRanges().
|
protected |
Definition at line 179 of file gem5_to_tlm.cc.
References tlm::tlm_generic_payload::get_address(), tlm::tlm_generic_payload::get_data_length(), MemBackdoor::NoAccess, MipsISA::r, and MemBackdoor::readable().
|
inline |
Definition at line 199 of file gem5_to_tlm.hh.
References sc_core::sc_module::before_end_of_elaboration().
|
protected |
Definition at line 431 of file gem5_to_tlm.cc.
References MipsISA::r.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::before_end_of_elaboration().
|
protected |
Definition at line 420 of file gem5_to_tlm.cc.
References curTick(), X86ISA::system, tlm::TLM_ACCEPTED, and sc_core::sc_time::value().
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::before_end_of_elaboration().
|
protected |
Definition at line 123 of file gem5_to_tlm.cc.
References tlm::BEGIN_RESP, X86ISA::bsp, tlm::END_REQ, tlm::END_RESP, Gem5SystemC::Gem5Extension::getExtension(), tlm::tlm_generic_payload::release(), sc_assert, and sc_core::SC_ZERO_TIME.
|
protected |
Definition at line 211 of file gem5_to_tlm.cc.
References Packet::cacheResponding(), Packet::makeResponse(), Packet::needsResponse(), sc_gem5::packet2payload(), panic_if, sc_core::SC_ZERO_TIME, tlm::TLM_IGNORE_COMMAND, and sc_core::sc_time::value().
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::BridgeSlavePort::recvAtomic().
|
protected |
Definition at line 236 of file gem5_to_tlm.cc.
References Packet::cacheResponding(), Packet::makeResponse(), Packet::needsResponse(), sc_gem5::packet2payload(), panic_if, sc_core::SC_ZERO_TIME, and tlm::TLM_IGNORE_COMMAND.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::BridgeSlavePort::recvAtomicBackdoor().
|
protected |
Definition at line 403 of file gem5_to_tlm.cc.
References sc_gem5::packet2payload(), and SC_REPORT_FATAL.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::BridgeSlavePort::recvFunctional().
|
protected |
Definition at line 269 of file gem5_to_tlm.cc.
References SC_REPORT_FATAL.
|
protected |
Definition at line 379 of file gem5_to_tlm.cc.
References X86ISA::bsp, tlm::END_RESP, Gem5SystemC::Gem5Extension::getExtension(), Gem5SystemC::Gem5Extension::getPacket(), tlm::tlm_generic_payload::release(), sc_assert, and sc_core::SC_ZERO_TIME.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::BridgeSlavePort::recvRespRetry().
|
protected |
Definition at line 279 of file gem5_to_tlm.cc.
References tlm::BEGIN_REQ, tlm::BEGIN_RESP, Packet::cacheResponding(), curTick(), tlm::END_REQ, tlm::END_RESP, sc_core::sc_time::from_value(), Packet::headerDelay, sc_gem5::packet2payload(), panic_if, Packet::payloadDelay, sc_assert, ArmISA::status, X86ISA::system, tlm::TLM_ACCEPTED, tlm::TLM_COMPLETED, and tlm::TLM_UPDATED.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::BridgeSlavePort::recvTimingReq().
|
protected |
Definition at line 362 of file gem5_to_tlm.cc.
References SC_REPORT_FATAL.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::BridgeSlavePort::recvTimingSnoopResp().
|
protected |
Definition at line 372 of file gem5_to_tlm.cc.
References panic.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::BridgeSlavePort::tryTiming().
|
private |
Definition at line 166 of file gem5_to_tlm.hh.
|
protected |
Definition at line 172 of file gem5_to_tlm.hh.
|
private |
A transaction after BEGIN_REQ has been sent but before END_REQ, which is blocking the request channel (Exlusion Rule, see IEEE1666)
Definition at line 152 of file gem5_to_tlm.hh.
|
private |
A response which has been asked to retry by gem5 and so is blocking the response channel.
Definition at line 164 of file gem5_to_tlm.hh.
|
private |
Definition at line 141 of file gem5_to_tlm.hh.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::before_end_of_elaboration(), and sc_gem5::Gem5ToTlmBridge< BITWIDTH >::gem5_getPort().
|
private |
Did another gem5 request arrive while currently blocked? This variable is needed when a retry should happen.
Definition at line 158 of file gem5_to_tlm.hh.
|
private |
Definition at line 143 of file gem5_to_tlm.hh.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::before_end_of_elaboration().
|
private |
Definition at line 146 of file gem5_to_tlm.hh.
|
private |
Definition at line 144 of file gem5_to_tlm.hh.
Referenced by sc_gem5::Gem5ToTlmBridge< BITWIDTH >::gem5_getPort().