gem5
|
A queue entry base class, to be used by both the MSHRs and write-queue entries. More...
#include <queue_entry.hh>
Public Member Functions | |
QueueEntry () | |
bool | isUncacheable () const |
virtual bool | sendPacket (Cache &cache)=0 |
Send this queue entry as a downstream packet, with the exact behaviour depending on the specific entry type. More... | |
Public Member Functions inherited from Packet::SenderState | |
SenderState () | |
virtual | ~SenderState () |
Public Attributes | |
bool | inService |
True if the entry has been sent downstream. More... | |
Counter | order |
Order number assigned to disambiguate writes and misses. More... | |
Addr | blkAddr |
Block aligned address. More... | |
unsigned | blkSize |
Block size of the cache. More... | |
bool | isSecure |
True if the entry targets the secure memory space. More... | |
Public Attributes inherited from Packet::SenderState | |
SenderState * | predecessor |
Protected Attributes | |
Tick | readyTime |
Tick when ready to issue. More... | |
bool | _isUncacheable |
True if the entry is uncacheable. More... | |
Friends | |
template<class Entry > | |
class | Queue |
Consider the Queue a friend to avoid making everything public. More... | |
A queue entry base class, to be used by both the MSHRs and write-queue entries.
Definition at line 60 of file queue_entry.hh.
|
inline |
Definition at line 94 of file queue_entry.hh.
|
inline |
Definition at line 99 of file queue_entry.hh.
References _isUncacheable.
Referenced by Cache::recvTimingSnoopReq().
|
pure virtual |
Send this queue entry as a downstream packet, with the exact behaviour depending on the specific entry type.
Implemented in MSHR, and WriteQueueEntry.
Referenced by Cache::CacheReqPacketQueue::sendDeferredPacket().
|
friend |
Consider the Queue a friend to avoid making everything public.
Definition at line 67 of file queue_entry.hh.
|
protected |
True if the entry is uncacheable.
Definition at line 75 of file queue_entry.hh.
Referenced by MSHR::allocate(), MSHR::allocateTarget(), isUncacheable(), and MSHR::print().
Addr QueueEntry::blkAddr |
Block aligned address.
Definition at line 86 of file queue_entry.hh.
Referenced by MSHR::allocate(), MSHR::checkFunctional(), Cache::getNextQueueEntry(), MSHR::print(), Cache::CacheReqPacketQueue::sendDeferredPacket(), and Cache::sendMSHRQueuePacket().
unsigned QueueEntry::blkSize |
Block size of the cache.
Definition at line 89 of file queue_entry.hh.
Referenced by MSHR::allocate(), MSHR::checkFunctional(), MSHR::handleSnoop(), and MSHR::print().
bool QueueEntry::inService |
True if the entry has been sent downstream.
Definition at line 80 of file queue_entry.hh.
Referenced by MSHR::allocate(), MSHR::allocateTarget(), BaseCache::allocateWriteBuffer(), MSHR::deallocate(), Cache::functionalAccess(), MSHR::handleSnoop(), MSHR::hasPostDowngrade(), MSHR::hasPostInvalidate(), MSHR::isPendingModified(), MSHR::markInService(), MSHRQueue::markPending(), MSHRQueue::moveToFront(), and MSHR::print().
bool QueueEntry::isSecure |
True if the entry targets the secure memory space.
Definition at line 92 of file queue_entry.hh.
Referenced by MSHR::allocate(), MSHR::checkFunctional(), Cache::getNextQueueEntry(), MSHR::print(), and Cache::sendMSHRQueuePacket().
Counter QueueEntry::order |
Order number assigned to disambiguate writes and misses.
Definition at line 83 of file queue_entry.hh.
Referenced by MSHR::allocate(), Cache::getNextQueueEntry(), and MSHR::promoteDeferredTargets().
|
protected |
Tick when ready to issue.
Definition at line 72 of file queue_entry.hh.
Referenced by MSHR::allocate(), and MSHR::promoteDeferredTargets().