Go to the documentation of this file.
38 #ifndef __MEM_MEM_CHECKER_MONITOR_HH__
39 #define __MEM_MEM_CHECKER_MONITOR_HH__
43 #include "params/MemCheckerMonitor.hh"
58 using Params = MemCheckerMonitorParams;
236 #endif //__MEM_MEM_CHECKER_MONITOR_HH__
int16_t PortID
Port index/ID type, and a symbolic name for an invalid port id.
MemChecker::Serial serial
MonitorRequestPort memSidePort
Instance of request port, facing the memory side.
void recvReqRetry()
Called by the peer if sendTimingReq was called on this peer (causing recvTimingReq to be called on th...
AddrRangeList getAddrRanges() const
MonitorRequestPort(const std::string &_name, MemCheckerMonitor &_mon)
AddrRangeList getAddrRanges() const
Get a list of the non-overlapping address ranges the owner is responsible for.
bool recvTimingSnoopResp(PacketPtr pkt)
void recvRangeChange()
Called to receive an address range change from the peer response port.
Implements a MemChecker monitor, to be inserted between two ports.
void recvFunctional(PacketPtr pkt)
Receive a functional request packet from the peer.
const PortID InvalidPortID
MonitorResponsePort cpuSidePort
Instance of response port, i.e.
bool recvTimingResp(PacketPtr pkt)
Receive a timing response from the peer.
A RequestPort is a specialisation of a Port, which implements the default protocol for the three diff...
void recvFunctionalSnoop(PacketPtr pkt)
Receive a functional snoop request packet from the peer.
void recvFunctionalSnoop(PacketPtr pkt)
MemCheckerMonitorParams Params
Parameters of memchecker monitor.
This is the response port of the communication monitor.
bool recvTimingReq(PacketPtr pkt)
const Params & params() const
void recvTimingSnoopReq(PacketPtr pkt)
Receive a timing snoop request from the peer.
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
bool isSnooping() const
Determine if this request port is snooping or not.
uint64_t Tick
Tick count type.
void init() override
init() is called after all C++ SimObjects have been created and all ports are connected.
Tick recvAtomicSnoop(PacketPtr pkt)
Receive an atomic snoop request packet from our peer.
void recvRespRetry()
Called by the peer if sendTimingResp was called on this protocol (causing recvTimingResp to be called...
Tick recvAtomicSnoop(PacketPtr pkt)
MemCheckerMonitorSenderState(MemChecker::Serial _serial)
Abstract superclass for simulation objects.
~MemCheckerMonitor()
Destructor.
A virtual base opaque structure used to hold state associated with the packet (e.g....
void recvTimingSnoopReq(PacketPtr pkt)
MonitorResponsePort(const std::string &_name, MemCheckerMonitor &_mon)
void recvFunctional(PacketPtr pkt)
bool recvTimingReq(PacketPtr pkt)
Receive a timing request from the peer.
A ResponsePort is a specialization of a port.
MemCheckerMonitor(const Params ¶ms)
Constructor based on the Python params.
Ports are used to interface objects to each other.
Tick recvAtomic(PacketPtr pkt)
Receive an atomic request packet from the peer.
bool recvTimingSnoopResp(PacketPtr pkt)
Receive a timing snoop response from the peer.
This is the request port of the communication monitor.
Port & getPort(const std::string &if_name, PortID idx=InvalidPortID) override
Get a port with a given name and index.
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
bool recvTimingResp(PacketPtr pkt)
Tick recvAtomic(PacketPtr pkt)
uint64_t Serial
The Serial type is used to be able to uniquely identify a transaction as it passes through the system...
Generated on Sun Jul 30 2023 01:56:58 for gem5 by doxygen 1.8.17