Foundation Virtualization Stack

The NVIDIA DRIVE™ AGX Platform Foundation Services framework provides virtualization stack technology that enables running multiple operating system stacks with different security and safety requirements on a single device.
The framework virtualization stack of components are as follows:
Hypervisor kernel
Provides implementation of the Virtualization features specific to the operating system.
Partition Configuration Table
A concatenated set of header files that represents a virtual configuration. The binary image of the partition configuration table is appended to the Hypervisor image. When loaded on the target platform, the concatenated image runs multiple guest OSs.
Partition Loader
Loads the Guest OS.
Monitor Partition
Maintains and monitors the per-guest health using the Watchdog Timer.
Resource Manager Server Partition
Manages the server partitions for the various virtualized component servers.
Boot and Power Manager Processor
Firmware that runs on Cortex R5. During boot, BPMP executes the boot ROM code and controls the SOC boot sequence. After boot, BPMP runs power management functions.
Provides an Audio Server that para-virtualizes the Audio Processing Engine (APE) of the Tegra device.
Allows multiple guests to access the same I2C controller without requiring prior information. Additionally, provides a framework to assign secondaries to one or more guests.
Virtual System Configuration Storage
Manages the storage configuration files that are required for the flashing script to identify the hypervisor and guest partitions that must be flashed.
Security Engine
Enables para-virtualization of the Tegra SoC making it available to the software of a virtual machine through a similar virtualized interface.
Watchdog Timer
A framework that consists of a system-wide WDT monitor service, running in a privileged monitor partition, and one or more WDT clients, each running in a guest partition.
System Manager
Coordinates the ordering of state transition of each partition during a system state transition
Inter-VM Communication Infrastructure
Provides event and data exchange between the operating systems running on top of the hypervisor architecture.
The framework virtualization stack provides automotive designs that support:
Automotive Open System Architecture (AUTOSAR) and Audio Video Bridging (AVB)
Monitoring guest operating systems (OS) and enabling quick recovery
Controlling guest OS access to critical hardware, such as graphics hardware
Early video
Isolating resources between the main CPU complex and external CPU cores
Handling resource partitioning between in-vehicle infotainment (IVI) and cluster stacks
Enabling GPU and display sharing
IVI plus Instrument Cluster (IC)
IVI with Advanced Driver Assistance Systems (ADAS)
Handling resource partitioning between IVI, IC, and ADAS stacks
To support early IVI boot, the framework virtualization stack enables:
Specified functions to be available very early during boot.
Implementation of these functions outside the framework services stack.
Light-weight, early-boot partitions with full access to system resources and I/O.
Loading and running in parallel to the operating system loading and initialization.
Booting without complicated I/O sharing and handover procedures.
Using the same API functionality during runtime and early boot for better quality and a smaller footprint.

Virtualization Partition Configuration Capabilities

With the foundation virtualization stack, each guest OS runs in a dedicated partition that defines the system resources available to the operating system. Partitions are configured using the Partition Configuration Table (PCT). The PCT is defined by a set of header files that specify the properties of a virtual configuration.
The DRIVE Development Platform Foundation package virtualization solution is pre-configured to meet most guest OS requirements and configurations.