ARM Cortex-M Support from Embedded Coder

Generate code optimized for Cortex-M processors

MATLAB Coder™, Simulink Coder™, and Embedded Coder® generate ANSI®/ISO® C/C++ code that can be compiled and executed on ARM® Cortex®-M processors. Embedded Coder lets you easily configure the code generated from MATLAB® and Simulink® algorithms to control software interfaces, optimize execution performance, and minimize memory consumption.

The ARM Cortex-M processor families compatible with Embedded Coder ANSI/ISO C-code generation include:

Cortex– M7

In addition to ANSI/ISO C, Embedded Coder provides processor-optimized code for the above ARM Cortex-M processors using Cortex Microcontroller Software Interface Standard (CMSIS) for basic math operations. You can perform code verification using PIL tests using the supported ARM Cortex-M compiler and debugger.

Embedded DSP:

ARM Cortex-M Support from Embedded Coder also enables you to generate optimized C code from MATLAB® System objects™ or Simulink® blocks from DSP system toolbox. 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.

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 documentation here.
This support package extends other MathWorks and ARM Cortex-M code generation solutions to generate optimized code for select CMSIS DSP libraries using equivalent DSP System Toolbox filters in Simulink such as FIR and FFT. Furthermore, with the Embedded Coder support package for STMicroelectronics® STM32F4-Discovery board, on-target rapid prototyping of Simulink models using the board’s peripheral devices and timers can be performed. This enables a full workflow for Model-Based Design of STMicroelectronics Discovery board. For an example, refer to Verify FIR Filter on ARM Cortex-M Processor.

Platform and Release Support

See the hardware support package system requirements table for current and prior version, release, and platform availability.

View enhancements and bug fixes in release notes.

Related Hardware Support Views: ARM, Automotive, Control Systems, C ∕ C++ Code Generation, Embedded Coder, Embedded Systems, IEC 61508, Industrial Automation and Machinery, ISO 26262, MathWorks Supported, MATLAB Product Family, Medical Devices, Power Electronics Control Design, Signal Processing, 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




Support Package


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

Get support package



Supported ARM Cortex-M Processors



Supported Version of The ARM Cortex Microcontroller Software Interface Standard (CMSIS)

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