Main Content

Fixed-Point Matrix Operations in Simulink

Optimized fixed-point math and matrix operations blocks for efficient HDL code

Use the Fixed-Point Designer™ library of blocks to perform fixed-point math operations.

Use the Fixed-Point Designer HDL Optimized library of blocks to perform fixed-point math and matrix operations and generate efficient HDL code. These blocks model design patterns for systems of linear equations and core matrix operations, such as QR Decomposition, for hardware-efficient implementation on FPGAs. Generate HDL code for designs that incorporate these blocks using HDL Coder™.

Blocks

expand all

Hyperbolic Tangent HDL OptimizedComputes CORDIC-based hyperbolic tangent and generates optimized HDL code
Normalized Reciprocal HDL OptimizedComputes normalized reciprocal and generates optimized HDL code
Real Reciprocal HDL OptimizedCompute reciprocal and generate optimized HDL code
Real Divide HDL OptimizedDivide one real input by another and generate optimized HDL code
Complex Divide HDL OptimizedDivide one input by another and generate optimized HDL code
Divide by Constant HDL OptimizedDivide input by a constant and round to integer and generate optimized HDL code
Modulo by Constant HDL OptimizedPerform mod operation with a constant denominator and generate optimized HDL code
Divide by Constant and RoundDivide input by a constant and round to integer
Modulo by ConstantPerform modulo operation with a constant denominator

Burst Implementation

Real Burst Matrix Solve Using QR DecompositionCompute the value of x in the equation Ax = B for real-valued matrices using QR decomposition
Real Burst Matrix Solve Using Q-less QR DecompositionCompute the value of X in the equation A'AX = B for real-valued matrices using Q-less QR decomposition
Complex Burst Matrix Solve Using QR DecompositionCompute the value of x in the equation Ax = B for complex-valued matrices using QR decomposition
Complex Burst Matrix Solve Using Q-less QR DecompositionCompute the value of X in the equation A'AX = B for complex-valued matrices using Q-less QR decomposition

Partial-Systolic Implementation

Real Partial-Systolic Matrix Solve Using QR DecompositionCompute value of x in Ax = B for real-valued matrices using QR decomposition
Real Partial-Systolic Matrix Solve Using Q-less QR DecompositionCompute value of X in A'AX = B for real-valued matrices using Q-less QR decomposition
Real Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting FactorCompute value of X in A'AX = B for real-valued matrices with infinite number of rows using Q-less QR decomposition
Complex Partial-Systolic Matrix Solve Using QR DecompositionCompute value of x in Ax = B for complex-valued matrices using QR decomposition
Complex Partial-Systolic Matrix Solve Using Q-less QR DecompositionCompute the value of X in A'AX = B for complex-valued matrices using Q-less QR decomposition
Complex Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting FactorCompute the value of X in A'AX = B for complex-valued matrices with infinite number of rows using Q-less QR decomposition

Burst Implementation

Real Burst QR DecompositionQR decomposition for real-valued matrices
Real Burst Q-less QR DecompositionQ-less QR decomposition for real-valued matrices
Complex Burst QR DecompositionQR decomposition for complex-valued matrices
Complex Burst Q-less QR DecompositionQ-less QR decomposition for complex-valued matrices

Partial-Systolic Implementation

Real Partial-Systolic QR DecompositionQR decomposition for real-valued matrices
Real Partial-Systolic Q-less QR DecompositionQ-less QR decomposition for real-valued matrices
Real Partial-Systolic Q-less QR Decomposition with Forgetting FactorQ-less QR decomposition for real-valued matrices with infinite number of rows
Complex Partial-Systolic QR DecompositionQR decomposition for complex-valued matrices
Complex Partial-Systolic Q-less QR DecompositionQ-less QR decomposition for complex-valued matrices
Complex Partial-Systolic Q-less QR Decomposition with Forgetting FactorQ-less QR decomposition for complex-valued matrices with infinite number of rows

Functions

expand all

