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

serializer for store-forward router More...

#include <nvhls_serdes.h>

Inheritance diagram for serializer< packet_t, flit_t, Rtype >:

Public Types

enum  { width = 0 }
 

Public Member Functions

void Process ()
 
 SC_HAS_PROCESS (serializer)
 
 serializer (sc_module_name name)
 

Public Attributes

sc_in_clk clk
 
sc_in< bool > rst
 
Connections::In< packet_t > in_packet
 
Connections::Out< flit_t > out_flit
 

Static Public Attributes

static const int header_data_width = flit_t::data_width - packet_t::dest_width
 
static const int num_flits = (((packet_t::data_width-header_data_width) % flit_t::data_width) == 0) ? ((packet_t::data_width-header_data_width) / flit_t::data_width) : ((packet_t::data_width-header_data_width) / flit_t::data_width+1)
 

Detailed Description

template<typename packet_t, typename flit_t, RouterType Rtype = StoreForward>
class serializer< packet_t, flit_t, Rtype >

serializer for store-forward router

Template Parameters
packet_tPacketType
flit_tFlitType
RtypeRouterType
Overview
Converts a Packet into sequence of Flits.
A Simple Example
#include <nvhls_serdes.h>
...
serializer<packet_t, flit_t, StoreForward> serializer_inst;
Connections::In<Packet_t> in_packet;
Connections::Out<Flit_t> out_flit;
...
serializer_inst.clk(clk);
serializer_inst.rst(rst);
serializer_inst.in_packet(in_packet);
serializer_inst.out_flit(out_flit);
...

Definition at line 71 of file nvhls_serdes.h.


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