US20060087353A1 - Method and apparatus compensating for frequency drift in a delay locked loop - Google Patents
Method and apparatus compensating for frequency drift in a delay locked loop Download PDFInfo
- Publication number
- US20060087353A1 US20060087353A1 US10/973,389 US97338904A US2006087353A1 US 20060087353 A1 US20060087353 A1 US 20060087353A1 US 97338904 A US97338904 A US 97338904A US 2006087353 A1 US2006087353 A1 US 2006087353A1
- Authority
- US
- United States
- Prior art keywords
- delay
- signal
- count
- unit
- external signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/081—Details of the phase-locked loop provided with an additional controlled phase shifter
- H03L7/0812—Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
- H03L7/0814—Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used the phase shifting device being digitally controlled
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/10—Details of the phase-locked loop for assuring initial synchronisation or for broadening the capture range
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/081—Details of the phase-locked loop provided with an additional controlled phase shifter
- H03L7/0812—Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
- H03L7/0816—Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used the controlled phase shifter and the frequency- or phase-detection arrangement being connected to a common input
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/081—Details of the phase-locked loop provided with an additional controlled phase shifter
- H03L7/0812—Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
- H03L7/0818—Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used the controlled phase shifter comprising coarse and fine delay or phase-shifting means
Definitions
- the present invention pertains to synchronization of signals.
- the present invention pertains to a delay locked loop circuit that produces a signal synchronized to an externally supplied signal and compensates for frequency drift in that external signal.
- a delay locked loop circuit reduces or compensates for a skew between a clock signal and data or between an external clock and an internal clock.
- the delay locked loop may be used to synchronize an internal clock of a synchronous memory to an external clock without incurring any error.
- a timing delay occurs when a clock provided externally is used within the apparatus. The delay locked loop controls the timing delay to synchronize the internal clock to the external clock.
- DLL 10 includes an input receiver 15 , a variable delay line 20 , an off-chip driver 30 , a phase detector 40 , a counter 50 and a feedback circuit 60 .
- the input receiver receives an external clock signal (CLK) and produces an internal clock signal (CLK 2 DLL) for transference to variable delay line 20 and phase detector 40 .
- the internal clock signal includes an initial delay (T 1 ) corresponding to the delay or amount of processing time utilized by the input receiver.
- the variable delay line delays the internal clock signal by an amount (T 2 ) corresponding to a phase difference between the internal clock (CLK 2 DLL) and feedback (FBCLK) signals as described below.
- the resulting signal from the variable delay line (DCLK) is transferred to off-chip driver 30 and to feedback circuit 60 .
- the driver further delays the signal by a delay or amount of processing time ( ⁇ r) utilized by the driver and provides a clock signal (DQS) synchronized with the external clock signal (CLK) to other circuits.
- ⁇ r delay or amount of processing time
- the feedback circuit receives the signal (DCLK) from the variable delay line and includes delay elements producing a delay (Tf) corresponding to the delays of the input receiver (T 1 ) and the driver ( ⁇ r).
- Tf the delay
- the feedback signal (FBCLK) and internal clock signal (CLK 2 DLL) are received by phase detector 40 that determines the phase difference or skew between these signals, thereby indicating the phase difference between the internal and external clock signals (CLK and DQS).
- the phase detector controls counter 50 to indicate the phase difference between the internal clock and feedback signals.
- the phase detector generally increments or decrements the counter to enable the count to indicate the phase difference.
- the count basically represents the phase difference in terms of a quantity of delay elements or units of the variable delay line.
- the counter controls the delay provided by variable delay line 20 to compensate for the phase difference between the signals (CLK 2 DLL and FBCLK) and enable the resulting signal (DQS) to become synchronized with the external clock signal (CLK).
- the DLL determines the delay (T 2 ) of the variable delay line to align the resulting signal from the driver (DQS) with the external clock signal (CLK).
- T 2 K*T cycle ⁇ Tf, where K*Tcycle is an integer multiple of the external clock signal period.
- the DLL typically operates over a clock frequency range to lock onto a particular clock or operational frequency.
- the DLL may operate in the frequency range of 80 MHz-600 MHz (or clock cycles (Tcycle) in the range of approximately 1.6 to 12.5 nanoseconds).
- counter 50 includes a value between zero and 2 P ⁇ 1, where P represents the quantity of bits utilized for the count.
- overflow occurs when a maximum delay of the DLL is reached (e.g., the counter reaches a maximum count value or a value of 2 P ⁇ 1).
- a further decrease in the clock frequency (or increase in the clock period) will require a delay which the DLL cannot accommodate (e.g., the delay required will be beyond the maximum delay of the DLL).
- the overflow condition is illustrated, by way of example only, in FIG. 2A .
- the first time line graphically illustrates the external clock signal (CLK) with the DLL locked to a clock period or Tcycle of five nanoseconds.
- Tf feedback circuit delay
- T 2 variable delay line delay
- the second time line graphically illustrates the external clock signal (CLK) with the DLL locked to a clock period or Tcycle of ten nanoseconds.
- Tf feedback circuit delay
- T 2 variable delay line delay
- the second situation or underflow occurs when the delay (T 2 ) needed for the DLL to lock is zero (e.g., the counter reaches a count value of zero). A further increase in clock frequency (or decrease in clock period) will require a negative delay which is not possible.
- the underflow condition is illustrated, by way of example only, in FIG. 2B .
- the first time line graphically illustrates the external clock signal (CLK) with the DLL locked to a clock period or Tcycle of five nanoseconds.
- Tf feedback circuit delay
- T 2 variable delay line delay
- the second time line graphically illustrates the external clock signal (CLK) with the DLL locked to a clock period or Tcycle of ten nanoseconds.
- Tf feedback circuit delay
- T 2 variable delay line delay
- a proposed solution is to utilize additional delay lines. For example, two lines may be used for the external and feedback clock signals (CLK and FBCLK), while a third delay line may be utilized as a reference for the DLL.
- CLK and FBCLK external and feedback clock signals
- a third delay line may be utilized as a reference for the DLL.
- the DLL In response to an overflow or underflow condition, the DLL is automatically reset to lock onto a new clock frequency. The reset may be applied with or without the additional delay lines to accommodate the underflow or overflow condition.
- Another proposed solution is to increase the amount of the delay in the delay line.
- the proposed solutions suffer from several disadvantages.
- the use of additional delay or delay lines reduces the area on integrated circuits or chips, and increases jitter, power or current consumption and complexity of the circuit.
- the use of a DLL reset produces a locking period that prevents use of the DLL during that period (e.g., the output of the DLL may not be used for a period on the order of a few hundred clock cycles).
- the present invention accommodates the overflow and underflow conditions with the proper amount of delay (e.g., on the order of the maximum clock period or Tcycle) in the DLL.
- the DLL reaches an overflow or underflow condition
- the DLL is still presumably locked since the frequency drift is slow relative to the update rate of the DLL, where the latency of the locked loop is represented by K.
- the next locking position is typically within the preceding clock period (e.g., K ⁇ 1)
- the next locking position for an underflow condition is typically within the succeeding clock period (e.g., K+1).
- the present invention decrements the DLL counter in response to an overflow condition by the number of coarse delay elements within a clock period to enable locking within the preceding clock period.
- the present invention increments the DLL counter in response to an underflow condition by the number of coarse delay elements within a clock period to enable locking within the succeeding clock period.
- a DLL includes a cycle time detector to determine the quantity of delay elements within a clock cycle and adjust a DLL counter controlling a variable delay line to enable DLL operation or locking in response to DLL overflow and underflow conditions.
- the cycle time detector includes a ring oscillator having a known relation and strong correlation between the oscillator period and the delay elements of the DLL.
- the output of the oscillator controls the DLL counter to provide a new locking position for the DLL in the presence of overflow or underflow conditions.
- the oscillator is driven for an interval corresponding to the product of the external clock period and the quantity of delay elements in the ring oscillator. In effect, the delay of the DLL is adjusted to the preceding or succeeding external clock period to enable locking in response to overflow or underflow conditions.
- FIG. 1 is a schematic block diagram of a conventional delay locked loop circuit (DLL).
- DLL delay locked loop circuit
- FIG. 2A is a graphical illustration of DLL timing diagrams for a DLL overflow condition.
- FIG. 2B is a graphical illustration of DLL timing diagrams for a DLL underflow condition.
- FIG. 3 is a schematic block diagram of a delay locked loop circuit (DLL) according to the present invention.
- DLL delay locked loop circuit
- FIG. 4 is a schematic diagram of a ring oscillator of the cycle time detector of the DLL of FIG. 3 .
- FIG. 5 is a graphical illustration of timing diagrams of the DLL of FIG. 3 .
- a delay locked loop circuit reduces or compensates for a skew between a clock signal and data or between an external clock and an internal clock as described above.
- DLL delay locked loop circuit
- these types of circuits may encounter overflow or underflow conditions during periods of clock frequency drift that require delays beyond the capability of the DLL, thereby preventing synchronization of the signals as described above.
- the present invention DLL accommodates overflow and overflow conditions without the adverse effects of adding additional delay or delay elements or resetting the DLL for operation.
- FIGS. 3-4 A DLL according to the present invention is illustrated in FIGS. 3-4 .
- the DLL typically operates over a clock frequency range to lock onto a particular clock or operational frequency as described below.
- the DLL may operate in the frequency range of 80 MHz-600 MHz (or clock cycles (Tcycle) in the range of approximately 1.6 to 12.5 nanoseconds); however, the DLL may accommodate any desired frequency range.
- DLL 100 includes input receiver 15 , variable delay line 20 , off-chip driver 30 , phase detector 40 , counter 50 and feedback circuit 60 , each substantially similar to those described above. These components may be implemented by any conventional or other devices or circuitry (e.g., logic, processors, software and/or hardware modules, gates, integrated circuits, etc.) performing the functions described below.
- the input receiver receives the external clock signal (CLK) and produces an internal clock signal (CLK 2 DLL) for transference to variable delay line 20 and phase detector 40 .
- the internal clock signal includes an initial delay (T 1 ) corresponding to the delay or amount of processing time utilized by the input receiver.
- the input receiver is generally in the form of a buffer or other device to receive the signal.
- Variable delay line 20 delays the internal clock signal by an amount (T 2 ) corresponding to a phase difference between the internal and feedback clock signals as described above.
- the delay line includes a coarse delay line or unit 22 that provides a delay in stages or increments based on the value in the counter.
- the coarse delay unit typically includes a plurality of controllable delay elements (e.g., buffers, logic gates, etc.) each providing a known delay to the signal.
- delay line 20 may provide a maximum delay of twelve nanoseconds (e.g., corresponding to a maximum Tcycle for 80 MHz) with each coarse delay element providing the delay in increments of 300 picoseconds.
- delay line 20 may further include a fine delay line or blender unit 24 .
- the blender unit is disposed in series with the coarse delay unit and typically includes a plurality of controllable delay elements (e.g., buffers, logic gates, etc.) each providing a further known delay to the signal.
- blender unit 24 may provide a maximum additional delay of 300 picoseconds, thereby enhancing resolution by providing delays within the delay increments of the coarse delay units.
- the blender unit provides delays corresponding to a portion of a coarse delay unit (e.g., to provide a delay that is not an integer multiple of a coarse delay).
- the blender unit may compensate for errors within the DLL and is typically driven by the least significant bits of the counter as described below.
- the resulting signal from the variable delay line (DCLK) is transferred to off-chip driver 30 and to feedback circuit 60 .
- the driver further delays the signal by a delay or amount of processing time ( ⁇ r) utilized by the driver and provides a clock signal (DQS) synchronized with the external clock signal (CLK) to other circuits.
- ⁇ r delay or amount of processing time
- the feedback circuit receives the signal (DCLK) from the variable delay line and includes delay elements producing a delay (Tf) corresponding to the delays of the input receiver (T 1 ) and the driver ( ⁇ r).
- the delay elements may be implemented by any conventional or other devices (e.g., buffers, logic gates, etc.).
- the feedback signal (FBCLK) and internal clock signal (CLK 2 DLL) are received by phase detector 40 that determines the phase difference or skew between these signals, thereby indicating the phase difference between the external and resulting clock signals (CLK and DQS).
- the phase detector is coupled to a switch 80 that detects overflow and underflow conditions and provides controls to counter 50 in accordance with detected conditions as described below.
- Switch 80 may be implemented by any conventional or other switching device (e.g., transfer gate, logic, processor, software and/or hardware modules, integrated circuit, etc.).
- switch 80 couples the phase detector output (PD 1 ) to counter 50 to indicate the phase difference between the signals received by the phase detector (CLK 2 DLL and FBCLK).
- the phase detector generally increments or decrements the counter to enable the count to indicate the phase difference.
- the count basically represents the phase difference in terms of a quantity of delay elements or units of the variable delay line.
- the DLL typically operates to lock onto a particular clock or operational frequency.
- counter 50 includes a value between zero and 2 P ⁇ 1, where P represents the quantity of bits utilized for the count as described above.
- the counter is implemented by a nine bit counter with the six most significant bits used to control coarse delay unit 22 and the three least significant bits used to control blender unit 24 .
- systems may change the operating or clock frequency for power saving or other purposes without resetting the DLL.
- the DLL operates under the lock condition parameters during the frequency drift until a frequency is attained that causes the counter to reach a maximum or minimum value, thereby respectively indicating overflow and underflow conditions as described above. These conditions basically indicate the delays to synchronize the external clock and resulting signals (CLK and DQS) that are beyond the delay provided by the variable delay line as described above.
- DLL 100 further includes a cycle time detector 70 .
- the DLL is still presumably locked (e.g., at the frequency causing the counter to reach the maximum or minimum value), where the latency of the locked loop is represented by K.
- the next locking position is typically within the preceding clock period (e.g., K ⁇ 1), while the next locking position for an underflow condition is typically within the succeeding clock period (e.g., K+1).
- the cycle time detector is enabled in response to an overflow or underflow condition and determines the quantity of coarse delay elements within a clock period.
- the output of the cycle time detector is coupled to switch 80 that enables the cycle time detector to control counter 50 during overflow and underflow conditions.
- the switch is coupled to counter 50 and determines the presence of overflow and underflow conditions based on the count value (e.g., an overflow condition occurs in response to the counter attaining a maximum count value (2 P ⁇ 1), whereas an underflow condition occurs in response to the counter attaining a zero count value).
- the cycle time detector adjusts the count within the counter by the number of coarse delay elements within a clock period to enable locking within the preceding or succeeding clock period in accordance with detected overflow and underflow conditions, respectively.
- T 2 K*Tcycle ⁇ Tf
- the count value provided to the delay line is maintained at the minimum or maximum value in response to underflow or overflow conditions to enable the count value to be adjusted without affecting the delay.
- Cycle time detector 70 includes a frequency divider module 72 and a ring oscillator 74 .
- the period of the ring oscillator is strongly correlated with the DLL delay to enable determination of the quantity of delay elements within a clock period.
- the oscillator includes a plurality of delay elements 76 ( FIG. 4 ) arranged in a chain or a cascaded fashion.
- Each delay element includes a pair of NAND type logic gates to provide a coarse delay, Tcoarse, for that delay element.
- the final delay element in the chain utilizes a single NAND gate or one half of a coarse delay to provide an inverted resulting signal (e.g., since two NAND gates within each prior delay element provide a non-inverted signal). This inverted signal is fed back to the initial delay element, thereby enabling the oscillator to generate an alternating signal to form a clock type output.
- the oscillator includes a quantity, M, of delay elements 76 and an additional one half of a delay element 76 , thereby providing a total of M+1 ⁇ 2 delay elements.
- the quantity of coarse delays or delay elements 76 within ring oscillator 74 is selected based on the capability of counter 50 . The lesser the quantity of delay elements, the faster the DLL may lock, but a higher counting rate is required.
- TON e.g., Q*Tcycle
- Frequency divider module 72 of cycle time detector 70 receives the internal clock signal (CLK 2 DLL) and divides the signal frequency by the quantity of delay elements traversed, Q.
- the frequency divider module may be implemented by any conventional or other devices or circuitry and produces a signal (TON) with a frequency proportional to the input signal frequency by a ratio of 1/Q. This essentially provides the output signal (TON) with a period of Q*the input signal frequency (e.g., or Q*Tcycle, since the input signal is the internal clock signal). This is illustrated by way of example in the timing diagrams of FIG. 5 .
- the TON signal enables the oscillator, where the oscillator period or output pulses (OSCN) are coupled to controls of counter 50 via switch 80 .
- the counter preferably ignores the initial rising edge of the oscillator output (e.g., to ensure counts of completed oscillator periods) and starts counting from the second rising edge (e.g., as viewed in FIG. 5 ) to ensure accuracy.
- the quantity counted represents the quantity of oscillator periods (Tosc) within the interval TON, or TON/Tosc.
- the switch couples the oscillator output (OSCN) to decrement controls of counter 50 , thereby decreasing the counter value for each oscillator period. This reduces the count by the number of delay elements, N, within a clock period and provides the DLL with a new locking position. In effect, this enables the DLL to lock in a preceding (e.g., K ⁇ 1) clock.
- the switch couples the oscillator output (OSCN) to increment controls of counter 50 , thereby increasing the counter value for each oscillator period. This increases the count by the number of delay elements, N, within a clock period and provides the DLL with a new locking position.
- this enables the DLL to lock in a succeeding (e.g., K+1) clock.
- the delay of the delay line is fixed or frozen (e.g., based on the maximum or minimum count value), where no delay change is visible outside of the DLL.
- the delay line adjustment occurs without occurrence of spikes since the difference between the adjusted and overflow or underflow count values (e.g., between zero and N for underflow, and between 2 P ⁇ 1 and 2 P ⁇ 1 ⁇ N for overflow) are spaced by a clock cycle.
- switch 80 couples the counter to phase detector 40 for operation as described above.
- L*Terr represents a fraction of a coarse delay and may be indicated by the least significant bits of the counter (e.g., as viewed in FIG. 5 ). This portion of a coarse delay may be realized by blender unit 24 as described above.
- L*Terr is the value of the least significant bit of the counter with the remaining bits representing the quantity of coarse delay elements, N.
- L*Terr is the value of the two least significant bits of the counter with the remaining bits representing the quantity of coarse delay elements, N.
- the bits representing the portion of a coarse delay may be utilized to control blender unit 24 to provide the corresponding delay and enhance accuracy.
- the interval, TON may be further increased to achieve a desired resolution. However, the longer the TON interval or time for determining the quantity of delay elements, the slower the evaluation process.
- the input receiver receives the external clock signal (CLK) and produces an internal clock signal (CLK 2 DLL) for transference to variable delay line 20 and phase detector 40 .
- the internal clock signal includes an initial delay (T 1 ) corresponding to the delay or amount of processing time utilized by the input receiver.
- the variable delay line delays the internal clock signal by an amount (T 2 ) corresponding to a phase difference between the internal and feedback clock signals as described above.
- the resulting signal from the variable delay line (DCLK) is transferred to off-chip driver 30 and to feedback circuit 60 .
- the driver further delays the signal by a delay or amount of processing time ( ⁇ r) utilized by the driver and provides a clock signal (DQS) synchronized with the external clock signal (CLK) to other circuits.
- ⁇ r delay or amount of processing time
- the feedback circuit receives the signal (DCLK) from the variable delay line and includes delay elements producing a delay (Tf) corresponding to the delays of the input receiver (T 1 ) and the driver ( ⁇ r).
- Tf the delay
- FBCLK the resulting feedback signal produced by the feedback circuit
- phase detector 40 receives the phase difference or skew between these signals, thereby indicating the phase difference between the internal and external clock signals (CLK and DQS).
- the phase detector is coupled to switch 80 that detects overflow and underflow conditions and provides controls to counter 50 in accordance with detected conditions as described above.
- switch 80 couples the phase detector output to counter 50 to indicate the phase difference between the signals received by the phase detector (CLK 2 DLL and FBCLK).
- the counter controls the delay (T 2 ) provided by variable delay line 20 to compensate for the phase difference between the signals (CLK 2 DLL and FBCLK) and enable the resulting signal (DQS) to become synchronized with the external clock signal (CLK) as described above.
- cycle time detector 70 is enabled and determines the quantity of coarse delay elements within a clock period.
- the output of the cycle time detector is coupled to switch 80 that enables the cycle time detector to control counter 50 during overflow and underflow conditions.
- the cycle time detector adjusts the count within the counter by the number of coarse delay elements within a clock period to enable locking within the preceding or succeeding clock period in accordance with detected overflow and underflow conditions, respectively.
- the count value provided to the delay line is maintained at the maximum or minimum value in response to overflow or underflow conditions to enable the count value to be adjusted without affecting the delay.
- switch 80 couples the counter to phase detector 40 for operation as described above.
- the present invention DLL may accommodate any desired frequency range or clock or other signal period.
- the components (e.g., input receiver, variable delay line, off-chip driver, phase detector, counter, feedback circuit, switch, cycle time detector, etc.) of the present invention DLL may be implemented by any conventional or other devices or circuitry (e.g., logic, processors, software and/or hardware modules, gates, integrated circuits, etc.) performing the functions described herein and may be arranged in any fashion.
- the input receiver may be implemented by any conventional or other data receiver (e.g., buffer, gate, etc.).
- the driver may be implemented by any conventional or other devices (e.g., circuitry, etc.) to provide signals to other circuits.
- the phase detector may be implemented by any conventional or other devices (e.g., circuitry, processor, etc.) determining the phase difference between any quantity of signals in any desired resolution.
- the phase detector may provide the phase difference with respect to any types of units (e.g., the value of the phase difference, the quantity of delay elements or units for synchronization, etc.).
- the feedback circuit may be implemented by any conventional or other devices (e.g., circuitry, etc.) with any quantity of delay units each including any quantity of any types of delay elements (e.g., gates, inverters, buffers, etc.).
- the feedback circuit may provide any desired delay to simulate delays encountered by the external signal.
- the variable delay line may be implemented by any conventional or other devices (e.g., circuitry, etc.) with any quantity of any types of delay units (e.g., coarse, fine or blender, etc.) each including any quantity of any types of delay elements (e.g., gates, inverters, buffers, etc.).
- the delay units may be arranged in any fashion and provide coarse and fine delays either individually or in any combinations.
- the coarse and fine delay units may provide any desired delays with any desired resolution.
- the variable delay line may receive any types of control signals to control the delays (e.g., count values, delay times, etc.).
- the variable delay line may be implemented without fine delays, thereby providing delays in coarse delay increments.
- the counter may be implemented by any conventional or other counters (e.g., circuitry, processor, hardware and/or software counters, ALU, etc.) and may utilize any desired quantity of bits for the count value.
- the blender or fine delay of the present invention DLL may be controlled by any quantity of any of the bits of the count value (e.g., least significant bits, etc.), while the coarse delay of the present invention DLL may be controlled by any quantity of any of the bits of the count value (e.g., most significant bits, etc.).
- the counter of the present invention DLL may include any types of control inputs (e.g., increment, decrement, etc.) and may adjust the count in any manner based on any increment value.
- the switch of the present invention DLL may be implemented by any conventional or other switching device (e.g., transfer gate, logic, processor, software and/or hardware modules, integrated circuit, etc.).
- the switch may detect overflow and overflow conditions based on any count values.
- the switch may couple the cycle time detector to any desired counter controls to adjust the count in any fashion.
- the cycle time detector of the present invention DLL may determine the quantity of any types of delay elements (e.g., coarse, fine, etc.) for any desired clock period.
- the frequency divider module of the present invention DLL may be implemented by any conventional or other devices (e.g., circuitry, processor, splitter, divider, etc.) producing a signal having a frequency of any desired proportion in relation to the input signal frequency.
- the ring oscillator of the present invention DLL may be implemented by any conventional or other devices (e.g., circuitry, oscillators, etc.) with any quantity of delay units each including any quantity of any types of delay elements (e.g., NAND or other logic gates, inverters, buffers, etc.).
- the delay elements and units may be arranged in any fashion and produce any desired delays.
- the ring oscillator preferably has a correlation between the oscillator period and the delay elements of the DLL, but may provide or correspond to any desired delay.
- the ring oscillator may be enabled for any desired time interval (e.g., a multiple of the clock period, a portion of the clock period, etc.) sufficient to determine the quantity of delay elements in a clock period.
- the present invention DLL may determine the oscillator periods for any desired quantity of clock periods and adjust the count and delay accordingly (e.g., the DLL and variable delay line may be configured for any desired quantity of clock cycles or frequency ranges).
- the counter preferably ignores the initial rising edge of the oscillator output (e.g., to ensure counts of completed oscillator periods) and starts counting from the second rising edge to ensure accuracy.
- any conventional or other techniques may be employed to ensure a proper count (e.g., including the initial edge and decrementing the final count, etc.).
- the cycle time detector may be continuously enabled and control the counter based on the detection of overflow or underflow by the switching device. Alternatively, the cycle time detector may be enabled in response to detection of overflow or underflow conditions by the switching device.
- the cycle time detector, switching device and/or counter may employ any type of synchronization or enablement/disablement techniques (e.g., logic gates, handshaking, enable/disable lines, interrupts, etc.) to enable the quantity of oscillator periods to be determined during a complete TON cycle (e.g., to prevent the count from starting in an intermediate portion of a TON period, etc.) and to enable control of the counter (e.g., to enable the phase detector and cycle time detector to control the counter at appropriate times (e.g., in the absence of overflow/underflow conditions, at the completion of a TON cycle, etc.), to freeze the counter controls to the variable delay line during overflow/underflow conditions, etc.).
- synchronization or enablement/disablement techniques e.g., logic gates, handshaking, enable/disable lines, interrupts, etc.
- the signals may include any desired labels or references.
- the variables used herein e.g., K, Q, M, etc. are preferably integers, but may be any types of numbers (e.g., real, etc.).
- the DLL of the present invention is not limited to the applications described above, but may be applied to digital or analog circuits and provide synchronization between any desired signals.
- the invention makes available a novel method and apparatus compensating for frequency drift in a delay locked loop, wherein a DLL of the present invention adjusts the delay of a variable delay line by the quantity of delay elements in a clock period in order to accommodate overflow and underflow conditions without a DLL reset.
Landscapes
- Pulse Circuits (AREA)
- Dram (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
Abstract
Description
- 1. Technical Field
- The present invention pertains to synchronization of signals. In particular, the present invention pertains to a delay locked loop circuit that produces a signal synchronized to an externally supplied signal and compensates for frequency drift in that external signal.
- 2. Discussion of the Related Art
- Generally, a delay locked loop circuit (DLL) reduces or compensates for a skew between a clock signal and data or between an external clock and an internal clock. For example, the delay locked loop may be used to synchronize an internal clock of a synchronous memory to an external clock without incurring any error. Typically, a timing delay occurs when a clock provided externally is used within the apparatus. The delay locked loop controls the timing delay to synchronize the internal clock to the external clock.
- A conventional DLL is illustrated in
FIG. 1 . Specifically,DLL 10 includes aninput receiver 15, avariable delay line 20, an off-chip driver 30, aphase detector 40, acounter 50 and afeedback circuit 60. The input receiver receives an external clock signal (CLK) and produces an internal clock signal (CLK2DLL) for transference tovariable delay line 20 andphase detector 40. The internal clock signal includes an initial delay (T1) corresponding to the delay or amount of processing time utilized by the input receiver. The variable delay line delays the internal clock signal by an amount (T2) corresponding to a phase difference between the internal clock (CLK2DLL) and feedback (FBCLK) signals as described below. The resulting signal from the variable delay line (DCLK) is transferred to off-chip driver 30 and tofeedback circuit 60. The driver further delays the signal by a delay or amount of processing time (δr) utilized by the driver and provides a clock signal (DQS) synchronized with the external clock signal (CLK) to other circuits. - The feedback circuit receives the signal (DCLK) from the variable delay line and includes delay elements producing a delay (Tf) corresponding to the delays of the input receiver (T1) and the driver (δr). Thus, the resulting feedback signal (FBCLK) produced by the feedback circuit simulates the delays (Tf=T1+δr) encountered by the external clock signal (CLK). The feedback signal (FBCLK) and internal clock signal (CLK2DLL) are received by
phase detector 40 that determines the phase difference or skew between these signals, thereby indicating the phase difference between the internal and external clock signals (CLK and DQS). - The phase detector controls
counter 50 to indicate the phase difference between the internal clock and feedback signals. The phase detector generally increments or decrements the counter to enable the count to indicate the phase difference. The count basically represents the phase difference in terms of a quantity of delay elements or units of the variable delay line. The counter controls the delay provided byvariable delay line 20 to compensate for the phase difference between the signals (CLK2DLL and FBCLK) and enable the resulting signal (DQS) to become synchronized with the external clock signal (CLK). In other words, the DLL determines the delay (T2) of the variable delay line to align the resulting signal from the driver (DQS) with the external clock signal (CLK). The delay of the delay line (T2) may be expressed as follows:
T2=K*Tcycle−Tf,
where K*Tcycle is an integer multiple of the external clock signal period. The various DLL signals and corresponding skews are illustrated in the timing diagrams ofFIG. 1 . - The DLL typically operates over a clock frequency range to lock onto a particular clock or operational frequency. By way of example only, the DLL may operate in the frequency range of 80 MHz-600 MHz (or clock cycles (Tcycle) in the range of approximately 1.6 to 12.5 nanoseconds). In this case,
counter 50 includes a value between zero and 2P−1, where P represents the quantity of bits utilized for the count. Once the DLL is locked onto or reset for a clock frequency, systems may change the operating or clock frequency for power saving or other purposes without resetting the DLL. The DLL operates under the lock condition parameters until the counter reaches a minimum or maximum value. At this point, the delay within the DLL is likely to become insufficient to align the clock signals (CLK and DQS), where the resulting clock signal (DQS) does not become synchronized with the external signal (CLK). - Basically, two situations may arise in response to the frequency change. One situation is referred to as “overflow” and the other situation is referred to as “underflow”. Overflow occurs when a maximum delay of the DLL is reached (e.g., the counter reaches a maximum count value or a value of 2P−1). A further decrease in the clock frequency (or increase in the clock period) will require a delay which the DLL cannot accommodate (e.g., the delay required will be beyond the maximum delay of the DLL). The overflow condition is illustrated, by way of example only, in
FIG. 2A . The first time line graphically illustrates the external clock signal (CLK) with the DLL locked to a clock period or Tcycle of five nanoseconds. The resulting signal (DQS) is delayed by a feedback circuit delay (Tf) of six nanoseconds, thereby providing a variable delay line delay (T2) of four nanoseconds (e.g., T2=K*Tcycle−Tf as described above, where the lock occurs at K=2) to align the external clock and resulting signals (CLK and DQS). The second time line graphically illustrates the external clock signal (CLK) with the DLL locked to a clock period or Tcycle of ten nanoseconds. The resulting signal (DQS) is delayed by the feedback circuit delay (Tf) of six nanoseconds, thereby providing a variable delay line delay (T2) of four nanoseconds (e.g., T2=K*Tcycle−Tf as described above, where the lock occurs at K=1) to align the external clock and resulting signals (CLK and DQS). The third time line graphically illustrates the change in period (Tcycle) of the external clock signal (CLK) from five nanoseconds to ten nanoseconds with the DLL locked to a clock period or Tcycle of five nanoseconds and K=2 (e.g., as in the first time line). The resulting signal (DQS) is delayed by the feedback circuit delay (Tf) of six nanoseconds, thereby providing a variable delay line delay (T2) of fourteen nanoseconds (e.g., T2=K*Tcycle−Tf as described above, where the lock occurs at K=2) to align the external clock and resulting signals (CLK and DQS). Since the maximum delay of the variable delay line is on the order of a maximum Tcycle (or twelve nanoseconds for 80 MHz as described above), the delay needed to synchronize the external clock and resulting signals (CLK and DQS) is beyond the capability of the DLL. - The second situation or underflow occurs when the delay (T2) needed for the DLL to lock is zero (e.g., the counter reaches a count value of zero). A further increase in clock frequency (or decrease in clock period) will require a negative delay which is not possible. The underflow condition is illustrated, by way of example only, in
FIG. 2B . The first time line graphically illustrates the external clock signal (CLK) with the DLL locked to a clock period or Tcycle of five nanoseconds. The resulting signal (DQS) is delayed by a feedback circuit delay (Tf) of six nanoseconds, thereby providing a variable delay line delay (T2) of four nanoseconds (e.g., T2=K*Tcycle−Tf as described above, where the lock occurs at K=2) to align the external clock and resulting signals (CLK and DQS). The second time line graphically illustrates the external clock signal (CLK) with the DLL locked to a clock period or Tcycle of ten nanoseconds. The resulting signal (DQS) is delayed by the feedback circuit delay (Tf) of six nanoseconds, thereby providing a variable delay line delay (T2) of four nanoseconds (e.g., T2=K*Tcycle−Tf as described above, where the lock occurs at K=1) to align the external clock and resulting signals (CLK and DQS). The third time line graphically illustrates the change in period (Tcycle) of the external clock signal (CLK) from ten nanoseconds to five nanoseconds with the DLL locked to a clock period or Tcycle of ten nanoseconds and K=1 (e.g., as in the second time line). The resulting signal (DQS) is delayed by the feedback circuit delay (Tf) of six nanoseconds, thereby providing a negative variable delay line delay (T2) of one nanosecond (e.g., T2=K*Tcycle−Tf as described above, where the lock occurs at K=1) to align the external clock and resulting signals (CLK and DQS). Since the minimum delay of the variable delay line is zero or no delay, the negative delay needed to synchronize the external clock and resulting signals (CLK and DQS) is beyond the capability of the DLL. - A proposed solution is to utilize additional delay lines. For example, two lines may be used for the external and feedback clock signals (CLK and FBCLK), while a third delay line may be utilized as a reference for the DLL. In response to an overflow or underflow condition, the DLL is automatically reset to lock onto a new clock frequency. The reset may be applied with or without the additional delay lines to accommodate the underflow or overflow condition. Another proposed solution is to increase the amount of the delay in the delay line.
- However, the proposed solutions suffer from several disadvantages. In particular, the use of additional delay or delay lines reduces the area on integrated circuits or chips, and increases jitter, power or current consumption and complexity of the circuit. Further, the use of a DLL reset produces a locking period that prevents use of the DLL during that period (e.g., the output of the DLL may not be used for a period on the order of a few hundred clock cycles).
- The present invention accommodates the overflow and underflow conditions with the proper amount of delay (e.g., on the order of the maximum clock period or Tcycle) in the DLL. When the DLL reaches an overflow or underflow condition, the DLL is still presumably locked since the frequency drift is slow relative to the update rate of the DLL, where the latency of the locked loop is represented by K. In the case of an overflow condition, the next locking position is typically within the preceding clock period (e.g., K−1), while the next locking position for an underflow condition is typically within the succeeding clock period (e.g., K+1). The present invention decrements the DLL counter in response to an overflow condition by the number of coarse delay elements within a clock period to enable locking within the preceding clock period. Similarly, the present invention increments the DLL counter in response to an underflow condition by the number of coarse delay elements within a clock period to enable locking within the succeeding clock period.
- According to the present invention, a DLL includes a cycle time detector to determine the quantity of delay elements within a clock cycle and adjust a DLL counter controlling a variable delay line to enable DLL operation or locking in response to DLL overflow and underflow conditions. The cycle time detector includes a ring oscillator having a known relation and strong correlation between the oscillator period and the delay elements of the DLL. The output of the oscillator controls the DLL counter to provide a new locking position for the DLL in the presence of overflow or underflow conditions. The oscillator is driven for an interval corresponding to the product of the external clock period and the quantity of delay elements in the ring oscillator. In effect, the delay of the DLL is adjusted to the preceding or succeeding external clock period to enable locking in response to overflow or underflow conditions.
- The above and still further features and advantages of the present invention will become apparent upon consideration of the following detailed description of specific embodiments thereof, particularly when taken in conjunction with the accompanying drawings wherein like reference numerals in the various figures are utilized to designate like components.
-
FIG. 1 is a schematic block diagram of a conventional delay locked loop circuit (DLL). -
FIG. 2A is a graphical illustration of DLL timing diagrams for a DLL overflow condition. -
FIG. 2B is a graphical illustration of DLL timing diagrams for a DLL underflow condition. -
FIG. 3 is a schematic block diagram of a delay locked loop circuit (DLL) according to the present invention. -
FIG. 4 is a schematic diagram of a ring oscillator of the cycle time detector of the DLL ofFIG. 3 . -
FIG. 5 is a graphical illustration of timing diagrams of the DLL ofFIG. 3 . - A delay locked loop circuit (DLL) reduces or compensates for a skew between a clock signal and data or between an external clock and an internal clock as described above. However, these types of circuits may encounter overflow or underflow conditions during periods of clock frequency drift that require delays beyond the capability of the DLL, thereby preventing synchronization of the signals as described above. Accordingly, the present invention DLL accommodates overflow and overflow conditions without the adverse effects of adding additional delay or delay elements or resetting the DLL for operation. A DLL according to the present invention is illustrated in
FIGS. 3-4 . The DLL typically operates over a clock frequency range to lock onto a particular clock or operational frequency as described below. By way of example only, the DLL may operate in the frequency range of 80 MHz-600 MHz (or clock cycles (Tcycle) in the range of approximately 1.6 to 12.5 nanoseconds); however, the DLL may accommodate any desired frequency range. Specifically,DLL 100 includesinput receiver 15,variable delay line 20, off-chip driver 30,phase detector 40, counter 50 andfeedback circuit 60, each substantially similar to those described above. These components may be implemented by any conventional or other devices or circuitry (e.g., logic, processors, software and/or hardware modules, gates, integrated circuits, etc.) performing the functions described below. Briefly, the input receiver receives the external clock signal (CLK) and produces an internal clock signal (CLK2DLL) for transference tovariable delay line 20 andphase detector 40. The internal clock signal includes an initial delay (T1) corresponding to the delay or amount of processing time utilized by the input receiver. The input receiver is generally in the form of a buffer or other device to receive the signal. -
Variable delay line 20 delays the internal clock signal by an amount (T2) corresponding to a phase difference between the internal and feedback clock signals as described above. The delay line includes a coarse delay line orunit 22 that provides a delay in stages or increments based on the value in the counter. The coarse delay unit typically includes a plurality of controllable delay elements (e.g., buffers, logic gates, etc.) each providing a known delay to the signal. For example,delay line 20 may provide a maximum delay of twelve nanoseconds (e.g., corresponding to a maximum Tcycle for 80 MHz) with each coarse delay element providing the delay in increments of 300 picoseconds. In order to provide delays with resolution beyond the coarse delay element (e.g., 300 picoseconds),delay line 20 may further include a fine delay line orblender unit 24. The blender unit is disposed in series with the coarse delay unit and typically includes a plurality of controllable delay elements (e.g., buffers, logic gates, etc.) each providing a further known delay to the signal. By way of example,blender unit 24 may provide a maximum additional delay of 300 picoseconds, thereby enhancing resolution by providing delays within the delay increments of the coarse delay units. In other words, the blender unit provides delays corresponding to a portion of a coarse delay unit (e.g., to provide a delay that is not an integer multiple of a coarse delay). The blender unit may compensate for errors within the DLL and is typically driven by the least significant bits of the counter as described below. The resulting signal from the variable delay line (DCLK) is transferred to off-chip driver 30 and tofeedback circuit 60. The driver further delays the signal by a delay or amount of processing time (δr) utilized by the driver and provides a clock signal (DQS) synchronized with the external clock signal (CLK) to other circuits. - The feedback circuit receives the signal (DCLK) from the variable delay line and includes delay elements producing a delay (Tf) corresponding to the delays of the input receiver (T1) and the driver (δr). The delay elements may be implemented by any conventional or other devices (e.g., buffers, logic gates, etc.). Thus, the resulting feedback signal produced by the feedback circuit (FBCLK) simulates the delays (e.g., Tf=T1+δr) encountered by the external clock signal (CLK). The feedback signal (FBCLK) and internal clock signal (CLK2DLL) are received by
phase detector 40 that determines the phase difference or skew between these signals, thereby indicating the phase difference between the external and resulting clock signals (CLK and DQS). - The phase detector is coupled to a
switch 80 that detects overflow and underflow conditions and provides controls to counter 50 in accordance with detected conditions as described below.Switch 80 may be implemented by any conventional or other switching device (e.g., transfer gate, logic, processor, software and/or hardware modules, integrated circuit, etc.). During the normal operating mode (e.g., in the absence of overflow or underflow conditions), switch 80 couples the phase detector output (PD1) to counter 50 to indicate the phase difference between the signals received by the phase detector (CLK2DLL and FBCLK). The phase detector generally increments or decrements the counter to enable the count to indicate the phase difference. The count basically represents the phase difference in terms of a quantity of delay elements or units of the variable delay line. The counter controls the delay (T2) provided byvariable delay line 20 to compensate for the phase difference between the signals (CLK2DLL and FBCLK) and enable the resulting signal (DQS) to become synchronized with the external clock signal (CLK) as described above (e.g., T2=K*Tcycle−Tf, where K*Tcycle is an integer multiple of the clock signal period). - The DLL typically operates to lock onto a particular clock or operational frequency. In this case,
counter 50 includes a value between zero and 2P−1, where P represents the quantity of bits utilized for the count as described above. By way of example only, the counter is implemented by a nine bit counter with the six most significant bits used to controlcoarse delay unit 22 and the three least significant bits used to controlblender unit 24. Once the DLL is locked onto a clock frequency, systems may change the operating or clock frequency for power saving or other purposes without resetting the DLL. The DLL operates under the lock condition parameters during the frequency drift until a frequency is attained that causes the counter to reach a maximum or minimum value, thereby respectively indicating overflow and underflow conditions as described above. These conditions basically indicate the delays to synchronize the external clock and resulting signals (CLK and DQS) that are beyond the delay provided by the variable delay line as described above. - In order to accommodate overflow and underflow conditions,
DLL 100 further includes acycle time detector 70. Specifically, when the DLL reaches an overflow or underflow condition, the DLL is still presumably locked (e.g., at the frequency causing the counter to reach the maximum or minimum value), where the latency of the locked loop is represented by K. In the case of an overflow condition, the next locking position is typically within the preceding clock period (e.g., K−1), while the next locking position for an underflow condition is typically within the succeeding clock period (e.g., K+1). The cycle time detector is enabled in response to an overflow or underflow condition and determines the quantity of coarse delay elements within a clock period. The output of the cycle time detector (OSCN) is coupled to switch 80 that enables the cycle time detector to control counter 50 during overflow and underflow conditions. The switch is coupled to counter 50 and determines the presence of overflow and underflow conditions based on the count value (e.g., an overflow condition occurs in response to the counter attaining a maximum count value (2P−1), whereas an underflow condition occurs in response to the counter attaining a zero count value). The cycle time detector adjusts the count within the counter by the number of coarse delay elements within a clock period to enable locking within the preceding or succeeding clock period in accordance with detected overflow and underflow conditions, respectively. In other words, the cycle time detector determines (K−1)*Tcycle or (K+1)*Tcycle, where K is the first integer that satisfies the locking condition (e.g., T2=K*Tcycle−Tf). Once overflow or underflow is detected, the cycle time detector changes the count value or DLL delay (T2) to a lock position that may be expressed as:
T2=(K−1)*Tcycle−Tf (overflow) or
T2=(K+1)*Tcycle−Tf (underflow).
The count value provided to the delay line is maintained at the minimum or maximum value in response to underflow or overflow conditions to enable the count value to be adjusted without affecting the delay. -
Cycle time detector 70 includes afrequency divider module 72 and aring oscillator 74. The period of the ring oscillator is strongly correlated with the DLL delay to enable determination of the quantity of delay elements within a clock period. The oscillator includes a plurality of delay elements 76 (FIG. 4 ) arranged in a chain or a cascaded fashion. Each delay element includes a pair of NAND type logic gates to provide a coarse delay, Tcoarse, for that delay element. The final delay element in the chain utilizes a single NAND gate or one half of a coarse delay to provide an inverted resulting signal (e.g., since two NAND gates within each prior delay element provide a non-inverted signal). This inverted signal is fed back to the initial delay element, thereby enabling the oscillator to generate an alternating signal to form a clock type output. - The oscillator includes a quantity, M, of
delay elements 76 and an additional one half of adelay element 76, thereby providing a total of M+½ delay elements. The quantity of coarse delays or delayelements 76 withinring oscillator 74 is selected based on the capability ofcounter 50. The lesser the quantity of delay elements, the faster the DLL may lock, but a higher counting rate is required. The delay, Th, for a signal through the oscillator may be expressed as the product of the delay for each delay element, Tcoarse, and the quantity of delay elements in the oscillator, or Th=(M+½)*Tcoarse. Since the oscillator produces alternating inverted signals, the oscillator cycle or period, Tosc, includes two signals (e.g., an inverted signal and a non-inverted signal) that collectively traverse a quantity, Q, of delay elements twice that of a single signal (e.g., M+½), or Q=2*(M+½). Thus, the total delay or oscillator period, Tosc, may be expressed as the product of the coarse delay, Tcoarse, of each delay element and the quantity of delay elements, Q, or Tosc=Q*Tcoarse. - The cycle time detector determines the quantity of coarse delays, N, in a clock cycle which may be expressed as N=Tcycle/Tcoarse. Since the oscillator includes plural coarse delays instead of a single coarse delay, the quantity of coarse delays, N, is expressed in terms of the oscillator period, Tosc (e.g., Tosc=Q*Tcoarse). Multiplying the above expression for N by Q/Q or one, yields N=(Tcycle*Q)/(Q*Tcoarse), where TON=Tcycle*Q and Tosc=Q*Tcoarse. Thus, the expression may be expressed in terms of the oscillator period, Tosc, where N=TON/Tosc. In other words, the quantity of delay elements, N, for a clock cycle may be determined by counting the number of oscillator periods during an interval TON (e.g., Q*Tcycle).
-
Frequency divider module 72 of cycle time detector 70 (FIG. 3 ) receives the internal clock signal (CLK2DLL) and divides the signal frequency by the quantity of delay elements traversed, Q. The frequency divider module may be implemented by any conventional or other devices or circuitry and produces a signal (TON) with a frequency proportional to the input signal frequency by a ratio of 1/Q. This essentially provides the output signal (TON) with a period of Q*the input signal frequency (e.g., or Q*Tcycle, since the input signal is the internal clock signal). This is illustrated by way of example in the timing diagrams ofFIG. 5 . The TON signal enables the oscillator, where the oscillator period or output pulses (OSCN) are coupled to controls ofcounter 50 viaswitch 80. The counter preferably ignores the initial rising edge of the oscillator output (e.g., to ensure counts of completed oscillator periods) and starts counting from the second rising edge (e.g., as viewed inFIG. 5 ) to ensure accuracy. However, other techniques may be employed to ensure a proper count (e.g., decrementing the final count, etc.). Since each oscillator output pulse represents an oscillator period, the quantity counted represents the quantity of oscillator periods (Tosc) within the interval TON, or TON/Tosc. In other words, the resulting count represents N or the number of coarse delay elements within a clock period (e.g., since N=TON/Tosc). - In the case of an overflow condition detected by
switch 80, the switch couples the oscillator output (OSCN) to decrement controls ofcounter 50, thereby decreasing the counter value for each oscillator period. This reduces the count by the number of delay elements, N, within a clock period and provides the DLL with a new locking position. In effect, this enables the DLL to lock in a preceding (e.g., K−1) clock. When an underflow condition is detected byswitch 80, the switch couples the oscillator output (OSCN) to increment controls ofcounter 50, thereby increasing the counter value for each oscillator period. This increases the count by the number of delay elements, N, within a clock period and provides the DLL with a new locking position. In effect, this enables the DLL to lock in a succeeding (e.g., K+1) clock. During the overflow or underflow condition (e.g., during the interval TON), the delay of the delay line is fixed or frozen (e.g., based on the maximum or minimum count value), where no delay change is visible outside of the DLL. Once the quantity of delay elements, N, has been determined, the delay line adjustment occurs without occurrence of spikes since the difference between the adjusted and overflow or underflow count values (e.g., between zero and N for underflow, and between 2P−1 and 2P−1−N for overflow) are spaced by a clock cycle. Depending upon the particular delay line, the adjustment of the count value is synchronized, and in the case of a delay line with multiple inputs, a single output or a differential structure, an error, Terr, introduced within the count as described below may be reduced to a maximum of one half of a coarse delay. In response to expiration of the TON interval, switch 80 couples the counter to phasedetector 40 for operation as described above. - The determination of the quantity of delay elements, N, may introduce an error term and be expressed as:
N=TON/Tosc+Terr,
where Terr represents the error term and is between zero and a coarse delay of delay line 20 (e.g., 0<Terr<one coarse delay). The error may be reduced by increasing the interval TON and maintaining the oscillator period, Tosc, fixed. For example, if TON was increased to a value, L*TON, the following expression results:
L*TON/Tosc=L*N+L*Terr (where 0<Terr<one coarse delay). - Since N represents a quantity of delay line coarse delays, the integer part of the term L*Terr represents a fraction of a coarse delay and may be indicated by the least significant bits of the counter (e.g., as viewed in
FIG. 5 ). This portion of a coarse delay may be realized byblender unit 24 as described above. By way of example, if L=2, then L*Terr is the value of the least significant bit of the counter with the remaining bits representing the quantity of coarse delay elements, N. When L=4, L*Terr is the value of the two least significant bits of the counter with the remaining bits representing the quantity of coarse delay elements, N. The bits representing the portion of a coarse delay may be utilized to controlblender unit 24 to provide the corresponding delay and enhance accuracy. Referring back to the above example with L=2, the oscillator is enabled for an interval twice as long as an interval for L=1, thereby producing a doubled value for the quantity, N. If the least significant bit of the counter is used to enable a portion (e.g., half) of the blender unit, the remaining bits of the count represent the number of coarse elements as described above. The interval, TON, may be further increased to achieve a desired resolution. However, the longer the TON interval or time for determining the quantity of delay elements, the slower the evaluation process. - Operation of the present invention DLL is described with reference to
FIG. 3 . Initially, the input receiver receives the external clock signal (CLK) and produces an internal clock signal (CLK2DLL) for transference tovariable delay line 20 andphase detector 40. The internal clock signal includes an initial delay (T1) corresponding to the delay or amount of processing time utilized by the input receiver. The variable delay line delays the internal clock signal by an amount (T2) corresponding to a phase difference between the internal and feedback clock signals as described above. The resulting signal from the variable delay line (DCLK) is transferred to off-chip driver 30 and tofeedback circuit 60. The driver further delays the signal by a delay or amount of processing time (δr) utilized by the driver and provides a clock signal (DQS) synchronized with the external clock signal (CLK) to other circuits. - The feedback circuit receives the signal (DCLK) from the variable delay line and includes delay elements producing a delay (Tf) corresponding to the delays of the input receiver (T1) and the driver (δr). Thus, the resulting feedback signal produced by the feedback circuit (FBCLK) simulates the delays (Tf=T1+δr) encountered by the external clock signal (CLK). The feedback signal (FBCLK) and internal clock signal (CLK2DLL) are received by
phase detector 40 that determines the phase difference or skew between these signals, thereby indicating the phase difference between the internal and external clock signals (CLK and DQS). - The phase detector is coupled to switch 80 that detects overflow and underflow conditions and provides controls to counter 50 in accordance with detected conditions as described above. During the normal operating mode (e.g., in the absence of overflow or underflow conditions), switch 80 couples the phase detector output to counter 50 to indicate the phase difference between the signals received by the phase detector (CLK2DLL and FBCLK). The counter controls the delay (T2) provided by
variable delay line 20 to compensate for the phase difference between the signals (CLK2DLL and FBCLK) and enable the resulting signal (DQS) to become synchronized with the external clock signal (CLK) as described above. - However, once the DLL is locked onto a clock frequency, systems may change the operating or clock frequency. The DLL operates during the frequency drift until the frequency change causes the counter to reach a maximum or minimum value, thereby respectively indicating overflow and underflow conditions as described above. When the DLL reaches an overflow or underflow condition,
cycle time detector 70 is enabled and determines the quantity of coarse delay elements within a clock period. The output of the cycle time detector is coupled to switch 80 that enables the cycle time detector to control counter 50 during overflow and underflow conditions. The cycle time detector adjusts the count within the counter by the number of coarse delay elements within a clock period to enable locking within the preceding or succeeding clock period in accordance with detected overflow and underflow conditions, respectively. The count value provided to the delay line is maintained at the maximum or minimum value in response to overflow or underflow conditions to enable the count value to be adjusted without affecting the delay. After the count is adjusted, switch 80 couples the counter to phasedetector 40 for operation as described above. - It will be appreciated that the embodiments described above and illustrated in the drawings represent only a few of the many ways of implementing a method and apparatus compensating for frequency drift in a delay locked loop.
- The present invention DLL may accommodate any desired frequency range or clock or other signal period. The components (e.g., input receiver, variable delay line, off-chip driver, phase detector, counter, feedback circuit, switch, cycle time detector, etc.) of the present invention DLL may be implemented by any conventional or other devices or circuitry (e.g., logic, processors, software and/or hardware modules, gates, integrated circuits, etc.) performing the functions described herein and may be arranged in any fashion. The input receiver may be implemented by any conventional or other data receiver (e.g., buffer, gate, etc.). The driver may be implemented by any conventional or other devices (e.g., circuitry, etc.) to provide signals to other circuits. The phase detector may be implemented by any conventional or other devices (e.g., circuitry, processor, etc.) determining the phase difference between any quantity of signals in any desired resolution. The phase detector may provide the phase difference with respect to any types of units (e.g., the value of the phase difference, the quantity of delay elements or units for synchronization, etc.). The feedback circuit may be implemented by any conventional or other devices (e.g., circuitry, etc.) with any quantity of delay units each including any quantity of any types of delay elements (e.g., gates, inverters, buffers, etc.). The feedback circuit may provide any desired delay to simulate delays encountered by the external signal.
- The variable delay line may be implemented by any conventional or other devices (e.g., circuitry, etc.) with any quantity of any types of delay units (e.g., coarse, fine or blender, etc.) each including any quantity of any types of delay elements (e.g., gates, inverters, buffers, etc.). The delay units may be arranged in any fashion and provide coarse and fine delays either individually or in any combinations. The coarse and fine delay units may provide any desired delays with any desired resolution. The variable delay line may receive any types of control signals to control the delays (e.g., count values, delay times, etc.). The variable delay line may be implemented without fine delays, thereby providing delays in coarse delay increments.
- The counter may be implemented by any conventional or other counters (e.g., circuitry, processor, hardware and/or software counters, ALU, etc.) and may utilize any desired quantity of bits for the count value. The blender or fine delay of the present invention DLL may be controlled by any quantity of any of the bits of the count value (e.g., least significant bits, etc.), while the coarse delay of the present invention DLL may be controlled by any quantity of any of the bits of the count value (e.g., most significant bits, etc.). The counter of the present invention DLL may include any types of control inputs (e.g., increment, decrement, etc.) and may adjust the count in any manner based on any increment value.
- The switch of the present invention DLL may be implemented by any conventional or other switching device (e.g., transfer gate, logic, processor, software and/or hardware modules, integrated circuit, etc.). The switch may detect overflow and overflow conditions based on any count values. The switch may couple the cycle time detector to any desired counter controls to adjust the count in any fashion.
- The cycle time detector of the present invention DLL may determine the quantity of any types of delay elements (e.g., coarse, fine, etc.) for any desired clock period. The frequency divider module of the present invention DLL may be implemented by any conventional or other devices (e.g., circuitry, processor, splitter, divider, etc.) producing a signal having a frequency of any desired proportion in relation to the input signal frequency. The ring oscillator of the present invention DLL may be implemented by any conventional or other devices (e.g., circuitry, oscillators, etc.) with any quantity of delay units each including any quantity of any types of delay elements (e.g., NAND or other logic gates, inverters, buffers, etc.). The delay elements and units may be arranged in any fashion and produce any desired delays. The ring oscillator preferably has a correlation between the oscillator period and the delay elements of the DLL, but may provide or correspond to any desired delay. The ring oscillator may be enabled for any desired time interval (e.g., a multiple of the clock period, a portion of the clock period, etc.) sufficient to determine the quantity of delay elements in a clock period. The present invention DLL may determine the oscillator periods for any desired quantity of clock periods and adjust the count and delay accordingly (e.g., the DLL and variable delay line may be configured for any desired quantity of clock cycles or frequency ranges).
- The counter preferably ignores the initial rising edge of the oscillator output (e.g., to ensure counts of completed oscillator periods) and starts counting from the second rising edge to ensure accuracy. However, any conventional or other techniques may be employed to ensure a proper count (e.g., including the initial edge and decrementing the final count, etc.). Further, the cycle time detector may be continuously enabled and control the counter based on the detection of overflow or underflow by the switching device. Alternatively, the cycle time detector may be enabled in response to detection of overflow or underflow conditions by the switching device. The cycle time detector, switching device and/or counter may employ any type of synchronization or enablement/disablement techniques (e.g., logic gates, handshaking, enable/disable lines, interrupts, etc.) to enable the quantity of oscillator periods to be determined during a complete TON cycle (e.g., to prevent the count from starting in an intermediate portion of a TON period, etc.) and to enable control of the counter (e.g., to enable the phase detector and cycle time detector to control the counter at appropriate times (e.g., in the absence of overflow/underflow conditions, at the completion of a TON cycle, etc.), to freeze the counter controls to the variable delay line during overflow/underflow conditions, etc.).
- The signals may include any desired labels or references. The variables used herein (e.g., K, Q, M, etc.) are preferably integers, but may be any types of numbers (e.g., real, etc.).
- The DLL of the present invention is not limited to the applications described above, but may be applied to digital or analog circuits and provide synchronization between any desired signals.
- From the foregoing description, it will be appreciated that the invention makes available a novel method and apparatus compensating for frequency drift in a delay locked loop, wherein a DLL of the present invention adjusts the delay of a variable delay line by the quantity of delay elements in a clock period in order to accommodate overflow and underflow conditions without a DLL reset.
- Having described preferred embodiments of a new and improved method and apparatus compensating for frequency drift in a delay locked loop, it is believed that other modifications, variations and changes will be suggested to those skilled in the art in view of the teachings set forth herein. It is therefore to be understood that all such variations, modifications and changes are believed to fall within the scope of the present invention as defined by the appended claims.
Claims (40)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/973,389 US7046060B1 (en) | 2004-10-27 | 2004-10-27 | Method and apparatus compensating for frequency drift in a delay locked loop |
DE102005050866A DE102005050866A1 (en) | 2004-10-27 | 2005-10-24 | Method and apparatus that compensate for frequency drift in a delay locked loop |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/973,389 US7046060B1 (en) | 2004-10-27 | 2004-10-27 | Method and apparatus compensating for frequency drift in a delay locked loop |
Publications (2)
Publication Number | Publication Date |
---|---|
US20060087353A1 true US20060087353A1 (en) | 2006-04-27 |
US7046060B1 US7046060B1 (en) | 2006-05-16 |
Family
ID=36205675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/973,389 Expired - Fee Related US7046060B1 (en) | 2004-10-27 | 2004-10-27 | Method and apparatus compensating for frequency drift in a delay locked loop |
Country Status (2)
Country | Link |
---|---|
US (1) | US7046060B1 (en) |
DE (1) | DE102005050866A1 (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060145741A1 (en) * | 2004-12-30 | 2006-07-06 | Stmicroelectronics Pvt. Ltd. | Digital delay lock loop |
US20060284296A1 (en) * | 2003-11-14 | 2006-12-21 | Renesas Technology Corp. | Semiconductor device |
US20070024339A1 (en) * | 2005-07-27 | 2007-02-01 | Benjamin Haugestuen | High resolution delay line architecture |
US20110204942A1 (en) * | 2010-02-24 | 2011-08-25 | Elpida Memory, Inc. | Clock control circuit and semiconductor device including the same |
US20110215850A1 (en) * | 2010-03-03 | 2011-09-08 | Elite Semiconductor Memory Technology Inc. | Method for tracking delay locked loop clock |
JP2012227779A (en) * | 2011-04-20 | 2012-11-15 | Elpida Memory Inc | Semiconductor device |
US20140203854A1 (en) * | 2013-01-18 | 2014-07-24 | Industry-Academic Cooperation Foundation, Yonsei University | Delay locked loop and method of generating clock |
CN113904680A (en) * | 2021-09-15 | 2022-01-07 | 浙江力积电子有限公司 | A quick way to relock DLL circuits |
CN114124083A (en) * | 2022-01-27 | 2022-03-01 | 浙江力积存储科技有限公司 | DLL delay chain and rapid locking method during underflow |
CN117133230A (en) * | 2023-10-26 | 2023-11-28 | 成都利普芯微电子有限公司 | LED display driving chip, common-negative LED display system and common-positive LED display system |
TWI872586B (en) * | 2022-07-06 | 2025-02-11 | 華邦電子股份有限公司 | Latency control circuit semiconductor memory device and latency control method |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7149874B2 (en) | 2002-08-16 | 2006-12-12 | Micron Technology, Inc. | Memory hub bypass circuit and method |
US7133991B2 (en) * | 2003-08-20 | 2006-11-07 | Micron Technology, Inc. | Method and system for capturing and bypassing memory transactions in a hub-based memory system |
KR100546368B1 (en) * | 2003-08-22 | 2006-01-26 | 삼성전자주식회사 | Memory device and self-compensating clock skew that cause a centering error |
US7136958B2 (en) * | 2003-08-28 | 2006-11-14 | Micron Technology, Inc. | Multiple processor system and method including multiple memory hub modules |
US7120743B2 (en) * | 2003-10-20 | 2006-10-10 | Micron Technology, Inc. | Arbitration system and method for memory responses in a hub-based memory system |
US7412574B2 (en) * | 2004-02-05 | 2008-08-12 | Micron Technology, Inc. | System and method for arbitration of memory responses in a hub-based memory system |
US7788451B2 (en) | 2004-02-05 | 2010-08-31 | Micron Technology, Inc. | Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system |
US7257683B2 (en) * | 2004-03-24 | 2007-08-14 | Micron Technology, Inc. | Memory arbitration system and method having an arbitration packet protocol |
US7447240B2 (en) * | 2004-03-29 | 2008-11-04 | Micron Technology, Inc. | Method and system for synchronizing communications links in a hub-based memory system |
US6980042B2 (en) | 2004-04-05 | 2005-12-27 | Micron Technology, Inc. | Delay line synchronizer apparatus and method |
US7363419B2 (en) | 2004-05-28 | 2008-04-22 | Micron Technology, Inc. | Method and system for terminating write commands in a hub-based memory system |
KR100630731B1 (en) * | 2005-01-10 | 2006-10-02 | 삼성전자주식회사 | Semiconductor device including circuit for compensating delay drift due to variation of temperature-supply voltage in clock tree |
US8164368B2 (en) * | 2005-04-19 | 2012-04-24 | Micron Technology, Inc. | Power savings mode for memory systems |
US7928781B2 (en) | 2006-12-04 | 2011-04-19 | Micron Technology, Inc. | Fast measurement initialization for memory |
US7716510B2 (en) | 2006-12-19 | 2010-05-11 | Micron Technology, Inc. | Timing synchronization circuit with loop counter |
US7592846B2 (en) * | 2007-02-16 | 2009-09-22 | Intersil Americas Inc. | Method for using digital PLL in a voltage regulator |
US7656745B2 (en) | 2007-03-15 | 2010-02-02 | Micron Technology, Inc. | Circuit, system and method for controlling read latency |
JP2010124020A (en) * | 2008-11-17 | 2010-06-03 | Elpida Memory Inc | Dll circuit and semiconductor device including the same |
JP5641697B2 (en) * | 2009-02-12 | 2014-12-17 | ピーエスフォー ルクスコ エスエイアールエルPS4 Luxco S.a.r.l. | Clock control circuit and semiconductor device including the same |
US8984320B2 (en) | 2011-03-29 | 2015-03-17 | Micron Technology, Inc. | Command paths, apparatuses and methods for providing a command to a data block |
US8552776B2 (en) | 2012-02-01 | 2013-10-08 | Micron Technology, Inc. | Apparatuses and methods for altering a forward path delay of a signal path |
US9166579B2 (en) | 2012-06-01 | 2015-10-20 | Micron Technology, Inc. | Methods and apparatuses for shifting data signals to match command signal delay |
US9054675B2 (en) | 2012-06-22 | 2015-06-09 | Micron Technology, Inc. | Apparatuses and methods for adjusting a minimum forward path delay of a signal path |
US9001594B2 (en) | 2012-07-06 | 2015-04-07 | Micron Technology, Inc. | Apparatuses and methods for adjusting a path delay of a command path |
US9329623B2 (en) | 2012-08-22 | 2016-05-03 | Micron Technology, Inc. | Apparatuses, integrated circuits, and methods for synchronizing data signals with a command signal |
KR102002462B1 (en) * | 2012-08-29 | 2019-07-23 | 에스케이하이닉스 주식회사 | Delay locked loop circuit and delay lock method of the same |
US8913448B2 (en) | 2012-10-25 | 2014-12-16 | Micron Technology, Inc. | Apparatuses and methods for capturing data in a memory |
US9508417B2 (en) | 2014-02-20 | 2016-11-29 | Micron Technology, Inc. | Methods and apparatuses for controlling timing paths and latency based on a loop delay |
US9530473B2 (en) | 2014-05-22 | 2016-12-27 | Micron Technology, Inc. | Apparatuses and methods for timing provision of a command to input circuitry |
US9531363B2 (en) | 2015-04-28 | 2016-12-27 | Micron Technology, Inc. | Methods and apparatuses including command latency control circuit |
US9813067B2 (en) | 2015-06-10 | 2017-11-07 | Micron Technology, Inc. | Clock signal and supply voltage variation tracking |
US9601170B1 (en) | 2016-04-26 | 2017-03-21 | Micron Technology, Inc. | Apparatuses and methods for adjusting a delay of a command signal path |
US9865317B2 (en) | 2016-04-26 | 2018-01-09 | Micron Technology, Inc. | Methods and apparatuses including command delay adjustment circuit |
US9997220B2 (en) | 2016-08-22 | 2018-06-12 | Micron Technology, Inc. | Apparatuses and methods for adjusting delay of command signal path |
US10224938B2 (en) | 2017-07-26 | 2019-03-05 | Micron Technology, Inc. | Apparatuses and methods for indirectly detecting phase variations |
US10965292B1 (en) | 2020-06-08 | 2021-03-30 | Winbond Electronics Corp. | Delay-locked loop device and operation method therefor |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5955904A (en) * | 1997-03-21 | 1999-09-21 | Fujitsu Limited | Semiconductor integrated circuit with appropriate data output timing and reduced power consumption |
US6066969A (en) * | 1998-01-16 | 2000-05-23 | Fujitsu Limited | Semiconductor device with DLL circuit avoiding excessive power consumption |
US6181174B1 (en) * | 1998-09-24 | 2001-01-30 | Fujitsu Limited | Semiconductor integrated circuit device |
US6242954B1 (en) * | 1998-10-15 | 2001-06-05 | Fujitsu Limited | Timing clock generation circuit using hierarchical DLL circuit |
US6327318B1 (en) * | 1998-06-30 | 2001-12-04 | Mosaid Technologies Incorporated | Process, voltage, temperature independent switched delay compensation scheme |
US6434062B2 (en) * | 1999-12-24 | 2002-08-13 | Hynix Semiconductor | Delay locked loop for use in semiconductor memory device |
US6501309B1 (en) * | 1997-11-07 | 2002-12-31 | Fujitsu Limited | Semiconductor device having timing stabilization circuit with overflow detection function |
US6653875B2 (en) * | 2002-03-11 | 2003-11-25 | Infineon Technologies Ag | Method and apparatus for a delay lock loop |
US6759911B2 (en) * | 2001-11-19 | 2004-07-06 | Mcron Technology, Inc. | Delay-locked loop circuit and method using a ring oscillator and counter-based delay |
US20040150444A1 (en) * | 2003-01-31 | 2004-08-05 | Intel Corporation | System and method for extending delay-locked loop frequency application range |
US6791381B2 (en) * | 1999-08-30 | 2004-09-14 | Micron Technology, Inc. | Method and apparatus for reducing the lock time of a DLL |
US6794913B1 (en) * | 2003-05-29 | 2004-09-21 | Motorola, Inc. | Delay locked loop with digital to phase converter compensation |
-
2004
- 2004-10-27 US US10/973,389 patent/US7046060B1/en not_active Expired - Fee Related
-
2005
- 2005-10-24 DE DE102005050866A patent/DE102005050866A1/en not_active Ceased
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5955904A (en) * | 1997-03-21 | 1999-09-21 | Fujitsu Limited | Semiconductor integrated circuit with appropriate data output timing and reduced power consumption |
US6501309B1 (en) * | 1997-11-07 | 2002-12-31 | Fujitsu Limited | Semiconductor device having timing stabilization circuit with overflow detection function |
US6066969A (en) * | 1998-01-16 | 2000-05-23 | Fujitsu Limited | Semiconductor device with DLL circuit avoiding excessive power consumption |
US6327318B1 (en) * | 1998-06-30 | 2001-12-04 | Mosaid Technologies Incorporated | Process, voltage, temperature independent switched delay compensation scheme |
US6683928B2 (en) * | 1998-06-30 | 2004-01-27 | Mosaid Technologies Incorporated | Process, voltage, temperature independent switched delay compensation scheme |
US6181174B1 (en) * | 1998-09-24 | 2001-01-30 | Fujitsu Limited | Semiconductor integrated circuit device |
US6242954B1 (en) * | 1998-10-15 | 2001-06-05 | Fujitsu Limited | Timing clock generation circuit using hierarchical DLL circuit |
US6791381B2 (en) * | 1999-08-30 | 2004-09-14 | Micron Technology, Inc. | Method and apparatus for reducing the lock time of a DLL |
US6434062B2 (en) * | 1999-12-24 | 2002-08-13 | Hynix Semiconductor | Delay locked loop for use in semiconductor memory device |
US6759911B2 (en) * | 2001-11-19 | 2004-07-06 | Mcron Technology, Inc. | Delay-locked loop circuit and method using a ring oscillator and counter-based delay |
US6653875B2 (en) * | 2002-03-11 | 2003-11-25 | Infineon Technologies Ag | Method and apparatus for a delay lock loop |
US20040150444A1 (en) * | 2003-01-31 | 2004-08-05 | Intel Corporation | System and method for extending delay-locked loop frequency application range |
US6794913B1 (en) * | 2003-05-29 | 2004-09-21 | Motorola, Inc. | Delay locked loop with digital to phase converter compensation |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060284296A1 (en) * | 2003-11-14 | 2006-12-21 | Renesas Technology Corp. | Semiconductor device |
US7623397B2 (en) * | 2003-11-14 | 2009-11-24 | Renesas Technology Corp. | Semiconductor device |
US20060145741A1 (en) * | 2004-12-30 | 2006-07-06 | Stmicroelectronics Pvt. Ltd. | Digital delay lock loop |
US7282971B2 (en) * | 2004-12-30 | 2007-10-16 | Stmicroelectronics Pvt. Ltd. | Digital delay lock loop |
US20070024339A1 (en) * | 2005-07-27 | 2007-02-01 | Benjamin Haugestuen | High resolution delay line architecture |
US7626435B2 (en) * | 2005-07-27 | 2009-12-01 | Avago Technologies General Ip (Singapore) Pte. Ltd. | High resolution delay line architecture |
US20110204942A1 (en) * | 2010-02-24 | 2011-08-25 | Elpida Memory, Inc. | Clock control circuit and semiconductor device including the same |
US8106692B2 (en) * | 2010-03-03 | 2012-01-31 | Elite Semiconductor Memory Technology Inc. | Method for tracking delay locked loop clock |
US20110215850A1 (en) * | 2010-03-03 | 2011-09-08 | Elite Semiconductor Memory Technology Inc. | Method for tracking delay locked loop clock |
JP2012227779A (en) * | 2011-04-20 | 2012-11-15 | Elpida Memory Inc | Semiconductor device |
US20140203854A1 (en) * | 2013-01-18 | 2014-07-24 | Industry-Academic Cooperation Foundation, Yonsei University | Delay locked loop and method of generating clock |
US9035684B2 (en) * | 2013-01-18 | 2015-05-19 | Industry-Academic Cooperation Foundation, Yonsei University | Delay locked loop and method of generating clock |
CN113904680A (en) * | 2021-09-15 | 2022-01-07 | 浙江力积电子有限公司 | A quick way to relock DLL circuits |
CN114124083A (en) * | 2022-01-27 | 2022-03-01 | 浙江力积存储科技有限公司 | DLL delay chain and rapid locking method during underflow |
TWI872586B (en) * | 2022-07-06 | 2025-02-11 | 華邦電子股份有限公司 | Latency control circuit semiconductor memory device and latency control method |
CN117133230A (en) * | 2023-10-26 | 2023-11-28 | 成都利普芯微电子有限公司 | LED display driving chip, common-negative LED display system and common-positive LED display system |
Also Published As
Publication number | Publication date |
---|---|
DE102005050866A1 (en) | 2006-05-18 |
US7046060B1 (en) | 2006-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7046060B1 (en) | Method and apparatus compensating for frequency drift in a delay locked loop | |
US6731667B1 (en) | Zero-delay buffer circuit for a spread spectrum clock system and method therefor | |
US8732509B2 (en) | Timing synchronization circuit with loop counter | |
US5087829A (en) | High speed clock distribution system | |
KR100484252B1 (en) | Dll circuit | |
US5511100A (en) | Method and apparatus for performing frequency detection | |
US6768361B2 (en) | Clock synchronization circuit | |
US7622969B2 (en) | Methods, devices, and systems for a delay locked loop having a frequency divided feedback clock | |
US7639090B2 (en) | Phase detector for reducing noise | |
US8294498B2 (en) | Clock de-skewing delay locked loop circuit | |
US20040100313A1 (en) | Delay locked loop having low jitter in semiconductor device | |
KR20080079820A (en) | Semiconductor memory device and the method for operating the same | |
JP2003188720A (en) | Pll circuit | |
US6556643B2 (en) | Majority filter counter circuit | |
US7282971B2 (en) | Digital delay lock loop | |
US7453297B1 (en) | Method of and circuit for deskewing clock signals in an integrated circuit | |
US7564283B1 (en) | Automatic tap delay calibration for precise digital phase shift | |
US7076012B2 (en) | Measure-controlled delay circuit with reduced playback error | |
US6995590B1 (en) | Hybrid phase/delay locked loop circuits and methods | |
US5892406A (en) | Mixed signal phase locked loop with process and temperature calibration | |
US6633201B1 (en) | System and method for determining frequency tolerance without a reference | |
US6298105B1 (en) | Method and apparatus for a low skew, low standby power clock network | |
US7242256B2 (en) | Phase frequency detector with programmable delay | |
US6836153B2 (en) | Systems and methods for phase detector circuit with reduced offset | |
US7109773B2 (en) | Flexible blender |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INFINEON TECHNOLOGIES NORTH AMERICA CORP., CALIFOR Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MINZONI, ALESSANDRO;KIM, JUNG PILL;REEL/FRAME:015934/0008 Effective date: 20041025 |
|
AS | Assignment |
Owner name: INFINEON TECHNOLOGIES AG, GERMANY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INFINEON TECHNOLOGIES NORTH AMERICA CORP.;REEL/FRAME:016057/0270 Effective date: 20050524 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: QIMONDA AG, GERMANY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INFINEON TECHNOLOGIES AG;REEL/FRAME:023806/0001 Effective date: 20060425 Owner name: QIMONDA AG,GERMANY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INFINEON TECHNOLOGIES AG;REEL/FRAME:023806/0001 Effective date: 20060425 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: INFINEON TECHNOLOGIES AG, GERMANY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:QIMONDA AG;REEL/FRAME:035623/0001 Effective date: 20141009 |
|
AS | Assignment |
Owner name: POLARIS INNOVATIONS LIMITED, IRELAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INFINEON TECHNOLOGIES AG;REEL/FRAME:036908/0923 Effective date: 20150708 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.) |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.) |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |