Abstract:
A method for demodulating alternate binary offset carrier signals includes at least two subcarriers, each having an in-phase and a quadrature component modulated by pseudo-random codes. The quadrature components are modulated by dataless pilot signals. The in-phase components are modulated by data signals. The method includes converting the alternate binary offset carrier signals into an intermediate frequency, band-pass filtering the converted signals and sampling the filtered signals, generating a carrier phase and carrier phase-rotating the sampled signals by the carrier phase, correlating the rotated sampled signals, and generating, for each subcarrier, pseudo-random binary codes and a subcarrier phase, which are used to correlate the rotated sampled signals.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS  
       [0001]     This application is a Continuation of International Application No. PCT/EP2004/009952, filed Sep. 7, 2004, which was published in the English language on Mar. 16, 2006, under International Publication No. WO 2006/027004 A1 and the disclosure of which is incorporated herein by reference. 
     
    
     BACKGROUND OF THE INVENTION  
       [0002]     The present invention relates generally to Global Navigation Satellite System (GNSS) receivers and, in particular, to receivers that operate with Galileo alternate binary offset carrier (AltBOC) satellite signals.  
         [0003]     Global navigation satellite system (GNSS) receivers, such as Galileo receivers, determine their global position based on signals received from orbiting GNSS satellites. The GNSS satellites transmit signals using at least one carrier, each carrier being modulated by at least a binary pseudorandom (PRN) code, which consists of a seemingly random sequence of ones and zeros that is periodically repeated. The ones and zeros in the PRN code are referred to as “code chips” and the transitions in the code from one to zero or zero to one, which occur at “code chip times” are referred to as “code chip transitions”. Each GNSS satellite uses a unique PRN code, and thus, a GNSS receiver can associate a received signal with a particular satellite by determining which PRN code is included in the signal.  
         [0004]     The GNSS receiver calculates the difference between the time a satellite transmits its signal and the time that the receiver receives the signal. The receiver then calculates its distance, or “pseudo-range” from the satellite based on the associated time difference. Using the pseudo-ranges from at least four satellites, the receiver determines its global position.  
         [0005]     To determine the time difference, the GNSS receiver synchronizes a locally generated PRN code with the PRN code in the received signal by aligning the code chips in each of the codes. The GNSS receiver then determines how much the locally-generated PRN code is shifted in time from the known timing of the satellite PRN code at the time of transmission, and calculates the associated pseudo-range. The more closely the GNSS receiver aligns the locally-generated PRN code with the PRN code in the received signal, the more precisely the GNSS receiver can determine the associated time difference and pseudo-range and, in turn, its global position.  
         [0006]     The code synchronization operations include acquisition of the satellite PRN code and tracking the code. To acquire the PRN code, the GNSS receiver generally makes a series of correlation measurements that are separated in time by a code chip. After acquisition, the GNSS receiver tracks the received code. The GNSS receiver generally makes “Early-Minus-Late” correlation measurements, i.e., measurements of the difference between (i) a correlation measurement associated with the PRN code in the received signal and an early version of the locally-generated PRN code, and (ii) a correlation measurement associated with the PRN code in the received signal and a late version of the local PRN code. The GNSS receiver then uses the early-minus-late measurements in a delay lock loop (DLL), which produces an error signal that is proportional to the misalignment between the local and the received PRN codes. The error signal is used, in turn, to control the PRN code generator, which shifts the local PRN code essentially to minimize the DLL error signal.  
         [0007]     The GNSS receiver also typically aligns the satellite carrier with a local carrier using correlation measurements associated with a punctual version of the local PRN code. To do this the receiver uses a carrier tracking phase lock loop (PLL).  
         [0008]     The European Commission and the European Space Agency (ESA) are developing a GNSS known as Galileo. Galileo satellites will transmit two signals in the E5a band (about 1176.45 MHz) and two signals in the E5b band (about 1207.14 MHz) as a composite signal with a center frequency of about 1191.795 MHz and a bandwidth of at least 70 MHz, using a AltBOC modulation. The generation of the AltBOC signal is described in the document of the Galileo Signal Task Force of the European Commission “Status of Galileo Frequency and Signal Design”, G. W. Hein, J. Godet, J. L. Issler, J. C. Martin, P. Erhard, R. Lucas-Rodriguez and T. Pratt, 25 Sep. 2002, published at the following address: http://europa.eu.int/comm/dgs/energy_transport/galileo/documents/technical en. htm. Like the GPS satellites, the Galileo satellites each transmit unique PRN codes and a Galileo receiver can thus associate a received signal with a particular satellite. Accordingly, the Galileo receiver determines respective pseudo-ranges based on the difference between the times the satellites transmit the signals and then times the receiver receives the AltBOC signals.  
         [0009]     A standard linear offset carrier (LOC) modulates a time domain signal by a sine wave sin(ω 0 t), which shifts the frequency of the signal to both an upper sideband and a corresponding lower sideband. The BOC modulation accomplishes the frequency shift using a square wave, or sign(sin(ω 0 t)), and is generally denoted as BOC(f s , f c ), where f s  is the subcarrier (square wave) frequency and f c  is the spreading code chipping rate. The factors of 1.023 MHz are usually omitted from the notation for clarity so a BOC (15.345 MHz, 10.23 MHz) modulation is denoted BOC (15,10).  
         [0010]     The modulation of a time domain signal by a complex exponential e jω     0     t  shifts the frequency of the signal to the upper sideband only. The goal of the AltBOC modulation is to generate in a coherent manner the E5a and E5b bands, which are respectively modulated by complex exponentials, or subcarriers, such that the signals can be received as a wideband “BOC-like signal”. The E5a and E5b bands each have associated in-phase (I) and quadrature (Q) spreading, or PRN, codes, with the E5a codes shifted to the lower sideband and the E5b codes shifted to the upper sideband. The respective E5a and E5b quadrature carriers are modulated by dataless pilot signals, and the respective in-phase carriers are modulated by both PRN codes and data signals.  
         [0011]     The AltBOC modulation offers the advantage that the E5a (I and Q) and E5b (I and Q) signals can be processed independently as traditional BPSK(10) (Binary Phase-Shift Keying) signals, or together, leading to tremendous performances in terms of tracking noise and multipath.  
         [0012]     For the derivation of the demodulation principle of the AltBOC modulation, it is sufficient to approximate the base-band AltBOC signal by its AltLOC (Alternate Linear Offset Carrier) counterpart: 
 
 s ( t )= d   1 ( t )· c   1 ( t )· e   jω     s     t   +d   2 ( t )· c   2 ( t )· e   −jω     s     t  
 
