MatchLib
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
deserializer< packet_t, flit_t, buffersize, Rtype > Class Template Reference

Deserializer for store-forward router. More...

#include <nvhls_serdes.h>

Inheritance diagram for deserializer< packet_t, flit_t, buffersize, Rtype >:

Public Types

enum  { width = 0 }
 

Public Member Functions

typedef NVUINTW (logbufsize) BuffIdx
 
void Process ()
 
 SC_HAS_PROCESS (deserializer)
 
 deserializer (sc_module_name name)
 

Public Attributes

sc_in_clk clk
 
sc_in< bool > rst
 
Connections::Out< packet_t > out_packet
 
Connections::In< flit_t > in_flit
 
flit_t flit_reg
 
packet_t buffer [buffersize]
 
FIFO< BuffIdx, buffersize > fifo
 
 num_flits_received [buffersize]
 

Static Public Attributes

static const int logbufsize = (nvhls::index_width<buffersize>::val)
 
static const int num_flits = packet_t::data_width / flit_t::data_width
 
static const int log_num_flits
 

Detailed Description

template<typename packet_t, typename flit_t, int buffersize, RouterType Rtype = StoreForward>
class deserializer< packet_t, flit_t, buffersize, Rtype >

Deserializer for store-forward router.

Template Parameters
packet_tPacketType
flit_tFlitType
buffersizeBufferSize
RtypeRouterType
Overview
Converts a sequence of flits into a packet
A Simple Example
#include <nvhls_serdes.h>
...
deserializer<packet_t, flit_t, buffersize, StoreForward> deserializer_inst;
Connections::In<Packet_t> in_packet;
Connections::Out<Flit_t> out_flit;
...
deserializer_inst.clk(clk);
deserializer_inst.rst(rst);
deserializer_inst.in_packet(in_packet);
deserializer_inst.out_flit(out_flit);
...

Definition at line 349 of file nvhls_serdes.h.

Member Data Documentation

◆ log_num_flits

template<typename packet_t , typename flit_t , int buffersize, RouterType Rtype = StoreForward>
const int deserializer< packet_t, flit_t, buffersize, Rtype >::log_num_flits
static
Initial value:
=
Compute index width of a constant.
Definition: nvhls_int.h:285

Definition at line 367 of file nvhls_serdes.h.


The documentation for this class was generated from the following file: