throbber
(12) United States Patent
`Eidson
`
`USOO627871 OB1
`(10) Patent No.:
`US 6,278,710 B1
`(45) Date of Patent:
`Aug. 21, 2001
`
`(54) ENHANCEMENTS TO TIME
`SYNCHRONIZATION IN DISTRIBUTED
`SYSTEMS
`
`(75) Inventor: John C. Eidson, Palo Alto, CA (US)
`(73) Assignee: Agilent Technologies, Inc., Palo Alto,
`CA (US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(*) Notice:
`
`(21) Appl. No.: 09/151,017
`1-1.
`(22) Filed:
`Sep. 10, 1998
`(51) Int. Cl. ................................ H04L 12/56; H04J 3/06
`(52) U.S. Cl. .......................... 370/394; 390/503; 390/516;
`375/371
`(58) Field of Search ............................. 703/503; 370/514,
`370/520, 516, 394, 509, 518, 510,512;
`375/371, 373, 376, 364; 395/200, 550
`
`(56)
`
`4,890,222
`
`References Cited
`U.S. PATENT DOCUMENTS
`12/1989 Kirk ..................................... 364/200
`
`2/1995 Lennartsson ......................... 395/550
`5,392,421
`7/1996 Gee et al. ............................ 395/200
`5,537,549
`5,640,388 * 6/1997 Woodhead et al. .................. 370/516
`5,896,427 * 4/1999 Muntz et al. .......................... 37/516
`
`* cited by examiner
`
`Primary Examiner Alpus H. Hsu
`ASSistant Examiner Afsar M. Qureshi
`(57)
`ABSTRACT
`A variety of enhancements to a time Synchronization pro
`tocol for a distributed System including techniques for
`improving accuracy by Separating a unique timing point
`from a delimiter for the timing data packet. The enhance
`ments include techniques that compensate for jitter associ
`ated with communication circuitry in the distributed System
`including jitter associated with physical interfaces and gate
`ways in the distributed System. These techniques may
`involve specialized circuitry in the communication circuitry
`to compensate for jitter or Special processing of received
`timing data packets or the introduction of follow up packets
`that inform receiving nodes of measured jitter or a combi
`nation of these techniques.
`
`
`
`Recognizer
`20
`
`Physical
`Interface
`24
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`10 Claims, 7 Drawing Sheets
`
`16
`
`
`
`
`
`
`
`UTP
`
`18
`
`TDP Delimiter 54
`
`
`
`
`
`Time Stam
`50
`p
`
`y
`
`-
`
`\
`
`
`
`
`
`
`
`
`
`60
`
`Time Packet
`Recognizer
`32
`
`ProtoCO
`Stack
`
`LOCal Clock
`36
`
`Time-Stamp
`Latch
`38
`
`PAGE 1 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 1 of 7
`
`US 6,278,710 B1
`
`
`
`|
`
`
`PAGE 2 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 2 of 7
`
`US 6,278,710 B1
`
`FIG.2
`
`30
`
`UTP Detection
`Circuit
`74
`
`
`
`
`
`
`
`
`
`Signal
`Conditioning Circuit
`72
`
`Phase Lock Loop
`(PLL) Circuit
`76
`
`DeCOde Circuit
`78
`
`
`
`60
`
`
`PAGE 3 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 3 of 7
`
`US 6,278,710 B1
`
`FIG. 3
`
`Coupling Circuit
`70
`
`Signal
`Conditioning Circuit
`72
`
`Phase Lock Loop
`(PLL) Circuit
`76
`
`
`
`
`
`
`
`DeCOde Circuit
`78
`
`
`
`
`
`
`
`Phase Error
`Measurement
`Circuit
`80
`
`
`
`
`
`
`
`
`
`
`PAGE 4 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 4 of 7
`
`US 6,278,710 B1
`
`FIG. 4
`
`Communication
`Device
`104
`
`
`
`
`PAGE 5 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 5 of 7
`
`US 6,278,710 B1
`
`FIG. 5
`
`or
`
`a
`
`a
`
`40
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Signal
`Conditioning Circuit
`134
`
`Phase Lock Loop
`(PLL) Circuit
`136
`
`
`
`
`
`Retransmit
`Clock Circuit
`138
`
`Phase Error
`Measurement
`Circuit
`144
`
`Preamble
`Regeneration Circuit
`142
`
`
`PAGE 6 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 6 of 7
`
`US 6,278,710 B1
`
`FIG. 6
`
`.
`
`104
`
`110
`
`Retransmit
`Clock Circuit
`138
`
`Phase Error
`Measurement
`Circuit
`144
`
`O
`4
`
`- - - - -
`Coupling Circuit
`130
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Squelch Circuit
`132
`
`Signal
`Conditioning Circuit
`134
`
`Phase LOCk Loop
`(PLL) Circuit
`136
`
`
`
`Preamble
`Regeneration Circuit
`142
`
`Output
`Delay Circuit
`152
`
`
`
`
`
`
`PAGE 7 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 7 of 7
`
`US 6,278,710 B1
`
`- H - Her a
`
`40
`
`
`
`Coupling Circuit
`130
`
`Squelch Circuit
`132
`
`Signal
`Conditioning Circuit
`134
`
`Phase Lock Loop
`(PLL) Circuit
`136
`
`Preamble
`Regeneration Circuit
`142
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG. 7
`
`104
`
`Retransmit
`Clock Circuit
`138
`
`Time Packet
`Recognizer
`160
`
`
`PAGE 8 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`US 6,278,710 B1
`
`1
`ENHANCEMENTS TO TIME
`SYNCHRONIZATION IN DISTRIBUTED
`SYSTEMS
`
`BACKGROUND OF THE INVENTION
`
`1. Field of Invention
`The present invention pertains to the field of distributed
`Systems. More particularly, this invention relates to enhance
`ments to time Synchronization in distributed Systems.
`2. Art Background
`Distributed Systems are commonly arranged as a collec
`tion of nodes which are interconnected via one or more
`network communication linkS. These network communica
`tion linkS may be packetized linkS Such as Ethernet or one
`or more of a variety of other packetized links that are
`adapted to distributed control System applications.
`Distributed control systems commonly benefit from pre
`cise control of the timing at the distributed nodes. U.S. Pat.
`No. 5,566,180 of Eidson et. al. teaches a method and
`apparatus for providing precise control of timing in distrib
`uted nodes by Synchronizing the local clockS in the distrib
`uted nodes. The Synchronization protocol of Eidson et. al.
`involves the exchange of timing data packets and follow up
`packets among the nodes So that the delay in the transfer of
`a timing data packet from a first node to a Second node in
`combination with timing information in a follow up packet
`can be used to accurately adjust a local clock in the Second
`node.
`A variety of conditions that are commonly found in
`distributed Systems may introduce variation or jitter in the
`delay in the transfer of a timing data packet. For example,
`communication circuitry at various points in the distributed
`System may introduce jitter. In addition, communication
`circuits Such as gateways can introduce jitter that depends on
`the volume of traffic in the system. Unfortunately, such jitter
`may reduce the accuracy of time Synchronization in a
`distributed system.
`
`2
`System. These techniques may involve specialized circuitry
`in the communication circuitry to compensate for jitter or
`Special processing of received timing data packets or the
`introduction of follow up packets that inform receiving
`nodes of measured jitter or a combination of these tech
`niques.
`Other features and advantages of the present invention
`will be apparent from the detailed description that follows.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The present invention is described with respect to par
`ticular exemplary embodiments thereof and reference is
`accordingly made to the drawings in which:
`FIG. 1 shows a distributed system which includes a pair
`of nodes interconnected via a communication link,
`FIG. 2 shows an embodiment of a physical interface
`which includes a UTP detection circuit that improves accu
`racy in the Synchronization of the local clocks by reducing
`jitter in the detection of the UTP,
`FIG. 3 shows an alternative embodiment of a physical
`interface which includes a phase error measurement circuit
`that improves accuracy in the Synchronization of the local
`clocks by reducing jitter in the detection of the UTP,
`FIG. 4 shows a distributed system in which nodes are
`coupled to different communication links interconnected by
`a communication device;
`FIG. 5 shows an embodiment of a communication device
`which includes mechanisms for reducing time Synchroniza
`tion inaccuracies caused by jitter;
`FIG. 6 shows an alternative embodiment of a communi
`cation device which includes mechanisms for reducing time
`Synchronization inaccuracies caused by jitter;
`FIG. 7 shows an embodiment of a communication device
`which includes mechanisms for measuring the delay intro
`duced in the communication device and for passing the
`measured delay onto a node in a follow up packet.
`
`15
`
`25
`
`35
`
`40
`
`SUMMARY OF THE INVENTION
`A variety of enhancements to a time Synchronization
`protocol for a distributed System are disclosed. The enhance
`ments may be embodied in a distributed system which
`includes a first node and a Second node and one or more
`45
`intervening communication links that may includes commu
`nication devices Such as repeaters or gateways. The first
`node includes a local clock and circuitry that generates a
`timing data packet and a follow up packet. The timing data
`packet has a unique timing point and the follow up packet
`includes a time-Stamp obtained from the local clock that
`indicates a time at which the timing data packet is generated.
`The Second node includes circuitry that receives the timing
`data packet and the follow up packet via a communication
`link. The Second node further includes a local clock and
`circuitry that obtains a local time value from the local clock
`when the unique timing point is detected. The difference
`between the time-Stamp from the follow up packet and the
`local time value indicates a relative Synchronization of the
`local clocks in the first and Second nodes.
`The enhancements disclosed herein include techniques
`for improving the accuracy in time Synchronization by
`Separating the unique timing point from a delimiter for the
`timing data packet. The enhancements include techniques
`that compensate for jitter associated with communication
`circuitry in the distributed System including jitter associated
`with physical interfaces and gateways in the distributed
`
`50
`
`55
`
`60
`
`65
`
`DETAILED DESCRIPTION
`FIG. 1 shows a distributed system 10 which includes a
`pair of nodes 12 and 14 interconnected via a communication
`link 40. The nodes 12 and 14 include a pair of local clocks
`22 and 36, respectively, which keep local time for the
`respective nodes 12 and 14. The nodes 12 and 14 also
`include a pair of time packet recognizers 20 and 32,
`respectively, which exchange messages via the communi
`cation link 40 to maintain synchronization of the local
`clocks 22 and 36.
`For example, the time packet recognizer 20 generates a
`timing data packet 18 and transferS it via the communication
`link 40 through a physical interface 24 that enables com
`munication via the communication link 40. The timing data
`packet 18 includes a unique timing point (UTP) 52 and a
`timing data packet (TDP) delimiter 54. At the time that the
`time packet recognizer 20 transferS the timing data packet 18
`to the physical interface 24 it Samples the local clock 22 to
`obtain a time-stamp 50. The time-stamp 50 indicates the
`local time in the node 12 at which the time packet recognizer
`20 transferred the timing data packet 18 to the physical
`interface 24. Thereafter, the time packet recognizer 20
`generates a follow up packet 16 and transferS it via the
`communication link 40. The follow up packet 16 includes
`the time-stamp 50.
`The time packet recognizer 32 receives the timing data
`packet 18 through a physical interface 30 that enables
`
`
`PAGE 9 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`3
`communication via the communication link 40. The physical
`interface 30 generates a set of recovered signals 60 in
`response to the reception of the timing data packet 18. The
`recovered signals 60 include a recovered bit stream which
`carries the elements of the timing data packet 18 including
`the UTP52 and the TDP delimiter 54. The recovered signals
`60 include a recovered clock signal for the recovered bit
`Stream.
`In one embodiment, the time packet recognizer 32 uses
`the recovered signals 60 to detect the UTP 52. Upon
`detection of the UTP52 in the recovered bit stream, the time
`packet recognizer 32 causes a time-Stamp latch 38 to latch
`a local time value from the local clock 36. Thereafter, the
`time packet recognizer 32 verifies whether the timing data
`packet 18 contains the TDP delimiter 54. The TDP delimiter
`54 is a unique pattern that distinguishes timing data packets
`from other types of packets carried on the communication
`link 40. If the TDP delimiter 54 is not found in the packet
`18 then the packet 18 is not a timing data packet and the time
`packet recognizer 32 discards the time value just latched by
`the time-stamp latch 38.
`In another embodiment, the UTP 52 precedes the TDP
`delimiter 54 in the timing data packet 18. In yet another
`embodiment, the UTP 52 and the TDP delimiter 54 are
`merged into the same indicator in the timing data packet 18.
`The time value held in the time-stamp latch 38 indicates
`the local time at which the time packet recognizer 32
`received the timing data packet 18. Thereafter, the time
`packet recognizer 32 receives the follow up packet 16 and
`extracts the time-stamp 50. The difference between the
`time-stamp 50 and the time value in the time-stamp latch 38
`indicates the relative Synchronization of the local clockS 22
`and 36. Once this difference is computed the time packet
`recognizer 32 uses it to adjust the time value in the local
`clock 36 to conform the local clock 36 to the local clock 22.
`The adjustment of the time value in the local clock 36 may
`be accomplished by implementing the local clock 36 as a
`counter driven by an oscillator with sufficient stability. The
`least significant few bits of the counter may be implemented
`as an adder So that the increment on oscillator periods may
`be occasionally increased or decreased to effectively Speed
`up or slow down the local clock 36 in accordance with the
`results of the computation of the difference between the
`time-stamp 50 and the time value held in the time-stamp
`latch 38.
`The nodes 12 and 14 may be any type of node in the
`distributed system 10. For example, any one or both of the
`nodes 12 and 14 may be a Sensor node or an actuator node
`or an application controller node or a combination of these
`in a distributed control System. Any one or more of the nodes
`12 and 14 may be a computer System Such as a personal
`computer.
`The communication link 40 may be implemented with
`one or more of a variety of communication mechanisms. In
`one embodiment, the communication link 40 is an Ethernet
`communication network. In another embodiment, the com
`munication link 40 is a LonTalk field-level control bus
`which is specialized for the proceSS control environment. In
`other embodiments, the communication link 40 may be
`implemented with time division multiple access (TDMA) or
`token ring protocols to name only a few possibilities.
`In one embodiment, the UTP52 is a start-of-frame (SOF)
`delimiter which marks the end of a preamble portion of the
`packet 18. The SOF delimiter is a predefined bit pattern
`which depends on the particular communication protocol
`being used on the communication link 40.
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,278,710 B1
`
`15
`
`25
`
`4
`In one embodiment, the TDP delimiter 54 is a unique
`multi-cast address which is allocated for timing data pack
`ets. In other embodiments, timing data packets are delimited
`by mechanisms. Such as differing carrier frequencies, coding
`methods, or transmission paths from the carrier frequencies,
`coding methods, or transmission paths used by other pack
`etS.
`The physical interface 30 includes a phase lock loop
`circuit and may also include a Squelch circuit each of which
`may introduce jitter in the recovered signals 60 received by
`the time packet recognizer 32. This jitter may cause inac
`curacies in the detected time of the UTP 52 by the time
`packet recognizer 32 which can reduce the overall accuracy
`of synchronization between the local clocks 22 and 36 which
`may be obtained by the above technique.
`One method for reducing the negative effects of jitter
`introduced by the physical interface 30 is to average the
`differences computed between the time value in the time
`stamp latch 38 and the time-stamp 50 for a number of timing
`data packet and corresponding follow up packet pairs. This
`computed average may then be used to adjust the local clock
`36.
`For example, the time packet recognizer 20 may generate
`a timing data packet once per Second along with a corre
`sponding follow up packet. The time packet recognizer 32
`latches a time value from the local clock 36 upon detection
`of each UTP of the received timing data packets and then
`computes a difference between the latched time value and
`the time-Stamp contained in the corresponding follow up
`packet. These differences are then averaged for, for example,
`10 timing data packets, and the averaged result is then used
`to adjust the local clock 36. The averaging may be per
`formed by the time packet recognizer 32 or by processor
`asSociated with the protocol Stack 34.
`This averaging technique may also be used if repeaters or
`gateways or Similar communication devices are interposed
`between the nodes 12 and 14. The averaging would reduce
`the effects of jitter associated with these types of intervening
`communication devices.
`FIG. 2 shows an embodiment of the physical interface 30
`which includes a UTP detection circuit 74 that improves
`accuracy in the Synchronization of the local clockS 22 and 36
`by reducing jitter in the detection of the UTP 52. The
`receiving Side of the physical interface 30 includes a cou
`pling circuit 70 Such as a transformer, a signal conditioning
`circuit 72, a phase lock loop (PLL) circuit 76, and a decode
`circuit 78.
`The PLL circuit 76 receives a raw incoming bit stream 64
`from the Signal conditioning circuit 72 and generates the
`recovered clock signal of the recovered signals 60. The
`decode circuit 78 uses the recovered clock signal to obtain
`the recovered bit stream of the recovered signals 60. The
`recovered bit stream is in phase with a local oscillator of the
`physical interface 30 and this local oscillator usually drifts
`with respect to the phase of the local oscillator in the
`physical interface 24. This phase variation may produce
`jitter in the detection point of the UTP 52 if the recovered
`signals 60 are used to detect the UTP 52.
`Instead, the UTP detection circuit 74 detects the UTP52
`from the raw incoming bit Stream 64, thereby eliminating the
`jitter associated with the recovered signals 60. The UTP
`detection circuit 74 provides a UTP detection signal 62 to
`the time packet recognizer 32 which causes it to latch a time
`value from the local clock 36 when the UTP52 is detected.
`FIG. 3 shows an alternative embodiment of the physical
`interface 30 which includes a phase error measurement
`
`
`PAGE 10 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`S
`circuit 80 that improves accuracy in the synchronization of
`the local clocks 22 and 36 by reducing jitter in the detection
`of the UTP 52. The phase error measurement circuit 80
`measures the difference in phase between the raw incoming
`bit stream 64 and the recovered signals 60. The phase error
`measurement circuit 80 provides the time packet recognizer
`32 with a phase error signal 66 that indicates the difference
`in phase. The time packet recognizer 32 then uses the phase
`error signal 66 to correct the time at which it detects the UTP
`52.
`The phase error measurement circuit 80 may be imple
`mented with a circuit that triggers a pulse by detecting
`threshold levels of the raw incoming bit stream 64. The
`phase of this triggered pulse is then compared to the phase
`of the recovered signals 60. Alternatively, the phase error
`measurement circuit 80 may include a mixer that measures
`the phase error.
`FIG. 4 shows a distributed system 100 in which the nodes
`12 and 14 are coupled to different communication links, the
`communication link 40 and a communication link 102,
`respectively. A communication device 104 provides com
`munication between nodes connected to the communication
`link 40 and nodes connected to the communication link 102.
`The communication device 104 receives timing data packets
`and follow up packets and other packets from the node 12
`via the communication link 40 and transfers them to the
`node 14 via the communication link 102. The communica
`tion device 104 may be a repeater or a Switching hub or a
`gateway or other similar type of device.
`The communication device 104 introduces a delay in the
`transfer of each packet from the communication link 40 to
`the communication link 102 including the timing data pack
`ets. The amount of delay varies depending upon the imple
`mentation of the communication device 104 and network
`load factors. For example, if the communication device 104
`is a repeater it may contain phase lock loop or Squelch
`circuitry that introduces delay. If the communication device
`104 is a gateway it may contain buffers whose delay depends
`on the amount of traffic being routed through the gateway at
`a particular time. Variations in this delay reduces the accu
`racy of time synchronization between the local clocks 20
`and 36 by introducing jitter into the times at which the UTPs
`of timing data packets are received by the time packer
`recognizer 32.
`One method for reducing the effects of the jitter associated
`with the communication device 104 is for the time packet
`recognizer 32 to ignore the received timing data packets that
`have delay greater than a minimum determined delay. For
`example, the time packet recognizer 32 may receive multiple
`pairs of timing data packets and corresponding follow up
`packets and compute corresponding differences between the
`detected UTP time of each timing data packet and the
`time-Stamp of the corresponding follow up packet. The
`minimum difference should be the delay associated with the
`communication device 104 when its buffers are empty. The
`jitter and delay introduced by the communication device 104
`when its buffers are empty is likely to be much less than
`when its buffers are active. The time packet recognizer 32
`ignores any timing data packets that have a Substantially
`greater delay than this minimum delay by discarding the
`corresponding latched local time values and not making any
`local clock adjustments in response to the timing data
`packets that are ignored. This prevents adjustments to the
`local clock 36 which are based on excessive jitter in the
`communication device 104.
`FIG. 5 shows an embodiment of the communication
`device 104 which includes mechanisms for reducing time
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,278,710 B1
`
`15
`
`25
`
`6
`Synchronization inaccuracies caused by jitter. The commu
`nication link 40 to communication link 102 path of the
`communication device 104 in this embodiment includes a
`coupling circuit 130, a Squelch circuit 132, a signal condi
`tioning circuit 134, a phase lock loop (PLL) circuit 136, a
`retransmit clock 138, and a preamble regeneration circuit
`142.
`Packets such as the timing data packet 18 and the follow
`up packet 16 are received via the communication link 40 by
`the coupling circuit 130. After the coupling circuit 132 and
`the squelch circuit 132, the PLL circuit 136 receives a raw
`incoming bit Stream 110 which carries a received packet.
`The PLL circuit 136 generates a recovered clock signal 112
`in response to the raw incoming bit stream 110. The retrans
`mit clock circuit 138 uses the recovered clock signal 112 to
`derive a retransmit clock signal 114.
`The retransmit clock signal 114 includes jitter caused by
`the PLL circuit 138 and this jitter would reduce the accuracy
`of the UTP detection in the node 14 if the retransmit clock
`Signal 114 were used to drive the preamble regeneration
`circuit 142. Instead, this jitter is reduced by a phase error
`measurement circuit 144 and a delay circuit 140.
`The phase error measurement circuit 144 measures the
`phase difference between the raw incoming bit stream 110
`and the retransmit clock signal 114 and generates a phase
`error Signal 116 that indicates this difference. In response to
`the phase error signal 116, the delay circuit 140 delays the
`retransmit clock signal 114 to align its phase to the phase of
`the raw incoming bit stream 110. A delayed and phase
`aligned clock signal 118 is then provided to the preamble
`regeneration circuit 142.
`The preamble regeneration circuit 142 regenerates pre
`ambles for packets relayed from the communication link 40
`to the communication link 102. The preamble regeneration
`circuit 142 also relays the bit stream for received packets
`onto the communication link 102. The preamble and relayed
`packet bit Stream are aligned to the phase of the clock signal
`118.
`FIG. 6 shows an alternative embodiment of the commu
`nication device 104 which includes mechanisms for reduc
`ing time Synchronization inaccuracies caused by jitter. In
`this embodiment, the output of the preamble regeneration
`circuit 142 is clocked by the retransmit clock 114 and is
`delayed by an output delay circuit 152. The amount of delay
`introduced by the output delay circuit 152 is controlled by
`the phase error Signal 116 So that the output from the output
`delay circuit 152 is aligned in phase with the raw incoming
`bit stream 110.
`The output delay circuit 152 may be implemented, for
`example, with a tapped delay line wherein the bit Stream
`from the preamble generation circuit 142 is Steered through
`the appropriate tapped delay line by the phase error Signal
`116.
`FIG. 7 shows an embodiment of the communication
`device 104 which includes mechanisms for measuring the
`delay introduced in the communication device 104 and for
`passing the measured delay onto the node 14 in a follow up
`packet. The communication device 104 includes a time
`packet recognizer 160 that detects the UTP 52 in the raw
`incoming bit stream 110 and that detects the UTP 52 in the
`output bit stream on the communication link 102. The time
`packet recognizer 160 obtains a time value from a local
`clock 162 when it detects the UTP 52 in the raw incoming
`bit stream 110 and obtains a time value from the local clock
`162 when it detects the UTP 52 on the communication link
`102. The difference in these time values is the delay asso
`ciated with the communication device 104.
`
`
`PAGE 11 OF 13
`
`SONOS EXHIBIT 1013
`IPR of U.S. Pat. No. 8,942,252
`
`

`