+ c   3 ( t )· e   j(ω     s     t+π/2)   +c   4 ( t )· e   −j(ω     s     t−π/2)   (1) 
 
         [0013]     where: 
        c 1 (t) is the PRN code of the E5b-data component (E5bI) and d 1 (t) is the corresponding bit modulation;     c 2 (t) is the PRN code of the E5a-data component (E5aI) and d 2 (t) is the corresponding bit modulation;     c 3 (t) is the PRN code of the E5b-pilot component (E5bQ);     c 4 (t) is the PRN code of the E5a-pilot component (E5aQ);     the exponential factors represent the subcarrier modulation of E5a and E5b;     ω s  is the side-band offset pulsation: ω s =2πf s , with f s =15.345 MHz.        
 
         [0020]     In reality, s(t) contains additional product terms and the subcarrier exponentials are quantized. This effect will not be explicitly included in the equations for the sake of clarity. s(t) is modulated on the E5 carrier at 1191.795 MHz.  
         [0021]     Most previous publications present AltBOC from a satellite payload perspective, i.e., from a transmitter viewpoint. The receiver side processing has received very little attention so far.  
         [0022]     The publication “Comparison of AWGN Code Tracking Accuracy for Alternative-BOC, Complex-LOC and Complex-BOC Modulation Options in Galileo E5-Band, M. Soellner and Ph. Erhard, GNSS 2003, April 2003, discloses the principle of a AltBOC receiver architecture for tracking the AltBOC pilot component, as shown in  FIG. 1 .  
         [0023]     In  FIG. 1 , the AltBOC receiver receives over an antenna  1  a signal that includes AltBOC composite codes transmitted by all of the satellites that are in view. The received signal is applied to a RF/IF stage  2  that, in a conventional manner, converts the received signal RF to an intermediate frequency IF signal that has a frequency which is compatible with the other components of the receiver, filters the IF signal through a IF band-pass filter that has a band-pass at the desired center carrier frequency, and samples the filtered IF signal at a rate that satisfies the Nyquist theorem so as to produce corresponding digital in-phase (I) and quadrature (Q) signal samples in a known manner. The bandwidth of the filter should be sufficiently wide to allow the primary harmonic of the AltBOC composite pilot code to pass, or approximately 51 MHz. The wide bandwidth results in relatively sharp code chip transitions in the received code, and thus, fairly well defined correlation peaks.  
         [0024]     The AltBOC receiver comprises a local carrier oscillator  4 , for example of the NCO type (Numerically Controlled Oscillator), synchronized with the IF frequency to generate a phase rotation angle on M bits which is applied to a phase rotator  3  receiving the IF signal samples on N bits. The phase rotated signal samples on N bits delivered by the phase rotator are applied to three complex correlators, each comprising a signal multiplier  10 ,  11 ,  12  and an integrator  13 ,  14 ,  15 . The integrators sum the signal samples received during a predefined integration time T int .  
         [0025]     The AltBOC receiver further comprises another local oscillator  5  of the NCO type synchronized with the code chipping rate f, and which drives a complex AltBOC code generator  6  for locally generating complex PRN pilot codes for a given satellite. The generated pilot codes pass through a multi-bit delay line  7  comprising three cells E, P, L producing respectively early, prompt and late replicas of the local PRN codes which are applied respectively to an input of the multipliers  10 ,  11 ,  12 .  
         [0026]     The signals C E , C P  and C L  delivered by the integrators  13 ,  14 ,  15  are then used to generate a carrier phase and code error signals which are used to drive the NCO oscillators  4 ,  5 .  
         [0027]     The AltBOC code generator  6  presents the drawback of being complex and multi-bit. Namely, it produces a quantized version of the Alt-LOC base-band signal (assuming only the pilot component is tracked) in the following form: 
 
 c   3 ( t )· e   −j(ω     s     t+π/2)   +c   4 ( t )· e   j(ω     s     t−π/2)   (2) 
 
         [0028]     Such a complex base-band signal is cumbersome to generate. The architecture shown in  FIG. 1  also implies that all the operators (delay line, multipliers and integrators) operate on complex multi-bit numbers.  
       BRIEF SUMMARY OF THE INVENTION  
       [0029]     Embodiments of the present invention are directed to a simplified method and device for demodulating Galileo signals.  
         [0030]     An embodiment of the present invention comprises a method for demodulating alternate binary offset carrier signals comprising at least two subcarriers each having an in-phase and a quadrature component modulated by pseudo-random codes. The quadrature components are modulated by dataless pilot signals. The in-phase components are modulated by data signals. The method includes converting the alternate binary offset carrier signals into an intermediate frequency, band-pass filtering the converted signals and sampling the filtered signals, generating a carrier phase and carrier phase-rotating the sampled signals by the carrier phase, and correlating the rotated sampled signals.  
         [0031]     According to embodiments of the invention, this method further includes generating, for each subcarrier, pseudo-random binary codes and a subcarrier phase, which are used to correlate the rotated sampled signals.  
         [0032]     According to another preferred embodiment of the invention, the method further includes translating said pseudo-random codes of said subcarriers into phase angles which are combined respectively with the subcarrier phases so as to obtain resultant phase angles for each subcarrier. The resultant phase angles being phase-shifted so as to obtain at least one early, a prompt and at least one late phase angles for each subcarrier. The correlation includes phase-rotating the rotated sampled signals by said early, prompt and late phase angles of each subcarrier, for obtaining early, prompt and late replicas of the sampled signals for each subcarrier, and integrating respectively the early, prompt and late replicas for each subcarrier during a predefined time.  
         [0033]     According to another preferred embodiment of the invention, the method further includes phase-rotating the rotated sampled signals by the subcarriers phases so as to obtain phase-rotated sampled signals for each subcarrier, before correlating the rotated sampled signals.  
         [0034]     According to another preferred embodiment of the invention, the method further includes bit-shifting the pseudo-random codes so as to obtain at least one early, a prompt and at least one late pseudo-random codes. The correlation includes combining the phase-rotated sampled signals for each subcarrier with the early, prompt and late pseudo-random codes, and integrating the resulting signals during a predefined time, so as to obtain early, prompt and late correlation signals for each subcarrier. The method further includes a low speed post-correlation phase which includes phase-rotating the early and late correlation signals of each subcarrier respectively by opposite constant phase angles, and adding respectively the thus obtained early correlation signals of the subcarriers, the prompt correlation signals of the subcarriers and the thus obtained late correlation signals of the subcarriers so as to obtain respectively resultant early, prompt and late correlation signals.  
         [0035]     According to another preferred embodiment of the invention, the method further includes determining a combined carrier and subcarrier frequency for each subcarrier. Phase-rotating by the carrier phase and the subcarriers phases are combined into a single phase rotation step for each subcarrier using the combined carrier and subcarrier frequencies.  
         [0036]     According to another preferred embodiment of the invention, the correlation includes combining the phase-rotated sampled signals for each subcarrier respectively with the pseudo-random codes of the subcarrier, and integrating during a predefined time the resulting signals for obtaining a correlation signal for each subcarrier.  
         [0037]     According to another preferred embodiment of the invention, the method further includes a low speed post-correlation phase which includes combining the correlation signals for the subcarriers so as to obtain a prompt correlation signal used as an input of a PLL discrimination driving an oscillator controlling the carrier rotation step and a early-minus-late correlation signal used as an input of a DLL discrimination driving an oscillator controlling the code generation and the subcarrier phase generation.  
         [0038]     According to another preferred embodiment of the invention, the early-minus-late correlation signal is obtained from the correlation signals for the subcarriers E5a, E5b by the following formula: 
 
 C   E5,EmL   =j ( C   E5a,0   −C   E5b,0 ) 
 
         [0039]     According to another preferred embodiment of the invention, the DLL discrimination is of the type Dot-product power discrimination and performs the following operation: 
 
 D =Real[ C   E5,EmL   ·C   E5,0 ], 
 
         [0040]     where Real( ) is a function returning the real part of a complex number,  
         [0041]     the signal D being used to drive the oscillator controlling the code generation and the subcarrier phase generation.  
         [0042]     According to another preferred embodiment of the invention, the DLL discrimination performs the following operation: 
 
 C   E5,EmL   =j ( C   E5a,0   −C   E5b,0 ) 
 
         [0043]     where Imag( ) is a function returning the imaginary part of a complex number.  
         [0044]     Embodiments of the present invention also concern a device for demodulating alternate binary offset carrier signals comprising at least two subcarriers each having an in-phase and a quadrature component modulated by pseudo-random codes, the quadrature components being modulated by dataless pilot signals, the in-phase components being modulated by data signals. According to the invention, this device comprises means for implementing the above-defined method. 
     
    
     BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS  
       [0045]     The foregoing summary, as well as the following detailed description of the invention, will be better understood when read in conjunction with the appended drawings. For the purpose of illustrating the invention, there are shown in the drawings embodiments which are presently preferred. It should be understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown.  
         [0046]     In the drawings:  
         [0047]      FIG. 1  is a functional block diagram of a AltBOC demodulator channel according to prior art;  
         [0048]      FIG. 2  represents a curve of a single component correlation function for demodulating each component of a AltBOC signal;  
         [0049]      FIG. 3  is a Fresnel diagram of E5aQ and E5bQ single component correlation functions;  
         [0050]      FIG. 4  represents a curve of a combined correlation peak function combining E5aQ and E5bQ single component correlation functions;  
         [0051]      FIG. 5  is a functional block diagram of a AltBOC demodulator channel according to a first embodiment of the present invention;  
         [0052]      FIG. 6  is a functional block diagram of a AltBOC demodulator channel according to a second embodiment of the present invention;  
         [0053]      FIG. 7  is a functional block diagram of a AltBOC demodulator with two channels as shown in  FIG. 6 ;  
         [0054]      FIG. 8  is a functional block diagram of two channels of a AltBOC demodulator according to a third embodiment of the present invention;  
         [0055]      FIG. 9  is a Fresnel diagram of E5aQ and E5bQ single component correlation functions obtained with the AltBOC demodulator of  FIG. 9 .  
         [0056]      FIG. 10  is a functional block diagram of a first embodiment of a receiver comprising the AltBOC demodulator of  FIG. 8 ;  
         [0057]      FIG. 11  is a functional block diagram of a second embodiment of a receiver comprising the AltBOC demodulator of  FIG. 8 .  
         [0058]      FIGS. 12 and 13  are functional block diagrams of a third and fourth embodiments of a AltBOC receiver derived from the receiver of  11 . 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0059]     Embodiments of the invention will now be detailed. According to the AltBOC demodulation principle, the pilot channel is formed by the combination of E5aQ and E5bQ signals. The AltBOC pilot signal is composed of the c3 and c4 components: 
 
 s   P ( t )= c   3 ( t )· e   j(ω     s     t+π/2)   +c   4 ( t )· e   −j(ω     s     t−π/2)   (3) 
 
 where ω s  is the side-band offset pulsation: ω s =2πf s , with f s =15.345 MHz. 
 
         [0060]     In principle each component could be demodulated by correlating s P (t) with the code chip sequence, c i -sequence, multiplied by the complex conjugate of the corresponding subcarrier exponential, e.g. to track the c 3 (t) component, the receiver must correlate with c 3 (t)·e −j(ω     s     t+π/2) . The corresponding correlation function C E5bQ (τ) can easily be derived (assuming an infinite bandwidth):  
                 C     E   ⁢           ⁢   5   ⁢   bQ       ⁡     (   τ   )       =         ∫     T   int               ⁢           c   3     ⁡     (   t   )       ·     ⅇ     j   ⁡     (         ω   s     ⁢   t     +     π   2       )         ·       c   3     ⁡     (     t   -   τ     )       ·     ⅇ     -     j   ⁡     (         ω   s     ⁡     (     t   -   τ     )       +     π   2       )             ⁢     ⅆ   t         ∝     triangle   ⁢           ⁢       (   τ   )     ·     ⅇ     j   ⁢           ⁢     ω   s     ⁢   τ                     (   4   )             
 
         [0061]     where: 
        the sign “∝” stands for “is proportional to”;  
         triangle   ⁢           ⁢     (   τ   )       =     {           1   -        τ                     τ        &lt;     T   c               0         otherwise   ;                 
    τ is the delay between the incoming signal and the local code and subcarrier replicas;     T int  is the integration time; and     T c  is the chip length in units of time.        
 
         [0066]     The variations of the signal C E5bQ (τ) as a function of the code tracking error are shown in  FIG. 2 . Curves  17  and  18  are respectively the real (I) and the imaginary (Q) components of this function, whereas curve  16  is the magnitude thereof. It can be seen that it is a complex function of τ: if the local code and subcarrier replicas are misaligned, energy moves from the I- to the Q-branch. Such a correlation peak cannot be tracked as the code and carrier misalignments are not clearly separated: any code misalignment leads to a carrier phase tracking error. As the carrier loop is generally much faster than the code loop, it will tend to zero the energy in the Q branch, resulting in the code loop seeing a pure BPSK correlation peak.  
         [0067]     The additional information needed to make use of the BOC principle is the fact that the other side-band is coherently transmitted at a frequency distance of exactly 2f s =ω s /π. The C E5aQ (τ) correlation function is given by correlating s P (t) with c 4 (t)·e j(ω     s     t−π/2) .  
                 C     E   ⁢           ⁢   5   ⁢   aQ       ⁡     (   τ   )       =         ∫     T   int               ⁢           c   4     ⁡     (   t   )       ·     ⅇ     -     j   ⁡     (         ω   s     ⁢   t     -     π   /   2       )           ·       c   4     ⁡     (     t   -   τ     )       ·     ⅇ     j   ⁡     (         ω   s     ⁡     (     t   -   τ     )       -     π   /   2       )           ⁢     ⅆ   t         ∝     triangle   ⁢           ⁢       (   τ   )     ·     ⅇ       -   j     ⁢           ⁢     ω   s     ⁢   τ                     (   5   )             
 
         [0068]     A Fresnel diagram as plotted in  FIG. 3  provides an intuitive view of the complex C E5aQ (τ) and C E5bQ (τ) correlations. In this diagram, both correlations are represented as vectors in the I, Q plane. As the code delay τ increases, C E5bQ  and C E5aQ  rotate with an angle +ω s τ and −ω s τ respectively, and their amplitude decreases according to the triangle function, leading to the two helixes as shown in the figure.  
         [0069]     A combined correlation peak function can be derived by summing the C E5aQ  and C E5bQ  correlations, which corresponds to summing the vectors in  FIG. 3 :  
                       C     E   ⁢           ⁢   5   ⁢   Q       ⁡     (   τ   )       =         C     E   ⁢           ⁢   5   ⁢   bQ       ⁡     (   τ   )       +       C     E   ⁢           ⁢   5   ⁢   aQ       ⁡     (   τ   )                     =     triangle   ⁢           ⁢       (   τ   )     ·   cos     ⁢           ⁢     (       ω   s     ⁢   τ     )                     (   6   )             
 
         [0070]     As represented in  FIG. 4 , the function C E5Q (τ) which corresponds to the AltBOC correlation peak function is real (curve  36 ) for all code delays, the imaginary part (curve  37 ) being null, and hence can be used for code tracking.  
         [0071]     For the Pilot channel, the combined E5a/E5b correlation peak is simply the sum of the individual E5a and E5b peaks. For the data channel, the same principle can be used, but the data bits have to be wiped off prior to the combination: the E5-Data correlation peak is given by:  
                       C     E   ⁢           ⁢   5   ⁢   I       ⁡     (   τ   )       =         C     E   ⁢           ⁢   5   ⁢   bI       ⁡     (   τ   )       +       d   2     ⁢       C     E   ⁢           ⁢   5   ⁢   aI       ⁡     (   τ   )                       =     triangle   ⁢           ⁢       (   τ   )     ·   cos     ⁢           ⁢     (       ω   s     ⁢   τ     )                     (   7   )             
 
         [0072]     This bit estimation process makes the tracking channel less robust, especially at low signal to noise ratio (C/N 0 ) where the probability of bit error is high.  
         [0073]     From this principle, five preferred embodiments of a AltBOC demodulator will be derived according to the invention. With a clever partitioning between pre- and post-correlation processing, the base-band processing of AltBOC can be done with little overhead with respect to traditional BPSK signals.  
         [0074]     The AltBOC demodulators presented below are derived assuming the Pilot channel is tracked, but the extension to the Data channel tracking is straightforward.  
         [0075]     It has been shown that building the AltBOC correlation peak involves correlating the incoming signal with c 3 (t)·e −j(ω     s     t+π/2)  and c 4 (t)·e −j(ω     s     t−πs) ), and summing these two complex correlations. In the receiver, this is done in two identical channels, sharing the same local code and carrier oscillators.  
         [0076]     As explained above, demodulation of the C 3  component involves correlating the incoming signal with c 3 (t)·e −j(ω     s     t+π/2) . This operation is equivalent to rotating the incoming signal by an angle −ω s t−π/2, followed by multiplying by the c 3  PRN chips and integration. The multiplication by the code chips can be seen as an additional rotation by 0° if the chip is +1, or by 180° if the chip is −1. This observation leads to the first AltBOC demodulator channel architecture as represented in  FIG. 5 .  
         [0077]     In  FIG. 5 , the AltBOC demodulator channel receives over an antenna  1  a signal that includes the AltBOC composite codes transmitted by all of the satellites that are in view. The received signal is applied to a RF/IF stage  2  that converts the received signal RF to an intermediate frequency IF signal having a frequency which is compatible with the other components of the receiver, filters the IF signal through a IF band-pass filter that has a band-pass at the desired center carrier frequency, and samples the filtered IF signal at a rate that satisfies the Nyquist theorem so as to produce corresponding digital in-phase (I) and quadrature (Q) signal samples on N bits in a known manner. The bandwidth of the filter is sufficiently wide to allow the primary harmonic of the AltBOC composite pilot code to pass, or approximately 51 MHz. The wide bandwidth results in relatively sharp code chip transitions in the received code, and thus, fairly well defined correlation peaks.  
         [0078]     The AltBOC demodulator comprises a local oscillator  4 , for example of the NCO type (Numerically Controlled Oscillator), synchronized with the frequency IF to generate a phase rotation angle on M bits which is applied to a phase rotator  3  receiving the IF signal samples on N bits. The phase-rotated signal samples delivered by the phase rotator  3  are applied in parallel to three phase rotators  25 ,  26 ,  27  before being integrated in three respective integrators  28 ,  29 ,  30  which sum their input signal samples during the integration time T int .  
         [0079]     The AltBOC demodulator further comprises another local oscillator  5  of the NCO type synchronized with the code chipping rate fc and generating the code chipping rate and the subcarrier frequency f s =1.5 f c , for driving a subcarrier phase generator  20  and a E5b code generator  21 . The output of E5b code generator  21  is connected to a PRN phase detector  22 . The subcarrier phase generator  20  generates the phase of the subcarrier on M bits at the rate f s  provided by the code NCO oscillator  5 . The E5bQ code generator  21  generates the E5bQ code chips (0 or 1) at the rate f c  given by the code NCO oscillator  5 . The PRN phase detector translates the code chips (0 or 1) into a phase rotation angle 0 or π.  
         [0080]     The respective output signals of the subcarrier phase generator and PRN phase detector are added by an adder  23 , the output signal of the adder being a phase shift signal (real number coded on M bits) controlling a multi-bit delay line  24  with three cells E, P, L producing respectively early, prompt and late replicas of received PRN codes which are applied as phase shifts respectively to the phase rotators  25 ,  26 ,  27 .  
         [0081]     The correlation signals C E5b,-1 , C E5b,0  and C E5b,1  delivered by the integrators  28 ,  29 ,  30  are then used as input of discriminators that sense code and carrier phase misalignments which are used to control the NCO oscillators  4 ,  5 .  
         [0082]     The demodulator channel of  FIG. 5  presents two main differences with respect to a traditional AltBOC demodulation channel as shown in  FIG. 1 :  
         [0083]     the input to the delay-line  7  is a phase shift in the form of a real-valued signal;  
         [0084]     the multiplication with the chip prior to the integration is replaced by a phase rotation.  
         [0085]     While the gate count required for this architecture is smaller than that of the standard architecture in  FIG. 1 , it is still large compared to the traditional 1-bit wide delay line.  
         [0086]     The architecture described in reference to  FIG. 5  can be largely improved by noting that the E, P and L rotators  25 ,  26 ,  27  all rotate at the same frequency, but with a fixed phase difference. Namely, if the P rotator  26  applies a phase shift of −ω s t−π/2, the E rotator  25  applies a phase shift of −ω s (t+dT c /2)−π/2 and the L rotator  27  of −ω s (t−dT c /2)−π/2, where d is the Early-Late spacing in units of chips, and T c  is the chip duration. This constant phase difference of ±ω s dT c /2 can be taken out of the integration, and performed at low speed in post-correlation (after integration).  
         [0087]     This leads to the optimized architecture as presented in  FIG. 6 . Compared to the architecture of  FIG. 5 : 
        each of the three rotators  25 ,  26 ,  27  is replaced by a respective signal multiplier  33 ,  34 ,  35 ,     a subcarrier rotator E5bQ  31  is inserted between the output of the carrier rotator  3  and the respective inputs of the signal multipliers  33 ,  34 ,  35 , and performs a phase rotation by e −j(ω     s     t+π/2) ,     the multi-bit delay-line  24  is replaced by a one-bit wide code delay line  32  (the PRN phase detector being removed) and controlled directly by the E5b code generator  21 , and two signal multipliers  36 , 37  respectively by e −jα  et e jα  are inserted respectively at the output of the E and L integrators  28  and  30 .        
 
         [0091]     The two signal multipliers  36 ,  37  belong to a low-speed post-correlation stage (after integration), whereas the other part of this architecture belongs to a high-speed pre-correlation stage.  
         [0092]     With this architecture, the only additional block with respect to a traditional BPSK demodulator is the subcarrier rotator  31 , the phase of which is controlled by the code NCO oscillator  5 . This architecture is mathematically equivalent to architecture of  FIG. 5  if α is set to ω s dT c /2. However, other values of a can be chosen to obtain virtually any other phase shift between the early and late replicas.  
         [0093]     For clarity, the AltBOC demodulator architectures described in reference with  FIGS. 5 and 6  only show three complex correlators (early, punctual and late). In reality, detection of side-lobe tracking may require at least two additional correlators (very-early and very-late), but this is a straightforward extension of the structure.  
         [0094]     Thus the architecture represented in  FIG. 5  or  6  can be extended to any number of correlators. For instance, n early and m late correlators can be used, each being feed with a respective cell of a delay line. C E5b,0  corresponds to the prompt correlation. Typically, the early and late correlations are computed with a delay of one cell with respect to the prompt correlation, i.e., they correspond to C E5b,1  and C E5b,-1  respectively. However, they can be set to any other delay. A typical application of the additional correlations is the detection of side peak tracking.  
         [0095]      FIGS. 5 and 6  illustrate the architecture of one individual channel. In the AltBOC receiver, two of these channels for the E5 signal (one for E5a and one for E5b) are put together and the correlations are summed to produce an AltBOC correlation signal. Such a combined channel derived from the architecture of  FIG. 6  is represented in  FIG. 7 .  
         [0096]     In  FIG. 7 , the architecture comprise a common RF/IF stage  2 , carrier rotator  3 , carrier NCO  4  and code NCO  5 .  
         [0097]     Each channel E5a, E5b comprises a subcarrier phase rotator  31   a ,  31   b , a E5a/E5b code generator  21   a ,  21   b  feeding a respective delay line  32   a ,  32   b , three respective correlators E, P, L, each including a signal multiplier  33   a ,  34   a ,  35   a ,  33   b ,  34   b ,  35   b  and an integrator  28   a ,  29   a ,  30   a ,  28   b ,  29   b ,  30   b . The early and late branches of each channel E5a, E5b further comprise two respective signal multipliers  36   a ,  37   a ,  36   b ,  37   b  by a factor respectively equal to e −jα  and e jα . The subcarrier phase rotator  31   b  performs a phase rotation by e −j(ω     s     t+π/2) , whereas the subcarrier phase rotator  31   a  performs a phase rotation by e j(ω     s     t+π/2) .  
         [0098]     Channel E5a further comprises an additional signal multiplier  41   a  by a factor equal to −1, inserted between the code NCO  5  and the subcarrier rotator E5aQ  31   a . The outputs of the two channels are added by three adders  42 ,  43 ,  44  outputting respectively correlation signals C E5,1 , C E5,0  and C E5,-1 .  
         [0099]     Extending formulas (4) and (5), it can be derived that the C E5b,k  and C E5a,k  correlations are given by the following:  
               C       E   ⁢           ⁢   5   ⁢   b     ,   1       =       triangle   ⁢           ⁢     (       d   2     -   τ     )     ⁢     ⅇ     j   ⁡     (         ω   s     ⁢   τ     -   α     )           =       (     1   -     d   2     +   τ     )     ⁢     ⅇ     j   ⁡     (         ω   s     ⁢   τ     -   α     )                     (   8   )                 C       E   ⁢           ⁢   5   ⁢   b     ,   0       =       triangle   ⁢           ⁢     (   τ   )     ⁢     ⅇ     j   ⁡     (       ω   s     ⁢   τ     )           =       (     1   -   τ     )     ⁢     ⅇ     j   ⁡     (       ω   s     ⁢   τ     )                     (   9   )                 C       E   ⁢           ⁢   5   ⁢   b     ,     -   1         =       triangle   ⁢           ⁢     (       d   2     +   τ     )     ⁢     ⅇ     j   ⁡     (         ω   s     ⁢   τ     +   α     )           =       (     1   -     d   2     -   τ     )     ⁢     ⅇ     j   ⁡     (         ω   s     ⁢   τ     +   α     )                     (   10   )                 C       E   ⁢           ⁢   5   ⁢   a     ,   1       =       triangle   ⁢           ⁢     (       d   2     -   τ     )     ⁢     ⅇ     -     j   ⁡     (         ω   s     ⁢   τ     -   α     )             =       (     1   -     d   2     +   τ     )     ⁢     ⅇ     -     j   ⁡     (         ω   s     ⁢   τ     -   α     )                       (   11   )                 C       E   ⁢           ⁢   5   ⁢   a     ,   0       =       triangle   ⁢           ⁢     (   τ   )     ⁢     ⅇ     -     j   ⁡     (       ω   s     ⁢   τ     )             =       (     1   -   τ     )     ⁢     ⅇ     -     j   ⁡     (       ω   s     ⁢   τ     )                       (   12   )                 C       E   ⁢           ⁢   5   ⁢   a     ,     -   1         =       triangle   ⁢           ⁢     (       d   2     +   τ     )     ⁢     ⅇ     -     j   ⁡     (         ω   s     ⁢   τ     +   α     )             =       (     1   -     d   2     -   τ     )     ⁢     ⅇ     -     j   ⁡     (         ω   s     ⁢   τ     +   α     )                       (   13   )             
 
         [0100]     where α=ω s dT c /2=2πf s dT c /2. The Early-Late spacing d is determined by the clocking frequency of the delay line  32 . Typically, d ranges from 0.1 to 1.  
         [0101]     For tracking, the receiver uses the C E5,k  correlations to build code and carrier phase discriminators of which the output is proportional to the code and carrier phase tracking error respectively.  
         [0102]     The basis quantity used in the PLL discriminator is the punctual correlation C E5,0 . The basic quantity used in the DLL discriminator is the difference between the Early and the Late correlations, also referred to as the Early-minus-Late correlation, and noted C E5,EmL . This difference reads: 
 
 C   E5,EmL   =C   E5,1   −C   E5,-1   =C   E5b,1   +C   E5a,l   −C   E5b,-1   −C   E5a,-1   (14) 
 
         [0103]     In the special case of d=1/(2f s T c )=1/(2*15.345/10.23)=⅓, α equals π/2, and it can be shown that C E5,EmL  is proportional to j(C E5a,0 −C E5b,0 ) for small tracking errors τ. This fact leads to a dramatic reduction of the channel complexity, as only the punctual correlations (C E5a,0  and C E5b,0 ) need to be computed for both the code and carrier tracking.  
         [0104]     This property can be demonstrated by reworking the expression for C E5,EmL  as follows, taking into account that α=π/2. Inserting formulas (8) to (13) into formula (14) leads to:  
                       C       E   ⁢           ⁢   5     ,   EmL       ⁡     (   τ   )       =       ⁢         (     1   -     d   2     +   τ     )     ⁡     [       ⅇ     j   ⁡     (         ω   s     ⁢   τ     -     π   /   2       )         +     ⅇ     -     j   ⁡     (         ω   s     ⁢   τ     -     π   /   2       )             ]       +                     ⁢       (     1   -     d   2     -   τ     )     ⁡     [       ⅇ     j   ⁡     (         ω   s     ⁢   τ     -     π   /   2       )         +     ⅇ     -     j   ⁡     (         ω   s     ⁢   τ     -     π   /   2       )             ]                   =       ⁢       (     2   -   d     )     ⁡     [       ⅇ     j   ⁡     (         ω   s     ⁢   τ     -     π   /   2       )         +     ⅇ       -   j     ⁢           ⁢     (         ω   s     ⁢   τ     -     π   /   2       )           ]                   =       ⁢     2   ⁢     (     2   -   d     )     ⁢     sin   ⁡     (       ω   s     ⁢   τ     )                                             (   15   )                                               (   16   )               (   17   )                   
 
         [0105]     On the other hand, for small code tracking errors (τ&lt;&lt;1), j(C E5a,0 -C E5b,0 ) is simply: 
 
 j ( C   E5a,0   −C   E5b,0 )= j (1−τ)[ e   −jω     s     τ   −e   jω     s     τ ]=2 sin(ω S τ)  (18) 
 
         [0106]     This relation demonstrates that C E5,EmL  is proportional to j(C E5a,0 -C E5b,0 ). The factor (2−d) is irrelevant as it is purely an amplification factor compensated for in the discriminator normalization.  
         [0107]     This lead to an architecture as represented in  FIG. 8 , which is equivalent to the architecture of  FIG. 7  in the case of d=⅓, though much simpler.  
         [0108]     With respect to the architectures of  FIGS. 6 and 7 , this architecture does not comprises code delay lines  32   a ,  32   b  and have a single correlator for each E5a and E5b codes. Each correlator comprises a single signal multiplier  51   a ,  51   b  receiving the output of the corresponding subcarrier rotator E5a and E5b  31   a ,  31   b  and the codes from the corresponding E5a and E5b code generator  21   a ,  21   b  and a single integrator  52   a ,  52   b . The output signals C E5a,0  and C E5b,0  of the integrators  52   a ,  52   b  are applied to an adder  63  so as to obtain the punctual correlation signal C E5,0 , and to a comparator  64  and a multiplier by j  65  so as to obtain the Early-minus-Late correlation signal C E5,EmL =j(C E5a,0 −C E5b,0 ).  
         [0109]     It can be seen that this last architecture is extremely simple, as there is only one correlator needed per channel. Surprisingly, this leads to the conclusion that the AltBOC demodulator can be implemented very efficiently in terms of gate count, despites its apparent complexity.  
         [0110]     This last architecture shows that the tracking of the AltBOC signal can be done without any Early or Late correlator. This surprising result can be intuitively understood by drawing another Fresnel diagram, as in  FIG. 9 . As established above, the code misalignment τ is proportional to the angle φ between the C E5a,0  and the C E5b,0  correlation vectors: φ=2ω s τ. It is also visible on the diagram that the vector j(C E5a,0 −C E5b,0 ), noted “E-L corr” in the diagram, obtained by subtracting the C E5b,0  vector from the C E5a,0  vector, and by rotating the resulting vector by 90 degrees, is real, and has an amplitude proportional to the angle φ. This is the fundamental reason why the AltBOC code tracking does not need Early and Late code replicas: the code misalignment can be derived solely from the punctual correlators.  
         [0111]      FIG. 10  represents a receiver comprising the AltBOC demodulator of  FIG. 8 , and PLL (Phase-Lock Loop) and DLL (Delay-Lock Loop) controlling respectively the carrier NCO  4  and the Code NCO  5 .  
         [0112]     The PLL comprises a discriminator  71  the output P of which is filtered by a PLL filter  72  before being applied to a control input of the carrier NCO  4 . The PLL discriminator  71  is the arctan discriminator, which consists in computing the angle of the complex number C E5,0 : 
 
 P =Angle( C   E5,0 ).  (19) 
 
         [0113]     The DLL comprises a DLL discriminator receiving the correlation signal C E5,EmL  and a DLL filter  76  connected to a control input of the code NCO  5 .  
         [0114]     The DLL discriminator is of the type Dot-product power discriminator, which compute the signal D=Real(C E5,EmL ·C E5,0 *). Thus the DLL discriminator comprises a complex conjugate function  73  to which the signal C E5,0  is applied and a signal multiplier  74  for multiplying the signals provided by the multiplier by j  65  and the complex conjugate function  73 . The signal D is then obtained by a function  75  extracting the real part of the complex signal delivered by the signal multiplier  74 .  
         [0115]     After some algebraic manipulations, a simplified architecture as represented in  FIG. 11  can be derived from the architecture of  FIG. 10 , which requires fewer operations to compute the same DLL discriminator.  
         [0116]     According to the discriminator of  FIG. 10 : 
 
 D =Real[ C   E5,EmL   ·C   E5,0 *]
 
