Hardware Support

ARM Cortex-M CMSIS Library Support from DSP System Toolbox

Optimized C code generation from MATLAB or Simulink for ARM® Cortex®-M processor based systems using CMSIS DSP library.

Explore gallery (2 images)

The DSP System Toolbox™ Support Package for ARM® Cortex®-M Processors, when paired with Embedded Coder®, enables you to generate optimized C code from MATLAB® System objects™ or Simulink® blocks. This is done for ARM Cortex-M processor-based systems using the Cortex Microcontroller Software Interface Standard (CMSIS) DSP library. Benefits include an immediate increase in performance when compared to standard C code generation.

This support package extends other MathWorks and ARM Cortex-M code generation solutions to include optimized CMSIS DSP functions in the generated code. This code replacement is functional from both MATLAB® System objects™ or Simulink® blocks within DSP System Toolbox.

By installing the support package, you can automatically use ARM Cortex-M CMSIS optimized routines for all generated code from supported System objects or blocks.

The Cortex Microcontroller Software Interface Standard (CMSIS) DSP library includes optimized functions for fundamental signal processing algorithms from MATLAB System objects or Simulink blocks. These include transforms, data processing, filtering, statistics, and standard math operations such as:

  • FIR, biquad, lattice MA
  • Mulitrate: FIR decimation/interpolation
  • Adaptive filtering: LMS
  • Mean, RMS, variance, standard deviation
  • Convolution, correlation
  • Multiplication, abs, cosine

For a complete list and detailed information, refer to the documentation installed with the DSP System Toolbox Support Package for ARM Cortex-M.

The ARM Cortex-M CMSIS support from DSP System Toolbox, when paired with ARM Cortex-M Support from Embedded Coder, enables you to perform code verification and validation. This can be done with processor-in-the-loop (PIL) tests and code optimization using the external mode for the Simulink workflow. The STMicroelectronics® STM32F4-Discovery board can further extend that solution. It has a prototyping platform that enables design validation for that particular hardware, and it creates a complete end-to-end workflow.

Many embedded systems with complex DSP algorithms that are ARM Cortex-M based (such as microcontrollers, audio, or sensors) will benefit from the speed at which you can develop your system. You can quickly deploy a fully integrated executable by converting your MATLAB code or Simulink model into optimized C code linked to the CMSIS library.

This DSP System Toolbox support package offers built-in optimization support for specific DSP filters in the CMSIS library. MathWorks Consulting Services is available to help with extensions to other filters or libraries.

Related Hardware Support Views: Aerospace and Defense, ARM, Automotive, Communication Infrastructure, Computer Electronics, Consumer Electronics, C ∕ C++ Code Generation, Digital Signal Processing, DSP System Toolbox, Embedded Coder, Embedded Systems, IEC 61508, ISO 26262, MathWorks Supported, MATLAB Product Family, Medical Devices, Simulink Product Family, STMicroelectronics, Support Package Installer Enabled

Ready to install?

Before installing the support package, confirm you have the correct setup. View system requirements and installation options.

Get support package



Note: Simulink and Simulink Coder are only required for Simulink workflows. 

Support Package


Support Package Installer installs this support package. To start the installer, go to the MATLAB toolstrip and click Add-Ons > Get Hardware Support Packages.

Get support package



  • Any ARM Cortex-M processor families compatible with Embedded Coder




Don't see the hardware you're looking for?