69 panic(
"SimpleTimingPort should never see packets with the "
70 "cacheResponding flag set\n");
bool trySatisfyFunctional(PacketPtr pkt)
Check the list of buffered packets against the supplied functional request.
A Packet is used to encapsulate a transfer between two objects in the memory system (e....
bool needsResponse() const
bool cacheResponding() const
A queued port is a port that has an infinite queue for outgoing packets and thus decouples the module...
RespPacketQueue & respQueue
Packet queue used to store outgoing responses.
void schedTimingResp(PacketPtr pkt, Tick when)
Schedule the sending of a timing response.
Abstract superclass for simulation objects.
SimpleTimingPort(const std::string &name, SimObject *owner)
Create a new SimpleTimingPort that relies on a packet queue to hold responses, and implements recvTim...
void recvFunctional(PacketPtr pkt)
Implemented using recvAtomic().
std::unique_ptr< Packet > pendingDelete
Upstream caches need this packet until true is returned, so hold it for deletion until a subsequent c...
virtual Tick recvAtomic(PacketPtr pkt)=0
Receive an atomic request packet from the peer.
bool recvTimingReq(PacketPtr pkt)
Implemented using recvAtomic().
#define panic(...)
This implements a cprintf based panic() function.
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
Tick curTick()
The universal simulation clock.
uint64_t Tick
Tick count type.
Declaration of SimpleTimingPort.