Dynamic USB Controller Endpoint Allocation for Concurrent Device Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The limited number of endpoint resources in USB 3.0 controllers restricts the concurrent management of USB devices, leading to inefficient resource allocation and preventing further devices from being connected, while existing solutions like additional USB extension cards are costly and cumbersome.
Innovation Solution
A method and apparatus that dynamically configure USB interfaces in the controller to open only the minimum number of pipes required for specific operations, minimizing resource usage and allowing concurrent operations with fewer controllers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the OS configures USB interfaces automatically upon device connection, then all possible interfaces are available by default, but an excessive number of endpoint resources are reserved until disconnection
Solution Approach 1:
The patent implements dynamic USB interface configuration where the system transitions from static pre-allocation to dynamic on-demand allocation. The OS monitors actual interface usage and adjusts endpoint resource allocation in real-time, configuring interfaces only when needed for specific operations rather than reserving them permanently upon device connection.
Solution Approach 2:
The system changes the parameter of interface configuration from a fixed state (all interfaces available by default) to a variable state (interfaces configured based on operational requirements). This allows the endpoint resource allocation to adapt to changing operational needs, releasing resources when interfaces are no longer required.
2Adaptability or versatility
If all possible USB interfaces are configured by default, then comprehensive device functionality is supported, but the limited endpoint resources are exhausted preventing further device connections
Solution Approach 1:
The patent enables the USB controller to dynamically adjust its operational state by activating only the subset of interfaces required for current operations. This dynamic approach allows the system to maintain comprehensive functionality support while adapting resource allocation to maximize concurrent device management capacity.
Solution Approach 2:
Instead of configuring all possible interfaces (excessive action), the system configures only the necessary subset of interfaces (partial action) required for current operations. This prevents resource exhaustion while maintaining adequate functionality support for active devices.
3Productivity
If USB extension cards are added to increase endpoint resources, then more devices can be managed concurrently, but system complexity and cost increase
Solution Approach 1:
The patent creates a virtual expansion of endpoint resources through software-based dynamic allocation rather than physical hardware expansion. The system virtually manages available endpoint resources more efficiently, allowing more devices to be handled concurrently without the complexity of additional physical USB controllers or extension cards.
Data Source
Figure 1~3
Figure 2
Figure 4
AI summary
A method for performing an operation in relation to a USB device, comprises configuring a USB interface in a USB controller so as to open one or more pipes between the USB controller and one or more corresponding USB endpoints of a USB device according to a required USB endpoint configuration of the USB device that is required for performing an operation in relation to the USB device, performing the operation in relation to the USB device, and unconfiguring the configured USB interface in the USB controller so as to close the one or more pipes between the USB controller and the one or more corresponding USB endpoints of the USB device. Such a method may allow operations to be performed concurrently in relation to a greater number of USB devices than the prior art methods and/or may allow operations to be performed concurrently in relation to the same number of USB devices using fewer USB endpoint resources of the USB controller and/or fewer USB controllers than the prior art methods.