USB Transaction Translator SOF Timer Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

USB 3.0 transaction translators face synchronization issues between host and device sides due to differing clock sources and micro-frame timing mismatches, leading to access conflicts and inefficient bandwidth usage during isochronous transactions with USB 2.0 devices.

Innovation Solution

A USB 3.0 transaction translator with a device interface, host interface, buffers, and a controller that synchronizes start-of-frame packets with isochronous timestamp packets by delaying their sending based on received timestamp information, using a start-of-frame counter and timer to ensure simultaneous packet transmission and adjust data transfer periods for improved synchronization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the U3TT sends SOF packets periodically to announce micro-frame time, then the device can maintain timing information, but the host and device may access the same buffer at the same time causing access conflicts

Engineering Contradiction:
Improvetiming synchronizationVSAvoidaccess conflict
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary action by having the U3TT delay the sending of SOF packets until after the host has finished reading data from the buffer. The controller waits for the host to complete its read operation before the U3TT transmits the SOF packet, thereby preventing access conflicts before they occur. This timing adjustment ensures that the buffer is not accessed simultaneously by both host and device.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If the host and U3TT use different clock sources, then each side can operate independently, but a period difference accumulates causing synchronization problems

Engineering Contradiction:
Improveindependent operationVSAvoidsynchronization
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements feedback by having the U3TT receive isochronous timestamp packets (ITP) from the host and use this timing information to adjust the sending time of SOF packets. The controller calculates the time difference based on the ITP and delays SOF packet transmission accordingly, creating a feedback loop that continuously compensates for clock source differences and maintains synchronization.

Inventive Principle:
Principle #23Feedback

3Productivity

If the U3TT uses buffers to pre-fetch data, then bandwidth usage is improved, but the complexity of coordinating buffer access between host and device increases

Engineering Contradiction:
Improvebandwidth usageVSAvoidbuffer coordination
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent uses the SOF packet as an intermediary signal to coordinate buffer access between the host and device. The SOF packet serves as a timing reference that the host uses to determine when it is safe to read from the buffer. By synchronizing buffer access around the SOF packet transmission, the system manages the complexity of coordinated access while maintaining high bandwidth usage through pre-fetching.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9009380B2USB transaction translator with SOF timer and USB transaction translation method for periodically sending SOF packet
Publication Date: 2015.04.14 VIA LABS INC
  • US9009380B2 patent drawing
  • US9009380B2 patent drawing
  • US9009380B2 patent drawing

AI summary

A universal serial bus (USB) transaction translator is provided along with a micro-frame synchronization method. A device interface is coupled to a device via a device bus, and a host interface is coupled to a host via a host bus. At least two buffers are configured to store data. A controller stores the data in the buffers alternately. A start-of-frame (SOF) counter is used to count the SOF packets, with the counting value of the SOF counter being compared to a predefined value. Specifically, the controller resets a SOF timer for sending the SOF packet when the counting value achieves or exceeds the predefined value, such that the SOF packet and an isochronous timestamp packet (ITP) from the host are sent at the same time. Further, the controller delays the sending of the SOF packet for a period of time according to the ITP from the host.