Abstract:
Disclosed herein are improved, simplified designs for a hierarchical delay line (HDL). The HDL is useful in providing precise phase control between an input clock signal and an output clock signal, and has particular utility as the variable delay in a delay-locked loop (DLL). In one embodiment, a coarse unit delay provides a delayed representation of an input clock. The original and delayed versions of the input clock are presented to a phase mixer block, which is controllable to weight its output to a phase between one of the two input clock signals. The output of the phase mixer block is then provided to a controllable variable delay line capable of adding further coarse delay into the processed signal. To assist in boundary switching, multiplexers are provided in the path between the original and delayed versions of the input clock and the phase mixer block, which provides the ability to boundary shift without having to reset the phase mixer.

Description:
FIELD OF THE INVENTION  
       [0001]     Embodiments of this invention relate to an improved hierarchical delay line with particular utility for adjusting the phase shift of a clock signal in a delay-locked or phase-locked loop.  
       BACKGROUND  
       [0002]     It is often desired in an integrated circuit to delay a signal. In the context of a periodic signal like a clock signal, adjustment of delay can be understood as an adjustment of the phase of the signal. Such phase shifting of a clock signal is particularly useful as applied to delay lock loops (DLLs) or phase lock loops (PLLs) that are used to generate internal clock signals for an integrated circuit from a master clock signal. Because the of complexity of modern-day integrated circuits, the ability to finely shift the phase of clock signal is particularly important to ensure proper timing within the circuit.  
         [0003]     Techniques have been previously disclosed to provide such fine phase shifts in clock signals. See, e.g., U.S. patent application Ser. No. 10/722/959 (“the &#39;959 application”), entitled “Digital Delay-Locked Loop Circuits with Hierarchical Delay Adjustment,” filed Nov. 26, 2003, and assigned to the assignee of the present application, Micron Technology, Inc. As the present application builds on the techniques disclosed in the &#39;959 application, the &#39;959 application is hereby incorporated by reference in its entirety. The reader&#39;s knowledge of the &#39;959 application is presumed, and as a result a detailed discussion of background is limited in this disclosure.  
         [0004]     In the &#39;959 application, a hierarchical delay line  10  is disclosed, which is illustrated in  FIGS. 1A and 1B  of the present application. These hierarchical delay lines  10  are used to finely adjust the phase difference of the output signal (Clk_Out) relative to the input signal (Clk_In). Both delay lines  10  are hierarchical, meaning that each has a number of different stages involved in “fine tuning” the phase shift.  FIG. 1A  has a dual hierarchy, while  FIG. 1B  has a triple hierarchy. Discussed below is the operation of the triple hierarchy delay line  10  of  FIG. 1B .  
         [0005]     The first stage in  FIG. 1B  comprises two variable delay lines (VDLs)  12 ,  14  used to provide a coarse phase shift in the input signal. The coarse phase shift is determined by VDL control signals (VDLcntr) to the VDLs  12 ,  14 , which is shown in further detail in  FIG. 1C . As shown, multiple control signals (Sel&lt;1:4&gt;) are used for each VDL  12 ,  14 . Depending on which Sel&lt;x&gt; signal is chosen, the input signal (Clk_In) will be delayed through the various “coarse units delays” (CUDS) provided by the VDL  12 ,  14 . In the example shown in  FIG. 1C , there are four Sel&lt;x&gt; control signals and hence four CUD stages, which can cause the input signal to be delayed by 1, 2, 3, or 4 CUDs (i.e. from tCUD to  4 tCUD). It is worth mentioning that other types of VDLs can be used besides the circuitry shown in  FIG. 1C .  
         [0006]     In the second stage of the triple hierarchical delay line of  FIG. 1B , phase mixers (PM)  16 ,  18  are used to provide an intermediate phase between the two phases output from the VDLs  12 ,  14  (i.e., inA, inB). This is only briefly explained as the same is well explained in the above-incorporated &#39;959 application. As shown in  FIG. 1D , the phase mixers  16 ,  18  comprise two variable inverters  19 ,  21 . The variable inverters  19 ,  21  are controllable using control signals S&lt;1:N&gt;, corresponding to phase mixer control signals (PMcntrx) from  FIGS. 1A and 1B . The circuitry for the variable inverters  19 ,  21 , shown to the right in  FIG. 1D , allows, depending on the signals S&lt;x&gt; chosen, the output of the phase mixer to be “weighted” between one of the two input phases (inA, inB). For example, if all signals S&lt;x&gt; are high, the output will equal inB (i.e., k=1). If all signals S&lt;x&gt; are low, the output will equal inA (k=0). If only some are chosen (e.g., half), then the output will be the intermediate phase between inA and inB, as shown at the bottom of  FIG. 1D  (k=0.5). (“k” equals p/N, where p equals the number of S&lt;x&gt; signals activated (0 through N), and N equals the total number of S&lt;x&gt; signals). In any event, in this second stage, the phase difference between the VDLs  12 ,  14 , is tailored so that the outputs of the phase mixers  16 ,  18 , express an even finer phase difference.  
         [0007]     Referring again to  FIG. 1B , in the third stage, the outputs from the two phase mixers  16 ,  18 , are sent to another similar phase mixer  20 . Here again, the fine phase difference between the inputs to the third stage are once again rendered finer still at the output of third stage, Clk_Out, i.e., the output of the hierarchical delay line  10 .  
         [0008]     In this way, a very tightly controlled phase difference may be expressed between the Clk_In signal and the Clk_Out signal. For example, if we assume that the first (coarse) stage gave rise to a phase shift of tCUD, and that each of the phase mixers  16 ,  18 , and  20  can generate N phases (i.e., there are N control signals S&lt;N&gt;), then the second stage can vary the phase in increments of tCUD/N, and the third stage (i.e., the entirety of the hierarchical delay line  10 ) can vary the phase in increments of tCUD/Nˆ2. For example, if tCUD=90 degrees, and if each phase mixer  16 ,  18 ,  20  had three control signals (i.e., N=3), then the hierarchical delay line  10  can vary the phase difference between Clk_In and Clk_Out in 10 degree increments. Of course, and as explained in the &#39;959 application, further fine-adjustment phase mixer stages can be added to even further reduce the phase increment between Clk_In and Clk_Out. For example, for Q phase mixer stages, and assuming N control signals in the phase mixers at each stage, the increment value would equal tCUD/NˆQ. Through such fine phase shift control, phase shifts on the order of picoseconds can be achieved.  
         [0009]     While satisfactory in operation, the hierarchical delay lines  10  of  FIGS. 1A and 1B  have disadvantages. For example, the VDL blocks  12 ,  14  in the circuit are very layout intensive and consume significant power. Although only a few CUD stages are shown in the VDL of  FIG. 1C , in reality a VDL would contain tens of CUDs. This in turn necessitates many control signals Sel&lt;x&gt; and logic to generate them. In short, it can be argued that the approach of the hierarchical delay lines  10  of  FIGS. 1A and 1B  are generally too big, too complicated, and too power-intensive.  
       SUMMARY  
       [0010]     Disclosed herein are improved, simplified designs for a hierarchical delay line (HDL). The HDL is useful in providing precise phase control between an input clock signal and an output clock signal, and has particular utility as the variable delay in a delay-locked loop (DLL). In one embodiment, a coarse unit delay provides a delayed representation of an input clock. The original and delayed versions of the input clock are presented to a phase mixer block, which is controllable to weight its output to a phase between one of the two input clock signals. The output of the phase mixer block is then provided to a controllable variable delay line capable of adding further coarse delay into the processed signal. To assist in boundary switching (i.e., at the edges of the coarse units delays), multiplexers are provided in the path between the original and delayed versions of the input clock and the phase mixer block, which provides the ability to boundary shift without having to reset the phase mixer block. Several phase mixers stages can be cascaded in the phase mixer block to provide even finer control of the phase of the resulting output signal of the hierarchical delay line. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0011]     Embodiments of the inventive aspects of this disclosure will be best understood with reference to the following detailed description, when read in conjunction with the accompanying drawings, in which:  
         [0012]      FIGS. 1A and 1B  illustrate prior art hierarchical delay lines, with  FIG. 1A  representing a dual stage line, and  FIG. 1B  representing a triple stage line.  
         [0013]      FIG. 1C  illustrates the variable delay line used in  FIGS. 1A and 1B .  
         [0014]      FIG. 1D  illustrates the phase mixers used in  FIGS. 1A and 1B .  
         [0015]      FIG. 2  illustrates a dual stage hierarchical delay line in accordance with an embodiment of the invention.  
         [0016]      FIG. 3  illustrates a triple stage hierarchical delay line in accordance with an embodiment of the invention.  
         [0017]      FIG. 4  illustrates a multiple stage hierarchical delay line in accordance with an embodiment of the invention.  
         [0018]      FIG. 5  illustrates a delay-locked loop benefited by the use of the disclosed improved hierarchical delay line.  
         [0019]      FIG. 6  illustrates the hierarchical delay line used generally in the context with tailoring the phase relative to two oscillating signals.  
     
    
     DETAILED DESCRIPTION  
       [0020]      FIG. 2  shows an embodiment of an improved, simpler hierarchical delay line  50 . The hierarchical delay line  50  of  FIG. 2  is a dual stage hierarchical delay line similar in performance to the prior art dual stage hierarchical delay line  10  shown in  FIG. 1A . However, the basic hierarchical delay line can be made with multiple hierarchy, i.e., which multiple stages, such as the three stage hierarchical delay line  60  shown in  FIG. 3  (akin to the triple hierarchy line  10  of  FIG. 1B ), or any multiple number of stages, as shown in hierarchical delay line  70  of  FIG. 4 .  
         [0021]     Referring initially to  FIG. 2 , the new hierarchical delay line circuit  50  is similar to the circuit of  FIG. 1A . However, the variable delay lines (VDLs)  12 ,  14  ( FIG. 1A ) have been removed from the front of the circuit, and replaced with a single coarse unit delay (CUD)  52 . A single VDL has been placed after the phase mixer block  57 , as will be explained in further detail later. Also added to the new hierarchical delay line circuit  50  is a switch circuit  55 , whose function will be explained further below. While a comparison of the circuits of  FIG. 2  and the comparable circuit of  FIG. 1A  may look similarly complex, in reality the circuit of  FIG. 2  is much less complicated to layout on an integrated circuit, consumes less power, has fewer control signals, and in sum is a simpler circuit.  
         [0022]     In discussing the operation of the new hierarchical delay line  50 , discussion focuses primarily on a discussion of the two stage embodiment of  FIG. 2 . The Clk_In signal is split in two, with a delayed representation of the Clk 13  In (Clk_In_d) being generated by a single CUD stage  52 . This CUD stage  52  can be as illustrated in  FIG. 1C , or can be any sort of delay circuit commonly used in the art. As shown, CUD stage  52  is not controllable to provide a variable delay, but could be so if desired. It is preferable that the CUD stage  52  be set to one delay unit (i.e., tCUD), and hence Clk_In_d would be delayed from Clk_In by tCUD.  
         [0023]     Clk_In and Clk_In_d are sent to a switch circuit  55 , which is one embodiment comprises two multiplexers  54 ,  56 . Control signal MUXsel chooses either one of these two signals for presentation to the inputs (inA and inB) to the phase mixer block  57 . Thus, if MUXsel is low, then inA=Clk_In and inB=Clk_In_d; if high, then inA=Clk_In_d and inB=Clk_In. The multiplexers  54 ,  56 , are particularly useful for the reasons explained below, but not all useful embodiments of the hierarchical delay line require the use of the multiplexers  54 ,  56 . Instead, signals Clk_In and Clk_In_d could be sent directly to the inputs of the phase mixer block  57 . Although the use of the two multiplexers  54 ,  56 , is preferred, the switch circuit could be comprised of other structures, as one skilled in the art will appreciate.  
         [0024]     The Clk_In and Clk_In_d signals are processed at the phase mixer block  57 , which in  FIG. 2  comprises a single phase mixer  20 . The phase mixer  20  is as described earlier in the background section. By way of review, depending on the number of PMcntr signals utilized (N), the phase difference between inA and inB can be further parsed to provide an output which intervenes between the two phases. For example, suppose Clk_In&#39;s phase is 0 degrees, and Clk_In_d&#39;s phase is  30  degrees by virtue of tCUD. If, N=5, then the phase of the signal emerging from the phase mixer  20  can be 0 degrees (p=0, meaning none of the N control signals S&lt;x&gt; are activated, i.e., k=0); 6 degrees (p=1, k=0.2); 12 degrees (p=2, k=0.4); 18_degrees (p=3, k=0.6); 24 degrees (p=4; k=0.8); or 30 degrees (p=5; k=1.0).  
         [0025]     The phase mixer block  57  can comprise more than a single phase mixer  20 , as shown in  FIG. 3  (triple hierarchy) and  FIG. 4  (multiple hierarchy). In so doing, sets  59  (see  FIG. 4 ) of phase mixers can be serially coupled to even further refine the phase of the output signal. For example, and referring briefly to  FIG. 3 , were the outputs from phase mixers  16  and  18  at 18 and 24 degrees, treatment at phase mixer  20  could be used, assuming an adequate number of control signals S&lt;x&gt;, to output a signal with very tightly controlled phases of 18, 19, 20, 21, 22, 23, or 24 degrees.  
         [0026]     Ultimately, the output of the phase mixer block  57  is met by a VDL circuit  12 . The VDL  12  can be as depicted in  FIG. 1D , but can comprise other variable delay circuits known in the art. VDL  12  provides a coarse phase shift to the otherwise fine phase shift adjustment that took place in the earlier stage(s). This is necessary because usually no mechanism will exist earlier in the circuit to allow a phase shift through a full 360 degrees. For example, in the earlier example, it was assumed that the CUD stage  52  provided only a 30 degree shift in the Clk_In signal. Without the benefit of VDL stage  12 , the resulting output of the hierarchical delay line  50  would be only between 0 and 30 degrees. Accordingly, the VDL stage is used to add significant delay to allow the Clk_In signal to be phase shifted through a full 360 degrees. Thus, continuing the example, if CUD stage  52  provided a delay of 30 degrees, the VDL stage  12 , assuming it is configured of similar CUD stages, would need eleven CUD stages (i.e., 330 degrees) to allow the full 360 degree phase shift to be realized between Clk_In and Clk_Out. In short, assuming the circuit of  FIG. 2 , m active CUD stages in VDL  12 , and p activated control signals S&lt;x&gt; in the phase mixer  20 , the total phase shift will be k*N*tPM+m*tCUD (ignoring propagation delays in the various stages).  
         [0027]     Therefore, and continuing this example, a zero degree phase shift in Clk_Out result when k=0 and m=0, i.e., Clk_In is passed through the phase mixer  20  without mixing with Clk_In_d and no CUDs are active in the VDL  12 . (Also, m=0 would be possible by bypassing VDL but which is not shown in  FIG. 2 ). To increase the delay to  30  degrees, k can be increased toward 1 to blend in increasing portions of Clk_In_d. After 30 degrees, a CUD delay can be added in the VDL  12 , and k reset back to zero. To further increase to 60 degrees, k can again be increased to 1. After 60 degrees, another CUD delay (i.e., two delays) can be added in the VDL  12 , and k again reset to zero, etc. In short, through manipulation of the various control signals Sel&lt;1:M&gt; and S&lt;1:N&gt;, an entire 360 degree phase differential can be established between Clk_In and Clk_Out.  
         [0028]     However, the switch  55 , comprising multiplexers  54  and  56  in one embodiment, can also be used when crossing a CUD boundary (i.e., every 30 degrees in the example). For example, suppose the boundary at 30 degrees is to be crossed. Instead of resetting k back to zero while adding a CUD stage to the VDL  12 , the multiplexers  52 ,  54  can be activated while keeping k at 1. Thus, by changing MUXsel from 0 to 1, the Clk_In and Clk_In_d inputs to the phase mixer  20  are switched, such that inA=Clk_In_d and inB=Clk_In. Because k=1, the Clk_In signal will dominate at the phase mixer  20 . Moreover, the phase shift through the phase mixer  20  can now be increased by smoothly reducing k. Thus to cross the boundary at 30 degrees, for example, initially no CUD stages are active in the VDL  12 . k is increased smoothly from 0 to 1, bringing the phase shift to 30 degrees. Then the multiplexers are activated, and a CUD stage is added to the VDL. Then by reducing k smoothly from 1 to 0, the range from 30 to 60 degree can be transgressed. At 60 degrees, another CUD delay be added to the VDL (2 CUD stages), and the multiplexer deactivated, such that smoothly changing k from 0 to 1 will transgress the range from 60 to 90, etc.  
         [0029]     In short, boundary crossing can be facilitated by the switch circuit  55  without having to change the value of k sharply at the phase mixer  20 . This is preferable, because a sharp transition of k from 0 to 1 (or vice versa) can cause noise in the output of the phase mixer  20 . However, switching the multiplexers  54 ,  56  can too cause noise, and in this regard it is preferred to switch the multiplexers (via MUXsel) during periods when both Clk_In and Clk_In_d are in the low portions of their oscillations. Moreover, it is preferred to switch VDLcnrt (i.e., the Sel&lt;1:M&gt; signals), during low portions of the oscillation of the output of the phase mixer  20 .  
         [0030]      FIG. 5  shows the utility of the disclosed hierarchical delay line  50  in the context of a delay-locked loop (DLL)  80 , such as can occur on an integrated circuit such as a memory chip (e.g., a synchronous DRAM). As one skilled in the art understands the operation of a DLL, such is only briefly discussed. The disclosed closed loop can work to either bring Clk_Out into phase with Clk_In, or Clk_Out can lead Clk_In by the time delay of the delay module. The phase detector can determine whether the output of Delay Module precedes or lags Clk_In, and the control block can then send various control signals to the disclosed hierarchical delay line (e.g., MUXsel, Sel&lt;1:M&gt;, S&lt;1:N&gt;), to adjust the delay as necessary.  
         [0031]     The basic circuit for the hierarchical delay line can be used in other ways as well. For example, the circuit may be used in contexts other than creating a controlled phase shift between an input and output signal. For example, as shown in the circuit  90  of  FIG. 6 , the inputs to the multiplexer are generically illustrated as signals having phases φ 1  and φ 2 . These signals may be generated from a common signal (such as Clk_In_d was generated from Clk_In), or may be signals that are independent from one another that for some reason need to be mixed and delayed. In this respect, signal φ 2  can represent any sort of generic reference signal relative to signal φ 1 .  
         [0032]     While particularly useful in a DLL or PLL, one skilled in the art will understand that the disclosed hierarchical delay line  50  has utility in other applications, and in particular in those applications in which precise control is desired between an input and output signal or clock signal.  
         [0033]     It should be understood that the inventive concepts disclosed herein are capable of many modifications. To the extent such modifications fall within the scope of the appended claims and their equivalents, they are intended to be covered by this patent.