Bare-Metal Software Stack - 2020.2 English

Versal ACAP System Software Developers Guide (UG1304)

Document ID
Release Date
2020.2 English

Xilinx® provides a bare-metal software stack as part of the Vitis™ tools. The standalone software includes a simple, single-threaded environment that provides project domains such as standard input/output, and access to processor hardware features. The included board support packages (BSPs) and included libraries can be configured to provide the necessary functionality with the least overhead. You can locate the standalone drivers at the following path:

<Xilinx Installation Directory>\Vitis\<version>\data\embeddedsw\XilinxProcessorIPLib\drivers

You can locate libraries in the following path:

<Xilinx Installation Directory>\Vitis\<version>\data\embeddedsw\lib\sw_services

The following figure illustrates the bare-metal software stack in the APU.

Figure 1. Bare-Metal Software Development Stack
Note: The software stack of libraries and drivers layer for bare-metal in the RPU is same in the APU.

The bare-metal stack key components include:

  • Software drivers for peripherals including core routines needed for using the Arm® Cortex™-A72, and the Cortex-R5F processors in the PS, and MicroBlaze™ processors in the PL.
  • bare-metal drivers for PS peripherals and optional PL peripherals.
  • Standard C libraries: libc and libm, based on the open source Newlib library, ported to the Cortex-A72, Cortex-R5F, and the MicroBlaze processors.
  • Additional middleware libraries that provide networking, file system, and encryption support.
  • Application examples include test applications.