Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

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

Overview


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 Getting 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



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 Viability: Unsupervised AMP
  • No labels