CA2492811C

Synchronized multichannel universal serial bus

Abstract

The invention provides a method and apparatus for providing a synchronized multichannel universal serial bus, the method in one aspect comprising supplementing the signal channels in the USB specification to provide synchronization information from an external source (24), and in another aspect comprising observing USB traffic and locking a local clock signal of a USB device (10) to a periodic signal contained in USB data traffic, wherein the locking is in respect of phase and/or frequency.

CA2492811C, drawing sheet 1
Sheet 1 of 10

Term

Term ended

Expired 17 July 2023, 3.2 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

14 claims: 3 independent, 11 dependent

  1. 1
    CLAIMS :1. A method of synchronizing a plurality of local clocks of a plurality of USB devices, each of said plurality of 5 local clocks corresponding to a respective one of said plurality of USB devices, the plurality of USB devices being connected to a common USB host via a USB tree so that said plurality of local clocks of said plurality of USB devices are in phase and at a common frequency, 10 comprising: transmitting by the common USB host to each of said plurality of USB devices one or more first specific signal structures;monitoring local USB signals at each of 15 said plurality of USB devices for said one or more first specific signal structures;generating a plurality of local reference signals, each local reference signal corresponding to each respective one of said plurality of USB devices, each 20 local reference signal being generated by each respective one of said plurality of USB devices from at least one of said one or more first specific signal structures received at each of said plurality of USB devices;locking a plurality of frequencies of said 25 plurality of local clocks at said plurality of USB devices, each frequency corresponding to a respective one of said plurality of local clocks, and each frequency being locked to each corresponding one of said plurality of local reference signals to a predetermined degree;30 designating a USB device in said USB tree as a master USB device for monitoring USB data traffic to and from each of said plurality of USB devices;transmitting by the common USB host one or more second specific signal structures to each of said 35 plurality of USB devices and transmitting specified response signals corresponding to said one or more second specific signal structures from each of said plurality of CA 02492811 2011-03-31 - 32 USB devices;monitoring for said one or more second specific signal structures and for said specified response signals with said master USB device;generating first event triggering signals local to said master USB device corresponding to decoding of at least one of said one or more second specific signal structures ;generating second event triggering signals local to said master USB device corresponding to decoding of said specified response signals from said plurality of USB devices;measuring respective time intervals between said first and second event triggering signals for said plurality of USB devices, each time interval corresponding to each one of said plurality of USB devices;determining a plurality of relative propagation times with respect to a reference USB device selected from said plurality of USB devices, each relative propagation time corresponding to each one of said plurality of USB devices other than a reference USB device selected from said plurality of USB devices, each relative propagation time being determined with respect to said reference USB device by determining a difference between the time interval of said reference USB device and the time interval of each corresponding one of said plurality of USB devices other than said reference USB device;determining whether a temporal adjustment or phase offset is required for each local clock of said plurality of local clocks to result in said plurality of local clocks being in phase;for each local clock requiring a respective temporal adjustment or phase offset, transmitting said respective temporal adjustment or phase offset to each corresponding USB device of said plurality of USB devices;and adjusting the phase of each local clock requiring CA 02492811 2011-03-31 - 33 a temporal adjustment or phase offset on the corresponding USB device according to said respective temporal adjustment or phase offset.
  2. 3
    A method for synchronously triggering and thereby initiating or stopping one or more processes, comprising:synchronizing said plurality of local clocks of said plurality of USB devices according to the method of claim 1;monitoring traffic local to each of said plurality of USB devices for a trigger request signal and for a trigger command signal, indicative respectively of an initiating trigger request and of a trigger command;transmitting said trigger request signal with said USB host to each of said plurality of USB devices to prepare said plurality of USB devices to each execute said initiating trigger request;configuring said plurality of USB devices to respond to said trigger request signal by configuring themselves to perform said one or more processes upon receipt of said trigger command signal;transmitting said trigger command signal with said USB host to each of said plurality of USB devices;and decoding said trigger command from said trigger command signal with each of said plurality of USB devices and thereby configuring said plurality of USB devices to initiate or stop said one or more processes at a common time;whereby said one or more processes can be initiated or stopped upon receipt by said plurality of USB devices of said trigger command signal from said USB host. CA 02492811 2011-03-31 - 34
  3. 14
    An apparatus for synchronizing the local clocks of each of a plurality of USB devices connected to a common USB host via a USB tree so that said clocks are in phase and at a common frequency, comprising:a signal generator or root hub for generating specific signal structures in the USB data traffic, for transmitting said specific signal structures to said USB device in a predefined sequence, and for generating a response signal in the form of a local reference signal at each of said USB devices from said specific signal structures ;a signal monitor for monitoring USB signals local to said USB device for said specific signal structures and for response signals generated in response thereto, whereby said frequency of said local clock signal at each of said USB devices can be locked to said local reference signal to a desired degree;a master USB device comprising one of the USB devices in said USB tree;a first timer for measuring a time interval between said specific signal structures and said response signals in said master USB device;and computing means for determining the difference in said propagation times of signals from said USB host to each of said USB devices with respect to a reference USB CA 02492811 2011-03-31 - 36 device that comprises a selected one of said USB devices;a second timer for determining the temporal adjustment or phase offset of each of said local clocks required to result in said plurality of local clocks 5 across said USB tree being in phase;wherein said apparatus is adapted to transmit said temporal adjustment or phase offset from said USB host to said USB devices and to provide phase adjustment of said local clock on each of said USB devices according 10 to said temporal adjustment or phase offset respectively. CA 02492811 2005-01-14 WO 2004/008330 PCT/AU2003/000918 1/6