I/O Virtualization Device for Multi-Computer Address Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional I/O systems are designed to operate within a single computer's address space, preventing I/O device sharing between multiple computers and requiring changes to operating systems and device drivers to facilitate sharing.
Innovation Solution
An I/O virtualization system that creates a unique address space for the I/O device, maps this space onto the address spaces of multiple computers, and allocates memory and interrupt resources separately, allowing for the sharing of I/O devices without modifying existing operating systems or device drivers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If an I/O device is allocated to a single computer, then the device can operate reliably within a dedicated address space, but the device cannot be shared between multiple computers
Solution Approach 1:
The patent introduces an I/O virtualization device as an intermediary component between multiple computers and the I/O device. This virtualization device maintains a configuration register that stores address space mapping information, acting as a mediator that translates address requests from multiple computers to the single I/O device, thereby enabling sharing without direct complexity in each computer system
Solution Approach 2:
The patent segments the address space by creating separate address space mappings for each computer that accesses the I/O device. The configuration register is divided into multiple fields, each storing mapping information for a specific computer's address space, allowing independent management of each computer's access path to the shared I/O device
2Adaptability or versatility
If conventional I/O systems are used, then operating systems and device drivers work as designed, but modifications are required to enable I/O device sharing
Solution Approach 1:
The I/O virtualization device serves as an intermediary layer that transparently handles address translation between multiple computers and the I/O device. This allows existing operating systems and device drivers to continue operating without modification, as they interact with the virtualization device using standard protocols rather than requiring changes to their core functionality
Solution Approach 2:
The patent creates virtual copies of address space mappings in the configuration register, where each computer's address space is represented as a separate field. This virtual copying approach allows multiple computers to access the I/O device simultaneously with their own address space views, eliminating the need to modify operating systems or device drivers while enabling sharing
Data Source
AI summary
Virtual Functions (VFs) 602-1 to 602-N of an I/O device are separately allocated to a plurality of computers 1-1 to 1-N. In an address swap table 506, a root domain that is an address space of the computer 1 and mapping information of an I/O domain that is an address space unique to the I/O device 6 are registered. Mapping is set with the VFs 602-1 to 602-N as units. When accessing the VFs 602-1 to 602-N of the I/O device 6 to which each of the computers 1-1 to 1-N is allocated, an I/O packet transfer unit 701 checks the address swap table 506 to swap source/destination addresses recorded in packet headers.


