Abstract:
A High Frequency Digital Oscillator contains a ring oscillator having an output fn, and having coarse and fine frequency adjustments, wherein the input signal f 1  is the input to both the ring oscillator and the High-Frequency Digital Oscillator, which has a multiplicity of output signals including f 2 , f 4 , and f 8  at one-half, one fourth, and one-eighth the frequency of fn respectively, and wherein an input gating signal causes the oscillator to start or stop, a signal fc=¼*(f 4 ) causing a coarse frequency adjustment and a signal Δ=(1/f 1 −1/fc) making a fine adjustment, and by stopping the new output before the rising edge of f 1 ; and then restarting starting the new output at the rising edge of so that the output and input are synchronized.

Description:
[0001]    This application is a continuation-in-part of U.S. patent application Ser. No. 11/843,267, filed on Aug. 22, 2007, for a “High Frequency Digital Oscillator on Demand with Synchronization.” It also claims priority based on U.S. patent application Ser. No. 11/308,518 filed on Mar. 31, 2006 for “High Speed Digital Oscillator-on-Demand with Synchronization”, on Provisional Patent 60/666,603 filed on Mar. 31, 2005, for “High Speed Digital Oscillator-on-Demand with Synchronization”, and also on Provisional Patent 60/670,618 filed on Apr. 13, 2005, for “I/O Output to Clock Edge Synchronization” 
     
    
     PRIOR ART 
       [0002]    Frequencies required for all kinds of applications, are usually synthesized through multiplication techniques from an external lower-frequency controlled source or from an internal base oscillator. The internal oscillator is normally an analog type Voltage Controlled oscillator (VCO). As the name implies, its frequency is controlled by voltage that is derived from comparators and amplifiers. The theories of VCO&#39;s have been very extensively described and defined throughout the years. The main frequency of a VCO is much higher than that required by the application. 
         [0003]    The application frequencies are derived through division methods from the VCO. The VCO has the ability to synchronize with an incoming signal by means of a phase comparator derived voltage level. As it is very well known, the synchronization takes a considerable amount of time, and as a result the VCO cannot be gated and cannot supply the required frequencies on demand without a significant time delay. In some cases, many cycles are required before the oscillator reaches stability and synchronization with the incoming signal. In addition, the VCO produces jitter as it tries to synchronize with phase changes in the incoming signal. This Jitter is also a result of variations in the power supply. The circuitry, which is analog, will furthermore consume excessive power as the output oscillates before reaching stability. 
         [0004]    In other applications, where the frequency of the logic circuitry has to synchronize with an externally supplied clock frequency, Phase Locked Loop (PLL) and Delay Locked Loop (DLL) circuitry is used in either discrete logic or in an imbedded logic hardware. Since PLL and DLL circuitry is generally based on VCO and phase comparator designs, excessive power is consumed. Furthermore these prior art circuits will not produce instant synchronization. 
         [0005]    A system and an apparatus to produce a digital clock oscillator of high frequency and derive lower frequency clocks by digital division of the high frequency are essential for many modern circuitry applications. Such an apparatus will have the ability to start and stop oscillating, almost instantaneously, by means of a control signal. In doing so, it must remain synchronized to an external control signal or clock. 
         [0006]    Such a circuit is the subject of the current invention which is described herein 
       SUMMARY OF THE INVENTION 
       [0007]    It is an object of the present invention to provide an oscillator circuit which can be turned on and off within a single period of the output signal. It is a further object of the invention to produce output signals which are twice, four times, and other multiples of an input signal. 
         [0008]    In accordance with a first aspect of the present invention, a high frequency digital oscillator includes a ring oscillator having an output fn whose frequency is controlled by coarse and fine frequency adjustments. 
         [0009]    In accordance with a second aspect of the invention an input signal f 1  is connected to an input to the ring oscillator. 
         [0010]    In accordance with a third aspect of the invention number of additional output signals f 2 , f 4 , and f 8  are produced, having frequencies fn/2, fn/4 and fn/8, respectively, and which are synchronized with output signal fn. 
         [0011]    In accordance with a fourth aspect of the invention an input gating signal causes the oscillator to start or stop. 
         [0012]    In accordance with a fifth aspect of the invention means are provided for measuring the period p 1 =1/f 1  of signal f 1 . 
         [0013]    In accordance with a sixth aspect of the invention means for generating signal fc having a frequency equal to fn/4; 
         [0014]    In accordance with a seventh aspect of the invention means are provided for making a coarse adjustment to the ring oscillator as a function of measured results of the period p 1 ; 
         [0015]    In accordance with an eighth aspect of the invention means are provided for measuring the time interval 0=(1/f1)−(1/fc). 
         [0016]    In accordance with a ninth aspect of the invention means are provided for making a fine adjustment to the output frequency, thereby generating a new signal (new fn) whose frequency is a function of time interval A. 
         [0017]    In accordance with a tenth aspect of the invention means are provided for generating output signal f 0  whose frequency is calculated as ¼*(new fn). 
         [0018]    In accordance with an eleventh aspect of the invention means are provided for stopping signal f 0  and signal (new fn) before the rising edge of signal f 1 ; and means are provided for starting signal f 0  and signal (new fn) at the next rising edge of signal f 1 . 
         [0019]    According to a twelfth aspect of the invention the final signal f 0  has the same frequency as signal f 1 , and is in synch with f 1 . 
         [0020]    According to a thirteenth aspect of the invention, signal f 2  is one-half the frequency of signal new fn, and signal f 4  has a frequency equals to f 0 , which has a frequency equal to one-fourth the frequency of signal (new fn). 
         [0021]    According to a fourteenth aspect of the invention, the means of coarse and fine delay adjustments further comprising multiple delay paths in the loops of the ring, further comprising means for bypassing and means of selecting said loops and inserting the measured delays into the selected loops. 
         [0022]    According to a fifteenth aspect of the invention, the means for making coarse and fine delay adjustments are passive circuits attached to the oscillator feedback loops in the ring the oscillator further comprising means for bypassing said loops, means for selecting said loops, and means for inserting measured delays into the selected loops. 
         [0023]    According to a sixteenth aspect of the invention, the means of delay adjustment to the loop further comprises means for self regulation of temperature, voltage and process variation. 
         [0024]    According to a seventeenth aspect of the invention, the process for determining the coarse and fine delay values for coarse and fine frequency adjustments to the oscillator is repeated to correct variations due to heat and voltage changes. 
         [0025]    In accordance with a final aspect of the invention, in the ring oscillator the frequency adjusting loops consist of delay adjusting elements constructed with passive capacitors activated and attached to the appropriate delay loop with active elements that are constructed in the same substrate as the ring oscillator itself, and more specifically, constructed capacitors in the silicon substrate have one end connected to the appropriate loop and the other connected to ground by an active circuit such as bi-directional FET switch or a single transistor. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0026]    These, and further features of the invention, may be better understood with reference to the accompanying specification and drawings depicting the preferred embodiment, in which: 
           [0027]      FIG. 1  depicts a block diagram of the digital ring oscillator of the present invention, including associated controls to produce the desired frequencies. 
           [0028]      FIG. 1   a  depicts an arrangement of digital circuits that comprise a basic free running ring oscillator of the prior art. 
           [0029]      FIG. 1   b  depicts an arrangement of digital circuits that comprise a gated ring oscillator that includes a delay block inserted in the loop. 
           [0030]      FIG. 1   c  depicts a gated ring oscillator with the delay inserted in the loop and with a gated oscillator output. 
           [0031]      FIG. 2  depicts a more detailed drawing of the gated ring oscillator with delays and controls to implement them. 
           [0032]      FIG. 2   a  depicts an expansion of the block  203  (as shown in  FIG. 2 ) showing capacitors and switches to connect the capacitors to the circuit path of a delay loop. 
           [0033]      FIG. 2   b  depicts an expansion of the block  213  (as shown in  FIG. 2 ) showing capacitors and switches to connect the capacitors to the circuit path of a delay loop. 
           [0034]      FIG. 2   c  depicts an expansion of the block  214  (as shown in  FIG. 2 ) showing capacitors and switches to connect the capacitors to the circuit path of a delay loop. 
           [0035]      FIG. 3  depicts a BULK delay tree with selection taps and controls to enable them. 
           [0036]      FIG. 4  depicts a digital design approach to generate an incoming clock period and a 4 bit counter to facilitate in determining the incoming clock period. 
           [0037]      FIG. 4   a  depicts a timing diagram derived from the logic of  FIG. 4 , which shows the relationships between various signals. 
           [0038]      FIG. 5  depicts a timing diagram which shows the relationships of different clock frequencies with respect to the oscillator basic frequency. 
           [0039]      FIG. 6  depicts a pair of Set/Reset latches, showing the relationship between the input signal to the latches and the ring frequency signal. 
           [0040]      FIG. 7  depicts a collection of Set/Reset latches used to measure the duration of the base ring clock signal within the duration of one period of the incoming clock. 
           [0041]      FIG. 8  depicts a base ring oscillator frequency divider and phase shifter circuit. 
           [0042]      FIG. 8   a  A timing diagram of the derived signals from the design of  FIG. 8 . 
           [0043]      FIG. 8   b  depicts a timing diagram showing the signal produced by the circuit of  FIG. 8 , together with signals  408  and  805 . 
           [0044]      FIG. 8   c  depicts two digital circuits used for comparison of two signals which produce a pulse for time measurement of the phase difference between the two signals. 
           [0045]      FIG. 8   d  depicts a collection of Set/Reset latches used to measure duration of the pulse generated by the circuits of  FIG. 8   c.    
           [0046]      FIG. 9  depicts two digital circuits used to decode the S/R latches set in  FIG. 7 . 
           [0047]      FIG. 10  depicts a decoder having inputs from the decoders of  FIG. 4  and the latches of  FIG. 7  used to select the proper BULK delay to be inserted into the ring oscillator loop. 
           [0048]      FIG. 11  depicts a circuits used to generate the SYNC pulse from the incoming  1  xCLK frequency. 
           [0049]      FIG. 11   a  depicts a timing diagram, showing the relationship of the SYNC pulse to the first  4   x CLK rising edge of the circuit of  FIG. 11 . 
           [0050]      FIG. 12  depicts a timing diagram showing width of the unadjusted p 1  and the adjusted p 2  period widths of signals ADJ  4   x CLK, as well as signal  1  xCK INT. 
       
    
    
     DESCRIPTION OF THE INVENTION 
       [0051]    An “Oscillator-on-Demand” is, by definition, an oscillator which does not oscillate until it is gated to start. The detailed description of the invention defines how the oscillator is constructed and how it will operate on demand along with a method of synchronization with an external clock source. 
         [0052]    This invention relates to methods and to the apparatus in which a gated ring oscillator is constructed in silicon and controlled to provide a base clock frequency multiple times higher than the frequency of an applied clock signal. The multiplication factor in this device is a power of 2 times that of the clock signal. 
         [0053]    Such a ring oscillator has the ability to be turned On and Off without generating a time delay before synchronization to the control signal is effected. 
         [0054]    This circuit has the ability to provide multiple clock frequencies derived from the base ring frequency and to further provide a plurality of multiply phase shifted clocks, while maintaining a synchronized relationship to the incoming control clock. 
         [0055]    The ring oscillator frequency is adjustable to cover a range of frequencies based on the frequency of the controlling clock. The ring oscillator reproduces the period of the controlling incoming clock and maintains a good synchronization therewith. It uses neither the customary Voltage Control Oscillator nor the Delay Locked Loop methods. 
         [0056]    The designed base frequency is altered by circuit delays, based on the inherent delays of the silicon hardware, providing an adjustment to the required clock frequency. It uses methods of measuring the duration of signals and translates those to circuit delays for frequency adjustment. 
         [0057]    Signal variations resulting from variations in the silicon circuitry, voltage and temperature are better controlled and compensated using the present invention that in any of the prior art circuits. 
         [0058]    Once the final delays have been selected and the final frequency is established, those values are preserved as long as power continues to be applied to the circuits. They may also be saved in a Flash type device to be re-applied whenever the power is reapplied. 
         [0059]    After the delays are selected and the frequency is adjusted, the rising edge of the controlling incoming clock will produce the first rising edge of the ring oscillator, thus maintaining good synchronization with the input clock signal. 
         [0060]    During the initial power-on time, the amount of the delay and selection of the delay to adjust the ring frequency will require two to three incoming clock periods. 
         [0061]    During initial power-up time of a system, many initialization processes must be completed before any useful work can take place. Therefore, there is no time lost by frequency adjustment of the ring. 
         [0062]    All of the circuits for the oscillator of the present invention are digital in nature. In comparison, analog circuits consume much higher levels of power. As a result, the present invention provides an appreciable saving in power consumption than the circuits of the prior art. 
         [0063]    A block diagram of the present invention is shown in  FIG. 1 . In this Figure the details of the blocks entitled “INV” are inverters. The block entitled “÷2” is frequency divider which produces an output signal with a period twice that of the input. The block entitled “÷4, ÷2 PHASE SHIFTER” produces output signals having periods 4 times and twice that of the input signal, and having phases shifted from that of the input signal. 
       DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0064]    A digital approach not requiring either a Voltage-Controlled Oscillator or a Delay-Locked Loop is described herein. 
         [0065]    In  FIG. 1  the boxes labeled “INV” are inverters, the boxes containing a “divided by” sign, such as ÷n are phase shifters which shift by n periods, so that ÷4 will shift by 4 periods, producing a signal whose output period is 4 times that of the input. 
         [0066]    In  FIG. 1  the box entitled “Period duration counter” is shown in detail in  FIG. 4 . The box entitled “Period Comparator” is shown in detail in  FIG. 8   a . The box entitled “÷4, ÷2 Phase Shifter” is shown in detail in  FIG. 8 . And the box entitled “Bulk and Incremental Delay Section Logic” is shown in detail in  FIGS. 3 ,  7 , and  9 . 
         [0067]    As is well known in the prior art, if an odd number of digital inverter circuits are connected in a loop arrangement, the loop will oscillate as long as there is power to the circuits. Such a prior-art arrangement is known as a ring oscillator and is shown in  FIG. 1   a . The oscillator pulses produced by the ring oscillator will be very symmetrical. The frequency produced will depend on the total delay of the inverter circuits and the delay that may be applied at any point in the loop as a series delay  101  or as a load delay  102  as shown in  FIG. 1   b.    
         [0068]    The latest developments in silicon technology have produced very small gate delays. It is not unusual to have inverter circuits in the very small pico-second range, typically 20 to 50 picoseconds. Thus, the ring oscillator of  FIG. 1   a  runs at very high frequency. But it and has no facility to start or stop oscillation other than applying and removing power to the digital inverters. In addition, if a load or a delay is applied at any point in the loop, the oscillator frequency will decrease depending on the amount of delay caused by the cumulative loading. These two drawbacks are remedied by the present invention. 
         [0069]    A variation of the ring oscillator with a gating signal is shown in  FIG. 1   b . One of the inverters is substituted by a NAND gate  100 . One of the NAND inputs is attached to the loop and the other to a gating signal called GATE OSC. The loop delay is also controlled with the insertion in series of a fixed or adjustable delay element  101  or an attachment of a capacitive load  102  in the loop. If the GATE OSC signal is at Lo level, the loop will stop oscillating. If the gating signal is at Hi level, the loop will oscillate as long as there is power attached to the circuits. 
         [0070]    To avoid the loading effects to the loop, the output of the oscillator OSC OUT  104 , shown in  FIG. 1   c , is derived by a separate NAND gate  103  attached to the same gating signal that gates the ring loop. The addition of the load to the loop by the added NAND gate  103  will slow the oscillator slightly. The phase of the signal OSC OUT  104  is selected by the logic gates that produce it. 
         [0071]    If a 50 pico-second delay per gate is assumed in the loop  FIG. 1   a , the pulse width will be 150 picoseconds and the ring frequency f will be 1/300 picoseconds or 3.333 . . . GHz. This is the highest frequency at which this loop can oscillate. 
         [0072]    The GATE OSC signal  FIG. 1   c  is used to turn the oscillator on and off. If the signal is Lo level, will stop the ring from oscillating. When it goes Hi, it will produce the OSC OUT signal with the first rising edge of the pulse in synchronized phase with the GATE OSC signal and within some delay. The phase delay of OSC OUT will be the delay of the gates, the driver delay and the delay caused by the load attached to it. As long as the GATE OSC signal stays Hi, the ring will continue to oscillate and will generate the OSC OUT frequency equal to the ring frequency. The ring frequency is adjusted by varying the loop delay. 
         [0073]    To further understand the operation of this circuit, reference is made to  FIG. 2 , the BASE OSCILLATOR. Referring now to this Figure, the oscillator is seen to include the base ring gates  208  with a gating signal  200 . The base ring is constructed with the ability to add or subtract a delay time. The feedback loop consists of two paths. The first is through gate  206 , through OR gate  207 , connected by feedback  204  to the input of the NAND gate  209  of the ring. The other path is through the BULK DELAY  203 , through OR gate  207 , connected by feedback  204  to the input of the NAND gates  209  and  215 . Selection of path  206  or  203  is accomplished by signal  201 —SEL BULK DELAY. 
         [0074]    To further explain the operation, the following example is described. Assume that the BULK delay  203  is bypassed and path  206  is selected. For this example, the Ring Oscillator  208  and the initial selected path along with the attached delays ADJ DELAY 1  and ADJ DELAY 2  and other loads is chosen to have a total loop delay of 300 picoseconds. The period of the oscillator, in this case, will be 600 picoseconds and the frequency of the ring will be 1/600 picoseconds or f=1.666 GHz. The signal, OSC OUT  210 , will have the same frequency as the ring oscillator. Gate  215  taps off gate  209  inputs to reduce the loading effects to the oscillator ring. 
         [0075]    The Hi level signal of the GATE OSC  200  allows the ring to oscillate. The GATE OSC  200  can be produced by any of the signals  403 ,  217  or  1100 . These signal durations determines how long the oscillator will oscillate. To derive lower frequencies, the ring frequency is further divided digitally to obtain the desired clock frequencies and desirable phase shifts. 
         [0076]    Referring now to  FIG. 8 . A divider and phase shifter circuit is shown. The timing diagram of signals of this circuit is shown in  FIG. 8   a . It is assumed that the base frequency of the oscillator is ADJ  4   x CLK  210  after the delay adjustment of the loop has taken place. 
         [0077]    To be able to select any oscillator frequency within a range of frequencies established by the intended design, a BULK delay selection mechanism in path  203  is required along with selection of incremental delays. The BULK and incremental loop delays are partitioned in selectable increments to adjust the ring oscillator frequency. 
         [0078]    Referring next to  FIG. 3 , the bulk delay arrangement is shown, consisting of a series of selectable inverters. Selection can be made by any digital means without departing from the main aspect of the invention. A typical delay through each inverter will be assumed to be 50 pico-seconds. The output of each inverter stage will be selected by a PASS GATE, or similar means, and inserted in the loop through the OR gate. The entire bulk delay arrangement can be bypassed, and the delay eliminated, by disabling the NAND gate  300  of  FIG. 3 . 
         [0079]    Initially the BULK delay  203  will be bypassed. Only the base loop  206  will be selected. As a typical implementation, the base loop period is 600 pico-seconds with a pulse width of 300 picoseconds. The maximum frequency of the base loop will be 1/600=1.666 GHz. The base loop frequency is designed, initially, at a value appropriate to measure the period the width of an incoming clock period. 
         [0080]    Once the measurement is accomplished, the BULK delay  203  and or any of the adjustable delays, ADD DELAY  213  or SUB DELAY  214  is selected and inserted in the loop. At this point the frequency of the oscillator will be close to the desired base oscillator frequency from which all other required frequencies are derived. Further fine adjustments to this frequency will be made for more accuracy and synchronization. 
         [0081]    It is desirable to have the base oscillator frequency be powers of 2 times the input frequency, or n×CLK IN frequency where (n=1 2 4 8 . . . ). The highest frequency is chosen at design time. For the purpose of illustration, n=4 is chosen. 
         [0082]    The base loop frequency, once selected and adjusted with the loop delay, will be divided by 4 to produce a frequency as close as possible to the incoming CLK IN frequency or  1  CLK  400 . This is effected by a coarse adjustment of the ring oscillator. A fine adjustment of the ring oscillator is also provided. 
         [0083]    Referring again to  FIG. 2 . the GATE OSC  200  signal starts the oscillator. The signal GATE OSC  200  is produced according to design requirements. A pulse of the GATE OSC  200  is selected to be the positive pulse of the incoming period CLK IN PERIOD  403 . It is this positive pulse whose width duration is to be measured and determine what delay to use in the loop so that a division by 4 will give a clock period as close to the duration of the incoming CLK IN PERIOD  403 . Measuring the period duration rather than the half period of the incoming clock is a more accurate way because it does not depend on duty cycle pulses of the period. 
       Method of Measuring Pulse Width Duration 
       [0084]    To measure the duration of the pulse width of input frequency f 1 , the present system counts how many base oscillator (also called the “ring oscillator” periods and fractions of the period one can fit in the duration of one period of the incoming clock. Samples of typical signals are shown in  FIG. 5 . 
         [0085]    The output signals are subject to a coarse frequency adjustment. That will be a coarse frequency adjustment. For the illustration we chose to have a range of incoming clock frequencies from 400 MHz and below. These frequencies will be referred to as  1  xCLK frequencies. They are intended to be one quarter of the ring oscillator frequency once the loop delays are adjusted. The interest here is to have a  1  xCLK internally derived frequency from division of the base oscillator in synchronization and as close as possible with the  1  xCLK incoming clock. The base ring oscillator frequency with the loop delay adjusted will be referred to as the ADJ  4   x CLK. A division by 4 will produce the internal  1  xCLK. The period of the derived  1  xCLK internal and the period of the incoming  1  xCLK external will be further compared and the result will be used to adjust a fine loop delay. 
       Incoming Clock Period Duration Measurement 
       [0086]    For this example the loop oscillator is designed to produce an output signal with a period of 600 picoseconds. In practice any frequency can be chosen as long as the silicon speed can support it and as long as latches and counters can be operated reliably at this output frequency. The oscillator pulse must be wide enough to clock a latch reliably. The initial base loop delay will have adjustable delay components to increase or decrease the base loop frequency before any BULK delay is applied to the loop. Circuitry is provided to control the base oscillator output frequency by inserting delays in the path of the feedback loop. 
         [0087]    The following description includes: 
         [0088]    means to measure duration of one of the incoming clock periods; 
         [0089]    means to select the applicable BULK loop delay; 
         [0090]    means to adjust the delay for the incremental duration non-accounted with the BULK loop delay; 
         [0091]    means to refine the delay to get as close as possible to the incoming clock frequency; and 
         [0092]    means to synchronize the oscillator with every rising edge of the incoming clock period. 
         [0093]    For the purposes of further explaining the operation of the present invention, assume the base non-adjusted ring oscillator runs 4 times as fast as the incoming clock. The circuitry first determines how many base clock periods of the unadjusted  4   x CLK  210  one can fit in the CLK IN PERIOD  403  of the external  1  xCLK  400 . A 4 bit counter is implemented to be able to cover the frequency range chosen. If the base clock period is shorter than 600 picoseconds a counter larger that 4 bits may be required. 
       Measurement of the Incoming Clock Periods. 
       [0094]    Referring now to  FIG. 4 , the period counter  405  is stepped with the rising edge of the STEP COUNTER signal  712  of  FIG. 7 . The STEP COUNTER signal is produced only if latch F  700  of  FIG. 7  is set. This occurs always after every rising edge of the  4   x CLK. The counter will count as long as the CLK IN PERIOD  403  is Hi and latch F  700  gets set. Latch F  700  will set if the AND  711  condition of the CLK IN PERIOD and the  4 XCLK Hi pulse is wide enough to satisfy the set time of the latch. It will reset every time latch C  706  sets. 
         [0095]    Referring next to  FIG. 4 , after the RST expires, latches  401   402  and period counter  405  are set to the idle or reset state. The incoming  1  xCLK  400  drives the divider latch  401  and the enable latch  402 . The divider latch  401  produces the desired period pulse CLK IN PERIOD  403 , which is shown in  FIG. 4   a . Latch  402 , when set, allows selection process of the BULK delay. Other circuits may be employed to determine when and how the BULK delay is selected without departing from the current invention. 
         [0096]    Latch  402  is reset with the RST signal  409 . However, other methods for reset could be used to allow period measurements without departing from the current invention. CLK IN PERIOD  403  is fed to  FIG. 2  to produce the signal GATE OSC  200  to start the oscillator. The signal GATE OSC  200  has to be extended to allow the completion of the period measurement and other delay selections. Once all of the variable parameters have been chosen, the values will be preserved as long as power is applied. 
         [0097]    The first  4   x CLK  210  rising edge always occurs after the CLK IN PERIOD  403  rising edge. This interval of time is shown as  500  in  FIG. 5  and  FIG. 6  and is assumed to be 100 picoseconds for the purpose of illustration. Other values could be used according to the deign implementation. The output of the period counter is decoded by a 4 to 16 decoder  406 . The decoded count is part of the selector mechanism of the BULK delay value. Selection of the BULK delay is allowed only after CLK IN PERIOD  403  expires and proper logic decision time is established. 
         [0098]    When pulse CLK IN PERIOD  403  terminates, the counter will stop from counting because there will be no further setting and resetting of latch F  700  of  FIG. 7 . 
         [0099]    Referring now to  FIG. 5 . The base clock period of the unadjusted  4   x CLK  210  is sub-divided into equal intervals. The rising edge of each period is designated by the letter F. The interval F is from the rising edge of the clock to the beginning of the interval designated with the letter A. The interval of time selected for the purposes of illustration was chosen to be 100 picoseconds. Therefore 6 intervals are produced since the chosen frequency of the base non-adjusted oscillator period is 600 picoseconds. The interval named F, A through E for every period of the  4   x CLK is shown in  FIG. 5  and in  FIG. 6 . The interval of 100 picoseconds is chosen so that an SR (Set Reset) latch can be reliably set. Representative SR latches  601  and  602  are shown in  FIG. 6 . 
         [0100]    Referring now to  FIG. 6 , two SR latches  601  and  602  are shown. The setting of the latch is the Lo signal of the output of the NAND gate  600 . Assuming that the STOP signal  410  is not active, the setting of the latch is determined by the state of signals  4   x CLK  210  and CLK IN PERIOD  403 . The timing relationship of these signals is shown in  FIG. 6 . CLK IN PERIOD  403  is the signal to be measured. Signal  4   x CLK  210  is the base clock which appears in  FIG. 2  before any BULK and incremental delays have been selected and applied. In this case, the period of the  4   x CLK is assumed to be 600 picoseconds by design. Latch  601  is set only with the Hi pulse of the  4   x CLK period, while latch  602  is set during the Lo pulse of the  4   x CLK period. 
         [0101]    Three latches are required for the Hi pulse and three for the Lo pulse of the  4   x CLK. Those latches are shown in  FIG. 7  and are named F  700 , A  702  and B  704  for the Hi pulse and C  706 , D  708  and E  710  for the Lo pulse. Whenever latch F  700  is set, a reset signal is applied to the latches C, D and E. The reset is removed when the A latch is set. Whenever latch C is set, a reset signal is applied to the latches F, A and B. The reset is removed when the D latch is set. 
         [0102]    With every period of the  4   x CLK under the valid Hi time of the CLK IN PERIOD, all latches of  FIG. 7  are set and reset accordingly. Eventually, the trailing edge  603  of the CLK IN PERIOD signal will occur within some point of the period of the  4   x CLK. Only some latches will stay set when that happens. The last latch to set will be determined by the time overlap of the  4   x CLK Hi or Lo pulse and the end of the CLK IN PERIOD signal. At this point, a STOP signal  410  could be applied to inhibit further latch alterations. When the stopped stage is reached, a decoding of the period counter  405  and of the incremental latches of  FIG. 7  will take place and the total BULK and incremental delay value will be selected from the delay string of  FIG. 3  and  FIG. 2  accordingly and will be inserted in the loop of the gated oscillator. 
         [0103]    There is a required time from the input to the NAND gate  600  until the latch  601  or  602  is set. This time is determined by the speed of the CMOS process technology used for the implementation of the logic. For the purposes of illustration, it is assumed 100 picoseconds nominal pulse width is required to set the latch reliably. This means that if, for example, the CLK IN PERIOD trailing edge occurs 100 or more and less than 200 picoseconds past the rising edge F of the  4   x CLK, only latch F  700  of  FIG. 7  will be set. Therefore, the CLK IN PERIOD could extend 0 to 99 picoseconds past the 100 picoseconds required duration to set latch F  700  without affecting the next latch. The same applies for all other latches of  FIG. 7 . 
         [0104]    The incremental latches as shown in  FIG. 7  will be set and reset during each  4   x CLK  210  period provided that the period is overlapped by the CLK IN PERIOD  403 . When the period ends, the latches that remain set will be frozen in that state and will be decoded. 
         [0105]    Based on the period counter decoded value by decoder  406  and based on which latch was the last to be set, the appropriate BULK and incremental delay from the delay trees will be selected to be added to the loop. 
         [0106]    Once the BULK and the incremental delays are set, they will remain set until the decision is made to go through the selection again. In addition to the selected delays as described, there is one more determination to be made about fine delay adjustment. During the incremental latch setting in  FIG. 7 , the CLK IN PERIOD  403  to be measured may have a range of ending times past the last latch to be set. This time is between 0 and 99 picoseconds for the illustration numbers chosen for clock period and incremental intervals. 
         [0107]    Referring next to  FIG. 6 , the CLK IN PERIOD  403  shown in the timing diagram starts 100 picoseconds before the rising edge of the first  4   x CLK  210  pulse. It ends past period # 5 but does not satisfy the time required to set the latch F  700  of the next period. 
         [0108]    Referring again to  FIG. 5 , several CLK IN PERIOD signals with their trailing edge are shown. Assuming a CLK IN PERIOD of 3100 picoseconds, and assuming that the base unadjusted ring oscillator has a period of 600 picoseconds, the period counter at the end of the period duration will have a count of 5 and the incremental latch E  710  of  FIG. 7  set. Latch E  710  represents 600+ picoseconds. 
         [0109]    For the purpose of illustration, each incremental latch of  FIG. 7  has a weight (value) of 100 picoseconds, and the following parameters are also assumed: 
         [0110]    Weight of Latch F=100 picoseconds 
         [0111]    Weight of Latch A=200 picoseconds 
         [0112]    Weight of Latch B=300 picoseconds 
         [0113]    Weight of Latch C=400 picoseconds 
         [0114]    Weight of Latch D=500 picoseconds 
         [0115]    Weight of Latch E=600 picoseconds 
         [0116]    If the technology used has fast circuits, the partition of the period could be more than 6 portions of smaller weight and with smaller delay selection accordingly. 
       Bulk Delay Selection 
       [0117]    For every full period count above 4, a total BULK delay of 150 picoseconds is selected for our example used herein. This number applies to one half period of the base ring clock. It must be multiplied by 2 and then added to the base clock period of 600 picoseconds. The new base clock period will be 600+150=750 picoseconds. Bulk delays of  FIG. 3  could be arranged in other values instead of 50 picoseconds sections. A typical selection for BULK delay per full base clock period measured is shown in  FIG. 10 . The decoded counter value and the incremental latches F an A of  FIG. 7  will determine the value of the BULK delay to be inserted into the loop. Any delay inserted into the loop will affect each half period of the base oscillator. 
       Fine Delay Selection 
       [0118]    Once the BULK delay is selected, there is additional incremental delay to be selected based on the decoded incremental latches of  FIG. 7  for finer adjustment of the ring oscillator frequency in order to produce the  1  xCK INT  801  equal, or close to equal, to the  1  xCLK  400  frequency. 
         [0119]    Decoding of the incremental latches and Incremental delay selection is shown in  FIG. 9 . The incremental delays are shown in  211 ,  212  and  213  of  FIG. 2  as numeric values and as Fan Outs (FO). 
         [0120]    After the BULK and the incremental latch delay selection, there is additional delay to be added to the loop. This delay is to account for the initial offset  500 , as shown in  FIG. 5 , which is assumed to be 100 picoseconds, as well as the inaccuracy of the delays in the BULK delay tree of  FIG. 3 , the inaccuracy due to process, voltage and temperature variations and the inaccuracy of the speed of the incremental latch setting. 
         [0121]    After this initial BULK and incremental delay selection, the loop is adjusted to produce the  1  xCK INT  801  and INT CLK PERIOD  805 . The relationship of these signals and the phase shifted signals derived from the circuit of  FIG. 8  are shown in  FIG. 8   a . Another signal produced is an early  1  xCK INT  806  to be used for phase synchronization with the  1  xCLK IN of  FIG. 4 . 
         [0122]    Referring now to  FIG. 4 , the CLK IN PERIOD  403  signal goes through a delay so that the phase of the CLK IN PERIOD del  408  signal co-insides with the phase of the INT CLK PERIOD  805  signal. This is shown in timing diagram of  FIG. 8   b.    
         [0123]    Then INT CLK PERIOD  805  and CLK IN PERIOD del  408  are compared in circuits  807  and  808  of  FIG. 8   c . Each of the circuits  807  and  808  will produce a pulse whose width is the difference in time between the two periods. Then pulse PERIOD DIF 1   806  and PERIOD DIF 2   809  are applied to fine delay calculation circuits shown in  FIG. 8   d.    
         [0124]    Each latch when set will represent a delay adjustment to be made to the delay of the loop. The weight of each latch will be 100 picoseconds and in loop delay adjustment 12.5 picoseconds. Latch A  811  and latch B  812  of  FIG. 8   d  will add the appropriate delay to the loop to expand the period duration. Latch A  812  and latch B  813  of  FIG. 8   d  will subtract the appropriate delay from the loop to shorten the period duration. 
         [0125]    The number of latching elements shown in  FIG. 8   d  could be increased, if necessary, to cover wider range of pulse widths. Furthermore, It is desirable to have the latching elements of  FIG. 8   d  capable of resolving finer than 100 picoseconds intervals for more refined loop delay adjustment. 
         [0000]    Period Equalization of  1  xCLK  400  to  1  xCK INT  801   
         [0126]    After the BULK and incremental delays are applied to the loop, the ring loop period will be shorter than ideal. Therefore, the INT CLK PERIOD  802  will be shorter than the CLK IN PERIOD  403 . In order to correct that situation, the circuit of  FIG. 11  is designed to provide a SYNC  1   100  pulse shown in  FIG. 11   a . If the  1  xCLK  400  is used to start the ring oscillator and some other means exist to maintain the oscillations, the INT CLK PERIOD  802  will continue to be shorter than CLK IN PERIOD  403  and, therefore, the oscillator will stay out of synchronization in the long run. What is needed is a restarting of the oscillator every time with the rising edge of the  1  xCLK or with a signal that is produced with the rising edge of  1  xCLK. A signal is required to stop the oscillator from producing its rising edge before the rise of the  1  XCLK signal and allow it to restart with the  1  xCLK rising edge. This signal is the SYNC  1   100  and its duration shown in  FIG. 11   a . The Lo level of the SYNC will stop the oscillator from continuing and will restart it with its rising edge. If such control did not exist, the oscillator will go out of synchronization with the  1  xCLK. 
         [0127]      FIG. 11   a  shows the timing relationships of signals produced by the circuit of  FIG. 11 . 
         [0128]    Referring now to  FIG. 12 , it is assumed that the rising edge of  1  xCLK, through indirect control, produces the first rising edge of the ADJ  4   x CLK after delay  1201  d 1 . If the oscillator were free running, at point  1200  would have transitioned. Because the  1  xCLK signal is low and controls the next rising edge transition of the  4   x CLK, the transition will not occur until d 2   1202  delay has expired. This will make the low duty cycle of  4   x CLK longer and period p 2   1204  longer than p 1   1203  and pw 2   1206  longer than pw 1   1205 . However, the INT CLK PERIOD  802  will equal the CLK IN PERIOD  403  in duration. Calculation would show that the asymmetry of the  1  xCK INT  801  is within acceptable numbers. 
         [0129]    Referring now to  FIG. 8 , an EARLY  1  XCK INT  806  was generated and its timing is shown in  FIG. 8   a . The period of this signal is going to follow the same effects as is the period of  1  xCK INT. If this early signal is fed to an output and then returned as an input signal, it can be compared to the  1  xCLK  400 . The phase difference can be determined by circuits similar to  8   c  and  8   d  to resolve and apply the correct delay to bring it in phase synchronization with the  1  xCLK  400 . Similarly, internal signals could be produced and synchronized with  1  xCLK  400 . 
       Additional Embodiments 
       [0130]    When the oscillator of  FIG. 2  is designed in a silicon substrate, sections  203 ,  213  and  214  (as shown in  FIG. 2 ) are appropriately constructed so that the values and the number of the passive capacitors are established to allow for selection of the appropriate combinations so that the loop delay selected would allow the oscillator output  210  of  FIG. 2  to be synchronized to the input CLK IN PERIOD  403  of  FIG. 2 . 
         [0131]    In  FIG. 2   a , one or multiple capacitors are designed and attached to the line  216 . The line  202  designated as BLK IN is actually selected by digital means to constitute the loop path of the oscillator. 
         [0132]    The oscillator signal propagated to BLK OUT line is affected by the selection of the capacitors C 1   224 , Cn  223 . When capacitors are selected to be part of the loop, they affect the propagation delay of the loop signal of the oscillator. 
         [0133]    The capacitors are selected by means of activation of the active switches  221  and or  222  by their own select lines. The delay added by the capacitors that are selected adjusts the frequency of the oscillator. The adjusted frequency will bring the oscillator close to the desirable frequency. 
         [0134]    Further fine adjustments of the frequency will be necessary to allow synchronization of the oscillator derived frequencies to the frequency of the input signal CLK IN PERIOD  403 . In order to apply fine adjustments to the loop, refer to  FIGS. 2   b  and  2   c.    
         [0135]    In  FIG. 2   b , the block designated as ADD DELAY, capacitors C 2   234  C 2   n    233  are constructed of finer values so that when they are selected to be part of the loop, provide smaller delay increments. They are selected by active switches such as  231   232 . The number of constructed capacitors is determined by the range of delay required for synchronization and the combination values of the capacitors. 
         [0136]    Referring now to  FIG. 2   c , the block  214  is designated as SUB DELAY for purposes of explanation only. The capacitors C 3   244  and C 3   n    243  along with the selection switches  241  and  242  for this embodiment are designed with very fine values of delay of the oscillator signal. They are intended to be activated with the initial activation of the oscillator for the base frequency. 
         [0137]    When the synchronization iterations start, it may be necessary to actually subtract delay rather than add to the loop to bring the frequency of the oscillator to the desirable value. In that case the circuit depicted in  FIG. 2   b  serves the same subtractive function as described in  FIG. 2   c . The delay selection would require an initial approximate selection of values in the loop so that the period of the CLK IN PERIOD  403  of  FIG. 2  would approach the Oscillator period. 
         [0138]    Methods of first approximation and refined delay selection have been described. However the delay required would be of the passive component type rather than by active digital circuitry, as was first described in the original embodiment. 
         [0139]    Then a selection of fine capacitor values would be included in an iterative process triggered by results of frequency comparator outputs. Such frequency comparators, both digital and analog, are wee known in the prior art, and will not be described here. 
         [0140]    The passive components and associated active circuits may also be temperature and voltage controlled by methods well known in the prior art, resulting in better stability of their values. 
         [0141]    In a still further embodiment, the delay paths can consist of multiple loops, each with the capability of being activated or deactivated as required. 
         [0142]    It will be apparent that improvements and modifications may be made within the purview of the invention without departing from the scope of the invention defined in the appended claims.