IP Library Granted Patent US 8,898,354
Granted Patent B2
US 8,898,354 · App. 13/327,640 · Granted Nov 25, 2014

Methods and devices for synchronizing to a remotely generated time base

Inventor: Keith Kejser (New Westminster, CA)
Assignee: Icron Technologies Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,898,354
App. No.
13/327,640
Granted
Nov 25, 2014
Kind
B2
Abstract

Devices and methods for generating timing signals at a rate that matches a rate of remotely generated timing signals are provided. In some embodiments, a host generates timing signals in accordance with a USB specification, such as keep-alives, start-of-frame packets, or ITPs. An upstream facing port transmits the timing signals over a network to a downstream facing port. The downstream facing port generates and transmits timing signals to a USB device at a predetermined rate, and alters the predetermined rate based on an analysis of the rate at which timing signals are received from the upstream facing port.

Claims (38)

1. A computing device configurable to provide a downstream facing port (DFP) for allowing a USB device to communicate with a host via an upstream facing port (UFP), wherein the DFP is configured to:

receive a first remote timing signal from the UFP;

transmit local timing signals to the USB device at a predetermined rate; and

adjust the rate of transmission of local timing signals to the USB device based on further timing signals received from the UFP without determining a round-trip latency between the UFP and the DFP;

wherein adjusting the rate of transmission of local timing signals includes:

determining an average duration between reception of remote timing signals from the UFP; and

adjusting the rate of transmission based on the determined average duration.

2. The computing device of claim 1 , wherein the predetermined rate is based on a connection speed negotiated between the host, the UFP, the DFP, and the USB device.

3. The computing device of claim 1 , wherein transmitting local timing signals at a predetermined rate includes:

setting a timing signal count to a predetermined value;

setting a countdown timer based on the timing signal count; and

transmitting one or more local timing signals based on a value of the countdown timer.

4. The computing device of claim 3 , wherein transmitting local timing signals at a predetermined rate further includes:

detecting that the countdown timer has elapsed; and

resetting the countdown timer based on the timing signal count.

5. The computing device of claim 4 , wherein adjusting the rate of transmission based on the determined average duration includes modifying the timing signal count based on the determined average duration.

6. The computing device of claim 5 , wherein modifying the timing signal count based on the determined average duration comprises:

incrementing the timing signal count by a predetermined amount upon determining that the average duration is longer than a duration represented by the timing signal count; and

decrementing the timing signal count by a predetermined amount upon determining that the average duration is shorter than a duration represented by the timing signal count.

7. The computing device of claim 1 , wherein the DFP is further configured to establish a communication link with the UFP using a communication protocol other than a USB protocol.

8. The computing device of claim 1 , wherein the computing device is configured to communicate with the USB device using one or more of a USB 1.0-compatible protocol; a USB 1.1-compatible protocol; a USB 2.0-compatible protocol; a USB 3.0-compatible protocol; or a protocol that is backward-compatible with USB 1.0, USB 1.1, USB 2.0, or USB 3.0.

9. The computing device of claim 1 , wherein the local timing signals include keep-alive signals.

10. The computing device of claim 1 , wherein the local timing signals include start-of-frame packets.

11. The computing device of claim 10 , wherein the local timing signals include microframe start-of-frame packets.

12. The computing device of claim 1 , wherein the local timing signals include isochronous timestamp packets.

13. A method of generating local timing signals, the method comprising:

receiving, by a first computing device configurable to provide a downstream facing port, a first remote timing signal from a second computing device configurable to provide an upstream facing port;

generating local timing signals at a predetermined rate; and

adjusting the rate of transmission of local timing signals based on further received remote timing signals without determining a round-trip latency between the first computing device and the second computing device, wherein adjusting the rate of transmission of local timing signals includes:

determining an average duration between reception of remote timing signals; and

adjusting the rate of transmission based on the determined average duration.

14. The method of claim 13 , wherein generating local timing signals at a predetermined rate includes basing the predetermined rate on a timing signal count.

15. The method of claim 14 , wherein adjusting the rate of transmission based on the determined average duration comprises:

incrementing the timing signal count upon determining that the average duration is longer than a duration represented by the timing signal count; and

decrementing the timing signal count by a predetermined amount upon determining that the average duration is shorter than a duration represented by the timing signal count.

16. The method of claim 14 , wherein basing the predetermined rate on a timing signal count comprises setting a countdown timer to a value of the timing signal count.

17. The method of claim 16 , wherein generating local timing signals at a predetermined rate includes generating local timing signals based on a value of the countdown timer.

18. The method of claim 13 , wherein the local timing signals are one or more of a keep-alive signal, a start-of-frame packet, a microframe start-of-frame packet, and a isochronous timestamp packet.

Assignments (3)
SECURITY AGREEMENT Recorded Jan 10, 2014
From: ICRON TECHNOLOGIES CORPORATION
To: ROYNAT CAPITAL INC.
Reel/Frame 031968/0601 →
SECURITY AGREEMENT Recorded Dec 17, 2013
From: ICRON TECHNOLOGIES CORPORATION
To: THE BANK OF NOVA SCOTIA
Reel/Frame 031836/0607 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2011
From: KEJSER, KEITH
To: ICRON TECHNOLOGIES CORPORATION
Reel/Frame 027399/0692 →
Continuity (1)
Related Publication 20130159569A1 · Jun 20, 2013