Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs
A newer version of this document is available. Customers should click here to go to the newest version.
Visible to Intel only — GUID: dqu1672366391031
Ixiasoft
Visible to Intel only — GUID: dqu1672366391031
Ixiasoft
3.5.3.3. Virtualization
- A hypervisor, running in EL2, that is responsible for switching between virtual machines. A virtual machine is comprised of non-secure EL1 and non-secure EL0.
- A number of guest operating systems, that each run in non-secure EL1, on a virtual machine
- For each guest operating system, applications that usually run in non-secure EL0 on a virtual machine
- Virtual values of a small number of identification registers. A read of one of these registers by a guest OS or the applications for a guest OS returns the virtual value.
- Trap various operations, including memory management operations and accesses other registers. A trapped operation generates an exception that is taken to EL2.
- Route interrupts to:
- The current guest OS
- A guest OS that is not currently running
- The hypervisor
- Stage 1 maps the virtual address (VA) to an intermediate physical address (IPA). This translation is managed at EL1, usually by a guest OS. The guest OS believes that the IPA is the physical address (PA).
- Stage 2 maps the IPA to the PA. This translation is managed at EL2. The guest OS might be completely unaware of this stage. For more information on the translation regimes, see the System Memory Management Unit chapter.
- Hypervisor call (HVC) exception
- Traps to EL2
- All of the virtual interrupts:
- Virtual SError
- Virtual IRQ
- Virtual FIQ
The Cortex* -A76 core contains virtualization registers that allow you to configure translation tables, hypervisor operations, exception levels, and virtual interrupts. For more information, please refer to the Arm* Cortex* -A76 Core Technical Reference Manual, Revision r4p1 .