40 #ifndef __MEM_CACHE_PREFETCH_QUEUED_HH__
41 #define __MEM_CACHE_PREFETCH_QUEUED_HH__
46 #include "params/QueuedPrefetcher.hh"
67 return !(*
this > that);
96 bool is_secure)
const;
128 #endif //__MEM_CACHE_PREFETCH_QUEUED_HH__
const Cycles latency
Cycles after generation when a prefetch can first be issued.
bool operator>(const DeferredPacket &that) const
Cycles is a wrapper class for representing cycle counts, i.e.
const unsigned queueSize
Maximum size of the prefetch queue.
std::list< DeferredPacket >::const_iterator inPrefetch(Addr address, bool is_secure) const
bool operator<(const DeferredPacket &that) const
DeferredPacket(Tick t, PacketPtr p, int32_t pr)
std::list< DeferredPacket >::const_iterator const_iterator
This is a simple scalar statistic, like a counter.
std::list< DeferredPacket >::iterator iterator
Tick nextPrefetchReadyTime() const
Tick notify(const PacketPtr &pkt)
Notify prefetcher of cache access (may be any access or just misses, depending on cache parameters...
uint64_t Tick
Tick count type.
Stats::Scalar pfRemovedFull
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
A Packet is used to encapsulate a transfer between two objects in the memory system (e...
const bool cacheSnoop
Snoop the cache before generating prefetch (cheating basically)
QueuedPrefetcher(const QueuedPrefetcherParams *p)
const bool tagPrefetch
Tag prefetch with PC of generating access?
const bool queueFilter
Filter prefetches if already queued.
const bool queueSquash
Squash queued prefetch if demand access observed.
bool operator<=(const DeferredPacket &that) const
PacketPtr insert(AddrPriority &info, bool is_secure)
virtual void calculatePrefetch(const PacketPtr &pkt, std::vector< AddrPriority > &addresses)=0
virtual ~QueuedPrefetcher()
Miss and writeback queue declarations.
Stats::Scalar pfIdentified
Stats::Scalar pfBufferHit
void regStats()
Register statistics for this object.
std::list< DeferredPacket > pfq