DSP Builder for Intel® FPGAs (Advanced Blockset): Handbook

ID 683337
Date 9/30/2024
Public
Document Table of Contents

6.14.19. QR Decompostion

This reference design is a complete linear equations system solution that uses QR decomposition.

The input of the design is a system matrix A [n × m] and input vector.

The reference design uses the Gram-Schmidt method to decompose system matrix A to Q and R matrices, and calculates the solution of the system by completing backward substitution.

The reference design is fully parametrizable—system dimensions n and m, and the processing vector size, which defines the parallelization ratio of the dot product engine. This design uses single-precision Multiply and Add blocks that perform most of the floating-point calculations to implement a parallel dot product engine. The design uses a processor, which executes a fixed set of microinstructions and generates operation indexes, to route different phases of the calculation through these blocks. The design uses for-loop macro blocks, which allow very efficient, flexible and high-level implementation of iterative operations, to implement the processor.

This design uses the Run All Testbenches block to access enhanced features of the automatically-generated testbench. An application-specific m-function verifies the simulation output, to correctly handle the complex results and the numerical approximation because of the floating-point format.

The model file is demo_qrd.mdl.