Virtualization allows multiple software stacks to run simultaneously on the same processor, which enhances the productivity of the Zynq UltraScale+ MPSoC. The role of virtualization varies from system to system. For some designers, virtualization allows the processor to be kept fully loaded at all times, saving power and maximizing performance. For others systems, virtualization provides the means to partition the various software stacks for isolation or redundancy.
For more information, see System Virtualization in the Zynq UltraScale+ Device Technical Reference Manual (UG1085).
The support for virtualization applies only to an implementation that includes Arm exception level-2 (EL2). Armv8 supports virtualization extension to achieve full virtualization with near native guest operating systems performance. There are three key hardware components for virtualization:
- CPU virtualization
- Interrupt virtualization
- System MMU for I/O virtualization