fixed.qrFixedpointTypesDetermine fixed-point types for transforming A and R and B to C=Q'B in-place, where QR=A is QR decomposition of A
fixed.qlessqrFixedpointTypesDetermine fixed-point types for transforming A to R in-place, where R is upper-triangular factor of QR decomposition of A, without computing Q
fixed.realQRMatrixSolveFixedpointTypesDetermine fixed-point types for matrix solution of real-valued AX=B and matrix solution using diagonal loading using QR decomposition
fixed.complexQRMatrixSolveFixedpointTypesDetermine fixed-point types for matrix solution of complex-valued AX=B and matrix solution using diagonal loading using QR decomposition
fixed.realQlessQRMatrixSolveFixedpointTypesDetermine fixed-point types for matrix solution of real-valued A'AX=B using QR decomposition
fixed.complexQlessQRMatrixSolveFixedpointTypesDetermine fixed-point types for matrix solution of complex-valued A'AX=B using QR decomposition
fixed.realSingularValueLowerBoundEstimate lower bound for smallest singular value of real-valued matrix
fixed.complexSingularValueLowerBoundEstimate lower bound for smallest singular value of complex-valued matrix
fixed.forgettingFactorCompute forgetting factor required for streaming input data
fixed.forgettingFactorInverseCompute the inverse of the forgetting factor required for streaming input data
fixed.realQuantizationNoiseStandardDeviationEstimate standard deviation of quantization noise of real-valued signal
fixed.complexQuantizationNoiseStandardDeviationEstimate standard deviation of quantization noise of complex-valued signal

Topics

Math Operations

Implement Hardware-Efficient Hyperbolic Tangent

Implement a hardware-efficient hyperbolic tangent.

How to Use HDL Optimized Normalized Reciprocal

This example shows how and when to use the normalizedReciprocal function and the Normalized Reciprocal HDL Optimized block to compute the normalized reciprocal of an input.

Implement Hardware-Efficient Real Divide HDL Optimized

How to use the Real Divide HDL Optimized block.

Implement Hardware-Efficient Complex Divide HDL Optimized

How to use the Complex Divide HDL Optimized block.

Implement HDL Optimized Modulo By Constant

How to use the Modulo by Constant HDL Optimized block.

Linear System Solvers: Burst Implementation

Implement Hardware-Efficient Real Burst Matrix Solve Using QR Decomposition

How to use the Real Burst Matrix Solve Using QR Decomposition block.

Implement Hardware-Efficient Real Burst Matrix Solve Using Q-less QR Decomposition

How to use the Real Burst Matrix Solve Using Q-less QR Decomposition block.

Implement Hardware-Efficient Complex Burst Matrix Solve Using QR Decomposition

How to use the Complex Burst Matrix Solve Using QR Decomposition block.

Implement Hardware-Efficient Complex Burst Matrix Solve Using Q-less QR Decomposition

How to use the Complex Burst Matrix Solve Using Q-less QR Decomposition block.

Linear System Solvers: Partial-Systolic Implementation

Implement Hardware-Efficient Real Partial-Systolic Matrix Solve Using QR Decomposition

How to use the Real Partial-Systolic Matrix Solve Using QR Decomposition block.

Implement Hardware-Efficient Real Partial-Systolic Matrix Solve Using QR Decomposition with Diagonal Loading

How to use the Real Partial-Systolic Matrix Solve Using QR Decomposition Block with diagonal loading.

Implement Hardware-Efficient Real Partial-Systolic Matrix Solve Using Q-less QR Decomposition

How to use the Real Partial-Systolic Matrix Solve Using Q-less QR Decomposition block.

Implement Hardware-Efficient Real Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting Factor

How to use the Real Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting Factor block.

Implement Hardware-Efficient Complex Partial-Systolic Matrix Solve Using QR Decomposition

How to use the Complex Partial-Systolic Matrix Solve Using QR Decomposition block.

Implement Hardware-Efficient Complex Partial-Systolic Matrix Solve Using QR Decomposition with Diagonal Loading

How to use the Complex Partial-Systolic Matrix Solve Using QR Decomposition Block with diagonal loading.

Implement Hardware-Efficient Complex Partial-Systolic Matrix Solve Using Q-less QR Decomposition

How to use the Complex Partial-Systolic Matrix Solve Using Q-less QR Decomposition block.

Implement Hardware-Efficient Complex Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting Factor

