|
gem5 v23.0.0.1
|
Prefetch Table Entry. More...
Public Member Functions | |
| PrefetchTableEntry (unsigned indirect_counter_bits) | |
| void | invalidate () override |
| Invalidate the block. | |
Public Member Functions inherited from gem5::TaggedEntry | |
| TaggedEntry () | |
| ~TaggedEntry ()=default | |
| virtual bool | isValid () const |
| Checks if the entry is valid. | |
| bool | isSecure () const |
| Check if this block holds data from the secure memory space. | |
| virtual Addr | getTag () const |
| Get tag associated to this block. | |
| virtual bool | matchTag (Addr tag, bool is_secure) const |
| Checks if the given tag information corresponds to this entry's. | |
| virtual void | insert (const Addr tag, const bool is_secure) |
| Insert the block by assigning it a tag and marking it valid. | |
| virtual void | invalidate () |
| Invalidate the block. | |
| std::string | print () const override |
| Prints relevant information about this entry. | |
Public Member Functions inherited from gem5::ReplaceableEntry | |
| ReplaceableEntry ()=default | |
| virtual | ~ReplaceableEntry ()=default |
| virtual void | setPosition (const uint32_t set, const uint32_t way) |
| Set both the set and way. | |
| uint32_t | getSet () const |
| Get set number. | |
| uint32_t | getWay () const |
| Get way number. | |
| virtual std::string | print () const |
| Prints relevant information about this entry. | |
Public Attributes | |
| Addr | address |
| Accessed address. | |
| bool | secure |
| Whether this address is in the secure region. | |
| unsigned int | streamCounter |
| Confidence counter of the stream. | |
| bool | enabled |
| Enable bit of the indirect fields. | |
| int64_t | index |
| Current index value. | |
| Addr | baseAddr |
| BaseAddr detected. | |
| int | shift |
| Shift detected. | |
| SatCounter8 | indirectCounter |
| Confidence counter of the indirect fields. | |
| bool | increasedIndirectCounter |
| This variable is set to indicate that there has been at least one match with the current index value. | |
Public Attributes inherited from gem5::ReplaceableEntry | |
| std::shared_ptr< replacement_policy::ReplacementData > | replacementData |
| Replacement data associated to this entry. | |
Additional Inherited Members | |
Protected Member Functions inherited from gem5::TaggedEntry | |
| virtual void | setTag (Addr tag) |
| Set tag associated to this block. | |
| virtual void | setSecure () |
| Set secure bit. | |
| virtual void | setValid () |
| Set valid bit. | |
Protected Attributes inherited from gem5::ReplaceableEntry | |
| uint32_t | _set |
| Set to which this entry belongs. | |
| uint32_t | _way |
| Way (relative position within the set) to which this entry belongs. | |
Prefetch Table Entry.
Definition at line 70 of file indirect_memory.hh.
|
inline |
Definition at line 101 of file indirect_memory.hh.
|
inlineoverridevirtual |
Invalidate the block.
Its contents are no longer valid.
Reimplemented from gem5::TaggedEntry.
Definition at line 109 of file indirect_memory.hh.
References address, baseAddr, enabled, increasedIndirectCounter, index, indirectCounter, gem5::TaggedEntry::invalidate(), gem5::GenericSatCounter< T >::reset(), secure, shift, and streamCounter.
| Addr gem5::prefetch::IndirectMemory::PrefetchTableEntry::address |
Accessed address.
Definition at line 75 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), and invalidate().
| Addr gem5::prefetch::IndirectMemory::PrefetchTableEntry::baseAddr |
BaseAddr detected.
Definition at line 88 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), invalidate(), and gem5::prefetch::IndirectMemory::trackMissIndex2().
| bool gem5::prefetch::IndirectMemory::PrefetchTableEntry::enabled |
Enable bit of the indirect fields.
Definition at line 84 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), invalidate(), and gem5::prefetch::IndirectMemory::trackMissIndex2().
| bool gem5::prefetch::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 99 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), and invalidate().
| int64_t gem5::prefetch::IndirectMemory::PrefetchTableEntry::index |
Current index value.
Definition at line 86 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), and invalidate().
| SatCounter8 gem5::prefetch::IndirectMemory::PrefetchTableEntry::indirectCounter |
Confidence counter of the indirect fields.
Definition at line 92 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), invalidate(), and gem5::prefetch::IndirectMemory::trackMissIndex2().
| bool gem5::prefetch::IndirectMemory::PrefetchTableEntry::secure |
Whether this address is in the secure region.
Definition at line 77 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), and invalidate().
| int gem5::prefetch::IndirectMemory::PrefetchTableEntry::shift |
Shift detected.
Definition at line 90 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), invalidate(), and gem5::prefetch::IndirectMemory::trackMissIndex2().
| unsigned int gem5::prefetch::IndirectMemory::PrefetchTableEntry::streamCounter |
Confidence counter of the stream.
Definition at line 79 of file indirect_memory.hh.
Referenced by gem5::prefetch::IndirectMemory::calculatePrefetch(), and invalidate().