outer_tensor is every element-wise combination of two vectors.
These are the templates to configure the function.
Parameters:
TT_DATA_A | describes the type of individual data samples input to the function. This is a typename and must be one of the following: int16, int32, cint16, cint32, float, cfloat. |
TT_DATA_B | describes the type of individual data samples input to the function. This is a typename and must be one of the following: int16, int32, cint16, cint32, float, cfloat. |
TP_DIM_A | describes the number of samples in the vector A. |
TP_DIM_B | describes the number of samples in the vector B. |
TP_NUM_FRAMES | describes the number of outer tensor product operations to perform per call to the kernel. |
TP_SHIFT | describes the number of bits to downshift. |
TP_API | describes whether to use streams (1) or windows (0). |
TP_SSR | describes the number of kernels to use in parallel to perform the windowing function. |
TP_RND | describes the selection of rounding to be applied during the shift down stage of processing. Although, TP_RND accepts unsigned integer values descriptive macros are recommended where
|
TP_SAT | describes the selection of saturation to be applied during the shift down stage of processing. TP_SAT accepts unsigned integer values, where:
|
template < typename TT_DATA_A, typename TT_DATA_B, unsigned int TP_DIM_A, unsigned int TP_DIM_B, unsigned int TP_NUM_FRAMES, unsigned int TP_SHIFT, unsigned int TP_API, unsigned int TP_SSR, unsigned int TP_RND = 0, unsigned int TP_SAT = 1 > class outer_tensor_graph: public graph // fields port_array <input, TP_SSR> inA port_array <input, TP_SSR> inB port_array <output, TP_SSR> out kernel m_kernels[TP_SSR]