gem5
v20.1.0.0
|
Prefetch Table Entry. More...
Public Member Functions | |
PrefetchTableEntry (unsigned indirect_counter_bits) | |
void | invalidate () override |
Invalidates the entry. More... | |
Public Member Functions inherited from TaggedEntry | |
TaggedEntry () | |
virtual | ~TaggedEntry () |
bool | isValid () const |
Consult the valid bit. More... | |
void | setValid () |
Sets the entry to valid. More... | |
Addr | getTag () const |
Obtain the entry tag. More... | |
void | setTag (Addr t) |
Sets the tag of the entry. More... | |
bool | isSecure () const |
Consult if this entry refers to a memory in the secure area. More... | |
void | setSecure (bool s) |
Sets the secure value bit. More... | |
Public Member Functions inherited from ReplaceableEntry | |
ReplaceableEntry ()=default | |
virtual | ~ReplaceableEntry ()=default |
virtual void | setPosition (const uint32_t set, const uint32_t way) |
Set both the set and way. More... | |
uint32_t | getSet () const |
Get set number. More... | |
uint32_t | getWay () const |
Get way number. More... | |
virtual std::string | print () const |
Prints relevant information about this entry. More... | |
Public Attributes | |
Addr | address |
Accessed address. More... | |
bool | secure |
Whether this address is in the secure region. More... | |
unsigned int | streamCounter |
Confidence counter of the stream. More... | |
bool | enabled |
Enable bit of the indirect fields. More... | |
int64_t | index |
Current index value. More... | |
Addr | baseAddr |
BaseAddr detected. More... | |
int | shift |
Shift detected. More... | |
SatCounter | indirectCounter |
Confidence counter of the indirect fields. More... | |
bool | increasedIndirectCounter |
This variable is set to indicate that there has been at least one match with the current index value. More... | |
Public Attributes inherited from ReplaceableEntry | |
std::shared_ptr< ReplacementData > | replacementData |
Replacement data associated to this entry. More... | |
Additional Inherited Members | |
Protected Attributes inherited from ReplaceableEntry | |
uint32_t | _set |
Set to which this entry belongs. More... | |
uint32_t | _way |
Way (relative position within the set) to which this entry belongs. More... | |
Prefetch Table Entry.
Definition at line 66 of file indirect_memory.hh.
|
inline |
Definition at line 97 of file indirect_memory.hh.
|
inlineoverridevirtual |
Invalidates the entry.
Reimplemented from TaggedEntry.
Definition at line 105 of file indirect_memory.hh.
References address, baseAddr, enabled, increasedIndirectCounter, index, indirectCounter, TaggedEntry::invalidate(), SatCounter::reset(), secure, shift, and streamCounter.
Addr Prefetcher::IndirectMemory::PrefetchTableEntry::address |
Accessed address.
Definition at line 71 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), and invalidate().
Addr Prefetcher::IndirectMemory::PrefetchTableEntry::baseAddr |
BaseAddr detected.
Definition at line 84 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), invalidate(), and Prefetcher::IndirectMemory::trackMissIndex2().
bool Prefetcher::IndirectMemory::PrefetchTableEntry::enabled |
Enable bit of the indirect fields.
Definition at line 80 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), invalidate(), and Prefetcher::IndirectMemory::trackMissIndex2().
bool Prefetcher::IndirectMemory::PrefetchTableEntry::increasedIndirectCounter |
This variable is set to indicate that there has been at least one match with the current index value.
This information is later used when a new index is updated. If there were no increases in the indirectCounter, the counter is decremented.
Definition at line 95 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), and invalidate().
int64_t Prefetcher::IndirectMemory::PrefetchTableEntry::index |
Current index value.
Definition at line 82 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), and invalidate().
SatCounter Prefetcher::IndirectMemory::PrefetchTableEntry::indirectCounter |
Confidence counter of the indirect fields.
Definition at line 88 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), invalidate(), and Prefetcher::IndirectMemory::trackMissIndex2().
bool Prefetcher::IndirectMemory::PrefetchTableEntry::secure |
Whether this address is in the secure region.
Definition at line 73 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), and invalidate().
int Prefetcher::IndirectMemory::PrefetchTableEntry::shift |
Shift detected.
Definition at line 86 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), invalidate(), and Prefetcher::IndirectMemory::trackMissIndex2().
unsigned int Prefetcher::IndirectMemory::PrefetchTableEntry::streamCounter |
Confidence counter of the stream.
Definition at line 75 of file indirect_memory.hh.
Referenced by Prefetcher::IndirectMemory::calculatePrefetch(), and invalidate().