|
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. | |
| 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.
| 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.
Definition at line 112 of file crossbar.h.
| 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.
Definition at line 130 of file crossbar.h.