The foregoing aspects and many of the attendant advantages of this disclosure will become more readily appreciated as the same becomes better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein like reference numerals refer to like parts throughout the various views, unless otherwise specified.
In accordance with the embodiments described herein, a clock generator is disclosed, having a fast settling time, relative to prior art PLLS. The clock generator features a coarse-tuning circuit that is executed a single time and a fine-tuning circuit that is executed periodically. The fine-tuning circuit sends an analog voltage to a voltage-controlled oscillator (VCO). The coarse-tuning circuit sends a load capacitance parameter to the VCO. The analog voltage and the load capacitance are used to program the VCO, which generates a clock signal. The coarse-tuning circuit and the fine-tuning circuit include registers that store the load capacitance and analog voltage information, respectively, in digital form. When switching of the oscillator occurs, the clock generator quickly produces a clock signal in accordance with the stored digital values.
In the following detailed description, reference is made to the accompanying drawings, which show by way of illustration specific embodiments in which the described subject matter may be practiced. However, it is to be understood that other embodiments will become apparent to those of ordinary skill in the art upon reading this disclosure. The following detailed description is, therefore, not to be construed in a limiting sense, as the scope of the present disclosure is defined by the claims.
In
As the name suggests, the voltage-controlled oscillator 30 is an oscillator that is adjusted upon receiving an analog voltage. As the analog voltage increases, the oscillator frequency increases; likewise, as the analog voltage decreases, the oscillator frequency decreases. The VCO 30 also includes an adjustable load capacitor (not shown), which may be fed a digital value to control the capacitance. This, in turn, controls the frequency of the oscillator. Using these two parameters, the analog voltage and the load capacitance, the frequency of the clock signal, sclock, may be controlled.
The VCO 30 produces the clock signal, sclock, based upon the analog voltage and the load capacitance parameters received. Part of the clock signal, sclock, is returned to the VCO 30 as the feedback signal, sfeedback. In the process of feeding an analog voltage to the VCO 30 that results in the desired clock signal, sclock, the frequency of the signal, sclock, or fclock, may swing above and below a desired frequency. The swing process is known as the settling time of the VCO 30.
In
During initialization of the clock generator 100, a frequency adjust request is made to the control logic 26, which activates the fine-tuning circuit 20 and the coarse-tuning circuit 40. In some embodiments, signals transmitted by the control logic 26 are low-speed digital signals. The coarse-tuning circuit 40 sends the load capacitance 44 to the VCO 30; likewise, the fine-tuning circuit 20 sends the fine-tuning voltage 42 to the VCO. The load capacitance 44 and the fine-tuning voltage 42 cause a change in the oscillator, which results in a change in the frequency, fout, of the output signal, sout. In some embodiments, the coarse-tuning circuit 40 is executed prior to the fine-tuning circuit 20. The time that it takes for the frequency, fout, of the output signal, sout, to become stabilized is known as the settling time of the clock generator 100. In some embodiments, signals transmitted by the control logic 26 are low-speed digital signals.
The clock generator 100 includes two dividers: a forward divider 22 and a feedback divider 24, which is part of a feedback loop. In some embodiments, the feedback divider 24 is reset before the fine-tuning circuit 24 is executed. The reset of the feedback divider 24 mitigates the possibility of a long settling time for phase alignment between the divided signal, sfeedback, and the reference signal, sreference.
An enable signal 46 is shown coupled to both the VCO 30 and to the fine-tuning circuit 20. The enable signal 46 controls the VCO 30, since the VCO uses more power than the other devices. The fine-tuning circuit 20, the divider 22, and the feedback divider 24 may be enabled/disabled as well.
As used herein, the term “switching” refers to any time the input signal into the clock generator changes. For the clock generator 100, a change in the feedback signal, sfeedback, is considered switching of the clock generator. Switching may occur, for example, when power to the clock generator 100 is disabled, such as when the system enters a standby mode; switching again occurs when power to the clock generator 100 is enabled (enable signal 46). The settling time of a clock generator refers to a time period between when the input signal into the clock generator changes and a stable output signal (e.g., sclock), is produced.
In some embodiments, the clock generator 100 is characterized by a fast settling time. In other words, the clock signal, sclock, quickly settles to its steady-state frequency, fclock, following enablement of the input. In some embodiments, the settling time of the clock generator 100 is 100 nanoseconds (ns) or less. The clock generator 100 is thus capable of settling efficiently. For example, the clock generator 100 may be part of a power management system. A typical phase-locked loop (PLL) circuit may stabilize somewhere in the range of 1-100 microseconds, slower than the settling time of the clock generator 100. The clock generator 100 is capable of generating a stable clock signal, sclock, with greater efficiently than typical PLL circuits.
The fine-tuning circuit 20 generates an analog voltage, the fine-tuning voltage 42, to be received by the VCO 30. A block diagram of the fine-tuning circuit 20 is depicted in
The up/down counter 14 counts up or down, depending upon which frequency, freference or ffeedback, is higher. (In some embodiments, the counter 14 is replaced with an infinite impulse response, or IIR, filter.) If an overflow at the up-down counter 14 occurs, the load capacitance 44 is incremented by one by the control logic 26, since a larger capacitance causes the frequency of the VCO 30 to slow down. If an underflow at the up-down counter 14 is detected, the load capacitance 44 is decremented by one by the control logic 26, causing the VCO 30 to speed up.
Following either operation, the fine-tuning recommences. The digital value at the output of the counter 14 is stored in the register 16, and is sent to the DAC 18, which converts the digital signal to an analog voltage, to be received by the VCO 30. Alternatively, the DAC 18 may convert the digital value to a current, which controls the VCO. Because the fine-tuning circuit 20 is part of a feedback loop (
A block diagram of the coarse-tuning circuit 40 is depicted in
In some embodiments, the coarse-tuning circuit 40 is executed once during initialization of the clock generator 100. The coarse tuning compensates for any process variation (while the fine tuning addresses temperature and voltage drifts during normal operation). By executing the coarse-tuning circuit 40, the VCO 30 is brought into an operation point near the middle of the voltage-to-frequency characteristic of the clock generator 100. In some embodiments, the coarse-tuning circuit 40 is executed automatically. A capacitance value in the middle of the coarse tuning range is selected. The optimized coarse-tuning value, the load capacitance 44, is stored in the register 32, such that the VCO 30 may be quickly reinitialized following switching of the clock generator 100. In some embodiments, the load capacitance 44 is a 5-bit digital value.
The coarse-tuning circuit 40 thus supplies the load capacitance 44 to the VCO 30 that results in a voltage that is in a broad range near the desired voltage. The fine-tuning circuit 20 supplies a voltage in a narrower range. In some embodiments, once the clock generator 100 has been initialized, the coarse-tuning circuit 40 is no longer activated while the fine-tuning circuit 20 is periodically activated, so as to initiate periodic adjustments of the output frequency, fout, relative to the input reference frequency, freference, in order to compensate any voltage and/or temperature drifts that may occur during long disable times of the clock generator 100.
The operation of the clock generator 100 is depicted in the flow diagram of
The load capacitance value 44 is stored in the register 32 (block 204). The register 32 may later be accessed to quickly generate the desired output signal, sout. In some embodiments, the VCO 30 includes several binary-weighted load capacitors in parallel, one or more of which may selectively be switched to the VCO output. The switches are driven by the register 32.
In some embodiments, the fine-tuning circuit 20 is not executed until the feedback divider 24 is reset (block 206). This ensures that a long settling time for phase alignment between the divided clock (sfeedback) and the reference clock (sreference) is avoided. Following the reset operation, the fine-tuning circuit 20 is executed (block 208), and a fine-tuning voltage 42 is sent to the VCO 30, to further specify the desired oscillation frequency. The fine-tuning voltage 42 is stored in the register 16 (block 210), for subsequent retrieval, if re-initialization of the VCO 30 occurs. The register 16 may later be accessed to quickly generate the desired output signal, sout.
Once the coarse-tuning circuit 40 and the fine-tuning circuit 20 have executed a first time, the initialization of the clock generator 100 is complete (block 212). In some embodiments, the calibration (blocks 202-212) is a one-time operation. Following the calibration, the clock generator 100 is in its runtime operation (block 214). During runtime, two independent operations may simultaneously occur, the switch oscillator operation (block 222) and the adjust frequency operation (block 216). In the switch oscillator operation (block 222), the clock generator 100 runs such that the signal produced by the VCO 30, sout, is at the desired frequency and the clock output, sclock, is stable. The clock generator 100 may be disabled, such as for power savings purposes. The clock generator 100 may be enabled again at any time. Upon request, such as when a system with the clock generator 100 is powered down, the VCO 30 may be disabled. During disablement, the digital values stored in the registers 16 (fine-tuning circuit 20) and 32 (coarse-tuning circuit 40) are not lost, in some embodiments. Subsequently, and again upon request, the oscillator may be enabled.
In the diagram of
As described in
The VCO 30 is programmed with the stored values, such that the clock output, sout, is stabilized quickly. In some embodiments, the clock generator 100 is fully operational (with a stabilized output clock, sout) within 100 ns of enablement.
In some embodiments, the frequency adjustment routine (block 216) runs separately and in parallel to the switch oscillator operation (block 222). The output signal, sout, of the oscillator, or, more particularly, the feedback signal, sfeedback, is periodically monitored relative to the reference signal, sreference. Temperature and voltage drifts in the system of which the clock generator 100 is a part may cause changes in the output signal, sout, and the clock signal, sclock. Thus, once a predetermined fine-tuning adjustment period has elapsed (the “yes” prong of block 216), the fine-tuning circuit 20 is executed, resulting in a new fine-tuning voltage 42 (block 218). The new fine-tuning voltage 42 is stored in the register 16 and sent to the VCO 30 (block 220). This will cause the VCO 30 to correct the output voltage, sout, based on the new fine-tuning voltage. Each time the fine-tuning circuit 20 is executed, a digital representation of the new fine-tuning voltage 42 is stored in the register 16. In some embodiments, the predetermined fine-tuning adjustment period is approximately 10 milliseconds (ms). In other embodiments, the predetermined fine-tuning adjustment period is every second. In yet other embodiments, the predetermined fine-tuning adjustment period is ten seconds. The fine-tuning adjustment period is a parameter that may be selected according to the particular circuit design specifications.
Thus, the load capacitance 44, stored in the register 32, is obtained once while the fine-tuning voltage 42, stored in the register 16, is updated periodically, to compensate for any frequency drift caused by temperature or voltage variations.
A graph 300 of voltage versus frequency is depicted in
The fine-tuning of the VCO 30, however, is achieved by voltage control covering a much smaller frequency range. The gain of the VCO 30 is reduced. As described above, fine-tuning is performed periodically, to compensate frequency drifts caused by temperature or voltage variations during operation of the clock generator 100. Thus, while the coarse-tuning selects one of the parallel curves in the graph 300, the fine-tuning operation will select a specific point on the curve.
In some embodiments, the center frequency, fc, of the graph 300 is approximately 5 gigahertz (GHz), while the frequency range (between f1 and f2) is 3.5-7 GHz; the voltage range (between v1 and v2) is approximately one volt (V). A reasonable tuning range is 500 megahertz (MHz) for a 5 GHz center frequency. This provides a +/−five percent range for compensation of voltage and temperature. The numbers provided herein are merely illustrative of empirical results obtained, and are not meant to limit the possible implementations of the clock generator 100.
The parallel curves of the graph 300 that are selected for coarse tuning overlap significantly. For example, the highest frequency on the curve, c1, denoted as frequency, fa, is a lower frequency than the lowest frequency on the curve, c2, denoted as frequency, fb. This ensures that the nominal operating point remains in the middle part of the curve, obviating the need to perform coarse-tuning operations more than once. In some embodiments, an overlap of 100% allows using at least 50% of the range for fine-tuning operations, without needing to switch to another coarse-tuning curve.
In some embodiments, the range of each coarse-tuning curve depicted in
In some embodiments, the control loop of the clock generator 100 (the fine-tuning circuit 20, the VCO 30, and the feedback divider 24) has a low bandwidth. This eases the realization of the PFD 12 and the up/down counter 14.
Where an IIR filter is used instead of the up-down counter 14, issues with stability of the clock generator 100 may be addressed by foreseeing an additional proportional path, which bypasses the integral path.
The resolution of the DAC 18 determines the accuracy of the output frequency, fout. In some embodiments, with a 7-bit resolution of the digital value fed into the DAC 18, the achieved frequency accuracy is ≈1000 parts per million (ppm); with a 10-bit resolution of the digital value, accuracy of ≈100 ppm is achieved. In some embodiments, the DAC 18 is monotonic. One type of monotonic DAC, a thermometer DAC, may be used.
Another clock generator 400 is depicted in
In some embodiments, the clock generator 100 (or the clock generator 400) provides several advantages over other clock generators. For one, a settling time of 100 ns or less may be realized, while prior art clock generators typically take several microseconds (us) to settle (under like operating conditions). Thus, the clock generator 100 (400) has a settling time that is an order of magnitude less than is found with current fast-locking PLLS. The clock generator 100 (400) is also flexible in terms of selectable output frequencies, using the divider 22. Thus, the clock generator 100 (400) may be used in a variety of applications. For the clock generator 100, adjustment to an external crystal-based reference ensures high-frequency accuracy and stability. The process dependency of the VCO 30 may be reduced, as the center frequency, fc, is of less influence than with some clock generators. Proven high-performance VCOs, such as silicon-proven VCOs, optimized for a particular application, may be used, ensuring known jitter performance. Other types of VCOs, such as LC oscillators, may also be used. Thus, the possible implementations of the clock generator 100 are varied.
The clock generator 100 offers a high range of potential frequencies while being less process-dependent regarding such criteria as on-chip inductances. In some embodiments, the clock generator 100 may be implemented without having a very accurate VCO center frequency, fc. This eases the realization in innovative technologies while enabling the clock generator 100 to be readily ported to other technologies.
While the disclosure has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations as fall within the true spirit and scope of the disclosed subject matter.