Developing with coprocessors

Caution

The High-Performance Framework (HPF) support in the nRF Connect SDK is experimental and is limited to the nRF54L15, nRF54LM20, nRF54LC10A, and nRF54LV10A devices.

VPR coprocessors can be primarily used to perform one of the following tasks:

  • As an additional core in a multicore system using Zephyr in multithreaded mode (see the nRF54L and nRF54H20 devices pages). In this mode, the VPR core acts as a standard CPU and can be used for either of the following purposes:

    • Extra performance - Offload compute-heavy tasks from the application core to the Fast Lightweight Processor (FLPR) core to increase the processing capacity available to the application.

    • Power optimization - Move simple, low-duty-cycle tasks to the PPR (Peripheral Processor) core so that the application core can stay idle or enter a low-power state for longer periods. The PPR core runs in a low-power domain, so it uses significantly less power for these tasks than the application core. For an example, see the VPR offloading sample.

  • As a peripheral emulator on the FLPR core, using one of the following methods depending on the use case:

    Note

    In these usage modes, it is important to clearly differentiate between the Soft Peripheral and HPF solutions. Soft Peripherals serve as a direct replacement for hardware peripherals, offering guaranteed performance. In contrast, the HPF allows you to accelerate protocol operations, but performance depends on your implementation. Nordic Semiconductor recommends using the Soft Peripheral solution if it meets your product’s requirements.

Peripheral emulation is only supported on the FLPR core, not on the PPR core. Both HPF and Soft Peripherals rely on the real-time peripherals of the FLPR core: VPR IO (VIO) and VPR TIMER (VTIM). These peripherals provide the cycle-accurate GPIO control and timing required to emulate serial communication peripherals in software.

The following table outlines the main differences between the usage modes. For detailed comparison see the Introduction to Soft Peripherals and High-Performance Framework page.

Main differences between usage modes

Comparison category

Zephyr application

High-Performance Framework (HPF)

Soft Peripherals

Overview

Comprehensive Zephyr application with full feature access.

Bare-metal build from source featuring real-time I/O capabilities.

Custom binary that emulates a hardware peripheral.

Advantages

Full access to Zephyr’s capabilities including drivers, libraries, and OS primitives.

Enables custom protocol support with optimized execution latency and minimized code footprint.

  • Pre-validated product, fully compliant with the simulated hardware peripheral specifications.

  • Compatible with higher layer driver.

Limitations

Larger code size and higher execution latency.

Requires development of custom code.

Provided as a binary making modifications impossible.

Build system

Built from source using Zephyr’s sysbuild.

Built from source using Zephyr’s sysbuild.

Custom HEX file loaded by the application core. VPR is exposed to build system. Only the GPIO ports and pins utilized by the VPR are configured within an overlay.

Inter-processor communication

Zephyr’s IPC service or mbox API.

Zephyr’s IPC service or mbox API.

Managed through the peripheral driver API.

Work offloading

Supports any task, including those requiring Zephyr libraries.

Handles simple data pre-processing or post-processing based on specific protocol needs.

Not supported.

Maturity level

Experimental (nRF54L15, nRF54LM20, nRF54LC10A, nRF54LV10A, and nRF54H20)

Experimental (nRF54L15, nRF54LM20, nRF54LC10A, and nRF54LV10A)

Supported (see Soft peripherals documentation for the list of supported devices)

Example use case

  • Uses VPR as a standard CPU to run part of the application or to offload compute-heavy tasks from the application core, increasing overall processing capacity.

  • Uses VPR (typically PPR) to run simple background tasks with minimal power consumption (see the VPR offloading sample).

Develops custom protocol emulators.

Replaces conventional hardware peripherals.