|
gem5
v22.1.0.0
|
DCPT Table entry datatype. More...
Public Member Functions | |
| DCPTEntry (unsigned int num_deltas) | |
| Constructor. More... | |
| void | invalidate () override |
| Invalidate the block. More... | |
| 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. More... | |
| void | getCandidates (std::vector< Queued::AddrPriority > &pfs, unsigned int mask_bits) const |
| Attempt to generate prefetch candidates using the two most recent deltas. More... | |
Public Member Functions inherited from gem5::TaggedEntry | |
| TaggedEntry () | |
| ~TaggedEntry ()=default | |
| virtual bool | isValid () const |
| Checks if the entry is valid. More... | |
| bool | isSecure () const |
| Check if this block holds data from the secure memory space. More... | |
| virtual Addr | getTag () const |
| Get tag associated to this block. More... | |
| virtual bool | matchTag (Addr tag, bool is_secure) const |
| Checks if the given tag information corresponds to this entry's. More... | |
| virtual void | insert (const Addr tag, const bool is_secure) |
| Insert the block by assigning it a tag and marking it valid. More... | |
| std::string | print () const override |
| Prints relevant information about this entry. More... | |
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. More... | |
| uint32_t | getSet () const |
| Get set number. More... | |
| uint32_t | getWay () const |
| Get way number. More... | |
Public Attributes | |
| Addr | lastAddress |
| Last accessed address. More... | |
| CircularQueue< Addr > | deltas |
| Stored deltas. More... | |
Public Attributes inherited from gem5::ReplaceableEntry | |
| std::shared_ptr< replacement_policy::ReplacementData > | replacementData |
| Replacement data associated to this entry. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from gem5::TaggedEntry | |
| virtual void | setTag (Addr tag) |
| Set tag associated to this block. More... | |
| virtual void | setSecure () |
| Set secure bit. More... | |
| virtual void | setValid () |
| Set valid bit. More... | |
Protected Attributes inherited from gem5::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... | |
DCPT Table entry datatype.
Definition at line 69 of file delta_correlating_prediction_tables.hh.
|
inline |
Constructor.
| num_deltas | number of deltas stored in the entry |
Definition at line 80 of file delta_correlating_prediction_tables.hh.
| void gem5::prefetch::DeltaCorrelatingPredictionTables::DCPTEntry::addAddress | ( | Addr | address, |
| unsigned int | delta_num_bits | ||
| ) |
Adds an address to the entry, if the entry already existed, a delta will be generated.
| address | address to add |
| delta_num_bits | number of bits of the delta |
Definition at line 64 of file delta_correlating_prediction_tables.cc.
Referenced by gem5::prefetch::DeltaCorrelatingPredictionTables::calculatePrefetch().
| void gem5::prefetch::DeltaCorrelatingPredictionTables::DCPTEntry::getCandidates | ( | std::vector< Queued::AddrPriority > & | pfs, |
| unsigned int | mask_bits | ||
| ) | const |
Attempt to generate prefetch candidates using the two most recent deltas.
Prefetch candidates are added to the provided vector.
| pfs | reference to a vector where candidates will be added |
| mask_bits | the number of lower bits that should be masked (ignored) when comparing deltas |
Definition at line 88 of file delta_correlating_prediction_tables.cc.
References gem5::X86ISA::addr, and gem5::mask().
Referenced by gem5::prefetch::DeltaCorrelatingPredictionTables::calculatePrefetch().
|
overridevirtual |
Invalidate the block.
Its contents are no longer valid.
Reimplemented from gem5::TaggedEntry.
Definition at line 52 of file delta_correlating_prediction_tables.cc.
References deltas, gem5::CircularQueue< T >::flush(), gem5::CircularQueue< T >::full(), gem5::TaggedEntry::invalidate(), lastAddress, and gem5::CircularQueue< T >::push_back().
| CircularQueue<Addr> gem5::prefetch::DeltaCorrelatingPredictionTables::DCPTEntry::deltas |
Stored deltas.
Definition at line 74 of file delta_correlating_prediction_tables.hh.
Referenced by invalidate().
| Addr gem5::prefetch::DeltaCorrelatingPredictionTables::DCPTEntry::lastAddress |
Last accessed address.
Definition at line 72 of file delta_correlating_prediction_tables.hh.
Referenced by gem5::prefetch::DeltaCorrelatingPredictionTables::calculatePrefetch(), and invalidate().