MatchLib
|
Configurable nxn crossbar datapath. More...
Functions | |
template<typename DataType , unsigned NumInputLanes, unsigned NumOutputLanes> | |
void | crossbar (DataType data_in[NumInputLanes], bool valid_in[NumInputLanes], NVUINTW(nvhls::index_width< NumInputLanes >::val) source[NumOutputLanes], bool valid_source[NumOutputLanes], DataType data_out[NumOutputLanes], bool valid_out[NumOutputLanes]) |
Main entry point for crossbar - most generic implementation. More... | |
template<typename DataType , unsigned NumInputLanes, unsigned NumOutputLanes> | |
void | crossbar (DataType data_in[NumInputLanes], bool valid_in[NumInputLanes], NVUINTW(nvhls::index_width< NumInputLanes >::val) source[NumOutputLanes], DataType data_out[NumOutputLanes], bool valid_out[NumOutputLanes]) |
Simplified specialization with no valid_source parameter. All source selections are assumed to be valid. | |
template<typename DataType , unsigned NumInputLanes, unsigned NumOutputLanes> | |
void | crossbar (DataType data_in[NumInputLanes], NVUINTW(nvhls::index_width< NumInputLanes >::val) source[NumOutputLanes], DataType data_out[NumOutputLanes]) |
Simplified specialization with no valid parameter at all. Inputs are assumed to be valid. Validity of outputs is not reported. | |
Configurable nxn crossbar datapath.
void crossbar | ( | DataType | data_in[NumInputLanes], |
bool | valid_in[NumInputLanes], | ||
NVUINTW(nvhls::index_width< NumInputLanes >::val) | source[NumOutputLanes], | ||
bool | valid_source[NumOutputLanes], | ||
DataType | data_out[NumOutputLanes], | ||
bool | valid_out[NumOutputLanes] | ||
) |
Main entry point for crossbar - most generic implementation.
DataType | Datatype of input and output of each lane |
NumInputLanes | Number of input lanes |
NumOutputLanes | Number of output lanes |
[in] | data_in | Array of data inputs for each lane, indexed by input lane id. |
[in] | valid_in | Array of boolean valid bits, indexed by input lane id.. False means data can be ignored. |
[in] | source | Array indicating the origin lane for each output lane id. Indexed by output lane id. |
[in] | valid_source | Array of boolean valid bits, indexed by output lane id. Indicated validity of source selection for given output. |
[out] | data_out | Array of outputs, indexed by output lane id. |
[out] | valid_out | Array of outputs, indexed by output lane id. |
Definition at line 78 of file crossbar.h.