Abstract:
A method of correcting phase error of a phase shift keyed (PSK) signal includes (a) receiving a signal modulated by a spreading sequence; (b) despreading the received signal using a receiver spreading sequence similar to the spreading sequence of step (a); (c) calculating a crosscorrelation profile between the receiver spreading sequence and the received signal; and (d) calculating an autocorrelation profile of the receiver spreading sequence to determine a spreading code property (SCP). The method also includes (e) estimating a timing error in alignment between the autocorrelation and the crosscorrelation profiles; and (f) correcting a phase error of the signal despread in step (c), by using the SCP and the estimated timing error.

Description:
CROSS REFERENCE TO RELATED APPLICATIONS  
       [0001]     This application claims priority of U.S. Provisional Patent Application Ser. No. 60/703,316, filed Jul. 28, 2005. 
     
    
     STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH  
       [0002]     This invention was made with Government Support Under Agreement No. DAAB07-03-9-K601 awarded by the United States Army. The Government has certain rights in the invention. 
     
    
     TECHNICAL FIELD  
       [0003]     The present invention relates, in general, to communication systems. More specifically, it relates to enhanced QPSK or DQPSK data demodulation for direct sequence spreading (DSS) system waveforms using orthogonal or near-orthogonal spreading sequences.  
       BACKGROUND OF THE INVENTION  
       [0004]     Quadrature Phase Shift Keying (QPSK) data modulation is used to increase the data rate capability over Binary Phase Shift Keying (BPSK) data modulation. To improve data performance in multi-path channel conditions and to reduce the transmit power spectral density, direct sequence spreading is applied to the data modulation. Differential data detection is performed to simplify the demodulation process, resulting in differential QPSK (DQPSK) reception. The existing 802.11b waveform provides both DBPSK and DQPSK data modulation using a BPSK signal for the direct sequence spreading to provide 1 and 2 Mbps data capability.  
         [0005]     To achieve the 1 and 2 Mbps data rates, 11 chips are used to spread the data modulated signal. An 11 chip Barker sequence is used for the spreading sequence. The 11 chip Barker sequence possesses excellent autocorrelation properties, providing a maximum correlation sidelobe level of 1/11 the peak correlation value. To achieve this excellent correlation property on each data symbol, the same 11 chip Barker sequence is used to spread each data symbol.  
         [0006]     As an alternative to using short repeated sequences, BPSK modulation may be used to spread the data. BPSK provides a simple straight forward means to spread either the BPSK or QPSK data. To meet the 802.11 spectral requirements, the BPSK spread signal is passed through a lowpass filter to reduce the power spectrum sidelobe level. The filtered BPSK signal is operated within the linear region of the power amplifier to minimize spectral regrowth output from the RF power amplifier.  
         [0007]     There are, however, some limitations to using the aforementioned techniques. First, waveforms using short spreading sequences, such as the 11 chip Barker sequence used for 802.11b waveforms, limit the delay spread range for channel multi-path equalization, because two adjacent symbols can be opposite in polarity. Further, short, repeated, spreading sequences also enable unauthorized listeners to easily recover the data symbol stream. Longer sequences remove these limitations. However, longer spreading sequences do not provide excellent autocorrelation properties across short sections (11 chips for the 802.11b waveforms) of the spreading sequence. Degradation in the autocorrelation property directly degrades the bit-error-rate (BER) system performance.  
         [0008]     Second, BPSK spreading waveforms limit power efficiency at the RF power amplifier, because they require the amplifier to operate in a linear mode to prevent spectral sidelobe regrowth. Spreading data using constant envelope modulation signals, like Minimum Shift Keying (MSK) or near constant envelope modulation, like Quasi-bandlimited MSK (QBL-MSK) and Raised Cosine filtered Offset Quadrature Phase Shift Keying (RC-OQPSK), however, enable the RF power amplifier to operate in the nonlinear mode, increasing power efficiency.  
         [0009]     Standard parallel demodulation techniques for MSK, QBL-MSK, and RC-OQPSK despread the signal using independent I and Q sequences, and require two orthogonal or near orthogonal spreading sequences. Gold codes are typically used because of their good autocorrelation and cross-correlation properties. However, Gold codes also require, at minimum, 31 chips (lowest length Gold code) of spreading on both the I and Q data, and increasing the number of chips results in a reduced data rate for the same operational chip rate. To reduce the number of spreading chips required for these constant or near constant envelope modulation signals, serial formatting is applied to the spreading waveform. Serial formatting combined with serial demodulation enables these waveforms to be demodulated similarly to BPSK.  
         [0010]     For a serial despread MSK, QBL-MSK, or RC-OQPSK signal, the repeating 11 chip Barker sequence can be used for the spreading sequence. Autocorrelation properties for the 11 chip Barker sequence are excellent, providing suppression of the undesired serial demodulation term. To avoid the limitations associated with the short spreading sequence, a longer spreading sequence is used. As described previously, longer spreading sequences do not provide excellent autocorrelation properties across short sections (11 chips for the 802.11b waveforms) of the spreading sequence. The poor autocorrelation properties associated with the long spreading sequence result in the undesired serial demodulation term not being suppressed.  
         [0011]     A BER performance curve with a maximum of a quarter chip timing error (sampling at twice the chip rate) for DQPSK data modulations with QBL-MSK spreading for a short 8 chip Neuman-Hoffman sequence (00001101) is shown in  FIG. 1 . As depicted in  FIG. 1 , for ideal timing (0 or 0.5 Tc), a 10 −6  BER is achieved at approximately Es/No equal to 11.9 dB, while the maximum Tc/4 timing error condition requires the Es/No to increase to approximately 12.5 dB to provide the same bit error rate.  
         [0012]     The BER performance curve with a maximum of a quarter chip timing error (sampling at twice the chip rate) for DQPSK data modulations with QBL-MSK spreading for a long, random spreading sequence is shown in  FIG. 2 . As depicted in  FIG. 2 , for ideal timing (0 or 0.5 Tc), a 10 −6  BER is achieved at approximately an Es/No equal to 12.5 dB, while the maximum Tc/4 timing error condition requires the Es/No to increase to approximately 16 dB to provide the same bit error rate. For ideal timing, the additional Es/No required for the long sequence versus the short sequence is only 0.6 dB. For the maximum Tc/4 timing error condition, the additional Es/No required for the long sequence versus the short sequence is 3.5 dB. This significant degradation in BER performance for timing error must be reduced by either increasing the timing resolution or by compensating for the poorer autocorrelation properties of the long spreading sequence over the shorter symbol spreading length. Increasing the timing resolution requires an increase in the sampling rate, which increases the demodulator complexity and DC power consumption.  
         [0013]     To minimize demodulator complexity and power consumption, the present invention provides a compensation approach, among other features.  
       SUMMARY OF THE INVENTION  
       [0014]     To meet this and other needs, and in view of its purposes, the present invention provides a method of correcting phase error of a phase shift keyed (PSK) signal, in a receiver. The method includes the steps of (a) receiving a signal modulated by a spreading sequence; (b) despreading the received signal using a receiver spreading sequence similar to the spreading sequence of step (a); (c) calculating a crosscorrelation profile between the receiver spreading sequence and the received signal; (d) calculating an autocorrelation profile of the receiver spreading sequence to determine a spreading code property (SCP); (e) estimating a timing error in alignment between the autocorrelation and the crosscorrelation profiles; and (f) correcting a phase error of the signal despread in step (c), by using the SCP and the estimated timing error.  
         [0015]     Another embodiment of the present invention provides a method of serially demodulating a phase shift keyed (PSK) signal, in a receiver. The method includes (a) receiving a PSK signal modulated by a spreading sequence at a chip rate; (b) dividing the PSK signal into an inphase (I) signal and a quadrature (Q) signal at a sampling rate greater than the chip rate; (c) rotating phases of the I signal and the Q signal at the sampling rate of step (b) to obtain serially demodulated I and Q signals; (d) determining chip synchronization time for the serially demodulated I and Q signals; (e) decimating the serially demodulated I and Q signals, based on the determined chip synchronization time, so that the serially demodulated I and Q signals are sampled at the chip rate; and (f) despreading both the decimated I and Q signals by mixing both the decimated I and Q signals with a single spreading sequence.  
         [0016]     Yet another embodiment of the invention is a receiver. The receiver includes a despreading module for despreading a baseband signal, using a spreading sequence generated by a code generator, a crosscorrelation module for calculating a crosscorrelation profile between the baseband signal and the spreading sequence, an autocorrelation module for calculating an autocorrelation profile of the spreading sequence to determine a SCP value of the spreading sequence. The receiver also includes a timing error estimating module, coupled to the crosscorrelation and autocorrelation modules, for estimating an alignment error between the autocorrelation profile and the crosscorrelation profile; and a phase correction module, coupled to the timing error estimating module and the despreading module, for correcting a phase error in the despread baseband signal.  
         [0017]     It is understood that the foregoing general description and the following detailed description are exemplary, but are not restrictive, of the invention. 
     
    
     BRIEF DESCRIPTION OF THE DRAWING  
       [0018]     The invention is best understood from the following detailed description when read in connection with the accompanying drawing. Included in the drawing are the following figures:  
         [0019]      FIG. 1  is a BER performance curve with a maximum of a quarter chip timing error (sampling at twice the chip rate) for DQPSK data modulations with QBL-MSK spreading for a short 8 chip Neuman-Hoffman sequence;  
         [0020]      FIG. 2  is a BER performance curve with a maximum of a quarter chip timing error (sampling at twice the chip rate) for DQPSK data modulations with QBL-MSK spreading for a long, random spreading sequence;  
         [0021]      FIG. 3  is a block diagram of a phase correction module, in accordance with an embodiment of the present invention;  
         [0022]      FIGS. 4A and 4B  are graphs depicting the improved BER performance for DQPSK data detection using the phase correction module of  FIG. 3  versus DQPSK without phase correction;  
         [0023]      FIGS. 5A, 5B  and  5 C are graphs illustrating severe envelope distortions occurring when both the I and Q signals go to zero at the same point in time;  
         [0024]      FIGS. 6A, 6B  and  6 C are graphs illustrating minimal RF envelope deviation occurring when the I and Q signals do not go to zero at the same point in time;  
         [0025]      FIG. 7  is a block diagram of an SQBL-MSK module of a transmitter, in accordance with an embodiment of the present invention;  
         [0026]      FIG. 8  is a block diagram of an SQBL-MSK demodulator front-end of a receiver, in accordance with an embodiment of the present invention;  
         [0027]      FIG. 9  is a plot of a QBL-MSK autocorrelation function, in accordance with an embodiment of the present invention;  
         [0028]      FIG. 10  is a block diagram of an SQBL-MSK despreading operation, in accordance with an embodiment of the present invention;  
         [0029]      FIG. 11  is a block diagram of a phase rotator, in accordance with an embodiment of the present invention;  
         [0030]      FIG. 12  is a block diagram of a modified phase rotator, in accordance with an embodiment of the present invention;  
         [0031]      FIG. 13  is a block diagram of a SYNC detection module, in accordance with an embodiment of the present invention;  
         [0032]      FIG. 14  is a plot of a SYNC correlation curve, for use with the SYNC detection module of  FIG. 13 ; and  
         [0033]      FIG. 15  is a block diagram of a symbol detector with phase correction module, in accordance with an embodiment of the present invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0034]     To enable operation of a serial demodulator with long spreading sequences, the serial demodulator spreading operation takes advantage of knowing the long spreading sequence. The spreading properties for the long spreading sequence are determined for each short spreading sequence used to despread the data. By knowing the spreading sequence property for the despread data symbol along with an estimate of the chip timing error from the synchronization correlation function, a proper phase correction is applied to the despread I and Q signals, significantly reducing the undesired serial demodulation term.  
         [0035]      FIG. 3  shows phase correction module  10 . Module  10  is applied to the despread inphase (I) and quadrature (Q) signals to generate the phase corrected I(Ic) and Q(Qc) signals. As shown in  FIG. 3 , the despread I and Q signals, I(n) and Q(n), enter phase correction module  10  and are mixed with a cos [θ(n)] signal at mixers  12  and  20  and a sin [θ(n)] signal at mixers  16  and  18 . The outputs from mixers  12  and  16  are then combined at summer  14 . Likewise, the outputs from mixers  18  and  20  are combined at summer  22 . Phase corrected signals Ic and Qc are then output from summers  14  and  22 . The correction phase terms using the cosine and sine signals depend upon the spreading sequence one chip cross-correlation property across the despread symbol.  
         [0036]     It will be understood that as used herein, a “summer” includes functions of addition and subtraction.  
         [0037]     Removing the undesired serial demodulation term results in significant improvement in the bit rate error (BER) performance.  FIGS. 4A and 4B  show the improved BER performance for DQPSK data detection using the phase correction module versus DQPSK without phase correction. Specifically,  FIG. 4A  shows DQPSK BER performance with phase correction and  FIG. 4B  shows DQPSK BER performance without phase correction. The improvement is shown for different chip timing errors. For example, for a Tc/4 timing error, approximately 13.5 dB is required to provide a 10 −6  BER for DQPSK with phase correction, whereas 16 dB is required to provide the same bit error rate without phase correction. This is a 2.5 dB reduction in Es/No. Further, for a Tc/4 timing error, the long sequence with phase correction requires an increase of 1 dB in Es/No as compared to a short sequence for operation at 10 −6  BER (compare  FIGS. 4 and 1 ).  
         [0038]     An embodiment of the present invention uses serial QBL-MSK for spreading modulation to provide near constant RF envelope modulation and to enable use of serial despreading. Although QBL-MSK is selected as the spreading waveform for this particular embodiment, other constant or near constant envelope modulations, such as MSK, Gaussian MSK, OQPSK, and RC-OPSK may be used.  
         [0039]     Serial despreading, as opposed to parallel despreading, utilizes a simplified BPSK despreading operation and separates despreading into inphase (I) and quadrature (Q) codes. Serial despreading reduces the chip to symbol rate to 8 chips per symbol. Lower spreading ratios, such as 8 chips/symbol, are desirable for obtaining higher data rates when the communications channel can support it. For BPSK or QPSK data modulation on SQBL-MSK, a spread modulation waveform may be written as follows:  
                       s   ⁡     (   t   )       =       ⁢       ∑     k   =   0     N     ⁢     {         [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·   p     ⁢     (     t   -       [       2   ⁢   i     +     2   ⁢   kM       ]     ⁢     T   c         )         ]     ⁢     cos   ⁡     (       2   ⁢   π   ⁢           ⁢     f   o     ⁢   t     +     θ   k       )         +                         ⁢       [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·     p   ⁡     (     t   -       [       2   ⁢   i     +     2   ⁢   kM     +   1     ]     ⁢     T   c         )             ]     ⁢     sin   ⁡     (       2   ⁢   p   ⁢           ⁢     f   o     ⁢   t     +     θ   k       )         }           ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   1     )                 p   ⁡     (   t   )       =     {                 [       sin   ⁡     (       π   ⁢           ⁢   t       2   ⁢     T   c         )         (       π   ⁢           ⁢   t       2   ⁢     T   c         )       ]     3     ;               -   2     ⁢     T   c       ≤   t   ≤     2   ⁢     T   c                   0   ;           elsewhere   .           ;               (     eqn   ⁢           ⁢   2     )             
 
 where T c  represents the chip period, c i  represents the chip at time iT c , 2M is the number of chips per data symbol in the modulated signal, p(t) is the QBL pulse-shaping function, f o  is the carrier center frequency, and the (−1) i  terms, which multiply the chip value, represent the serial formatting. The chips (c; i ), which spread the data modulated symbols (BPSK or QPSK), are either +1 or −1. 
 
         [0040]     The data modulation (BPSK or QPSK), represented by the θ k  carrier phase term, is either 0 or π for BPSK data modulation and −0.5π, 0, 0.5π, or π for QPSK data modulation. Applying differential encoding to the BPSK or QPSK data modulation does not impact this equation, only the mapping to the carrier phase term given by the following equation:  
                 θ   k     =       ∑     m   =   0     k     ⁢     Δ   ⁢           ⁢     θ   m           ;           (     eqn   ⁢           ⁢   3     )             
 
 where Δθ is the phase change introduced by the differential encoding. 
 
         [0041]     For BPSK data modulation, the SQBL-MSK spreading signal is not impacted by the data modulation. For QPSK data modulation, however, the SQBL-MSK spreading signal is impacted by the data modulation at the symbol boundary conditions when either a −0.5π (−90 degree) or 0.5π (90 degree) phase change between symbols occurs. Two different 90 degree phase change boundaries associated with QPSK data modulation, where the past QPSK symbol is at 0 degrees and the present QPSK symbol is at 90 degrees, may be examined to show two significantly different RF envelope effects. Severe RF envelope distortion is shown in  FIGS. 5A-5C . As shown, when both the I and Q signal go to zero at the same point in time, the RF envelope goes to zero. Minimal RF envelope deviation, however, is shown in  FIGS. 6A-6C . As shown, the I and Q signals do not go to zero at the same point in time.  
         [0042]     As shown in  FIGS. 5A-5C , the near constant RF envelope performance of SQBL-MSK is not preserved. To preserve the near constant RF envelope performance of SQBL-MSK, a phase mapping module may be provided in the transmitter. The phase mapping module changes the phase trajectory only about the symbol boundary. Since this change occurs only at the boundary condition, the SQBL-MSK data modulation equation may be used, without phase mapping adjustment, to provide phase correction in the receiver by the phase correction module shown in  FIG. 15  (for example).  
         [0043]      FIG. 7  shows a block diagram for SQBL-MSK modulator  32  of transmitter  30 , with I {x(t)} and Q {y(t)} data modulation of BPSK or QPSK with SQBL-MSK spreading on the data symbols. As shown, the I and Q data signals are mixed with a carrier signal at mixers  34  and  38 . The outputs from mixers  34  and  38  are then combined by summer  36 . The resulting signal is a baseband signal, s(t), represented by the following equation:
   s ( t )= x ( t )cos(2 π f   o   t )+ y ( t )sin(2 π f   o   t ). 
         [0044]     Transmitter  30  transmits an RF modulated signal s(t). The RF modulated signal s(t) is then received by receiver  40  shown in  FIG. 8 .  
         [0045]     The equations for the I {x(t)} and Q {y(t)} signals modulating the carrier may be obtained from equation 1 as follows:  
                       x   ⁡     (   t   )       =       ⁢       ∑     k   =   0     N     ⁢     {         [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·   p     ⁢     (     t   -       [       2   ⁢   i     +     2   ⁢   kM       ]     ⁢     T   c         )         ]     ⁢     cos   ⁡     (     θ   k     )         +                         ⁢       [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·   p     ⁢     (     t   -       [       2   ⁢   i     +     2   ⁢   kM     +   1     ]     ⁢     T   c         )         ]     ⁢     sin   ⁡     (     θ   k     )         }           ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   4     )                       y   ⁡     (   t   )       =       ⁢       ∑     k   =   0     N     ⁢     {         [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·   p     ⁢     (     t   -       [       2   ⁢   i     +     2   ⁢   kM       ]     ⁢     T   c         )         ]     ⁢     sin   ⁡     (     θ   k     )         +                           ⁢       [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·   p     ⁢     (     t   -       [       2   ⁢   i     +     2   ⁢   kM     +   1     ]     ⁢     T   c         )         ]     ⁢     cos   ⁡     (     θ   k     )         }     .                 (     eqn   ⁢           ⁢   5     )             
 
         [0046]     Since the data symbol phase for QPSK or DQPSK is equal to −90, 0, 90, or 180 degrees over each symbol period, either the even spreading sequence chips are on I with the odd chips on Q (0 and 180 degree symbol conditions) or the odd spreading sequence chips are on I with the even chips on Q (−90 and 90 degree symbol conditions).  
         [0047]      FIG. 8  shows a block diagram for SQBL-MSK demodulator  42  of receiver  40 . The demodulator front-end down-converts the received signal to baseband I and Q signals, digitizes the I and Q signals, and digitally filters the I and Q signals with chip matched filters. As shown, the received signal is mixed by mixers  44  and  46  with respective quadrature signals at the carrier frequency, resulting in the desired baseband I and Q signals (mixing difference term) and the undesired signal at twice the carrier frequency (mixing sum term). Lowpass filtering by LPF  48  and LPF  50  follows the down-converter function to remove the undesired mixing summation term. Baseband I and Q signals are digitized by the I and Q analog-to-digital converters (ADC), shown as ADC  52  and  54 . As shown, the sampling rate of the ADC is equal to twice the chip rate. Following digitization, the I and Q signals are filtered, respectively, by chip matched filters  56  and  58 , which maximize the signal-to-noise ratio (SNR). The I and Q chip matched filter outputs are then sent to the despreading operation shown in  FIG. 10 .  
         [0048]     The QBL-MSK chip matched filter coefficients are based on the QBL-MSK pulse-shaping function defined by:  
               p   ⁡     (   t   )       =     {               [       sin   ⁡     (       π   ⁡     [     t   -     2   ⁢     T   c         ]         2   ⁢     T   c         )         (       π   ⁡     [     t   -     2   ⁢     T   c         ]         2   ⁢     T   c         )       ]     3     ;           0   ≤   t   ≤     4   ⁢     T   c                   0   ;           elsewhere   .                     (     eqn   ⁢           ⁢   6     )             
 
 where T c  corresponds to the chip or symbol period. 
 
         [0049]     Since the QBL-MSK pulse-shaping function is non-zero over a four chip period interval, the digital QBL-MSK chip matched filter operating at twice the chip rate may include 9 samples, defined by the following equation:  
                   p   ⁡     (   k   )       =       [       (       π   ⁡     [       0.5   ·   k     -   2     ]       2     )       (       π   ⁡     [       0.5   ·   k     -   2     ]       2     )       ]     3       ;           ⁢     k   =   0       ,   1   ,   2   ,   3   ,   …   ⁢           ,   8.           (     eqn   ⁢           ⁢   7     )             
 
         [0050]     Recognizing that the filter value for k equal to 0 and 8 is zero, the digital QBL-MSK chip matched filter response may be simplified to 7 samples, as defined by the following equation:  
                     p   ⁡     (   k   )       ⁢           =           ⁢       [       (       π   ⁡     [       0.5   ·   k     ⁢           -           ⁢   1.5     ]       2     )       (       π   ⁡     [       0.5   ·   k     ⁢           -   1.5     ]       2     )       ]     3       ;           ⁢     k   ⁢           =           ⁢   0       ,           ⁢   1   ,           ⁢   2   ,           ⁢   3   ,           ⁢   …   ⁢           ,           ⁢   6.     ⁢                   (     eqn   ⁢           ⁢   8     )             
 
         [0051]     Convolution of the QBL-MSK chip pulse shape with the QBL-MSK chip matched filter results in a QBL-MSK autocorrelation function {g(t)}.  FIG. 9  shows a plot of the QBL-MSK autocorrelation function {g(t)}. As shown, the autocorrelation function is zero at time 2.5T c  away from the desired optimum sampling point (time  0 ).  
         [0052]     Using the QBL-MSK autocorrelation function {g(t)}, the I and Q signals, shown in  FIG. 8  as x 2 (0.5*nT c ) and y 2 (0.5*nT c ), respectively, output from chip matched filters  56  and  58  (based on equations 4 and 5) are as follows:  
                         x   2     ⁡     (     0.5   ⁢           ⁢     nT   c       )       =       ⁢       ∑     k   =   0     N     ⁢     {         [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·     g   ⁡     (       0.5   ⁢           ⁢     nT   c       -       [       2   ⁢   i     +     2   ⁢   kM       ]     ⁢     T   c         )             ]     ⁢     cos   ⁡     (       θ   k     +   ϕ     )         +                         ⁢       [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·     g   ⁡     (       0.5   ⁢           ⁢     nT   c       -       [       2   ⁢   i     +     2   ⁢   kM     +   1     ]     ⁢     T   c         )             ]     ⁢     sin   ⁡     (       θ   k     +   ϕ     )         }           ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   9     )                         y   2     ⁡     (     0.5   ⁢           ⁢     nT   c       )       =       ⁢       ∑     k   =   0     N     ⁢     {         [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·   p     ⁢     (     t   -       [       2   ⁢   i     +     2   ⁢   kM       ]     ⁢     T   c         )         ]     ⁢     sin   ⁡     (       θ   k     +   ϕ     )         +                           ⁢       [       ∑     i   =   0       M   -   1       ⁢         (     -   1     )     i     ⁢       c       2   ⁢   i     +     2   ⁢   kM         ·   p     ⁢     (     t   -       [       2   ⁢   i     +     2   ⁢   kM     +   1     ]     ⁢     T   c         )         ]     ⁢     cos   ⁡     (       θ   k     +   ϕ     )         }     ;                 (     eqn   ⁢           ⁢   10     )             
 
 where φ is the carrier phase error and θ k  is the phase introduced by data symbol modulation. 
 
         [0053]      FIG. 10  shows a block diagram of an SQBL-MSK despreading operation, which performs serial demodulation using phase rotator  60  and despreading of the data symbols via despreader  64 . As shown in  FIG. 10 , the I and Q chip matched filter outputs, shown in  FIG. 8 , enter phase rotator  60 , described in more detail below. Phase rotator  60  enables the SQBL-MSK spread signal to be serially demodulated.  
         [0054]     Thus, the present invention enables despreading of both the I and Q signals using the same spreading sequence, eliminating the requirement of separating the spreading sequence into even and odd chips, as required by parallel despreaders. As shown in  FIG. 10 , despreading module  64  uses the same spreading sequence (c n ) to despread both the I and Q signals.  
         [0055]     The two samples per chip I and Q signals output from the phase rotator are sent to the SYNC detection module shown in  FIG. 13 , which determines the timing control for selecting the proper sample and sent to decimator  62 , which reduces the sample rate for the despread operation to the chip rate. Decimator  62  decimates the I and Q signals by 2, providing signals at the chip rate. The signals are then sent to despreader  64 , where the I and Q signals are mixed with a single code, c n , from spreading sequence generator  68  (module  66  provides a non-return to zero (NR 2 ) translation of the c n  code).  
         [0056]     The despread I and Q signals are then accumulated, over the data symbol period, which may consist of 2M chips per symbol, for example, by accumulators  70  and  72 . In this example, with 8 chips per symbol, M is equal to 4, which corresponds to 4 even and 4 odd chips per symbol. Switches  74  and  76  are closed at the symbol rate, kT s , providing the detected I and Q symbol signals. The detected symbols are sent to the phase correction module shown in  FIG. 15 .  
         [0057]     The phase rotator module shown in  FIG. 10  may be easily implemented for DQPSK symbol detection. Implementation of the phase rotator is required to allow serial demodulation. A description of phase rotators which may be implemented by the present invention are described by reference to  FIGS. 11 and 12 .  
         [0058]      FIG. 11  shows phase rotator  60 A for serial demodulation about a frequency of one quarter the chip rate below the carrier frequency, represented by −0.25*R c , where R c  represents the chip rate. Sampling at twice the chip rate corresponds to N equal to 2. As shown in  FIG. 11 , the I and Q chip matched filter outputs of  FIG. 8 , represented by x 2 (nT c /N) and y 2 (nT c /N), enter the phase rotator to be mixed with a cos(πn/2N) signal at mixers  82  and  92  and a sin(πn/2N) signal at mixers  86  and  88 . The outputs from mixers  82  and  86  are combined by summer  84  and the outputs from mixers  88  and  92  are combined by summer  90 . The serial I {sx(n)} and Q {sy(n)} signals output from the phase rotator for N samples per chip, are sent to the SYNC detection module shown in  FIG. 13  and the decimator shown in  FIG. 10 .  
         [0059]     The serial I {sx(n)} and Q {sy(n)} signals output from the phase rotator for N samples per chip are related to the input I {x 2 (n)} and Q{y 2 (n)} signals by the following complex equation:  
                 sx   ⁡     (       nT   c     N     )       +     j   ⁢           ⁢     sy   ⁡     (       nT   c     N     )           =       [         x   2     ⁡     (       nT   c     N     )       +     j   ⁢           ⁢       y   2     ⁡     (       nT   c     N     )           ]     ·       exp   ⁡     (       -   j     ⁢           ⁢   2   ⁢       π   ⁡     [       R   c     4     ]       ⁡     [       nT   c     N     ]         )       .               (     eqn   ⁢           ⁢   11     )             
 
         [0060]     As shown by this equation, the phase rotator provides a rotating exponential vector at the desired frequency −0.25*R c , represented by the exponential term. Since R c ·T c =1, the equation for the serial I and Q signal output from the phase rotator may be rewritten, as follows, for N equal to 2:  
                 sx   ⁡     (     0.5   ⁢           ⁢     nT   c       )       +     j   ⁢           ⁢     sy   ⁡     (     0.5   ⁢           ⁢     nT   c       )           =       [         x   2     ⁡     (     0.5   ⁢           ⁢     nT   c       )       +     j   ⁢           ⁢       y   2     ⁡     (     0.5   ⁢           ⁢     nT   c       )           ]     ·       exp   ⁡     (       -   j     ⁢       π   ⁢           ⁢   n     4       )       .               (     eqn   ⁢           ⁢   12     )             
 
         [0061]     When the present invention uses a receiver sampling rate equal to twice the chip rate, the rotating vector changes by −45 degrees for each sample. For a receiver with a sampling rate equal to the chip rate, the rotating exponential vector changes by −90 degrees for each sample. For N=1, the phase rotator operation requires only a +1, or −1 multiplication operation on the I and Q input signals, followed by a mapping module to the appropriate I or Q output. This phase rotator structure may easily be implemented in hardware.  
         [0062]     The present invention may use a sampling rate that is twice the data rate, corresponding to N=2. For N=2, the phase rotator for even samples is the is same as described for N=1. Odd samples require a 0.7071 or −0.7071 multiplication along with an addition operation, which results in a more complicated phase rotator structure.  
         [0063]     Since the serial I and Q signals output from the phase rotator are decimated by 2 before despreading by selecting either the even or odd samples, the same phase rotation may be applied to both the even and odd samples. The present invention simplifies the phase rotator module for N=2 by introducing a phase term, as shown in the following equation:  
                 sx   ⁡     (     0.5   ⁢           ⁢     nT   c       )       +     j   ⁢           ⁢     sy   ⁡     (     0.5   ⁢           ⁢     nT   c       )           =     
     ⁢       [         x   2     ⁡     (     0.5   ⁢           ⁢     nT   c       )       +     j   ⁢           ⁢       y   2     ⁡     (     0.5   ⁢           ⁢     nT   c       )           ]     ·       exp   ⁡     (       -   j     ⁢       π   ⁢           ⁢   INT   ⁢     {     0.5   ·   n     }       2       )       .               (     eqn   ⁢           ⁢   13     )             
 
 where INT represents a function that takes only the integer value of its argument. Separating the samples into even and odd samples results in the following two equations:  
                     sx   ⁡     (     nT   c     )       +     j   ⁢           ⁢     sy   ⁡     (     nT   c     )           =       [         x   2     ⁡     (     nT   c     )       +     j   ⁢           ⁢       y   2     ⁡     (     nT   c     )           ]     ·     exp   ⁡     (       -   j     ⁢       π   ⁢           ⁢   n     2       )           ;     ⁢     
     ⁢     for   ⁢           ⁢   even   ⁢           ⁢   samples   ⁢           ⁢   and             (     eqn   ⁢           ⁢   14     )                       sx   ⁡     (       [     0.5   +   n     ]     ⁢     T   c       )       +     j   ⁢           ⁢     sy   ⁡     (       [     0.5   +   n     ]     ⁢     T   c       )           =       [           ⁢         x   2     ⁡     (       [     0.5   +   n     ]     ⁢     T   c       )       +     j   ⁢           ⁢       y   2     ⁡     (       [     0.5   +   n     ]     ⁢     T   c       )           ]     ·     exp   ⁡     (       -   j     ⁢       π   ⁢           ⁢   n     2       )           ;     ⁢     
     ⁢     for   ⁢           ⁢   odd   ⁢           ⁢     samples   .               (     eqn   ⁢           ⁢   15     )             
 
         [0064]     Comparing the modified phase rotator of equations 14 and 15 to the phase rotator shown in  FIG. 11 , the even samples output from both rotators are the same. However, the odd samples output from the modified phase rotator are rotated by 45 degrees (π/4 radians) from the odd samples of the phase rotator of  FIG. 11 . By adding the phase term, which is zero degrees for even samples and 45 degrees (π/4 radians) for odd samples, the same simplified phase rotator structure associated with the N=1 phase rotator may be obtained.  FIG. 12  shows this modified phase rotator structure.  
         [0065]     As shown in  FIG. 12 , the I and Q chip matched filter outputs of  FIG. 8 , represented by x 2 (0.5nT c ) and y 2 (0.5nT c ), enter phase rotator  60 B to be mixed with a cos(πINT{0.5n}/2) signal at mixers  102  and  112  and a sin(πINT{0.5n}/2) signal at mixers  106  and  108 . The outputs from mixers  102  and  106  are then sent to summer  104  and the outputs from mixers  108  and  112  are sent to summer  110 . The serial I {sx(0.5n)} and Q {sy(0.5 n)} signals output from phase rotator  60 B, represented in  FIG. 12  by sx(0.5nTC) and sy(0.5nTC), are sent to the SYNC detection module shown in  FIG. 13  and decimator  62  shown in  FIG. 10 .  
         [0066]     The modified phase rotator  60 B provides a repetitive mapping structure of 8 samples on both the serial I and Q signals, as shown below:
 
 sx (0.5 nT   c )={ x   2 (0),  x   2 (0.5 T   c ),  y   2 ( T   c ),  y   2 (1.5 T   c ), − x   2 (2 T   c ), − x   2 (2.5 T   c ), − y   2 (3 T   c ), − y   2 (3.5 T   c ), . . . }  (eqn 16)
 
 and
 
 sy (0.5 nT   c )={ y   2 (0),  y   2 (0.5 T   c ), − x   2 ( T   c ), − x   2 (1.5 T   c ), − y   2 (2 T   c ), − y   2 (2.5 T   c ),  x   2 (3 T   c ),  x   2 (3.5 T   c ), . . . . }  (eqn 17)
 
         [0067]     Following the phase rotator operation is the sample rate reduction by decimator  62  of  FIG. 10 . The decimation allows for selecting either the odd samples, [(n+0.5)T c ], or even samples (nT c ). The timing is determined by the SYNC detection operation.  
         [0068]     The SYNC detection operation used to determine the proper timing will now be described with reference to  FIG. 13 . The SYNC detection module determines the proper selection of the I and Q samples to the despreading operation and the timing error information for use by the phase correction module shown in  FIG. 15 . It will be appreciated that in the example of  FIG. 13 , 128 chips are shown. Other numbers of chips may also be used.  
         [0069]     Reduction in the complexity of the SYNC detection I and Q correlators is achieved by decimating the I and Q samples by a factor of 2. Decimation reduces the I and Q sampling rate so that it equals the chip rate. This decimation is achieved by selecting either the even or odd samples to be sent to the SYNC detection.  
         [0070]     As shown in  FIG. 13 , the sample period for the input correlator signal is specified by T sa , which is equal to one half the chip period (T sa =0.5·T c ) for operation of the SYNC detection at twice the chip rate. For operation of the SYNC detection module at the chip rate, the sample period equals the chip period (T s =T c ). For operation of the SYNC detection at either the chip rate or twice the chip rate, the delay elements in the correlators  120  and  142  are specified by the chip period (T c ). For operating the SYNC detection algorithm at twice the chip rate, the delay element is implemented by two sample period delays (2·T sa ). For operating the SYNC detection algorithm at the chip rate, the delay element is implemented by a single sample period delay (T sa ).  
         [0071]     The chip sliding correlators  120  and  142  for the input I and Q signals, as exemplified in  FIG. 13 , include a sliding length of 128 chips, represented by delay elements  122 ,  124 ,  126 ,  128  and  130  in  FIG. 13 , which are, respectively, coupled to mixers  132 ,  134 ,  136 ,  138  and  140  for multiplication with respective spreading code signals of c 127 , c 126 , c 125 , . . . , c 0 . The 128 mixed signals are summed by summer  139 . This SYNC length is not unique to the present invention and may be made shorter or longer. Also, the full 128 chip correlation does not need to be coherently combined over the full 128 chip sequence. For example, the 128 chip correlation may be coherently combined over 32 chip segments followed by a noncoherent combining of the four 32 chip segments. Neither the SYNC sequence length, nor the correlation structure, is unique to the QPSK/DQPSK phase correction process.  
         [0072]     As shown in  FIG. 13 , the I and Q correlator output signals are, respectively, squared by squaring functions  144  and  146 , then combined by summer  148 . SYNC detection, it will be understood, may be determined by using either the square of the correlation output or the correlation output (generated by square root module  150 ). Either correlation output may be used.  
         [0073]     Typically, the correlation output is selected by switch  152 , because it may be easily implemented with the following approximation:  
                 COR   ⁡     (   n   )       =       Max   ⁢     {       MAG   ⁡     [     ICOR   ⁡     (   n   )       ]       ,     MAG   ⁡     [     QCOR   ⁡     (   n   )       ]         }       +         1   2     ·   Min     ⁢     {       MAG   ⁡     [     ICOR   ⁡     (   n   )       ]       ,     MAG   ⁡     [     QCOR   ⁡     (   n   )       ]         }           ;           (     egn   ⁢           ⁢   18     )             
 
 where Max{ } is the maximum value of its two arguments, Min{ } is the minimum value of its two arguments, and Mag[ ] is the magnitude of its argument. 
 
         [0074]     The signal used as an input signal to peak detection module  154 , for each of the two different correlation outputs are shown in  FIG. 14 . For the square-root output, the correlation signal to the peak detector is the QBL-MSK autocorrelation function, while the squared output is the square of the QBL-MSK autocorrelation function. As may be seen, the correlation response for the squared QBL-MSK autocorrelation function is sharper than the QBL-MSK autocorrelation function, as expected.  
         [0075]     Since the correlation response is different depending on the input signal, the time error estimation is also dependent on which input signal is used. By comparing the amplitude of three adjacent samples, peak detection module  154  determines if a peak has occurred at the center sample. If the center sample is declared to be a peak, the magnitude of that sample (peak sample) is compared to the SYNC threshold by SYNC detection comparison module  156 . If the magnitude of the peak sample is greater than the SYNC threshold, SYNC is declared by the SYNC detect signal sent to sample timing selection module  162 .  
         [0076]     SYNC determines the time location of the first chip and whether even or odd samples are processed in the despreader. If the SYNC process is operated at twice the chip rate, a SYNC point within ±0.25·T c  is determined directly by the peak detection. For the SYNC process operating at the chip rate, the SYNC detection point along with the correlation profile is used to establish the SYNC point within a resolution of ±0.25·T c , as described below.  
         [0077]     Using the correlation output based on the QBL-MSK autocorrelation response of  FIG. 14  and operating the SYNC detection at the chip rate, an exemplary mapping to obtain a finer timing resolution (±0.25·T c ) is outlined below: 
        (a) select sample nT c −0.5T c  if COR(n−1)≧2·COR(n+1); −Tc/2 correction implemented (odd sample before the even sample used in the SYNC detection) or     (b) select sample nT c +0.5T c  if COR(n+1)≧2·COR(n−1); +Tc/2 correction implemented (odd sample after the even sample used in the SYNC detection) or     (c) select sample nT c ; no correction if neither of the two above conditions is met; 
 
 where the SYNC I and Q inputs are the even samples only, COR(nT c ) is the peak location, COR([n+1]T c ) is the sample following the peak, and COR([n−1]T c ) is the sample before the peak. In this manner, sample timing selection module  162  chooses the even or the odd samples, based on these three relationships. In is addition, from these three relationships the proper samples output from phase rotator  60  in  FIG. 10  may be sent to despreader  64 . 
       
 
         [0081]     The timing error estimate provided by estimate timing error module  160 , shown in  FIG. 13 , will now be described. For phase correction with SYNC operating at a sample rate equal to the chip rate, 7 unique correlation conditions defined by X 1 , X 2 , and so on, to X 7  are determined from COR(n), COR(n−1), and COR(n+1). Definitions of the seven correlation condition are given below:  
               X   ⁢           ⁢   1     =     {             1   ;       if   ⁢           ⁢     COR   ⁡     (     n   -   1     )         &gt;     COR   ⁡     (     n   +   1     )                     0   ;       if   ⁢           ⁢     COR   ⁡     (     n   -   1     )         ≤     COR   ⁡     (     n   +   1     )                 ,               (     eqn   ⁢           ⁢   19     )                 X   ⁢           ⁢   2     =     {             1   ;       if   ⁢           ⁢     COR   ⁡     (     n   -   1     )         &gt;     2   ·     COR   ⁡     (     n   +   1     )                       0   ;       if   ⁢           ⁢     COR   ⁡     (     n   -   1     )         ≤     2   ·     COR   ⁡     (     n   +   1     )                   ,               (     eqn   ⁢           ⁢   20     )                 X   ⁢           ⁢   3     =     {             1   ;       if   ⁢           ⁢     COR   ⁡     (     n   +   1     )         &gt;     2   ·     COR   ⁡     (     n   -   1     )                       0   ;       if   ⁢           ⁢     COR   ⁡     (     n   +   1     )         ≤     2   ·     COR   ⁡     (     n   -   1     )                   ,               (     eqn   ⁢           ⁢   21     )                 X   ⁢           ⁢   4     =     {             1   ;       if   ⁢           ⁢     COR   ⁡     (     n   -   1     )         &gt;     3   ·     COR   ⁡     (     n   +   1     )                       0   ;       if   ⁢           ⁢     COR   ⁡     (     n   -   1     )         ≤     3   ·     COR   ⁡     (     n   +   1     )                   ,               (     eqn   ⁢           ⁢   22     )                 X   ⁢           ⁢   5     =     {             1   ;       if   ⁢           ⁢     COR   ⁡     (     n   +   1     )         &gt;     3   ·     COR   ⁡     (     n   -   1     )                       0   ;       if   ⁢           ⁢     COR   ⁡     (     n   +   1     )         ≤     3   ·     COR   ⁡     (     n   -   1     )                   ,               (     eqn   ⁢           ⁢   23     )                 X   ⁢           ⁢   6     =     {             1   ;       if   ⁢           ⁢     1.25   ·     COR   (     n   +   1     )         &lt;     COR   (     n   -   1     )     &lt;     2   ·     COR   ⁡     (     n   +   1     )                       0   ;   otherwise           ,     
     ⁢   and               (     eqn   ⁢           ⁢   24     )                 X   ⁢           ⁢   7     =     {             1   ;       if   ⁢           ⁢     1.25   ·     COR   ⁡     (     n   -   1     )           &lt;     COR   ⁡     (     n   +   1     )       &lt;     2   ·     COR   ⁡     (     n   -   1     )                       0   ;   otherwise           .               (     eqn   ⁢           ⁢   25     )             
 
         [0082]     These seven different correlation conditions are further processed using the following three digital relationships:
 
Y1=X2 OR X3,  (eqn 26)
 
Y2=X4 OR X5,  (eqn 27)
 
and
 
Y3=X6 OR X7.  (eqn 28)
 
         [0083]     The four phase correction parameters X 1 , Y 1 , Y 2 , and Y 3  are sent to phase correction table  186 , shown in  FIG. 15 .  
         [0084]     It will be understood that SYNC establishes initial timing for the despreading and demodulation processes. To maintain timing throughout the waveform, either chip tracking or serial probes may be used. Chip tracking uses early, late, and on-time despreading to estimate the timing error and perform the proper timing correction. For the chip tracking implementation, information from the early, late, and on-time despreaders may also be used to provide the timing error estimation to the phase correction module.  
         [0085]     The serial probe approach is easily implemented, since it is performed in the same manner as SYNC detection process shown in  FIG. 13 . A known sequence is used for the serial probe, just like with SYNC detection. The serial probe is inserted into the waveform and used to provide an update on the chip timing and the timing error estimation for the phase correction module. The advantage of the SYNC detection and serial probe approach is that a known sequence may be used to determine tap positions for RAKE detection in order to enhance performance in a multi-path channel.  
         [0086]     During SYNC detection, a correlation profile based on peak correlation levels are determined about the SYNC point established by correlation memory module  158 . The time interval over which this profile is generated is referred to as the multi-path window. Based on magnitude peak level of the correlation profile, multi-path RAKE taps are selected with chip timing and timing error estimation for the phase correction module for each tap.  
         [0087]     Returning now to  FIG. 10 , despreading of the I and Q symbols is done at the chip rate and timing set by the SYNC detection and serial probe, assuming the serial probe is used for maintaining chip timing. As shown in  FIG. 10 , the same spreading sequence (c n ) is used to despread the I and Q signals. The despread I and Q signal are accumulated over the data symbol period, which includes 2M chips per symbol, as an example. For a RAKE implementation, chip timing at decimator  62 , despreading at despreader  64 , and accumulation at accumulation modules  70  and  72 , shown in  FIG. 10 , may be implemented individually for each RAKE tap based on independent chip timing. Similarly, the spreading code alignment may be based on RAKE tap calculation in a SYNC/serial probe function. Each rake tap, it will be appreciated, generates a detected I and Q symbol signal output.  
         [0088]     A general description of the phase error correction process, implemented by the present invention, will now be described. The serial I and Q outputs from phase rotator  60  and decimator  62  may be rewritten as follows:  
                 sx   ⁡     (     nT   c     )       =           x   2     ⁡     (       nT   c     +     Δ   ⁢           ⁢     T   c         )       ·     cos   ⁡     (       π   ⁢           ⁢   n     2     )         +         y   2     ⁡     (       nT   c     +     Δ   ⁢           ⁢     T   c         )       ·     sin   ⁡     (       π   ⁢           ⁢   n     2     )             ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   29     )                   sy   ⁡     (     nT   c     )       =         -       x   2     ⁡     (       nT   c     +     Δ   ⁢           ⁢     T   c         )         ·     sin   ⁡     (       π   ⁢           ⁢   n     2     )         +         y   2     ⁡     (       nT   c     +     Δ   ⁢           ⁢     T   c         )       ·     cos   ⁡     (       π   ⁢           ⁢   n     2     )             ;           (     eqn   ⁢           ⁢   30     )             
 
 where ΔTc is the timing error (±T c /4 maximum) not removed by the SYNC timing correction when, selecting the even or odd samples, based on timing selection module  162  of  FIG. 13 . Inserting the equations for x 2 (nT c ) and y 2 (nT c ) and applying simplifications to these equations provides the following expressions:  
                 sx   ⁡     (     nT   c     )       =       ∑     k   =   0     N     ⁢     {         [       ∑     i   =   0         2   ⁢   M     -   1       ⁢       c     i   +     2   ⁢   kM         ·     g   ⁡     (       [       nT   c     +     Δ   ⁢           ⁢     T   c         ]     -       [     i   +     2   ⁢   kM       ]     ⁢     T   c         )       ·     cos   (           ⁢       π   ⁡     [       nT   c     -       [     i   +     2   ⁢   kM       ]     ⁢     T   c         ]         2   ⁢     T   c         )         ]     ⁢           ⁢     cos   (           ⁢       θ   k     +           ⁢   ϕ     )       -       [           ⁢       ∑     i   =   0       M   -   1       ⁢           ⁢       c     i   +     2   ⁢   kM         ⁢           ·     g   ⁡     (       [       nT   c     +     Δ   ⁢           ⁢     T   c         ]     -       [     i   +     2   ⁢   kM       ]     ⁢     T   c         )       ·     sin   ⁡     (       π   [       nT   c     -       [     i   +     2   ⁢   kM       ]     ⁢     T   c             2   ⁢     T   c         )           ]     ⁢     sin   ⁡     (       θ   k     +   ϕ     )           }         ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   31     )                 sy   ⁡     (     nT   c     )       =     -       ∑     k   =   0     N     ⁢       {         [       ∑     i   =   0         2   ⁢   M     -   1       ⁢       c     i   +     2   ⁢   kM         ·     g   ⁡     (       [       nT   c     +     Δ   ⁢           ⁢     T   c         ]     -       [     i   +     2   ⁢   kM       ]     ⁢     T   c         )       ·     cos   (           ⁢       π   ⁡     [       nT   c     -       [     i   +     2   ⁢   kM       ]     ⁢     T   c         ]         2   ⁢     T   c         )         ]     ⁢           ⁢     sin   (           ⁢       θ   k     +           ⁢   ϕ     )       +       [           ⁢       ∑     i   =   0       M   -   1       ⁢           ⁢       c     i   +     2   ⁢   kM         ⁢           ·     g   ⁡     (       [       nT   c     +     Δ   ⁢           ⁢     T   c         ]     -       [     i   +     2   ⁢   kM       ]     ⁢     T   c         )       ·     sin   ⁡     (       π   ⁡     [       nT   c     -       [     i   +     2   ⁢   kM       ]     ⁢     T   c         ]         2   ⁢     T   c         )           ]     ⁢     cos   ⁡     (       θ   k     +   ϕ     )           }     .                 (     eqn   ⁢           ⁢   32     )             
 
         [0089]     From these expressions, two key features of serial demodulation may be seen. First, the serial formatting factor (−1) i  shown in the modulation equation (eqn 1) is removed. Second, the I and Q baseband signals consist of the filtered spreading sequence multiplied by either a cosine or sine weighting function. For coherent detection, the cosine weighted filtered spreading sequence is the desired term on both the I and Q signals.  
         [0090]     The QBL-MSK autocorrelation function is nonzero for ±2.5 T c  about the ideal SYNC time of zero (see  FIG. 9 ). Since the cosine weighting function forces the QBL-MSK autocorrelation function to zero at times −Tc+ΔT c  and T c +ΔT c , only the QBL-MSK terms at −2T c +ΔT c , ΔT c , and 2T c +ΔT c  are considered for each cosine weighted QBL-MSK autocorrelation chip response.  
         [0091]     Similarly, the sine weighting function forces the QBL-MSK autocorrelation function to zero at times −T c +ΔT c , ΔT c , and 2T c +ΔT c , so only the QBL-MSK terms at −T c +ΔT c  and T c +ΔT c  are considered for each sine-weighted QBL-MSK autocorrelation chip response. Using this information, the equations for the serial I and Q signal may be rewritten as follows:  
                 sx   ⁡     (     nT   c     )       =       ∑     k   =   0     N     ⁢     {         [       ∑     i   =   0         2   ⁢   M     -   1       ⁢       c     i   +     2   ⁢   kM         ·     {         g   ⁡     (     Δ   ⁢           ⁢     T   c       )       ⁢     δ   ⁡     (     n   -     [     i   +     2   ⁢   kM       ]       )         -       g   ⁡     (         -   2     ⁢     T   c       +     Δ   ⁢           ⁢     T   c         )       ⁢     δ   ⁡     (     n   +           ⁢   2   -     [     i   +     2   ⁢   kM       ]       )         -       g   ⁡     (       2   ⁢     T   c       +     Δ   ⁢           ⁢     T   c         )       ⁢     δ   ⁡     (     n   -   2   -     [     i   +     2   ⁢   kM       ]       )           }         ]     ·     cos   ⁡     (       θ   k     +   ϕ     )         -       [           ⁢       ∑     i   =   0       M   -   1       ⁢       c     i   +     2   ⁢   kM         ·     {       -     g   ⁡     (       iT   c     +     Δ   ⁢           ⁢     T   c         )         ⁢     δ   ⁡     (     n   -   1   -     [     i   +     2   ⁢   kM       ]       )         }         ]     ·     sin   ⁡     (       θ   k     +   ϕ     )           }         ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   33     )                 sy   ⁡     (     nT   c     )       =     -       ∑     k   =   0     N     ⁢     {     [         ∑     i   =   0         2   ⁢   M     -   1       ⁢       c     i   +     2   ⁢   kM         ·     {         g   ⁡     (     Δ   ⁢           ⁢     T   c       )       ⁢     δ   ⁡     (     n   -     [     i   +     2   ⁢   kM       ]       )         -       g   ⁡     (         -   2     ⁢     T   c       +     Δ   ⁢           ⁢     T   c         )       ⁢     δ   (     n   +   2   -     (     n   +   2   -     [     i   +     2   ⁢   kM       ]       )     -       g   ⁡     (       2   ⁢     T   c       +     Δ   ⁢           ⁢     T   c         )       ⁢     δ   ⁡     (     n   -   2   -     [     i   +     2   ⁢   kM       ]       )           }         ]     ·     sin   ⁡     (       θ   k     +   ϕ     )           +       [       ∑     i   =   0       M   -   1       ⁢       c     i   +     2   ⁢   kM         ·     {         -     g   ⁡     (       -     T   c       +     Δ   ⁢           ⁢     T   c         )         ⁢     δ   ⁡     (     n   +   1   -     [     i   +     2   ⁢   kM       ]       )         +       g   ⁡     (       T   c     +     Δ   ⁢           ⁢     T   c         )       ⁢     δ   ⁡     (     n   -   1   -     [     i   +     2   ⁢   kM       ]       )           }         ]     ·     cos   ⁡     (       θ   k     +   ϕ     )           )     }                 (     eqn   ⁢           ⁢   34     )             
 
 where δ(n) is the unit impulse function, which is equal to 1 for n equal to zero and equal to 0 for all other values of n. Despreading the serial I and Q signals and accumulating over a symbol, results in the following equation for the despread I and Q symbol signals:  
               I   ⁡     (     kT   s     )       =       ∑     k   =   0     N     ⁢     {         cos   ⁡     (       θ   k     +   ϕ     )       ⁡     [       2   ⁢     M   ·     α   0         -       ∑     i   =   2         2   ⁢   M     -   3       ⁢       c     i   +     2   ⁢   kM         ·     {         c     i   -   2   +     2   ⁢   kM         ·     α     -   2         +       c     i   +   2   +     2   ⁢   kM         ·     α   2         }           ]       -     [           ⁢       ∑     i   =   0     1     ⁢       c     i   +     2   ⁢   kM         ·     {           c     i   -   2   +     2   ⁢   kM         ·     α     -   2         ⁢     cos   ⁡     (       θ     k   -   1       +   ϕ     )         +         c       +   2     +     2   ⁢   kM         ·     α   2       ⁢     cos   ⁡     (       θ   k     +   ϕ     )           }         ]     -     [           ⁢       ∑     i   =       2   ⁢   M     -   2           2   ⁢   M     -   1       ⁢       c     i   +     2   ⁢   kM         ·     {           c     i   -   2   +     2   ⁢   kM         ·     α     -   2         ⁢     cos   ⁡     (       θ   k     +   ϕ     )         +         c     i   +   2   +     2   ⁢   kM         ·     α   2       ⁢     cos   ⁡     (       θ   k     +   ϕ     )           }         ]     -       sin   ⁡     (       θ   k     +     θ   0       )       [           ⁢       ∑     i   =   1         2   ⁢   M     -   2       ⁢       c     i   +     2   ⁢   kM         ·     {         c     i   -   1   +     2   ⁢   kM         ·     α     -   1         -       c     i   +   1   +     2   ⁢   kM         ·     α   1         }         ]     +       c     2   ⁢   kM       ·     [           c       2   ⁢   kM     -   1       ·     α     -   1         ⁢     cos   ⁡     (       θ     k   -   1       +   ϕ     )         -         c       2   ⁢   kM     +   1       ·     α   1       ⁢     cos   ⁡     (       θ     k   +   1       +   ϕ     )           ]         }               (     eqn   ⁢           ⁢   35     )                 Q   ⁡     (     kT   s     )       =           ⁢     -       ∑     k   =   0     N     ⁢       {         sin   ⁡     (       θ   k     +   ϕ     )       ⁡     [       2   ⁢     M   ·     α   0         -       ∑     i   =   2         2   ⁢   M     -   3       ⁢       c     i   +     2   ⁢   kM         ·     {         c     i   +     2   ⁢   kM         ·     α     -   2         +       c     i   +   2   +     2   ⁢   kM         ·     α   2         }           ]       -     [           ⁢       ∑     i   =   0     1     ⁢       c     i   +     2   ⁢   kM         ·     {           c     i   +     2   ⁢   kM         ·     α     -   2         ⁢     cos   ⁡     (       θ     k   -   1       +   ϕ     )         +         c     i   +   2   +     2   ⁢   kM         ·     α   2       ⁢     cos   ⁡     (       θ   k     +   ϕ     )           }         ]     -     [           ⁢       ∑     i   =       2   ⁢   M     -   2           2   ⁢   M     -   1       ⁢       c     i   +     2   ⁢   kM         ·     {           c     i   -   2   +     2   ⁢   kM         ·     α     -   2         ⁢     cos   ⁡     (       θ   k     +   ϕ     )         +         c     i   +   2   +     2   ⁢   kM         ·     α   2       ⁢     cos   ⁡     (       θ     k   +   1       +   ϕ     )           }         ]     +       cos   ⁡     (       θ   k     +     θ   0       )       [           ⁢       ∑     i   =   1         2   ⁢   M     -   2       ⁢       c     i   +     2   ⁢   kM         ·     {         c     i   -   1   +     2   ⁢   kM         ·     α     -   1         -       c     i   +   1   +     2   ⁢   kM         ·     α   1         }         ]     +       c     2   ⁢   kM       ·     [           c       2   ⁢   kM     -   1       ·     α     -   1         ⁢     cos   ⁡     (       θ     k   -   1       +   ϕ     )         -         c       2   ⁢   kM     +   1       ·     α   1       ⁢     cos   ⁡     (       θ     k   +   1       +   ϕ     )           ]         }     ⁢     
     ⁢   where                 (     eqn   ⁢           ⁢   36     )                 α   n     =       g   ⁡     (       nT   c     +     Δ   ⁢           ⁢     T   c         )       .             (     eqn   ⁢           ⁢   37     )             
 
         [0092]     These equations show that the cross-correlation properties of the spreading sequence across the signal impact both the despread I and Q symbol signals. As shown in these equations, the spreading code property for 1 and 2 chip delay cross-correlation property for the 2M chips impact the despread I and Q signals. Detecting the first symbol and dropping the cross symbol spreading terms results in the following equations for the first despread I and Q symbol signals:  
                 I   ⁡     (   0   )       =         cos   ⁡     (       θ   0     +   ϕ     )       ⁡     [       2   ⁢     M   ·     α   0         -       (       α     -   2       +     α   2       )     ⁢       ∑     i   =   0         2   ⁢   M     -   3       ⁢       c   i     ·     c     i   +   2               ]       -       sin   ⁡     (       θ   0     +   ϕ     )       ⁡     [       (       α     -   1       -     α   1       )     ⁢       ∑     i   =   0         2   ⁢   M     -   2       ⁢       c   i     ·     c     i   +   1             ]           ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   38     )                 Q   ⁡     (   0   )       =     -       {         sin   ⁡     (       θ   0     +   ϕ     )       ⁡     [       2   ⁢     M   ·     α   0         -       (       α     -   2       +     α   2       )     ⁢       ∑     i   =   0         2   ⁢   M     -   3       ⁢       c   i     ·     c     i   +   2               ]       +       cos   ⁡     (       θ   0     +   ϕ     )       ⁡     [       (       α     -   1       -     α   1       )     ⁢       ∑     i   =   0         2   ⁢   M     -   2       ⁢       c   i     ·     c     i   +   1             ]         }     .               (     eqn   ⁢           ⁢   39     )             
 
         [0093]     These equations show that the spreading sequence properties and the chip timing error, which impacts the α n  terms, affect the magnitude and phase of the despread I and Q symbol signals. The 2 chip delay cross-correlation for the spreading sequence reduces the magnitude of the desired term on both the I and Q signals. The 1 chip delay cross-correlation for the spreading sequence introduces a phase shift since it is orthogonal to the desired term on both the I and Q signals. From  FIG. 9 , the QBL-MSK autocorrelation value for the α −2  and α 2  terms are less than or equal to 0.1, while the α −1  and α 1  terms are as large as 0.67. Since the α −1  and α 1  terms are so much larger than the α −2  and α 2  terms and they introduce the undesired phase shift, these equations may be simplified by dropping the α −2  and α 2  terms.  
         [0094]     Computer simulation results for 8 chips per symbol (M=4) verified that the α −2  and α 2  terms may be dropped without significant degradation in performance. Therefore, the phase correction process used by the present invention is based on only the α −1  and α 1  terms. In another embodiment, however, this phase correction process may be easily modified to incorporate the α −2  and α 2  terms.  
         [0095]     Using only the α −1  and α 1  terms (assuming α 0  is approximately 1) in this exemplary embodiment reduces the despread first I and Q symbol signals to the following:  
                 I   ⁡     (   0   )       =       2   ⁢     M   ·     cos   ⁡     (       θ   0     +   ϕ     )           -       sin   ⁡     (       θ   0     +   ϕ     )       ⁡     [       (       α     -   1       -     α   1       )     ⁢       ∑     i   =   0         2   ⁢   M     -   2       ⁢       c   i     ·     c     i   +   1             ]           ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   40     )                 Q   ⁡     (   0   )       =     -       {       2   ⁢     M   ·     sin   ⁡     (       θ   0     +   ϕ     )           +       cos   ⁡     (       θ   0     +   ϕ     )       ⁡     [       (       α     -   1       -     α   1       )     ⁢       ∑     i   =   0         2   ⁢   M     -   2       ⁢       c   i     ·     c     i   +   1             ]         }     .               (     eqn   ⁢           ⁢   41     )             
 
         [0096]     Applying the first symbol I and Q equations to the despread I and Q symbol signals results in the following equations for the despread I and Q symbol signals:  
                       I   ⁢     (     kT   s     )       =       ⁢       2   ⁢     M   ·     cos   ⁡     (       θ   k     +   ϕ     )           -     sin   ⁡     (       θ   k     +   ϕ     )                         ⁢     [       (       α     -   1       -     α   1       )     ⁢       ∑     i   =   0         2   ⁢   M     -   2       ⁢       c     i   +     2   ⁢   kM         ·     c     i   +     2   ⁢   kM     +   1             ]                 =       ⁢       A   ⁡     (   k   )       ·     cos   ⁡     (       θ   k     +   ϕ   +     γ   ⁡     (   k   )         )                 ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   42     )                         Q   ⁡     (     kT   s     )       =       ⁢     -     {       2   ⁢     M   ·     sin   ⁡     (       θ   k     +   ϕ     )           +     cos   ⁡     (       θ   k     +   ϕ     )                             ⁢     [       (       α     -   1       -     α   1       )     ⁢       ∑     i   =   0         2   ⁢   M     -   2       ⁢       c     i   +     2   ⁢   kM         ·     c     i   +     2   ⁢   kM     +   1             ]     }                 =       ⁢       -     A   ⁡     (   k   )         ·     sin   ⁡     (       θ   k     +   ϕ   +     γ   ⁡     (   k   )         )           ;           ⁢     
     ⁢   where           (     eqn   ⁢           ⁢   43     )                   A   ⁡     (   k   )       =         4   ⁢     M   2       +       [       (       α     -   1       -     α   1       )     ⁢       ∑     i   =   0         2   ⁢   M     -   2       ⁢       c     i   +     2   ⁢   kM         ·     c     i   +     2   ⁢   kM     +   1             ]     2           ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   44     )                 γ   ⁡     (   k   )       =         tan     -   1       [         (       α     -   1       -     α   1       )     ⁢       ∑     i   =   0         2   ⁢   M     -   2       ⁢       c             ⁢     i   +     2   ⁢   kM           ·     c     i   +     2   ⁢   kM     +   1               2   ⁢   M       ]     .             (     eqn   ⁢           ⁢   45     )             
 
         [0097]     The phase term γ(k) represents the phase shift produced by the chip timing error and the spreading sequence property. Referring now to  FIG. 15 , the despread I and Q symbol signals are sent to phase correction module, generally designated as  171 , to remove this phase error term and to recover the transmitted I and Q symbols.  
         [0098]     As shown, the despread I and Q signals are first phase corrected using the spreading code property (SCP) and the chip timing error estimate for the SYNC/serial probe function. For QPSK data modulation, the detected I and Q symbols are obtained directly from the I and Q output of phase correction module  171 . This assumes that coherent carrier phase tracking is performed on the signal to remove carrier frequency error and phase error. For DQPSK data modulation, differential detection is performed by differential detection module  182  to recover the I and Q symbols. DQPSK demodulation does not require the carrier frequency and phase tracking needed for QPSK.  
         [0099]     Phase correction module  171  uses spreading code property (SCP) and chip timing estimates to determine the proper phase correction term. The spreading code property (SCP) is determined at spreading sequence autocorrelation determination module  184  by generating a 1 chip delay cross-correlation property for the 2M chips used to spread the symbol. For symbol k, the spreading code property is the following:  
                 SCP   ⁡     (   k   )       =       ∑     i   =     2   ⁢   kM           2   ⁢   M   *     (     k   +   1     )       -   2       ⁢       c   i     ·     c     i   +   1             ;           (     eqn   ⁢           ⁢   46     )             
 
 where the chip values (c i ) equal −1 or +1 and the spreading is 2M chips per symbol as shown in  FIG. 10 . For 8 chips per symbol, as an example, M is equal to 4, which corresponds to 4 even and 4 odd chips per symbol, resulting in the following spreading code property equation:  
               SCP   ⁡     (   k   )       =       ∑     i   =     8   *   k           8   *     (     k   +   1     )       -   2       ⁢       c   i     ·       c     i   +   1       .                 (     eqn   ⁢           ⁢   47     )             
 
         [0100]     The spreading code property {SCP(k)} determined at module  184  along with the chip timing error information {X 1 , Y 1 , Y 2 , and Y 3 } from the SYNC/serial probe function of  FIG. 13  are used to provide a phase correction term γ 1 (k), which ideally equals γ(k). The SYNC/serial probe function sets the chip timing error information across the message block between the SYNC and serial probe or between two serial probes, while the spreading code property is calculated for each symbol at spreading sequence module  184 .  
         [0101]     As an example, for 8 chips per symbol spreading, for a given symbol k, the value of SCP(k) takes on the value of −7, −5, −3, −1, 1, 3, 5, or 7. Using the spreading code property value for each symbol along with the chip timing estimation {X 1 , Y 1 , Y 2 , and Y 3 }, the proper phase correction for the symbol is selected based on a look up table, such as TABLE 1, designated as correction table  186  in  FIG. 15 . The table phase correction output, γ 1 (k), is an estimate of the actual phase error γ(k).  
         [0102]     The phase corrected I and Q symbol signals {I c (k) and Q c (k)} are given by the following equations:  
                         I   c     ⁡     (     kT   s     )       =       ⁢       A   ⁡     (   k   )       ·     [         cos   ⁡     (       θ   k     +   ϕ     )       ·     cos   ⁡     (       γ   1     ⁡     (   k   )       )         +   sin                         ⁢       (       θ   k     +   ϕ   +     γ   ⁢     (   k   )         )     ·     sin   ⁡     (       γ   1     ⁡     (   k   )       )         ]               =       ⁢       A   ⁡     (   k   )       ·     cos   ⁡     (       θ   k     +   ϕ   +     γ   ⁡     (   k   )       -       γ   1     ⁡     (   k   )         )                 ⁢     
     ⁢   and           (     eqn   ⁢           ⁢   48     )                         Q   c     ⁡     (     kT   s     )       =       ⁢       A   ⁡     (   k   )       ·     [         sin   ⁡     (       θ   k     +   ϕ     )       ·     cos   ⁡     (       γ   1     ⁡     (   k   )       )         -   cos                         ⁢       (       θ   k     +   ϕ   +     γ   ⁡     (   k   )         )     ·     sin   ⁡     (       γ   1     ⁡     (   k   )       )         ]               =       ⁢       A   ⁡     (   k   )       ·       sin   ⁡     (       θ   k     +   ϕ   +     γ   ⁡     (   k   )       -       γ   1     ⁡     (   k   )         )       .                     (     eqn   ⁢           ⁢   49     )             
 
         [0103]     As these equations show, if γ 1 (k) equals γ(k), the phase error term goes to zero. Since phase correction table  186  has finite values, there is a small phase error term as shown in the improved BER performance curve of  FIG. 4 . To further simplify the phase correction process, the simplified cosine and sine tables, shown in TABLES 2 and 3, respectively, may be used in the phase correction process performed by phase correction module  171 .  
         [0104]     Implementation of the phase correction for each symbol is performed by phase correction module  171  using phase rotators, as shown in  FIG. 15 . In another embodiment, such as a rake receiver, phase correction operation may be performed for each rake tap. The phase correction parameters {X 1 , Y 1 , Y 2 , and Y 3 } for each independent rake tap along with the spreading code property for each symbol may be used to select the proper phase correction for each symbol on each rake tap in the demodulator.  
         [0105]     Returning to  FIG. 15 , the despread I and Q signals, I(k) and Q(k), respectively, enter phase correction module  171  and are multiplied by phase correction signal cos [γ 1 (k)] at mixers  170  and  180  and by phase correction signal sin [γ 1 (k)] at mixers  174  and  176 . The resulting signals from mixers  170  and  174  are then combined by summer  172  and the resulting signals from mixers  176  and  180  are combined by summer  178 .  
         [0106]     After phase correction, the I and Q data symbols are determined. For QPSK data modulation, the detected I and Q symbols are obtained directly from the I and Q outputs of phase correction module  171 . This assumes that coherent carrier phase tracking is performed on the signal to remove carrier frequency error and phase error (φ given in equations 48 and 49). The corrected I and Q symbol signals {I c (k) and Q c (k)} are each independently compared against zero to determine if a +1 (logic 0) or −1 (logic 1) was received for that corresponding symbol. For DQPSK demodulation, the corrected I and Q symbol signals {I c (k) and Q c (k)} are processed by DQPSK differential detector  182  to determine the detected I and Q symbol signals {I d (k) and Q d (k)}. The I and Q detected symbol signals output from the differential detector are each independently compared against zero to determine if a +1 (logic 0) or −1 (logic 1) was received for that corresponding symbol.  
         [0107]     In summary, an aspect of the present invention reduces the BER performance degradation associated with QPSK or DQPSK data modulation on serial direct sequence spread waveforms, such as QBL-MSK, by providing a phase correction term based on the spreading sequence property and an estimate of the chip timing error. The phase correction term may also be used to enhance QPSK or DQPSK data detection for receivers operating at a sampling rate equal to the chip rate or for receivers operating at sampling rates greater than twice the chip rate. Operation at different sampling rates simply requires an appropriate change in the phase correction table.  
         [0108]     The phase correction process described herein for QPSK/DQPSK may be expanded to include higher orders of phase modulation, such as 8-PSK and Differential 8-PSK. Also, the phase correction technique may be used to reduce the BER performance degradation associated with using π/4-QPSK or differential π/4-QPSK data modulation on a serial direct sequence spread waveform, such as QBL-MSK.  
         [0109]     In addition to enabling changes to the data modulation type, the phase correction process may be used by applying serial formatting to other quadrature spreading modulation waveforms, such as Offset Quadrature Phase Shift Keying (OQPSK), Minimum Shift Keying (MSK), Gaussian MSK, Tamed Frequency Modulation (TFM), Intersymbol Jitter Free Offset Quadrature Phase Shift Keying (IJF-OQPSK), Raised Cosine Filtered Offset Quadrature Phase Shift Keying (RC-OQPSK), and bandwidth efficient Continuous Phase Modulation (CPM) schemes.  
         [0110]     For other similar and non-similar disclosures, please refer to the following five applications filed on the same day as this application. These five applications are TBD (and, respectively, correspond to the following five provisional applications 60/703,180; 60/703,179; 60/703,373; 60/703,320 and 60/703,095). These applications are all incorporated herein by reference in their entireties.  
         [0111]     Although illustrated and described herein with reference to certain specific embodiments, the present invention is nevertheless not intended to be limited to the details shown. Rather, various modifications may be made in the details within the scope and range of equivalents of the claims and without departing from the spirit of the invention.  
                                                                                                                                                               TABLE 1                           Correction Phase (degrees) for Different Spreading Code Properties                Correction Phase (degrees) for the                    Y1 = X2   Y2 = X4   Y3 = X6   Different 1*Tc Delay Summation Values            ΔTc   X1   OR X3   OR X5   OR X7   7   5   3   1   −1   −3   −5   −7                    −0.5000   0   1   1   0   −5   −3   −2   0   0   2   3   5       −0.4375   0   1   1   0   −5   −3   −2   0   0   2   3   5       −0.3750   0   1   0   0   −15   −10   −5   −2   2   5   10   15       −0.3125   0   1   0   0   −15   −10   −5   −2   2   5   10   15       −0.2500   0   1   0   0   −15   −10   −5   −2   2   5   10   15       −0.1875   0   0   0   1   15   10   5   2   −2   −5   −10   −15       −0.1250   0   0   0   1   15   10   5   2   −2   −5   −10   −15       −0.0625   0   0   0   0   5   3   2   0   0   −2   −3   −5       0.0000   0   0   0   0   5   3   2   0   0   −2   −3   −5       0.0625   1   0   0   0   −5   −3   −2   0   0   2   3   5       0.1250   1   0   0   1   −15   −10   −5   −2   2   5   10   15       0.1875   1   0   0   1   −15   −10   −5   −2   2   5   10   15       0.2500   1   1   0   0   15   10   5   2   −2   −5   −10   −15       0.3125   1   1   0   0   15   10   5   2   −2   −5   −10   −15       0.3750   1   1   0   0   15   10   5   2   −2   −5   −10   −15       0.4375   1   1   1   0   5   3   2   0   0   −2   −3   −5       0.5000   1   1   1   0   5   3   2   0   0   −2   −3   −5                  
 
         [0112]    
       
         
               
             
               
               
             
               
               
               
               
               
               
             
               
               
               
               
               
               
               
               
               
               
               
               
               
             
               
               
               
               
               
               
               
               
               
               
               
               
               
             
           
               
                 TABLE 2 
               
             
             
               
                   
               
               
                   
               
               
                 Correction Phase (Simplified Cosine Terms) for Different Spreading Code Properties 
               
             
          
           
               
                   
                 Simplified Cosine Phase Correction Term for the 
               
             
          
           
               
                 Chip Timing 
                   
                 Y1 = X2 
                 Y2 = X4 
                 Y3 = X6 
                 Different Spreading Code Properties 
               
             
          
           
               
                 ΔTc 
                 X1 
                 OR X3 
                 OR X5 
                 OR X7 
                 7 
                 5 
                 3 
                 1 
                 −1 
                 −3 
                 −5 
                 −7 
               
               
                   
               
             
          
           
               
                 −0.5000 
                 0 
                 1 
                 1 
                 0 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
               
               
                 −0.4375 
                 0 
                 1 
                 1 
                 0 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
               
               
                 −0.3750 
                 0 
                 1 
                 0 
                 0 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 −0.3125 
                 0 
                 1 
                 0 
                 0 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 −0.2500 
                 0 
                 1 
                 0 
                 0 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 −0.1875 
                 0 
                 0 
                 0 
                 1 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 −0.1250 
                 0 
                 0 
                 0 
                 1 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 −0.0625 
                 0 
                 0 
                 0 
                 0 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
               
               
                 0.0000 
                 0 
                 0 
                 0 
                 0 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
               
               
                 0.0625 
                 1 
                 0 
                 0 
                 0 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
               
               
                 0.1250 
                 1 
                 0 
                 0 
                 1 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 0.1875 
                 1 
                 0 
                 0 
                 1 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 0.2500 
                 1 
                 1 
                 0 
                 0 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 0.3125 
                 1 
                 1 
                 0 
                 0 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 0.3750 
                 1 
                 1 
                 0 
                 0 
                 0.96875 
                 0.984375 
                 1 
                 1 
                 1 
                 1 
                 0.984375 
                 0.96875 
               
               
                 0.4375 
                 1 
                 1 
                 1 
                 0 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
               
               
                 0.5000 
                 1 
                 1 
                 1 
                 0 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
                 1 
               
               
                   
               
             
          
         
       
     
         [0113]    
       
         
               
             
               
               
               
             
               
               
               
               
               
               
             
               
               
               
               
               
               
               
               
               
               
               
               
               
             
               
               
               
               
               
               
               
               
               
               
               
               
               
             
           
               
                 TABLE 3 
               
             
             
               
                   
               
               
                   
               
               
                 Correction Phase (Simplified Sine Terms) for Different Spreading Code Properties 
               
             
          
           
               
                 Chip 
                   
                 Simplified Sine Phase Correction Term for the 
               
             
          
           
               
                 Timing 
                   
                   
                 Y2 = X4 
                 Y3 = X6 
                 Different Spreading Code Properties 
               
             
          
           
               
                 ΔTc 
                 X1 
                 Y1 = X2 OR X3 
                 OR X5 
                 OR X7 
                 7 
                 5 
                 3 
                 1 
                 −1 
                 −3 
                 −5 
                 −7 
               
               
                   
               
             
          
           
               
                 −0.5000 
                 0 
                 1 
                 1 
                 0 
                 −0.09375 
                 −0.0625 
                 −0.03125 
                 0 
                 0 
                 0.03125 
                 0.0625 
                 0.09375 
               
               
                 −0.4375 
                 0 
                 1 
                 1 
                 0 
                 −0.09375 
                 −0.0625 
                 −0.03125 
                 0 
                 0 
                 0.03125 
                 0.0625 
                 0.09375 
               
               
                 −0.3750 
                 0 
                 1 
                 0 
                 0 
                 −0.25 
                 −0.1875 
                 −0.09375 
                 0.03125 
                 0.03125 
                 0.09375 
                 0.1875 
                 0.25 
               
               
                 −0.3125 
                 0 
                 1 
                 0 
                 0 
                 −0.25 
                 −0.1875 
                 −0.09375 
                 −0.03125 
                 0.03125 
                 0.09375 
                 0.1875 
                 0.25 
               
               
                 −0.2500 
                 0 
                 1 
                 0 
                 0 
                 −0.25 
                 −0.1875 
                 −0.09375 
                 −0.03125 
                 0.03125 
                 0.09375 
                 0.1875 
                 0.25 
               
               
                 −0.1875 
                 0 
                 0 
                 0 
                 1 
                 0.25 
                 0.1875 
                 0.09375 
                 0.03125 
                 −0.03125 
                 −0.09375 
                 −0.1875 
                 −0.25 
               
               
                 −0.1250 
                 0 
                 0 
                 0 
                 1 
                 0.25 
                 0.1875 
                 0.09375 
                 0.03125 
                 −0.03125 
                 −0.09375 
                 −0.1875 
                 −0.25 
               
               
                 −0.0625 
                 0 
                 0 
                 0 
                 0 
                 0.09375 
                 0.0625 
                 0.03125 
                 0 
                 0 
                 −0.03125 
                 −0.0625 
                 −0.09375 
               
               
                 0.0000 
                 0 
                 0 
                 0 
                 0 
                 0.09375 
                 0.0625 
                 0.03125 
                 0 
                 0 
                 −0.03125 
                 −0.0625 
                 −0.09375 
               
               
                 0.0625 
                 1 
                 0 
                 0 
                 0 
                 −0.09375 
                 −0.0625 
                 −0.03125 
                 0 
                 0 
                 0.03125 
                 0.0625 
                 0.09375 
               
               
                 0.1250 
                 1 
                 0 
                 0 
                 1 
                 −0.25 
                 −0.1875 
                 −0.09375 
                 −0.03125 
                 0.03125 
                 0.09375 
                 0.1875 
                 0.25 
               
               
                 0.1875 
                 1 
                 0 
                 0 
                 1 
                 −0.25 
                 −0.1875 
                 −0.09375 
                 −0.03125 
                 0.03125 
                 0.09375 
                 0.1875 
                 0.25 
               
               
                 0.2500 
                 1 
                 1 
                 0 
                 0 
                 0.25 
                 0.1875 
                 0.09375 
                 0.03125 
                 −0.03125 
                 −0.09375 
                 −0.1875 
                 −0.25 
               
               
                 0.3125 
                 1 
                 1 
                 0 
                 0 
                 0.25 
                 0.1875 
                 0.09375 
                 0.03125 
                 −0.03125 
                 −0.09375 
                 −0.1875 
                 −0.25 
               
               
                 0.3750 
                 1 
                 1 
                 0 
                 0 
                 0.25 
                 0.1875 
                 0.09375 
                 0.03125 
                 −0.03125 
                 −0.09375 
                 −0.1875 
                 −0.25 
               
               
                 0.4375 
                 1 
                 1 
                 1 
                 0 
                 0.09375 
                 0.0625 
                 0.03125 
                 0 
                 0 
                 −0.03125 
                 −0.0625 
                 −0.09375 
               
               
                 0.5000 
                 1 
                 1 
                 1 
                 0 
                 0.09375 
                 0.0625 
                 0.03125 
                 0 
                 0 
                 −0.03125 
                 −0.0625 
                 −0.09375