Abstract Memory Class. More...
#include <mem_array.h>
Public Types | |
typedef Wrapped< T > | WData_t |
typedef sc_lv< WordWidth > | Data_t |
typedef sc_lv< SliceWidth > | Slice_t |
typedef Slice_t | BankType[NumEntriesPerBank *NumByteEnables] |
Public Member Functions | |
typedef | NVUINTW (nvhls::index_width< NumEntriesPerBank >::val) LocalIndex |
typedef | NVUINTW (nvhls::index_width< NumEntriesPerBank *NumByteEnables >::val) LocalSliceIndex |
typedef | NVUINTW (nvhls::index_width< NumBanks >::val) BankIndex |
typedef | NVUINTW (NumByteEnables) WriteMask |
typedef | NVUINTW (nvhls::index_width< NumByteEnables >::val) ByteEnableIndex |
void | clear () |
T | read (LocalIndex idx, BankIndex bank_sel=0, WriteMask read_mask=~static_cast< WriteMask >(0)) |
void | write (LocalIndex idx, BankIndex bank_sel, T val, WriteMask write_mask=~static_cast< WriteMask >(0), bool wce=1) |
template<unsigned int Size> | |
void | Marshall (Marshaller< Size > &m) |
Public Attributes | |
nvhls::nv_array< BankType, NumBanks > | bank |
Static Public Attributes | |
static const unsigned int | NumEntriesPerBank = NumEntries/NumBanks |
static const unsigned int | WordWidth = WData_t::width |
static const unsigned int | SliceWidth = WordWidth/NumByteEnables |
static const int | width = NumEntries * WordWidth |
Abstract Memory Class.
T | Datatype of an entry to be stored in memory |
NumEntries | Number of entries in memory |
NumBanks | Number of banks in memory |
Definition at line 83 of file mem_array.h.
typedef Wrapped<T> mem_array_sep< T, NumEntries, NumBanks, NumByteEnables >::WData_t |
Definition at line 85 of file mem_array.h.
typedef sc_lv<WordWidth> mem_array_sep< T, NumEntries, NumBanks, NumByteEnables >::Data_t |
Definition at line 92 of file mem_array.h.
typedef sc_lv<SliceWidth> mem_array_sep< T, NumEntries, NumBanks, NumByteEnables >::Slice_t |
Definition at line 93 of file mem_array.h.
typedef Slice_t mem_array_sep< T, NumEntries, NumBanks, NumByteEnables >::BankType[NumEntriesPerBank *NumByteEnables] |
Definition at line 97 of file mem_array.h.
|
inline |
Definition at line 101 of file mem_array.h.
|
inline |
Definition at line 112 of file mem_array.h.
|
inline |
Definition at line 121 of file mem_array.h.
|
inline |
Definition at line 140 of file mem_array.h.
|
inline |
Definition at line 162 of file mem_array.h.
|
static |
Definition at line 86 of file mem_array.h.
|
static |
Definition at line 87 of file mem_array.h.
|
static |
Definition at line 88 of file mem_array.h.
nvhls::nv_array<BankType, NumBanks> mem_array_sep< T, NumEntries, NumBanks, NumByteEnables >::bank |
Definition at line 98 of file mem_array.h.
|
static |
Definition at line 99 of file mem_array.h.