Synchronous network of superspeed and non-superspeed usb devices
Abstract
A method of synchronising the operation of a plurality of SuperSpeed USB devices and a plurality of non-SuperSpeed USB devices is provided. The method includes establishing a SuperSpeed synchronisation channel for each of the plurality of SuperSpeed USB devices; establishing a non-SuperSpeed synchronisation channel for each of the plurality of non-SuperSpeed USB devices; synchronising a respective local clock of each of the plurality of SuperSpeed USB devices; synchronising a respective local clock of each of the plurality of non-SuperSpeed USB devices; and synchronising the SuperSpeed and non-SuperSpeed synchronisation channels so that the SuperSpeed and non-SuperSpeed devices can operate in synchrony.
Claims
exact text as granted — not AI-modified1 . A method of synchronising the operation of a plurality of SuperSpeed USB devices and a plurality of non-SuperSpeed USB devices, comprising:
establishing a SuperSpeed synchronisation channel for each of said plurality of SuperSpeed USB devices; establishing a non-SuperSpeed synchronisation channel for each of said plurality of non-SuperSpeed USB devices; synchronising a respective local clock of each of said plurality of SuperSpeed USB devices; synchronising a respective local clock of each of said plurality of non-SuperSpeed USB devices; and synchronising said SuperSpeed and non-SuperSpeed synchronisation channels so that said SuperSpeed and non-SuperSpeed devices can operate in synchrony.
2 . A method as claimed in claim 1 , comprising syntonising or frequency locking said local clocks of each of said SuperSpeed USB devices using an Isochronous transfer method, said Isochronous transfer method comprising:
opening at least one Isochronous communication pipe between said Host Controller and said respective SuperSpeed USB device; ensuring that said respective SuperSpeed USB device is in link state U0 in preparation for receiving an Isochronous Timestamp Packet (ITP); said Host Controller sending a plurality of multicast periodic Isochronous Timestamp Packet to each of said Isochronous endpoints; locking the respective local clock of said respective SuperSpeed USB device to information derived from said periodic Isochronous Timestamp Packet (ITP); whereby the respective local clock of said respective SuperSpeed USB device is syntonised to the time domain of said Host Controller using the timestamp contained in said periodic Isochronous Timestamp Packets as a reference time and said respective local clock is synchronised or phase aligned using a propagation time of said Isochronous Timestamp Packets from said Host Controller to said respective SuperSpeed USB device.
3 . A method as claimed in claim 1 , comprising syntonising or frequency locking the respective local clock of each of said SuperSpeed USB devices using otherwise unused non-SuperSpeed signal conductors, comprising:
multiplexing additional synchronisation information onto High Speed USB D+ and D− data signalling lines at an upstream USB Host Controller or USB Hub; demultiplexing the synchronisation information from the D+/D− signalling lines at the upstream port of said SuperSpeed USB device; and locking said respective local clock of said respective SuperSpeed USB device to said synchronisation information.
4 . A method as claimed in claim 3 , wherein said synchronization information comprises a trigger signal, a clock signal and clock phase information.
5 . A method as claimed in claim 1 , wherein synchronising the respective local clocks of said non-SuperSpeed USB devices comprises:
monitoring USB data traffic local to said respective non-SuperSpeed USB devices; decoding a plurality of periodic signal structures from said USB data stream; locking said respective local clocks of said non-SuperSpeed USB devices to information derived from said periodic signal structures; whereby said respective local clocks of said non-SuperSpeed USB device are syntonised to the time domain of said Host Controller using said periodic signal structures as a reference time and said local clock is synchronised or phase aligned using respective propagation times of said periodic signal structures from said Host Controller to said respective non-SuperSpeed USB devices.
6 . A method as claimed in claim 1 , further comprising:
determining and compensating for phase errors in said respective local clocks of said SuperSpeed or non-SuperSpeed USB devices.
7 . A method as claimed in claim 1 , wherein synchronising said SuperSpeed and non-SuperSpeed synchronisation channels comprises:
determining respective transmission times of respective first Isochronous data packets and Isochronous Timestamp Packets from said Host Controller to each of said respective SuperSpeed USB devices, in a time domain of said non-SuperSpeed synchronisation channels; reporting said respective transmission times to said Host Controller; and said Host Controller creating a mapping between respective time domains of said SuperSpeed USB devices and the time domain of said non-SuperSpeed USB devices; and coordinating a respective local time of each of a plurality of operations or events of respective USB device function circuitry of said SuperSpeed USB device with a time domain of said Host Controller; whereby each of said operations or events can be mapped back to the time domain of said non-SuperSpeed USB devices.
8 . A method as claimed in claim 1 , further comprising:
determining a connection topology of a USB network to which the SuperSpeed and non-SuperSpeed USB devices are attached, and which comprises a plurality of USB Hubs; establishing the non-SuperSpeed synchronisation channel at an uppermost USB Hub of the USB network; identifying a respective highest USB Hub port in each network branch of said USB network that does not contain any non-SuperSpeed USB devices in its respective sub-network, each respective highest USB Hub port being provided in a corresponding highest USB Hub of each of said network branches; establishing the SuperSpeed synchronisation channels from said respective highest USB Hub ports to each of said SuperSpeed USB devices that is attached thereto; synchronising respective local clocks of said respective highest USB Hubs across their respective upstream non-SuperSpeed synchronisation channels; whereby said SuperSpeed synchronisation channels are synchronised to a notion of time of a corresponding, respective said highest USB Hub in its respective network branch, and respective local clocks of said highest USB Hubs are synchronised to the non-SuperSpeed synchronisation channel.
9 . A method as claimed in claim 1 , further comprising:
syntonising a local clock of each of said non-SuperSpeed USB devices with respect to a periodic start of frame packet; syntonising a local clock of each of said SuperSpeed USB devices with respect to a periodic Isochronous Timestamp Packet; determining a non-SuperSpeed propagation time between a point substantially near the top of a USB network to which the SuperSpeed and non-SuperSpeed USB devices are attached, and one of said non-SuperSpeed USB devices; determining a SuperSpeed propagation time between the point substantially near the top of said USB network and one of said SuperSpeed USB devices and back; determining a difference between said SuperSpeed propagation time and said non-SuperSpeed propagation time; and adjusting the phase of said local clocks according to said difference between said SuperSpeed and non-SuperSpeed propagation times.
10 . An apparatus for providing synchronisation signals to one or more SuperSpeed-connected USB devices, the apparatus comprising:
a USB Hub containing a SuperSpeed USB upstream port; and a plurality of SuperSpeed USB downstream ports; a local clock or local clock circuitry; circuitry adapted to generate synchronisation information referenced to said local clock; multiplexer circuitry operable to multiplex said synchronisation information onto D+/D− signalling lines of a selected one or more of said downstream ports to which a USB device is attached and connected in SuperSpeed USB mode.
11 . An apparatus as claimed in claim 10 , further comprising:
at least one USB device function circuitry, said USB device function circuitry being connected to one of said downstream ports; decoding circuitry for decoding periodic signal structures from a non-SuperSpeed USB data stream at said upstream port; syntoniser circuitry adapted to syntonise the local clock of said apparatus to said periodic signal structures; a synchroniser adapted to synchronise said local clock to an external notion of time; circuitry operable to selectively disable downstream non-SuperSpeed D+/D− data signalling lines of each the downstream USB ports of said apparatus from their respective USB Hub Function downstream ports; the multiplexer circuitry being operable to direct the non-SuperSpeed USB D+/D− signals to any of the downstream USB Connectors with an attached non-SuperSpeed device and to direct said synchronisation information to any of said downstream USB Connectors that have an attached SuperSpeed USB device.
12 . An apparatus as claimed in claim 11 , further comprising:
a timer adapted to determine respective round-trip time intervals of signals from the apparatus to one or more attached downstream USB devices; wherein said USB device function circuitry is adapted to transmit said round-trip time intervals determined by the timer to a USB Host Controller of said USB network.
13 . An apparatus as claimed in claim 11 , wherein said external notion of time is provided by one of the USB Host Controller and an external interface.
14 . An apparatus as claimed in claim 11 , further comprising:
a USB Host Controller function, adapted to connect to said upstream port of said USB Hub.
15 . An apparatus as claimed in claim 11 , wherein said syntoniser circuitry comprises:
circuitry for observing a USB data stream locally to respective connection points or downstream ports of any attached USB devices; circuitry for decoding a periodic signal structure from said USB data stream; circuitry for generating an event signal local to the apparatus corresponding to decoding the periodic data structure from the USB data stream; circuitry for locking the frequency of said local clock with respect to the frequency of the event signal.
16 . A method of synchronising a clock of a USB device connected in SuperSpeed mode to a clock of a USB Hub attached thereto, the method comprising:
generating synchronisation information from said clock of said USB Hub; multiplexing said synchronisation information onto unused D+/D− signalling lines of a downstream port of said USB Hub to which said USB device is attached; synchronising said clock of said USB device to said synchronisation information; whereby said USB device is connected to and communicating with a Host Controller through said USB Hub using SuperSpeed USB protocol and simultaneously synchronised to a notion of time of said clock of said USB Hub.
17 . A method as claimed in claim 16 , wherein said synchronisation information comprises syntonisation information to which said clock of said USB Hub can be syntonised.
18 . A method as claimed in claim 16 , wherein said syntonisation information comprises a periodic signal.
19 . A method as claimed in claim 16 , wherein said synchronisation information contains a notion of time of said clock of said USB Hub.
20 . A method as claimed in claim 16 , wherein said synchronisation information comprises one or more trigger signals.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.