﻿

# Linear Algebra Matrix Transpose Function

LabVIEW 2013 FPGA Module Help

Edition Date: June 2013

Part Number: 371599J-01

»View Product Info

Owning Palette: Linear Algebra Functions

Requires: FPGA Module

Transposes a complex matrix.

This function supports only scalar and 1D fixed-size array values of the fixed-point data type.

## Dialog Box Options

ParameterDescription
Input Matrix ConfigurationSpecifies the encodings, word lengths, and integer word lengths of the input terminals and the configuration of the input matrix of this function.
• Data Type—Specifies the configuration of the input terminals.

If you wire a fixed-point data type to these terminals, LabVIEW dims this section and uses information from the wire.
• Signed—Specifies that these terminals are signed.
• Unsigned—Specifies that these terminals are unsigned.
• Word length—Specifies the word length of these terminals.
• Integer word length—Specifies the integer word length of these terminals.
• Number of rows—Specifies the row number of the input matrix.
• Number of columns—Specifies the column number of the input matrix.
• Pattern—Specifies that the function receives data by row of the matrix or by column of the matrix.

If the input pattern is Row-Wise and you wire a fixed-point 1D array to the real data in or imaginary data in input terminal, LabVIEW dims Number of columns and uses the array size information from the wire.

If the input pattern is Column-Wise and you wire a fixed-point 1D array to the real data in or imaginary data in input terminal, LabVIEW dims Number of rows and uses the array size information from the wire.
• Row-Wise—Specifies that the matrix receives data by row.
• Column-Wise—Specifies that the matrix receives data by column.
Output Matrix ConfigurationSpecifies whether to conjugate the input during operation and specifies the encodings, word lengths, and integer word lengths of the output terminals of this function.
• Conjugate—Specifies whether to conjugate the input of the matrix during operation. Selecting this option requires additional FPGA resources. LabVIEW displays an icon on the block diagram based on the conjugation option you choose. By default, this checkbox does not contain a checkmark.
• Data Type—Displays the configuration of the output terminals.

LabVIEW dims this section and uses information from the wire. If Conjugate is deselected or the imaginary data in terminal is not wired, the output data type is the same as the input. If Conjugate is selected and the imaginary data in terminal is wired, the word length and integer word length of the output data type is 1 bit larger than that of the input, and the output encoding is signed regardless of the signed status of the input.
• Signed—Specifies that these terminals are signed.
• Unsigned—Specifies that these terminals are unsigned.
• Word length—Specifies the word length of these terminals.
• Integer word length—Specifies the integer word length of these terminals.
Implementation DetailsSpecifies how to implement the function in memory.
• Resource—You can choose from Look-Up Table or Block Memory when you wire a fixed-point scalar value to the real data in or the imaginary data in input terminal. If you wire a fixed-point 1D fixed-size array to the real data in or the imaginary data in input terminal, LabVIEW dims Resource and defaults to a Look-Up Table implementation.

• Look-Up Table (default)—Specifies that this function implements using LUTs.
• Block Memory—Specifies that this function uses embedded blocks of memory. Xilinx documentation describes this implementation as block RAM or BRAM. Consider choosing this option when transposing a large matrix to avoid consuming excessive FPGA resources.

## Block Diagram Inputs

ParameterDescription
real data inSpecifies the real part of the input to this function.

The real and imaginary inputs of this function must be of the same data type and input pattern, otherwise the data type or array size of the real data in terminal takes precedent.
imaginary data inSpecifies the imaginary part of the input to this function.

The real and imaginary inputs of this function must be of the same data type and input pattern, otherwise the data type or array size of the real data in terminal takes precedent.
input validSpecifies whether the next data point has arrived for processing. Wire the output valid output of an upstream node to this input to transfer data from the upstream node to this node.
ready for outputSpecifies whether downstream nodes are ready for this node to return a new value. The default is TRUE. Use a Feedback Node to wire the ready for input output of a downstream node to this input of the current node.
 Note  If this terminal is FALSE during a given cycle, the output valid terminal returns FALSE during that cycle.

## Block Diagram Outputs

ParameterDescription
real data outReturns the real part of the output of this function.
imaginary data outReturns the imaginary part of the output of this function.
output validReturns TRUE if this node has computed a result that downstream nodes can use. Wire this output to the input valid input of a downstream node to transfer data from the node to the downstream node.
ready for inputReturns TRUE if this node is ready to accept new input data. Use a Feedback Node to wire this output to the ready for output input of an upstream node.
 Note  If this terminal returns FALSE during a given cycle, LabVIEW discards any data that other nodes send to this node during the following cycle. LabVIEW discards this data even if the input valid terminal is TRUE during the following cycle.

## Linear Algebra Matrix Transpose Details

The real and imaginary inputs of this function must be of the same data type and input pattern, otherwise the data type or array size of the real data in terminal takes precedent.