=Real[ j ( C   E5a,0   −C   E5b,0 )( C   E5a,0   +C   E5b,0 )*]
 
=Real[− j (| C   E5b,0 | 2   −C   E5a,0 | 2 +2 j Imag ( C   E5b,0   C   E5a,0 *)]
 
=2  Imag ( C   E5b,0   C   E5a,0 )  (20) 
 
         [0117]     Thus, in  FIG. 11 , the DLL discriminator comprises a complex conjugate function  81  to which the correlation signal C E5a,0  is applied and a signal multiplier  82  for multiplying the signal provided by complex conjugate function and the correlation signal C E5b,0 . The signal D is then obtained by a function Imag( )  83  extracting the imaginary part of the complex signal delivered by the signal multiplier  82 .  
         [0118]     A further modification of the architecture of  FIG. 11  would be the replacement of the Imag( ) operator by an Angle( ) operator (i.e. a block providing the same functionality as the arctan discriminator  71 ).  
         [0119]     The architecture of  FIG. 11  can be further optimized as shown in  FIG. 12  by noticing that the phase rotation in the carrier rotator  3  followed by the phase rotation in the subcarriers rotators  31   a ,  31   b  can be combined in one single phase rotation by a phase corresponding to the sum of the carrier and subcarrier phases.  
         [0120]     Thus in  FIG. 12 , the carrier rotator  3 , the two subcarrier rotators  31   a ,  31   b  and the multiplier  41   a  of  FIG. 11  are replaced with two phase rotators  92   a  and  92   b  (one for each channel E5a and E5b) receiving the down-converted signal from the RF/IF stage  2 . Besides, the subcarrier phase provided by the code NCO  4  is added by an adder  93   a  to the phase provided by the carrier NCO  3  and subtracted therefrom by an adder  93   b , the addition results being respectively applied to the phase rotators  92   a ,  92   b  of channels E5a, E5b.  
         [0121]     The architecture as shown in  FIG. 13  can be derived from the previous architecture by replacing the Code NCO by a more simple NCO  95  delivering only the code chipping rate f,, and a frequency multiplier  96  by 1.5 applied to the code chipping rate f c  so as to obtain the subcarrier frequency f s  which is applied as input to the adders  93   a ,  93   b . This requires to duplicate the carrier NCO  4 , one for each channel E5a, E5b. The carrier frequency tracked by the PLL is applied to the adders  93   a ,  93   b  the respective outputs of which drive the carrier NCOs  91   a ,  91   b  of the two channels E5a, E5b, so as to follow the respective combined carrier+subcarrier frequencies of the two channels E5a, E5b.  
         [0122]     In this architecture the high-speed pre-correlation stages of E5a and E5b channels remain identical. They both comprise a phase rotator  92   a ,  92   b , two NCOs  91   a ,  91   b , a code generator  21   a ,  21   b  and a correlator. Moreover, if the code NCO is duplicated so as to have one NCO per channel, each of the high-speed pre-correlation stages of E5a and E5b channels is identical to a traditional BPSK (Binary Phase-Shift Keying) channel, which offers great benefits in the design of a combined  
         [0123]     AltBOC/BPSK receiver.  
         [0124]     Of course, the optimizations performed in the architectures of  FIGS. 12 and 13  can be as well applied to the architectures of  FIG. 5, 6  or  7 .  
         [0125]     It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. It is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but it is intended to cover modifications within the spirit and scope of the present invention as defined by the appended claims.