Skip to content

Class simtix::mem::SimpleMemory::Impl

ClassList > simtix > mem > SimpleMemory > Impl

Classes

Type Name
struct Request

Public Functions

Type Name
Impl (const std::string & name, const Param & param=kDefaultParam)
Impl (const Impl & s) = delete
Impl operator= (const Impl & s) = delete
uint8_t & operator[] (const uint64_t addr)
~Impl ()

Protected Attributes

Type Name
sim::DelayQueue< Request > delay_queue_
const uint32_t latency_
uint8_t * mem_
const std::string name_
sim::SizedQueue< Request > req_queue_
sim::SizedQueue< Request > resp_queue_
const size_t size_

Protected Functions

Type Name
bool AcceptRequest (const Payload & payload, OnResp on_resp, bool is_write)
void HandleDelay ()
RespStatus HandleReadWrite (const Payload & payload, bool is_write)
void HandleRequest ()
void HandleResponse ()
void Tick ()

Public Functions Documentation

function Impl [1/2]

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

function Impl [2/2]

simtix::mem::SimpleMemory::Impl::Impl (
    const Impl & s
) = delete

function operator=

Impl simtix::mem::SimpleMemory::Impl::operator= (
    const Impl & s
) = delete

function operator[]

inline uint8_t & simtix::mem::SimpleMemory::Impl::operator[] (
    const uint64_t addr
) 

function ~Impl

simtix::mem::SimpleMemory::Impl::~Impl () 

Protected Attributes Documentation

variable delay_queue_

sim::DelayQueue<Request> simtix::mem::SimpleMemory::Impl::delay_queue_;

variable latency_

const uint32_t simtix::mem::SimpleMemory::Impl::latency_;

variable mem_

uint8_t* simtix::mem::SimpleMemory::Impl::mem_;

variable name_

const std::string simtix::mem::SimpleMemory::Impl::name_;

variable req_queue_

sim::SizedQueue<Request> simtix::mem::SimpleMemory::Impl::req_queue_;

variable resp_queue_

sim::SizedQueue<Request> simtix::mem::SimpleMemory::Impl::resp_queue_;

variable size_

const size_t simtix::mem::SimpleMemory::Impl::size_;

Protected Functions Documentation

function AcceptRequest

bool simtix::mem::SimpleMemory::Impl::AcceptRequest (
    const Payload & payload,
    OnResp on_resp,
    bool is_write
) 

function HandleDelay

void simtix::mem::SimpleMemory::Impl::HandleDelay () 

function HandleReadWrite

RespStatus simtix::mem::SimpleMemory::Impl::HandleReadWrite (
    const Payload & payload,
    bool is_write
) 

function HandleRequest

void simtix::mem::SimpleMemory::Impl::HandleRequest () 

function HandleResponse

void simtix::mem::SimpleMemory::Impl::HandleResponse () 

function Tick

void simtix::mem::SimpleMemory::Impl::Tick () 


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