USB Device Multiplexer Switching Data Paths

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional USB devices using bulk-only transmission mode experience performance degradation due to repeated clearing and storing operations in the bulk endpoint buffer, as they rely solely on the bulk endpoint for data transfer, leading to delayed data transmission.

Innovation Solution

The USB device employs both a bulk endpoint buffer and an interrupt endpoint buffer, with a multiplexer to switch data paths between them, allowing common data to be transferred through the bulk endpoint and command-related data (CBW, CSW) through the interrupt endpoint, reducing the frequency of bulk endpoint buffer clearing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If only the bulk endpoint is used to transfer data in bulk-only transmission mode, then the USB device structure is simple, but the bulk endpoint buffer requires repeated clearance causing performance degradation

Engineering Contradiction:
ImproveUSB device structureVSAvoiddata transmission performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the data transfer function by introducing a second data path through the interrupt endpoint, separating command-related data (CBW/CSW) from common data. This allows the bulk endpoint buffer to be used primarily for common data transfer without repeated clearing operations, while the interrupt endpoint handles command data, thus resolving the performance degradation issue while maintaining relatively simple device structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent makes the interrupt endpoint, which is normally idle in bulk-only mode, multi-functional by using it to transfer command-related data (CBW and CSW). This allows the USB device to handle both common data and command data through dedicated paths, improving overall data transmission efficiency without requiring complete abandonment of bulk-only mode simplicity.

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

2Ease of operation

If the bulk endpoint buffer is repeatedly cleared for storing transmitted and received data, then data can be transferred through a single endpoint, but transmission is delayed and system performance degrades

Engineering Contradiction:
Improvedata transfer operationVSAvoiddata transmission delay
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent segments the data transfer function by introducing a second data path through the interrupt endpoint, separating command-related data (CBW/CSW) from common data. This allows the bulk endpoint buffer to be used primarily for common data transfer without repeated clearing operations, while the interrupt endpoint handles command data, thus resolving the performance degradation issue while maintaining relatively simple device structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by pre-establishing two distinct data paths (bulk endpoint for common data, interrupt endpoint for command data) before data transfer begins. This preliminary setup prevents the need for repeated buffer clearing during operation, as each endpoint type is dedicated to specific data categories, thereby eliminating transmission delays caused by buffer management overhead.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7526594B2USB data transfer method
Publication Date: 2009.04.28 VIA TECH INC
  • US7526594B2 patent drawing
  • US7526594B2 patent drawing
  • US7526594B2 patent drawing

AI summary

A method of Universal Serial Bus (USB) data transfer is provided. In one embodiment, a USB device supports a bulk-only transmission mode to transfer data with a USB host, and the USB device comprises a bulk endpoint buffer storing data transferred between the USB device and the USB host through a bulk endpoint of the USB device and an interrupt endpoint buffer storing data transferred between the USB device and the USB host through an interrupt endpoint of the USB device. A first portion of data stipulated to be transferred through the bulk endpoint is stored with the interrupt endpoint buffer. A data path through which data is transferred between the USB host and the USB device is switched to lead to either the bulk endpoint buffer or the interrupt endpoint buffer with a multiplexer.