Figure 1
Figure 2
Intel and AMD dominate x86 enterprise servers because of their hardware-assisted virtual machine (HVM) support. VIA Technologies included HVM in its VIA Nano and its latest dual-core VIA Nano X2 (Fig 1). The latest Intel Sandy Bridge family (see “An Embedded Sandy Bridge” at electronicdesign.com) and AMD’s Fusion APU (accelerated processing unit) family (Fig. 2) combine the CPU and GPU (see “APU Targets Embedded Applications” at electronicdesign.com).
The 32-bit and 64-bit Power architecture platforms have supported HVM for quite a while, although like their x86 cousins, the devices on the low end of the spectrum often lack HVM support. The same is true for Arm’s product line. The latest Arm Cortex-A15 includes HVM support, but microcontrollers like the Cortex-M3 lack HVM support (see “Arm Delivers More Multicore Multimedia” at electronicdesign.com).
The lack of HVM at the low end isn’t surprising since the support isn’t free. It takes gates and power. Still, HVM is moving to smaller platforms with demand in embedded devices like smart phones because it supports separation kernels.
Isolating Kernels
Separating operating systems on a single system provides a range of benefits, from processor consolidation to security to support of legacy applications and operating systems. Security is key to its use in smart-phone applications, and legacy support is critical to many environments such as the military where long application lifetimes are common.
Virtualization support is built into all major operating systems such as Linux and its KVM (Kernel-based virtual machine) implementation. Likewise, it is often the central feature for embedded real-time operating systems. Lynuxworks LynxSecure 4.0 is designed to run on the latest Intel Core i5 and i7 processors. Its secure separation kernel isolates multiple operating systems.
Wind River is also supporting the latest generation of Intel Core processors with its Linux and VxWorks operating systems. It additionally announced support for Freescale’s Power-based QorIQ multicore chips (see “Multicore CPU/DSP Combo Targets LTE Basestations” at electronicdesign.com).
GPU Delima
HVM normally refers to processor virtualization, but that isn’t the only piece to the puzzle. Intel and AMD support I/O virtualization (IOV) as well. This allows the virtualization of peripherals such as Ethernet adapters. IOV also permits a single hardware adapter to appear as multiple virtual adapters under the direct control of a virtual machine running on the processor.
A problem arises when when a peripheral doesn’t support virtualization. This is the case with GPUs. It wasn’t much of an issue when GPUs were simply display devices. But these days, they’re taking on supercomputing chores. Likewise, they’re showing up inside processor chips. It appears that this level of virtualization is a ways off yet.
HVM is creeping into more embedded designs as it expands into the lower echelons. Developers will need to understand its implications as well as its advantages, especially when it comes to power and performance management.
Lynuxworks
www.lynuxworks.com
Wind River
www.windriver.com
VIA Technologies
www.via.com.tw