gem5  v21.0.1.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Private Attributes | List of all members
ScalarMemPipeline Class Reference

#include <scalar_memory_pipeline.hh>

Public Member Functions

 ScalarMemPipeline (const ComputeUnitParams &p, ComputeUnit &cu)
 
void exec ()
 
std::queue< GPUDynInstPtr > & getGMReqFIFO ()
 
std::queue< GPUDynInstPtr > & getGMStRespFIFO ()
 
std::queue< GPUDynInstPtr > & getGMLdRespFIFO ()
 
bool isGMLdRespFIFOWrRdy () const
 
bool isGMStRespFIFOWrRdy () const
 
bool isGMReqFIFOWrRdy (uint32_t pendReqs=0) const
 
const std::string & name () const
 

Private Attributes

ComputeUnitcomputeUnit
 
const std::string _name
 
int queueSize
 
int inflightStores
 
int inflightLoads
 
std::queue< GPUDynInstPtrissuedRequests
 
std::queue< GPUDynInstPtrreturnedStores
 
std::queue< GPUDynInstPtrreturnedLoads
 

Detailed Description

Definition at line 57 of file scalar_memory_pipeline.hh.

Constructor & Destructor Documentation

◆ ScalarMemPipeline()

ScalarMemPipeline::ScalarMemPipeline ( const ComputeUnitParams &  p,
ComputeUnit cu 
)

Definition at line 44 of file scalar_memory_pipeline.cc.

Member Function Documentation

◆ exec()

void ScalarMemPipeline::exec ( )

◆ getGMLdRespFIFO()

std::queue<GPUDynInstPtr>& ScalarMemPipeline::getGMLdRespFIFO ( )
inline

Definition at line 65 of file scalar_memory_pipeline.hh.

References returnedLoads.

◆ getGMReqFIFO()

std::queue<GPUDynInstPtr>& ScalarMemPipeline::getGMReqFIFO ( )
inline

Definition at line 63 of file scalar_memory_pipeline.hh.

References issuedRequests.

◆ getGMStRespFIFO()

std::queue<GPUDynInstPtr>& ScalarMemPipeline::getGMStRespFIFO ( )
inline

Definition at line 64 of file scalar_memory_pipeline.hh.

References returnedStores.

◆ isGMLdRespFIFOWrRdy()

bool ScalarMemPipeline::isGMLdRespFIFOWrRdy ( ) const
inline

Definition at line 68 of file scalar_memory_pipeline.hh.

References queueSize, and returnedLoads.

◆ isGMReqFIFOWrRdy()

bool ScalarMemPipeline::isGMReqFIFOWrRdy ( uint32_t  pendReqs = 0) const
inline

Definition at line 80 of file scalar_memory_pipeline.hh.

References issuedRequests, and queueSize.

Referenced by ScheduleStage::dispatchReady().

◆ isGMStRespFIFOWrRdy()

bool ScalarMemPipeline::isGMStRespFIFOWrRdy ( ) const
inline

Definition at line 74 of file scalar_memory_pipeline.hh.

References queueSize, and returnedStores.

◆ name()

const std::string& ScalarMemPipeline::name ( ) const
inline

Definition at line 85 of file scalar_memory_pipeline.hh.

References _name.

Member Data Documentation

◆ _name

const std::string ScalarMemPipeline::_name
private

Definition at line 89 of file scalar_memory_pipeline.hh.

Referenced by name().

◆ computeUnit

ComputeUnit& ScalarMemPipeline::computeUnit
private

Definition at line 88 of file scalar_memory_pipeline.hh.

Referenced by exec().

◆ inflightLoads

int ScalarMemPipeline::inflightLoads
private

Definition at line 95 of file scalar_memory_pipeline.hh.

Referenced by exec().

◆ inflightStores

int ScalarMemPipeline::inflightStores
private

Definition at line 94 of file scalar_memory_pipeline.hh.

Referenced by exec().

◆ issuedRequests

std::queue<GPUDynInstPtr> ScalarMemPipeline::issuedRequests
private

Definition at line 99 of file scalar_memory_pipeline.hh.

Referenced by exec(), getGMReqFIFO(), and isGMReqFIFOWrRdy().

◆ queueSize

int ScalarMemPipeline::queueSize
private

◆ returnedLoads

std::queue<GPUDynInstPtr> ScalarMemPipeline::returnedLoads
private

Definition at line 107 of file scalar_memory_pipeline.hh.

Referenced by exec(), getGMLdRespFIFO(), and isGMLdRespFIFOWrRdy().

◆ returnedStores

std::queue<GPUDynInstPtr> ScalarMemPipeline::returnedStores
private

Definition at line 103 of file scalar_memory_pipeline.hh.

Referenced by exec(), getGMStRespFIFO(), and isGMStRespFIFOWrRdy().


The documentation for this class was generated from the following files:

Generated on Tue Jun 22 2021 15:28:43 for gem5 by doxygen 1.8.17