This invention relates to the field of phase locked loops, and in particular to a method of speeding up output alignment in a digital phase-locked loop (DPLL).
In a prior art DPLL as shown in
In many applications, it is a requirement that the output clock not only be synchronized to the reference clock, but also that its phase be aligned to the exact time reference. In a DPLL, the phase alignment of DCO/VCO output clock can be achieved by directly controlling the phase of the output clock with SDCO phase value as shown in
The SDCO can control the DCO phase if both run on the same system clock. If there is any hardware delay in between the DCO and VCO, or in a VCO output pad, or in clock synthesis, such a hardware delay may cause the output clock to lose alignment with the reference clock.
In co-pending application Ser. No. 15/064,663, filed Mar. 9, 2016 and published as US 2016/0294401, the contents of which are herein incorporated by reference, it was shown that the hardware delay can be measured with a feedback path and the resulting delay compensated by adjusting the output clock with a pattern shifter.
The delay can be measured by averaging the phase delay between the sampled feedback output clock and the SDCO internal phase. The measured delay can then be compensated by adjusting the output pattern shifter as shown in
Embodiments of the invention describe an architecture and methodology to speed up measurement time for an unknown hardware delay ideal for use when the output frequency is low, for example, in the order of 10 Hz or less. The total required alignment time is much shorter and the alignment precision is not affected.
According to a first aspect of the invention there is provided a method of performing output clock alignment in a digital phase locked loop wherein a controlled oscillator generates synthesizer pulses that are divided to produce output pulses at a predetermined normal spacing and time location, and wherein during an alignment procedure said output pulses are moved in time in response to a delay value obtained by comparing a phase of the output pulses with a phase applied to the controlled oscillator averaged over a number of synthesizer pulses in a feedback circuit to align said output pulses with a reference clock taking into account hardware delay, the method comprising advancing a group of said output pulses during the alignment procedure to reduce the spacing between said output pulses; determining the delay value averaged over said group of output pulses with reduced spacing; generating subsequent output pulses at their normal spacing and time locations; and moving said subsequent output pulses in time by said delay value to compensate for the hardware delay.
In a preferred embodiment the digital phase locked loop is implemented mostly in software. In a preferred embodiment, a software DCO generates frequency and phase information to drive a hardware DCO/VCO. It will be appreciated that the term “circuit” in this context is used in the most general sense to include both software and hardware implementations of a functional module. For example, the “feedback circuit” in practice is implemented entirely in software.
In a preferred embodiment the controlled oscillator drives a plurality of output circuits, which selectively, for example, sequentially, share the feedback circuit to implement the alignment procedure. The reduction in time for alignment achieved by the invention at low frequencies is particularly important in the case of a DPLL with multiple output circuits sharing a common feedback circuit because each output circuit has to wait for the previous output circuit to finish the alignment procedure before it can begin.
According to a second aspect of the invention there is provided a digital phase locked loop comprising a controlled oscillator generating synthesizer pulses; an output circuit dividing said synthesizer pulses to produce output pulses at a predetermined normal spacing and time location; a feedback circuit for moving said output pulses in time in response to a delay value obtained by comparing a phase of the output pulses with a phase applied to the controlled oscillator averaged over a number of synthesizer pulses to align said output pulses with a reference clock taking into account hardware delay during an alignment procedure; and a measurement control module for advancing a group of said output pulses during the alignment procedure to reduce the spacing between said output pulses while compensating for the reduced spacing in the feedback circuit.
This invention will now be described in more detail, by way of example only, with reference to the accompanying drawings, in which:
A DPLL in accordance with an embodiment of the invention is shown in
The DCO/VCO synthesizer 20 supplies an input to an output circuit 21 including pattern shifter 22, which provides the output clock that is subject to a hardware delay represented by the block 24, for example, between the DCO/VCO synthesizer 20 and output pads (not shown).
A feedback circuit 37 includes a second phase sampling module 26, which samples the output clock, for example, at the output pads, and compares in comparator 28 the phase of the output clock with the phase value output by the SDCO 16. Ignoring for the moment the effect of subtractor 30 and measurement control module 36, the comparator 28 outputs a value that is passed through feedback filter 32 and feedback control/compensation module 34 to adjust the pattern shifter 22 so as to advance or retard the generated output clock as shown by the timing chart in
The feedback filter 32 can be a simple averaging filter to remove any noise in the measurement. From the phase difference, the hardware delay can be computed. For example, if the HW delay is 10 nsec, the output clock can be aligned with desired phase requirement by moving output clock by 10 nsec with the resolution precision limited by VCO clock period. The phase movement takes place in increments corresponding to the output pulses of the DCO/VCO synthesizer 20.
So far the operation is as described in co-pending application Ser. No. 15/064,663. As noted above, since 50 to 100 samples are required to get a good estimate of the hardware delay, at low frequencies the averaging procedure can take an unduly long time.
In order to address this problem, embodiments of the present invention include the measurement control module 36 and the additional comparator/subtractor 30 between the comparator 28 and the input to the feedback filter 32.
In the example shown in
The measurement control module 36 brings forward the first pulse 50 by a time T, the second pulse by a time 2T and so on. The effect is to bunch up the pulses as shown by the fourth line in
At that point the future output pulses are re-aligned to remove the effects of the deliberate delay introduced by the measurement control module 32. The determined hardware delay is then applied to the pattern shifter 22 to move the pulses forward or backward in increments of the DCO/VCO synthesizer 20 pulses as required. As a result the procedure is performed in substantially less time than would be required if the output pulses retained their normal spacing.
In one embodiment, as shown in
In addition, in accordance with embodiments of the invention, during the alignment procedure the measurement control module 40 adds a positive number to the counter 40 at the moment when the counter reaches 0. Now, the counter starts with a non-zero controlled value T. As a result the next output pulse will be generated early by T, as shown by the third line in
The measurement control module 36 also applies this same value T to the subtractor 30 to remove the value T from the measured delay before it applied to the feedback filter 32. As a result the feedback filter 32 sees the true hardware delay unaffected by the induced delay T. The same procedure can be repeated multiple times as shown in
When the alignment procedure is finished, say after 100 pulses, the effects of the introduced delays need to be removed. For example, in the case of a 10 Hz output signal (out clock), the output pulses would normally occur at 0, 100 ms., 200 msec, 300 msec, etc.
As a result of the alignment procedure with the introduced delay described above, the last clock pulse will now be offset relative to the most recent original clock position by an amount T1 as shown by the last line in
The measurement control module 36 can compute the value T1 as follows. At the end of the averaging procedure, the output clock has been moved by an amount N*T in N movements. It follows therefore that:
T1=N*(T2−T)−T2*fix(N*(T2−T)/T2), where T2 is the output clock period, e.g. 100 ms. for a 10 Hz output clock.
As noted the normal output locations absent any hardware compensation occur at times 0, T2, 2*T2, 3*T2, . . . etc.
But because the clock movement, the actual locations are: N*(T2−T), N*(T2−T)+T2, N*(T2−T)+2*T2, . . . etc.
The measurement control module 36 can be in the form of a software module running on a general processor implementing the DPLL and programmed to add the value T to the counter 40 and subtract T from the output of comparator 28 during the averaging cycle. The measurement control module 36 also disables the output pads during the averaging procedure so that the altered output used during the averaging process is not presented to the outside world.
The processor also computes T1 and removes this value from the counter 40 after the averaging process to restore the output pulses to their normal positions.
In many applications, it may be required to drive multi clock outputs with different output clock frequencies. In this case, since each output may have different output delays, the feedback delay measurement and compensation has to be timely shared with each individual output. A suitable arrangement is shown in
The examples given above are concerned with a clock pulse output where the leading edge of the pulses acts as the reference and is moved in time. The invention is also applicable to a clock output wherein both the leading and trailing edges are moved in time using the same methodology to reduce the measurement time.
It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative circuitry embodying the principles of the invention. For example, a processor may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared. Moreover, explicit use of the term “processor” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), and non volatile storage. Other hardware, conventional and/or custom, may also be included. The functional blocks or modules illustrated herein may in practice be implemented in hardware or software running on a suitable processor.
This application claims the benefit of U.S. provisional application No. 62/343,048, filed May 30, 2016, the contents of which are herein incorporated by reference.
Number | Name | Date | Kind |
---|---|---|---|
4423518 | Hirosaki | Dec 1983 | A |
5072173 | Halder | Dec 1991 | A |
5610954 | Miyashita | Mar 1997 | A |
5815043 | Chow | Sep 1998 | A |
6236275 | Dent | May 2001 | B1 |
6298465 | Klotchkov | Oct 2001 | B1 |
6643345 | Inoue | Nov 2003 | B1 |
6721372 | Banik | Apr 2004 | B1 |
6859028 | Toner | Feb 2005 | B2 |
7046584 | Sorrells | May 2006 | B2 |
7414448 | Huang | Aug 2008 | B2 |
7463188 | McBurney | Dec 2008 | B1 |
7642862 | van der Valk | Jan 2010 | B2 |
7656147 | Kim | Feb 2010 | B2 |
8811915 | Bhanji | Aug 2014 | B2 |
9064396 | Patel | Jun 2015 | B2 |
9444474 | Rahbar | Sep 2016 | B2 |
9667237 | Jin | May 2017 | B2 |
20110156766 | Ahn | Jun 2011 | A1 |
20110221495 | Lee | Sep 2011 | A1 |
20130308735 | Namdar-Mehdiabadi | Nov 2013 | A1 |
20160006441 | van der Wagt | Jan 2016 | A1 |
20160294401 | Jin et al. | Oct 2016 | A1 |
20170264304 | Dedic | Sep 2017 | A1 |
20170346494 | Zhang | Nov 2017 | A1 |
20180138913 | Grouwstra | May 2018 | A1 |
20180138915 | Jenkins | May 2018 | A1 |
Number | Date | Country | |
---|---|---|---|
20170346494 A1 | Nov 2017 | US |
Number | Date | Country | |
---|---|---|---|
62343048 | May 2016 | US |