µ-visor is Green Hill Software’s virtualization solution for microcontrollers. It features robust hardware-enforced software separation, multiple-OS support and real-time efficiency to safely and securely consolidate critical workloads on resource-constrained processors.
µ-visor’s scalable and efficient architecture guarantees freedom-from-interference to multiple operating systems running on the same CPU and offers flexible options to fully utilize multiple cores and limited processor resources.
Like other Green Hills products, µ-visor is designed for systems with critical requirements for industry-specific safety and security certifications and it enjoys the powerful support of Green Hills’ advanced integrated development tools.
µ-visor enables the safe and secure consolidation of multiple MCU-based systems onto a single multicore processor, reducing cost, size, and power while at the same time simplifying the system's safety.
Safety and security
µ-visor excels for embedded systems that require critical levels of safety and security, including Automotive (ISO26262 ASIL D), Industrial (IEC61508 SIL 3) and Security (ISO 21434). It is the flexible foundation upon which the designer can safely consolidate hardware and software by simultaneously running multiple virtual machines, each with different levels of criticality, on the same processor.
µ-visor leverages processor features to enforce separation, manage access control and accelerate virtual machine operations. For example, the combination of µ-visor and the Renesas RH850/U2A provide:
- µ-visor’s virtual machines and their operating systems enjoy freedom-from-interference from each other through hardware-enforced separation
- Critical registers are protected and allocated between virtual machines
- Peripherals can be safely shared and protected between virtual machines with a peripheral bus guard
In addition to hardware-enforced separation features, µ-visor offers user-configurable fault management, especially useful for automotive ASIL D certification. Callback functions can be defined for recovery, analysis and control of virtual machines during fault and recovery sequences.
Performance and flexibility
For embedded systems running on resource-constrained microcontrollers, execution efficiency and design flexibility is paramount. To meet this challenge, µ-visor provides three options to best utilize the horsepower of a multicore architecture:
- Dedicated Cores – Dedicate a core to a virtual machine
- Shared Cores – Virtual machines are free to use any core using time slicing
- Foreground/Background – A virtual machine is marked as higher priority and will always take precedence over the other virtual machine
µ-visor provides three options to best utilize the horsepower of a multicore architecture.
µ-visor can simultaneously run multiple operating systems from different suppliers such as AUTOSAR Classic, FreeRTOS, µ-velOSity and home-grown OSes while targeting leading processors RH850/U2A, TriCore and Arm Cortex-R52. This vendor/OS-independent virtualization gives developers greater flexibility for adding new functionality, for decoupling hardware and software and to reuse on other projects.
Additional flexibility and reusability are realized through standards-based communication channels. Applications on different virtual machines can use µ-visor’s inter-process communication (IPC) based on a virtual ethernet API. In addition, a processor’s devices and peripherals can be shared, yielding higher processor utilization.
Example of µ-visor running and protecting multiple operating systems using one or multiple cores on a microcontroller, utilizing hardware-enforced separation. The microcontroller can be stand-alone or part of a larger SoC.
Advanced development tools
Since 1982, Green Hills Software’s advanced development tools have helped developers find and fix bugs faster, maximize processor performance, achieve safety certifications and reduce a project’s time to market. µ-visor leverages these integrated hardware and software tools to create, debug, optimize and deploy their embedded software on multiple operating systems, processors and desktop hosts:
Software Development tools
- MULTI IDE and Green Hills toolchain are qualified to the highest functional safety levels, including ISO 26262 (ASIL D) and IEC 61508 (SIL 4) and EN 50128 (SWSIL 4)
- Green Hills Optimizing Compilers for C, C++, and Embedded C++ generate the fastest and smallest production-quality code on a broad range of processor architectures
- The MULTI IDE includes the multicore debugger for heterogenous cores with OS kernel awareness. Debug kernels, drivers, middleware and applications with a single uniform interface. Other integrated tools are the profiler, simulator, run-time error checking, project builder, editor and much more.
- The kernel-aware debug features give developers a detailed view of kernel objects, such as tasks and semaphores.
The MULTI IDE and debugger give developers control and deep visibility into heterogenous multicore processors, uncovering even the most difficult bugs in minutes.
- TimeMachine revolutionary debugging suite lets you run and step an application back in time to find even the most difficult bugs in minutes
- MISRA C Adherence Wizard for building in code quality at the time of compilation
- DoubleCheck integrated static source code analyzer
- SEI CERT-C rule enforcement
- CFI – Control Flow Integrity
- Integration with MathWorks' Embedded Coder and Simulink for modeling, simulation and PIL testing
Hardware Development tools
- Green Hills Probe V4 for multicore hardware bring-up, low-level debugging and trace-powered analysis tools