Skip to main content

Heterogeneous Multi-core Processing Overview

Introduction

Heterogeneous Multi-core Processing (HMP) on Toradex SoMs enables you to pair a high-performance application processor running Linux (Cortex-A) with one or more low-power real-time cores (Cortex-M or Cortex-R, for example). This architecture offloads time-critical or deterministic tasks (e.g., sensor handling, motor control) to the Cortex-M/Cortex-R cores. At the same time, the Cortex-A handles higher-level functions, typically running a fully featured OS (such as Embedded Linux, Torizon, Android, or QNX, among others), enabling both high throughput and real-time responsiveness.

HMP is also known as Asymmetric Multiprocessing (AMP), Asymmetric MCU Clustering, Dual-Core MCU, Domain-specific MCU Islands or Co-processor Offload.

Why Use Heterogeneous Multi-Core Processing

  • Real-Time Performance: Run low-level tasks without the overhead of an operating system.
  • Power Efficiency: While the Cortex-A cores remain in low-power mode, other cores, such as Cortex-M and Cortex-R, can perform tasks, improving the system's overall energy efficiency.
  • Separation of Concerns: Split tasks based on complexity, run critical tasks independent of non-critical functions.
  • Asynchronous Operation: Both cores can run in parallel, processing different tasks concurrently without interrupting each other.

Supported SoCs With HMP

VendorModuleMain Core(s)Alternative Core(s) (MCU)
TIAquila AM698x Cortex-A722x Cortex-R5F
Verdin AM624x Cortex-A531x Cortex-M4F
NXPAquila iMX956x Cortex-A551x Cortex-M7, 1x Cortex-M33
Verdin iMX8M Plus4x Cortex-A531x Cortex-M7F
Verdin iMX8M Mini4x Cortex-A531x Cortex-M4
Verdin iMX932x Cortex-A551x Cortex-M33
Verdin iMX956x Cortex-A551x Cortex-M7, 1x Cortex-M33
SMARC iMX956x Cortex-A551x Cortex-M7, 1x Cortex-M33
Lino iMX931x Cortex-A551x Cortex-M33
OSM iMX932x Cortex-A551x Cortex-M33
Apalis iMX 8QuadMax 12x Cortex-A72, 4x Cortex-A532x Cortex-M4F
Apalis iMX 8QuadXPlus 14x Cortex-A351x Cortex-M4F
Colibri iMX 8QuadXPlus4x Cortex-A351x Cortex-M4F
Colibri iMX7S 21x Cortex-A71x Cortex-M4
Colibri iMX7D 22x Cortex-A71x Cortex-M4
note

For modules with multiple core configuration options (e.g., Verdin TI AM62 available in single, dual, or quad variants), the table above shows the maximum core configuration available for that module. All variants support HMP functionality.

Glossary

  • SDK: Software development kit, usually provides libraries, headers and examples. Both NXP and TI have their own SDKs (MCUXpresso SDK and MCU+ SDK, respectively)
  • U-Boot: The bootloader used on Toradex SoMs; supports commands to load binaries into the Cortex-M/R core, such as ext4load and rproc.
  • RTOS: Real Time Operating Systems are a type of operating system designed to guarantee deterministic, bounded response times for time-critical tasks.
  • RemoteProc: Linux kernel framework to boot and control remote processors (Cortex-M/R) from the main CPU.
  • RPMsg: IPC protocol built on top of RemoteProc for message-based communication between Linux and Cortex-M/R.
  • Shared Memory: Memory region mapped into both domains for fast data exchange.
  • JTAG: Hardware interface for debugging and programming embedded cores.

Common Use Cases

  • Deterministic GPIO/LED control: RTOS owns the GPIO hardware and executes time-critical I/O, while Linux sends control commands via RPMsg, ensuring predictable response times under all system loads.
  • Sensor acquisition on RTOS, processing on Linux: RTOS performs precise, periodic sensor sampling and shares data with Linux, which handles logging, visualization, analytics, and networking.
  • Motor control with Linux-based HMI and networking: RTOS runs real-time control loops (PWM, PID, encoder feedback) while Linux provides user interfaces, connectivity, and system management.
  • Split audio pipeline: RTOS captures and buffers audio with low latency, and Linux performs compression, storage, streaming, and higher-level DSP without risking audio dropouts.
  • Safety watchdog and system supervision: RTOS monitors Linux health and system signals and can reset or isolate Linux to meet functional safety requirements.
  • Secure key storage and cryptographic offload: RTOS owns cryptographic hardware and private keys, exposing secure services to Linux without allowing direct access to secrets.

Getting Started With HMP

Having Trouble?

Please check out our Community Forum for additional support.

Footnotes

  1. Not supported by Toradex 2

  2. Supported through Zephyr 2

Send Feedback!