Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The purpose of this page is to give a high level overview of the Xen Hypervisor as it applies to Xilinx devices. 

Table of Contents

Table of Contents
excludeTable of Contents

...


Xen is a type-1 Hypervisor defined, maintained and provided to the open source community by the Xen Project. Xilinx actively contributes code to the Xen Project to provide Zynq UltraScale+ MPSoC platform support as well as key enhancements which benefit Xilinx customer use-cases.

Xen allows multiple instances of operating system(s) or bare-metal applications to execute on Zynq UltraScale+ MPSoC. Additional information on the Xen hypervisor can be found at the Xen Project Software OverviewGetting Started page.

Xilinx provides within the PetaLinux Tools and also in our Git tree, core elements and example designs to enable usage of Linux + bare-metal system configurations across the processing cores of Zynq UltraScale+ MPSoC. Key components of these example designs are described below in order to assist our customers to configure, build and deploy these basic configurations and to also identify current functionality gaps which may need to be further addressed within the customer's final system architecture.

One Linux DomU + two Bare-Metal Applications


Linux Dom0 with custom apps + three Bare-Metal Applications


Two Linux DomU + one Bare-Metal Application


Three Linux DomU


Xen-Based-System Feature Summary

Xilinx provides reference designs which include core capabilities for Xen-based systems. The table below lists important system features and their status under native Linux (no hypervisor), Linux Dom0 (on Xen), and Linux DomU (on Xen).

Features that are not listed, or indicated as "Roadmap" below are not currently supported by Xilinx.

FeatureNative LinuxLinux Dom0Linux DomUNotes
Power Management – various functionsYes2018.32018.3As of 2017.3, some functionality included in Xen
Not fully featured or tested
See Xen sources
FPGA_manager (write once)YesYesRoadmapSee: FPGA Manager
FPGA_manager (write multiple)2018.1Target: 2018.1Roadmap
Partial Reconfiguration2018.2 (non-secure) & 2018.3 (secure) .RoadmapRoadmap
RPU life cycle managementYesRoadmapRoadmap
Device shared memory between DomU and RPUYes2018.12018.1
OpenAMP RPMsg comms APU/RPUYesRoadmapRoadmap
Device shared memory DomU Linux to DomU Bare-metalN/A2018.12018.1See: Xen Hypervisor Internals
Xen Shared memory
Shared cacheable memory DomU to DomUN/ARoadmapRoadmap
GPU UsageYesRoadmapRoadmap
PL IP UsageYesUsable without limitation if the Xilinx AXI Sideband Format Utility IP is added to the design.

Also usable without the AXI Sideband Format utility within the following conditions:
  • Only one PL master IP communicating with guest
  • PL master IPs must use guest-dedicated AXI port(s)
Usable without limitation if the Xilinx AXI Sideband Format Utility IP is added to the design.

Also usable without the AXI Sideband Format utility within the following conditions:
  • Only one PL master IP communicating with guest
  • PL master IPs must use guest-dedicated AXI port(s)
See: Xen and PL Masters
PCIe Pass-through to DomUN/ARoadmapRoadmap
Warm Reset/RestartYes - under explicit use-casesRoadmapRoadmap
Linux Application DebugYes (via TCF)Yes (via JTAG)Yes (via JTAG)https://www.xilinx.com/html_docs/xilinx2017_3/SDK_Doc/SDK_concepts/concept_xen-aware_debug.html

Build kernel with debug symbols enabled.
Bare-metal Xen Paravirtual ConsoleN/AN/AN/A - see noteBare-metal DomU has access to Xen PV Console


Using Xen Hypervisor with Xilinx Releases

2020.1

Building Xen Hypervisor with Petalinux 2020.1

...


Xilinx Release

Wiki page

2020.1Building Xen Hypervisor with Petalinux 2020.1

2019.2

...

...

...

...

...

...

2017.3

...

...

...

2017.1

...

...

...


Additional Commercial Support and Professional Services

Xilinx recommends our Premier Partner: DornerWorks to customers seeking support beyond the example designs described above. DornerWorks has worked with customers to solve complex system problems including new OS support, frontend drivers, performance optimization, DMA accesses, and inter-OS communications.


Related Links

Non-hypervisor AMP Options and Viabiilty: Unsupervised AMP