Go to the documentation of this file.
30 #ifndef __BASE_FILTERS_BASE_HH__
31 #define __BASE_FILTERS_BASE_HH__
39 #include "params/BloomFilterBase.hh"
45 namespace bloom_filter
67 Base(
const BloomFilterBaseParams &
p)
81 for (
auto& entry :
filter) {
147 for (
const auto& entry :
filter) {
157 #endif // __BASE_FILTERS_BASE_HH__
std::vector< SatCounter8 > filter
The filter itself.
virtual int getTotalCount() const
Get the total value stored in the filter entries.
const unsigned offsetBits
Number of LSB bits to ignore from the the addresses.
const int sizeBits
Number of bits needed to represent the size of the filter.
static constexpr std::enable_if_t< std::is_integral_v< T >, int > floorLog2(T x)
virtual void unset(Addr addr)
Perform the filter specific function to clear the corresponding entries (can be multiple) of an addre...
Base(const BloomFilterBaseParams &p)
Create and clear the filter.
virtual void merge(const Base *other)
Merges the contents of both filters into this' (Bloom Filter union).
Abstract superclass for simulation objects.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
virtual void clear()
Clear the filter by resetting all values.
virtual int getCount(Addr addr) const
Get the value stored in the corresponding filter entry of an address.
virtual void set(Addr addr)=0
Perform the filter specific function to set the corresponding entries (can be multiple) of an address...
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
const int setThreshold
Threshold at which a filter entry starts being considered as set.
virtual bool isSet(Addr addr) const
Check if the corresponding filter entries of an address should be considered as set.
Generated on Sun Jul 30 2023 01:56:51 for gem5 by doxygen 1.8.17