Reorder Buffer that allows out-of-order writes to queue and in-order reads. More...
#include <ReorderBuf.h>
Public Types | |
typedef sc_uint< nvhls::index_width< InFlight >::val > | Id |
Public Member Functions | |
bool | canAcceptRequest () |
Id | addRequest () |
bool | topResponseReady () |
void | addResponse (const Id &id, const Data &data) |
Data | popResponse () |
void | reset () |
bool | isEmpty () |
Protected Types | |
typedef FIFO< bool, Depth > | VBits |
typedef VBits::FifoIdx | EntryNum |
typedef mem_array_sep< EntryNum, InFlight, 1 > | Id2Entry |
Protected Member Functions | |
typedef | NVUINTW (InFlight) IdRepository |
bool | get_next_avail_id (Id &id, IdRepository &id_repository) |
Protected Attributes | |
mem_array_sep< Data, Depth, 1 > | storage |
VBits | vbits |
IdRepository | idrep |
Id2Entry | id2entry |
Reorder Buffer that allows out-of-order writes to queue and in-order reads.
Data | DataType |
Depth | Depth of queue |
InFlight | Number of inflight entries |
Definition at line 68 of file ReorderBuf.h.
typedef sc_uint<nvhls::index_width<InFlight>::val> ReorderBuf< Data, Depth, InFlight >::Id |
Definition at line 75 of file ReorderBuf.h.
|
protected |
Definition at line 79 of file ReorderBuf.h.
|
protected |
Definition at line 85 of file ReorderBuf.h.
|
protected |
Definition at line 87 of file ReorderBuf.h.
|
inline |
Definition at line 71 of file ReorderBuf.h.
|
inlineprotected |
Definition at line 90 of file ReorderBuf.h.
|
inline |
Definition at line 106 of file ReorderBuf.h.
|
inline |
Definition at line 111 of file ReorderBuf.h.
|
inline |
Definition at line 123 of file ReorderBuf.h.
|
inline |
Definition at line 132 of file ReorderBuf.h.
|
inline |
Definition at line 141 of file ReorderBuf.h.
|
inline |
Definition at line 151 of file ReorderBuf.h.
|
inline |
Definition at line 157 of file ReorderBuf.h.
|
protected |
Definition at line 78 of file ReorderBuf.h.
|
protected |
Definition at line 80 of file ReorderBuf.h.
|
protected |
Definition at line 84 of file ReorderBuf.h.
|
protected |
Definition at line 88 of file ReorderBuf.h.