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__
46 struct IrregularStreamBufferPrefetcherParams;
96 entry.counter.reset();
118 Addr physical_address);
139 #endif//__MEM_CACHE_PREFETCH_IRREGULAR_STREAM_BUFFER_HH__
const unsigned degree
Number of maximum prefetches requests created when predicting.
Copyright (c) 2020 Inria All rights reserved.
Copyright (c) 2018 Metempsy Technology Consulting All rights reserved.
void invalidate() override
Invalidate the block.
AssociativeSet< AddressMappingEntry > spAddressMappingCache
Structured-to-Physical mappings table.
void calculatePrefetch(const PrefetchInfo &pfi, std::vector< AddrPriority > &addresses) override
uint64_t structuralAddressCounter
Counter of allocated structural addresses, increased by "chunkSize", each time a new structured addre...
AssociativeSet< TrainingUnitEntry > trainingUnit
Map of PCs to Training unit entries.
const unsigned prefetchCandidatesPerEntry
Number of prefetch candidates per Physical-to-Structural entry.
AddressMapping & getPSMapping(Addr paddr, bool is_secure)
Obtain the Physical-to-Structured mapping entry of the given physical address.
Copyright (c) 2018 Metempsy Technology Consulting All rights reserved.
Maps a set of contiguous addresses to another set of (not necessarily contiguos) addresses,...
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
Training Unit Entry datatype, it holds the last accessed address and its secure flag.
AddressMappingEntry(size_t num_mappings, unsigned counter_bits)
virtual void invalidate()
Invalidate the block.
void addStructuralToPhysicalEntry(Addr structuralAddress, bool is_secure, Addr physical_address)
Add a mapping to the Structured-to-Physica mapping table.
Class containing the information needed by the prefetch to train and generate new prefetch requests.
Address Mapping entry, holds an address and a confidence counter.
constexpr T bits(T val, unsigned first, unsigned last)
Extract the bitfield from position 'first' to 'last' (inclusive) from 'val' and right justify it.
std::vector< AddressMapping > mappings
IrregularStreamBuffer(const IrregularStreamBufferPrefetcherParams &p)
const size_t chunkSize
Size in bytes of a temporal stream.
~IrregularStreamBuffer()=default
AddressMapping(unsigned bits)
AssociativeSet< AddressMappingEntry > psAddressMappingCache
Physical-to-Structured mappings table.
Generated on Tue Jun 22 2021 15:28:29 for gem5 by doxygen 1.8.17