Abstract:
A method of estimating a period and a time delay, or phase, of an input signal. A plurality of transition times {tilde over (t)} i  are received, each transition time {tilde over (t)} i  having a weight α{tilde over (γ)} i  comprising a forgetting factor α and a weighting factor {tilde over (γ)} i . Upon receiving an N th  transition time to and determining an N th  weighting factor γ 0 , maximum likelihood estimates {circumflex over (T)} and {circumflex over (t)} φ  of the period and the time delay, respectively, are calculated. The estimates are computed recursively, with {circumflex over (T)} depending upon α, γ 0 , t 0 , and a preceding maximum likelihood estimate {circumflex over (T)} of the period. The value of {circumflex over (t)} φ  depends upon α, γ 0 , and t 0 . The estimates {circumflex over (T)} and {circumflex over (t)} φ  also depend on sums S N−1   (n) =Σ i=−(N−2)   0 i n α −i{circumflex over (γ)}   i . After the estimates {circumflex over (T)} and {circumflex over (t)} φ  are computed, the sums are updated in anticipation of the next transition time. The method is preferably implemented electronically, resulting in a digital phase locked loop. The weighting factors allow the digital phase locked loop to lock onto a signal having absent transitions.

Description:
FIELD OF THE INVENTION 
     This invention relates generally to methods of timing recovery, and in particular to a digital phase locked loop that uses a recursive, weighted least squares algorithm to determine maximum likelihood estimates of the period and phase of an incoming signal. 
     BACKGROUND 
     Phase locked loops are used to synchronize an electronic device to a regular electrical signal. One possible form that a source signal s ideal  can take is sinusoidal, 
     
       
           s   ideal (ω,φ, t )=sin(ω t +φ). 
       
     
     If the source signal has an unknown frequency ω s , an unknown phase φ s , and is corrupted by noise n(t), the phase locked loop receives an input signal s(t), where 
     
       
           s ( t )= s   ideal (ω s ,φ s   ,t )+ n ( t ). 
       
     
     The phase locked loop estimates the values of the frequency and the phase of the received signal to be {circumflex over (ω)} and {circumflex over (φ)}, respectively. Synchronization occurs when the difference between the estimates and the true values have decreased below given tolerances ε ω and ε φ : 
      |ω s −{circumflex over (ω)}|&lt;ε ω  and |φ s −{circumflex over (φ)}|&lt;ε φ . 
     The phase locked loop uses the estimates {circumflex over (ω)} and {circumflex over (φ)} to generate an output signal. Phase locked loops typically achieve synchronization between the input and output signals using a feedback loop comprising a phase detector, a low pass filter, and a voltage controlled oscillator. While the feedback loop converges to the true values of the frequency and phase given infinite time, the rate of convergence is often slow. 
     A number of phase locked loops have been designed to have an improved convergence rate. In U.S. Pat. No. 5,754,598 by Barrett, Jr. et al., modern optimal control techniques are used to control a phase locked loop for a predetermined period. Classical control techniques are used after the predetermined period. In U.S. Pat. No. 5,291,144 by Ichiyoshi, the input and output signals are complex. The output signal is multiplied by the input signal to obtain a complex phase difference, which is used as feedback to control the output signal. 
     U.S. Pat. No. 5,093,847 by Cheng describes an adaptive phase locked loop that has coefficients that are automatically adjusted to minimize an error signal. A purely digital approach is presented in “Efficient Digital Techniques for Implementing a Class of Fast Phase-Locked Loops” by Kobayashi et al., IEEE Transactions on Industrial Electronics, 43 (1996) pp. 616-620. In this approach, several previous measurements of the frequency of the input signal are averaged to calculate the estimated frequency {circumflex over (ω)}. However, none of the above phase locked loops are stable under large perturbations of the input signal. Furthermore, the digital approach mentioned above fails to take full advantage of modern computing power. 
     Finally, in U.S. Pat. No. 5,875,215 by Dobrica, a carrier synchronizing unit uses a recursive least square type phase and amplitude estimation. The synchronizing unit uses known symbol information to characterize the channel through which the input signal propagates prior to being received. However, the synchronizing unit does not lock onto the input signal directly, nor does it estimate the period of the input signal. 
     Furthermore, many current phase locked loops assume that the input signal is periodic. If the input signal is a digital bit stream, however, the signal is not periodic. The potential for a transition between bits occurs regularly, but a transition does not necessarily take place at every potential transition time. Present state-of-the-art systems that lock on to such aperiodic signals are not tolerant to high levels of interference and noise on the input signal. 
     OBJECTS AND ADVANTAGES 
     It is therefore a primary object of the present invention to provide a phase locked loop that converges quickly to an input signal, is robust to perturbations of the input signal, and estimates the period and phase of the input signal using purely digital means. It is an other object of the present invention to provide a phase locked loop that can lock onto a signal having periodic characteristics but which is not itself periodic. 
     The invention has the advantage that it provides an efficient and stable phase locked loop that can be implemented using modern integrated circuit technology. The invention has the additional advantage that it can lock onto certain noisy aperiodic signals. 
     SUMMARY 
     A method of estimating a period and a time delay of an input signal comprises the step of identifying a plurality of transition times {tilde over (t)} i  of the input signal, where i=−(N−2) to 0. Each transition time {tilde over (t)} i  has a corresponding weight α −i {tilde over (γ)} i  comprising a forgetting factor a and a weighting factor {tilde over (γ)} i . The forgetting factor α reduces the importance of transition times that occurred in the past. The weighting factor {tilde over (γ)} i  gives the relative importance of transition time {tilde over (t)} i . 
     Upon receiving an N th  transition time t 0  and an N th  weighting factor γ 0 , the period and the time delay of the input signal are estimated as {circumflex over (T)} and {circumflex over (t)} φ , respectively. The time delay is proportional to the phase of the input signal. The values of {circumflex over (T)} and {circumflex over (t)} φ  are computed by maximum likelihood techniques using a least squares minimization of an error function that uses the weights α −i {tilde over (γ)} i . The estimates are made in a recursive manner, with {circumflex over (T)} depending on α, γ 0 , t 0 , and a preceding maximum likelihood estimate {tilde over (T)} of the period. The value of {circumflex over (t)} φ  depends on α, γ 0 , and t 0 . 
     The estimates {circumflex over (T)}and {circumflex over (t)} φ  also depend on sums          S     N   -   1       (   n   )       =       ∑     i   =     -     (     N   -   2     )         0            i   n          a     -   i              γ   ~     i                                
     for n=0, 1, and 2. Specifically,          T   ^     =       T   ~     +           (       S     N   -   1       (   0   )       -     S     N   -   1       (   1   )         )          γ   0           a        (         S     N   -   1       (   0   )            S     N   -   1       (   2   )         -       (     S     N   -   1       (   1   )       )     2       )       +       (       S     N   -   1       (   2   )       -     2        S     N   -   1       (   1   )         +     S     N   -   1       (   0   )         )          γ   0                t   0                     and                     t   ^     φ     =           -     (       S     N   -   1       (   2   )       -     2        S     N   -   1       (   1   )         +     S     N   -   1       (   0   )         )            γ   0           a        (         S     N   -   1       (   0   )            S     N   -   1       (   2   )         -       (     S     N   -   1       (   1   )       )     2       )       +       (       S     N   -   1       (   2   )       -     2        S     N   -   1       (   1   )         +     S     N   -   1       (   0   )         )          γ   0                  t   0     .                              
     Once {circumflex over (T)} and {circumflex over (t)} φ  are obtained, the sums are updated in preparation for a subsequent estimate of the period and time delay. 
     The present method is preferably implemented by an integrated circuit that produces an output signal whose period and time delay are equal to {circumflex over (T)} and {circumflex over (t)} φ , respectively. The physical implementation of the present method therefore results in a digital phase locked loop. 
     In some embodiments, the forgetting factor α=1. In some embodiments, the weighting factors γ i =1. In the preferred embodiment, α&lt;1, and each of the weighting factors γ i  is given a value indicating a confidence level in the accuracy of transition time t i.  The weighting factors are particularly useful when receiving a signal with absent transitions. A weighting factor of zero is assigned to missed transitions; therefore good estimates of the period and time delay are maintained. Thus the digital phase locked loop of the present invention can lock onto some aperiodic signals. 
     The forgetting factor α is adjusted to give a desired insensitivity to noise. As α approaches 1, the estimates {circumflex over (T)} and {circumflex over (t)} φ  of the period and time delay become increasingly unresponsive to noise as well as to long-term changes in the period and time delay of the input signal. The forgetting factor α is selected so that, after a predetermined number of transition times, the estimates {circumflex over (T)} and {circumflex over (t)} φ  have a desired variance. The digital phase locked loop can therefore be used even when the input signal is very noisy. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a schematic of a digital phase locked loop according to the preferred embodiment of the invention. 
     FIG. 2 is a schematic of a digital phase locked loop according to a second embodiment of the invention. 
     FIG. 3 is a graph of the variance of an estimated period versus a sample number N. 
     FIG. 4 is a graph of the variance of an estimated time delay versus sample number N. 
     FIG. 5 is a graph of the variance of the estimated period versus a forgetting factor α. 
     FIG. 6 is a graph of the variance of the estimated time delay versus forgetting factor α. 
     FIG. 7 is a contour plot of the variance of the estimated time delay versus N and α. 
    
    
     DETAILED DESCRIPTION 
     I. Method 
     A digital phase locked loop receives an input signal s(t). The input signal is the sum of a source signal s ideal  and a noise term n(t) which corrupts the source signal. The source signal is a function of a source frequency ω s  and a source phase φ s . Therefore the input signal s(t) can be expressed as: 
     
       
           s ( t )= s   ideal (ω s ,φ s   ,t )+ n ( t ). 
       
     
     The noise term n(t) is assumed to be a single humped distribution with a maximum at zero. Standard random variable analysis can therefore be applied to develop maximum likelihood estimations {circumflex over (ω)} and {circumflex over (φ)} of the angular frequency and phase, respectively, of input signal s(t). 
     N samples of the input signal are taken at times t i , resulting in N values s i . The samples are indexed such that −(N−1)≦i≦0. The sample s 0  at time t 0  is the most recent. From these samples an error function err 1  is constructed that depends on an assumed frequency and phase, ω and φ, of the input signal:                  err   1          (     ω   ,   φ     )       =       ∑     i   =     -     (     N   -   1     )         0            (       s   i     -       s   ideal          (     ω   ,   φ   ,   t     )         )     2               (   1   )                                
     Because noise term n(t) is single humped, the values of ω and φ that minimize error function err 1 (ω,φ) are the desired maximum likelihood values {circumflex over (ω)} and {circumflex over (φ)}. When the source frequency and phase do not vary with time, minimizing error function err 1  is the ideal way to find {circumflex over (ω)} and {circumflex over (φ)}, given the assumption about the noise. 
     When ω s  and φ s  vary slowly with time, Eq.(1) should be modified to include a coefficient in the error function that is a function of time or of sample number so that old samples contribute less to the error function than newer samples. For example, a forgetting factor α, where 0&lt;α&lt;1, can be used to construct a new error function err 2 :                  err   2          (     ω   ,   φ     )       =       ∑     i   =     -     (     N   -   1     )         0              a     -   i            (       s   i     -       s   ideal          (     ω   ,   φ   ,   t     )         )       2               (   2   )                                
     When the newer samples close to index zero were generated by a new frequency and phase, and the older samples were generated by a different frequency and phase, the estimates generated from Eq.(2) are closer to the new frequency and phase. 
     The present method uses a digital attribute of input signal s(t). The source signal s ideal  is characterized by a set of periodic times, called transition times t i . Given a digital source, the transition times could be the low to high transitions that occur every period. Given a periodic analog signal, the transition times could be the times of upward zero crossings. In any case, the transition times are ideally regular: 
     
       
           t   i   ideal   =iT   ideal   +t   φ   ideal . 
       
     
     Here T ideal  is the period of the source, T ideal =2π/ω s , and t φ   ideal  is a time delay corresponding to the phase of the source, t φ   ideal =T ideal (φ s /2π). Although t φ   ideal  is a time and not an angle, t φ   ideal  is sometimes referred to as a phase, since t φ   ideal  is proportional to the phase of the source signal. 
     The signal detected is not ideal, but is corrupted by noise that shifts the transition times forward and backward: 
     
       
           t   i   =iT   ideal   +t   φ   ideal   +n   i . 
       
     
     The phase locked loop according to the present invention determines maximum likelihood estimates {circumflex over (T)} and {circumflex over (t)} φ  of the period T ideal  and time delay t φ   ideal  of the source. The estimates {circumflex over (T)} and {circumflex over (t)} φ  are found by constructing an error function err 3  using N transition times t i  and assumed values T and t φ  of the period and time delay of the input signal:                  err   3          (     T   ,     t   φ       )       =       ∑     i   =     -     (     N   -   1     )         0            a     -   i                γ   i          (       t   i     -     (     iT   +     t   φ       )       )       2                 (   3   )                                
     The function err 3  gives a weight α −i γ i  to the i th  transition time. As before, the term α −i is a power of the forgetting factor αthat reduces the importance of samples that occurred in the distant past. 
     The weight of the i th  sample also contains a weighting factor γ i  which can vary from sample to sample. Weighting factor γ i  is a relative importance of a particular sample. The weighting factors are particularly useful when receiving a signal with absent transitions. For example, the phase locked loop may be reconstructing a carrier wave, from a data signal which has transitions that occur irregularly, but always occur within regularly spaced windows. If the i th  transition does not take place within a particular window, a weighting factor γ i =0 is assigned to transition time t i.  The zero weighting factor prevents a missed transition from spoiling the error function, allowing good estimates of {circumflex over (T)} and {circumflex over (t)} φ  to be maintained. 
     The values of T and t φ  that minimize err 3  are the desired maximum likelihood estimates {circumflex over (T)} and {circumflex over (t)} φ . At the minimum of err 3 ,                             ∂     ∂     t   φ                err   3          (     T   ,     t   φ       )                         T   ^     ,       t   ^     φ         =     0                   and                     ∂     ∂   T              err   3          (     T   ,     t   φ       )                    T   ^     ,       t   ^     φ         =   0.                          
     Evaluating these expressions gives                    ∑     i   =     -     (     N   -   1     )         0            a     -   i              γ   i          (       t   i     -     (       i        T   ^       +       t   ^     φ       )       )           =     0                   and              
              ∑     i   =     -     (     N   -   1     )         0            a     -   i              γ   i          (       t   i     -     (       i        T   ^       +       t   ^     φ       )       )          i       =   0.             (   4   )                                
     Five sums are defined as follows:                  S   N     (   0   )       =       ∑     i   =     -     (     N   -   1     )         0            a     -   i            γ   i           ,           (   5   )                   S   N     (   1   )       =       ∑     i   =     -     (     N   -   1     )         0            ia     -   i            γ   i           ,           (   6   )                   S   N     (   2   )       =       ∑     i   =     -     (     N   -   1     )         0            i   2          a     -   i            γ   i           ,           (   7   )                   S   Nt     (   0   )       =       ∑     i   =     -     (     N   -   1     )         0            a     -   i            γ   i          t   i           ,           (   8   )                 S   Nt     (   1   )       =       ∑     i   =     -     (     N   -   1     )         0            ia     -   i            γ   i            t   i     .                 (   9   )                                
     Eqs. (4) can be solved in terms of these sums:                T   ^     =               S   N     (   1   )            S   Nt     (   0   )         -       S   N     (   0   )            S   Nt     (   1   )                 (     S   N     (   1   )       )     2     -       S   N     (   0   )            S   N     (   2   )                             and                       t   ^     φ       =             S   N     (   2   )            S   Nt     (   0   )         -       S   N     (   1   )            S   Nt     (   1   )                 (     S   N     (   1   )       )     2     -       S   N     (   0   )            S   N     (   2   )             .               (   10   )                                
     While it is possible to use Eqs. (10) to determine {circumflex over (T)} and {circumflex over (t)} φ , the phase locked loop of the present invention uses previous estimates of the period and time delay, as well as previous values of the sums of Eqs. (5)-(9). 
     Before the arrival of the N th  transition time t 0 , N−1 transition times {tilde over (t)} i  were received, for i=−(N−2) to 0. Each transition time {circumflex over (t)} i  had weight α −i {tilde over (γ)} i , and (N−1) th  estimates {tilde over (T)} and {tilde over (t)} φ  of the period and the time delay of the input signal were calculated using previous values of the sums of Eqs. (5)-(9). Specifically,          S     N   -   1       (   n   )       =       ∑     i   =     -     (     N   -   2     )         0            i   n          a     -   i              γ   ~     i                                
     for n=0, 1, and 2; and          S       (     N   -   1     )        t       (   n   )       =       ∑     i   =     -     (     N   -   2     )         0            i   n          a     -   i              γ   ~     i            t   ~     i                                
     for n=0 and 1. Then the old estimates {tilde over (T)} and {tilde over (t)} φ  are given by the analogue of Eqs.(10):                  T   ~     =             S     N   -   1       (   1   )            S       (     N   -   1     )        t       (   0   )         -       S     N   -   1       (   0   )            S       (     N   -   1     )        t       (   1   )                 (     S     N   -   1       (   1   )       )     2     -       S     N   -   1       (   0   )            S     N   -   1       (   2   )                             and                         
              t   ~     φ     =             S     N   -   1       (   2   )            S       (     N   -   1     )        t       (   0   )         -       S     N   -   1       (   1   )            S       (     N   -   1     )        t       (   1   )                 (     S     N   -   1       (   1   )       )     2     -       S     N   -   1       (   0   )            S     N   -   1       (   2   )             .               (   11   )                                
     Eqs. (10) can be reworked so that {circumflex over (T)} and {circumflex over (t)} φ  can be calculated in an incremental fashion as new transition times are received, to avoid having to re-evaluate all sums in their entirety just to incorporate the effect of one new transition time. The most recent transition time is t 0 , and transition time t i−1  is older than transition time t i . To incorporate a new transition time, the transition times that were indexed i=−(N−2) through i=0 are shifted to indices i=−(N−1) through i=−1 to make room for the new transition time t 0 . 
     The transformation between old transition times {tilde over (t)} i  and new transition times t i  is: 
     
       
           t   i−1   ={tilde over (t)}   i   −{tilde over (T)}−{tilde over (t)}   φ   (12) 
       
     
     This transformation causes the expectation value, or average value, of t 0  to be zero: 
     
       
         &lt; t   0 &gt;=0. 
       
     
     The arbitrary weighting factors γ i  remain associated with the transition time to which they were first assigned. Therefore the relationship between the old weighting factors {tilde over (γ)} i  and the new weighting factors γ i  is: 
     
       
         γ i−1 ={tilde over (γ)} i .  (13) 
       
     
     Eq. (5) can be transformed into a recursive relationship by breaking out the first element of the sum, reindexing the remaining sum, then using Eq. (13):          S   N     (   0   )       =         γ   0     +       ∑     i   =     -     (     N   -   1     )           -   1              a     -   i            γ   i           =         γ   0     +       ∑     i   =     -     (     N   -   2     )         0            a     -     (     i   -   1     )              γ     i   -   1             =       γ   0     +     a          ∑     i   =     -     (     N   -   2     )         0            a     -   i                γ   ~     i     .                                        
     Therefore, 
     
       
           S   N   (0) =γ 0   +αS   N−1   (0) .  (14) 
       
     
     Similar mathematical manipulations give recursive equations for sums S N   (1)  and S N   (2) : 
     
       
           S   N   (1) =α( S   N−1   (1)   −S   N−1   (0) ),  (15) 
       
     
     
       
           S   N   (2) =α( S   N−1   (2) −2 S   N−1   (1)   −S   N−1   (0) ).  (16) 
       
     
     Recursive relations for S Nt   (n)  can also be derived using Eqs. (12) and (13): 
     
       
           S   Nt   (0) =γ 0   t   0   +αS   (N−1)t   (0)   −αS   N−1   (0) ( {tilde over (T)}+{tilde over (t)}   φ ),  (17) 
       
     
     
       
           S   Nt   (1)   =αS   (N−1)t   (1)   −αS   (N−1)t   (0)   −αS   N−1   (1) ( {circumflex over (T)}+{tilde over (t)}   φ )+α S   N−1   (0) ( {tilde over (T)}+{tilde over (t)}   φ )  (18) 
       
     
     Now, using Eqs. (11) and (14-18), Eqs. (10) can be transformed to the following expressions:                T   ^     =       T   ~     +           (       S     N   -   1       (   0   )       -     S     N   -   1       (   1   )         )          γ   0           a        (         S     N   -   1       (   0   )            S     N   -   1       (   2   )         -       (     S     N   -   1       (   1   )       )     2       )       +       (       S     N   -   1       (   2   )       -     2        S     N   -   1       (   1   )         +     S     N   -   1       (   0   )         )          γ   0                t   0                 (   19   )                   t   ^     φ     =           -     (       S     N   -   1       (   2   )       -     2        S     N   -   1       (   1   )         +     S     N   -   1       (   0   )         )            γ   0           a        (         S     N   -   1       (   0   )            S     N   -   1       (   2   )         -       (     S     N   -   1       (   1   )       )     2       )       +       (       S     N   -   1       (   2   )       -     2        S     N   -   1       (   1   )         +     S     N   -   1       (   0   )         )          γ   0                t   0               (   20   )                                
     Notice that the sums S (N−1)t   (n)  do not appear in Eqs. (19) and (20). 
     Equations (14)-(16) and (19)-(20) are the cornerstones of the present method of implementing a phase locked loop. A computing device maintains the internal variables S N−1   (0) , S N−1   (1) , S N−1   (2) , {tilde over (T)} and {tilde over (t)} φ . The debice then identifies transition time t 0  of the input signal, and determines the value of weighting factor γ 0 . The device calculates new maximum likelihood estimates {circumflex over (T)} and {circumflex over (t)} φ  using Eqs. (19) and (20), then updates the sums according to Eqs. (14)-(16). Preferably, the device creates an output signal based on the estimates {circumflex over (T)} and {circumflex over (t)} φ . The process is repeated for each transition time received. 
     As will be clear to one skilled in the art, the device will operate faster if parts of Eqs. (19) and (20) are calculated in advance, before the arrival of transition time t 0 . For example, in some embodiments, the coefficient of t 0  appearing in Eq. (20) is calculated in advance, assuming γ 0 =1. When transition time to arrives, weighting factor γ 0  is determined. If γ 0 =1, the pre-calculated coefficient is multiplied by transition time t 0  to obtain {circumflex over (t)} φ . If γ 0 =0, {circumflex over (t)} φ =0. 
     In general, the weighting factors γ i  are not determined ahead of time. However, some simplification of the method occurs if all the weighting factors are identically equal to, one: γ i =1. The sums S N−1   (n)  can then be evaluated analytically, with the following results:                  T   ^     =       T   ~     +       [                 (     N   -   1     )          a     N   +   2         -       (       3      N     -   2     )          a     N   +   1         +                   (       3      N     -   1     )          a   N       +     a   2     -     2      a     +   1               a     2      N       -       N   2          a     N   +   1         +     2        (       N   2     -   1     )          a   N       -       N   2          a     N   -   1         +   1       ]          t   0           ,           (   21   )                   t   ^     φ     =       [                 -       (     N   -   1     )     2            a     N   +   2         +       (       3      N     -   4     )          Na     N   +   1         -                   (       3      N     +   1     )          (     N   -   1     )          a   N       +       N   2          a     N   -   1         +     a   2     -   1               a     2      N       -       N   2          a     N   +   1         +     2        (       N   2     -   1     )          a   N       -       N   2          a     N   -   1         +   1       ]            t   0     .               (   22   )                                
     Still further simplification occurs in at least two different limits. In the first limit, the number of samples N is taken to be very large: N→∞. In this case, Eqs. (21) and (22) reduce to: 
     
       
           {circumflex over (T)}={tilde over (T)} +(1−α) 2   t   0 ,  (23) 
       
     
     
       
           {circumflex over (t)}   φ =−(1−α 2 ) t   0 .  (24) 
       
     
     In the second limit, N is finite, and the forgetting factor α approaches unity: α→1. In this limit, Eqs. (21) and (22) become:                  T   ^     =       T   ~     +       6     N        (     N   +   1     )              t   0           ,           (   25   )                   t   ^     φ     =           -   2          (       2      N     -   1     )         N        (     N   +   1     )                t   0     .               (   26   )                                
     II. Apparatus 
     FIG. 1 is a diagram of a circuit  100  of a digital phase locked loop according to the preferred embodiment of the invention. A receiver  10  receives the input signal and sends the input signal to a comparator 12. The comparator identifies transition time t 0  and delivers an electrical signal corresponding to transition time t 0  to circuit elements  14  and  16 . 
     Preferably, comparator  12  compares transition time t 0  to an expected time t′, and determines the value of weighting factor γ 0  based upon the proximity of t 0  to t′. For example, in one embodiment, γ 0 =1 if |t 0 −t′|≦w for some preselected value of w, and γ 0 =0 if |t 0 −t′|&gt;w. Many other methods for choosing the value of γ 0  will be apparent to one skilled in the art, and could be used by comparator  12 . In the preferred embodiment, the times t 0  and t′ are normalized so that t′=0. In other words, transition time t 0  is the time of a transition of the input signal, measured relative to the expected time t′ of the transition. 
     Circuit element  14  computes the maximum likelihood estimate of the time delay, {circumflex over (t)} φ , according to Eq. (20). Circuit element  16  computes the value of {circumflex over (T)} according to Eq. (19). The period and time delay estimates {circumflex over (T)} and {circumflex over (t)} φ  are output from circuit elements  16  and  14  to a signal generator  18  that generates an output signal having a period and a time delay equal to {circumflex over (T)} and {circumflex over (t)} φ , respectively. The output signal is sent to comparator  12 , so that the comparator may determine the expected time t′. The output signal is also sent to an electrical output  20  that transmits the output signal to other devices as needed. 
     Weighting factor γ 0  is output from comparator  12  to an adder  22  whose result is the value of S N   (0)  according to Eq. (14). The value of S N−1   (0)  is stored in delay element  24 , and is sent to circuit elements  14  and  16  to calculate and {circumflex over (t)} φ  and {circumflex over (T)}. S N−1   (0)  is also multiplied by forgetting factor α and is input into adder  22  to compute S N   (0) . The value of S N   (0)  that is output from adder  22  is subsequently stored in delay element  24  in preparation for the arrival of the next transition time. Similarly, adders  26  and  28  output S N   (1)  and S N   (2) , respectively. 
     FIG. 2 is a diagram of a circuit  200  of a digital phase locked loop according to a second embodiment of the invention. In this embodiment, all weighting factors γ i =1. A comparator  30  determines the transition time t 0  of the input signal received by receiver  10 . As before, transition time t 0  is measured relative to the expected time t′ of the transition. Expected time t′ is obtained from signal generator  18 . Transition time t 0  is sent to circuit elements  32  and  34  that compute {circumflex over (T)} and {circumflex over (t)} φ  according to Eqs. (21) and (22), respectively. In an alternative embodiment, circuit elements  32  and  34  compute {circumflex over (T)} and {circumflex over (t)} φ  according to Eqs. (23) and (24), respectively. In another alternative embodiment, circuit elements  32  and  34  compute {circumflex over (T)} and {circumflex over (t)} φ  according to Eqs. (25) and (26), respectively. 
     III. Synchronization Quality 
     The quality of the synchronization of the phase locked loop can be determined by considering the noise in {circumflex over (T)} and {circumflex over (t)} φ  to be generated by the sequence of independent identically distributed random variables n i . Transition times t i  are given by 
     
       
           t   i   =iT   ideal   +t   φ   ideal   +n   i . 
       
     
     If the incoming period T ideal  and phase t φ   ideal  are stable, taking on constant values for all time, then the variation in the estimates {circumflex over (T)} and {circumflex over (t)} φ  is due to the added noise. 
     Through Eqs. (10) the variance of {circumflex over (T)} and {circumflex over (t)} φ  can be expressed in terms of the mean &lt;n&gt; and variance &lt;n 2 &gt;−&lt;n&gt; 2  of each of the n i ′s. Therefore, given the parameters α, N, and the γ i ′s, the accuracy with which the phase locked loop is estimating and locking onto the input signal can be determined. The user can alter the parameters, making trade-offs between locking accuracy, tracking of source variations, and locking speed. 
     The noise is assumed to have the following characteristics: &lt;n i &gt;=0 for every i, and &lt;n i n j &gt;=0 when i≠j. Furthermore, the value of &lt;n i   2 &gt; is the same for every i: &lt;n i   2 &gt;≡&lt;n 2 &gt;. From these assumptions, the variance of {circumflex over (T)} and {circumflex over (t)} φ  can be derived from Eqs. (10):                  〈       T   ^     2     〉     -       〈     T   ^     〉     2       =       1       (         (     S   N     (   1   )       )     2     -       S   N     (   0   )            S   N     (   2   )           )     2            {           (     S   N     (   1   )       )     2            ∑     i   =     -     (     N   -   1     )         0            a       -   2        i            γ   i   2           -     2        S   N     (   0   )            S   N     (   1   )              ∑     i   =     -     (     N   -   1     )         0            ia       -   2        i            γ   i   2           +         (     S   N     (   0   )       )     2            ∑     i   =     -     (     N   -   1     )         0            i   2          a       -   2        i            γ   i   2             }          〈     n   2     〉               (   27   )                   〈       t   ^     φ   2     〉     -       〈       t   ^     φ     〉     2       =       1       (         (     S   N     (   1   )       )     2     -       S   N     (   0   )            S   N     (   2   )           )     2            {           (     S   N     (   2   )       )     2            ∑     i   =     -     (     N   -   1     )         0            a       -   2        i            γ   i   2           -     2        S   N     (   1   )            S   N     (   2   )              ∑     i   =     -     (     N   -   1     )         0            ia       -   2        i            γ   i   2           +         (     S   N     (   1   )       )     2            ∑     i   =     -     (     N   -   1     )         0            i   2          a       -   2        i            γ   i   2             }          〈     n   2     〉               (   28   )                                
     Eqs. (27) and (28) give the variance of the maximum likelihood estimates of the period and time delay for any N, α, and an arbitrary set of weighting factors γ i . 
     A better understanding of the variances of {circumflex over (T)} and {circumflex over (t)} φ  can be obtained by considering the case when γ i =1 for all i. Two limits of this case are especially informative. In the first limit, the forgetting factor α→1 . In this limit,                    〈       T   ^     2     〉     -       〈     T   ^     〉     2       =       12     N        (       N   2     -   1     )              〈     n   2     〉         ,           (   29   )                   〈       t   ^     φ   2     〉     -       〈       t   ^     φ     〉     2       =         2        (       2      N     -   1     )         N        (     N   +   1     )                〈     n   2     〉     .               (   30   )                                
     FIG. 3 shows a graph of the variance of the estimated period, normalized by the variance of the noise, versus N. That is, FIG. 3 is a graph of (&lt;{circumflex over (T)} 2 &gt;−&lt;{circumflex over (T)}&gt; 2 )/&lt;n 2 &gt; versus N, as given by Eq. (29). FIG. 4 is a graph of the normalized variance of the time delay vs. N, as given by Eq. (30). 
     In the second limit, N→∞ and α remains arbitrary. In this limit,                    〈       T   ^     2     〉     -       〈     T   ^     〉     2       =         2        (     1   -     a   3       )           (     1   +   a     )     3            〈     n   2     〉         ,           (   31   )                   〈       t   ^     φ   2     〉     -       〈       t   ^     φ     〉     2       =         1   +     3      a     +     a   2     -     5        a   3             (     1   +   a     )     3              〈     n   2     〉     .               (   32   )                                
     FIG. 5 is a graph of the variance of {circumflex over (T)} vs. α according to Eq. (31). FIG. 6 is a plot of the variance of {circumflex over (t)} φ  vs. α according to Eq. (32). In FIGS. 5 and 6, as in FIGS. 3 and 4, the variances are normalized by the variance of the noise, &lt;n 2 &gt;. 
     As FIGS. 3-6 show, the variance of both the period and the time delay decrease as N increases and as α increases. The variances of the period and the time delay approach zero as α→1 and N→∞. This indicates that given an infinite number of transition times all evenly weighted, the phase locked loop would produce a perfect estimate of the period and the time delay of the input signal. 
     In more realistic situations, Eqs. (27) and (28) must be used to determine the values of α and N that give characteristics that will satisfy the needs of the desired application of the phase locked loop. A larger value of α may be traded off for a larger value of N for a given variance of the period or time delay. A larger value of α slows the response to a variation in either the period T ideal  or phase t φ   ideal  of the source. A larger value of N means a larger number of samples are needed to reach a locked state. 
     FIG. 7 is a contour plot of the normalized variance of {circumflex over (t)} φ  vs. α and N. Along a contour C 9 , the normalized variance of {circumflex over (t)} φ  is equal to 0.9. Along a contour C 1 , the normalized variance is 0.1. Intermediate contours are shown in increments of 0.1. For example, along a contour C 6 , (&lt;{circumflex over (t)} φ   2 &gt;−&lt;{circumflex over (t)} φ &gt; 2 )/&lt;n 2 &gt;=0.6. FIG. 7 can be used to determine the optimum value of α needed for a given application. In FIGS. 3-7, it is assumed that all of the weighting factors are equal to one. 
     It will be apparent to one skilled in the art that many variations of the above method and apparatus are possible. Therefore, the scope of the invention should be determined by the following claims and their legal equivalents.