Skip to content

Struct simtix::pipelined::InstrBuffer::InstrStream

ClassList > simtix > pipelined > InstrBuffer > InstrStream

Represent the instruction stream for a single warp.

  • #include <instr_buffer.h>

Public Attributes

Type Name
std::array< uint64_t, 2 > fetch_pc = {}
std::array< sim::SizedQueue< InstrPtr >, 2 > fifos
bool is_diverged = false
std::array< uint64_t, 2 > next_pc = {}
std::array< bool, 2 > valid = {}

Public Functions

Type Name
InstrStream (std::size_t capacity)
Construct an instruction stream with a given total capacity.

Public Attributes Documentation

variable fetch_pc

std::array<uint64_t, 2> simtix::pipelined::InstrBuffer::InstrStream::fetch_pc;

variable fifos

std::array<sim::SizedQueue<InstrPtr>, 2> simtix::pipelined::InstrBuffer::InstrStream::fifos;

variable is_diverged

bool simtix::pipelined::InstrBuffer::InstrStream::is_diverged;

variable next_pc

std::array<uint64_t, 2> simtix::pipelined::InstrBuffer::InstrStream::next_pc;

variable valid

std::array<bool, 2> simtix::pipelined::InstrBuffer::InstrStream::valid;

Public Functions Documentation

function InstrStream

Construct an instruction stream with a given total capacity.

inline explicit simtix::pipelined::InstrBuffer::InstrStream::InstrStream (
    std::size_t capacity
) 

Parameters:

  • capacity Total capacity of two instruction FIFOs.

Each stream gets capacity/2 for each internal FIFO.



The documentation for this class was generated from the following file projects/simtix/src/simtix/sm/pipelined/instr_buffer.h