US20120066417A1 - Synchronisation and trigger distribution across instrumentation networks - Google Patents

Synchronisation and trigger distribution across instrumentation networks Download PDF

Info

Publication number
US20120066417A1
US20120066417A1 US13/320,388 US201013320388A US2012066417A1 US 20120066417 A1 US20120066417 A1 US 20120066417A1 US 201013320388 A US201013320388 A US 201013320388A US 2012066417 A1 US2012066417 A1 US 2012066417A1
Authority
US
United States
Prior art keywords
trigger
usb
devices
usb devices
upstream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US13/320,388
Inventor
Peter Graham Foster
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chronologic Pty Ltd
Original Assignee
Chronologic Pty Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chronologic Pty Ltd filed Critical Chronologic Pty Ltd
Priority to US13/320,388 priority Critical patent/US20120066417A1/en
Assigned to Chronologic Pty. Ltd. reassignment Chronologic Pty. Ltd. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FOSTER, PETER GRAHAM
Publication of US20120066417A1 publication Critical patent/US20120066417A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • G06F13/423Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3027Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/08Speed or phase control by synchronisation signals the synchronisation signals recurring cyclically

Definitions

  • the present invention relates to a method and apparatus for providing a synchronization and timing system, with connectivity based on revision three of the Universal Serial Bus (USB) architecture (or USB 3.0), of particular but by no means exclusive use in providing clocks, data acquisition and automation and control of test and measurement equipment, instrumentation interfaces and process control equipment, synchronized to an essentially arbitrary degree in either a local environment or in a distributed scheme.
  • USB Universal Serial Bus
  • USB 2.0 data is encoded using differential signalling (viz. in which two wires transfer the information) in the form of the difference between the signal levels of those two wires.
  • the USB 2.0 specification is intended as an enhancement to the PC architecture, spanning portable, desktop and home environments.
  • USB was user focussed so the USB 2.0 specification lacked a mechanism for synchronising devices to any great precision.
  • U.S. Pat. No. 6,343,364 discloses an example of frequency locking to USB traffic, which is directed toward a smart card reader.
  • This document teaches a local, free-running clock that is compared to USB SYNC and packet ID streams; its period is updated to match this frequency, resulting in a local clock with a nominal frequency of 1.5 MHz. This provides a degree of synchronization sufficient to read smart card information into a host PC but, as this approach is directed to a smart card reader, inter-device synchronization is not addressed.
  • WO 2007/092997 discloses a synchronized USB device that allows the generation of accurate clock frequencies on board the USB device regardless of the accuracy of the clock in the Host PC.
  • the USB SOF packet is decoded by the USB device, and treated as a clock carrier signal instead of acting as a clock reference.
  • the carrier signal once decoded from the USB traffic, is combined with a scaling factor to generate synchronization information and hence to synthesize a local clock signal with precise control of the clock frequency.
  • the frequency of the local clock signal can be more accurate than the somewhat ambiguous frequency of the carrier signal.
  • U.S. patent application Ser. No. 12/279,328 (Foster et. al.) teaches synchronisation of the local clocks of a plurality of USB devices to a timebase received from another interface.
  • a USB device contains a local clock that is synchronised to an externally provided time signature across Ethernet using the IEEE-1588 protocol.
  • the USB device's clock is synchronised to a timebase derived from a Global Positioning System (GPS) synchronised clock.
  • GPS Global Positioning System
  • USB 2.0 is limited in range by the device response timeout. This is the window of time that the USB Host Controller allocates for receipt of a signal from a given USB device in response to a request from the USB Host Controller.
  • the physical reach of USB 2.0 is therefore approximately 25 m.
  • USB 3.0 The USB 3.0 specification was released in November 2008 and is also focussed on consumer applications.
  • the USB 3.0 specification makes significant changes to the architecture of USB.
  • the background art synchronisation schemes discussed above will not work with the new 5 Gb/s protocol (termed ‘SuperSpeed USB’) because it does away with the broadcast mechanism for SOF packets.
  • USB 3.0 defines two parallel and independent USB busses on the same connection cable. Firstly, the USB 2.0 bus remains unchanged (for backward compatibility) and offers Low Speed (1.5 Mb/s), Full Speed (12 Mb/s) and High Speed (480 Mb/s) protocols. The second bus—for 5 Gb/s traffic—provides the SuperSpeed USB. These busses operate independently, except that operation of the busses to a given USB device is mutually exclusive. That is, if a SuperSpeed connection is possible, then the USB 2.0 bus in disconnected to that device.
  • USB 3.0 The dual-bus architecture of USB 3.0 is depicted schematically at 10 in FIG. 1 .
  • Personal Computer 12 containing USB Host Controller 14 , is connected to USB 3.0 Hub 16 by first USB 3.0-compliant cable 18 ;
  • USB 3.0 device 20 is connected to a downstream port 22 of USB 3.0 Hub 16 by second USB 3.0-compliant cable 24 .
  • USB Host Controller 14 contains both a USB 2.0 Host 26 and a SuperSpeed Host 28 . These two hosts 26 , 28 are independent of one another, and each host 26 , 28 is capable of connecting up to 127 devices (including hubs).
  • USB 3.0-compliant cables are compound cables, containing a USB 2.0-compliant cable and a series of shielded conductors capable of transmitting SuperSpeed signals.
  • USB 3.0-compliant cable 18 comprises USB 2.0-compliant cable 30 and shielded conductors 32 .
  • USB 3.0 Hub 16 contains both a USB 2.0 Hub function 34 and a SuperSpeed Hub function 36 , each connected directly to its respective Host 26 , 28 by compound cable 18 .
  • USB 3.0 device 20 contains both a USB 2.0 device function 38 and a SuperSpeed device function 40 , each connected back to its respective hub function 34 , 36 of USB 3.0 Hub 16 by compound cable 24 .
  • SuperSpeed Host 28 checks for the presence of a SuperSpeed device function ( 40 ). If a SuperSpeed device is found, then a connection is established. If a SuperSpeed device is not found (as in the case where only a USB 2.0 device is connected to port 22 ), then the USB 2.0 Host 26 checks for the presence of a USB 2.0 device function ( 38 ) at device 20 . Once the Host Controller 14 determines which device function is connected, it tells the USB 3.0 Hub 16 to only enable communication for downstream port 22 corresponding to whether the USB 2.0 device function 38 or SuperSpeed device function 40 is attached. This means that only one of the two parallel busses is in operation at any one time to an end device such as USB 3.0 device 20 .
  • SuperSpeed USB has a different architecture from that of the USB 2.0 bus. Very high speed communication systems consume large amounts of power owing to high bit rates. A design requirement of SuperSpeed USB was lower power consumption, to extend the battery life of user devices. This has resulted in a change from the previous broadcast design of the USB 2.0: SuperSpeed is not a broadcast bus, but rather directs communication packets to a specific node in the system and shuts down communication on idle links.
  • a SuperSpeed Hub function acts as a device to the host (or upstream port) and as a host to the device (or downstream port). This means that the SuperSpeed Hub function acts to buffer and schedule transactions on its downstream ports rather than merely acting as a repeater. Similarly, the SuperSpeed Hub function does so with scheduling transmissions on the upstream port. A heavily burdened Hub function can therefore add significant non-deterministic delays in packet transmission through the system. This also precludes the use of USB 2.0 synchronisation schemes such as that of U.S. patent application Ser. No. 12/279,328 from operating on SuperSpeed USB.
  • the crude Isochronous synchronisation of USB 2.0 has been significantly improved in the USB 3.0 specification. Opening an Isochronous communication pipe between a Host Controller and a USB device guarantees a fixed bandwidth allocation in each Service Interval for the communication pipe.
  • the Isochronous Protocol of USB 3.0 contains a so-called Isochronous Timestamp Packet (ITP), which is sent at somewhat regular intervals to each Isochronous Endpoint and which contains a timestamp of the beginning of ITP transmission by the USB Host Physical Layer (Phy) in the time domain of the Host Controller.
  • Isochronous Timestamp Packet is accurate to about 25 ns.
  • SuperSpeed USB shuts down idle links to conserve power, but links must be active in order to receive an Isochronous Timestamp Packet.
  • the Host Controller must therefore guarantee that all links to a device are in full active mode (termed power state U 0 ) before transmission of the Isochronous Timestamp Packet.
  • USB 3.0 also does not provide a way of determining the propagation time of packets in SuperSpeed USB and hence no way of accurately knowing the phase relationship between time domains on different USB devices. Phase differences of several hundred nanoseconds are expected to be a best case scenario with SuperSpeed USB making it impractical for instrumentation or other precision timing requirements.
  • U.S. Pat. No. 5,566,180 discloses a method of synchronising clocks in which a series of devices on a communication network transmit their local time to each other and network propagation time is determined by the ensemble of messages. Further disclosures by Eidson (U.S. Pat. Nos. 6,278,710, 6,665,316, 6,741,952 and 7,251,199) extend this concept but merely work toward a synchronisation scheme in which a constant stream of synchronising messages are transferred between each of the nodes of a distributed instrument network via Ethernet. This continual messaging consumes bandwidth and limits the accuracy of the possible synchronisation to several hundred nano-seconds in a point-to-point arrangement and substantially lower accuracy (typically micro-seconds) in a conventional switched subnet.
  • clock signals and ‘synchronisation’ in this disclosure are used to refer to clock signals, trigger signals, delay compensation information and propagation time measurement messages. It should also be understood that a ‘notion of time’ in this disclosure is used to denote an epoch or ‘real time’ and can also be used to refer to the combination of a clock signal and an associated epoch.
  • the present invention provides a system for synchronising the operation of a measurement instrument having a microcontroller, a local oscillator and function circuitry to an external timebase, the system comprising:
  • the system comprises the instrument.
  • the instrument is a SuperSpeed USB device.
  • a SuperSpeed USB device can be synchronised, as each of the operations (or events) can be mapped back to the time domain of the USB Host Controller.
  • the microcontroller may be further configured to read respective timestamps from each of a selected pair of the Isochronous Timestamp Packets, and calculate a period between the selected pair of the Isochronous Timestamp Packets from their respective timestamps (and, further, may optionally form a comparison between the interval between selected successive Isochronous Timestamp Packets as determined by the timer or counter and the calculated period.
  • system is further adapted system to omit from the comparison any of the Isochronous Timestamp Packets that contains a Packet_Delayed flag.
  • the microcontroller is further configured to make a plurality of such readings, and to generate a time series of determinations of the local clock period and timestamps.
  • the microcontroller or USB Host Controller may be adapted to statistically analyze the time series and to improve synchronisation accuracy therefrom.
  • the method comprising: the instrument, having a microcontroller and a local oscillator attached to a USB Host Controller, opening one or more Isochronous communication pipes or endpoints to the USB Host Controller; ensuring that the instrument is in link state U 0 in preparation for receiving a plurality of Isochronous Timestamp Packets (ITP); the USB Host Controller sending a plurality of Isochronous Timestamp Packets to the Isochronous communication pipes or endpoints;
  • ITP Isochronous Timestamp Packets
  • the instrument is a SuperSpeed USB device.
  • the method may comprise the microcontroller responding to each of the interrupts (such as with an interrupt service routine provided therein) by generating an output signal adapted to be used as a synchronization reference signal for a plurality or all of the Isochronous Timestamp Packets, and deriving information about the frequency of the local oscillator with respect to the timestamped Isochronous Timestamp Packet therefrom with a first counter/timer measuring the period of interval between reception of successive the output signals.
  • each of the interrupts such as with an interrupt service routine provided therein
  • the method includes mapping each of the operations or events back to the time domain of the USB Host Controller.
  • the instrument includes instrumentation and measurement or data acquisition circuitry.
  • the method further comprises:
  • the method may include forming a comparison between the interval between the selected successive Isochronous Timestamp Packets as determined by the timer or counter and the calculated period.
  • the method may include omitting any of the Isochronous Timestamp Packets that contain a Packet_Delayed flag from the comparison.
  • the method may comprise making a plurality of the readings and generating a time series of determinations of the local clock period and timestamps.
  • the method may further comprise statistically analyzing the time series and improving synchronisation accuracy therefrom.
  • the interrupts result in interrupt service routines generated in response to the detection of an Isochronous Timestamp Packet by the SuperSpeed USB device.
  • the interrupts are hardware interrupts generated in response to the detection of an Isochronous Timestamp Packet by the SuperSpeed USB device.
  • the method further comprises:
  • the timer/counter uses only those of the Isochronous Timestamp Packets whose transmission was not delayed in a USB network. Furthermore statistical means may be used to improve the accuracy of measurements and improve synchronisation. This may be by averaging the measurements of the interval between reception of successive the output signals, or by performing a statistical analysis on the set of such measurements of the time intervals.
  • the method includes measuring the interval between receptions of the synchronisation reference signals with a counter/timer function clocked from the local oscillator.
  • the time interval used to measure the frequency of the local oscillator is an interval between receptions of successive Isochronous Timestamp Packets.
  • the accuracy of measurement of the local oscillator frequency may be increased by measurement over multiple successive intervals and using statistical analysis.
  • the microcontroller has timer/counter functionality. It will be readily understood by those skilled in the art that such counter/timer functionality can be deployed in logic devices external to the microcontroller, for example Field Programmable Gate Arrays (FPGA) or Complex Programmable Logic Devices (CPLD) or a dedicated counter/timer circuit.
  • FPGA Field Programmable Gate Arrays
  • CPLD Complex Programmable Logic Devices
  • the microcontroller has interrupt service routine capability whereby the interrupt service routines can be called or triggered in response to detection of the Isochronous Timestamp Packets.
  • the interrupts may be software interrupts, but in one embodiment, the interrupts are hardware interrupts wherein there is minimal latency in generating the required output from an Interrupt Service Routine (ISR).
  • ISR Interrupt Service Routine
  • the local oscillator is a free-running local oscillator, but it will be understood by those skilled in the art that the local oscillator may assume alternative forms and comprise, for example, a Voltage Controlled Crystal Oscillator (VCXO), a Temperature Compensated Crystal Oscillator (TCXO), an Oven Controlled Crystal Oscillators (OCXO) or a multi-tap clock.
  • VXO Voltage Controlled Crystal Oscillator
  • TCXO Temperature Compensated Crystal Oscillator
  • OXO Oven Controlled Crystal Oscillators
  • the counter/timer circuitry may not be clocked directly from the local oscillator but instead via a clock source divided or multiplied in frequency from the local oscillator.
  • the method of this aspect may be used to synchronise a plurality of USB devices attached to a common USB host controller, whereby the operations or functions of the USB devices are synchronised to an arbitrarily precise degree. Furthermore the method may include determining the propagation time of the timestamped Isochronous Timestamp Packet from the USB Host Controller to the USB device according to any of such method of the present invention described herein, depending on the particular synchronisation channel employed in the respective embodiment.
  • measuring the period between receptions of successive carrier signals with respect to the free-running local oscillator is equivalent to knowing the time of the plurality of receptions of Isochronous Timestamp Packets in the time domain of the free-running oscillator. It will also be understood that such a relative notion of time can be referenced to an absolute notion of time.
  • a SuperSpeed synchronisation channel is provided, adapted to determine the respective period of time between reception of successive Isochronous Timestamp Packets.
  • this channel may be replaced with a non-SuperSpeed synchronisation channel.
  • the non-SuperSpeed synchronisation channel may be adapted to any one of the methods of synchronisation as disclosed in this invention.
  • the non-SuperSpeed synchronisation channel may include a periodic timing signal adapted for use as the reference timing signal instead of the Isochronous Timestamp Packet in the SuperSpeed synchronisation channel.
  • the method may also include an apparatus for determining the relative propagation time of the multicast Isochronous Timestamp Packets from the USB Host Controller to each of the devices, such as by any of the methods for determining propagation time of the present invention described herein.
  • each of the devices may contain a mechanism adapted to adjust the phase of their respective local notions of time, resulting in a synchronised USB with known absolute phase relationships between devices.
  • a measurement synchronisation method as described for a USB instrument is also applicable to any measurement instrument that receives a plurality of timestamped signals with which to determine the rate of its local clock and hence the timebase of the local measurement system, including to permit synchronisation of a plurality of disparate networks (for example but not limited to PXI, PXI-express, IEEE-1588 ethernet, PCI, VXI and USB).
  • a plurality of disparate networks for example but not limited to PXI, PXI-express, IEEE-1588 ethernet, PCI, VXI and USB.
  • an apparatus for synchronising the operation of a measurement instrument having a local oscillator and function circuitry to an external timebase comprising:
  • the apparatus may comprise the instrument.
  • the measurement instrument is a SuperSpeed USB device and the communication bus is a SuperSpeed USB.
  • the instrument is an Ethernet-based device.
  • the local oscillator is a free-running oscillator.
  • the local oscillator is a voltage controller oscillator (VCXO), a temperature compensated crystal oscillator (TCXO), an oven controlled crystal oscillator (OCXO) or some other clock circuitry.
  • VXO voltage controller oscillator
  • TCXO temperature compensated crystal oscillator
  • OXO oven controlled crystal oscillator
  • the invention provides a method of synchronising the operation of a plurality of instruments each having a microcontroller and a local oscillator attached to a common USB Host Controller, the method comprising:
  • the instruments may be SuperSpeed USB devices.
  • the invention provides a system for reducing triggering latency and acquiring data across a plurality of different instrumentation interfaces, comprising:
  • the invention provides a USB system, comprising:
  • the USB devices are configured to continue executing their prescribed instructions while transmitting the contents of their respective local memories to their respective Host Controllers, to continue to buffer data to their respective local memories and to begin steaming data directly to their respective Host Controllers once the contents of their respective memories have been completely transferred to their respective Host Controllers.
  • the invention provides a trigger engine or device, comprising:
  • the trigger device is configured to execute a set of instructions and buffer time stamped results thereof in a local memory, and to transmit the buffered and time stamped results to the USB host controller after receipt of the external trigger signal.
  • the device may be adapted to continue executing the set of instructions while transferring the results from the memory to the USB host controller, including buffering data to the memory, and to begin transferring the data to the USB host controller after the results have been transferred to from the memory to the USB host controller.
  • the invention also provides a USB device, comprising:
  • the USB device is adapted to continue executing the instructions while transmitting the results to the USB host controller, and to buffer data to the memory and to initiate transferring the data to the USB host controller after the results have been transferred to from the memory to the USB host controller.
  • the invention provides a method of reducing the triggering latency of a plurality of devices or instruments attached to a plurality of instrumentation networks, the networks being in data communication with each other and connected by one or more synchronisation channels, the method comprising:
  • This aspect also provides an apparatus for transferring trigger signals from a first USB device to a plurality of second USB Devices attached to a USB network with minimal latency, the apparatus comprising:
  • the apparatus is configured so that communication from upstream of the apparatus to the USB Hub circuitry passes through the trigger engine.
  • the apparatus may further comprise multiplexer circuitry adapted to selectively route either an upstream signal path or output of the trigger engine to the upstream port of the USB hub circuitry.
  • an apparatus for transferring trigger signals from a first USB device to a plurality of second USB Devices attached to a USB network with minimal latency comprising:
  • the apparatus further comprises multiplexer circuitry adapted to selectively disable an upstream signal connection.
  • a method of transferring trigger signals from a first USB device to one or more second USB devices attached to a USB network with minimal latency comprising:
  • the method further comprises:
  • the method further comprises:
  • the Trigger Condition may be reception of a signal from an external source.
  • the USB devices may be non-SuperSpeed Devices.
  • the Trigger Engine may broadcast the Trigger Command to all attached downstream USB devices.
  • the USB devices may be SuperSpeed USB Devices.
  • the Trigger Engine may selectively transmit the Trigger Command to the second USB devices, each of the second USB devices being addressed using a USB Routing String.
  • the method includes detecting passage of the Trigger Request passing through the Trigger Engine.
  • a method of triggering a plurality of first USB devices to perform their respective predefined operations with a trigger signal applied at least one second USB device with minimal latency, the first and second USB devices attached to a common USB network comprising:
  • the plurality of second USB devices execute their respective predefined operations with minimal trigger propagation latency.
  • the method further comprises:
  • the method further comprises:
  • the Trigger Condition may be reception of a signal from an external source.
  • the USB devices may be non-SuperSpeed Devices.
  • the Trigger Engine may broadcast the Trigger Command to all attached downstream USB devices.
  • the USB devices may be SuperSpeed USB Devices.
  • TheTrigger Engine may selectively transmit the Trigger Command to the second USB devices, the second USB devices being addressed using a USB Routing String.
  • the method includes detecting passage of the Trigger Request passing through the Trigger Engine.
  • the invention provides a method of triggering a plurality of USB devices to perform their respective predefined operations upon reception of a plurality of trigger signals, the USB devices attached to a common USB network, comprising:
  • the plurality of USB devices execute their respective predefined operations with minimal trigger propagation latency.
  • the combinatorial trigger state includes time dependence, such that temporal relationships between transitions of the respective plurality of trigger states is important.
  • the method may further comprise:
  • the method further comprises:
  • the Trigger Condition may be reception of a signal from an external source.
  • the USB devices are non-SuperSpeed Devices.
  • the trigger engine may broadcasts the trigger command to the USB devices.
  • the USB devices may be SuperSpeed USB Devices.
  • the trigger engine may selectively transmit the trigger command to the USB devices, each of the USB devices being addressed using a USB Routing String.
  • the method includes detecting passage of the trigger request passing through the trigger engine.
  • an apparatus for triggering a plurality of USB devices attached to a common USB network to perform respective predefined operations upon reception of respective trigger signals comprising:
  • the combinatorial trigger state may includes time dependence.
  • the apparatus may be further adapted to:
  • the apparatus may be further adapted to:
  • the Trigger Condition may be reception of a signal from an external source.
  • the USB devices are non-SuperSpeed Devices.
  • the trigger command may be broadcast by a trigger engine to the USB devices.
  • the USB devices may be SuperSpeed USB Devices.
  • the trigger command may be selectively transmitted by a trigger engine to the USB devices, each of the USB devices being addressed using a USB Routing String.
  • the apparatus may be configured to detect passage of the trigger request passing through the trigger engine.
  • the invention also provides apparatuses and systems arranged to perform each of the methods of the invention described above.
  • apparatuses according to the invention can be embodied in various ways.
  • such devices could be constructed in the form of multiple components on a printed circuit or printed wiring board, on a ceramic substrate or at the semiconductor level, that is, as a single silicon (or other semiconductor material) chip.
  • FIG. 1 is a schematic diagram of the dual-bus architecture of USB3 according to the background art
  • FIG. 2A is a schematic representation of an apparatus for reducing the triggering latency of USB devices according to an embodiment of the present invention
  • FIG. 2B is a schematic representation of an apparatus for reducing the triggering latency of USB devices according to another embodiment of the present invention.
  • FIG. 3 is a schematic representation of a USB network according to another embodiment of the present invention.
  • FIG. 2A is a schematic representation of an apparatus in the form of a Trigger Hub 100 according to an embodiment of the present invention, for reducing the triggering latency of USB devices.
  • Trigger Hub 100 has an upstream port 102 , a plurality of downstream ports 106 , a USB Hub chip 108 and a Trigger Controller or Engine 110 (connected to upstream port 102 by upstream line 104 ).
  • Trigger Engine 110 is thus located between upstream port 102 and USB Hub chip 108 such that all upstream communication passes through it. In this way Trigger Engine 110 is able to observe all communication traffic.
  • Trigger Engine 110 need not be located ‘inline’ between upstream port 102 and USB Hub chip 108 : according to a variant of the embodiment of FIG. 2A , Trigger Engine 110 may be adapted to observe traffic without being inline.
  • FIG. 2B is a schematic representation of a Trigger Hub 100 ′ according to this variant in which, as compared with Trigger Hub 100 of FIG. 2A , like reference numerals have been used to identify like features.
  • Trigger Hub 100 ′ thus includes an upstream port 102 , a plurality of downstream ports 106 and a USB Hub chip 108 , situated as in Trigger Hub 100 of FIG. 2A .
  • Trigger Engine 110 ′ of Trigger Hub 100 ′ is arranged merely to observe traffic at monitoring point 114 on upstream line 104 , and has a separate downstream connection 116 to USB Hub chip 108 .
  • Trigger Hub 100 ′ optionally includes a multiplexer 118 to selectively connect either upstream line 104 or Trigger Engine 110 ′ to USB Hub chip 108 .
  • FIG. 3 is a schematic representation of a USB network 120 according to another embodiment of the present invention.
  • USB network 120 includes a Trigger Hub 100 ′′ (comprising either Trigger Hub 100 of FIG. 2A or Trigger Hub 100 ′ of FIG. 2B ) to reduce the latency in triggering signals passing from one USB device to another.
  • USB network 120 also contains a USB Host Controller 122 , a plurality of USB Hubs 124 and a plurality of USB Devices 126 , 128 , 130 .
  • USB device 126 wishes to send a low latency trigger to USB devices 128 and 130 (so is henceforth referred to as the ‘trigger device’ 126 ′).
  • Host Controller 122 opens a communication pipe downstream to each of devices 128 and 130 .
  • This will be referred to as the ‘Trigger Pipe’ and may be an isochronous pipe in which a fixed bandwidth is made available during each USB frame or it may be another form of data pipe.
  • Trigger device 126 is armed and waiting to receive a trigger (typically from an external device). Once the trigger has been received, trigger device responds by sending a message (or trigger request) is transmitted upstream, passing through Trigger Hub 100 ′′ on its way to Host Controller 122 . Trigger Engine 110 decodes the upstream message and observes that trigger device 126 has issued a trigger request.
  • a trigger typically from an external device.
  • Trigger Engine 110 decodes the upstream message and observes that trigger device 126 has issued a trigger request.
  • Trigger Engine 110 then broadcasts a message, in the form of a Trigger Command, on all downstream ports 106 of Trigger Hub 100 ′′.
  • a message in the form of a Trigger Command
  • the message passes down the entire network and is received by all attached devices.
  • Trigger Engine 110 would need to transmit each message individually to a specific network address, defined by the USB Routing String.
  • Each armed USB device 128 , 130 receives the downstream trigger command message and executes its own predefined commands. This approach obviates the need for triggers to pass through the operating system, the slowest part of the chain.
  • Trigger Hub 100 ′′ does not have the right to instigate packet transfers according to the USB Specification' only Host Controller 122 has that right. This is why the Trigger Pipe was opened by Host Controller 122 at the beginning of the trigger arming process. In the case of an Isochronous pipe, a small bandwidth channel is opened between Trigger Host 100 ′′ and each attached USB device 126 , 128 , 130 . In the case of non-SuperSpeed devices, only one pipe is required since all packets are broadcast downstream. Once Trigger Hub 100 ′′ receives the trigger command from trigger device 126 , Trigger Hub 100 ′′ waits for the next scheduled downstream transmission time in the Trigger Pipe and inserts a trigger command into the downstream packet. This Trigger Command is then received by USB devices 128 and 130 , which respond by executing their commands.
  • Trigger Engine 110 injects phantom packets downstream. Trigger Engine 110 either waits until it comes across a gap in the downstream packet that it can use to inject the phantom packet, or momentarily disconnects reception of signals from upstream port 102 , allowing Trigger Engine 110 to transmit the downstream Trigger Command.
  • USB Device 130 may be triggered to perform a function when both USB device 126 and USB device 128 meet certain parameters.
  • Trigger Engine 110 contains combinatorial logic. Trigger Engine 110 is programmed by Host Controller 122 with the required combination of triggers. Once Trigger Hub 100 ′′ receives valid trigger requests from both USB devices 126 and 128 it issues a Trigger Command to USB Device 130 .
  • this combinatorial logic may include time windowing or other advanced multi-device triggering constraints: essentially any level of complexity of combinatorial logic may be accommodated according to this embodiment.
  • these embodiments address the limitation imposed on the speed at which triggers can be transferred from one USB device to the next arising from the Host-centric nature of conventional USB architecture, whereby all communication is initiated by a Host with no direct inter-device communication (a limitation exacerbated by the fact that communication must pass through the operating system, which can have the effect of delaying trigger propagation by milliseconds, or even seconds in cases with a heavily loaded processor).
  • USB Host Controller embraces all forms of USB Host Controller, including standard USB Host controllers, USB-on-the-go Host Controllers and wireless USB Host Controllers.

Abstract

A system for synchronising the operation of a measurement instrument having a microcontroller, a local oscillator and function circuitry to an external timebase is provided. The system includes a USB Host Controller; an interrupt generator adapted to respond to ITPs by generating respective interrupts and passing the interrupts to the microcontroller; and a timer for measuring an interval between receptions of the ITPs in a time domain of the local oscillator.

Description

    RELATED APPLICATION
  • This application is based on and claims the benefit of the filing date of U.S. application No. 61/179,904 filed 20 May 2009, the content of which as filed is incorporated herein by reference in its entirety.
  • FIELD OF THE INVENTION
  • The present invention relates to a method and apparatus for providing a synchronization and timing system, with connectivity based on revision three of the Universal Serial Bus (USB) architecture (or USB 3.0), of particular but by no means exclusive use in providing clocks, data acquisition and automation and control of test and measurement equipment, instrumentation interfaces and process control equipment, synchronized to an essentially arbitrary degree in either a local environment or in a distributed scheme.
  • BACKGROUND OF THE INVENTION
  • The USB specification up to and including revision 2.0 was intended to facilitate the interoperation of devices from different vendors in an open architecture. USB 2.0 data is encoded using differential signalling (viz. in which two wires transfer the information) in the form of the difference between the signal levels of those two wires. The USB 2.0 specification is intended as an enhancement to the PC architecture, spanning portable, desktop and home environments.
  • However, USB was user focussed so the USB 2.0 specification lacked a mechanism for synchronising devices to any great precision. Several proposals attempted to address this and other deficiencies. For example, U.S. Pat. No. 6,343,364 (Leydier et al.) discloses an example of frequency locking to USB traffic, which is directed toward a smart card reader. This document teaches a local, free-running clock that is compared to USB SYNC and packet ID streams; its period is updated to match this frequency, resulting in a local clock with a nominal frequency of 1.5 MHz. This provides a degree of synchronization sufficient to read smart card information into a host PC but, as this approach is directed to a smart card reader, inter-device synchronization is not addressed.
  • WO 2007/092997 (Foster et al.) discloses a synchronized USB device that allows the generation of accurate clock frequencies on board the USB device regardless of the accuracy of the clock in the Host PC. The USB SOF packet is decoded by the USB device, and treated as a clock carrier signal instead of acting as a clock reference.
  • The carrier signal, once decoded from the USB traffic, is combined with a scaling factor to generate synchronization information and hence to synthesize a local clock signal with precise control of the clock frequency. In this way, the frequency of the local clock signal can be more accurate than the somewhat ambiguous frequency of the carrier signal.
  • This arrangement is said to be able to produce a local clock signal to arbitrarily high frequencies, such as a clock frequency of tens of megahertz, and thus to ensure that the local clock of each device connected to a given USB is synchronized in frequency. U.S. application Ser. No. 10/620,769 also teaches a method and apparatus to further synchronize multiple local clocks in phase by measurement of signal propagation time from the host to each device and provision of clock phase compensation on each of the USB devices.
  • U.S. patent application Ser. No. 12/279,328 (Foster et. al.) teaches synchronisation of the local clocks of a plurality of USB devices to a timebase received from another interface. In one embodiment, a USB device contains a local clock that is synchronised to an externally provided time signature across Ethernet using the IEEE-1588 protocol. In yet another embodiment the USB device's clock is synchronised to a timebase derived from a Global Positioning System (GPS) synchronised clock.
  • All of the above systems work within the bounds of conventional USB 2.0 and as such are limited in several areas. USB 2.0 is limited in range by the device response timeout. This is the window of time that the USB Host Controller allocates for receipt of a signal from a given USB device in response to a request from the USB Host Controller. The physical reach of USB 2.0 is therefore approximately 25 m.
  • The USB 3.0 specification was released in November 2008 and is also focussed on consumer applications. The USB 3.0 specification makes significant changes to the architecture of USB. In particular, the background art synchronisation schemes discussed above will not work with the new 5 Gb/s protocol (termed ‘SuperSpeed USB’) because it does away with the broadcast mechanism for SOF packets.
  • USB 3.0 defines two parallel and independent USB busses on the same connection cable. Firstly, the USB 2.0 bus remains unchanged (for backward compatibility) and offers Low Speed (1.5 Mb/s), Full Speed (12 Mb/s) and High Speed (480 Mb/s) protocols. The second bus—for 5 Gb/s traffic—provides the SuperSpeed USB. These busses operate independently, except that operation of the busses to a given USB device is mutually exclusive. That is, if a SuperSpeed connection is possible, then the USB 2.0 bus in disconnected to that device.
  • The dual-bus architecture of USB 3.0 is depicted schematically at 10 in FIG. 1. Personal Computer 12, containing USB Host Controller 14, is connected to USB 3.0 Hub 16 by first USB 3.0-compliant cable 18; USB 3.0 device 20 is connected to a downstream port 22 of USB 3.0 Hub 16 by second USB 3.0-compliant cable 24.
  • USB Host Controller 14 contains both a USB 2.0 Host 26 and a SuperSpeed Host 28. These two hosts 26, 28 are independent of one another, and each host 26, 28 is capable of connecting up to 127 devices (including hubs). USB 3.0-compliant cables are compound cables, containing a USB 2.0-compliant cable and a series of shielded conductors capable of transmitting SuperSpeed signals. Hence, USB 3.0-compliant cable 18 comprises USB 2.0-compliant cable 30 and shielded conductors 32.
  • USB 3.0 Hub 16 contains both a USB 2.0 Hub function 34 and a SuperSpeed Hub function 36, each connected directly to its respective Host 26, 28 by compound cable 18. USB 3.0 device 20 contains both a USB 2.0 device function 38 and a SuperSpeed device function 40, each connected back to its respective hub function 34, 36 of USB 3.0 Hub 16 by compound cable 24.
  • At enumeration of USB 3.0 device 20, SuperSpeed Host 28 checks for the presence of a SuperSpeed device function (40). If a SuperSpeed device is found, then a connection is established. If a SuperSpeed device is not found (as in the case where only a USB 2.0 device is connected to port 22), then the USB 2.0 Host 26 checks for the presence of a USB 2.0 device function (38) at device 20. Once the Host Controller 14 determines which device function is connected, it tells the USB 3.0 Hub 16 to only enable communication for downstream port 22 corresponding to whether the USB 2.0 device function 38 or SuperSpeed device function 40 is attached. This means that only one of the two parallel busses is in operation at any one time to an end device such as USB 3.0 device 20.
  • Furthermore, SuperSpeed USB has a different architecture from that of the USB 2.0 bus. Very high speed communication systems consume large amounts of power owing to high bit rates. A design requirement of SuperSpeed USB was lower power consumption, to extend the battery life of user devices. This has resulted in a change from the previous broadcast design of the USB 2.0: SuperSpeed is not a broadcast bus, but rather directs communication packets to a specific node in the system and shuts down communication on idle links.
  • This significantly affects any extension of the synchronisation schemes of, for example, U.S. patent application Ser. No. 12/279,328, whose method and apparatus for synchronising devices is based on a broadcast clock carrier signal that is delivered to each device on the bus, which is unsuitable in SuperSpeed USB.
  • A SuperSpeed Hub function acts as a device to the host (or upstream port) and as a host to the device (or downstream port). This means that the SuperSpeed Hub function acts to buffer and schedule transactions on its downstream ports rather than merely acting as a repeater. Similarly, the SuperSpeed Hub function does so with scheduling transmissions on the upstream port. A heavily burdened Hub function can therefore add significant non-deterministic delays in packet transmission through the system. This also precludes the use of USB 2.0 synchronisation schemes such as that of U.S. patent application Ser. No. 12/279,328 from operating on SuperSpeed USB.
  • The crude Isochronous synchronisation of USB 2.0 has been significantly improved in the USB 3.0 specification. Opening an Isochronous communication pipe between a Host Controller and a USB device guarantees a fixed bandwidth allocation in each Service Interval for the communication pipe. The Isochronous Protocol of USB 3.0 contains a so-called Isochronous Timestamp Packet (ITP), which is sent at somewhat regular intervals to each Isochronous Endpoint and which contains a timestamp of the beginning of ITP transmission by the USB Host Physical Layer (Phy) in the time domain of the Host Controller. The Isochronous Timestamp Packet is accurate to about 25 ns. SuperSpeed USB shuts down idle links to conserve power, but links must be active in order to receive an Isochronous Timestamp Packet. The Host Controller must therefore guarantee that all links to a device are in full active mode (termed power state U0) before transmission of the Isochronous Timestamp Packet.
  • Unfortunately the Isochronous Timestamp packet can be delayed in propagation down the USB network. USB 3.0 also does not provide a way of determining the propagation time of packets in SuperSpeed USB and hence no way of accurately knowing the phase relationship between time domains on different USB devices. Phase differences of several hundred nanoseconds are expected to be a best case scenario with SuperSpeed USB making it impractical for instrumentation or other precision timing requirements.
  • U.S. Pat. No. 5,566,180 (Eidson et al.) discloses a method of synchronising clocks in which a series of devices on a communication network transmit their local time to each other and network propagation time is determined by the ensemble of messages. Further disclosures by Eidson (U.S. Pat. Nos. 6,278,710, 6,665,316, 6,741,952 and 7,251,199) extend this concept but merely work toward a synchronisation scheme in which a constant stream of synchronising messages are transferred between each of the nodes of a distributed instrument network via Ethernet. This continual messaging consumes bandwidth and limits the accuracy of the possible synchronisation to several hundred nano-seconds in a point-to-point arrangement and substantially lower accuracy (typically micro-seconds) in a conventional switched subnet.
  • It should be understood that the terms ‘clock signals’ and ‘synchronisation’ in this disclosure are used to refer to clock signals, trigger signals, delay compensation information and propagation time measurement messages. It should also be understood that a ‘notion of time’ in this disclosure is used to denote an epoch or ‘real time’ and can also be used to refer to the combination of a clock signal and an associated epoch.
  • SUMMARY OF THE INVENTION
  • It is a general object of the present invention to enable precision synchronisation of a plurality USB devices, up to a predefined maximum, according to the USB3 Specification.
  • According to a first broad aspect, the present invention provides a system for synchronising the operation of a measurement instrument having a microcontroller, a local oscillator and function circuitry to an external timebase, the system comprising:
      • a USB Host Controller to which the local oscillator is attachable;
      • an interrupt generator adapted to respond to receipt of one or more Isochronous Timestamp Packets by generating respective interrupts and passing the interrupts to the microcontroller; and
      • a timer or counter adapted to measure an interval between receptions of the Isochronous Timestamp Packets in a time domain of the local oscillator (from which, if desired, information can be derived about a frequency of the local oscillator with respect to the timestamped Isochronous Timestamp Packets);
      • wherein the system is adapted to control the instrument to open one or more Isochronous communication pipes or endpoints to the USB Host Controller, to ensure that the instrument is in link state U0 in preparation for receiving a plurality of Isochronous Timestamp Packets (ITPs) and to control the USB Host Controller to send a plurality of the Isochronous Timestamp Packets to the Isochronous communication pipes or endpoints, the microcontroller is configured to respond to each of the plurality of interrupts (such as with an interrupt service routine provided therein) by generating an output signal adapted to be used as a synchronization reference signal, and the instrument is configured to create a mapping between respective local times of a plurality of operations or events of the function circuitry of the instrument and a time domain of the USB Host Controller.
  • In one embodiment, the system comprises the instrument. In a particular embodiment, the instrument is a SuperSpeed USB device.
  • Thus, the operation of, for example, a SuperSpeed USB device can be synchronised, as each of the operations (or events) can be mapped back to the time domain of the USB Host Controller.
  • The microcontroller may be further configured to read respective timestamps from each of a selected pair of the Isochronous Timestamp Packets, and calculate a period between the selected pair of the Isochronous Timestamp Packets from their respective timestamps (and, further, may optionally form a comparison between the interval between selected successive Isochronous Timestamp Packets as determined by the timer or counter and the calculated period.
  • Thus, knowledge of the time domain of the USB Host Controller may be improved
  • In one embodiment, the system is further adapted system to omit from the comparison any of the Isochronous Timestamp Packets that contains a Packet_Delayed flag.
  • In one embodiment, the microcontroller is further configured to make a plurality of such readings, and to generate a time series of determinations of the local clock period and timestamps.
  • The microcontroller or USB Host Controller may be adapted to statistically analyze the time series and to improve synchronisation accuracy therefrom.
  • Also according to this aspect there is provided a method of synchronising the operation of a measurement instrument
  • to an external timebase, the method comprising:
    the instrument, having a microcontroller and a local oscillator attached to a USB Host Controller, opening one or more Isochronous communication pipes or endpoints to the USB Host Controller;
    ensuring that the instrument is in link state U0 in preparation for receiving a plurality of Isochronous Timestamp Packets (ITP);
    the USB Host Controller sending a plurality of Isochronous Timestamp Packets to the Isochronous communication pipes or endpoints;
      • the instrument receiving the plurality of Isochronous Timestamp
  • Packets and in response generating a respective plurality of interrupts and passing the interrupts to the microcontroller;
      • measuring a time interval between receptions of the Isochronous Timestamp Packets in a time domain of the local oscillator (and optionally deriving information about the frequency of the local oscillator with respect to the timestamped Isochronous Timestamp Packet therefrom); and
      • the instrument creating a mapping between respective local times of a plurality of operations or events of function circuitry of the instrument and a time domain of the USB Host Controller.
  • In one embodiment, the instrument is a SuperSpeed USB device.
  • The method may comprise the microcontroller responding to each of the interrupts (such as with an interrupt service routine provided therein) by generating an output signal adapted to be used as a synchronization reference signal for a plurality or all of the Isochronous Timestamp Packets, and deriving information about the frequency of the local oscillator with respect to the timestamped Isochronous Timestamp Packet therefrom with a first counter/timer measuring the period of interval between reception of successive the output signals.
  • In one embodiment, the method includes mapping each of the operations or events back to the time domain of the USB Host Controller.
  • In one embodiment, the instrument includes instrumentation and measurement or data acquisition circuitry.
  • In one embodiment, the method further comprises:
      • reading respective timestamps from each of the plurality of Isochronous Timestamp Packets; and
      • calculating a period between a selected successive pair of the Isochronous Timestamp Packets from their respective timestamps.
  • The method may include forming a comparison between the interval between the selected successive Isochronous Timestamp Packets as determined by the timer or counter and the calculated period.
  • The method may include omitting any of the Isochronous Timestamp Packets that contain a Packet_Delayed flag from the comparison.
  • The method may comprise making a plurality of the readings and generating a time series of determinations of the local clock period and timestamps.
  • The method may further comprise statistically analyzing the time series and improving synchronisation accuracy therefrom.
  • In a particular embodiment, the interrupts result in interrupt service routines generated in response to the detection of an Isochronous Timestamp Packet by the SuperSpeed USB device.
  • In a particular embodiment, the interrupts are hardware interrupts generated in response to the detection of an Isochronous Timestamp Packet by the SuperSpeed USB device.
  • In one embodiment, the method further comprises:
      • measuring signal propagation time from a selected point in a USB network containing the SuperSpeed USB device to the SuperSpeed USB device; and
      • adjusting the phase of the local oscillator;
      • whereby the local oscillator is synchronised to a desired phase.
  • In an embodiment, the timer/counter uses only those of the Isochronous Timestamp Packets whose transmission was not delayed in a USB network. Furthermore statistical means may be used to improve the accuracy of measurements and improve synchronisation. This may be by averaging the measurements of the interval between reception of successive the output signals, or by performing a statistical analysis on the set of such measurements of the time intervals.
  • In a particular embodiment, the method includes measuring the interval between receptions of the synchronisation reference signals with a counter/timer function clocked from the local oscillator.
  • In an embodiment, the time interval used to measure the frequency of the local oscillator is an interval between receptions of successive Isochronous Timestamp Packets. The accuracy of measurement of the local oscillator frequency may be increased by measurement over multiple successive intervals and using statistical analysis.
  • In one embodiment, the microcontroller has timer/counter functionality. It will be readily understood by those skilled in the art that such counter/timer functionality can be deployed in logic devices external to the microcontroller, for example Field Programmable Gate Arrays (FPGA) or Complex Programmable Logic Devices (CPLD) or a dedicated counter/timer circuit.
  • In one embodiment, the microcontroller has interrupt service routine capability whereby the interrupt service routines can be called or triggered in response to detection of the Isochronous Timestamp Packets.
  • The interrupts may be software interrupts, but in one embodiment, the interrupts are hardware interrupts wherein there is minimal latency in generating the required output from an Interrupt Service Routine (ISR).
  • In one embodiment, the local oscillator is a free-running local oscillator, but it will be understood by those skilled in the art that the local oscillator may assume alternative forms and comprise, for example, a Voltage Controlled Crystal Oscillator (VCXO), a Temperature Compensated Crystal Oscillator (TCXO), an Oven Controlled Crystal Oscillators (OCXO) or a multi-tap clock.
  • It will also be understood by those skilled in the art that the counter/timer circuitry may not be clocked directly from the local oscillator but instead via a clock source divided or multiplied in frequency from the local oscillator.
  • The method of this aspect may be used to synchronise a plurality of USB devices attached to a common USB host controller, whereby the operations or functions of the USB devices are synchronised to an arbitrarily precise degree. Furthermore the method may include determining the propagation time of the timestamped Isochronous Timestamp Packet from the USB Host Controller to the USB device according to any of such method of the present invention described herein, depending on the particular synchronisation channel employed in the respective embodiment.
  • It will be understood by those skilled in the art that measuring the period between receptions of successive carrier signals with respect to the free-running local oscillator is equivalent to knowing the time of the plurality of receptions of Isochronous Timestamp Packets in the time domain of the free-running oscillator. It will also be understood that such a relative notion of time can be referenced to an absolute notion of time.
  • In one embodiment a SuperSpeed synchronisation channel is provided, adapted to determine the respective period of time between reception of successive Isochronous Timestamp Packets. However, this channel may be replaced with a non-SuperSpeed synchronisation channel. The non-SuperSpeed synchronisation channel may be adapted to any one of the methods of synchronisation as disclosed in this invention. The non-SuperSpeed synchronisation channel may include a periodic timing signal adapted for use as the reference timing signal instead of the Isochronous Timestamp Packet in the SuperSpeed synchronisation channel.
  • Furthermore, it is often desirable to know the absolute phase relationship between the plurality of timebases, but one device may be close to the Host Controller and another may be a long distance away. Since each of a plurality of instruments (such as SuperSpeed USB devices) synchronised according to this method would be synchronised to the reception of the plurality of Isochronous Timestamp Packets, absolute phase information is not automatically available.
  • Therefore if the instrument (such as a SuperSpeed USB device) is one of a plurality of like devices, the method may also include an apparatus for determining the relative propagation time of the multicast Isochronous Timestamp Packets from the USB Host Controller to each of the devices, such as by any of the methods for determining propagation time of the present invention described herein. Furthermore each of the devices may contain a mechanism adapted to adjust the phase of their respective local notions of time, resulting in a synchronised USB with known absolute phase relationships between devices.
  • It will be understood by those skilled in the art that such a measurement synchronisation method as described for a USB instrument is also applicable to any measurement instrument that receives a plurality of timestamped signals with which to determine the rate of its local clock and hence the timebase of the local measurement system, including to permit synchronisation of a plurality of disparate networks (for example but not limited to PXI, PXI-express, IEEE-1588 ethernet, PCI, VXI and USB).
  • According to this aspect, there is also provided an apparatus for synchronising the operation of a measurement instrument having a local oscillator and function circuitry to an external timebase, the apparatus comprising:
      • circuitry for decoding a plurality of time-stamped packets from the communication bus;
      • circuitry for measuring a time interval between receptions of the time-stamped packets in a time domain of the local oscillator; and
      • a computing mechanism configured to create a mapping between respective local times of a plurality of operations or events of the function circuitry and a time domain of a communication bus to which the instrument is attached.
  • The apparatus may comprise the instrument.
  • In one embodiment, the measurement instrument is a SuperSpeed USB device and the communication bus is a SuperSpeed USB.
  • In one embodiment, the instrument is an Ethernet-based device.
  • In an embodiment, the local oscillator is a free-running oscillator.
  • In a particular embodiment, the local oscillator is a voltage controller oscillator (VCXO), a temperature compensated crystal oscillator (TCXO), an oven controlled crystal oscillator (OCXO) or some other clock circuitry.
  • In a second broad aspect, the invention provides a method of synchronising the operation of a plurality of instruments each having a microcontroller and a local oscillator attached to a common USB Host Controller, the method comprising:
      • for each respective instrument:
      • (a) the instrument opening one or more Isochronous communication pipes or endpoints to the USB Host Controller;
      • (b) ensuring that the instrument is in link state U0 in preparation for receiving a plurality of Isochronous Timestamp Packets (ITP);
      • (c) the USB Host Controller sending a plurality of Isochronous Timestamp Packets to the Isochronous communication pipes or endpoints;
      • (d) the instrument receiving the plurality of Isochronous Timestamp Packets and in response generating a respective plurality of interrupts and passing the interrupts to the microcontroller;
      • (e) a timer measuring a time interval between receptions of the Isochronous Timestamp Packets in a time domain of the local oscillator; and
      • (f) the instrument creating a mapping between respective local times of a plurality of operations or events of the function circuitry of the instrument and a time domain of the USB Host Controller.
  • The instruments may be SuperSpeed USB devices.
  • In a third broad aspect, the invention provides a system for reducing triggering latency and acquiring data across a plurality of different instrumentation interfaces, comprising:
      • a USB host controller; and
      • a plurality of USB devices in data communication with the USB host controller, each of the USB devices having a synchronous clock, a synchronized real time clock register and a memory;
      • wherein the USB devices are controllable to synchronously commence acquiring data, to store to their respective memory the data once acquired and to store to their respective memory time stamp information indicative of the time of acquisition of at least some of the acquired data; a first of the USB devices is configured to respond to a data collection command to collect data by sending to the USB host controller a first message that includes data indicative of a time of receipt of the data collection command, the USB host controller is configured to respond to the first message by sending the other USB devices a second message including the data indicative of the time of receipt by the first USB device of the data collection command, and the other USB devices are configured to respond to the second message by reading their respective memories and sending acquired data stored therein to the USB host controller commencing from a location in each respective memory corresponding to the time of receipt or a next available location.
  • In a fourth broad aspect, the invention provides a USB system, comprising:
      • a plurality of USB networks, each comprising a USB host controller and a plurality of synchronised USB devices, the plurality of USB networks being synchronised such that the plurality of USB devices across the plurality of USB networks are mutually synchronised;
      • wherein the USB devices are configured (i) to execute a plurality of instructions upon receipt of an external trigger signal, the instructions comprising that the respective USB device make a measurement of one or more parameters of the respective USB device, (ii) to time stamp the respective measurement, and (iii) record the measurement in a respective local memory; and
      • wherein a first of the USB devices is configured to notify its respective USB host controller upon receipt of the external trigger signal, the respective USB host controller is configured to respond to being notified of the receipt by notifying each of the other USB devices connected to the respective USB host controller and the one or more other of the USB host controllers of the receipt of the external trigger signal and its associated timestamp by the first USB device, the other of the USB host controllers are configured to notify their respective USB devices of the occurrence of the external trigger signal and its associated timestamp, the plurality of USB devices on the other of the USB networks are configured to transmit a content of their respective local memories to their respective USB host controller in response to receiving the notification of the receipt, and the plurality of USB devices on the other of the USB networks are configured to execute their respective plurality of instructions in response to receiving notification of the receipt.
  • In one embodiment, the USB devices are configured to continue executing their prescribed instructions while transmitting the contents of their respective local memories to their respective Host Controllers, to continue to buffer data to their respective local memories and to begin steaming data directly to their respective Host Controllers once the contents of their respective memories have been completely transferred to their respective Host Controllers.
  • In a fifth broad aspect, the invention provides a trigger engine or device, comprising:
      • a local clock synchronisable to the respective local clocks of a plurality of USB devices attached to a common USB host controller;
      • wherein the trigger device is configured to time stamp an external trigger signal upon receipt thereof, and to notify the USB host controller of the receipt and of the associated time stamp.
  • In one embodiment, the trigger device is configured to execute a set of instructions and buffer time stamped results thereof in a local memory, and to transmit the buffered and time stamped results to the USB host controller after receipt of the external trigger signal.
  • The device may be adapted to continue executing the set of instructions while transferring the results from the memory to the USB host controller, including buffering data to the memory, and to begin transferring the data to the USB host controller after the results have been transferred to from the memory to the USB host controller.
  • According to this aspect, the invention also provides a USB device, comprising:
      • a local clock; and
      • a local memory;
      • wherein the local clock is synchronisable to respective local clocks of one or more other USB devices, and the USB device is configured to receive a set of instructions from a USB host controller, to initiate the instructions and buffer results in the local memory, and to respond to receiving notification of the time that an external trigger signal was received by a trigger device by transmitting the buffered results to the USB host controller.
  • In one embodiment, the USB device is adapted to continue executing the instructions while transmitting the results to the USB host controller, and to buffer data to the memory and to initiate transferring the data to the USB host controller after the results have been transferred to from the memory to the USB host controller.
  • In a sixth broad aspect, the invention provides a method of reducing the triggering latency of a plurality of devices or instruments attached to a plurality of instrumentation networks, the networks being in data communication with each other and connected by one or more synchronisation channels, the method comprising:
      • synchronising the instrumentation networks via the synchronisation channels;
      • synchronising the devices or instruments to their respective instrumentation networks;
      • configuring the devices or instruments so as to respond to a trigger notification from one or more of the other trigger devices or instruments by executing a plurality of instructions, the instructions being adapted to instruct the devices or instruments to one or more measurements of one or more parameters of the respective devices or instruments;
      • arming the devices or instruments such that the devices or instruments commence performing their prescribed functions synchronously, receive and store to their respective memory data acquired as a result of performing the prescribed functions and store to their respective memory time stamp information indicative of the time of acquisition of the acquired data;
      • one of the trigger devices or instruments responding to receipt of a trigger event by transmitting or initiating transmission of a trigger notification to the other devices or instruments across the plurality of different instrumentation networks;
      • the devices or instruments on the instrumentation networks transmitting the content of their respective local memories to their respective network communication controllers in response to receiving the trigger notification; and
      • the devices or instruments executing their respective plurality of instructions in response to receiving the trigger notification.
  • This aspect also provides an apparatus for transferring trigger signals from a first USB device to a plurality of second USB Devices attached to a USB network with minimal latency, the apparatus comprising:
      • USB hub circuitry adapted to communicate upstream toward a Host Controller and to communicate downstream toward a plurality of USB devices; and
      • trigger engine circuitry adapted to observe communication traffic upstream of the USB hub circuitry and to transmit communication packets downstream to an upstream port of the USB hub circuitry;
      • wherein the trigger engine is configured to decode upstream directed communication from a USB network connected downstream of the apparatus, to search for specific trigger request signals transmitted upstream from the USB network, and to transmit trigger command packets downstream toward the USB hub circuitry upon reception of the trigger request signals.
  • In one embodiment, the apparatus is configured so that communication from upstream of the apparatus to the USB Hub circuitry passes through the trigger engine.
  • The apparatus may further comprise multiplexer circuitry adapted to selectively route either an upstream signal path or output of the trigger engine to the upstream port of the USB hub circuitry.
  • According to this aspect there is still further provided an apparatus for transferring trigger signals from a first USB device to a plurality of second USB Devices attached to a USB network with minimal latency, the apparatus comprising:
      • circuitry adapted for communicating upstream toward a USB Host Controller and communicating downstream toward a plurality of USB devices;
      • trigger engine circuitry adapted to observe all communication traffic through the apparatus; and
      • circuitry adapted to transmit communication packets downstream;
      • wherein the apparatus is adapted to decode upstream directed communication from the plurality of USB devices, to search for specific trigger request signals transmitted upstream from the USB network, and to transmit trigger command packets downstream toward the plurality of USB devices upon reception of the trigger request signals.
  • In one embodiment, the apparatus further comprises multiplexer circuitry adapted to selectively disable an upstream signal connection.
  • According to this aspect there is still further provided a method of transferring trigger signals from a first USB device to one or more second USB devices attached to a USB network with minimal latency, the method comprising:
      • arming the first USB device to receive a Trigger Condition;
      • the first USB device detecting the Trigger Condition;
      • the first USB Device responding by transmitting a Trigger Request message upstream to a USB Host Controller of the USB network;
      • detecting passage of the Trigger Request with a Trigger Engine located in the USB network; and
      • the Trigger Engine responding to detection of the Trigger Request by transmitting a Trigger Command message downstream to the second USB devices.
  • In one embodiment, the method further comprises:
      • opening a communication pipe between a USB Host Controller and the plurality of USB devices; and
      • inserting the Trigger Command into a data packet passing downstream in the communication pipe.
  • In one embodiment, the method further comprises:
      • selectively disconnecting the plurality of USB devices upstream of the Trigger Engine; and
      • transmitting the Trigger Command downstream of the Trigger Engine.
  • The Trigger Condition may be reception of a signal from an external source.
  • The USB devices may be non-SuperSpeed Devices. The Trigger Engine may broadcast the Trigger Command to all attached downstream USB devices.
  • The USB devices may be SuperSpeed USB Devices. The Trigger Engine may selectively transmit the Trigger Command to the second USB devices, each of the second USB devices being addressed using a USB Routing String.
  • In a certain embodiment, the method includes detecting passage of the Trigger Request passing through the Trigger Engine.
  • According to this aspect there is also provided a method of triggering a plurality of first USB devices to perform their respective predefined operations with a trigger signal applied at least one second USB device with minimal latency, the first and second USB devices attached to a common USB network, the method comprising:
      • arming the second USB device to receive a Trigger Condition;
      • the second USB Device detecting the Trigger Condition;
      • the second USB Device responding by transmitting a Trigger Request message upstream to a USB Host Controller of the USB network;
      • detecting passage of the Trigger Request with a Trigger Engine; and
      • the Trigger Engine responding to detecting the passage of the Trigger Request by transmitting a Trigger Command message downstream to the plurality of first USB devices.
  • Thus, the plurality of second USB devices execute their respective predefined operations with minimal trigger propagation latency.
  • In one embodiment, the method further comprises:
      • opening a communication pipe between a USB Host Controller and the plurality of USB devices; and
      • inserting the Trigger Command into a data packet passing downstream in the communication pipe.
  • In an embodiment, the method further comprises:
      • selectively disconnecting the plurality of USB devices upstream of the Trigger Engine; and
      • transmitting the Trigger Command downstream of the Trigger Engine.
  • The Trigger Condition may be reception of a signal from an external source.
  • The USB devices may be non-SuperSpeed Devices. The Trigger Engine may broadcast the Trigger Command to all attached downstream USB devices.
  • The USB devices may be SuperSpeed USB Devices. TheTrigger Engine may selectively transmit the Trigger Command to the second USB devices, the second USB devices being addressed using a USB Routing String.
  • In one embodiment, the method includes detecting passage of the Trigger Request passing through the Trigger Engine.
  • In a seventh broad aspect, the invention provides a method of triggering a plurality of USB devices to perform their respective predefined operations upon reception of a plurality of trigger signals, the USB devices attached to a common USB network, comprising:
      • arming the USB devices to receive respective trigger conditions;
      • configuring a trigger engine attached to the USB network with a specific combinatorial trigger state, the combinatorial trigger state being a combination of trigger states of the USB devices,
      • the USB devices detecting the respective trigger conditions;
      • the USB devices transmitting respective trigger request messages upstream to a USB Host Controller of the USB network, the trigger request messages being indicative of respective trigger states of the USB devices;
      • detecting passage of the trigger requests with the trigger engine;
      • the trigger engine maintaining a record of a trigger status of each of the USB devices;
      • the trigger engine comparing the record of trigger status with the combinatorial trigger state;
      • the trigger engine transmitting a trigger command message downstream to the USB devices upon the trigger status matching the combinatorial trigger state.
  • Thus, the plurality of USB devices execute their respective predefined operations with minimal trigger propagation latency.
  • In one embodiment, the combinatorial trigger state includes time dependence, such that temporal relationships between transitions of the respective plurality of trigger states is important.
  • The method may further comprise:
      • opening a communication pipe between a USB Host Controller and the plurality of USB devices; and
      • inserting the trigger command into a data packet passing downstream in the communication pipe.
  • In one embodiment, the method further comprises:
      • selectively disconnecting the USB devices upstream of the trigger engine; and
      • transmitting the trigger command downstream of the trigger engine.
  • The Trigger Condition may be reception of a signal from an external source.
  • The USB devices are non-SuperSpeed Devices. The trigger engine may broadcasts the trigger command to the USB devices.
  • The USB devices may be SuperSpeed USB Devices. The trigger engine may selectively transmit the trigger command to the USB devices, each of the USB devices being addressed using a USB Routing String.
  • In one embodiment, the method includes detecting passage of the trigger request passing through the trigger engine.
  • According to this aspect, there is also provided an apparatus for triggering a plurality of USB devices attached to a common USB network to perform respective predefined operations upon reception of respective trigger signals, the apparatus comprising:
      • circuitry adapted for communicating upstream toward a USB Host Controller and communicating downstream toward the USB devices;
      • trigger engine circuitry adapted to observe communication traffic through the apparatus;
      • circuitry adapted to compare a plurality of trigger request signals with a predefined Combinatorial Trigger State; and
      • circuitry adapted to transmit communication packets downstream;
      • wherein the apparatus is adapted to decode upstream directed communication from the USB devices, to search for specific trigger request signals transmitted upstream from the USB network, and to transmit trigger command packets downstream toward the USB devices upon reception of the plurality of trigger request signals in correct combinatorial relationship.
  • The combinatorial trigger state may includes time dependence.
  • The apparatus may be further adapted to:
      • open a communication pipe between a USB Host Controller and the USB devices; and
      • insert the trigger command into a data packet passing downstream in the communication pipe.
  • The apparatus may be further adapted to:
      • selective disconnecting the USB devices upstream of a trigger device; and
      • transmit the trigger command downstream of the trigger engine.
  • The Trigger Condition may be reception of a signal from an external source.
  • The USB devices are non-SuperSpeed Devices. The trigger command may be broadcast by a trigger engine to the USB devices.
  • The USB devices may be SuperSpeed USB Devices. The trigger command may be selectively transmitted by a trigger engine to the USB devices, each of the USB devices being addressed using a USB Routing String.
  • The apparatus may be configured to detect passage of the trigger request passing through the trigger engine.
  • It should be noted that all the various features of each of the above aspects of the invention can be combined as suitable and desired.
  • Furthermore, it should be noted that the invention also provides apparatuses and systems arranged to perform each of the methods of the invention described above.
  • In addition, apparatuses according to the invention can be embodied in various ways. For example, such devices could be constructed in the form of multiple components on a printed circuit or printed wiring board, on a ceramic substrate or at the semiconductor level, that is, as a single silicon (or other semiconductor material) chip.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • In order that the present invention may be more clearly ascertained, embodiments will now be described, by way of example, with reference to the accompanying drawing, in which:
  • FIG. 1 is a schematic diagram of the dual-bus architecture of USB3 according to the background art;
  • FIG. 2A is a schematic representation of an apparatus for reducing the triggering latency of USB devices according to an embodiment of the present invention;
  • FIG. 2B is a schematic representation of an apparatus for reducing the triggering latency of USB devices according to another embodiment of the present invention; and
  • FIG. 3 is a schematic representation of a USB network according to another embodiment of the present invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • FIG. 2A is a schematic representation of an apparatus in the form of a Trigger Hub 100 according to an embodiment of the present invention, for reducing the triggering latency of USB devices. Trigger Hub 100 has an upstream port 102, a plurality of downstream ports 106, a USB Hub chip 108 and a Trigger Controller or Engine 110 (connected to upstream port 102 by upstream line 104).
  • Trigger Engine 110 is thus located between upstream port 102 and USB Hub chip 108 such that all upstream communication passes through it. In this way Trigger Engine 110 is able to observe all communication traffic.
  • However, Trigger Engine 110 need not be located ‘inline’ between upstream port 102 and USB Hub chip 108: according to a variant of the embodiment of FIG. 2A, Trigger Engine 110 may be adapted to observe traffic without being inline. FIG. 2B is a schematic representation of a Trigger Hub 100′ according to this variant in which, as compared with Trigger Hub 100 of FIG. 2A, like reference numerals have been used to identify like features. Trigger Hub 100′ thus includes an upstream port 102, a plurality of downstream ports 106 and a USB Hub chip 108, situated as in Trigger Hub 100 of FIG. 2A. Trigger Engine 110′ of Trigger Hub 100′, however, is arranged merely to observe traffic at monitoring point 114 on upstream line 104, and has a separate downstream connection 116 to USB Hub chip 108. Trigger Hub 100′ optionally includes a multiplexer 118 to selectively connect either upstream line 104 or Trigger Engine 110′ to USB Hub chip 108.
  • FIG. 3 is a schematic representation of a USB network 120 according to another embodiment of the present invention. USB network 120, though in some respects a typical and conventional USB network, includes a Trigger Hub 100″ (comprising either Trigger Hub 100 of FIG. 2A or Trigger Hub 100′ of FIG. 2B) to reduce the latency in triggering signals passing from one USB device to another. USB network 120 also contains a USB Host Controller 122, a plurality of USB Hubs 124 and a plurality of USB Devices 126, 128, 130.
  • In one scenario illustrating the operation of USB network 120 (and hence of Trigger Hub 100 or Trigger Hub 100′), USB device 126 wishes to send a low latency trigger to USB devices 128 and 130 (so is henceforth referred to as the ‘trigger device’ 126′). When arming USB devices 128 and 130 to receiver a trigger signal, Host Controller 122 opens a communication pipe downstream to each of devices 128 and 130. This will be referred to as the ‘Trigger Pipe’ and may be an isochronous pipe in which a fixed bandwidth is made available during each USB frame or it may be another form of data pipe.
  • Trigger device 126 is armed and waiting to receive a trigger (typically from an external device). Once the trigger has been received, trigger device responds by sending a message (or trigger request) is transmitted upstream, passing through Trigger Hub 100″ on its way to Host Controller 122. Trigger Engine 110 decodes the upstream message and observes that trigger device 126 has issued a trigger request.
  • Trigger Engine 110 then broadcasts a message, in the form of a Trigger Command, on all downstream ports 106 of Trigger Hub 100″. In the case of non-SuperSpeed USB, the message passes down the entire network and is received by all attached devices. In the case of SuperSpeed USB, Trigger Engine 110 would need to transmit each message individually to a specific network address, defined by the USB Routing String.
  • Each armed USB device 128, 130 receives the downstream trigger command message and executes its own predefined commands. This approach obviates the need for triggers to pass through the operating system, the slowest part of the chain.
  • Trigger Hub 100″ does not have the right to instigate packet transfers according to the USB Specification' only Host Controller 122 has that right. This is why the Trigger Pipe was opened by Host Controller 122 at the beginning of the trigger arming process. In the case of an Isochronous pipe, a small bandwidth channel is opened between Trigger Host 100″ and each attached USB device 126, 128, 130. In the case of non-SuperSpeed devices, only one pipe is required since all packets are broadcast downstream. Once Trigger Hub 100″ receives the trigger command from trigger device 126, Trigger Hub 100″ waits for the next scheduled downstream transmission time in the Trigger Pipe and inserts a trigger command into the downstream packet. This Trigger Command is then received by USB devices 128 and 130, which respond by executing their commands.
  • In another embodiment, Trigger Engine 110 injects phantom packets downstream. Trigger Engine 110 either waits until it comes across a gap in the downstream packet that it can use to inject the phantom packet, or momentarily disconnects reception of signals from upstream port 102, allowing Trigger Engine 110 to transmit the downstream Trigger Command.
  • Furthermore, these techniques are applicable when combinatorial trigger logic must be applied to a plurality of Trigger Requests. If one considers the case where both USB Devices 126 and 128 are designated Trigger Devices, USB Device 130 may be triggered to perform a function when both USB device 126 and USB device 128 meet certain parameters.
  • According to this embodiment, therefore, Trigger Engine 110 contains combinatorial logic. Trigger Engine 110 is programmed by Host Controller 122 with the required combination of triggers. Once Trigger Hub 100″ receives valid trigger requests from both USB devices 126 and 128 it issues a Trigger Command to USB Device 130.
  • Furthermore, this combinatorial logic may include time windowing or other advanced multi-device triggering constraints: essentially any level of complexity of combinatorial logic may be accommodated according to this embodiment. Once all combinations of trigger requests have been received and are valid, a trigger command may be issued by Trigger Engine 110.
  • Thus, these embodiments address the limitation imposed on the speed at which triggers can be transferred from one USB device to the next arising from the Host-centric nature of conventional USB architecture, whereby all communication is initiated by a Host with no direct inter-device communication (a limitation exacerbated by the fact that communication must pass through the operating system, which can have the effect of delaying trigger propagation by milliseconds, or even seconds in cases with a heavily loaded processor).
  • Modifications within the scope of the invention may be readily effected by those skilled in the art. It is to be understood, therefore, that this invention is not limited to the particular embodiments described by way of example hereinabove and that combinations of the various embodiments described herein are readily apparent to those skilled in the art.
  • In the preceding description of the invention and in the claims that follow, except where the context requires otherwise owing to express language or necessary implication, the expression “Host Controller” embraces all forms of USB Host Controller, including standard USB Host controllers, USB-on-the-go Host Controllers and wireless USB Host Controllers.
  • In the preceding description of the invention and in the claims that follow, except where the context requires otherwise owing to express language or necessary implication, the word “comprise” or variations such as “comprises” or “comprising” is used in an inclusive sense, that is, to specify the presence of the stated features but not to preclude the presence or addition of further features in various embodiments of the invention.
  • Further, any reference herein to background art is not intended to imply that such background art forms or formed a part of the common general knowledge in any country.

Claims (20)

1-76. (canceled)
77. An apparatus for transferring trigger signals from a first USB device to a plurality of second USB Devices attached to a USB network with minimal latency, the apparatus comprising:
circuitry adapted for communicating upstream toward a USB Host Controller and communicating downstream toward a plurality of USB devices; and
trigger engine circuitry adapted to observe communication traffic through said apparatus;
wherein said apparatus is adapted to decode upstream directed communication from said plurality of USB devices, to search for specific trigger request signals transmitted upstream from said USB network, and to transmit trigger command packets downstream toward said plurality of USB devices upon reception of said trigger request signals.
78. An apparatus as claimed in claim 77, wherein said trigger engine circuitry is located inline upstream of said circuitry, and is configured to transmit said communication traffic upstream of said circuitry.
79. An apparatus as claimed in claim 77, further comprising multiplexer circuitry adapted to selectively disable an upstream signal connection.
80. An apparatus as claimed in claim 77, wherein
the circuitry comprises USB hub circuitry; and
the trigger engine circuitry is adapted to observe communication traffic upstream of said USB hub circuitry and to transmit communication packets downstream to an upstream port of said USB hub circuitry;
wherein said trigger engine is configured to decode upstream directed communication from a USB network connected downstream of said apparatus, to search for specific trigger request signals transmitted upstream from said USB network, and to transmit trigger command packets downstream toward said USB hub circuitry upon reception of said trigger request signals.
81. An apparatus as claimed in claim 80, configured so that communication from upstream of said apparatus to said USB Hub circuitry passes through said trigger engine.
82. An apparatus as claimed in claim 81, further comprising multiplexer circuitry adapted to selectively route either an upstream signal path or output of said trigger engine to said upstream port of said USB hub circuitry.
83. An apparatus as claimed in claim 77, further comprising:
circuitry adapted to compare a plurality of trigger request signals with a predefined Combinatorial Trigger State;
wherein said apparatus is adapted to decode upstream directed communication from said USB devices, to search for specific trigger request signals transmitted upstream from said USB devices, and to transmit trigger command packets downstream toward said USB devices upon reception of said plurality of trigger request signals in correct combinatorial relationship.
84. An apparatus as claimed in claim 83, wherein said combinatorial trigger state includes time dependence.
85. An apparatus as claimed in claim 83, further adapted to:
open a communication pipe between a USB Host Controller and said USB devices; and
insert said trigger command into a data packet passing downstream in said communication pipe.
86. An apparatus as claimed in claim 83, further adapted to:
selectively disconnect said USB devices upstream of a trigger device; and
transmit said trigger command downstream of said trigger engine.
87. An apparatus as claimed in claim 80, wherein said USB devices include non-SuperSpeed Devices and said trigger command is broadcast by the trigger engine to said non-SuperSpeed USB devices.
88. An apparatus as claimed in claim 80, wherein said USB devices include SuperSpeed USB Devices and said trigger command is selectively transmitted by a trigger engine to said SuperSpeed USB devices, each of said SuperSpeed USB devices being addressed using a USB Routing String.
89. A method of transferring trigger signals from a first USB device to one or more second USB devices attached to a USB network with minimal latency, the method comprising:
arming said first USB device to receive a Trigger Condition;
said first USB device detecting said Trigger Condition;
said first USB Device responding by transmitting a Trigger Request message upstream to a USB Host Controller of said USB network;
detecting passage of said Trigger Request with a Trigger Engine located in said USB network; and
said Trigger Engine responding to detection of said Trigger Request by transmitting a Trigger Command message downstream to said second USB devices.
90. A method as claimed in claim 89, further comprising:
opening a communication pipe between a USB Host Controller and said plurality of USB devices; and
inserting said Trigger Command into a data packet passing downstream in said communication pipe.
91. A method as claimed in claim 89, further comprising:
selectively disconnecting said plurality of USB devices upstream of said Trigger Engine; and
transmitting said Trigger Command downstream of said Trigger Engine.
92. A method as claimed in claim 89, wherein said second USB devices include non-SuperSpeed Devices and said Trigger Command message is broadcast by the Trigger Engine to said non-SuperSpeed Devices.
93. A method as claimed in claim 89, wherein said second USB devices include SuperSpeed USB Devices, wherein said Trigger Engine selectively transmits said Trigger Command to said SuperSpeed USB devices, each of said SuperSpeed USB devices being addressed using a USB Routing String.
94. A method as claimed in claim 89, further comprising:
arming a plurality of said USB devices to receive respective trigger conditions;
configuring the trigger engine with a specific combinatorial trigger state, said combinatorial trigger state being a combination of trigger states of said USB devices,
said USB devices detecting said respective trigger conditions;
said USB devices transmitting respective trigger request messages upstream to the USB Host Controller of said USE network, said trigger request messages being indicative of respective trigger states of said USB devices;
detecting passage of said trigger requests with said trigger engine;
said trigger engine maintaining a record of a trigger status of each of said USB devices;
said trigger engine comparing said record of trigger status with said combinatorial trigger state;
said trigger engine transmitting a trigger command message downstream to said USB devices upon said trigger status matching said combinatorial trigger state.
95. A method as claimed in claim 94, wherein said combinatorial trigger state includes time dependence, such that temporal relationships between transitions of said respective plurality of trigger states is important.
US13/320,388 2009-05-20 2010-05-20 Synchronisation and trigger distribution across instrumentation networks Abandoned US20120066417A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/320,388 US20120066417A1 (en) 2009-05-20 2010-05-20 Synchronisation and trigger distribution across instrumentation networks

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17990409P 2009-05-20 2009-05-20
US13/320,388 US20120066417A1 (en) 2009-05-20 2010-05-20 Synchronisation and trigger distribution across instrumentation networks
PCT/AU2010/000608 WO2010132947A1 (en) 2009-05-20 2010-05-20 Synchronisation and trigger distribution across instrumentation networks

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU2010/000608 A-371-Of-International WO2010132947A1 (en) 2009-05-20 2010-05-20 Synchronisation and trigger distribution across instrumentation networks

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/486,513 Continuation US20150039791A1 (en) 2009-05-20 2014-09-15 Synchronisation and trigger distribution across instrumentation networks

Publications (1)

Publication Number Publication Date
US20120066417A1 true US20120066417A1 (en) 2012-03-15

Family

ID=43125664

Family Applications (11)

Application Number Title Priority Date Filing Date
US13/320,401 Expired - Fee Related US8667316B2 (en) 2009-05-20 2010-05-20 Precision synchronisation architecture for superspeed universal serial bus devices
US13/320,334 Expired - Fee Related US8626980B2 (en) 2009-05-20 2010-05-20 High density, low jitter, synchronous USB expansion
US13/320,437 Abandoned US20120066418A1 (en) 2009-05-20 2010-05-20 Synchronous network of superspeed and non-superspeed usb devices
US13/321,707 Expired - Fee Related US8984321B2 (en) 2009-05-20 2010-05-20 Jitter reduction method and apparatus for synchronised USB devices
US13/320,346 Expired - Fee Related US8793524B2 (en) 2009-05-20 2010-05-20 Method and apparatus for synchronising the local time of a plurality of instruments
US13/320,388 Abandoned US20120066417A1 (en) 2009-05-20 2010-05-20 Synchronisation and trigger distribution across instrumentation networks
US13/320,279 Expired - Fee Related US8745431B2 (en) 2009-05-20 2010-05-20 Compound universal serial bus architecture providing precision synchronisation to an external timebase
US14/255,646 Abandoned US20140229756A1 (en) 2009-05-20 2014-04-17 Compound universal serial bus architecture providing precision synchronisation to an external timebase
US14/303,069 Abandoned US20140298072A1 (en) 2009-05-20 2014-06-12 Method and apparatus for synchronising the local time of a plurality of instruments
US14/486,513 Abandoned US20150039791A1 (en) 2009-05-20 2014-09-15 Synchronisation and trigger distribution across instrumentation networks
US14/557,150 Abandoned US20150089098A1 (en) 2009-05-20 2014-12-01 Synchronous network of superspeed and non-superspeed usb devices

Family Applications Before (5)

Application Number Title Priority Date Filing Date
US13/320,401 Expired - Fee Related US8667316B2 (en) 2009-05-20 2010-05-20 Precision synchronisation architecture for superspeed universal serial bus devices
US13/320,334 Expired - Fee Related US8626980B2 (en) 2009-05-20 2010-05-20 High density, low jitter, synchronous USB expansion
US13/320,437 Abandoned US20120066418A1 (en) 2009-05-20 2010-05-20 Synchronous network of superspeed and non-superspeed usb devices
US13/321,707 Expired - Fee Related US8984321B2 (en) 2009-05-20 2010-05-20 Jitter reduction method and apparatus for synchronised USB devices
US13/320,346 Expired - Fee Related US8793524B2 (en) 2009-05-20 2010-05-20 Method and apparatus for synchronising the local time of a plurality of instruments

Family Applications After (5)

Application Number Title Priority Date Filing Date
US13/320,279 Expired - Fee Related US8745431B2 (en) 2009-05-20 2010-05-20 Compound universal serial bus architecture providing precision synchronisation to an external timebase
US14/255,646 Abandoned US20140229756A1 (en) 2009-05-20 2014-04-17 Compound universal serial bus architecture providing precision synchronisation to an external timebase
US14/303,069 Abandoned US20140298072A1 (en) 2009-05-20 2014-06-12 Method and apparatus for synchronising the local time of a plurality of instruments
US14/486,513 Abandoned US20150039791A1 (en) 2009-05-20 2014-09-15 Synchronisation and trigger distribution across instrumentation networks
US14/557,150 Abandoned US20150089098A1 (en) 2009-05-20 2014-12-01 Synchronous network of superspeed and non-superspeed usb devices

Country Status (7)

Country Link
US (11) US8667316B2 (en)
EP (10) EP2433195B1 (en)
JP (4) JP5575229B2 (en)
CN (3) CN102428423A (en)
AU (7) AU2010251772A1 (en)
CA (3) CA2761379A1 (en)
WO (10) WO2010132938A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120245712A1 (en) * 2010-09-22 2012-09-27 Siemens Aktiengesellschaft Motion control system
WO2013165416A1 (en) * 2012-05-02 2013-11-07 Intel Corporation Configuring a remote m-phy
US20130318390A1 (en) * 2012-05-22 2013-11-28 Fujitsu Limited Information processing apparatus, method of measuring delay difference, and computer readable recording medium recorded with delay difference measuring program
US20140019777A1 (en) * 2012-07-11 2014-01-16 Tsun-Te Shih Power data communication architecture
US20160042729A1 (en) * 2013-03-04 2016-02-11 Empire Technology Development Llc Virtual instrument playing scheme

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1150596B (en) * 1960-01-15 1963-06-20 Wilmot Breeden Ltd Closure for vehicle doors
EP2433195B1 (en) * 2009-05-20 2014-01-22 Chronologic Pty Ltd Jitter reduction method and apparatus for distributed synchronised clock architecture
US8135883B2 (en) * 2010-01-19 2012-03-13 Standard Microsystems Corporation USB hub apparatus supporting multiple high speed devices and a single super speed device
US8428045B2 (en) * 2010-03-16 2013-04-23 Harman International Industries, Incorporated Media clock recovery
US8645601B2 (en) * 2010-06-11 2014-02-04 Smsc Holdings S.A.R.L. Methods and systems for performing serial data communication between a host device and a connected device
US8484387B2 (en) * 2010-06-30 2013-07-09 Silicon Image, Inc. Detection of cable connections for electronic devices
US8719475B2 (en) * 2010-07-13 2014-05-06 Broadcom Corporation Method and system for utilizing low power superspeed inter-chip (LP-SSIC) communications
US8560754B2 (en) * 2010-09-17 2013-10-15 Lsi Corporation Fully integrated, low area universal serial bus device transceiver
US8364870B2 (en) 2010-09-30 2013-01-29 Cypress Semiconductor Corporation USB port connected to multiple USB compliant devices
JP5269047B2 (en) * 2010-11-29 2013-08-21 シャープ株式会社 Electronic equipment system, electronic equipment and connection equipment
US8825925B1 (en) * 2011-02-14 2014-09-02 Cypress Semiconductor Corporation Systems and methods for super speed packet transfer
CN102221860B (en) * 2011-06-14 2012-09-12 浙江红苹果电子有限公司 Method and device for infinite signal cascade of back board signals among chassises
TWI539289B (en) * 2011-06-16 2016-06-21 Eever Technology Inc Usb 3.0 host with low power consumption and method for reducing power consumption of a usb 3.0 host
US8799532B2 (en) 2011-07-07 2014-08-05 Smsc Holdings S.A.R.L. High speed USB hub with full speed to high speed transaction translator
US8996747B2 (en) * 2011-09-29 2015-03-31 Cypress Semiconductor Corporation Methods and physical computer-readable storage media for initiating re-enumeration of USB 3.0 compatible devices
CN102955585A (en) * 2011-08-24 2013-03-06 鸿富锦精密工业(深圳)有限公司 Mouse
US8843664B2 (en) 2011-09-29 2014-09-23 Cypress Semiconductor Corporation Re-enumeration of USB 3.0 compatible devices
JP2013090006A (en) * 2011-10-13 2013-05-13 Nikon Corp Electronic apparatus and program
US8898354B2 (en) * 2011-12-15 2014-11-25 Icron Technologies Corporation Methods and devices for synchronizing to a remotely generated time base
US9590411B2 (en) 2011-12-15 2017-03-07 Schweitzer Engineering Laboratories, Inc. Systems and methods for time synchronization of IEDs via radio link
US9697159B2 (en) * 2011-12-27 2017-07-04 Intel Corporation Multi-protocol I/O interconnect time synchronization
JP5763519B2 (en) * 2011-12-28 2015-08-12 ルネサスエレクトロニクス株式会社 USB hub controller, USB host controller, and system
TWI482026B (en) 2012-02-07 2015-04-21 Etron Technology Inc Low power consumption usb 3.0 host and method for reducing power consumption of a usb 3.0 host
US20130254440A1 (en) * 2012-03-20 2013-09-26 Icron Technologies Corporation Devices and methods for transmitting usb termination signals over extension media
AU2013204757A1 (en) * 2012-06-03 2013-12-19 Chronologic Pty Ltd Synchronisation of a system of distributed computers
US9087158B2 (en) 2012-06-30 2015-07-21 Intel Corporation Explicit control message signaling
CN103577365A (en) * 2012-07-19 2014-02-12 财团法人工业技术研究院 Portable electronic device
US9709680B2 (en) 2012-09-08 2017-07-18 Schweitzer Engineering Laboratories, Inc. Quality of precision time sources
US9599719B2 (en) 2012-10-19 2017-03-21 Schweitzer Engineering Laboratories, Inc. Detection of manipulated satellite time signals
US9400330B2 (en) 2012-10-19 2016-07-26 Schweitzer Engineering Laboratories, Inc. Manipulation resilient time distribution network
CA2886762A1 (en) 2012-10-19 2014-04-24 Schweitzer Engineering Laboratories, Inc. Time distribution device with multi-band antenna
US9520860B2 (en) 2012-10-19 2016-12-13 Schweitzer Engineering Laboratories, Inc. Time distribution switch
KR20140065074A (en) * 2012-11-21 2014-05-29 삼성전자주식회사 Mobile device and usb hub
TWI497306B (en) * 2012-11-29 2015-08-21 Faraday Tech Corp Usb super speed hub and associated traffic managing method
US9709682B2 (en) 2013-05-06 2017-07-18 Schweitzer Engineering Laboratories, Inc. Multi-constellation GNSS integrity check for detection of time signal manipulation
US9759816B2 (en) 2013-01-11 2017-09-12 Schweitzer Engineering Laboratories, Inc. Multi-constellation GNSS integrity check for detection of time signal manipulation
GB2523935B (en) * 2013-01-25 2021-01-20 Hewlett Packard Development Co USB controllers coupled to USB ports
KR20140106184A (en) * 2013-02-26 2014-09-03 삼성전자주식회사 Cable, mobile terminal for connecting thereof and operating method thereof
US20140244852A1 (en) * 2013-02-27 2014-08-28 Ralink Technology Corp. Method of Reducing Mutual Interference between Universal Serial Bus (USB) data transmission and wireless data transmission
JP2014217039A (en) * 2013-04-30 2014-11-17 富士通株式会社 Transmission device and synchronization control method
US9083503B2 (en) 2013-05-02 2015-07-14 Schweitzer Engineering Laboratories, Inc. Synchronized clock event report
CN103309397B (en) * 2013-06-17 2015-11-18 杭州锐达数字技术有限公司 Based on the synchronous sampling method of the data acquisition equipment of USB
US9319100B2 (en) 2013-08-12 2016-04-19 Schweitzer Engineering Laboratories, Inc. Delay compensation for variable cable length
CN104426025B (en) * 2013-09-03 2018-04-17 鸿富锦精密工业(深圳)有限公司 Electronic device connects system
US10855381B2 (en) * 2013-09-19 2020-12-01 Radius Universal Llc Fiber optic communications and power network
US10277330B2 (en) 2013-09-19 2019-04-30 Radius Universal Llc Fiber optic communications and power network
US11025345B2 (en) 2013-09-19 2021-06-01 Radius Universal Llc Hybrid cable providing data transmission through fiber optic cable and low voltage power over copper wire
US9133019B2 (en) * 2013-12-03 2015-09-15 Barry John McCleland Sensor probe and related systems and methods
CN104750649B (en) * 2013-12-31 2017-09-29 中核控制系统工程有限公司 The synchronous time sequence control method of open topological structure bus
US9606955B2 (en) * 2014-02-10 2017-03-28 Intel Corporation Embedded universal serial bus solutions
US9811488B2 (en) 2014-04-29 2017-11-07 Mcci Corporation Apparatus and methods for dynamic role switching among USB hosts and devices
US9270442B2 (en) 2014-04-29 2016-02-23 Schweitzer Engineering Laboratories, Inc. Time signal propagation delay correction
US9462025B2 (en) * 2014-05-04 2016-10-04 Valens Semiconductor Ltd. Increasing link throughput to enable admission without exceeding latency variation limits
US9425652B2 (en) 2014-06-16 2016-08-23 Schweitzer Engineering Laboratories, Inc. Adaptive holdover timing error estimation and correction
CN104133801A (en) * 2014-06-18 2014-11-05 长芯盛(武汉)科技有限公司 Data transmission device and data transmission method
TWI509418B (en) * 2014-06-30 2015-11-21 Chant Sincere Co Ltd A data transfer system and method of controlling the same
CN104156036A (en) * 2014-07-08 2014-11-19 北京中科泛华测控技术有限公司 Multi-board-card synchronous interconnecting method, master board card and slave board cards
JP6458388B2 (en) * 2014-07-30 2019-01-30 ブラザー工業株式会社 Reading device, control method thereof, and computer program
US10579574B2 (en) 2014-09-30 2020-03-03 Keysight Technologies, Inc. Instrumentation chassis with high speed bridge board
US9813173B2 (en) 2014-10-06 2017-11-07 Schweitzer Engineering Laboratories, Inc. Time signal verification and distribution
US9710406B2 (en) * 2014-12-15 2017-07-18 Intel Corporation Data transmission using PCIe protocol via USB port
KR101585063B1 (en) 2014-12-22 2016-01-13 포항공과대학교 산학협력단 A device PHY for serial data communication without an external clock signal
US20160344661A1 (en) * 2015-05-18 2016-11-24 Justin T. Esgar System and method for linking external computers to a server
CN105512071B (en) * 2015-12-07 2018-04-03 上海兆芯集成电路有限公司 High speed interface host-side controller
CN105550134B (en) * 2015-12-07 2018-04-03 上海兆芯集成电路有限公司 High speed interface host-side controller
CN106909198B (en) * 2015-12-22 2020-11-06 华硕电脑股份有限公司 External device, electronic device and electronic system
US10375108B2 (en) 2015-12-30 2019-08-06 Schweitzer Engineering Laboratories, Inc. Time signal manipulation and spoofing detection based on a latency of a communication system
JP2017163204A (en) * 2016-03-07 2017-09-14 APRESIA Systems株式会社 Communication apparatus
US10095653B2 (en) * 2016-04-02 2018-10-09 Intel Corporation Apparatuses, systems, and methods for accurately measuring packet propagation delays through USB retimers
US10503684B2 (en) * 2016-07-01 2019-12-10 Intel Corporation Multiple uplink port devices
US10527732B2 (en) 2017-02-09 2020-01-07 Schweitzer Engineering Laboratories, Inc. Verification of time sources
JP6897307B2 (en) * 2017-05-19 2021-06-30 セイコーエプソン株式会社 Circuit equipment, electronic devices, cable harnesses and data transfer methods
US20180376034A1 (en) * 2017-06-22 2018-12-27 Christie Digital Systems Usa, Inc. Atomic clock based synchronization for image devices
US20190025872A1 (en) * 2017-07-18 2019-01-24 Qualcomm Incorporated Usb device with clock domain correlation
US11592884B2 (en) * 2018-01-25 2023-02-28 Intel Corporation Power management of discrete communication port components
US10896106B2 (en) * 2018-05-10 2021-01-19 Teradyne, Inc. Bus synchronization system that aggregates status
JP7288045B2 (en) * 2018-05-11 2023-06-06 サイジェント テクノロジー インコーポレイテッド Improved data control and access methods and systems
US11630424B2 (en) 2018-07-13 2023-04-18 Schweitzer Engineering Laboratories, Inc. Time signal manipulation detection using remotely managed time
US10713185B2 (en) * 2018-07-16 2020-07-14 Logitech Europe S.A. Wireless communication with peripheral device
US10819727B2 (en) 2018-10-15 2020-10-27 Schweitzer Engineering Laboratories, Inc. Detecting and deterring network attacks
CN109855798A (en) * 2018-12-09 2019-06-07 北京航天计量测试技术研究所 A kind of portable pressure in-line calibration device based on PXI bussing technique
US10912104B2 (en) 2019-02-01 2021-02-02 Schweitzer Engineering Laboratories, Inc. Interleaved, static time division multiple access (TDMA) for minimizing power usage in delay-sensitive applications
CN110018977A (en) * 2019-03-20 2019-07-16 芯启源(上海)半导体科技有限公司 Infringement recognition methods, system, terminal and medium based on usb protocol
US10873402B2 (en) 2019-04-30 2020-12-22 Corning Research & Development Corporation Methods and active optical cable assemblies for providing a reset signal at a peripheral end
US10884973B2 (en) 2019-05-31 2021-01-05 Microsoft Technology Licensing, Llc Synchronization of audio across multiple devices
US11075534B2 (en) * 2019-10-12 2021-07-27 Hynetek Semiconductor Co., Ltd. USB type-C interface circuit and charging method thereof, USB device
US11126220B2 (en) * 2020-01-29 2021-09-21 Dell Products L.P. System and method for time synchronization between information handling systems
US11170800B2 (en) 2020-02-27 2021-11-09 Microsoft Technology Licensing, Llc Adjusting user experience for multiuser sessions based on vocal-characteristic models
US20220327088A1 (en) * 2021-04-12 2022-10-13 Icron Technologies Corporation Predicting free buffer space in a usb extension environment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6496895B1 (en) * 1999-11-01 2002-12-17 Intel Corporation Method and apparatus for intializing a hub interface
US20030182591A1 (en) * 1999-10-07 2003-09-25 Jasmin Ajanovic Method and apparatus for mode selection in a computer system
US20040088445A1 (en) * 2002-07-17 2004-05-06 Weigold Adam Mark Synchronized multichannel universal serial bus
US20060084390A1 (en) * 1998-02-17 2006-04-20 Nokia Corporation Measurement reporting in a telecommunication system
US20060171423A1 (en) * 2005-02-01 2006-08-03 Helms William L Apparatus and methods for multi-stage multiplexing in a network
US20060276914A9 (en) * 2003-04-11 2006-12-07 Zilker Labs, Inc. Point of load regulator having a pinstrapped configuration and which performs intelligent bus monitoring
US20070018850A1 (en) * 2003-07-24 2007-01-25 Hunt Technologies, Inc. Endpoint event processing system

Family Cites Families (127)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4757460A (en) * 1985-06-14 1988-07-12 Zenith Electronics Corporation Communications network with individualized access delays
GB2242800B (en) * 1990-04-03 1993-11-24 Sony Corp Digital phase detector arrangements
JPH05161181A (en) * 1991-12-10 1993-06-25 Nec Corp Time synchronization system
US5553302A (en) * 1993-12-30 1996-09-03 Unisys Corporation Serial I/O channel having independent and asynchronous facilities with sequence recognition, frame recognition, and frame receiving mechanism for receiving control and user defined data
US5832310A (en) * 1993-12-30 1998-11-03 Unisys Corporation Serial I/O channel having dependent and synchronous sources of control data and user defined data
EP0683577A3 (en) * 1994-05-20 1998-09-09 Siemens Aktiengesellschaft Forwarding at high bit rate data streams via data outputs of a device with low internal data processing rate
US5566180A (en) 1994-12-21 1996-10-15 Hewlett-Packard Company Method for recognizing events and synchronizing clocks
US6219628B1 (en) * 1997-08-18 2001-04-17 National Instruments Corporation System and method for configuring an instrument to perform measurement functions utilizing conversion of graphical programs into hardware implementations
JP3189774B2 (en) * 1998-01-28 2001-07-16 日本電気株式会社 Bit synchronization circuit
US6064679A (en) * 1998-05-01 2000-05-16 Emulex Corporation Hub port without jitter transfer
US6278710B1 (en) 1998-09-10 2001-08-21 Agilent Technologies, Inc. Enhancements to time synchronization in distributed systems
US6665316B1 (en) 1998-09-29 2003-12-16 Agilent Technologies, Inc. Organization of time synchronization in a distributed system
US6092210A (en) * 1998-10-14 2000-07-18 Cypress Semiconductor Corp. Device and method for synchronizing the clocks of interconnected universal serial buses
US8073985B1 (en) * 2004-02-12 2011-12-06 Super Talent Electronics, Inc. Backward compatible extended USB plug and receptacle with dual personality
JP2001177570A (en) * 1999-12-17 2001-06-29 Mitsubishi Electric Corp Communication network system, and slave unit, master unit, repeater and synchronization controlling method in communication network system
JP3479248B2 (en) * 1999-12-17 2003-12-15 日本電気株式会社 ATM transmission test equipment
US6297705B1 (en) * 2000-02-23 2001-10-02 Cypress Semiconductor Corp. Circuit for locking an oscillator to a data stream
US6407641B1 (en) * 2000-02-23 2002-06-18 Cypress Semiconductor Corp. Auto-locking oscillator for data communications
US6946920B1 (en) * 2000-02-23 2005-09-20 Cypress Semiconductor Corp. Circuit for locking an oscillator to a data stream
JP3536792B2 (en) * 2000-02-28 2004-06-14 ヤマハ株式会社 Synchronous control device and synchronous control method
US7080160B2 (en) * 2000-04-27 2006-07-18 Qosmetrics, Inc. Method for creating accurate time-stamped frames sent between computers via a network
WO2001088668A2 (en) * 2000-05-18 2001-11-22 Brix Networks, Inc. Hardware time stamping and registration of packetized data method and system
US6680970B1 (en) * 2000-05-23 2004-01-20 Hewlett-Packard Development Company, L.P. Statistical methods and systems for data rate detection for multi-speed embedded clock serial receivers
JP2002007307A (en) * 2000-06-23 2002-01-11 Fuji Photo Film Co Ltd Device and method for controlling equipment
US6343364B1 (en) 2000-07-13 2002-01-29 Schlumberger Malco Inc. Method and device for local clock generation using universal serial bus downstream received signals DP and DM
US6748039B1 (en) * 2000-08-11 2004-06-08 Advanced Micro Devices, Inc. System and method for synchronizing a skip pattern and initializing a clock forwarding interface in a multiple-clock system
DE10041772C2 (en) * 2000-08-25 2002-07-11 Infineon Technologies Ag Clock generator, especially for USB devices
US7093151B1 (en) 2000-09-22 2006-08-15 Cypress Semiconductor Corp. Circuit and method for providing a precise clock for data communications
KR100405023B1 (en) * 2000-12-05 2003-11-07 옵티시스 주식회사 Optical communication interface module for universal serial bus
US6760772B2 (en) * 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
KR100392558B1 (en) * 2001-05-14 2003-08-21 주식회사 성진씨앤씨 Pc-based digital video recorder system with a multiple of usb cameras
US6975618B1 (en) * 2001-06-26 2005-12-13 Hewlett-Packard Development Company, L.P. Receiver and correlator used to determine position of wireless device
US7542867B2 (en) * 2001-08-14 2009-06-02 National Instruments Corporation Measurement system with modular measurement modules that convey interface information
US6823283B2 (en) * 2001-08-14 2004-11-23 National Instruments Corporation Measurement system including a programmable hardware element and measurement modules that convey interface information
US7478006B2 (en) * 2001-08-14 2009-01-13 National Instruments Corporation Controlling modular measurement cartridges that convey interface information with cartridge controllers
US7165005B2 (en) * 2001-08-14 2007-01-16 National Instruments Corporation Measurement module interface protocol database and registration system
US7080274B2 (en) * 2001-08-23 2006-07-18 Xerox Corporation System architecture and method for synchronization of real-time clocks in a document processing system
US7251199B2 (en) 2001-12-24 2007-07-31 Agilent Technologies, Inc. Distributed system time synchronization including a timing signal path
US6741952B2 (en) 2002-02-15 2004-05-25 Agilent Technologies, Inc. Instrument timing using synchronized clocks
GB2385684A (en) * 2002-02-22 2003-08-27 Sony Uk Ltd Frequency synchronisation of clocks
JP2003316736A (en) * 2002-04-19 2003-11-07 Oki Electric Ind Co Ltd Usb circuit and data structure
US7206327B2 (en) * 2002-05-17 2007-04-17 Broadcom Corporation Method and circuit for insertion of time stamp into real time data
US7395366B1 (en) * 2002-09-27 2008-07-01 Cypress Semiconductor Corp. System, method, and apparatus for connecting USB peripherals at extended distances from a host computer
US7269217B2 (en) 2002-10-04 2007-09-11 Intersil Americas Inc. PWM controller with integrated PLL
DE10262079A1 (en) * 2002-12-23 2004-11-18 Infineon Technologies Ag Method and device for extracting a clock frequency on which a data stream is based
US7120813B2 (en) * 2003-01-28 2006-10-10 Robert Antoine Leydier Method and apparatus for clock synthesis using universal serial bus downstream received signals
JP4377603B2 (en) * 2003-03-26 2009-12-02 Okiセミコンダクタ株式会社 Bus communication system and communication control method thereof
JP3909704B2 (en) * 2003-04-04 2007-04-25 ソニー株式会社 Editing system
US7339861B2 (en) * 2003-04-21 2008-03-04 Matsushita Electric Industrial Co., Ltd. PLL clock generator, optical disc drive and method for controlling PLL clock generator
JP4373267B2 (en) * 2003-07-09 2009-11-25 株式会社ルネサステクノロジ Spread spectrum clock generator and integrated circuit device using the same
US20050108600A1 (en) * 2003-11-19 2005-05-19 Infineon Technologies Ag Process and device for testing a serializer circuit arrangement and process and device for testing a deserializer circuit arrangement
US7885250B2 (en) * 2004-02-05 2011-02-08 Koninklijke Philips Electronics N.V. Method and apparatus for synchronization over 802.3AF
JP2005239393A (en) * 2004-02-27 2005-09-08 Kyocera Mita Corp Image forming device
US7456699B2 (en) * 2004-03-22 2008-11-25 Mobius Microsystems, Inc. Frequency controller for a monolithic clock generator and timing/frequency reference
US7319345B2 (en) * 2004-05-18 2008-01-15 Rambus Inc. Wide-range multi-phase clock generator
US7020727B2 (en) * 2004-05-27 2006-03-28 Motorola, Inc. Full-span switched fabric carrier module and method
US6978332B1 (en) * 2004-07-02 2005-12-20 Motorola, Inc. VXS multi-service platform system with external switched fabric link
US20060165132A1 (en) * 2004-11-15 2006-07-27 Emin Chou Computer peripheral interface
US7710965B2 (en) * 2004-11-23 2010-05-04 Broadlogic Network Technologies Inc. Method and system for multi-program clock recovery and timestamp correction
US7835773B2 (en) * 2005-03-23 2010-11-16 Kyocera Corporation Systems and methods for adjustable audio operation in a mobile communication device
CN100487983C (en) * 2005-04-13 2009-05-13 台均科技(深圳)有限公司 USB data audio-signal multiplexing transmitting line
US7480126B2 (en) * 2005-04-27 2009-01-20 National Instruments Corporation Protection and voltage monitoring circuit
US7366939B2 (en) * 2005-08-03 2008-04-29 Advantest Corporation Providing precise timing control between multiple standardized test instrumentation chassis
US7825707B2 (en) * 2006-01-11 2010-11-02 Panasonic Corporation Clock generation circuit having a spread spectrum clocking function
US7830874B2 (en) * 2006-02-03 2010-11-09 Itron, Inc. Versatile radio packeting for automatic meter reading systems
US7610175B2 (en) * 2006-02-06 2009-10-27 Agilent Technologies, Inc. Timestamping signal monitor device
JP2007215039A (en) * 2006-02-10 2007-08-23 Ricoh Co Ltd Frequency synthesizer, communication device, and frequency synthesizing method
AU2007215381B2 (en) * 2006-02-15 2012-06-28 Chronologic Pty. Ltd. Distributed synchronization and timing system
JP2007251228A (en) * 2006-03-13 2007-09-27 Toshiba Corp Voltage-controlled oscillator, operating current adjusting device, and operation current adjustment method of the voltage-controlled oscillator
US20070217169A1 (en) * 2006-03-15 2007-09-20 Yeap Boon L Clamshell housing for instrument modules
US20070217170A1 (en) * 2006-03-15 2007-09-20 Yeap Boon L Multiple configuration stackable instrument modules
US7242590B1 (en) * 2006-03-15 2007-07-10 Agilent Technologies, Inc. Electronic instrument system with multiple-configuration instrument modules
US7509445B2 (en) * 2006-04-12 2009-03-24 National Instruments Corporation Adapting a plurality of measurement cartridges using cartridge controllers
US8660152B2 (en) 2006-09-25 2014-02-25 Futurewei Technologies, Inc. Multi-frame network clock synchronization
JP5054993B2 (en) * 2007-02-09 2012-10-24 富士通株式会社 Conversion device, method, program, recording medium, and communication system for synchronous / asynchronous communication network
TW200841182A (en) * 2007-04-11 2008-10-16 Asustek Comp Inc Multimedia extendable module and computer device thereof
EP2147361B1 (en) 2007-05-15 2012-12-12 Chronologic Pty Ltd Usb based synchronization and timing system
AU2008251023B2 (en) * 2007-05-15 2013-02-07 Chronologic Pty Ltd Method and system for reducing triggering latency in universal serial bus data acquisition
WO2008146427A1 (en) * 2007-05-28 2008-12-04 Nihon University Propagation delay time measuring system
US7778283B2 (en) * 2007-06-04 2010-08-17 Agilent Technologies, Inc. Timing bridge device
US7573342B2 (en) * 2007-07-20 2009-08-11 Infineon Technologies Ag VCO pre-compensation
US8451819B2 (en) * 2008-03-26 2013-05-28 Qualcomm Incorporated Methods and apparatus for uplink frame synchronization in a subscriber station
US8250266B2 (en) * 2008-05-15 2012-08-21 Seagate Technology Llc Data storage device compatible with multiple interconnect standards
US8239581B2 (en) * 2008-05-15 2012-08-07 Seagate Technology Llc Data storage device compatible with multiple interconnect standards
US8341303B2 (en) * 2008-06-30 2012-12-25 Intel Corporation Asymmetrical universal serial bus communications
US8239158B2 (en) * 2008-08-04 2012-08-07 National Instruments Corporation Synchronizing a loop performed by a measurement device with a measurement and control loop performed by a processor of a host computer
US20100066430A1 (en) * 2008-09-12 2010-03-18 Infineon Technologies Ag Controlling a Flicker Noise Characteristic Based on a Dielectric Thickness
TWI374350B (en) * 2008-11-11 2012-10-11 Genesys Logic Inc Serial bus clock frequency calibration system and method
US9104821B2 (en) * 2008-12-31 2015-08-11 Intel Corporation Universal serial bus host to host communications
TW201027351A (en) * 2009-01-08 2010-07-16 Innostor Technology Corp Signal converter of all-in-one USB connector
US8407508B2 (en) * 2009-02-18 2013-03-26 Genesys Logic, Inc. Serial bus clock frequency calibration system and method thereof
EP2433195B1 (en) * 2009-05-20 2014-01-22 Chronologic Pty Ltd Jitter reduction method and apparatus for distributed synchronised clock architecture
US8112571B1 (en) * 2009-07-23 2012-02-07 Cypress Semiconductor Corporation Signal connection device and method
US9197023B2 (en) * 2009-09-14 2015-11-24 Cadence Design Systems, Inc. Apparatus for enabling simultaneous content streaming and power charging of handheld devices
WO2011038211A1 (en) * 2009-09-25 2011-03-31 Analogix Semiconductor, Inc. Dual-mode data transfer of uncompressed multimedia contents or data communications
US8719112B2 (en) * 2009-11-24 2014-05-06 Microsoft Corporation Invocation of accessory-specific user experience
US7865629B1 (en) * 2009-11-24 2011-01-04 Microsoft Corporation Configurable connector for system-level communication
TWI460572B (en) * 2009-12-04 2014-11-11 Via Tech Inc Clock generator and usb module
US8510494B2 (en) * 2009-12-24 2013-08-13 St-Ericsson Sa USB 3.0 support in mobile platform with USB 2.0 interface
US8135883B2 (en) * 2010-01-19 2012-03-13 Standard Microsystems Corporation USB hub apparatus supporting multiple high speed devices and a single super speed device
US8516290B1 (en) * 2010-02-02 2013-08-20 Smsc Holdings S.A.R.L. Clocking scheme for bridge system
US8428045B2 (en) * 2010-03-16 2013-04-23 Harman International Industries, Incorporated Media clock recovery
JP5226722B2 (en) * 2010-03-26 2013-07-03 株式会社バッファロー Storage device
JP5153822B2 (en) * 2010-04-28 2013-02-27 株式会社バッファロー Peripheral device and method for connecting host device and peripheral device
TWI417703B (en) * 2010-07-22 2013-12-01 Genesys Logic Inc Clock-synchronized method for universal serial bus (usb)
US8560754B2 (en) * 2010-09-17 2013-10-15 Lsi Corporation Fully integrated, low area universal serial bus device transceiver
CN101968779A (en) * 2010-09-30 2011-02-09 威盛电子股份有限公司 Universal serial bus transmission transaction translator and microframe synchronous method
US8364870B2 (en) * 2010-09-30 2013-01-29 Cypress Semiconductor Corporation USB port connected to multiple USB compliant devices
US8656205B2 (en) * 2010-10-04 2014-02-18 Jmicron Technology Corp. Generating reference clocks in USB device by selecting control signal to oscillator form plural calibration units
JP5917069B2 (en) * 2010-10-20 2016-05-11 キヤノン株式会社 COMMUNICATION CONTROL DEVICE AND ITS CONTROL METHOD
US8452910B1 (en) * 2010-10-21 2013-05-28 Total Phase, Inc. Capture of USB packets into separate USB protocol streams based on different USB protocol specifications
US8572306B2 (en) * 2010-12-02 2013-10-29 Via Technologies, Inc. USB transaction translator and USB transaction translation method
US9009380B2 (en) * 2010-12-02 2015-04-14 Via Technologies, Inc. USB transaction translator with SOF timer and USB transaction translation method for periodically sending SOF packet
US8825925B1 (en) * 2011-02-14 2014-09-02 Cypress Semiconductor Corporation Systems and methods for super speed packet transfer
US8718088B2 (en) * 2011-05-13 2014-05-06 SiFotonics Technologies Co, Ltd. Signal converter of consumer electronics connection protocols
CN102955585A (en) * 2011-08-24 2013-03-06 鸿富锦精密工业(深圳)有限公司 Mouse
JP5936498B2 (en) * 2012-01-16 2016-06-22 ルネサスエレクトロニクス株式会社 USB3.0 device and control method
US20130191568A1 (en) * 2012-01-23 2013-07-25 Qualcomm Incorporated Operating m-phy based communications over universal serial bus (usb) interface, and related cables, connectors, systems and methods
TWI443494B (en) * 2012-04-16 2014-07-01 M31 Technology Corp Clock Generation Method and System Using Pulse Wave Identification
CN103294636A (en) * 2012-05-09 2013-09-11 威盛电子股份有限公司 Concentrator control chip
US8930585B2 (en) * 2012-05-29 2015-01-06 Mediatek Inc. USB host controller and scheduling methods thereof
US8959272B2 (en) * 2012-07-06 2015-02-17 Blackberry Limited Interposer and intelligent multiplexer to provide a plurality of peripherial buses
KR20140065074A (en) * 2012-11-21 2014-05-29 삼성전자주식회사 Mobile device and usb hub
TWI598738B (en) * 2012-12-24 2017-09-11 宏碁股份有限公司 An interface extension device
CN203102268U (en) * 2013-01-30 2013-07-31 青岛汉泰电子有限公司 Control bus with trigger synchronization function and clock synchronization function
US8954623B2 (en) * 2013-04-23 2015-02-10 Mediatek Inc. Universal Serial Bus devices supporting super speed and non-super speed connections for communication with a host device and methods using the same
KR20150009239A (en) * 2013-07-16 2015-01-26 삼성전자주식회사 Internal interface of image forming apparatus

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060084390A1 (en) * 1998-02-17 2006-04-20 Nokia Corporation Measurement reporting in a telecommunication system
US20030182591A1 (en) * 1999-10-07 2003-09-25 Jasmin Ajanovic Method and apparatus for mode selection in a computer system
US6496895B1 (en) * 1999-11-01 2002-12-17 Intel Corporation Method and apparatus for intializing a hub interface
US20040088445A1 (en) * 2002-07-17 2004-05-06 Weigold Adam Mark Synchronized multichannel universal serial bus
US20060276914A9 (en) * 2003-04-11 2006-12-07 Zilker Labs, Inc. Point of load regulator having a pinstrapped configuration and which performs intelligent bus monitoring
US20070018850A1 (en) * 2003-07-24 2007-01-25 Hunt Technologies, Inc. Endpoint event processing system
US20060171423A1 (en) * 2005-02-01 2006-08-03 Helms William L Apparatus and methods for multi-stage multiplexing in a network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Universal Serial Bus 3.0 Specification", November 12, 2008, Revision 1.0, pages 3-3 and 8-3. *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120245712A1 (en) * 2010-09-22 2012-09-27 Siemens Aktiengesellschaft Motion control system
WO2013165416A1 (en) * 2012-05-02 2013-11-07 Intel Corporation Configuring a remote m-phy
US9092367B2 (en) 2012-05-02 2015-07-28 Intel Corporation Configuring a remote M-PHY
US9904650B2 (en) 2012-05-02 2018-02-27 Intel Corporation Configuring a remote M-PHY
US20130318390A1 (en) * 2012-05-22 2013-11-28 Fujitsu Limited Information processing apparatus, method of measuring delay difference, and computer readable recording medium recorded with delay difference measuring program
US20140019777A1 (en) * 2012-07-11 2014-01-16 Tsun-Te Shih Power data communication architecture
US20160042729A1 (en) * 2013-03-04 2016-02-11 Empire Technology Development Llc Virtual instrument playing scheme
US9734812B2 (en) * 2013-03-04 2017-08-15 Empire Technology Development Llc Virtual instrument playing scheme

Also Published As

Publication number Publication date
EP2433196B1 (en) 2014-07-16
CN102439532A (en) 2012-05-02
AU2010251773A1 (en) 2011-12-01
WO2010132945A1 (en) 2010-11-25
EP2433195A4 (en) 2012-12-26
JP5575229B2 (en) 2014-08-20
US8793524B2 (en) 2014-07-29
JP2014197421A (en) 2014-10-16
WO2010132940A1 (en) 2010-11-25
AU2010251769B2 (en) 2014-12-18
EP2433198A4 (en) 2013-01-23
JP2012527659A (en) 2012-11-08
US8626980B2 (en) 2014-01-07
AU2010251774A1 (en) 2011-12-01
EP2432754B1 (en) 2014-07-16
CN102439531A (en) 2012-05-02
WO2010132941A1 (en) 2010-11-25
JP2012527658A (en) 2012-11-08
WO2010132944A1 (en) 2010-11-25
EP2433193A4 (en) 2013-01-02
US8667316B2 (en) 2014-03-04
US20140229756A1 (en) 2014-08-14
EP2433193B1 (en) 2013-11-27
US20120059964A1 (en) 2012-03-08
EP2432754A1 (en) 2012-03-28
EP2433195B1 (en) 2014-01-22
US8745431B2 (en) 2014-06-03
US20120066418A1 (en) 2012-03-15
CA2761363A1 (en) 2010-11-25
EP2433197A4 (en) 2013-01-02
EP2433194A4 (en) 2012-12-26
EP2433193A1 (en) 2012-03-28
WO2010132939A1 (en) 2010-11-25
EP2433196A4 (en) 2012-12-26
US20150089098A1 (en) 2015-03-26
US20120060045A1 (en) 2012-03-08
WO2010132938A1 (en) 2010-11-25
AU2010251771A1 (en) 2011-12-01
US20120059965A1 (en) 2012-03-08
EP2432754A4 (en) 2013-01-23
AU2010251776A1 (en) 2011-12-01
WO2010132946A1 (en) 2010-11-25
EP2433195A1 (en) 2012-03-28
EP2433194B1 (en) 2014-08-13
WO2010132947A1 (en) 2010-11-25
CA2761379A1 (en) 2010-11-25
EP2433196A1 (en) 2012-03-28
EP2433197A1 (en) 2012-03-28
CN102428423A (en) 2012-04-25
US20150039791A1 (en) 2015-02-05
EP2433198B1 (en) 2014-09-03
US20120066537A1 (en) 2012-03-15
EP2800005A1 (en) 2014-11-05
US8984321B2 (en) 2015-03-17
JP5636043B2 (en) 2014-12-03
EP2433198A1 (en) 2012-03-28
WO2010132943A1 (en) 2010-11-25
JP2012527660A (en) 2012-11-08
EP2433194A1 (en) 2012-03-28
WO2010132942A1 (en) 2010-11-25
AU2010251769A1 (en) 2011-12-01
CA2761377A1 (en) 2010-11-25
EP2790110A1 (en) 2014-10-15
EP2433197B1 (en) 2014-08-13
US20120131374A1 (en) 2012-05-24
AU2010251772A1 (en) 2011-12-01
AU2010251767A1 (en) 2011-12-01
US20140298072A1 (en) 2014-10-02
EP2800004A1 (en) 2014-11-05

Similar Documents

Publication Publication Date Title
EP2433198B1 (en) Synchronisation and trigger distribution across instrumentation networks
US8762762B2 (en) Distributed synchronization and timing system for generating local clock signal based on a desired clock signal embedded in USB data stream
EP2147382B1 (en) Method and system for reducing triggering latency in universal serial bus data acquisition
AU2013204702A1 (en) Compound universal serial bus architecture providing precision synchronisation to an external timebase
AU2012216514A1 (en) Distributed synchronization and timing system

Legal Events

Date Code Title Description
AS Assignment

Owner name: CHRONOLOGIC PTY. LTD., AUSTRALIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FOSTER, PETER GRAHAM;REEL/FRAME:027285/0077

Effective date: 20111109

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION