gem5  v21.2.1.1
Public Member Functions | Public Attributes | List of all members
gem5::compression::FrequentValues::VFTEntry Class Reference
Inheritance diagram for gem5::compression::FrequentValues::VFTEntry:
gem5::TaggedEntry gem5::ReplaceableEntry

Public Member Functions

 VFTEntry (std::size_t num_bits)
 
void invalidate () override
 Invalidate the block. 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

uint64_t value
 The value is stored as a 64 bit entry to accomodate for the uncompressed value. More...
 
SatCounter32 counter
 The ideal counter width (in bits) is determined by the maximum number of times a given value appears in the cache (log2(cache_size / chunkSizeBits)). More...
 
- Public Attributes inherited from gem5::ReplaceableEntry
std::shared_ptr< replacement_policy::ReplacementDatareplacementData
 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...
 

Detailed Description

Definition at line 115 of file frequent_values.hh.

Constructor & Destructor Documentation

◆ VFTEntry()

gem5::compression::FrequentValues::VFTEntry::VFTEntry ( std::size_t  num_bits)
inline

Definition at line 132 of file frequent_values.hh.

Member Function Documentation

◆ invalidate()

void gem5::compression::FrequentValues::VFTEntry::invalidate ( )
inlineoverridevirtual

Invalidate the block.

Its contents are no longer valid.

Reimplemented from gem5::TaggedEntry.

Definition at line 138 of file frequent_values.hh.

References counter, gem5::TaggedEntry::invalidate(), gem5::GenericSatCounter< T >::reset(), and value.

Member Data Documentation

◆ counter

SatCounter32 gem5::compression::FrequentValues::VFTEntry::counter

The ideal counter width (in bits) is determined by the maximum number of times a given value appears in the cache (log2(cache_size / chunkSizeBits)).

If smaller counters are used their values should be rescaled when saturated.

Definition at line 130 of file frequent_values.hh.

Referenced by invalidate(), and gem5::compression::FrequentValues::sampleValues().

◆ value

uint64_t gem5::compression::FrequentValues::VFTEntry::value

The value is stored as a 64 bit entry to accomodate for the uncompressed value.

All real values must be 32 bits.

Definition at line 122 of file frequent_values.hh.

Referenced by invalidate(), and gem5::compression::FrequentValues::sampleValues().


The documentation for this class was generated from the following file:

Generated on Wed May 4 2022 12:15:03 for gem5 by doxygen 1.8.17