Xilinx Add-on for MATLAB & Simulink

Design, Simulate and Accelerate Path to Production


Xilinx® Add-on for MATLAB® & Simulink® is a Model-Based Design tool that enables rapid design exploration within the MathWorks Simulink® environment and accelerates the path to production on Xilinx devices through automatic code generation. You can express and iterate through your algorithms using high-level performance-optimized blocks and validate functional correctness through system-level simulations. Add-on for MATLAB® & Simulink® transforms your algorithmic specifications to production-quality implementation through automatic optimizations. This provides a library of performance optimized blocks for design and implementation of algorithms on Xilinx devices totaling 210 HDL, HLS, and AI Engine blocks.

Xilinx® Add-on for MATLAB® & Simulink® is the Unified Model Composer & System Generator – A single tool for:

  • System Generator for DSP (HDL based)
  • Model Composer (HLS based)
  • Model Composer (AI Engine based)
  • Model-based tool for Heterogenous Device

For Versal AI Engine you can create an AI Engine design together by:

  • Use DSP Library Functions
  • Importing AI Engine Kernels
  • Importing AI Engine Graphs
  • Importing HLS Kernels

Key Feature and Benefits

Accelerate Design Iterations

  • High-Level of Abstraction: Algorithm-centric building blocks, with a focus on functionality, provide ease-of-use essential for domain experts to accelerate design exploration.
  • Support for Vectors and Matrices: Enables frame-based algorithm design that saves you the time and effort to move to an intermediate low-level model for implementation.
  • Application-Specific Libraries: Performance-optimized DSP, Computer Vision, Math, and Linear Algebra libraries available as blocks for simulation and high-performance implementation on Xilinx devices.
  • Import synthesizable C/C++ as Custom Blocks: Ability to create your own custom blocks for simulation and code generation provides greater flexibility to design your differentiated algorithms. 
  • Seamless Integration with Simulink: Direct connection with blocks from the Simulink product family enables system-level modeling and simulation and the ability to fully leverage the stimulus generation and data visualization capabilities of Simulink's graphical environment.
  • Integer, Floating and Fixed-point Support: Supports the native floating and integer data types in Simulink and the fixed-point and half data types supported by Vitis HLS.

Transform Algorithm to Architecture

  • Automatic optimizations: Analyses your algorithmic specification within Simulink and performs automatic optimizations to steer towards a micro-architecture that optimizes for throughput, reduces Block RAM utilization, and enables concurrent execution of blocks.
  • Accelerate IP Creation: Transform your simulate-able designs into a RTL IP package that you can use within the Vivado IP Integrator and leverage all the benefits of its plug-and-play IP Integration design environment for complex designs.
  • Extend to System Generator for DSP: Leverage the benefits of Model Composer's ease-of-use and simulation speed, for portions of your design and export the synthesized RTL into your existing System Generator for DSP designs as new custom blocks.
  • Export to Vitis HLS: Advanced feature that provides a link between Simulink's graphical environment to design, simulate and validate your algorithms and Vitis HLS, by automatically generating everything you would need to further optimize your algorithm, including test vectors logged from simulation.
  • User Interface to Map RTL Interfaces:  Easy to use graphical interface to map the inputs and outputs in your design to supported RTL interfaces (AXI4-Lite, AXI4-Stream, AXI4-Stream Video, FIFO, Block RAM) and video formats (AXI4-Stream Video) for implementation.
  • Automatic Test Bench Generation: Automatic logging of test vectors from simulation and generation of test bench to verify functional equivalence between the executable design and generated code.
What's New

In 2020.2, Add-on for MATLAB & Simulink is the Unification of Xilinx Model Composer and System Generator for DSP.

Three inter-connectable domains:

  • RTL ( System Generator for DSP)
  • HLS (Model Composer)
  • AI Engine which is a new domain targetable by the Add-On for MATLAB & Simulink

AI Engine (Model Composer)

  • Imports AI Engine Kernels: C, C++, templates, state encapsulation classes
  • Imports Adaptive Dataflow Graphs: supports templates
  • Gateways between
    • AI Engine and RTL domain
    • AI Engine and HLS kernel domain
  • Accepts location constainst and FIFO insertion.
  • Library contains AI Engine DSP Library blocks
  • Runs SW Emulation and AI Engine Emulation

