Unified USB Driver for Host-Device Data Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Device providers face challenges in developing efficient and economical device drivers for USB 3.0 devices due to the need for access to host device controller APIs and changes to existing USB 2.0 stacks to support streaming capabilities, which are often cumbersome and not readily available.

Innovation Solution

A single driver on the host device, referred to as SymUAS, supports both USB 2.0 and USB 3.0 standards by issuing commands with unique tags and receiving notifications to facilitate data transfer without requiring USB 3.0 streaming capabilities, allowing for seamless communication between host and connected devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If USB 3.0 streaming capabilities are implemented to support full duplex operation, then data transfer efficiency is improved, but device complexity and development difficulty increase significantly

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoiddriver development complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The driver is designed to support both USB 2.0 and USB 3.0 protocols through a unified interface, allowing the same driver code to operate across different USB versions without requiring separate drivers or complex version-specific logic. This universal approach simplifies development while maintaining support for advanced USB 3.0 features when available.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces an abstraction layer between the host device and connected devices that mediates communication protocols. This intermediary layer handles protocol-specific details and translations, allowing the upper-level application logic to remain simple while supporting complex USB 3.0 streaming operations through standardized interface calls.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If access to host device controller APIs is required to implement streaming, then streaming functionality is achieved, but ease of manufacture and development are worsened due to closed controller access

Engineering Contradiction:
Improvestreaming capabilityVSAvoiddriver development accessibility
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The driver implements self-service mechanisms by automatically detecting USB device capabilities and dynamically adapting its operation mode. Rather than requiring manual configuration or deep controller API access, the driver autonomously determines whether USB 3.0 streaming features are available and configures appropriate communication protocols, making development accessible to providers without proprietary controller access.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system dynamically changes operational parameters based on detected device capabilities. The driver monitors USB bus characteristics and automatically adjusts data transfer modes, buffer sizes, and protocol selections to optimize performance for the specific connected device, enabling streaming functionality to adapt to available hardware capabilities without fixed configuration requirements.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If changes to existing USB 2.0 stack are made to support USB 3.0 streaming, then compatibility with USB 3.0 features is improved, but reliability of existing USB 2.0 operations may be compromised

Engineering Contradiction:
ImproveUSB 3.0 feature supportVSAvoidUSB 2.0 protocol stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The driver architecture segments USB 2.0 and USB 3.0 protocol handling into separate functional modules. USB 2.0 operations continue to use the established, reliable USB 2.0 stack without modifications, while USB 3.0 streaming features are implemented as distinct, optional modules that can be activated only when USB 3.0 capabilities are detected. This segmentation isolates any experimental USB 3.0 code from the proven USB 2.0 codebase, preserving stability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically switches between USB 2.0 and USB 3.0 operational modes based on real-time detection of connected device capabilities. Rather than statically modifying the USB 2.0 stack, the driver maintains the original USB 2.0 implementation as the default reliable path and only activates USB 3.0 enhanced paths when explicitly triggered by capability detection, allowing the system to flexibly adapt while maintaining a stable baseline operation.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8645601B2Methods and systems for performing serial data communication between a host device and a connected device
Publication Date: 2014.02.04 SMSC HLDG
  • US8645601B2 patent drawing
  • US8645601B2 patent drawing
  • US8645601B2 patent drawing

AI summary

Various methods, devices, systems, and machine readable mediums are provided which may be used in accordance with a protocol, such as a protocol used to support the transfer of data and commands between a host and a device. In one embodiment, a driver on a host device may be used to implement a protocol to provide support for various features of the universal serial bus (USB) attached storage (UAS) protocol when interfacing the host device with one or more connected devices that are compatible with either the USB 2.0 standard or the USB 3.0 standard. In this regard, a single driver on the host device may be used to support USB 2.0 and USB 3.0 devices. In another embodiment, such a protocol may be used to support USB 3.0 devices without requiring USB 3.0 streaming capabilities to be supported by host devices or connected devices.