MatchLib
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
serializer< Packet< PacketDataWidth, DestWidthPerHop, MaxHops, PacketIdWidth >, Flit< FlitDataWidth, 0, 0, PacketIdWidth, FlitId, WormHole >, WormHole > Class Template Reference

serializer for WormHole router More...

#include <nvhls_serdes.h>

Inheritance diagram for serializer< Packet< PacketDataWidth, DestWidthPerHop, MaxHops, PacketIdWidth >, Flit< FlitDataWidth, 0, 0, PacketIdWidth, FlitId, WormHole >, WormHole >:

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_tin_packet
 
Connections::Out< flit_tout_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)
 
static const int log_num_flits = nvhls::index_width<num_flits+1>::val
 

Detailed Description

template<int PacketDataWidth, int DestWidthPerHop, int MaxHops, int PacketIdWidth, int FlitDataWidth, class FlitId>
class serializer< Packet< PacketDataWidth, DestWidthPerHop, MaxHops, PacketIdWidth >, Flit< FlitDataWidth, 0, 0, PacketIdWidth, FlitId, WormHole >, WormHole >

serializer for WormHole router

A Simple Example
#include <nvhls_serdes.h>
...
serializer<packet_t, flit_t, WormHole> 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 164 of file nvhls_serdes.h.


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