Abstract:
Apparatus and method is provided to synchronize randomly occuring pulses to the nearest one of a train of clock-pulses. Logic circuitry is provided to shift the synchronization of a pulse from the nearest clock to one clock-pulse earlier or later if said pulse is closely followed or preceded by one or more other pulses to be synchronized, and optimum synchronization of all pulses as a group requires the synchronization of said pulse earlier or later respectively.

Description:
BACKGROUND OF THE INVENTION 
     There is frequently a need to synchronize or reclock randomly occuring input pulses, for example to quantize radar return pulses for subsequent computer processing. The shortcoming of conventional synchronizers is, that when the leading edge of an input pulse is located in a time interval centered so that there is an equal probability of synchronization with an earlier or later clock pulse, the circuit may output two pulses, one or two partial (less than full amplitude, thus error inviting) pulses or none at all. The centered time interval will be called the ambiguity interval. 
     Also conventional synchronizers will lose one pulse, if the leading edges are separated by less than a full clock period. Therefore there is a need for an improved pulse synchronizing apparatus and method, which will correctly synchronize input pulses to clock pulses without losing or gaining pulses, even if input pulses are closer than clock period apart. 
     SUMMARY OF THE INVENTION AND OBJECTS 
     The logic circuit consists of commercially available integrated circuit flip-flops (FF) and gates, which normally are not capable to make subnanosecond resolution time decisions, but by the circuitry shown, are able to do so. A two phased clock is utilized in effect by presenting delayed and undelayed input pulses, and therefore each input pulse triggers at least one and at most two FF-s into the set (logic 1) state. Thus any pattern of input pulses will generate a corresponding pattern of set FF-s in the logic circuit. This pattern is moved through two sets of FF-s by the clock like in a two channel shift register. A pair of AND gates monitors the pattern, and in two special cases intercepts and modifies the flow of set states. An output OR gate and a reclocking AND gate complete the circuit and provide correctly synchronized output pulses even for combinations of input pulses a prior art synchronizer would not be able to resolve. 
     In general, it is an object of the present invention to provide a more accurate pulse synchronizer apparatus and method. 
     Another object of the invention is a synchronizer which does not lose or gain pulses in the process. 
     Another object of the invention is a synchronizer which correctly sychronizes groups of pulses. 
     Another object of the invention is a synchronizer which can correctly resolve pulses even if they are somewhat closer than clock period apart. 
     Another object of the present invention is to provide a logic circuit with time-hysteresis. 
     Additional objects and features of the invention will appear from the following description in which the preferred embodiment is set forth in conjunction with the accompanying drawings. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a logic diagram of the preferred embodiment of the present invention. 
     FIG. 2 is a timing diagram showing input, delayed input, clock and output pulses. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     On the logic diagram of the preferred embodiment, FIG. 1, the input pulses are fed to terminal 21. Eight type D FF-s 23 to 30 are utilized, for example MC 10231. This component and all subsequently referenced integrated circuit components are manufactured by Motorola Semiconductor Products Inc. P.O. Box 20912 Phoenix, Arizona 85036. JK type FF-s could also be used. The first two FF-s receive the input pulse direct and through a D 1  = T/2 long delay element (22) respectively, where T is the clock period, for example 5 nanoseconds. All FF-s receive clock pulses via clock terminal 37 and buffers 38 and 39. 
     With the pulse relationships shown on FIG. 2 both FF 23 and 27 will be triggered (logic 1) at clock time in response to each input pulse. But slight input pulse advance will cause only 27 to be set, and about T/4 delay will cause only 23 to be triggered. In all phase relationships at least one and at most two of the FF-s will be triggered in response to one input pulse. 
     FF-s in general have a tendency to teeter for a relatively long time between set and reset conditions if presented with just the worst timing between D and clock inputs. The MC 10231 is no exception, it can make a 0 or 1 decision as late as 25 ns after a marginal trigger. As will be seen later, either triggering or non-triggering is acceptable in the ambiguity interval, but late triggering is not acceptable. 
     To solve this problem, a multiple reclocking scheme is used much like a shift register. Outputs Q 0  and Q o  &#39; are presented to flip-flops 24 and 28 respectively as data, and one clock period later Q 1  and Q 1  &#39; will repeat the state of Q o  and Q o  &#39;, but without ambiguity. It should be noted that the MC 10231 is a master slave flip-flop; therefore, a total of four regenerations occur before Q 1  and Q 1  &#39; outputs appear. At each regeneration, it becomes less probable that the &#34;teetering&#34; output of one flip-flop is just the marginal &#34;teeter&#34; causing input for the next one. The measured probability of teetering on the MC 10231 is once in a billion after two stages. By the time the process is repeated once more in FF-s 25 and 29, teetering is eliminated beyond measurable limits. 
     After two stages of reclocking, for each input pulse one or two of the four flip-flops, 25, 26, 29 and 30, will be set to logic 1 state. Table I shows all the possible combinations as patterns named a to g. 
     It can be seen that if the pattern in Table i is a, b or c after the third clock pulse, d, e and f will be present after the fourth clock pulse. Outputs Q 3  and Q 3  &#39;, OR gated (33) together, AND gated (34) for reclocking, would yield one synchronized output pulse four clocks later for every input pulse; but in case g, it would give two output pulses, one with the third clock and one with the fourth clock. 
     It is not possible to say, though, that all double output pulse situations are in error and one output has to be eliminated, since subsequent output pulses may correctly reflect two adjacent input pulses. To decide which are legitimate and which are false double pulse indications, it is necessary to look at all possible patterns in the four flip-flops in response to double input pulses. By applying double pulses variable in phase in respect to the clock pulses to a circuit built according to FIG. 1, the patterns named h to o shown in Table II can be verified experimentally. As can be seen, true double pulses are indicated by three or four 1 -s or two 1 -s separated by a 0. The previously proposed OR gate would correctly provide two subsequent output pulses. 
     Therefore, only the pattern on line g Table I is troublesome. To avoid the error, gating must be provided to prevent case g from yielding an output pulse with one of the clocks (arbitrarily, the fourth). Stating the logic requirement: there should be no carry pulse from Q 2  &#39; to Q 3  &#39; on the next clock pulse, if the pattern in the FF-s is Q 2  Q 2  &#39;Q 3  Q 3  &#39; = 1, therefore Q 2  Q 3  Q 3  &#39; = carry. Gates 32, 36 and 35 implement this logic function. 
     A similar analysis would show, that in case of triple or higher multiple pulses an error could occur, unless the carry pulse is eliminated in case Q 1  &#39;Q 2  Q 2  &#39;Q 3  Q 3  &#39;  = 1, therefore Q 1  &#39;Q 2  Q 3  Q 3  &#39; = carry. Gate 31 together with the previous gates 36 and 35 serve to eliminate this problem. The logic can be implemented by other gating. 
     D 2  (40) is a delay element to compensate for propagation delays, and is connected to gate 34, which will reclock the output of gate 33 in order to produce narrow output pulses like the clock pulses. 
     For the gates commercially available circuits can be used, for example MC 10210 for 38 and 39, MC 10109 for 31 and 32, MC 10104 for 34 and 35, MC 10102 for 33 and 36. 
     
                       TABLE I______________________________________   Q.sub.2         Q.sub.2 &#39;                 Q.sub.3 Q.sub.3 &#39;______________________________________a         1       0       0     0b         0       1       0     0c         1       1       0     0d         0       0       1     0e         0       0       0     1f         0       0       1     1g         0       1       1     0______________________________________ 
    
     
                       TABLE II______________________________________   Q.sub.2         Q.sub.2 &#39;                 Q.sub.3 Q.sub.3 &#39;______________________________________h         1       0       1     0i         1       1       1     0j         1       0       0     1k         0       1       0     1l         1       1       0     1m         1       0       1     1n         0       1       1     1o         1       1       1     1______________________________________ 
    
     
                       TABLE III______________________________________Q.sub.0    Q.sub.0 &#39;      Q.sub.1             Q.sub.1 &#39;                  Q.sub.2                       Q.sub.2 &#39;                            Q.sub.3                                 Q.sub.3 &#39;                                      Output______________________________________0   0      0      0    0    0    0    1    0   0   0   10   0      0      0    0    0    1    0    0   0   0   10   0      0      0    0    0    1    1    0   0   0   10   0      0      0    0    1    1    0    0   0   0   10   0      0      0    0    1    1    1    0   0   1   10   0      0      0    1    1    1    0    0   0   1   10   0      0      0    1    1    1    1    0   0   1   10   0      0      1    1    1    1    0    0   0   1   10   0      0      1    1    1    1    1    0   1   1   10   0      1      1    1    1    1    0    0   1   1   10   0      1      1    1    1    1    1    0   1   1   10   1      1      1    1    1    1    0    0   1   1   10   1      1      1    1    1    1    1    1   1   1   11   1      1      1    1    1    1    0    1   1   1   1______________________________________ 
    
     Table III shows all important single and multiple pulse patterns in the eight FF-s on the left side and the resulting output sequence starting with the rightmost bit on the right. All other patterns, such as pulses separated by gaps, can be derived from these patterns. 
     An important property of the circuit on FIG. 1 is, that it exhibits at certain times a two valued output as a function of time. This can be called time-hysteresis, since the output will be a function of the immediately preceding or following events. Specifically line g of Table I would output a 0 1 sequence standing alone, but if followed by another pulse as in i of Table 2, the output becomes 11 instead of 011. This can be verified experimentally. In other words, multiple pulses are considered as a group for determining the optimum timing of synchronization. The time-hysteresis also permits pulses spaced closer than clock period apart to be correctly resolved, since if two pulses compete for the same clock pulse, the one further away from the clock will be synchronized to the next closest clock pulse. 
     It should be noted, that the circuit uses commercial components to achieve 30 picoseconds time resolution, significantly better than prior art circuits. 
     It is apparent from the foregoing, that a new and improved pulse synchronizing apparatus and method has been provided. There has been provided a synchronizer which does not lose or gain pulses, even in multiple groups, and which can correctly resolve pulses somewhat closer than clock period apart. It is also apparent that other objects and features of the invention herein before set forth have been met.