Abstract:
A circuit that compensates for delays induced by clock generation logic and distributed clock drivers in phase lock loop applications is disclosed. The circuit is a phase lock loop (PLL) which contains a clock synchronization circuit that operates to synchronize a transition edge of a signal generated by a frequency divider against a distributed clock signal generated by a clock output driver of the circuit. The synchronization occurs unless the clock synchronization circuit is disabled.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates to circuits that directly compensate for delays induced by clock generation logic and distributed clock drivers in phased-lock loop (PLL) applications. 
     Referring to FIG. 1, a prior art clock generation/distribution block diagram 100 is shown. External Reference Clock 102, REF CLK, is applied to one input of Phase Detector 105, and Frequency Divider Output Signal 155 is applied to the other input of Phase Detector 105. When the PLL is locked, External Reference Clock 102 and Frequency Divider Output Signal 155 are the same frequency. The output of Phase Detector 105, which is a DC voltage representing the phase difference between External Reference Clock 102 and Frequency Divider Output Signal 155, is applied to the input of Loop Filter 110. 
     Loop Filter 110 is a low pass filter with gain, and is used to set dynamic PLL characteristics. The output of Loop Filter 110 is applied to the input of Voltage Controlled Oscillator (VCO) 115. The output of Voltage Controlled Oscillator 115 is Voltage Controlled Oscillator Output Signal 150, a variable frequency which is a function of the Voltage Controlled Oscillator 115 input. Voltage Controlled Oscillator Output Signal 150 is applied to the input of Divide-by-N Frequency Divider 135, that divides the frequency of Voltage Controlled Oscillator Output Signal 150 by the number N. Divide-by-N Frequency Divider 135 is programmed by Programming Input Signal 180 PROG. Frequency Divider Output Signal 155 is applied to one input of Phase Detector 105 as previously mentioned. 
     Voltage Controlled Oscillator Output Signal 150 is routed to a multiplicity of output clock drivers, being First Clock Driver 120, Second Clock Driver 125, . . . Nth Clock Driver 130. Each clock driver outputs a distributed clock, these being First Distributed Clock Output Signal 137, Second Distributed Clock Output Signal 140, . . . Nth Distributed Clock Output Signal 145, respectively. The accumulated delay of interest occurs between Voltage Controlled Oscillator Output Signal 150 and each of the distributed clocks, First Distributed Clock Output Signal 137, Second Distributed Clock Output Signal 140, . . . , and Nth Distributed Clock Output Signal 145. 
     The detrimental effects of unwanted and uncontrolled delays on the operation of digital circuitry are well known. Because digital circuitry operation in general depends upon the timing accuracy of logic transition edges, such as the transition from logic low to logic high or from logic high to logic low, the general effect of uncontrolled digital delays is to affect either the ability of a circuit to clock on the proper transition edge due to delay accumulation or to intermittently clock on the correct edge due to variations in accumulated delay. This latter effect can also manifest itself as noise in circuits whose final performance depends upon the regularity of clock edges in order to achieve high spectral purity, as is the case in frequency synthesizers which use PLLs. 
     All of the common digital logic elements contain detailed timing data as part of their data sheets. This information is provided to allow the designer to make proper timing budgets or allocations for the application of signals to the various functional inputs of the logic element so as to ensure proper circuit operation. The data sheets also contain timing information relative to the internal delays of the logic element so that output signals may be characterized in time with respect to input signals. 
     Large digital circuits can require special software simulation tools in order to characterize the delay safety margins and problem areas, and unless this is done overall circuit performance can become problematical at best due to unforeseen delay accumulations. The extent of the problem is increased because the delay of logic elements is typically also a function of temperature, thus unwanted accumulated delays vary with temperature. 
     All the foregoing are well known to the art. An additional consideration, also known to the prior art, is the increase in sensitivity to delay problems as the frequency of circuit operation increases. This is due to the fact that unwanted accumulated delays which may not be of great importance at low frequencies may become critical at higher frequencies. Since the state of the art is toward increasing frequency of operation, as in communications equipment or computer equipment, the requirements for analysis and compensation of unwanted delays continues to be relevant. 
     In addition to the above causes for unwanted digital delays, there also are transmission line effects which become important as the frequency of operation increases. The interconnection tracks on printed circuit boards must be considered as transmission lines at high frequencies, and require proper termination and layout for optimum performance. These transmission line effects are a source of additional unwanted delay to digital signals, and the departure from ideal transmission line performance causes distortion in digital signals which often produce changes in the timing of edges. 
     Undesired signal delays have been an integral part of system design considerations for years. One example of system level considerations is the effect of signal delays on the distribution of supposedly identical clocks throughout a system. In this application the signal delays can be different to each drop point of a distributed clock, for example, which means that the relative timing information contained in the edges of a digital clock varies from drop point to drop point. The frequency does not change, but the accuracy of edge timing may be compromised throughout the system. 
     One prior art approach to resolve this situation is to overspecify the digital elements involved in the clock distribution system, so that extremely small incremental delays are achieved and the magnitude of the worst case total delay error is held within desired limits. This approach has penalties in cost, power and increased generation of electromagnetic interference due to faster logic elements being used. 
     Another prior art approach is to compensate for differences in delay at drop points by inserting compensation delay in the paths with least delay, typically by inserting otherwise unneeded logic elements in series with a low delay path to increase delay. This approach has the disadvantages that cost increases, power efficiency decreases, parts count increases, the delay of individual logic elements varies from part to part and with temperature, and close matching of overall delay between distribution drop points may, in the final analysis, not be practical. 
     There is thus an unmet need in the art to be able to utilize a method for PLL clock distribution which does not have the disadvantage of large differences in logic signal edge timing between different drop points. Therefore, it would be advantageous in the art to be able to describe a method and structure for distributing PLL digital clock signals in which the delays between drop points are compensated by a method which has predictable performance. 
     SUMMARY OF THE INVENTION 
     The present invention discloses a circuit that compensates for delays induced by clock generation logic and distributed clock drivers in phase lock loop applications is disclosed. The circuit of the present invention contains a clock synchronization circuit that operates to synchronize a transition edge of a signal generated by a frequency divider against a distributed clock signal generated by a clock output driver of the circuit. The synchronization occurs unless the clock synchronization circuit is disabled. 
     According to a first embodiment of the present invention, the circuit comprises a phase detector which receives a reference clock signal and generates a voltage signal representative of a phase difference between the reference clock signal and another input signal to the phase detector; a loop filter that receives the voltage signal generated by the phase detector element and generates an output signal; a voltage controlled oscillator (VCO) that receives the output signal of the loop filter and generates a frequency signal that varies according to the output signal of the loop filter; a frequency divider that receives the frequency signal generated by the voltage controlled oscillator element and a programming signal as input signals and generates a frequency divider signal as an output signal; a clock output driver that receives the frequency signal generated by the voltage controlled oscillator as an input signal and that generates a distributed clock signal; and the clock synchronization circuit that receives the frequency divider signal, the distributed clock signal, and a control signal as input signals and generates a signal that is another input signal of the phase detector. The clock output driver may be one of a number of clock output drivers. 
     The clock synchronization circuit operates to synchronize transition edges of the frequency divider signal generated by the frequency divider element using the distributed clock signal generated by the clock output driver element unless the clock synchronization element is disabled by the control signal. The clock synchronization circuit has a control element and a logic element that perform the synchronization. The control element that receives the distributed clock signal and the control signal as input signals and generates a control output signal. The logic element receives the control output signal, the distributed clock signal, and the frequency divider signal as input signals and generates the output signal of the clock synchronization element. The logic element samples the frequency divider signal on a transition edge of the distributed clock signal in order to synchronize the transition edge of the frequency divider signal unless the control output signal generated by the control element disables the logic element. 
     According to a second embodiment of the present invention, the circuit additionally has another frequency divider and a state machine circuit interposed between the VCO and the clock output driver. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, and further objects and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawing(s), wherein: 
     FIG. 1 is a Clock Generation/Distribution Block Diagram, according to the prior art; 
     FIG. 2 is a Clock Generation/Distribution Block Diagram, according to a first embodiment of the sent invention; 
     FIG. 3 is a Clock Sync Block Diagram, and 
     FIG. 4 is a Clock Generation/Distribution Block Diagram, according to a second embodiment of the present invention. 
    
    
     DESCRIPTION OF THE INVENTION 
     The present invention describes a circuit technique and structure which directly compensates for delays induced by clock generation logic and distributed clock drivers in Phase Lock Loop (PLL) applications. In addition, because the present invention is process independent it offers a substantial reliability improvement over process-dependent delay compensation circuits in that the present invention is predictable in operation. 
     Referring to FIG. 2, clock generation/distribution block diagram 200 is shown. Note that FIG. 2 has Clock Sync Circuit 260 which is not present in FIG. 1. The purpose of Clock Sync Circuit 260 is to use one of the distributed clocks, Nth Distributed Clock Output Signal 145, to resynchronize the transition edges of Frequency Divider Output Signal 155 so as to effectively remove accumulated delays incurred between Voltage Controlled Oscillator Output Signal 150 and Nth Distributed Clock Output Signal 145 before the signal is applied to the input of the phase detector as Clock Sync Circuit Output Signal 270. Clock Sync Circuit Disable Input Signal 265 is utilized to disable the synchronization operation of Clock Sync Circuit 260, if desired, in which case Clock Sync Circuit Output Signal 270 is functionally equivalent to Frequency Divider Output Signal 155. 
     A more detailed explanation of Clock Sync Circuit 260 is presented in FIG. 3 as Clock Sync Block Diagram 300. Frequency Divider Output Signal 155 is sampled on both the rising and falling edges of Nth Distributed Clock Output Signal 145. This ensures that Clock Sync Circuit Output Signal 270 will exactly follow the input even when Nth Distributed Clock Output Signal 145 is a fractional-multiplier of the system clock (i.e., 1.5×, 2.5×, etc.). Clock Sync Disable Logic Circuit 305 is used to enable both parts of the master stage of Parallel D-type Flip-Flop 310. In this condition, Parallel D-type Flip-Flop 310 becomes transparent on either edge of Nth Distributed Clock Output Signal 145 since one of the paths in the slave stage will be enabled. This mode is necessary to allow the PLL to remain locked in a free-running state even if Nth Distributed Clock Output Signal 145 is disabled (the PLL must have a feedback path in order to remain locked). Clock Sync Circuit 260 will resynchronize Clock Sync Circuit Output Signal 270 to Nth Distributed Clock Output Signal 145 on the first rising or falling edge of Nth Distributed Clock Output Signal 145, after Clock Sync Circuit Disable Input Signal 265 has been deasserted. The critical path in Clock Sync Circuit 260 is the propagation from Nth Distributed Clock Output Signal 145 to Clock Sync Circuit Output Signal 270 at the slave stage of Parallel D-type Flip-Flop 310. Parallel D-type Flip-Flop 310 should be designed to minimize the effect of this delay. 
     Referring to FIG. 4, which is a Block Diagram of a second embodiment of a clock generation/distribution system, it will be seen that Divide-by-2 Frequency Divider 420 and State Machine Circuit 415 have been added to the system of FIG. 2. Divide-by-2 Frequency Divider 420 is used to divide the frequency of Voltage Controlled Oscillator Output Signal 150 by two, producing Divide-by-2 Frequency Divider Output Signal 405. Divide-by-2 Frequency Divider Output Signal 405, External Reference Clock 102 and Programming Input Signal 180 are applied as inputs to State Machine Circuit 415. 
     State Machine Circuit 415 is a logic block which, using prior art techniques, sequences through predefined logic states to produce the different output frequencies State Machine Circuit First Output Signal 410 and State Machine Circuit Second Output Signal 425. State Machine Circuit First Output Signal 410 is used as the input for First Clock Driver 120, Second Clock Driver 125, . . . Nth Clock Driver 130 instead of Voltage Controlled Oscillator Output Signal 150 (reference FIGS. 1 and 2). Divide-by-N Frequency Divider 135, Second Distributed Clock Output Signal 140 . . . Nth Distributed Clock Output Signal 145 are at a frequency determined by State Machine Circuit First Output Signal 410. State Machine Circuit Second Output Signal 425 is included to indicate that other clocks may be output by State Machine Circuit 415 simultaneously with State Machine Circuit First Output Signal 410. The characteristics of any additional clocks will depend on system requirements. 
     As can be seen from the foregoing description, the present invention will compensate for accumulated delays between the PLL output and an arbitrarily chosen distributed clock. This is possible because of the inclusion of a novel clock sync circuit which synchronizes the output of the PLL with the distributed clock. The PLL output frequency and the frequency of the distributed clock may be different. Delay compensation is provided without the need for adding process dependent delay elements. The present invention essentially minimizes the skew between an external reference input clock and a distributed clock. 
     While the invention has been particularly shown and described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.