`7
`The time packet recognizer 160 generates a follow up
`packet that contains the delay associated with the commu
`nication device 104 and transfers it via the communication
`link 102. The time packet recognizer 32 obtains this follow
`up packet and uses the delay associated with the communi
`cation device 104 to correct the difference between the
`time-stamp 50 and the time value in the time-stamp latch 38
`when adjusting the local clock 36.
`The foregoing detailed description of the present inven
`tion is provided for the purposes of illustration and is not
`intended to be exhaustive or to limit the invention to the
`precise embodiment disclosed. Accordingly, the Scope of the
`present invention is defined by the appended claims.
`What is claimed is:
`1. A distributed System, comprising:
`first node having a local clock and circuitry that generates
`a timing data packet and a follow up packet, the timing
`data packet having a unique timing point and a delim
`iter and the follow up packet having a time-Stamp
`obtained from the local clock that indicates a time at
`which the timing data packet is generated;
`Second node having circuitry that receives the timing data
`packet and the follow up packet via the communication
`link, the Second node having a local clock and circuitry
`that obtains a local time value from the local clock
`when the unique timing point is detected and that
`discards the local time value if the delimiter is not
`detected, Such that a difference between the time-Stamp
`of the follow up packet and the local time value if not
`discarded indicates a relative Synchronization of the
`local clocks, the Second node having circuitry for
`adjusting the local time value in the local clock in
`response to the difference.
`2. The distributed system of claim 1, wherein the circuitry
`that receives the timing data packet comprises:
`Signal conditioning circuit that generates a raw bit Stream
`in response to the timing data packet;
`phase lock loop circuit that recovers a clock signal from
`the raw bit stream;
`circuitry generates a detection signal by detecting the
`unique timing point in the raw bit Stream Such that the
`detection signal reduces jitter in the detection of the
`unique timing point that is associated with the phase
`lock loop circuit.
`3. The distributed system of claim 1, wherein the circuitry
`that receives the timing data packet comprises:
`Signal conditioning circuit that generates a raw bit Stream
`in response to the timing data packet;
`circuitry that generates a set of recovered signals from the
`raw bit Stream;
`circuitry generates a phase error Signal that indicates a
`phase difference between the raw bit stream and the
`recovered Signals. Such that the phase error Signal
`enables a correction for jitter associated with the recov
`ered Signals.
`4. The distributed system of claim 1, wherein the second
`node receives a Series of timing data packets and corre
`sponding follow up packets via the communication link and
`further comprises means for determining an average of a Set
`of differences between a series of time values obtained from
`the local clock in response to the Series of timing data
`packets and a corresponding Series of time-Stamps contained
`in the corresponding follow up packets Such that the average
`indicates a relative Synchronization of the local clocks of the
`first and Second nodes.
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,278,710 B1
`
`5
`
`15
`
`25
`
`8
`5. A distributed System, comprising:
`first node coupled to a first communication link and
`having circuitry that generates a timing data packet that
`includes a unique timing point and circuitry that trans
`fers the timing data packet via the first communication
`link,
`Second node having circuitry for receiving the timing data
`packet via a Second communication link and circuitry
`for detecting the unique timing point and for determin
`ing a delay between a time at which the first node
`generated the timing data packet and a time at which
`the unique timing point is detected at the Second node,
`the Second node having a local clock and circuitry for
`adjusting a time value in the local clock in response to
`the delay;
`communication circuit that transferS the timing data
`packet between the first communication link and the
`Second communication link, the communication circuit
`having means for reducing an inaccuracy in the delay
`between the time at which the first node generated the
`timing data packet and the time at which the unique
`timing point is detected at the Second node wherein the
`inaccuracy is caused by jitter introduced by the com
`munication circuit.
`6. The distributed system of claim 5, wherein the means
`for reducing an inaccuracy in the delay comprises:
`Signal conditioning circuit that generates a raw bit stream
`in response to the timing data packet;
`phase lock loop circuit that generates a recovered clock
`Signal from the raw bit stream;
`circuitry that determines a phase error between the recov
`ered clock signal and the raw bit stream and that
`generates a delayed clock signal in response to the
`phase error and the recovered clock signal Such that
`delayed clock Signal is aligned to the raw bit Stream;
`circuitry that regenerates a preamble for transferring the
`timing data packet Over the Second communication link
`Such that the preamble is aligned to the delay ed clock
`Signal.
`7. A distributed System, comprising:
`first node coupled to a first communication link and
`having circuitry that generates a timing data packet that
`includes a unique timing point and circuitry that trans
`fers the timing data packet via the first communication
`link,
`Second node having circuitry for receiving the timing data
`packet via a Second communication link and circuitry
`for detecting the unique timing point and for determin
`ing a delay between a time at which the first node
`generated the timing data packet and a time at which
`the unique timing point is detected at the Second node,
`communication circuit that transferS the timing data
`packet between the first communication link and the
`Second communication link, the communication circuit
`having means for reducing an inaccuracy in the delay
`between the time at which the firs

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket