Parameterized banked scratchpad memory implemented as a SystemC module. More...
#include <Scratchpad.h>
Classes | |
struct | bank_req_t |
Public Types | |
typedef cli_req_t< T, ADDR_WIDTH, N > | req_t |
typedef cli_rsp_t< T, N > | rsp_t |
Public Member Functions | |
typedef | NVUINTW (NBANKS_LOG2) bank_sel_t |
typedef | NVUINTW (ADDR_WIDTH - NBANKS_LOG2) bank_addr_t |
SC_HAS_PROCESS (Scratchpad) | |
Scratchpad (sc_module_name name_) | |
void | run () |
Public Attributes | |
sc_in_clk | clk |
sc_in< bool > | rst |
Connections::In< cli_req_t< T, ADDR_WIDTH, N > > | cli_req |
Connections::Out< cli_rsp_t< T, N > > | cli_rsp |
ScratchpadClass< T, N, CAPACITY_IN_WORDS > | scratchpad_class |
Static Public Attributes | |
static const int | ADDR_WIDTH = nvhls::nbits<CAPACITY_IN_WORDS - 1>::val |
static const int | NBANKS_LOG2 = nvhls::nbits<N - 1>::val |
Parameterized banked scratchpad memory implemented as a SystemC module.
T | EntryType |
N | Number of requests |
CAPACITY_IN_WORDS | Total number of words of type T in memory |
Ports: 1 input port for requests (load OR store) from client 1 output port for responses (load only) back to client
This module sets the stall mode to flush by default to mitigate possible RTL bugs that can occur in the default stall mode. If you are confident that this class of bugs will not occur in your use case, you can change the stall mode via TCL directive:
This may reduce area/power.
Definition at line 259 of file Scratchpad.h.
typedef cli_req_t<T, ADDR_WIDTH, N> Scratchpad< T, N, CAPACITY_IN_WORDS >::req_t |
Definition at line 278 of file Scratchpad.h.
typedef cli_rsp_t<T, N> Scratchpad< T, N, CAPACITY_IN_WORDS >::rsp_t |
Definition at line 279 of file Scratchpad.h.
|
inline |
Definition at line 287 of file Scratchpad.h.
|
inline |
Definition at line 295 of file Scratchpad.h.
|
static |
Definition at line 261 of file Scratchpad.h.
sc_in_clk Scratchpad< T, N, CAPACITY_IN_WORDS >::clk |
Definition at line 262 of file Scratchpad.h.
sc_in<bool> Scratchpad< T, N, CAPACITY_IN_WORDS >::rst |
Definition at line 263 of file Scratchpad.h.
Connections::In<cli_req_t<T, ADDR_WIDTH, N> > Scratchpad< T, N, CAPACITY_IN_WORDS >::cli_req |
Definition at line 264 of file Scratchpad.h.
Connections::Out<cli_rsp_t<T, N> > Scratchpad< T, N, CAPACITY_IN_WORDS >::cli_rsp |
Definition at line 265 of file Scratchpad.h.
|
static |
Definition at line 269 of file Scratchpad.h.
ScratchpadClass<T, N, CAPACITY_IN_WORDS> Scratchpad< T, N, CAPACITY_IN_WORDS >::scratchpad_class |
Definition at line 281 of file Scratchpad.h.