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 | |
BankType | bank [NumBanks] |
Static Public Attributes | |
static const unsigned int | NumEntries = NumEntriesPerBank*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 |
NumEntriesPerBank | Number of entries per bank in memory |
NumBanks | Number of banks in memory |
Definition at line 199 of file mem_array.h.
typedef Wrapped<T> mem_array_opt< T, NumEntriesPerBank, NumBanks, NumByteEnables >::WData_t |
Definition at line 201 of file mem_array.h.
typedef sc_lv<WordWidth> mem_array_opt< T, NumEntriesPerBank, NumBanks, NumByteEnables >::Data_t |
Definition at line 208 of file mem_array.h.
typedef sc_lv<SliceWidth> mem_array_opt< T, NumEntriesPerBank, NumBanks, NumByteEnables >::Slice_t |
Definition at line 209 of file mem_array.h.
typedef Slice_t mem_array_opt< T, NumEntriesPerBank, NumBanks, NumByteEnables >::BankType[NumEntriesPerBank *NumByteEnables] |
Definition at line 213 of file mem_array.h.
|
inline |
Definition at line 218 of file mem_array.h.
|
inline |
Definition at line 235 of file mem_array.h.
|
inline |
Definition at line 244 of file mem_array.h.
|
inline |
Definition at line 263 of file mem_array.h.
|
inline |
Definition at line 285 of file mem_array.h.
|
static |
Definition at line 202 of file mem_array.h.
|
static |
Definition at line 203 of file mem_array.h.
|
static |
Definition at line 204 of file mem_array.h.
BankType mem_array_opt< T, NumEntriesPerBank, NumBanks, NumByteEnables >::bank[NumBanks] |
Definition at line 215 of file mem_array.h.
|
static |
Definition at line 216 of file mem_array.h.