wiki:Component/VirtualDspinRouter

Version 4 (modified by noe.girand@…, 15 years ago) (diff)

--

SocLib Components General Index

VirtualDspinRouter

1) Functional Description

This is the elementary node of a Virtual Dspin Array.

2) Component definition & usage

source:trunk/soclib/soclib/module/network_component/virtual_dspin_router/caba/metadata/virtual_dspin_router.sd

3) CABA implementation

CABA sources

interface source:trunk/soclib/soclib/module/network_component/virtual_dspin_router/caba/source/include/virtual_dspin_router.h
implementation source:trunk/soclib/soclib/module/network_component/virtual_dspin_router/caba/source/src/virtual_dspin_router.cpp

CABA Internal registers

sc_signal<int> r_output_index[2][5]; for each channel & each output, input index (INFSM)
sc_signal<bool> r_input_alloc[2][5]; for each channel & each input, alloc
sc_signal<bool> r_tdm[5]; for each input, Time Multiplexing
sc_signal<sc_uint<data_size> > r_buf[2][5]; for each channel & each input, fifo extension
sc_signal<int> r_infsm[2][5]; for each channel & each input FSM state

CABA Template parameters

int data_size Size of flit
int io_mask_offset Emplacement of IO checking
int io_mask_size Size of IO checking
int io_number_offset Emplacement of IO index in IO table
int io_number_size Size of IO index
int x_addressing_offset Emplacement of target x in first flit
int x_addressing_size Size of target x
int y_addressing_offset Emplacement of target y in first flit
int y_addressing_size Size of target y
int eop_offset Emplacement of eop checking
int broadcast_offset Emplacement of broadcast checking
int in_fifo_size Size of input fifos
int out_fifo_size Size of output fifos
int x_min_offset Emplacement of x_min for broadcast confinement
int x_max_offset Emplacement of x_max for broadcast confinement
int y_min_offset Emplacement of y_min for broadcast confinement
int y_max_offset Emplacement of y_max for broadcast confinement

CABA Constructor parameters

sc_module_name insname instance name
int x x position in the network
int y y position in the network
bool n North connexion enabled
bool s South connexion enabled
bool e East connexion enabled
bool w West connexion enabled
bool broadcast0 Broadcast activated for channel 0
bool broadcast1 Broadcast activated for channel 1
bool io0 IO enable for channel 0
bool io1 IO enable for channel 1
clusterCoordinates<x_addressing_size, y_addressing_size> * aIO_table list of IO Clusters

CABA ports

sc_in<bool> p_clk Global system clock
sc_in<bool> p_resetn Global system reset
DspinOutput<cmd_data_size> p_out For each output and each virtual channel
DspinInput<cmd_data_size> p_in For each input and each virtual channel

4) TLMT implementation

The TLM-T implementation is not available yet.

Attachments (2)

Download all attachments as: .zip