gem5  v20.1.0.0
Public Member Functions | Public Attributes | List of all members
Prefetcher::DeltaCorrelatingPredictionTables::DCPTEntry Struct Reference

DCPT Table entry datatype. More...

Inheritance diagram for Prefetcher::DeltaCorrelatingPredictionTables::DCPTEntry:
TaggedEntry ReplaceableEntry

Public Member Functions

 DCPTEntry (unsigned int num_deltas)
 Constructor. More...
 
void invalidate () override
 Invalidates the entry. 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 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 lastAddress
 Last accessed address. More...
 
CircularQueue< Addrdeltas
 Stored deltas. More...
 
- Public Attributes inherited from ReplaceableEntry
std::shared_ptr< ReplacementDatareplacementData
 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...
 

Detailed Description

DCPT Table entry datatype.

Definition at line 64 of file delta_correlating_prediction_tables.hh.

Constructor & Destructor Documentation

◆ DCPTEntry()

Prefetcher::DeltaCorrelatingPredictionTables::DCPTEntry::DCPTEntry ( unsigned int  num_deltas)
inline

Constructor.

Parameters
num_deltasnumber of deltas stored in the entry

Definition at line 75 of file delta_correlating_prediction_tables.hh.

Member Function Documentation

◆ addAddress()

void Prefetcher::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.

Parameters
addressaddress to add
delta_num_bitsnumber of bits of the delta

Definition at line 59 of file delta_correlating_prediction_tables.cc.

Referenced by Prefetcher::DeltaCorrelatingPredictionTables::calculatePrefetch().

◆ getCandidates()

void Prefetcher::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.

Parameters
pfsreference to a vector where candidates will be added
mask_bitsthe number of lower bits that should be masked (ignored) when comparing deltas

Definition at line 83 of file delta_correlating_prediction_tables.cc.

References addr, and ArmISA::mask.

Referenced by Prefetcher::DeltaCorrelatingPredictionTables::calculatePrefetch().

◆ invalidate()

void Prefetcher::DeltaCorrelatingPredictionTables::DCPTEntry::invalidate ( )
overridevirtual

Member Data Documentation

◆ deltas

CircularQueue<Addr> Prefetcher::DeltaCorrelatingPredictionTables::DCPTEntry::deltas

Stored deltas.

Definition at line 69 of file delta_correlating_prediction_tables.hh.

Referenced by invalidate().

◆ lastAddress

Addr Prefetcher::DeltaCorrelatingPredictionTables::DCPTEntry::lastAddress

The documentation for this struct was generated from the following files:

Generated on Wed Sep 30 2020 14:03:07 for gem5 by doxygen 1.8.17