gem5
v20.1.0.0
|
Class that implements a circular queue to hold FU indices. More...
Public Member Functions | |
FUIdxQueue () | |
Constructs a circular queue of FU indices. More... | |
void | addFU (int fu_idx) |
Adds a FU to the queue. More... | |
int | getFU () |
Returns the index of the FU at the head of the queue, and changes the index to the next element. More... | |
Private Attributes | |
int | idx |
Circular queue index. More... | |
int | size |
Size of the queue. More... | |
std::vector< int > | funcUnitsIdx |
Queue of FU indices. More... | |
Class that implements a circular queue to hold FU indices.
The hope is that FUs that have been just used will be moved to the end of the queue by iterating through it, thus leaving free units at the head of the queue.
Definition at line 92 of file fu_pool.hh.
|
inline |
Constructs a circular queue of FU indices.
Definition at line 95 of file fu_pool.hh.
|
inline |
|
inline |
Returns the index of the FU at the head of the queue, and changes the index to the next element.
Definition at line 62 of file fu_pool.cc.
Referenced by FUPool::getUnit().
|
private |
Queue of FU indices.
Definition at line 115 of file fu_pool.hh.
|
private |
Circular queue index.
Definition at line 109 of file fu_pool.hh.
|
private |
Size of the queue.
Definition at line 112 of file fu_pool.hh.