Skip to content

Class simtix::mem::BankedMemory::Impl

ClassList > simtix > mem > BankedMemory > Impl

Public Functions

Type Name
Impl (const std::string & name, const Param & param=kDefaultParam)
~Impl () = default

Protected Attributes

Type Name
std::vector< bool > bank_occupied_
std::deque< SimpleMemory > banks_
const size_t kBanks
const uint32_t kInterleaveGranularity
const uint32_t kLatencyCycles
std::string name_
simtix::mem::BankedMemory::Impl::Stat stat_

Protected Functions

Type Name
bool ForwardRequest (const Payload & payload, OnResp on_resp, bool is_write)
uint32_t ToBankIndex (uint64_t addr) const
uint64_t ToBankedAddr (uint64_t addr) const
uint64_t ToBankedAddrOffset (uint64_t addr) const

Public Functions Documentation

function Impl

inline explicit simtix::mem::BankedMemory::Impl::Impl (
    const std::string & name,
    const Param & param=kDefaultParam
) 

function ~Impl

simtix::mem::BankedMemory::Impl::~Impl () = default

Protected Attributes Documentation

variable bank_occupied_

std::vector<bool> simtix::mem::BankedMemory::Impl::bank_occupied_;

variable banks_

std::deque<SimpleMemory> simtix::mem::BankedMemory::Impl::banks_;

variable kBanks

const size_t simtix::mem::BankedMemory::Impl::kBanks;

variable kInterleaveGranularity

const uint32_t simtix::mem::BankedMemory::Impl::kInterleaveGranularity;

variable kLatencyCycles

const uint32_t simtix::mem::BankedMemory::Impl::kLatencyCycles;

variable name_

std::string simtix::mem::BankedMemory::Impl::name_;

variable stat_

simtix::mem::BankedMemory::Impl::Stat simtix::mem::BankedMemory::Impl::stat_;

Protected Functions Documentation

function ForwardRequest

bool simtix::mem::BankedMemory::Impl::ForwardRequest (
    const Payload & payload,
    OnResp on_resp,
    bool is_write
) 

function ToBankIndex

inline uint32_t simtix::mem::BankedMemory::Impl::ToBankIndex (
    uint64_t addr
) const

function ToBankedAddr

inline uint64_t simtix::mem::BankedMemory::Impl::ToBankedAddr (
    uint64_t addr
) const

function ToBankedAddrOffset

inline uint64_t simtix::mem::BankedMemory::Impl::ToBankedAddrOffset (
    uint64_t addr
) const


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