Clock synchronization over data transmission networks
First Claim
1. A method of synchronizing two clocks, one each at two terminal ends of a transmission network, the method comprising the steps:
- produce a plurality of signals in at least two portions;
a base signal portion, and a program clock reference portion;
transmit signals across a transmission network;
receive a plurality of said signals at a receiving end;
separate program clock references from base signal portions;
use a plurality of program clock references in a least squares linear regression fitting procedure; and
set a clock rate based on the data output from the least squares linear regression procedure.
0 Assignments
0 Petitions
Accused Products
Abstract
A technique has been devised which may be used to synchronize a receiver clock to a transmitter clock at either end of a transmission network having jitter intrinsic therein. The technique is characterized by a modified least squares linear regressive approach which takes advantage of assumptions particular to such transmission networks. The technique finds advantages in comparison to commonly used phase-locked loop techniques which have long startup phase delays where clocks are not in sync. The modified least squares linear regressive technique of the invention provides excellent isolation of jitter and other timing variations while simultaneously providing for quick startup.
-
Citations
18 Claims
-
1. A method of synchronizing two clocks, one each at two terminal ends of a transmission network, the method comprising the steps:
-
produce a plurality of signals in at least two portions;
a base signal portion, and a program clock reference portion;
transmit signals across a transmission network;
receive a plurality of said signals at a receiving end;
separate program clock references from base signal portions;
use a plurality of program clock references in a least squares linear regression fitting procedure; and
set a clock rate based on the data output from the least squares linear regression procedure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
“ - network”
is further defined as a packet network.
-
3. A method of claim 1, where
a receiver clock signal t is a slave, a transmitter clock signal Ts(t) is a master, said receiver clock is related to the transmitter clock by a linear transform in accordance with: -
4. A method of claim 3, comprising the step of using an estimation of {circumflex over (T)}s(t) of the master clock to slave said receiver clock to the master in accordance with:
-
5. A method of claim 3, where {circumflex over (a)} and {circumflex over (b)} are computed in accordance with:
-
6. A method of claim 5, where the receiver estimates frequency drift {circumflex over (a)}i and clock offset {circumflex over (b)}i by processing said clock references {circumflex over (T)}s(t) of the master clock collected through a data transmission network and clock references locally provided by the slave in accordance with:
-
7. A method of claim 6, where the receiver clock is synchronized in accordance with:
-
8. A method of claim 6, where recursion is applied as follows:
-
9. A method of claim 8, where the equations are applied to a plurality of program clock reference sets which are interleaved in time.
-
10. A method of claim 8, where at least one of the program clock references is multiplied by a weighting factor.
-
11. A method of claim 7, comprising the steps
collecting clock references of a reference clock; -
collecting clock references of a local clock;
processing said clock references based upon values for frequency drift and clock offset; and
updating said values for frequency drift and clock offset.
-
-
12. A method of claim 11, where the updated values for frequency drift and clock offset are used to synchronize a slave clock to the master clock of a transmitting end.
-
13. A method of claim 11, comprising the steps
collecting clock references from a data transmission network; -
storing said clock references in a buffer;
adding said clock references to a first element of said buffer and to a value kept in a memory;
collecting clock references from a local clock;
storing said local clock references in a second buffer; and
adding said local clock references to the first element of the second buffer, and to a second value kept in a memory.
-
-
-
14. An apparatus for synchronizing two clocks, a slave clock and a master clock, one each at two terminal ends of a transmission network, the apparatus comprising:
-
two inputs and two outputs, a first input to receive values for program clock references of a received signal, and a second input to receive values representative of a local time;
a first output which represents frequency drift and a second output which represents time offset;
the slave time being regulated by;
- View Dependent Claims (15, 16, 17, 18)
-
Specification