Virtual PCI Device Synchronization for Multi-OS Automation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for synchronizing processes across different virtual runtime environments in automation technology, such as those using programmable logic controllers and HMI devices, are limited by the need for proprietary changes and lack precision in timing, particularly when using virtual data networks and synchronization strategies like events, mutexes, and semaphores.
Innovation Solution
The implementation of a virtualization controller that instantiates virtual PCI devices for each runtime environment, allowing device drivers to access shared memory for synchronization, enabling the use of synchronization objects like mutexes, semaphores, and events without impairing real-time capabilities, and supporting direct access to the interrupt controller for efficient event triggering.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If proprietary changes are made to operating systems and applications to achieve synchronization, then synchronization capability is improved, but device complexity and ease of operation deteriorate
Solution Approach 1:
The patent introduces a virtualization controller as an intermediary layer between the hardware platform and multiple operating systems. This controller provides standardized virtual device interfaces that enable synchronization without requiring proprietary changes to the operating systems or applications themselves, thus resolving the contradiction between synchronization capability and device complexity
Solution Approach 2:
The patent segments the synchronization functionality into a separate virtualization layer, isolating it from the operating systems. This allows each operating system to remain standard and unmodified while still achieving synchronization through the virtualized interface, reducing overall system complexity
2Ease of operation
If virtual data networks are used for synchronization, then ease of operation is improved, but measurement precision deteriorates
Solution Approach 1:
The patent creates virtual copies of physical PCI devices within the virtualized environment. These virtual devices provide standardized interfaces that are easy to operate while maintaining precise timing characteristics by closely emulating the behavior of physical hardware devices, thus resolving the contradiction between ease of operation and timing precision
3Reliability
If processes exit the virtualization controller for synchronization, then synchronization capability is improved, but productivity deteriorates
Solution Approach 1:
The patent merges the synchronization functionality directly into the virtualization controller, allowing processes to perform synchronization operations while remaining within their virtual runtime environments. This eliminates the need for processes to exit the virtualization controller, maintaining both synchronization accuracy and execution efficiency
4Reliability
If separate virtual machines are used to decouple processes, then reliability is improved, but device complexity increases
Solution Approach 1:
The patent implements a universal virtualization controller that can manage multiple virtual runtime environments and provide synchronization services across different operating systems through standardized interfaces. This multi-functional approach reduces the complexity of configuring and managing separate virtual machines while maintaining process decoupling and reliability
Data Source
Figure 1
AI summary
The method involves executing two processes (AW1, AW2) on operating systems (GPOS, RTOS) of virtual machines, and providing a hypervisor (VMM) for management of the virtual machines. Virtual PCI apparatuses (V-PCI1, V-PCI2) are established by the hypervisor for the virtual machines. Device drivers (DR1, DR2) for access to the respective virtual apparatuses are installed and started in the operating systems. Processes to be synchronized are allowed to interchange synchronization data with each other by the access on the device drivers over the virtual apparatuses. An independent claim is also included for a hardware platform for synchronizing two processes.