Abstract:
A method is disclosed for synchronizing, in the presence of sign ambiguity, to a pseudo random maximal length sequence having a characteristic polynomial of order k with a coefficients vector A given by: 
     
       A= 1 a.sub.1 a.sub.2 . . . a.sub.k-1 1! 
     
     where each of the coefficients a 1  to a k-1  is 1 for an intermediate tap location and otherwise is 0. A received symbol sequence is supplied to and shifted through a K=k+1 stage shift register with P intermediate taps in positions determined by a coefficients vector A in  given by: 
     
       A.sub.in = 1 a.sub.1 (a.sub.1 ⊕a.sub.2) (a.sub.2 ⊕a.sub.3) . . . 
     
      (a k-2  ⊕a k-1 ) a k-1  1! 
     where a 1  and a k-1  are the inverse of a 1  and a k-1  respectively and ⊕ denotes a modulo-2 sum, whereby the shift register has P intermediate taps where P is a positive integer less than K. A respective correlation signal is recursively added at an input for the received symbol sequence and at each intermediate tap. Each correlation signal is produced by correlating the P+1 signals from said input, intermediate taps, and output other than the signal to which the respective correlation signal is added. The invention is particularly applicable to pilot synchronization in CDMA terminals.

Description:
This application claims the benefit of United States Provisional Application No. 60/001,881 filed Aug. 3, 1995, the entire contents and disclosure of which are hereby incorporated herein by reference. 
     CROSS-REFERENCE TO RELATED APPLICATION 
     Reference is directed to U.S. application Ser. No. 08/688,670 filed Jul. 29, 1996 in the names of Philip H. Thomas et al. and entitled &#34;Pseudo Random Number Sequence Synchronization In Communications Systems&#34; (claiming the benefit of United States Provisional Application No. 60/001,885 filed Aug. 3, 1995), the entire contents and disclosure of which are hereby incorporated herein by reference. For brevity and convenience, this is referred to below as Reference A. 
     BACKGROUND OF THE INVENTION 
     This invention relates to synchronization in communications systems, for example spread spectrum cellular systems or other wireless digital communications systems, and is particularly concerned with synchronization in such systems using long pseudo random number sequences. 
     In spread spectrum communications systems, fast synchronization to a long pseudo random or pseudo noise sequence, referred to for brevity as a PN sequence, is of importance. It is known to handle PN sequence synchronization by using auto-correlation charactenistics of the PN sequence. One type of PN sequence widely used in practice is a maximal length sequence, referred to as an m-sequence, which is generated by a linear feedback shift register. If the shift register has k stages, then the length of the m-sequence is 2 k  -1 symbols. 
     Long PN sequences are often employed in spread spectrum communications systems, but increase the time required to establish synchronization. To reduce this time it is known to use recurrent searching synchronization methods, with the advantage that synchronization can be achieved based on only a small part of a very long sequence when the SNR (signal-to-noise ratio) is not low. However, these methods have not been effective when the SNR is low, for example less than 0 dB, because only a small part of the sequence is used for synchronization. Low SNR is common in spread spectrum communications systems. 
     Reference A provides an improved method of synchronizing to a PN sequence, which can facilitate fast synchronization to a long PN sequence even at low SNR and when the PN sequence is not an m-sequence. However, the method may not work properly when the received symbol sequence has sign ambiguity, e.g. contains sign inversions. A sign inversion can arise from canter phase ambiguity, in which case it is constant throughout the entire received symbol sequence. Sign inversions can also occur in a relatively random manner due to modulation of the sequence by data symbols in normal operating states of the communications system. 
     An object of this invention is to provide an improved method for achieving synchronization to a PN sequence in the presence of sign ambiguity. 
     SUMMARY OF THE INVENTION 
     The invention provides a method of synchronizing to a PN (pseudo random) sequence which can be generated by a linear feedback shift register having k stages and p intermediate taps, where k and p are positive integers and k&gt;p, the sequence being a maximal-length sequence comprising 2 k  -1 symbols and having a characteristic polynomial of order k with a coefficients vector A given by: 
     
         A= 1 a.sub.1 a.sub.2 . . . a.sub.k-1 1! 
    
     where the coefficients a 1  to a k-1  are each 1 for an intermediate tap location and otherwise are 0, comprising the steps of: supplying a received symbol sequence having sign ambiguity to an input of, and shifting the sequence through, a shift register having K=k+1 stages with an intermediate tap at each location defined by a 1, between first and last 1s, in a coefficients vector A in  given by: 
     
         A.sub.in = 1 a.sub.1 (a.sub.1 ⊕a.sub.2) (a.sub.2 ⊕a.sub.3) . . . (a.sub.k-2 ⊕a.sub.k-1) a.sub.k-1 1! 
    
     where a 1  and a k-1  are the inverse of a 1  and a k-1  respectively and ⊕ denotes a modulo-2 sum, whereby the shift register has P intermediate taps where P is a positive integer less than K; recursively adding a respective correlation signal at the input and at each intermediate tap of the shift register; and producing each correlation signal by correlating the P+1 signals from said input, intermediate taps, and output of the shift register other than the signal to which the respective correlation signal is added. 
     Viewed alternatively, the method comprises shifting the received symbol sequence having sign ambiguity through a shift register having K=k+1 stages with an intermediate tap at each location defined by a 1, between first and last 1s, in a coefficients vector A in  given by: 
     
         A.sub.in = 1 a.sub.1 (a.sub.1 ⊕a.sub.2) (a.sub.2 ⊕a.sub.3) . . . (a.sub.k-2 ⊕a.sub.k-1) a.sub.k-1 1! 
    
     where a 1  and a k-1  are the inverse of a 1  and a k-1  respectively and ⊕ denotes a modulo-2 sum, whereby the shift register has P intermediate taps where P is a positive integer less than K; at the input and at each intermediate tap of the shift register, recursively adding to the shift register contents a respective correlation signal; producing the correlation signal for adding at the input of the shift register by correlating the P+1 signals from the P intermediate taps and the output of the shift register; and producing the correlation signal for adding at each of the P intermediate taps by correlating the P+1 signals from the input, output, and P-1 other intermediate taps of the shift register. 
     Conveniently the step of producing each correlation signal comprises producing a product of the signs of said P+1 signals and of a minimum absolute value of said P+1 signals. The step of supplying the received symbol sequence to the input of the shift register can comprise the step of modifying the received symbol sequence in accordance with a non-linear function. 
     The method of this invention thus effectively applies the method of Reference A to a non-maximum length PN sequence of order K=k+1 to achieve synchronization to a PN m-sequence of order k with sign ambiguity (i.e. sign inversion(s)). The invention largely retains the advantages of the method of Reference A, in that it can provide reliable synchronization even for negative SNR and after processing only a small part of the full PN sequence. 
     The invention is particularly useful in communications systems which may require fast synchronization to a PN m-sequence in relatively low SNR conditions, such as direct sequence spread spectrum communications systems, for example for synchronization to the pilot PN sequence in the pilot channel in an IS-95 CDMA terminal. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The invention will be further understood from the following description with reference to the accompanying drawings, in which: 
     FIG. 1 schematically illustrates a block diagram of part of a wireless digital communications receiver; 
     FIG. 2 schematically illustrates a linear feedback shift register for generating a PN sequence; 
     FIG. 3 schematically illustrates a synchronization arrangement for implementing an embodiment of the method of the invention; 
     FIG. 4 schematically illustrates in greater detail a correlation block of the synchronization arrangement of FIG. 3; and 
     FIG. 5 illustrates performance of the arrangement indicated by simulation results. 
    
    
     DETAILED DESCRIPTION 
     The following description presents an algorithm for general channel conditions, followed by simplified algorithms which facilitate practical implementation. An arrangement for implementing an embodiment of the method is then described in detail. 
     GENERAL CHANNEL CONDITIONS 
     For extracting symbols b i  =±1, counted by an integer i and having a symbol duration T 0 , of a PN sequence of length M symbols from a received input signal Y n  accompanied by noise represented by a random value sequence y n , where n is an integer identifying each sampling point, a processing state is given by equation (1): ##EQU1## where the received signal is assumed for convenience to have unit amplitude, ν represents the sign of the received symbol sequence and has the value ±1, .increment.t is the sampling interval, τ n  is a PN sequence delay for the sampling point n and is assumed to be constant for all sampling points, f() is a function representing the pulse form which has non-zero values only in the interval (0,1), and Ψ(,) is a function which represents the interaction between the signal and noise. 
     Assuming that the sampling interval .increment.t=T 0  and that noise samples are not correlated for this sampling interval, then equation (1) can be expressed as: ##EQU2## where q is a discrete random variable uniformly distributed in the interval  0,M-1!. Assuming that the symbol timing (i.e. clock) recovery is perfect, the pulse form function f n-i+1-q! is a delta function which has a value of 1 for n-i+1-q=0 and otherwise has a value of 0. Using the notation: ##EQU3## gives the results: 
     
         B.sub.n =b.sub.n-q+1                                       (4) 
    
     
         Y.sub.n =Ψ(νB.sub.n,y.sub.n)                        (5) 
    
     A linear feedback shift register, having k stages and p taps at stages L 1 , L 2 , . . . L p , can be used as illustrated in FIG. 2 and described below to generate a sequence in accordance with a polynomial G(D) of order k given by: ##EQU4## where i, p, and k are integers. The n-th symbol of such a sequence is determined by a subsequence comprising the k symbols preceding the n-th symbol, so that: 
     
         B.sub.n =B.sub.n-k B.sub.n-L.sbsb.1 B.sub.n-L.sbsb.2 . . . B.sub.n-L.sbsb.p (7) 
    
     If the polynomial represented by equation (6) is primitive, then the generated sequence is an m-sequence (maximal length sequence) with a length or period of M=2 k  -1 symbols. 
     Incorporating a new discrete variable C n  =νB n  into equation (7) gives: 
     
         C.sub.n-k C.sub.n-L.sbsb.1 C.sub.n-L.sbsb.2 . . . C.sub.n-L.sbsb.p =ν.sup.p+1 B.sub.n-k B.sub.n-L.sbsb.1 B.sub.n-L.sbsb.2 . . . B.sub.n-L.sbsb.p                                          (8) 
    
     For an m-sequence the number of intermediate tap outputs p+1 is even, so that ν p+1  =1 for any m-sequence. Consequently, a common generating equation for both direct and inverse sequences can be expressed in the form: 
     
         C.sub.n =νC.sub.n-k C.sub.n-L.sbsb.1 C.sub.n-L.sbsb.2 . . . C.sub.n-L.sbsb.p                                          (9) 
    
     and the preceding (n-1)-th step can be expressed as: 
     
         C.sub.n-1 =νC.sub.n-k-1 C.sub.n-L.sbsb.1.sub.-1 C.sub.n-L.sbsb.2.sub.-1 . . . C.sub.n-L.sbsb.p.sub.-1                             (10) 
    
     from which: 
     
         ν=C.sub.n-1 C.sub.n-k-1 C.sub.n-L.sbsb.1.sub.-1 C.sub.n-L.sbsb.2.sub.-1 . . .C.sub.n-L.sbsb.p.sub.-1                              (11) 
    
     Substituting for ν from equation (11) into equation (9) gives the recursive equation for symbols in both direct and inverse sequences: 
     
         C=C.sub.n-k C.sub.n-L.sbsb.1 C.sub.n-L.sbsb.2 . . . C.sub.n-L.sbsb.p C.sub.n-1 C.sub.n-k-1 C.sub.n-L.sbsb.1.sub.-1 C.sub.n-L.sbsb.2.sub.-1 . . . C.sub.n-L.sbsb.p.sub.-1 
    
     from which: 
     
         C=C.sub.n-K C.sub.n-R.sbsb.1 C.sub.n-R.sbsb.2 . . . C.sub.n-R.sbsb.P (12) 
    
     where K=k+1 is the number of stages in the generating shift register for both direct and inverse sequences, the shift register having P intermediate taps at stages R 1 , R 2 , . . . R P . 
     The number P and the intermediate tap locations R 1 , R 2 , . . . R P  of the generating shift register for direct and inverse sequences can be easily determined. If the initial sequence is assumed to be generated by a characteristic polynomial of order k with a coefficients vector A given by: 
     
         A= 1 a.sub.1 a.sub.2 . . . a.sub.k-1 1!                    (13) 
    
     where the coefficients a i  (i being an integer from 1 to k-1) are each 1 for the intermediate tap locations L 1 , L 2 , . . . L p  and otherwise are 0, then a coefficients vector A in  of order K=k+1 for the characteristic polynomial for both direct and inverse sequences can be determined by a vector modulo-2 sum of two coefficients vectors A1 and A2 given by: 
     
         A1= 0  1 a.sub.1 a.sub.2 . . . a.sub.k-1 1!! 
    
     
         A2=  1 a.sub.1 a.sub.2 . . . a.sub.k-1 1! 0!               (14) 
    
     so that: 
     
         A.sub.in = 1 a.sub.1 (a.sub.1 ⊕a.sub.2) (a.sub.2 ⊕a.sub.3) . . . (a.sub.k-2 ⊕a.sub.k-1) a.sub.k-1 1!                   (15) 
    
     where a i  denotes the inverse of a i  and ⊕ denotes the modulo-2 sum. 
     A channel model is then given by equation (12) above and the equation: 
     
         Y.sub.n =Ψ(C.sub.n,y.sub.n)                            (16) 
    
     It can be seen that this model, for the (non maximal-length) linear recursive sequence of equation (15), has the same form as the model defined by equations (5) and (7) of Reference A. Following the reasoning given in Reference A, a recursive algorithm for filtering a discrete PN sequence of symbols having sign ambiguity or inversions is expressed by the following equation derived from equation (13) of Reference A: ##EQU5## where C n- τ n  denotes the n-th iteration of a recursive non-linear minimum mean-square estimate of the symbol C n- τ, with the initial condition C 1- τ 0  with τ being an integer from 1 to K. Conveniently the initial condition is set to C 1- τ 0  =0 for all values of τ. 
     It can also be shown that, analogously to equation (11) in Reference A, a maximum probability extrapolation estimate C n  for the n-th symbol C n  is given by: ##EQU6## 
     Analogously to Reference A, equation (17) can be simplified using hyperbolic functions and the following notations: 
     
         γ.sub.n =a tanh φ(Y.sub.n) 
    
     
         U.sub.n-i.sup.n-1 =a tanh C.sub.n-i.sup.n-1 
    
     
         U.sub.n-i.sup.n =a tanh C.sub.n-i.sup.n 
    
     
         i=1, 2, . . . K                                            (19) 
    
     with the approximation: 
     
         a tanh (tanh x tanh y)≈sgn x sgn y min{|x|,|y|}          (20) 
    
     to give the following equation (21): ##EQU7## with the initial condition U 1- τ 0  with τ being an integer from 1 to K. 
     For a channel with only additive white Gaussian noise (AWGN), represented by: ##EQU8## equation (21) can be simplified to the form of the following equation (23): ##EQU9## with the initial condition ν - τ 0  with τ being an integer from 1 to K, where: 
     
         ν.sub.n-K.sup.n-1 =σ.sub.y.sup.2 U.sub.n-K.sup.n-1 
    
     
         ν.sub.n-τ.sup.n =σ.sub.y.sup.2 U.sub.n-τ.sup.n (24) 
    
     and σ y   2  can be unknown. 
     Physical Implementation 
     Referring now to the drawings, FIG. 1 illustrates in a block diagram parts of a wireless digital communications receiver, for example for a spread spectrum cellular communications system compatible with the IS-95 standard, in which a wireless digital communications signal is supplied via an RF (radio frequency) circuit 20 of a receiver to a down converter 22 to produce a signal which is sampled by a sampler 24, the samples being converted into digital form by an A-D (analog-to-digital) converter 26 for processing in digital circuits 28 conveniently implemented in a DSP integrated circuit. The digital circuits 28 include a carrier recovery block 30, a timing or clock recovery block 32, and a PN sequence synchronization block 34 in which processing of the digital signals is performed. The PN sequence synchronization block 34 is supplied with the sampled and digitized received symbol sequence from the output of the A-D converter 26, and this constitutes the input signal Y n  of equation (1) above and is the input to the synchronization arrangement described below with reference to FIG. 3. 
     FIG. 2 illustrates a linear feedback shift register arrangement which can be used to produce a PN sequence for synchronization. The arrangement comprises a shift register 36 having k stages numbered 1 to k, with the outputs of the k-th stage and of intermediate taps along the shift register at the outputs of stages L 1 , L 2 , and L p  supplied to inputs of a modulo-2 adder 38. An output of the adder 38 is fed back to the input of the first stage of the shift register and also constitutes a PN sequence output signal in accordance with equation (7) above. 
     By way of example, it is assumed that the PN sequence to which synchronization is to be established is an m-sequence with order k=10 and the generation polynomial: ##EQU10## 
     The period or length of the sequence is 2 k  -1=1023 symbols, and the number of intermediate taps of a linear feedback shift register which can be used to generate the sequence is p=7. The coefficients vector for the generating polynomial for this sequence can be seen from equations (13) and (25) to be: 
     
         A= 1 0 0 1 1 1 1 1 1 1 1!                                  (26) 
    
     From equation (14), the coefficients vectors A1 and A2 and their element-by-element modulo-2 sum constituting the coefficients vector A in  of the characteristic polynomial of order K=k+1=11 are: 
     
         A1= 0 1 0 0 1 1 1 1 1 1 1 1! 
    
     
         A2= 1 0 0 1 1 1 1 1 1 1 1 0! 
    
     
         Ain= 1 1 0 1 0 0 0 0 0 0 0 1!                              (27) 
    
     from which it can be seen that P=2 and the generating polynomial for both direct and inverse sequences is: 
     
         A.sub.in =1+D+D.sup.3 +D.sup.11                            (28) 
    
     FIG. 3 illustrates a consequent synchronization arrangement, which includes three correlators and adders as described below for the case of P=2 and serves to implement equation (21). FIG. 4 illustrates the form of each of the correlators. 
     Referring to FIG. 3, the synchronization arrangement comprises three shift register parts 90 to 92 which, in accordance with the coefficients vector A in  of equations (27) and (28), provide outputs at intermediate taps after 1 and 3 stages, and an output after K=11 stages, of the shift register. Inputs of the shift register parts 90 to 92 are supplied with the outputs of adders 94 to 96 respectively. A calculator 93 produces the output signal γ n  from the input signal Y n  constituted by the received symbol sequence in accordance with the first line of equation (19). Each of the three correlators 97 to 99 is as described below with reference to FIG. 4 and produces a respective correlation signal by correlating the three signals from said input, intermediate taps, and output other than the signal to which the respective correlation signal is added by the respective one of the adders 94 to 96. 
     Thus the correlator 97, producing a correlation signal to be added in the adder 94 to the signal γ n  derived by the calculator 93 from the input signal Y n , correlates the signals from the output and the two intermediate taps of the shift register. The correlator 98, producing a correlation signal to be added in the adder 95 to the output signal from the first stage of the shift register (part 90), correlates the signal γ n  derived from the input signal Y n  and the signals from the output and the third stage (part 91) of the shift register. Similarly the correlator 99, producing a correlation signal to be added in the adder 96 to the output signal from the third stage of the shift register (part 91), correlates the signal γ n  derived from the input signal Y n  and the signals from the output and the first stage (part 90) of the shift register. 
     As illustrated in FIG. 4, each of the correlators 97 to 99 comprises three sign functions (SGN) 74 to 76, which are supplied with the three input signals to the correlator and produce at their outputs sign signals representing the signs of these inputs, three absolute value functions (ABS) 78 to 80, which are supplied with the three input signals to the correlator and produce at their outputs signals representing the absolute values of these inputs, a minimum function (MIN) 82, which produces at its output the minimum value of the absolute values supplied to its inputs from the functions 78 to 80, and two multipliers 84 and 86. The multiplier 84 produces at its output a product of the sign signals supplied to its inputs from the functions 74 to 76, and the multiplier 86 multiplies this output by the minimum value produced by the function 82 to produce the output signal of the correlator. As can be appreciated, all of these functions can be easily implemented within a DSP integrated circuit, without requiring division or multiple digit multiplication operations. 
     It is also observed that, although for the correlators are described separately, the sign functions 74 to 76 and the absolute value functions 78 to 80 can be used commonly among the correlators; i.e. the three correlators 97 to 99 only require a total of four such sign functions and four such absolute value functions for producing the signs and absolute values of the four signals to be correlated. 
     It can easily be seen that the synchronization arrangement of FIGS. 3 and 4 operates in accordance with equation (21) above. Initially the shift register contents are zeroed, and the synchronized PN sequence can be obtained from the contents of the shift register parts 90 to 92 when synchronization has been achieved. It can also be seen that this arrangement operates in accordance with the simplified equation (23) for a channel with AWGN simply by replacing the non-linear calculation function 93 by a constant. 
     FIG. 3 also shows the synchronization arrangement as including an optional further sign function (SGN) 88, which is supplied with an additional output from the correlator 97, this output being taken from the output of the multiplier 84 in the correlator 97 as shown by a broken line in FIG. 4. The output of the function 88 constitutes the symbol estimate C n  in accordance with equation (18), and thus this is easily provided as a byproduct of the synchronization process. 
     FIG. 5 illustrates approximately performance of the synchronization method and arrangement described in the above example as expected from simulation results, showing the probability of synchronization plotted against number of symbols of the sequence received, for SNRs of 0 and -3 dB. In the former case, synchronization is achieved within 200 symbols. In the latter case, the probability of synchronization being achieved within 200 symbols is reduced to about 0.7. As can be appreciated from these results, even with these low SNRs and phase ambiguity, synchronization is achieved within only part of the PN sequence, and the speed of synchronization improves rapidly with increasing SNR. 
     The synchronization arrangement described above is therefore particularly advantageous in cases where the SNR is low, for example about 0 dB or less. For very low SNR, the arrangement can be used for one stage of a multiple stage system. It is further noted that the arrangement has the advantage that its complexity is largely independent of the PN sequence length, being proportionally dependent upon the length of the PN sequence generating register. 
     Although particular embodiments of the invention have been described in detail, it should be appreciated that numerous modifications, variations, and adaptations may be made without departing from the scope of the invention as defined in the claims.