#include "matrix_multiply.hpp"
template < class TransposeFormA1, class TransposeFormA2, int RowsA, int ColsA, int RowsC, int ColsC, typename InputType, typename OutputType, typename TRAITS = matrixMultiplyTraits<TransposeFormA1, TransposeFormA2, RowsA, ColsA, RowsA, ColsA, InputType, OutputType> > void matrixMultiply ( hls::stream <InputType>& matrixAStrm, hls::stream <OutputType>& matrixCStrm )
matrixMultiply entry point function for calculating matrix power.
Parameters:
| TransposeFormA1 | Defines if the first matix is transposed before the multiplication. Valid values are: NoTranspose, Transpose, ConjugateTranspose |
| TransposeFormA2 | Defines if the second 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 |
| 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 input matrix |
| matrixCStrm | Stream of A^2 product output matrix |