#include "matrix_multiply.hpp"
template < class TransposeFormA, class TransposeFormB, int RowsA, int ColsA, int RowsB, int ColsB, int RowsC, int ColsC, typename InputType, typename OutputType, typename TRAITS = matrixMultiplyTraits<TransposeFormA, TransposeFormB, RowsA, ColsA, RowsB, ColsB, InputType, OutputType> > void matrixMultiply ( hls::stream <InputType>& matrixAStrm, hls::stream <InputType>& matrixBStrm, hls::stream <OutputType>& matrixCStrm )
matrixMultiply entry point function.
Parameters:
TransposeFormA | Defines if the A matix is transposed before the multiplication. Valid values are: NoTranspose, Transpose, ConjugateTranspose |
TransposeFormB | Defines if the B matix is transposed before the multiplication. |
RowsA | Defines the number of rows in the A matrix |
ColsA | Defines the number of columns in the A matrix |
RowsB | Defines the number of rows in the B matrix |
ColsB | Defines the number of columns in the B matrix |
RowsC | Defines the number of rows in the C matrix |
ColsC | Defines the number of columns in the C matrix |
InputType | Input data type |
OutputType | Output data type |
TRAITS | Traits class |
matrixAStrm | Stream of First input matrix |
matrixBStrm | Stream of Second input matrix |
matrixCStrm | Stream of AB product output matrix |