Skip to content

Class simtix::mem::TagArray

ClassList > simtix > mem > TagArray

Classes

Type Name
struct Rep
struct Tag

Public Functions

Type Name
Rep FindDirtyTag (uint64_t flush_tag_arr_index)
int Probe (uint64_t addr, bool is_write, uint32_t * wid)
Rep Replace (uint64_t addr, uint32_t wid)
TagArray (const Cache::Param & param)
~TagArray ()

Protected Attributes

Type Name
std::vector< Tag > arr_
const uint8_t kBanks
const size_t kBlockSizeBytes
const Cache::Param::ReplacementPolicies kReplacementPolicy
const size_t kSets
const size_t kSizeBytes
const uint8_t kWays
const Cache::Param::WriteHitPolicies kWriteHitPolicy

Protected Functions

Type Name
Tag * GetSet (uint64_t addr)
uint64_t ToBankAddr (uint64_t addr)
uint64_t ToLineAddr (uint64_t addr)
uint32_t ToSetIndex (uint64_t addr)
void UpdateTag (Tag * tag, uint64_t addr, uint32_t wid)

Public Functions Documentation

function FindDirtyTag

Rep simtix::mem::TagArray::FindDirtyTag (
    uint64_t flush_tag_arr_index
) 

function Probe

int simtix::mem::TagArray::Probe (
    uint64_t addr,
    bool is_write,
    uint32_t * wid
) 

function Replace

Rep simtix::mem::TagArray::Replace (
    uint64_t addr,
    uint32_t wid
) 

function TagArray

explicit simtix::mem::TagArray::TagArray (
    const Cache::Param & param
) 

function ~TagArray

simtix::mem::TagArray::~TagArray () 

Protected Attributes Documentation

variable arr_

std::vector<Tag> simtix::mem::TagArray::arr_;

variable kBanks

const uint8_t simtix::mem::TagArray::kBanks;

variable kBlockSizeBytes

const size_t simtix::mem::TagArray::kBlockSizeBytes;

variable kReplacementPolicy

const Cache::Param::ReplacementPolicies simtix::mem::TagArray::kReplacementPolicy;

variable kSets

const size_t simtix::mem::TagArray::kSets;

variable kSizeBytes

const size_t simtix::mem::TagArray::kSizeBytes;

variable kWays

const uint8_t simtix::mem::TagArray::kWays;

variable kWriteHitPolicy

const Cache::Param::WriteHitPolicies simtix::mem::TagArray::kWriteHitPolicy;

Protected Functions Documentation

function GetSet

inline Tag * simtix::mem::TagArray::GetSet (
    uint64_t addr
) 

function ToBankAddr

inline uint64_t simtix::mem::TagArray::ToBankAddr (
    uint64_t addr
) 

function ToLineAddr

inline uint64_t simtix::mem::TagArray::ToLineAddr (
    uint64_t addr
) 

function ToSetIndex

inline uint32_t simtix::mem::TagArray::ToSetIndex (
    uint64_t addr
) 

function UpdateTag

inline void simtix::mem::TagArray::UpdateTag (
    Tag * tag,
    uint64_t addr,
    uint32_t wid
) 


The documentation for this class was generated from the following file projects/simtix/src/simtix/mem/cache/tag_array.h