29 #ifndef __MEM_CACHE_PREFETCH_DELTA_CORRELATING_PREDICTION_TABLES_HH_
30 #define __MEM_CACHE_PREFETCH_DELTA_CORRELATING_PREDICTION_TABLES_HH_
39 struct DeltaCorrelatingPredictionTablesParams;
40 struct DCPTPrefetcherParams;
111 const DeltaCorrelatingPredictionTablesParams &
p);
130 DCPT(
const DCPTPrefetcherParams &
p);
Associative container based on the previosuly defined Entry type Each element is indexed by a key of ...
Abstract superclass for simulation objects.
A tagged entry is an entry containing a tag.
Class containing the information needed by the prefetch to train and generate new prefetch requests.
The prefetcher object using the DCPT.
DCPT(const DCPTPrefetcherParams &p)
DeltaCorrelatingPredictionTables & dcpt
DCPT object.
void calculatePrefetch(const PrefetchInfo &pfi, std::vector< AddrPriority > &addresses) override
Delta Correlating Prediction Tables Prefetcher References: Multi-level hardware prefetching using low...
DeltaCorrelatingPredictionTables(const DeltaCorrelatingPredictionTablesParams &p)
AssociativeSet< DCPTEntry > table
The main table.
const unsigned int deltaBits
Number of bits of each delta.
void calculatePrefetch(const Base::PrefetchInfo &pfi, std::vector< Queued::AddrPriority > &addresses)
Computes the prefetch candidates given a prefetch event.
~DeltaCorrelatingPredictionTables()=default
const unsigned int deltaMaskBits
Number of lower bits to ignore from the deltas.
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
GEM5_DEPRECATED_NAMESPACE(GuestABI, guest_abi)
DCPT Table entry datatype.
CircularQueue< Addr > deltas
Stored deltas.
DCPTEntry(unsigned int num_deltas)
Constructor.
void addAddress(Addr address, unsigned int delta_num_bits)
Adds an address to the entry, if the entry already existed, a delta will be generated.
Addr lastAddress
Last accessed address.
void getCandidates(std::vector< Queued::AddrPriority > &pfs, unsigned int mask_bits) const
Attempt to generate prefetch candidates using the two most recent deltas.
void invalidate() override
Invalidate the block.