How to use the Complex Partial-Systolic Matrix Solve Using Q-less QR Decomposition with Forgetting Factor block.

Matrix Factorizations: Burst Implementation

Implement Hardware-Efficient Real Burst QR Decomposition

How to use the Real Burst QR Decomposition block.

Implement Hardware-Efficient Real Burst Q-less QR Decomposition

How to use the Real Burst Q-less QR Decomposition block.

Implement Hardware-Efficient Complex Burst QR Decomposition

How to use the Complex Burst QR Decomposition block.

Implement Hardware-Efficient Complex Burst Q-less QR Decomposition

How to use the Complex Burst Q-less QR Decomposition block.

Matrix Factorizations: Partial-Systolic Implementation

Implement Hardware-Efficient Real Partial-Systolic QR Decomposition

How to use the Real Partial-Systolic QR Decomposition block.

Implement Hardware-Efficient Real Partial-Systolic Q-less QR Decomposition

How to use the Real Partial-Systolic Q-less QR Decomposition block.

Implement Hardware-Efficient Real Partial-Systolic Q-less QR with Forgetting Factor

How to use the Real Partial-Systolic Q-less QR Decomposition with Forgetting Factor block.

Implement Hardware-Efficient Complex Partial-Systolic QR Decomposition

How to use the Complex Partial-Systolic QR Decomposition block.

Implement Hardware-Efficient Complex Partial-Systolic Q-less QR Decomposition

How to use the Complex Partial-Systolic Q-less QR Decomposition block.

Implement Hardware-Efficient Complex Partial-Systolic Q-less QR with Forgetting Factor

How to use the Complex Partial-Systolic Q-less QR Decomposition with Forgetting Factor block.

Analytically Determine Fixed-Point Data Types for Linear System Solvers and Matrix Factorizations

Determine Fixed-Point Types for QR Decomposition

Use fixed.qrFixedpointTypes to determine fixed-point types for computation of QR decomposition.

Determine Fixed-Point Types for Q-less QR Decomposition

Use fixed.qlessqrFixedpointTypes to determine fixed-point types for computation of Q-less QR decomposition.

Algorithms to Determine Fixed-Point Types for Complex Q-less QR Matrix Solve A'AX=B

Derivation of algorithms for determining fixed-point types for complex Q-less QR matrix solve.

Determine Fixed-Point Types for Complex Q-less QR Matrix Solve A'AX=B

Use fixed.complexQlessQRFixedpointTypes to determine fixed-point types for computation of the complex least-squares matrix equation.

Algorithms to Determine Fixed-Point Types for Complex Least-Squares Matrix Solve AX=B

Derivation of algorithms for determining fixed-point types for complex QR matrix solve.

Determine Fixed-Point Types for Complex Least-Squares Matrix Solve AX=B

Use fixed.complexQRFixedpointTypes to determine fixed-point types for computation of the complex least-squares matrix equation.

Algorithms to Determine Fixed-Point Types for Real Q-less QR Matrix Solve A'AX=B

Derivation of algorithms for determining fixed-point types for real Q-less QR matrix solve.

Determine Fixed-Point Types for Real Q-less QR Matrix Solve A'AX=B

Use fixed.realQlessQRFixedpointTypes to determine fixed-point types for computation of the real least-squares matrix equation.

Algorithms to Determine Fixed-Point Types for Real Least-Squares Matrix Solve AX=B

Derivation of algorithms for determining fixed-point types for real least-squares matrix solve.

Determine Fixed-Point Types for Real Least-Squares Matrix Solve AX=B

Use fixed.realQRMatrixSolveFixedpointTypes to determine fixed-point types for computation of the real least-squares matrix equation.

Compute Forgetting Factor Required for Streaming Input Data

Use fixed.forgettingFactor and fixed.forgettingFactorInverse to compute forgetting factor.

Estimate Standard Deviation of Quantization Noise of Complex-Valued Signal

Use fixed.complexQuantizationNoiseStandardDeviation to estimate standard deviation of quantization noise.

Estimate Standard Deviation of Quantization Noise of Real-Valued Signal

Use fixed.realQuantizationNoiseStandardDeviation to estimate standard deviation of quantization noise.

Featured Examples