Deploy a Zephyr-based machine learning application on Arm Corstone-320 MPS4 with ExecuTorch
Introduction
Set up the Zephyr and ExecuTorch development environment
Build and run a machine learning application on the Corstone-320 MPS4 platform
Next Steps
Deploy a Zephyr-based machine learning application on Arm Corstone-320 MPS4 with ExecuTorch
Who is this for?
This is an introductory topic for embedded software developers who want to deploy a Zephyr-based ML Application on the Arm Corstone-320 MPS4 Platform with ExecuTorch.
What will you learn?
Upon completion of this Learning Path, you will be able to:
- Set up a Zephyr and ExecuTorch development environment for Corstone-320 MPS4.
- Quantize and export a PyTorch model for Ethos-U85 neural processing unit (NPU) delegation.
- Configure and build the Zephyr `hello-executorch` application for Corstone-320 MPS4.
- Run the application on the MPS4 board and verify machine learning (ML) inference through UART output.
Prerequisites
Before starting, you will need the following:
- Basic familiarity with embedded C programming
- Basic familiarity with machine learning concepts
- A Zephyr workspace and board target using Zephyr version V4.3.0 that you prepared by completing the Port Zephyr RTOS and run applications on the Arm Corstone-320 MPS4 platform Learning Path
- A Corstone-320 MPS4 FPGA development board
- A Linux development environment, such as Ubuntu 22.04 or later
Summary
This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
.pte file for Ethos-U85 delegation. Finally, you’ll port a sample application, configure SRAM-only NPU regions, build the application and run it on the MPS4, and verify inference over UART.Frequently asked questions
These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
mps4/corstone320/fpga board target with Zephyr version V4.3.0.ethosu_config_select() function in ethosu_device_u85.c to set the QCONFIG and REGIONCFG registers for Ethos-U85. Your override must keep the command stream, weights, and scratch data in SRAM for the SRAM-only model..pte model artifact add_u85_1024_sram_only.pte. Pass it to the Zephyr build with the -DET_PTE_FILE_PATH flag, as shown in the build command.hello-executorch model delegate flow and inference output over UART, followed by SUCCESS: Program complete, exiting.