1.4.2.27 DSP_MatrixTranspose32 Function

Transpose of a Matrix C = A (T).

Description

void DSP_MatrixTranspose32(matrix32 *desMat, matrix32 *srcMat);

Transpose of rows and columns of a matrix.

Preconditions

Matrix definitions for ROWS and COLS must be transposed prior to the function call.

Parameters

desMat pointer to transposed new Matrix C (*int32_t)

srcMat pointer to the Matrix A structure (*int32_t)

Returns

None.

Remarks

Execution Time (cycles): 210 cycles + 10 / matrix_element.

Example

#define ROW 3

#define COL 4

matrix32 *resMat, *srcMat1;

int32_t result[ROW*COL];

int32_t matA[ROW*COL] = { 1, 2, 3, 4,

5, 6, 7, 8,

-1, -3, -5, -7};

matrix32 mat, mat2;

resMat=&mat;

srcMat1=&mat2;

srcMat1->row=ROW;

srcMat1->col=COL;

srcMat1->pMatrix=matA;

resMat->row=COL; _// note the shift in columns and rows_

resMat->col=ROW;

resMat->pMatrix=result;

DSP_MatrixTranspose32(resMat, srcMat1);

_// result[] = matA(T)[] = { 1, 5, -1,_

_// 2, 6, -3,_

_// 3, 7, -5,_

_// 4, 8, -7}_

C

void  DSP_MatrixTranspose32 (matrix32 * desMat , matrix32 * srcMat );