Arm FVP BaseR AEMv8-R AArch32
Overview
This board configuration uses Armv8-R AEM FVP [1] to emulate a generic Armv8-R [2] 32-bit hardware platform.
Fixed Virtual Platforms (FVP) are complete simulations of an Arm system, including processor, memory and peripherals. These are set out in a “programmer’s view”, which gives you a comprehensive model on which to build and test your software.
The Armv8-R AEM FVP is a free of charge Armv8-R Fixed Virtual Platform. It supports the latest Armv8-R feature set. Please refer to FVP documentation page [3] for more details about FVP.
To Run the Fixed Virtual Platform simulation tool you must download “Armv8-R AEM FVP” from Arm developer [1] (This might require the user to register) and install it on your host PC.
Hardware
Supported Features
The following hardware features are supported:
Interface |
Controller |
Driver/Component |
---|---|---|
GICv3 |
on-chip |
interrupt controller |
PL011 UART |
on-chip |
serial port |
Arm GENERIC TIMER |
on-chip |
system clock |
The kernel currently does not support other hardware features on this platform.
When FVP is launched with -a, --application FILE
option, the kernel will be
loaded into DRAM region [0x0-0x7FFFFFFF]
. For more information, please refer
to the official Armv8-R AEM FVP memory map document [4].
Devices
System Clock
This board configuration uses a system clock frequency of 100 MHz.
Serial Port
This board configuration uses a single serial communication channel with the UART0.
Programming and Debugging
Environment
First, set the ARMFVP_BIN_PATH
environment variable before building.
Optionally, set ARMFVP_EXTRA_FLAGS
to pass additional arguments to the FVP.
export ARMFVP_BIN_PATH=/path/to/fvp/directory
Programming
Use this configuration to build basic Zephyr applications and kernel tests in the Arm FVP emulated environment, for example, with the Synchronization Sample:
# From the root of the zephyr repository
west build -b fvp_baser_aemv8r_aarch32 samples/synchronization
This will build an image with the synchronization sample app.
Then you can run it with west build -t run
.
Debugging
Refer to the detailed overview about Application Debugging.