Hardware Watchdog Circuit for Virtual Machine Monitoring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In real-time embedded systems with virtualization on multicore SoCs, the current software-based watchdog timer solutions face limitations in response time and overhead, failing to meet real-time criteria due to software handling of watchdog counters.
Innovation Solution
A watchdog circuit with hardware-based counters that interleave with virtual machines at hardware memory, allowing the hardware to handle watchdog timer functionality independently of virtual machine software, reducing software overhead and improving response times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If software-based watchdog timer is used to monitor virtual machines, then the system can handle multiple virtual machines with a single watchdog timer, but the response time increases and real-time criteria cannot be met due to software handling overhead
Solution Approach 1:
The patent replaces the software-based watchdog timer with a hardware-based watchdog timer circuit. This substitution eliminates the software handling overhead that caused delays, allowing the system to meet real-time criteria while monitoring multiple virtual machines. The hardware circuit operates independently and concurrently with the virtual machines, providing deterministic response times.
Solution Approach 2:
The patent introduces a hardware memory as an intermediary between the hardware watchdog timer and the virtual machines. The watchdog timer monitors virtual machines by accessing their states through this shared hardware memory interface, enabling monitoring without direct software intervention. This intermediary allows the watchdog to operate at hardware speed while still tracking multiple virtual machine states.
2Reliability
If software handles watchdog counters for each virtual machine, then monitoring can be implemented, but system overhead increases leading to failure to meet real-time criteria
Solution Approach 1:
The patent replaces software-based watchdog counter management with a dedicated hardware watchdog timer circuit. This hardware circuit automatically manages timing and monitoring functions, eliminating the complex software handlers that increased system overhead. The hardware implementation provides reliable temporal monitoring with minimal system resource consumption.
Solution Approach 2:
The hardware watchdog timer is designed to operate autonomously, automatically monitoring virtual machines and generating alerts or reset signals when time limits are exceeded. This self-service capability eliminates the need for software handlers to continuously check and manage watchdog counters, reducing system overhead while maintaining reliable monitoring.
3Productivity
If a single watchdog timer is used per core with virtualization, then resource utilization is improved, but response time deteriorates due to software-based handling
Solution Approach 1:
The patent replaces the software-based watchdog timer with a hardware-based watchdog timer circuit that operates independently of the virtualization software. This hardware circuit provides fast, deterministic response times while still supporting multiple virtual machines through shared hardware memory access, thus maintaining high resource utilization without sacrificing response speed.
Data Source
AI summary
A watchdog circuit for monitoring a plurality of virtual machines provided by one core of a plurality of cores. The watchdog circuit may include a first memory portion, a second memory portion, and a control logic configured to count a number of pulses, to, when starting the watchdog circuit, store a global watchdog counter value in the first memory portion, and to store a local counter value for each virtual machine of the one or more virtual machines in the second memory portion, and, after a predefined number of pulses, to modify the global watchdog counter value and the local counter values, and, if the global watchdog counter value fulfills a predefined global watchdog reference criterion or any of the local watchdog counter values fulfills a predefined local watchdog reference criterion, to output an error signal.


