Abstract:
A skip count clock generator yielding multiple frequencies of clock pulses for variably driving a scanner to produce a required resolution of scanned data includes a base frequency generator of clock pulses and a device for establishing a periodic clock pulse cycle. An electrical logic circuit is used to skip any chosen whole number of clock pulses in a period to yield a desired fraction of the clock pulse cycle.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     This invention relates to a Skip Count Clock Generator. 
     2. Description of the Prior Art 
     When multiple frequencies of clock pulses are required for a given device, a common approach has been to obtain a variable frequency generator which is subsequently tuned to the desired frequency. However, the relatively high cost of variable frequency generators makes them economically impractical for accompanying mass produced devices using different frequencies. 
     A practical solution to the multiple clock frequency generation problem was presented by C. E. Lenz in his patent entitled, Digital Reference Source, U.S. Pat. No. 3,378,692, patented Apr. 16, 1968. Lenz&#39;s device generates different clock frequencies from a master clock frequency generator using a counter to determine when the output wave form should rise and fall. However, Lenz limited his circuit&#39;s variability to the generation of simple fractions (1/2, 1/3, 1/4, 1/5, etc.) of the master clock. In contrast, the applicant&#39;s invention allows its user to select the number of clock pulses to be skipped (one of 5, 3 of 7, etc.) so a desired fractional frequency may be obtained from the master clock frequency generator. 
     A patent to J. D. Bagley entitled, Variable Pattern Pulse Generator, U.S. Pat. No. 3,198,358, patented July 20, 1965, made multiple clock pulse frequencies of varying fractions available to his circuit&#39;s user. Unlike the applicant&#39;s device, though, the Bagley invention incorporated delay feedback loop circuits which were uniquely constructed to delay generator clock pulses a predetermined multiple of pulse periods before those remaining pulses reached the invention&#39;s output. These delayed devices were combined with bistable flip-flop circuits to produce a recurrent pulse pattern of predetermined pulses and blank positions. The applicant&#39;s device employs no delay feedback loops which require reconstruction for different frequencies nor are bi-stable flip-flops used to generate desired base frequency fractions. Instead, a presettable, reset counter and skip logic circuitry are gated with the base frequency generator so an operator can quickly and easily set the counter and skip number for a chosen base frequency fraction. Also, the absence of delaying circuitry allows the leading and trailing pulse edges to be transmitted in a substantially unaltered fashion. 
     Other approaches to pulse skipping have appeared in timing circuits where an output pulse at a specific instant was required to initiate a required response. However, these devices were not intended to generate multiple clock frequencies. 
     SUMMARY OF THE INVENTION 
     A skip count clock generator yielding multiple frequencies of clock pulses for variably driving a scanner to produce a required resolution of scanned data includes a base frequency generator of clock pulses. To count the generated clock pulses and establish their periodic cycle, a presettable, reset logic counter is used for designating the number of clock pulses to be counted prior to resetting. To obtain a desired fraction of the clock pulse period, electronic logic components are responsive to the presettable, reset logic counter to skip any chosen whole number of clock pulses generated between the counter&#39;s preset and reset values. 
     For increased latitude in scanned data resolution, additional frequencies are made available by further dividing the fraction of the clock pulse period. A counter divides the period fraction by whole powers of two. Then a data select chooses the counter output having as the divisor the desired power of two of the clock pulse period fraction. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram depicting the general embodiment of a skip count clock generator wherein a desired number of skipped clock pulses may be set; 
     FIG. 2 is a circuit depicting a specific embodiment of a skip count clock generator; 
     FIG. 3 depicts the truth tables of the logic inputs to and resulting logic outputs from gate 1 of FIG. 2; 
     FIG. 4 depicts the truth tables of the logic inputs to and the resulting logic outputs from gate 2 of FIG. 2; 
     FIG. 5 depicts the truth tables of the logic inputs to and the resulting logic outputs from gate 3 of FIG. 2; 
     FIG. 6 depicts the truth tables of the logic inputs to and the resulting logic outputs from gate 4 of FIG. 2; and 
     FIG. 7 is a representation of base frequency fractions generated by the circuit of FIG. 2. 
    
    
     DETAILED DESCRIPTION 
     Conceptually, a variety of frequencies may be needed to obtain a desired degree of quality resolution from a scanner of data. Such a need may be fulfilled by an embodiment of the block diagram in FIG. 1 without requiring multiple frequency generators which may be numerous, expensive, and bulky. 
     Referring to FIG. 1, the applicant&#39;s skip count clock generator includes a master clock base frequency generator 16 to furnish the train of clock pulses at a frequency for driving the data scanner. The pulses from the master clock 16 are then counted by state generator counter 17 which is programmable to reset its count of the clock pulses after a desired number of outputs have been received by the counter. This number of clock pulses counted prior to resetting determines the number of states N from which a selected number M of pulses are skipped in decoding circuitry 18. The outputs of the decoding circuitry 18 and the master clock base frequency generator 16 are subsequently logic AND gated together to yield the desired output frequency f O  to drive a data scanner. The relationship between the base frequency f, the number of states N, and the number of states to be skipped M to obtain the desired output frequency f O  is defined by the equation: ##EQU1## 
     Consequently, if an output frequency of 21.3 megahertz is needed to drive the available scanner and the output of the circuit&#39;s base frequency generator is 32 megahertz with the counter set to reset after receiving three clock pulses from the base frequency generator, the equation appears as follows: ##EQU2## Solving for M, the number of pulses to be skipped to yield the desired output frequency is: ##EQU3## 
     A specific embodiment of the general skip count clock generator of FIG. 1 appears in FIG. 2. The presettable four bit counter 20 (74S161, manufactured by Texas Instruments Incorporated, P.O. Box 5012, Dallas, Tex. 75222) counts clock pulses from the base frequency clock pulse generator 22 (part no. K1115A, manufactured by Motorola Semiconductor Products, Inc., P.O. Box 20924, Phoenix, Ariz. 85036). To preset the counter 20 with a binary number to which the counter resets after registering a count of 15, preset inputs P 0 , P 1 , P 2 , and P 3  are provided. Consequently, if the preset inputs are set to the binary equivalent of nine, 1001, the counter 20 would essentially count 9, 10, 11, 12, 13, 14, 15, 9, 10, 11, etc. As can be seen by reference to the frequency diagram of FIG. 7, presetting the counter to nine (1001) results in a cycle having seven pulse places (The 2&#39;s complement of 1001 is 10000-1001 or 0111.  ) prior to resetting. Similarly, a preset value of 13 (1101 in binary) has a cycle of three pulse places (10000-1101 or 0011). This preset number for the counter 20 is used as the denominator of the desired base frequency fraction. 
     The numerator of this base frequency fraction in the circuit of FIG. 2 is limited to the values of one or three as represented by the logic level inputs zero and one respectively. These inputs, designated by the letter C in FIGS. 2-6, determine the number of pulse places to be skipped within a cycle. 
     The one exception to the above general scheme of selecting a base frequency fraction is when an operator requires the base frequency as the output of gate 4 (FIG. 2). For such an output, inputs A through C and preset inputs P 0-3  must be set to logic level one (FIG. 6). Since counter 20 outputs a logic level one on the next clock pulse after the terminal count of 15 is reached, commanding the counter to continually reset with each clock pulse causes a duplication of that clock pulse frequency (FIG. 7). 
     Referring to FIG. 2, the free running base clock frequency generator 22 feeds clock pulses to counter 20 which counts from the preset binary number set on inputs P 0-3  to the terminal count of 15 (1111). This binary counting is reflected at outputs Q 0-3 . The outputs from Q 0  and Q 3  are designated in the truth tables of FIGS. 3 through 5 as A and B respectively and are fed into NAND Gate 1 (74S10, manufactured by Texas Instruments Incorporated). A third input to Gate 1 is the pulse place skip number designated as C. The outputs of Gate 1 in response to the A, B, C inputs are shown in FIG. 3. 
     NAND Gate 2 (74S00, manufactured by Texas Instruments Incorporated) receives the pulse place skip number, designated as C, and the terminal count of counter 20 designated as D. D remains at a logic value of zero at all times except when the terminal count of 15 (1111) is reached. When that count appears at outputs Q 0  through Q 3 , the value of D jumps to a logic level of 1. The outputs of Gate 2 for the possible values of C and D are shown in FIG. 4. 
     The outputs of Gates 1 and 2 serve as inputs to Gate 3 (74S08, manufactured by Texas Instruments Incorporated). The resulting output of Gate 3 (FIG. 5) is then AND gated at Gate 4 (74S08, manufactured by Texas Instruments Incorporated) with the negated output of the base clock frequency generator 22 designated as E. The outputs of this gating appear in FIG. 6. By reference to the frequency diagrams of FIG. 7, the logic level of the generated clock pulses E will always be zero (therefore E will always be one) at the times corresponding to the counts of counter 20 (FIG. 2). This recurrent value results from the falling edges of the clock pulses from the base clock frequency generator 22 supplying the triggering inputs to counter 20. Therefore, counter 20 only increments its count when a clock pulse from the frequency generator 22 makes the logic level transition from one to zero. 
     The output of Gate 4 is represented by the 32, 25.6, 21.33, and 18.28 MHz frequency patterns illustrated in FIG. 7. To permit further division of these frequencies, the output of Gate 4 is fed to the clock input of a second counter 24 (74S161, manufactured by Texas Instruments Incorporated). This second counter 24 reflects the number of incoming clock pulses at outputs Q 0  through Q 3  and counts these pulses in binary. However, the purpose of the second counter 24 is to evenly divide the incoming clock frequencies by a chosen whole power to two (2 0 , 2 1 , 2 2 , 2 3 ). Therefore, a data select 26 (74S153, manufactured by Texas Instruments Incorporated) is connected to the following: the output of gate 4 (allowing the output to be divided by one and therefore remain unchanged), Q 0  (allowing division of Gate 4&#39;s output by 2), Q 1  (divide Gate 4&#39;s output by 4), and Q 2  (divide Gate 4&#39;s output by 8). To select the power of two divisor for the output of Gate 4, X and Y binary inputs are provided to data select 26. Therefore, with X and Y set to zero (2 to the zero power equals one), data select 26 will transmit the undivided output of Gate 4. With X and Y set to one and zero respectively, this binary representation of the number two causes data select 26 to choose Q 1  for the output which divides Gates 4&#39;s frequency by four (two to the second power). The result of this division of Gate 4&#39;s output appears at the output of data select 26 and is illustrated in the frequency graphs of FIG. 7.