For more information on the features above, please refer to the Add-on for MATLAB & Simulink

Refer to the Download/Buy Tab for more information on getting access to Add-on for MATLAB & Simulink and try these new features now!

  • Improved Support for Vector Signal Dimensions: Improvements to code generation infrastructure to handle vector [N] signals in the design, resulting in improved performance
  • Constant Block Enhanced for Vector Parameters: Constant block now supports interpreting vectors parameters as 1-D, similar to corresponding Constant block in Simulink library
  • New Example Designs with Optimized DSP Blocks
    • MRI Image Reconstruction with 2D-FFT
    • Low-pass Filter design using FIR Block
    • Image Smoothing filter using FIR Block
  • Enhancements to C/C++ Function Import: Improved error and warning messages displayed in Diagnostic Viewer, enable better troubleshooting of issues with custom code.
  • Customize IP Properties for IP Catalog Export Type: Specify IP Properties including name, version and hardware description language (VHDL or Verilog) for the IP packaged from the synthesized design.
  • Search Capabilities in Device Chooser: Quickly search for parts and boards, based on multiple criteria, using the Device Chooser dialog on the Model Composer Hub block.
  • FIR Block Supports Multi-Channel Processing: Enhancements to the FIR block support processing columns in the incoming signal as independent channels of data for multi-channel filtering operations.
  • Supported MATLAB Versions: R2018a, R2018b, R2019a and R2019b
  • DSP Block Library: New FFT, IFFT and FIR blocks are now available to design and implement signal processing algorithms with Model Composer

  • Enhancements to Throughput Control: Expanded list of blocks supported for Throughput Control. Build designs with supported blocks and control the throughput requirements of the implementation without making any structural changes to the design

  • Additional Blocks that Support Streaming Data : Design and Implement algorithms with high-throughput requirements using an expanded set of blocks that support operations on streaming data. Examples : Look-up Table, Delay, Matrix Multiply, Submatrix etc.

  • Enhanced Complex Support in C/C++ Function Import : Added support for importing functions that use hls::x_complex types as well, in addition to std::complex, expanding the support for complex signals in custom blocks.

  • Enhancements to C/C++ Function Import: Create custom "Source" blocks for your design using the xmcImportFunction feature

  • Improved Support for Row-Matrix and Column-Matrix Signal Dimensions: Improvements to the code generation infrastructure to handle Row-Matrix [Nx1] and Column-Matrix [1xN] signals in the design, resulting in improved performance.

  • Supported MATLAB Versions: R2018a, R2018b and R2019a
  • Throughput Control:  Specify the desired number of data samples processed per clock (a.k.a Super Sample Rate) in order to steer the automatic optimizations in Model Composer to achieve desired throughput without structural modifications to your design.

  • Debug Imported C/C++ Functions during Simulation: Use third-party debuggers to add breakpoints, step through and view intermediate variable values in the C/C++ code  associated to your custom Model Composer blocks, while the Simulink simulation is running

  • Complex Type Support in C/C++ Function Import: Import functions with arguments of type std::complex to create custom Model Composer blocks that can be connected to and simulated with complex signals in your design.

  • Getting Started Examples for C/C++ Function Import: Collection of simple examples for a quick introduction to features and capabilities of importing C/C++ functions as custom Model Composer blocks. Access these examples within the MATLAB Help Browser and use them as a starting point to import your own functions.

  • Math Blocks: New optimized Min, Max and Reshape Row-Major blocks added to the Math Functions sub-library, expanding the breadth of mathematical operations that can be modeled in your designs.

  • Signal Routing Blocks: New Mux and Demux blocks provide better control over routing signals in your designs by combining input signals into a larger output vector signal or splitting an input vector signal into constituent scalar/smaller vector outputs as required.

  • Supported MATLAB Versions: R2017a, R2017b and R2018a
Download / Buy


Add-On for MATLAB & Simulink can be purchased as an add-on license to Vivado Design Edition, Vivado System Edition, Vivado WebPACK Edition and Vitis™ Development Environment. 

To evaluate, you can generate a free 90-day evaluation license at www.xilinx.com/getlicense.


Add-On for MATLAB & Simulink can be additionally selected as a Design Tool and installed through Vivado Installer or Vitis installer.

Recommended (Not Required)

Buy Online From Xilinx

Software Only

Node-Locked vs Floating?