boards/arm/mps4/doc/index.rst
.. zephyr:board:: mps4
Overview
The MPS4 board configuration is used by Zephyr applications that run on the MPS4 board.
Corstone-315 FVP/Corstone-320 FVP are Arm reference subsystem for
secure System on Chips containing an Armv8.1-M Cortex-M85 processor,
LCM, KMU and SAM IPs. Corstone-320 FVP have Ethos-U85 while
Corstone-315 FVP have a Ethos-U65 neural network processor.
They are available free of charge for Linux and Windows systems.
The FVPs have been selected for simulation since they provide access to the
Ethos-U65/Ethos-U85 NPU, which is unavailable in QEMU or other simulation platforms.
.. tabs::
.. tab:: MPS4 Corstone-315 (FVP)
The MPS4 FVP is an SoC with Cortex-M85 architecture. Zephyr provides support for building for both Secure and Non-Secure firmware.
The BOARD options are summarized below:
+-------------------------------+-----------------------------------------------+
| BOARD | Description |
+===============================+===============================================+
| mps4/corstone315/fvp | For building Secure (or Secure-only) firmware |
+-------------------------------+-----------------------------------------------+
| mps4/corstone315/fvp/ns | For building Non-Secure firmware |
+-------------------------------+-----------------------------------------------+
FPGA Usage: - N/A.
FVP Usage:
- To run with the FVP, first set environment variable ARMFVP_BIN_PATH before using it. Then you can run it with west build -t run.
.. code-block:: bash
export ARMFVP_BIN_PATH=/path/to/fvp/directory
west build -b {BOARD qualifier from table above} samples/hello_world -t run
To run the Fixed Virtual Platform simulation tool you must download "FVP model for the Corstone-315 MPS4" from Arm and install it on your host PC.
QEMU Usage: - N/A.
.. tab:: MPS4 Corstone-320 (FVP)
The MPS4 FVP is an SoC with Cortex-M85 architecture. Zephyr provides support for building for both Secure and Non-Secure firmware.
The BOARD options are summarized below:
+-------------------------------+-----------------------------------------------+
| BOARD | Description |
+===============================+===============================================+
| mps4/corstone320/fvp | For building Secure (or Secure-only) firmware |
+-------------------------------+-----------------------------------------------+
| mps4/corstone320/fvp/ns | For building Non-Secure firmware |
+-------------------------------+-----------------------------------------------+
FPGA Usage: - N/A.
FVP Usage:
- To run with the FVP, first set environment variable ARMFVP_BIN_PATH before using it. Then you can run it with west build -t run.
.. code-block:: bash
export ARMFVP_BIN_PATH=/path/to/fvp/directory
west build -b {BOARD qualifier from table above} samples/hello_world -t run
To run the Fixed Virtual Platform simulation tool you must download "FVP model for the Corstone-320 MPS4" from Arm and install it on your host PC. This board has been tested with version 11.27.25 (Sep 24 2024).
QEMU Usage: - N/A.
.. note::
mps4/corstone315/ mps4/corstone320 without the variant name is not a valid qualifier.mps4/corstone315/fvp/ns/ mps4/corstone320/fvp/ns variant needs latest upstream TF-M release since Zephyr's current
TF-M doesn't support Corstone-315 FVP yet.Hardware
No H/W available yet, only ARMFVP simulated board variants are supported for now.
.. zephyr:board-supported-hw::
The MPS4 has six UARTs. The Zephyr console output by default, uses UART0.
Serial port 0 on the Debug USB interface is the MCC board control console.
Serial port 1 on the Debug USB interface is connected to UART 0.
Serial port 2 on the Debug USB interface is connected to UART 1.
Serial port 3 on the Debug USB interface is connected to UART 2.
.. Programming and Debugging:
Programming and Debugging
You can build applications in the usual way. Here is an example for
the :zephyr:code-sample:hello_world application with Corstone-315.
.. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: mps4/corstone315/fvp :goals: run
Run with FVP and you should see the following message:
.. code-block:: console
Hello World! mps4
You can build applications in the usual way. Here is an example for
the :zephyr:code-sample:hello_world application with Corstone-320.
.. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: mps4/corstone320/fvp :goals: run
Run with FVP and you should see the following message:
.. code-block:: console
Hello World! mps4
For more details refer to:
Corstone SSE-315 Reference Guide_Corstone SSE-320 Reference Guide_Cortex M85 Generic User Guide_Arm Corstone-320 Reference Package Technical Overview_Arm MPS4 FPGA Prototyping Board Technical Reference Manual_.. _Corstone-315 FVP: https://developer.arm.com/tools-and-software/open-source-software/arm-platforms-software/arm-ecosystem-fvps
.. _Corstone-320 FVP: https://developer.arm.com/tools-and-software/open-source-software/arm-platforms-software/arm-ecosystem-fvps
.. _Corstone SSE-315 Reference Guide: https://developer.arm.com/documentation/109395/0000
.. _Corstone SSE-320 Reference Guide: https://developer.arm.com/documentation/109760/0000/
.. _Cortex M85 Generic User Guide: https://developer.arm.com/documentation/101924/latest
.. _Arm Corstone-320 Reference Package Technical Overview: https://developer.arm.com/documentation/109761/0000/
.. _Arm MPS4 FPGA Prototyping Board Technical Reference Manual: https://developer.arm.com/documentation/102577/0000/