Go to the documentation of this file.
38 #ifndef __MEM_CACHE_PREFETCH_IRREGULAR_STREAM_BUFFER_HH__
39 #define __MEM_CACHE_PREFETCH_IRREGULAR_STREAM_BUFFER_HH__
49 struct IrregularStreamBufferPrefetcherParams;
102 entry.counter.reset();
124 Addr physical_address);
146 #endif//__MEM_CACHE_PREFETCH_IRREGULAR_STREAM_BUFFER_HH__
AddressMapping(unsigned bits)
AddressMapping & getPSMapping(Addr paddr, bool is_secure)
Obtain the Physical-to-Structured mapping entry of the given physical address.
Maps a set of contiguous addresses to another set of (not necessarily contiguos) addresses,...
void calculatePrefetch(const PrefetchInfo &pfi, std::vector< AddrPriority > &addresses) override
Training Unit Entry datatype, it holds the last accessed address and its secure flag.
~IrregularStreamBuffer()=default
AddressMappingEntry(size_t num_mappings, unsigned counter_bits)
const unsigned prefetchCandidatesPerEntry
Number of prefetch candidates per Physical-to-Structural entry.
AssociativeSet< TrainingUnitEntry > trainingUnit
Map of PCs to Training unit entries.
A tagged entry is an entry containing a tag.
void addStructuralToPhysicalEntry(Addr structuralAddress, bool is_secure, Addr physical_address)
Add a mapping to the Structured-to-Physica mapping table.
Associative container based on the previosuly defined Entry type Each element is indexed by a key of ...
IrregularStreamBuffer(const IrregularStreamBufferPrefetcherParams &p)
const size_t chunkSize
Size in bytes of a temporal stream.
const unsigned degree
Number of maximum prefetches requests created when predicting.
constexpr T bits(T val, unsigned first, unsigned last)
Extract the bitfield from position 'first' to 'last' (inclusive) from 'val' and right justify it.
virtual void invalidate()
Invalidate the block.
AssociativeSet< AddressMappingEntry > spAddressMappingCache
Structured-to-Physical mappings table.
uint64_t structuralAddressCounter
Counter of allocated structural addresses, increased by "chunkSize", each time a new structured addre...
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
AssociativeSet< AddressMappingEntry > psAddressMappingCache
Physical-to-Structured mappings table.
std::vector< AddressMapping > mappings
Address Mapping entry, holds an address and a confidence counter.
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
void invalidate() override
Invalidate the block.
Class containing the information needed by the prefetch to train and generate new prefetch requests.
Generated on Sun Jul 30 2023 01:56:57 for gem5 by doxygen 1.8.17