Wide Frequency Range Delay Locked Loop
A delay locked loop operates over a wide range of frequencies and has high accuracy, small silicon area usage, low power consumption and a short lock time. The DLL combines an analog domain and a digital domain. The digital domain is responsible for initial lock and operational point stability and is frozen after the lock is reached. The analog domain is responsible for normal operation after lock is reached and provides high accuracy using smaller silicon area and low power.
Latest MOSAID Technologies Incorporated Patents:
- NAND flash memory with vertical cell stack structure and method for manufacturing same
- Non-volatile memory device with concurrent bank operations
- Clock mode determination in a memory system
- Structure and method for providing line end extensions for fin-type active regions
- Clock mode determination in a memory system
This application is a continuation of U.S. application Ser. No. 13/850,500, filed Mar. 26, 2013, which is a continuation of U.S. application Ser. No. 13/523,406, filed Jun. 14, 2012, now U.S. Pat. No. 8,411,812 issued Apr. 2, 2013, which is a continuation of U.S. application Ser. No. 13/186,104, filed Jul. 19, 2011, now U.S. Pat. No. 8,213,561, issued Jul. 3, 2012, which is a continuation of U.S. application Ser. No. 11/999,162, filed Dec. 4, 2007, now U.S. Pat. No. 8,000,430, issued Aug. 16, 2011, which is a continuation of U.S. application Ser. No. 10/335,535, filed Dec. 31, 2002, now U.S. Pat. No. 7,336,752, issued Feb. 26, 2008.
The entire teachings of the above application(s) are incorporated herein by reference.
BACKGROUND OF THE INVENTIONMany devices such as synchronous dynamic random access memory (SDRAM) and microprocessors receive an external clock signal generated by an external clock source such as a crystal oscillator. The external clock signal received through an input pad on the device is routed to various circuits within the device through a tree of buffer circuits. The buffer tree introduces a common delay between the external clock and each buffered clock.
Typically, a delay locked loop (DLL) with an adjustable delay line is used to synchronize the buffered clock signal with the external clock signal by delaying the external clock signal applied to the buffer tree. The DLL includes a phase detector, which detects the phase difference between the external clock signal and a buffered clock signal. Based on the detected phase difference, the DLL synchronizes the buffered clock signal to the external clock signal by adding an appropriate delay to the external clock signal until the buffered external clock signal (the internal clock) is in phase with the external clock signal. The DLL can be implemented as an analog delay locked loop or a digital delay locked loop. In an analog delay locked loop, a voltage controlled delay line is used to delay the external clock signal.
To determine the appropriate delay in the delay line, one of the outputs of the clock tree buffers 108 is coupled to a phase detector 104 where it is compared with the external clock signal CKE. The phase detector 104 detects the phase difference between the internal clock CKI and the external clock CKE. The output of the phase detector 104 is integrated by a charge pump 106 and a loop filter capacitor 112 to provide a variable bias voltage VCTRL 110 for the voltage controlled delay line (VCDL) 102. The bias voltage VCTRL selects the delay to be added to the external clock signal by the VCDL 102 to synchronize the internal clock signal CKI with the external clock signal CKE.
The phase detector 104 can be a D-type flip-flop with the D-input coupled to the external clock signal CKE and the clock input coupled to the internal clock signal CKI. On each rising edge of the internal clock signal CKI, the output of the phase detector 104 indicates whether the rising edge of the internal clock signal is before or after the rising edge of the external clock signal.
The analog DLL 100 produces a voltage controlled delay with high accuracy. However performance of the analog DLL varies over a frequency range because of a non-linear control voltage characteristic.
As shown, the control voltage characteristic is non-linear: sharp at one end of the control voltage range (point C) and almost flat at the opposite end (point A). This control voltage characteristic results in DLL instability at point C and long lock times at point A. The wide range of frequencies (delays) is controlled by the bias voltage VCTRL.
Referring to
A digital DLL does not have the stability problem of an analog DLL. However, the accuracy of a digital DLL is not the same as the accuracy of an analog DLL, because the delay is provided by combining fixed quantum (steps) of delay. The smaller the step of delay, the higher the accuracy. However, a decrease in step size results in a corresponding increase in silicon area because more delay elements are required to cover the wide frequency range.
SUMMARY OF THE INVENTIONA delay locked loop, which has high accuracy, good stability and a fast lock time over a wide frequency range is presented. The delay locked loop combines shorter lock time, good accuracy and stability with low power consumption and small silicon area for the delay locked loop operating in a wide range of frequencies.
The delay locked loop includes a digital delay circuit and an analog delay circuit. The digital delay circuit engages delay elements to provide coarse phase adjustment in the delay locked loop. The analog delay circuit provides a fine phase adjustment in the delay locked loop while the digital delay circuit is held at a fixed delay. A lock detector in the digital delay circuit detects completion of the coarse phase adjustment, freezes the fixed delay upon completion and enables fine phase adjustment.
The digital delay circuit, which includes a plurality of fixed delay elements, operates in a wide delay range. The analog delay circuit operates in a small delay range within the wide delay range and is held at a second fixed delay until the digital delay circuit completes the coarse phase adjustment.
The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of preferred embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
While this invention has been particularly shown and described with references to example embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention encompassed by the appended claims.
A description of preferred embodiments of the invention follows.
In a DLL, high accuracy, small silicon area usage and lower power are typically achieved using an analog technique, while good stability and shorter lock times are typically achieved with a digital technique. The wide frequency range DLL 300 combines the two techniques to provide high accuracy, good stability and a fast lock time over a wide frequency range. The digital delay circuit 302 is responsible for coarse phase adjustment during initialization and the analog delay circuit 304 is responsible for fine phase adjustment during normal operation, after coarse phase adjustment is completed by the digital delay circuit 302. The digital delay circuit 302 operates within the wide delay range and brings the delay locked loop 300 to a stable operation point during power-up initialization. In normal operation, the analog delay circuit 304 operates within a small delay range of the stable operation point within the wide delay range and maintains the delay locked loop at the stable operation point while the digital delay circuit 302 is held at a fixed delay.
The overall delay provided by the DLL includes a digitally controlled delay line (DCDL) 306 having a set of delay elements, each having a fixed delay and a voltage controlled delay line (VCDL) 312. The combination of the DCDL delay provided by the DCDL 306 and the VCDL delay provided by the VCDL 312 provides an accurate delay. Only one of the domains can vary the DLL delay at any time. At power-up initialization, the digital delay circuit 302 varies the DCDL 306 (coarse delay). After coarse phase adjustment is complete (lock is reached), the DCDL delay is held at a fixed number of DCDL delay elements (frozen) and the analog delay circuit 304 varies the DLL delay to provide fine phase adjustment by varying the VCDL delay.
The digital delay circuit 302 operates within the wide delay range to bring the DLL 300 to the operation point (lock) quickly to provide a short lock time. A lock detector 310 in the digital delay circuit 302 detects when the digital delay circuit 302 has brought the DLL delay to the stable operation point and enables control of the DLL delay to be switched to the analog delay circuit 304.
A phase detector 320 detects the phase difference between the external clock signal CKE and the internal clock signal CKI. The phase detector 320, can be any phase detector well known to those skilled in the art. In the embodiment shown, the phase detector 320 (
The analog delay circuit 304 includes a multiplexor 314, a VCDL 312 and a charge pump 316. The VCDL 312 is a chain of differential-input-differential-output stages (delay elements) with voltage control. The multiplexor 314 selects the source of the VCDL bias voltage 322 to the VCDL 312. The VCDL bias voltage 322 is a fixed bias voltage VBPI, VBNI provided by bias voltage generator 318 or a variable bias voltage VBP2, VBN2 provided by charge pump 316. During initialization, before the DCDL 306 achieves lock, differential bias voltage VBPI, VBNI provides the VCDL bias voltage 322 through multiplexor 314. Thus, while the digital delay circuit 302 selects the DCDL delay, the VCDL bias voltage 322 provides a constant VCDL delay. That delay may be in the middle of the full delay range of the VCDL to enable fine tuning in both positive and negative directions as discussed below.
At initialization, the code stored in a counter 308 is initialized to zero, which corresponds to the minimum delay; that is, the minimum number of delay cells in the DCDL 306 that are engaged. The lock detector 310 allows the DCDL 306 to increase the DCDL delay by adding delay cells as the counter 318 is incremented until the nearest rising edge of the internal clock signal CKI is aligned with the external clock signal CKE. The counter 308 is incremented by the external clock signal CKE until lock is reached (the clocks are aligned). In one embodiment, the counter 308 is an up counter which increments on each rising edge of the external clock signal CKE while enabled by the SW signal from the lock detector 310. Delay cells in the DCDL 306 are added to the DCDL delay line based on the n-bit count value output by the counter 308 to engage the minimum number of DCDL delay cells necessary dependent on the bias voltage VBP1, VBN1.
After the clocks are aligned, the SW signal output by the lock detector 310 disables any further incrementing of the counter 308. The VCDL bias voltage 322 is provided by bias voltage VBP2, VBN2, the output of charge pump 316, through multiplexor 314. The charge pump 316 can be any charge pump well known to those skilled in the art.
By engaging only the minimum number of delay cells in the DCDL 306, the overall delay line is minimum length to minimize noise. Once lock is reached, the digital delay circuit 302 is held at a fixed delay by disabling further incrementing of the counter 308. Only the VCDL portion of the DLL delay line can be varied by the analog delay circuit 304. The analog delay circuit 304 fine tunes the DLL delay to compensate for all drifts and condition changes to keep the external and internal clock signal edges aligned, by varying the VCDL delay, which is added to the fixed delay provided by the DCDL. The analog controlled delay line 310 varies the VCDL delay up or down by varying the bias voltage to the VCDL delay cells 402 based on detected phase difference between the clocks.
At initialization, none of the delay elements 400 in the DCDL 306 are engaged. The DLL delay includes only the fixed delay provided by demultiplexor 404, multiplexor 408 and the VCDL delay elements 402 in the VCDL connected to the fixed bias voltage VBP1, VBN1. The VCDL delay provided by VCDL is dependent on the fixed bias voltage VBP1, VBN1. In the embodiment shown, the DCDL delay cells 400 and the VCDL delay cells 402 are the same delay cell with voltage controlled delay. However, in an alternate embodiment, the DCDL delay cell 400 can differ from the VCDL delay cell 402.
The DCDL is initially variable by increasing the number of DCDL delay elements 400 with each DCDL delay element 400 having the same delay fixed by the fixed bias voltage VBP1, VBN1. In the embodiment shown, during initialization the same fixed bias voltage VBP1, VBN1 is coupled to the DCDL delay elements 400 and the VCDL elements 402. However, in alternate embodiments, the fixed bias voltage coupled to the VCDL delay elements 402 and the DCDL delay elements 400 can be different; for example, a first bias voltage may be set to 0.7VDD coupled to the DCDL and a second bias voltage may be set to 0.5VDD coupled to the VCDL. The VCDL delay is initially fixed with each of the three VCDL delay elements 402 numbered 1-3 coupled to the fixed bias voltage VBP1, VBN1, but the VCDL delay varies with changes in the VCDL bias voltage 322 during normal operation.
The number of engaged elements in the DCDL 306 is dependent on the n-bit count 406 output by the counter 308. The n-bit count 406 is coupled to the de-multiplexor 404 to select the output of the de-multiplexor 404 through which the external clock is output to the DCDL 306. The n-bit count 406 is also coupled to multiplexor select logic 430 which provides an m-bit multiplexor select signal, with one of the m-bits coupled to each multiplexor in the DCDL 306. In one embodiment the multiplexor select logic 430 is a decoder which decodes the n-bit count to provide the m-bit multiplexor select signal. In the embodiment shown m is 7 and n is 3. There are with six delay elements 400 labeled 4-9. The multiplexor select logic 430 decodes a three bit count 406 to select one of the seven multiplexors through which to forward the external clock as shown in Table 1 below. The Most Significant Bit (MSB) of the seven bit multiplexor select signal corresponds to the select signal for multiplexor 420 and the Least Significant Bit (LSB) of the seven bit multiplexor signal corresponds to the select signal for multiplexor 408. Thus, as the count increases the number of delay elements engaged increases. In an alternate embodiment, the multiplexor select logic can be implemented as a shift register clocked by the external clock and enabled by the SW signal.
After lock has been reached, the external clock signal CKE is delayed through DCDL delay elements engaged dependent on the n-bit count output by counter 308. Control of the DLL delay is switched to the VCDL 312 by switching the bias voltage VBP1, VBN1 to the bias voltage VBP2, VBN2 through the multiplexor 314 (
Thus, the DLL delay includes minimum delay provided by the engaged DCDL delay elements 400 in the DCDL 306 and additional delay provided by the VCDL 312 to provide an accurate DLL delay. The stability of the DLL is increased by using the digital domain to cover a wide delay range to obtain a minimum delay, then freezing the digital domain to allow the analog domain to operate within a small delay range to control the DLL delay. The bias voltage coupled to the VCDL bias voltage 322 is set so that the VCDL does not control the DLL delay until after lock is detected by the digital domain. Before lock, the VCDL merely provides a constant delay independent of the phase difference between the clocks.
Initially the counter 308 is reset to 0. The de-multiplexor 404 directs the external clock CLKE to engage delay elements dependent on the n-bit count 406 output by the counter 308. With count 406 set to ‘0’, CLKE is directed through output 422 of de-multiplexor 404 coupled to multiplexor 408 and no delay DCDL elements 400 are engaged.
After the counter 308 is incremented to ‘1’ by CLKE, CLKE is directed through output 424 of the de-multiplexor 404 by count 406 set to ‘1’ to engage DCDL delay stage labeled 4. Multiplexor 410 is enabled to allow CLKE through to DCDL delay stage 400 labeled 4 and the m-bit multiplexor select signal output by multiplexor select logic 430 allows delayed CLKE through multiplexor 408 to the VCDL.
All six DCDL delay stages are engaged when the count 406 is six, and CLKE is directed through de-multiplexor output 426 through multiplexors 420, 418, 416, 414, 412, 410, 408 and delay elements labeled 9-4. The DCDL line is frozen when the counter 308 is disabled by the SW signal.
The differential input clock signal CLKEI−, CLKEI+, is coupled to the respective gates of NMOS devices T1, T2 with CLKEI+ coupled to the gate of NMOS device T1 and CLKEI− coupled to the gate of NMOS device T2. The differential output clock signal CLKEO−, CLKEO+, is coupled to the respective drains of NMOS devices T1, T2. The sources of NMOS devices T1 and T2 are coupled and are also coupled to the drain of NMOS current source T3. NMOS current source T3 compensates for drain and substrate voltage variations.
Symmetric load 500 includes a diode-connected PMOS device T4 connected in parallel with a biased PMOS device T5. Symmetric load 502 includes a diode-connected PMOS device T7 connected in parallel with a biased PMOS device T6. The effective resistance of the symmetric loads 500, 502 changes with changes in the bias voltage VBP1 resulting in a corresponding change in delay through the delay stage from the differential clock input to the differential clock output.
As shown, the analog delay circuit 304 operates within the delay range 85 ns to 80 ns over voltage range 200 mV to 800 mV. In contrast to the wide delay range over the same voltage range shown in
The lock detector output SW is set to logic ‘0’ prior to lock being reached and set to logic ‘1’ after lock is reached. Prior to lock being reached, the logic ‘0’ on the SW signal couples the fixed bias voltage through multiplexor 314 to provide the VCDL bias voltage 322. After lock has been reached, the logic ‘1’ on SW couples the variable bias voltage VBPN2, VBPN2 through multiplexor 314 to provide the VCDL bias voltage 322, to allow the VCDL 312 to fine tune the overall delay.
On power up, the reset signal coupled to the R-input of the SR flip-flop 700 and the SR flip-flop 702 is set to logic ‘1’. Both flip-flops 700, 702 are reset with the respective Q outputs (LC1, SW) set to logic ‘0’. The SR flip-flops 700, 702 remain in a reset state with logic ‘0’ on the respective Q outputs until the phase detector 320 detects that the phase difference between clock signals CKE, CKI are in the phase detection window. The phase difference is within the phase detection window while the rising edge of the internal clock signal CKI is after the falling edge of the external clock signal CKE. The output of the phase detector (Ph_det) changes to logic ‘0’. The logic ‘0’ on Ph_det changes the S-input of SR flip flop 700 to logic ‘1’ through inverter 704 which sets SR flip-flop 700 (i.e. the Q output changes to logic ‘1’). The delay provided by the DCDL 306 continues to increase further delaying the rising edge of the internal clock signal until the internal clock signal and the external clock signals are in phase. SR flip-flop 702 is set on the next rising edge of Ph-det which occurs when the rising edge of CKE is detected after the rising edge of CKI. The Q output of SR flip-flop 702 is set to logic ‘1’. The logic ‘1’ on the output of SR flip-flop 702, the SW signal, disconnects the VCDL bias signal 322 from bias voltage VBP1, VBN1 through multiplexor 314 and connects the bias signal VBP2, VBN2 from charge pump 316 (
The lock detector 310 remains in a locked state with SW set to logic ‘1’ until the system is reset. While in the locked state, the digital domain no longer controls the delay because, while SW is set to logic ‘1’, the code stored in the counter 308 is frozen to freeze the DCDL delay.
Referring to
Referring to
At time 900, the system is reset and the reset signal set to logic ‘1’. The reset signal is coupled to the R-inputs of flip-flops 700, 702 to reset the flip-flops. The Ph_det signal is reset to logic ‘1’. The Q outputs (LC1, SW) of both flip-flops are reset to ‘0’. The internal clock signal CKI has the same frequency as the external clock signal CKE but there is an initial phase difference due to the delay of CKE through the clock tree buffers 328.
At time 802, after the system is reset, the reset signal changes to logic ‘0’. Initially delay is added to CKE through the VCDL and no delay is added through the DCDL. The rising edge of CKI occurs later than the rising edge of CKE due to the delay through the clock tree buffers 328 (
At time 904, the phase detector 320 (
At time 906, the phase detector 320 (
During normal DLL operation, the delay adjustment of the clock path to compensate for drifts and condition changes covers a narrow range of the wide delay range. Thus, after the lock has been reached, the DCDL provides the minimum delay. The DLL delay is varied by the VCDL inside a smaller delay range. Monitoring the smaller delay range during normal operation provides more stability and reduces the controlling voltage node sensitivity.
The invention has been described for an embodiment having a single fixed bias voltage level. In an alternate embodiment, more than one fixed bias voltage level can be used to provide a more compact DLL that is less noise sensitive. This allows the wide delay range to be modified in order to reduce the number of DCDL delay elements by selecting a fixed bias voltage level dependent on the frequency of the external clock. Reducing the number of DCDL delay elements, reduces sensitivity to noise. For example, in one embodiment, with a fixed bias voltage of 0.6VDD, fifteen DCDL delay elements are required to provide the DCDL delay. When the fixed bias voltage is 0.7VDD, only eight DCDL delay elements are required to provide the DCDL delay. However, changing the delay range may result in the delay range covering an unstable region, for example, at point C in the graph shown in
The invention can be used in integrated circuits requiring high accuracy of input/output data synchronization, for example, in memory integrated circuits.
While this invention has been particularly shown and described with references to preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention encompassed by the appended claims. For example, while the delay of the DCDL remains fixed over short times, it may be allowed to occasionally shift as, for example, the VCDL approaches its delay limits.
Claims
1. A memory device comprising:
- a delay locked loop; and
- an input for receiving an external clock signal for routing to the delay locked loop,
- the delay locked loop being configured to synchronize an internal clock signal with the external clock signal, the delay locked loop comprising: a digital delay circuit configured to enable digital delay elements of the digital delay circuit in providing coarse phase adjustment in the delay locked loop, the digital delay circuit providing a coarse delayed differential clock signal; an analog delay circuit configured to provide fine phase adjustment in the delay locked loop in response to a control signal, the analog delay circuit receiving the coarse delayed differential clock signal and producing a fine delayed clock signal, the analog delay circuit comprising parallel symmetric loads to cause the fine delay, the control signal being operative to vary an effective resistance of the symmetric loads;
- circuitry to provide the fine delayed clock signal as the internal clock signal; a phase detector circuit configured to compare the external clock signal and the internal clock signal; and a lock detector circuit in communication with the phase detector circuit and the analog delay circuit, the lock detector circuit being configured to: i) hold the digital delay circuit at a fixed delay; and ii) provide the control signal to the analog delay circuit.
2. A method for performing phase adjustment in a delay locked loop comprising:
- enabling digital delay elements of a digital delay circuit in providing coarse phase adjustment in the delay locked loop to provide a coarse delayed differential clock signal;
- receiving the coarse delayed differential clock signal at an analog delay circuit of the delay locked loop;
- applying a fine delay to the coarse delayed differential clock signal to output a fine delayed clock signal using parallel symmetric loads of the analog delay circuit;
- using a control signal to vary an effective resistance of the parallel symmetric loads;
- in a phase detector circuit of the delay locked loop, comparing an external clock signal and the fine delayed clock signal;
- in a lock detector circuit of the delay locked loop: holding the digital delay circuit at a fixed delay and providing the control signal to the analog delay circuit.
Type: Application
Filed: Nov 27, 2013
Publication Date: Mar 27, 2014
Applicant: MOSAID Technologies Incorporated (Ottawa)
Inventors: Peter Vlasenko (Kanata), Dieter Haerle (Villach)
Application Number: 14/092,788
International Classification: H03L 7/10 (20060101);