Skip to content

Class simtix::mem::DataArray

ClassList > simtix > mem > DataArray

Public Functions

Type Name
DataArray (const Cache::Param & param)
bool IsOutOfBound (uint64_t addr, size_t size)
bool Read (Cache::Payload payload, uint32_t way)
void Read (uint64_t addr, uint8_t * line, uint32_t way)
bool Write (Cache::Payload payload, uint32_t way)
void Write (uint64_t addr, uint8_t * line, uint32_t way)
~DataArray ()

Protected Attributes

Type Name
uint8_t * arr_
const size_t kBanks
const size_t kBlockSizeBytes
const size_t kSets
const size_t kSizeBytes
const uint8_t kWays

Protected Functions

Type Name
uint8_t * GetWay (uint64_t addr, uint32_t way)
uint64_t ToBankAddr (uint64_t addr)
uint64_t ToLineAddr (uint64_t addr)
uint32_t ToLineOffset (uint64_t addr)
uint32_t ToSetIndex (uint64_t addr)

Public Functions Documentation

function DataArray

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

function IsOutOfBound

inline bool simtix::mem::DataArray::IsOutOfBound (
    uint64_t addr,
    size_t size
) 

function Read [1/2]

bool simtix::mem::DataArray::Read (
    Cache::Payload payload,
    uint32_t way
) 

function Read [2/2]

void simtix::mem::DataArray::Read (
    uint64_t addr,
    uint8_t * line,
    uint32_t way
) 

function Write [1/2]

bool simtix::mem::DataArray::Write (
    Cache::Payload payload,
    uint32_t way
) 

function Write [2/2]

void simtix::mem::DataArray::Write (
    uint64_t addr,
    uint8_t * line,
    uint32_t way
) 

function ~DataArray

simtix::mem::DataArray::~DataArray () 

Protected Attributes Documentation

variable arr_

uint8_t* simtix::mem::DataArray::arr_;

variable kBanks

const size_t simtix::mem::DataArray::kBanks;

variable kBlockSizeBytes

const size_t simtix::mem::DataArray::kBlockSizeBytes;

variable kSets

const size_t simtix::mem::DataArray::kSets;

variable kSizeBytes

const size_t simtix::mem::DataArray::kSizeBytes;

variable kWays

const uint8_t simtix::mem::DataArray::kWays;

Protected Functions Documentation

function GetWay

inline uint8_t * simtix::mem::DataArray::GetWay (
    uint64_t addr,
    uint32_t way
) 

function ToBankAddr

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

function ToLineAddr

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

function ToLineOffset

inline uint32_t simtix::mem::DataArray::ToLineOffset (
    uint64_t addr
) 

function ToSetIndex

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


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