Abstract
This article investigates multicarrier (MC) transmission for nextgeneration global positioning system (GPS) instead of current spread spectrum signals. A MC code is proposed in this article as an alternative to the coarse/acquisition (C/A) code in GPS. The entire GPS bandwidth for the C/A code is divided into 1,024 subcarrier slots. As per our proposed arrangement, each satellite vehicle (SV) takes up only 42 uniformly spaced and nonoverlapping subcarrier slots while approximately occupying the same bandwidth as the C/A code in GPS. In this way, the proposed MC code is proved to attain a 4.73 dB SNR gain compared to the GPS C/A code in terms of CramerRao lower bound for range estimation, which could evidently enhance the GPS receiver's sensitivity. Together with the feature of robustness against multipath effect, the proposed MC code is helpful for urban, tunnel, even indoor and underground positioning. The transmission and reception of the propose MC code is also described, where the range estimation process is explained. Furthermore, the proposed MC code is shown to be robust against narrow band interference. Moreover, the probability of collision between SVs due to Doppler shifts is theoretically analyzed, where the probability of successful positioning is evaluated. Simulation Results show a consistency with our proposed theory.
Keywords:
multicarrier code; GPS C/A code; SNR Gain; doppler effect; NBI; probability of collision1 Introduction
Global navigation satellite system (GNSS) such as the current global positioning system (GPS) or the future European Galileo system can provide a worldwide accurate positioning under an outdoor good environmental conditions [1]. However, GNSS based positioning is not reliable in urban, tunnel, underbridge, indoor or underground environments due to the dense multipath effect as well as nonlineofsight (NLOS) signal energy attenuation [1]. As it is known, multicarrier (MC) signals, e.g. orthogonal frequency division multiplexing (OFDM) signals [2,3], are robust against the multipath effect [48]. Furthermore, they have a more efficient spectrum usage compared to the current golden codes [9,10], which thus leads to a SNR gain for range estimation. Therefore, the MC signal is being considered for investigation of the possiblity of its application in nextgeneration GNSS.
For the best of authors' knowledge, the use of a MC signal as a code of nextgeneration GNSS is investigated by both [1,11]. Zanier and Luise [11] discussed about the funamental issues in timedelay estimation of MC signals with applications to nextgeneration GNSS. This article used a filter bank MC modulation, where the MC modulation has the same power spectral density (PSD) of the current golden code so that they have the same ranging performance. Furthermore, Zanier and Luise [11] derived the fundamental performance of the filter bank MC modulation using CramerRao lower bound (CRLB). Dai et al. [1] tried to propose the OFDM/MC based scheme for the nextgeneration GNSS. However, authors basically discussed the OFDM communication and the performance of timeofarrival (TOA) estimation, which are too far from an available GNSS scheme. As we know, it is impossible for all SVs to use the same OFDM signal when the frequency collision between SVs will occur and the data reception will fail without question. Dai et al. [1] only gave a general discussion but did not provide the specific probing signal for each satellite vehicle (SV). Also, it did not compare the OFDM signal with the current GNSS code in terms of ranging and/or positioning accuracy. Furthermore, it did not analyze the scheme's feasibility as an option of the nextgeneration GNSS.
Differently from the previous literature, this article investigates the possiblity of a unfiltered nondatabearing MC modulation applied in the nextgeneration GNSS instead of the current golden code. Specifically, a MC code is proposed as an alternative to the coarse/acquisition (C/A) code for the nextgeneration GPS. As we all know, GPS transmits three binary codes for target navigation: the pseudorandom noise (PN) based C/A code with 1.023 MHz, the PNbased precise (P) code with 10.23 MHz and the navigation message with 50 bps [1215]. Among them, the C/A code is for civilian use but performs poor under the dense multipath effect, e.g. positioning in a downtown environment, weak signal detection such as indoor or underground positioning and narrow band interference (NBI).^{a }Consequently, the MC modulation is proposed as a nextgeneration alternative to the C/A code in order to improve the positioning performance against multipath, weak signal and NBI. Even though the multipath management in the communication area is different from that in the GNSS area, the topic of the multipath management is not addressed in the article.
In our proposed design, the entire GPS bandwidth for the C/A code, i.e. a nulltonull bandwidth 2.048 MHz,^{b }is divided into 1,024 subcarrier slots. Under the assumption^{c }that there are currently 24 SVs in GPS, each SV takes up only 42 uniformly spaced and nonoverlapping subcarrier slots as per our proposed arrangement while approximately occupying the whole bandwidth. In this way,^{d }the proposed MC code is proved to attain a 4.73 dB improvement (See Section 3) to that of the C/A code in terms of ranging accuracy. In other words, for a fixed ranging accuracy, the required SNR is 4.73 dB lower than that for the C/A code, indicating a 4.73 dB SNR gain when using the proposed MC codes instead of the current spread spectrum signals. The proposed MC code is also proven to be robust against NBI. Besides, the effect of Doppler shift to positioning process is proved to be negligible.
The remainder of the article is organized as follows. Section 2 describes the proposed MC code for all 24 SVs in GPS. Section 3 proves that the proposed MC code attains a 4.73 dB SNR gain compared to the current C/A code. The transmission and reception of the proposed MC code is described in Section 4, followed by the analysis of NBI effect on the proposed MC code in Section 5. Section 6 thoroughly analyzes the upper bound of Doppler effect on the reception of the proposed probing signals, by defining the probability of collision (POC) and the probability of successful positioning. Simulation results are given in Section 7, followed by conclusion in Section 8.
2 Proposed MC multiple access method for each SV
We propose to divide the entire 2.048 MHz band into 1,024 nonoverlapping orthogonal subcarrier slots as shown in Figure 1, where each subcarrier slot has a nulltonull bandwidth of approximately 2 kHz. In our proposed design, the first and last eight subcarrier slots are left blank while the remaining 1,008 subcarrier slots are used to transmit the probing signals, namely, 42 unique subcarrier slots per SV. Due to the facts that (i) occupying the whole bandwidth results in a good ranging accuracy [16] and (ii) it is generally necessary to have all 24 SVs in GPS with more or less the same ranging accuracy since 4 to 12 SVs are usually visible at any point on earth and at any time, each group of 42 nonoverlapping subcarrier slots is selected uniformly to cover the entire 2.048 MHz band.
Figure 1. The entire 2.048 MHz band is divided into N = 1024 nonoverlapping orthogonal subcarrier slots and so each subcarrier slot has a nulltonull bandwidth of approximately 2 kHz.
Define S_{ID }as a number from 1 to 24 that is used to identify each SV. Define I_{D }as an index set which is used to identify the subcarrier slots that are allocated to each SV. According to our design, an SV with the number S_{ID}, is allocated the index set, I_{D}, as
where S_{index }is an integer from 1 to 42, which denotes the specific subcarrier slot allocated to the . Define S(f) as the continuous expression for the MC code in the frequency domain. It, in turn, can be sampled at N = 1024 and B = 1.023 MHz, which is shown in Figure 1 as dash lines. The resulting discrete expression is given by for k = 0, 1, ..., N1. More specifically, for the , we have
where A is a constant as shown in Figure 1 and the value of A is determined by the transmitter power.
Equation (1) is explained further in Figure 2a, where 1,024 subcarrier slots are divided into 42 groups. Each group contains 24 subcarrier slots and the first and last eight subcarrier slots are left blank. Specifically, subcarrier slots allocated to the kth, SV, are shown in Figure 2b, which includes the kth subcarrier of each group.
Figure 2. Proposed MC code for GPS: (a) The entire 2.048 MHz band is uniformly divided into 1024 subcarrier slots, where the first and last 8 are left blank while the remaining 1008 are divided into 42 groups, each with 24 subcarriers. (b) 42 subcarriers are allocated to the k^{th }SV, k = 1, 2, ..., 24, which is made up of the kth subcarrier slot in each group.
3 Ranging accuracy and SNR gain
The CRLB for timebased range estimation, , can be expressed as [9,16]
where is the discrete transmitted energy; a denotes the complexvalued attenuation of the direct path; · denotes modulus; is the PSD of the additional white Gaussian noise (AWGN) in the propagation channel; is the received SNR; c is the speed of light; is the mean square bandwidth (MSB), which can be approximated in a discrete form as
where B = 1.023 MHz, and approximation (a) occurs due to the transformation from a continuous form to a discrete form, which will be verified by simulation. The PSD for the PNbased C/A code in GPS is a sinc square function [1719], which implies that, S[k] in (4), is a sampled mainlobe of the sinc function. On the other hand, for our proposed design, the MSB can be further expressed as
where I_{D }is given in (1).
Based on (5), the msb in MHz for the proposed MC code is calculated and illustrated in Table 1 for all SVs, i.e. S_{ID }= 1, 2, ..., 24. From Table 1, one can see that the proposed design has a MSB ranging from 0.5905 to 0.5909 MHz, implying that the 24 SVs have an approximately equal ranging accuracy. On the other hand, the MSB in MHz for the PNbased C/A code in GPS is obtained from (4) as 0.3427 MHz. One note to be pointed out is that the ID in Table 1 denotes the standard name in GPS and can be generally represented as Lm, where L is the orbit plane, from A to F , and m is the specific SV, from 1 to 4 [12]. The S_{ID }defined in this article is matched to the standard ID and shown in Table 1.
Table 1. MSB in MHz, i.e. , for our proposed MC code with S_{ID }= 1, 2, ..., 24, and the PNbased C/A code
Denote MSB_{s, }CRLBs and as the MSB, the CRLB and the SNR for the proposed MC code, respectively. Similarly, denote MSB_{c}, CRLB_{c }and as the MSB, the CRLB and the SNR for the PNbased C/A code, respectively. The difference between the proposed MC code and the C/A code, in terms of CRLB for range estimation under an equal SNR, can be obtained as
From another viewpoint, for a fixed ranging accuracy, the difference of the required SNR between the proposed design and the C/A code is obtained as
Which indicates that using the proposed MC code in GPS would lead to a 4.73 dB SNR gain compared to the current spread spectrum's gold code.
4 Transmission and reception of the proposed MC code
As known, the data rate of the navigation message in current GPS is 50 bps while the bandwidth used for the proposed MC code is 1.024 MHz. The navigation message is a telemetry message, and the data is transmitted in logical units called frames. For GPS, a frame is 1,500 bits long and takes 30 s to be transmitted. Each frame is divided into five subframes, 300 bits long per subframe. Subframes 1, 2 and 3 contain the high accuracy ephemeris and clock off set data. Subframes 4 and 5 contain the almanac data and some related health and configuration data [12].
As shown in Figure 3, the proposed MC code is firstly modulated by the navigation message. Furthermore, the serial modulated data is converted to the parallel data and then transformed to the time domain by using inverse discrete Fourier transform (IDFT). Finally, the timedomain data is sent out by Tx RF Frontend. One note to be pointed out, every 20 MCcode cycles, i.e. 20 ms, are modulated by the same one bit of the navigation message since the data rate of the MC code is much greater than that of the navigation message. The transmitted MC code is defined by Equations (1) and (2) and shown in Figure 2. The transmitted MC code is unique for a certain SV.
Figure 3. The transmission of the proposed MC code at certain SV, where the number of subcarrier slots N = 1024 and the transmitted MC code is different for a different SV as given in (2) and Figure 2.
Figure 4 shows the block diagram of the reception of the proposed MC code in terms of range estimation. The timedomain data consisting of the modulated MC code is received by Rx RF Frontend. Furthermore, the serial modulated data is converted to the parallel data and then transformed to the frequency domain by using discrete Fourier transform (DFT).
Figure 4. The reception of the proposed MC code at certain SV and its delay estimation , i.e. the range is the speed of light, where the number of subcarrier slots N = 1024 and the transmitted MC code is different for a different SV as given in (2) and Figure 2.
The signal is received by Rx RF Frontend and downconverted to a serial baseband signal. The baseband signal is sampled and converted to a parallel data. Passing by DFT, the parallel data is tranformed to frequency domain and passed into parallel/serial converter. The output serial signal, together with the local code generator and local oscillator, is then used for Doppler removal and acquisition [12]. Furthermore, via signal tracking process [12], both the partial delay estimation and NAV are obtained. Given and NAV, the range between transmitter and receiver can be obtained. One note to be pointed out is that the crosscorrelation in signal acquistion and tracking is implemented in the frequency domain, which is given in [20].
5 NBI effect
In this section, define the POC as the probability that the NBI hits any part of the mainlobe^{e }of any of the subcarriers. The observation interval (OBI) is selected as 1 ms to evaluate NBI effect, leading to a nulltonull bandwidth of each subcarrier w_{nn }= 2 kHz. The frequency range out of the available bandwidth 2B = 2.048 MHz, where the probing signal might be hit by a NBI, is w_{c }= 42w_{nn }kHz. This is the worst case since the greater the OBI, the narrower the subcarrier band, so the smaller the POC. The NBI effect is represented using POC, where M uncorrelated NBIs are considered, M = 1, 2, ..., 8, and each NBI is referred to be a frequency tone [21].
Therefore, the resulting POC, p_{c}, can be obtained as
Based on (8), let us evaluate the probability that there are at least four visible noncollision SVs for one GPS receiver since GPS positioning requires four SVs. Without loss of generality, assuming that there are eight SVs that are visible to one GPS receiver, the probability that there exists at most three visible noncolliding SVs is obtained as
where denotes the number of combinations for choosing k out of eight SVs. And the probability that there exists at least four visible noncolliding SVs, i.e. the probability of positioning success, P_{s}, is obtained as
For example, when M = 1, we have and , so P_{s }≈ 100%, indicating that the proposed MC code is robust against NBI.
6 Doppler effect
The motion of each SV causes a Doppler shift in the transmitted MC codes which can force a collision between the various transmitted groups of MC codes that are received by a GPS receiver. For a thorough analysis on this collision, Appendix 1 analyzes the Doppler shift for an inplane GPS receiver while Appendix 2 analyzes the Doppler shift for an offplane GPS receiver in detail. In this section, the POC between MC codes due to Doppler shifts is theoretically explored. More specifically, we assume that a stationary GPS receiver is set to receive an MC code transmitted by SV "X", and measure the probability that its mainlobe collides with the mainlobe of MC codes transmitted by other SVs. In our analysis, we assume that the receiver has the maximum possible visible region, i.e. α = 153^{o }as shown in Figure 5 in Appendix 2, in all of the six orbital planes, i.e. that the receiver experiences the maximum possible Doppler shift from each one of the six orbital planes at the same time. This is a worst case scenario, which can be used as an upper bound on POC.
Figure 5. Visible range of an offplane GPS receiver in terms of one SV (a) Representation of the visible range α of an offplane GPS receiver; (b) the visible range α as a function of the elevation angle β.
6.1 SV constellation
In GPS, the constellation of SVs in each orbit is determined by true anomaly [12]. Since the eccentricity of orbits in GPS is less than 0.02 [12], which indicates a circle, the mean anomaly is approximately equal to the true anomaly. Therefore, by means of the mean anomaly [12], the constellation of SVs is shown in Figure 6.
Figure 6. The constellation of SVs in each orbit based on the true anomaly.
6.1.1 Collision analysis between SVs in one orbit
Since the central angle between any two SVs in one orbit is fixed and the Doppler shift is monotonically decreasing with the central angle, then the Doppler difference (DD) between any two visible SVs has a small variational range. Furthermore, since the subcarriers allocated to each SV are predetermined, thus the frequency spacing between the subcarriers without Doppler shift (FSBD) is fixed. As long as the frequency spacing after Doppler shift (FSAD) is larger than the frequency resolution, the collision between subcarriers shall be avoided, otherwise, a collision shall occur. Table 2 takes all pairs of SVs in one orbit into consideration with respect to their relative central angle, their DD, FSBD, FSAD and finally their decision outcome. In Table 2, the central angle is obtained from the constellation of SVs, DD is obtained from simulation, FSAD is obtained as the absolute value of summation of FSBD and DD, and the maximum frequency resolution (MFR) is selected as 1 kHz corresponding to an OBI of 1 ms. Even though, the central angles in Table 2 are less than the angle for the maximum possible visible range, one can conclude that there can never be any collision between groups of MC codes that are transmitted by SVs in one orbit.
Table 2. Collision analysis between SVs in each orbit for inplane receivers, where Collision (S: Sure or N: Never) and CA: central angle
6.1.2 Analysis On the visibility of an SV
It is essential to analyze the visibility of an SV by the receiver in order to obtain its probability of visibility and hence its POC with other SVs. Since the maximum possible visible range for one SV by the receiver is 153^{o}, according to the constellation shown in Figure 6, the visible region denoted by the central angle can be obtained. Take B2 as an example, moving clockwise for a given receiver. When B3 descends past the horizon, B2 is the only visible SV in orbit B until B4 ascends past the horizon, which corresponds to 130.98^{o }+ 105.60^{o } 153^{o }= 83.58^{o}. Furthermore, take the combination of C1 and C3 as an example, both moving clockwise for a given receiver. When C4 descends past the horizon, only C1 and C3 in orbit C are visible to the receiver until C1 descends past the horizon, which corresponds to 32.13^{o}. Table 3 illustrates all possible combinations of SVs as well as their corresponding visible regions and percentages. In Table 3, the probability of visibility (POV) is given as the ratio of the visible region to the whole circle since each SV is assumed to move with a constant velocity.
Table 3. Visibility analysis for the fixed inplane GPS receiver, where VI: Visible interval, POV: Probability of Visibility, APOV: Average Probability of Visibility and OX: Orbit X, where X denotes A, B, C, D, E or F
6.1.3 Approximation of visibility
From Table 3 that, one can see that the scenarios for all six orbits are similar. Firstly, the combinations of invisible SVs are exactly the same for all 6 orbits. Secondly, for all six orbits, the 2nd SV, the 3rd SV and the combination of the 1st and 4th SV have similarly the largest visible interval, which corresponds to a POV of approximately 20%. Thirdly, for all orbits, the majority of combinations of the 1st and 3rd SV, the 2nd and 3rd SV, the 2nd and 4th SV, the 1st, 2nd and 4th SV, and the 1st, 3rd and 4th SV have a small POV that is lower than 10%. In other words, even though they are different in some ways, e.g. the combinations of A2 and A3, as well as F 2 and F 3 have about 13% POV, the scenarios for all six orbits are still very similar. Therefore, to simplify the analysis of the POC, the average visible interval and APOV in Table 3, are used for all six orbits. This is equivalent to using the average constellation for one orbit, which is shown in Figure 7, instead of the six constellations which are shown in Figure 6.
Figure 7. Average constellation of all 6 orbits for analysis simplification.
6.2 Theoretical procedure for calculating POC
Since there is no collision between SVs in one orbit, the inorbit 'adjacencies'^{f }do not exist and the number of 'adjacencies' is thus reduced. To calculate the POC: denote by M the number of 'adjacencies' of the desired SV "X"; denote by, , k = 1, 2, 3, 4, the probability of having k 'adjacencies' to "X", which is an a priori probability; denote by, , 1 ≤ j ≤ k, the probability of visibility of j 'adjacencies' to "X" when M = k, which is also an a priori probability; denote by, p_{k }(collisionj visible), the POC under the condition that there are j visible 'adjacencies' to "X" when M = k, which is a conditional probability.
When M = 1 with a probability , the procedure for calculating , which is defined as the POC when there is only one 'adjacency', is as follows: (1) calculate the probability of visibility of this 'adjacency'; (2) calculate the conditional probability p_{1 }(collision1 visible), which is the POC when the 'adjacency' of SV "X" is also visible to the GPS receiver; (3) calculate by removing the condition with respect to the visibility:
Similarly, When M = 2 with a probability , which is defined as the POC when there are two 'adjacencies', can be obtained as
when M = 3 with a probability , which is defined as the POC when there are three 'adjacencies', can be obtained as
When M = 4 with a probability , the procedure for calculating , which is defined as the POC when there are four 'adjacencies' can be obtained as
The overall POC, p_{c}, is represented by removing the condition with respect to M:
6.3 A priori probability
Each SV has a unique allocation of subcarriers, and each subcarrier has different neighboring subcarriers, some of which are coorbital while others are not. We already know that, no collision occurs between coorbital subcarriers. Therefore, the four SVs in one orbit have a different number of 'adjacencies' and correspondingly have different probabilities of collision at any given time. However, all first SVs in each one of the 6 orbits have the same scenario and the same number of 'adjacencies', which we cluster into Category I; all second SVs have the same scenario and the same number of 'adjacencies', which we cluster into Category II; all third SVs have the same scenario and the same number of 'adjacencies', which we cluster into Category III; all fourth SVs have the same scenario and the same number of 'adjacencies', which we cluster into Category IV. All of the SVs are therefore clustered into one of the four categories and are shown in Table 4.
Table 4. 24 SVs are clustered into four categories, each of which contains six SVs
The desired SV would locate in one of these four Categories. The following parts will consider all cases that the desired SV lies in a specific Catogory. In order to obtain the priori probability ,
 the first step is to get the number of the 'adjacency' of the desired SV. Since the number of 'adjacencies' is evidently changing with the Doppler shift of the desired SV, the number of 'adjacencies' will be obtained with the corresponding Doppler interval of the desired SV.
 For the case that the desired SV has one 'adjacency', referring to Table 3, the visiable range of this 'adjacency' in the percentage can be obtained. This value is .
 For the case that the desired SV has two 'adjacencies', referring to Table 3, the visible range of either of two 'adjacencies' can be obtained and this value leads to . And the visible range of both 'adjacencies' obtained by reffereing to Table 3 will lead to .
 For the case that the desired SV has three 'adjacencies', referring to Table 3, the visible range of any of three 'adjacencies' can be obtained and this value leads to . The visible range of any two 'adjacencies' obtained by reffereing to Table 3 will lead to . And the visible range of all three 'adjacencies' obtained by reffereing to Table 3 will lead to .
 For the case that the desired SV has four 'adjacencies', referring to Table 3, the visible range of any of four 'adjacencies' can be obtained and this value leads to . The visible range of any two 'adjacencies' obtained by reffereing to Table 3 will lead to . The visible range of any three 'adjacencies' obtained by reffereing to Table 3 will lead to . And the visible range of all four 'adjacencies' obtained by reffereing to Table 3 will lead to .
The details are presented as follows.
6.3.1 Category I
Let the desired SV be in Category I and be referred to as B1. When B1 suffers from a Doppler shift, , which falls in the interval of [4.75,3.25] kHz, we have four 'adjacencies' to B1 which might collide with B1: SVs A1, A2, A3 and A4. More specifically, because the subcarrier spacing between B1 and A4 is 2 kHz, A4 will completely collide with B1 if the Doppler shift on A4 is . Similarly, A3 will completely collide with B1 if the Doppler shift on A3 is . A2 will also completely collide with B1 if the Doppler shift on A2 is . Finally, A1 will also completely collide with B1 if the Doppler shift on A1 is . When the Doppler shift on B1 falls in the interval of [3.25, 1.25] kHz, A1, A2 and A3 are its 'adjacencies', however, A1 is not capable of colliding with B1 even with the biggest possible Doppler shift. When B1 suffers from a Doppler shift which falls in the interval of [1.25, 0.75] kHz, A3 and A4 are its 'adjacencies'. When B1 suffers from a Doppler shift which falls in the interval of [0.75, 2.75] kHz, only A4 is its 'adjacency'. When the Doppler shift on B1 is in the interval of [2.75, 3.25] kHz, no 'adjacencies' exist and so no collision can take place. Finally, when the Doppler shift on B1 belongs to the interval [3.25, 4.75] kHz, C1 becomes its 'adjacency' and can collide with it. Table 5 shows the number of 'adjacencies' of the desired SV in Category I with respect to .
Table 5. The changing process of the number of 'adjacencies' of the desired SV ''X'' in Category I (i.e. the SV B1) with respect to Doppler shift on the SV ''X''
Referring to the average visible interval, the a priori probabilities can be obtained. Firstly, if , only C1 is the 'adjacency' of B1. Looking into Table 3, C1 is visible in the form of the following four combinations: {C1, C3}, {C1, C4}, {C1, C2, C4}, or {C1, C3, C4}. In total, the visible range for C1 is 8.5% + 23.5% + 5.1% × 2 = 42.2%. Similarly, when , the visible range is also 42.2%. Overall, .
When , there are two 'adjacencies' for B1: A3 and A4. Looking into Table 3, exactly one 'adjacency', A3, is visible in the following three forms: A3 alone, the combinations of {A1, A3} or {A2, A3}. In this case, A3 has a visible range of 37%. Similarly, exactly one 'adjacency', A4, is visible in the following three forms: the combinations of {A1, A4}, {A2, A4}, or {A1, A2, A4}. In this case, A4 has a visibility range of 37.1%. Finally, exactly two 'adjacencies' are visible in the form of the combination of {A1, A3, A4}, which corresponds to a visibility range of 5.1%. Thus, it is concluded that and .
When , there are three 'adjacencies' A2, A3 and A4 of the desired SV B1. Looking into Table 3, exactly one 'adjacency' A2 is visible in the form of A2 alone, which corresponds to a visibility range of 20.1%. Similarly, exactly one 'adjacency' A3 is visible in the form of A3 alone or as a combination of {A1, A3}, which corresponds to a visibility range of 28.6%. Also, exactly one 'adjacency' A4 is visible in the form of the combination of {A1, A4}, which corresponds to a visibility range of 23.5%. Exactly two 'adjacencies' A2 and A3 are visible with a visibility range of 5.1%. Exactly two 'adjacencies' A2 and A4 are visible in the form of the two combinations of {A2, A4} or {A1, A2, A4}, which correspond to a visibility range of 13.6%. Exactly two 'adjacencies' A3 and A4 are visible in the form of the combination of {A1, A3, A4}, which corresponds to a visibility range of 5.1%. Exactly three 'adjacencies' A2, A3 and A4 are always invisible. Thus, it is concluded that , and .
When , there are four 'adjacencies' for B1: A1, A2, A3 and A4. Looking into Table 3, exactly one 'adjacency' is visible in the form of A2 or A3, which corresponds to the visibility range of 40.2%. Exactly two 'adjacencies' are visible in the form of {A1, A3}, {A1, A4}, {A2, A3} or {A2, A4}, which correspond to a visibility range of 48.9%. Exactly three 'adjacencies' are visible in the form of {A1, A2, A4} or {A1, A3, A4}, which correspond to a visibility range of 10.2%. One should note that it is impossible that exactly four 'adjacencies' are visible simultaneously. Thus, it is concluded that , , and .
6.3.2 Category II
Similarly, taking B2 as an example of the desired SV, the number of 'adjacencies' of B2 with respect to is shown in Table 6.
Table 6. The changing process of the number of 'adjacencies' of the desired SV ''X'' in Category II (i.e. the SV B2) with respect to Doppler shift on the SV ''X''
When , only C1 is the 'adjacency' for B2. Similar to Category I, we have . When , there is also only one 'adjacency' to B2: A4. Following a similar analysis, it is concluded that is also equal to . Consequently, the overall a priori probability for M = 1 is also 42.2%.
When , C1 and C2 are its 'adjacencies'. Referring to Table 3, exactly one 'adjacency' C1 is visible in the form of the combinations: {C1, C3}, {C1, C4}, or {C1, C3, C4}, which corresponds to a visibility range of 37.1%. Exactly one 'adjacency' C2 is visible in the form of C2 alone, or in the combinations of {C2, C3} or {C2, C4}, which corresponds to a visibility range of 37%. Exactly two 'adjacencies' are simultaneously visible in the form of the combination of {C1, C2, C4}, which corresponds to a visibility range of 5.1%. Thus, it is concluded that and . When , A3 and A4 are the 'adjacencies' of B2. As analyzed in Category I, the same values of and are obtained. Overall speaking, when M = 2, the a priori probabilities are and .
When , there are three 'adjacencies' A2, A3 and A4 of the desired SV B2. With the same analysis shown in Category I, one can conclude that , and . Because B2 has at most three 'adjacencies', it is evident that .
6.3.3 Category III
Similarly, taking B3 as an example of the desired SV, the number of 'adjacencies' of B3 with respect to is shown in Table 7.
Table 7. The changing process of the number of 'adjacencies' of the desired SV ''X'' in Category III (i.e. the SV B3) with respect to Doppler shift on the SV ''X''
When , only C1 or A4 is the 'adjacency' of the desired SV B3. As shown in Category II, it is obtained that .
When , C1 and C2 are the 'adjacencies' of the desired SV B3. As analyzed in Category II, it is provided that and . When , there are also two 'adjacencies': A3 and A4, and it is shown that also and . Overall speaking, when M = 2, the a priori probabilities are and .
When , C1, C2 and C3 are the 'adjacencies' of the desired SV B3. Referring to Table 3, exactly one 'adjacency' C1 is visible in the form of the combination {C1, C4}, which corresponds to a visibility range of 23.5%. Exactly one 'adjacency' C2 is visible in the form of C2 alone or the combination {C2, C4}, which corresponds to a visibility range of 28.6%. Exactly one 'adjacency' C3 is visible in the form of C3 alone, which corresponds to the visibility range of 20.1%. Exactly two 'adjacencies' C1 and C2 are visible in the form of the combinations {C1, C2, C4}, which corresponds to a visibility range of 5.1%. Exactly two 'adjacencies' {C2, C3} are visible with a visibility range of 8.4%. Exactly two 'adjacencies' C1 and C3 are visible in the form of the combinations of {C1, C3} or {C1, C3, A4}, which correspond to a visibility range of 13.6%. Exactly three 'adjacencies' C1, C2 and C3 are always invisible. Thus, it is concluded that , and . Also since B3 has at most three 'adjacencies', it is evident that .
6.3.4 Category IV
Similarly, taking B4 as an example of the desired SV, the number of 'adjacencies' of B4 with respect to is shown in Table 8.
Table 8. The changing process of the number of 'adjacencies' of the desired SV ''X'' in Category IV (i
When , only C1 or A4 are the 'adjacencies' of B4. As shown in Category III, it is obtained that . When , C1 and C2 are the 'adjacencies' of B4. As shown in Category III, and . When , the SVs C1, C2 and C3 are the 'adjacencies' of B4. As shown in Category III, , and . When , there are four 'adjacencies' C1, C2, C3 and C4 of the desired SV B4, which is the same as the four 'adjacencies' A1, A2, A3 and A4. As shown in Category I, it is obtained that , , and .
6.4 A priori probability
The desired SV would locate in one of these four Categories. The priori probability is different when the desired SV lies in a different Category. In a specific Category,
 the first step is to figure out the Doppler interval when the desired SV has one 'adjacency' and to calculate the probability that the desired SV has a Doppler shift within this interval. This percentage leads to the value of .
 The second step is to figure out the Doppler interval when the desired SV has two 'adjacencies' and to calculate the probability that the desired SV has a Doppler shift within this interval. This percentage leads to the value of .
 The third step is to figure out the Doppler interval when the desired SV has three 'adjacencies' and to calculate the probability that the desired SV has a Doppler shift within this interval. This percentage leads to the value of .
 The last step is to figure out the Doppler interval when the desired SV has four 'adjacencies' and to calculate the probability that the desired SV has a Doppler shift within this interval. This percentage leads to the value of .
The details are presented as follows.
6.4.1 Category I
Looking into Table 5, there is one 'adjacency' when By means of the PDF of the Doppler shift, its integration over the specified interval is obtained as . Similarly, there are two 'adjacencies' when , . There are three 'adjacencies' when , . There are four 'adjacencies' when , .
6.4.2 Category II
Looking into Table 6, there is one 'adjacency' when . Similar to Category I, we have . There are two 'adjacencies' when , . There are three 'adjacencies' when , . Since there are at most three 'adjacencies' for SVs in this Category, .
6.4.3 Category III
Looking into Table 7, there is one 'adjacency' when , we have . There are two 'adjacencies' when , . There are three 'adjacencies' when , . Additionally, .
6.4.4 Category IV
Looking into Table 8, there is one 'adjacency' when , . There are two 'adjacencies' when , . There are three 'adjacencies' when , . There are four 'adjacencies' when , .
6.5 Conditional probability p _{k }(collisionj visible)
The conditional probability is related with the nulltonull bandwidth of each subcarrier, w_{nn}. The smaller the OBI, the bigger the bandwidth, the larger the conditional probability. We consider two cases: (1) the OBI is equal to 1 ms, i.e. the nulltonull bandwidth of each subcarrier is equal to 2 kHz; and (2) the OBI is equal to 20 ms, i.e. the nulltonull bandwidth of each subcarrier is equal to 0.1 kHz.
The desired SV would locate in one of these four Categories. In each Catogory, in order to obtain the conditional probability p_{k }(collisionj visible), the first step is to determine the 'adjacencies' of the desired SV and the corresponding Doppler shifts when any of them is visible. Assuming the center frequency of the desired SV without Doppler shift is at zero, the center frequency of the desired SV after considering Doppler shift can be obtained. Furthermore, the center frequency of the 'adjacencies' of the desired SV safter considering Doppler shift can be obtained based on the subcarrier space of the
transmitting signal of the 'adjacencies' and the desired SV. The POC at a specific Doppler bin of the desired SV can then be calculated based on the nonuniform distribution of the Doppler shift. Finally, based on this POC at a specific Doppler bin, the conditional probability p_{k }(collisionj visible) can be obtained. The details are presented as follows.
6.5.1 Category I
When , C1 is the unique 'adjacency' of B1. Referring to Table 3, the Doppler shift on the visible C1 belongs to the interval [4.75, 4.75] kHz. So, relative to B1 without Doppler, the shifted C1 lies in [8 4.75, 8 + 4.75] kHz since the subcarrier spacing between C1 and B1 is 8 kHz. The shifted B1 obviously lies in [3.25, 4.75] kHz. In other words, wherever B1 shifts, the collision with C1 cannot be avoided, and the magnitude of the collision is determined by w_{nn}. At each , the POC is obtained as , where is the PDF of the Doppler shift on the 'adjacency' C1. However, a different corresponds to a different POC due to the nonuniform distribution of the Doppler shift. Based on the distribution of , denoted by , we have
and
So, the average POC when can be expressed as Equation (18). Based on (18), and on Figures 8, we have p_{1 }(collision1 visible) = {24.3%, 1.42%}.^{g}
Figure 8. Doppler shift f_{D }for a stationary inplane receiver, as a function of γ.
When , there are two 'adjacencies': A3 and A4. If A3 is visible while A4 is not, looking into Table 3, the Doppler shift on A3 is in [4.75, 4,43] kHz and so, relative to B1, A3 lies in [8.75, 0.43] kHz. When , a collision occurs in the same way as above. In this case, the POC is obtained as {27.3%, 1.28%}. Thus, the integrated POC is {22.9%, 1.08%}. If A4 is visible while A3 is not, looking into Table 3, the Doppler shift on A4 is in [4.43, 4, 75] kHz and so, relative to B1, A4 lies in [6.73, 2.75] kHz and the POC is approximately {15.8%, 0.78%}. Considering the relative visibility range, the resulting conditional POC for one visible 'adjacency' is p_{2 }(collision1 visible) = {19.4%, 0.92%}. If both A3 and A4 are visible, they lie respectively in [0.43, 0.75] and [6.75, 6.43] kHz relative to B1. It is evident that B1 may collide with A3 while not with A4. When , no collision occurs. When , the collision occurs with the following probability: {100%, 26.8%}. Finally, the integrated conditional POC for two visible 'adjacencies' is p_{2 }(collision2 visible) = {29.8%, 4.20%}.
When , there are three 'adjacencies': A2, A3 and A4. If exactly A2 is visible, it lies in [7.98, 1.57] kHz, the corresponding POC is {40.6%, 1.90%}. If exactly A3 is visible, it lies in [8.43, 0.43] kHz, and the POC is {18.5%, 0.91%}. If exactly A4 is visible, A4 lies in [6.43, 0.02] kHz, and the corresponding POC is {25.1%, 1.24%}. Taking the visibility range into consideration, the conditional POC for one visible 'adjacency' is p_{3 }(collisionj1 visible) = {26.8%, 1.29%}. When A2 and A3 are visible while A4 is not, A2 lies in [1.57, 1.25] kHz, which leads to the integrated POC {26.0%, 3.75%}. Any other combinations of two visible 'adjacencies' cannot cause collision. Taking the visibility range into consideration, p_{3 }(collision2 visible) = {5.9%, 0.8%}. Additionally, since the condition of three simultaneously visible 'adjacencies' is false, calculating the POC under this condition is meaningless because its contribution to the collision is 0 when removing the condition.
When , there are four 'adjacencies': A1, A2, A3 and A4. When exactly one is visible, A2 and A3 lie in [7.98, 1.57] and [8.43, 2.02] kHz, respectively. So, we have p_{4 }(collision1 visible) = {26.3%, 1.29%}. The scenarios of two visible 'adjacencies' cannot cause collision except for A1 and A4, where A1 lies in [9.98, 3.57]kHz, leading to a collision probability of {43.9%, 2.00%}, and A4 lies in [6.43, 0.02] kHz, leading to a collision probability of {29.9%, 1.46%}. Since no collision occurs between SVs in one orbit, when A1 collides with B1, A4 doesn't. Also, when A4 collides with B1, A1 doesn't. So the POC for such scenario is {73.8%, 3.46%}. Averaged by the visible range, p_{4 }(collision2 visible) = {35.4%, 1.66%}. For the scenario of three visible 'adjacencies' of A1, A2 and A4, A1 lies in [3.57, 3.25]kHz, which provides a collision probability of {20.5%, 2.90%}, while the scenario of A1, A3 and A4 cannot cause collision. So, we have p_{4 }(collision3 visible) = {10.2%, 1.45%}. Additionally, the condition of four simultaneously visible 'adjacencies' is false and its contribution to the collision is 0 when removing the condition.
6.5.2 Category II
When , there is one 'adjacency' A4, and the corresponding POC is equal to {23.8%, 1.57%}. When , there is one 'adjacency' C1, and the POC is {23.5%, 1.49%}. Considering the occurrence probability, 12.2 and 14.5% for and , respectively, the average conditional POC is obtained as p_{1 }(collision1 visible) = {23.6%, 1.53%}.
When , there are two 'adjacencies': C1 and C2. When only C1 is visible, it lies in [1.25, 10.43] kHz relative to B2, and the corresponding POC is {15.7%, 0.77%}. When only C2 is visible, it lies in [3.57, 12.57] kHz relative to B2, and the corresponding POC is {24.8%, 1.15%}. Taking the visibility range into consideration, the resulting POC for one visible 'adjacency' is {20.3%, 0.96%}.
When both C1 and C2 are visible, C2 lies in [3.25, 3.57] kHz, the corresponding POC is {20.5%, 3.00%}, while C1 cannot cause any collisions. So, the resulting conditional POC for two visible 'adjacencies' is {20.5%, 3.00%}. On the other hand, when , there are two 'adjacencies': A3 and A4, and the POC is {19.4%, 0.92%} for one visible 'adjacency' and {26.0%, 3.75%} for two simultaneously visible 'adjacencies'. Also, the occurrence probability for and is 27.8 and 14.5%, respectively. Overall, p_{2 }(collision1 visible) = {20.0%, 0.95%}. and p_{2 }(collision2 visible) = {22.5%, 3.26%}.
When , there are three 'adjacencies': A2, A3 and A4. When only A2 is visible, the POC is {43.9%, 2.00%}. When only A3 is visible, the POC is {18.5%, 0.91%}. When only A4 is visible, the POC is {24.9%, 1.23%}. Thus, we have p_{3 }(collision1 visible) = {27.6%, 1.32%}. When A2 and A3 are visible while A4 is not, the POC is {20.5%, 2.90%}, while other combinations of two SV's being visible cannot lead to a collision. Thus, p_{3 }(collision2 visible) = {4.5%, 0.62%}. Additionally, the condition of three simultaneously visible 'adjacencies' is false, so its contribution to the POC is 0 when removing this condition.
Since the condition of four 'adjacencies' is also false, its contribution to the POC is also 0 when removing this condition.
6.5.3 Category III
When , there is one 'adjacency' A4, and the corresponding POC is equal to {23.5%, 1.49%}. When , there is one 'adjacency' C1, and the POC is {23.8%, 1.57%}. Also, the occurrence probability for and is 14.5 and 12.2%, respectively. So, the average conditional POC is p_{1 }(collision1 visible) = {23.6%, 1.53%}.
When , there are two 'adjacencies': A3 and A4. When only A3 is visible, the POC is {24.9%, 1.13%}. When only A4 is visible, it is {15.7%, 0.77%}. So, the average value is {20.3%, 0.95%}. When both A3 and A4 are visible, the POC is {20.5%, 3.00%}. When , there are two 'adjacencies': C1 and C2. When only C1 is visible, the POC is {15.7%, 0.77%}. When only C2 is visible, it is {24.1%, 1.13%}. Thus, taking the visible range into consideration, we have {19.9%, 0.95%}. When both C1 and C2 are visible, the POC is {20.5%, 3.15%}. Also, the occurrence probability for and is 27.8 and 14.5%, respectively. Overall, the conditional POC is p_{2 }(collision1 visible) = {20.2%, 0.95%} for one visible 'adjacency' and p_{2 }(collision2 visible) = {20.5%, 3.05%} for two visible 'adjacencies'.
When , there are three 'adjacencies': C1, C2 and C3. When only C1 is visible, C1 lies in [2.02, 8.43] kHz relative to B3, and the POC is {32.9%, 1.63%}. When only C2 is visible, C2 lies in [1.57, 10.43] kHz, and the POC is {33.9%, 1.66%}. When only C3 is visible, C3 lies in [3.57, 9.98] kHz, and the POC is {48.2%, 2.37%}. Taking the visibility range into consideration, the corresponding conditional POC can be obtained as p_{3 }(collision1 visible) = {37.6%, 1.85%}. The scenarios of two visible 'adjacencies' cannot cause any collisions except for C2 and C3, where C3 lies in [4.75, 4.43] kHz. This leads to a POC {20.5%, 3.12%}. Taking the visibility range into consideration, we have p_{3 }(collision2 visible) = {4.5%, 0.67%}. Additionally, the condition of three simultaneously visible 'adjacencies' is false, so its contribution to the POC is 0 when removing this condition.
Since the condition of having four 'adjacencies' is false, its contribution to the POC is 0 when removing this condition.
6.5.4 Category IV
When , there is one 'adjacency' A4, and the corresponding POC is equal to {24.3%, 1.42%}. When , there is one 'adjacency' C1, and the POC is {24.1%, 1.64%}. Also, the occurrence probability for and is 27.8 and 13.5%, respectively. Similarly to the above, the conditional POC is p_{1 }(collision1 visible) = {24.2%, 1.50%}.
When , there are two 'adjacencies': C1 and C2. When only C1 is visible, the POC is {15.8%, 0.78%}. When only C2 is visible, it is {23.1%, 1.10%}, respectively. Thus, taking the visible range into consideration, we have {19.4%, 0.94%}. When both C1 and C2 are visible, the POC is {16.0%, 4.61%}. Similarly, we have p_{2 }(collision1 visible) = {19.4%, 0.94%] and p_{2 }(collision2 visible) = {16.0%, 4.61%}.
When , there are three 'adjacencies': C1, C2 and C3. When only C1 is visible, C1 lies in [0.02, 6.43] kHz relative to B4, and the POC is {25.1%, 1.24%}. When only C2 is visible, C2 lies in [0.43, 8.43] kHz, and the POC is {18.5%, 0.91%}. When only C3 is visible, C3 lies in [1.57, 7.98] kHz, and the POC is {41.0%, 1.94%}. Taking the visibility range into consideration, the conditional POC is p_{3 }(collision1 visible) = {26.9%, 1.30%}. The scenarios of two visible 'adjacencies' cannot cause any collisions except for C2 and C3, where C3 lies in [1.25, 1.57] kHz. This leads to a POC {26.0%, 4.02%}. Taking the visible range into consideration, p_{3 }(collision2 visible) = {9.1%, 1.42%}. Additionally, the condition of three simultaneously visible 'adjacencies' in this case is false and its contribution to the POC is equal to 0 when removing this condition.
When , there are four 'adjacencies': C1, C2, C3 and C4. When exactly one is visible, C2 and C3 respectively lie in [2.02, 8.43] and [1.57, 7.98] kHz. So, we have p_{4 }(collision1 visible) = {26.3%, 1.30%}. The scenarios of two visible 'adjacencies' cannot cause any collisions except for C1 and C4, where C1 lies in [1.98, 4.43] kHz. This leads to a POC {30.0%, 1.46%}, respectively. Taking the visible range into consideration, we have p_{4 }(collision2 visible) = {14.4%, 0.70%}. For the scenario of three visible 'adjacencies' of C1, C3 and C4, C4 lies in [3.25, 3.57] kHz, which provides a POC {20.5%, 3.12%}, while the scenario of C1, C2 and C4 cannot cause any collisions. So, p_{4 }(collision3 visible) = {10.3%, 1.56%}. Additionally, the condition of four simultaneously visible 'adjacencies' is false and its contribution to the POC is 0 when removing this condition.
6.6 Probability of collision
6.6.1 Observation interval: 1 ms
For 6 SVs in Category I, the a priori probabilities are , , , and , respectively. The POC for Category I is therefore obtained as . Similarly, for 6 SVs in Category II, the a priori probabilities are , , , and , respectively. The POC for Category II is therefore obtained as . For 6 SVs in Category III, the a priori probabilities are , and respectively. The POG for Category III is therefore obtained as . For 6 SVs in Category IV, the a priori probabilities are , , , and , respectively. The POC for Category IV is therefore obtained as .
The overall POC can therefore be obtained by taking the average of since they are equally probable:
Without loss of generality, assuming that there are eight visible SVs for a certain GPS receiver, the probability that there exist at most 3 visible noncollision SVs is
where denotes the number of combinations of choosing k out of eight SVs. Therefore, the probability that there exist at least four visible noncollision SVs can be given by
In other words, the probability for successful positioning is equal to 99.61%.
6.6.2 Observation interval: 20ms
By following a similar analysis to the previous section, one can show that it is obtained that , and that, the overall POC p_{c }= 0.89%. Once again, assuming that there are eight visible SVs for a certain GPS receiver, the probability that there exist at most three visible noncollision SVs is P_{pc }≈ 3 × 10^{9}. Therefore, the probability that there exist at least four visible noncollision SVs is
In other words, the probability for successful positioning is approximately equal to 100%.
7 Numerical results
In this section, the theory proposed above is demonstrated by numerical simulations. To verify the SNR gain, Two signals are used for demonstration: a MC code defined by (1) and (2) and the C/A code, where the MC code contains N = 1024 subcarrier slots and one period of the C/A code contains 1, 023 chips. Both signals have an equal energy ξ and an equal nulltonull bandwidth 2B = 2.048 MHz. The signal duration, T_{s}, is selected as 1.023 ms for both signals.
To test the effect of NBI and Doppler shift to the reception of the proposed MC codes, a computer orbit generation program is employed. In this orbit generation program, the configuration for the numerical results consists of 24 SVs in six circular orbits (eccentricity 0), four SVs in each circular orbit arranging as Figure 6. The six planes are set to have a uniformly 55^{o }inclination (tilt relative to Earth's equator) and to be separated by 60^{o }right ascension of the ascending node (angle along the equator from a reference point to the orbit's intersection). And, the orbit altitude is set as 20, 200 km. The GPS receiver in our computer program is located at Calgary, Canada (51^{o}N and 114^{o}W), Washington, DC (39^{o}N and 77^{o}W), London, UK (51^{o}N and 0^{o}W) and Melbourne, Australia (37^{o}S and 144^{o}E), respectively.
7.1 SNR gain
Figure 9 compares the MC code with the C/A code for range estimation in terms of their CRLB and their maximum likelihood estimators (MLE) by displaying the root mean square error (RMSE) in meter versus SNR in order to demonstrate the proposed theory in (7). Consistent with the theoretical analysis, for a fixed ranging accuracy, the required SNR for the MC code is lower than that for the C/A code by approximately 4.73 dB, indicating a 4.73 dB SNR gain using the proposed MC code compared to the current C/A code. This SNR gain is significant for GPS downtown positioning, tunnel positioning and even indoor positioning where the current GPS signal is too weak to detect. This result demonstrates that approximation (a) used in (4)(7) is a good approximation when N = 1024. Furthermore, Figure 9 shows that the MLE attains the corresponding CRLB at most SNR values in the asymptotic region [22]. One note to be pointed out that the MLE at certain SNR looks lower than its corresponding CRLB because the iteration in Monte Carlo simulation is not sufficient. In theory, the MLE at all SNR values in the asymptotic region must exactly attain its corresponding CRLB.
Figure 9. CRLB and MLE for range estimation for the proposed MC code and the C/A code.
7.2 Robustness against NBI
Figure 10 shows the simulation result for the probability of successful positioning P_{s }versus M NBIs, where the proposed MC code is used for 24 SVs, M = 1, 2, ..., 8 and each NBI is referred as a frequency tone [21]. This statistic is an average value of all measures in approximately 12 h, where each observation duration is 1 ms while the interval between two observations is 1 s. One can see that four numerical results in Figure 10, corresponding to GPS receivers at four different locations, are all approximately consistent with the proposed theory in (10), which have a similar performance against NBIs. One can also see that, even with 8 existing NBIs, the probability of successful positioning is still above 95%, indicating its robustness against NBI.
Figure 10. Probability of successful positioning, P_{s}, under multiple NBIs, M.
7.3 Probability for successful positioning under Doppler effects
Figures 11 and 12 show simulation results of the probability of successful positioning P_{s }versus the SV ID S_{ID}. Even though the GPS receiver at each of four location can only simultaneously see 4 to 12 SVs, it can communicate with all 24 SVs when considering all the observation time. The OBI is selected as 1 ms in Figure 11 and 20 ms in Figure 12, respectively. It is noticed that all four GPS receivers at four different locations have a similar performance against Doppler shift. Furthermore, all 24 SVs also have a similar probability of successful positioning for both cases. The average probability of successful positioning for 24 SVs, seen from Figure 11, is approximately 99.58%, equal to the theoretical value of 99.61% as given in (21). For the case of 20 ms OBI, the average probability of successful positioning for 24 SVs, seen from Figure 12, is approximately 99.9996%, equal to the theoretical value of 100% as given in (22).
Figure 11. Probability of successful positioning, P_{s}, under Doppler effects, where the observation interval is selected as 1 ms.
Figure 12. Probability of successful positioning, P_{s}, under Doppler effects, where the observation interval is selected as 20 ms.
8 Conclusion and future work
The unfiltered MC modulation has been proposed as an alternative for the GPS C/A code in this article. As per our arrangement, each SV takes up only 42 uniformly spaced subcarrier slots while approximately occupying the same bandwidth as the C/A code in GPS. In this way, the proposed MC code was shown to attain a 4.73 dB SNR gain in terms of range estimation compared to the current C/A code. This 4.73 dB SNR gain is significant and possibly helpful for GPS downtown's positioning, tunnel's positioning and even indoor positioning. The transmission and reception of the proposed MC code for the nextgeneration GNSS are provided in detail, and the range estimation using the proposed MC code is explained. Furthermore, the proposed MC code was shown to be robust against NBI by considering four GPS receivers at different locations, which is also one of the current GPS's disturbing things to overcome. Moreover, the POC and probability of successful positioning under Doppler shifts are thoroughly analyzed in theory and justified by computer simulations. It was shown that the Doppler shift has a negligible effect on the probability of successful positioning when using the proposed MC code as the GPS probing signal. To sum up, from the authors' best knowledge, the proposed MC code could be regarded as an available probing signal for the future nextgeneration GPS.
However, the dangerous adjacencies, affecting the POC value under Doppler shift, do depend on the strategy adopted to assign the set of subcarriers to the SVs. Our proposed arrangement results in no collision between groups of MC codes that are transmitted by SVs in one orbit. But we have no idea whether it is the best arrangement or not in terms of POC. The future work will focus on the optimization of the subcarrier arrangement for SVs.
Competing interests
The authors declare that they have no competing interests.
Appendix 1
Doppler shift for an inplane GPS receiver
Without loss of generality, let us assume that a GPS receiver resides on the surface of the earth at a point R with 2D cartesian coordinates (0, r) as shown in Figure 13a, where r is the radius of the earth, and SV rotates around the earth in the XYplane. In this case, the Doppler shift due to the SV motion is given by
Figure 13. Visible range of an inplane GPS receiver in terms of one SV (a) The visible region for a stationary inplane GPS receiver, and (b) the triangle ΔOR(SV ).
where v is the speed of SV, i.e. 3.874 km/s; c is the speed of light; f_{L1 }is the carrier frequency of the coarse acquisition (CA) code, i.e. 1575.42 MHz [12]; and θ is the angle between SV's forward velocity and the line of sight from SV to the receiver as shown in Figure 13a. Consider the maximum Doppler shift case, which happens at a point S when SV ascends past the horizon of the receiver. In this case, the radial velocity at R is 0.9 km/s [23] and the resulting maximum Doppler shift is 4.726 kHz. Similarly, the minimum Doppler shift is 4.726 kHz which occurs at a point D when SV descends past the horizon of the receiver. It is also interesting to note that θ changes from 76.5^{o }when ascending past the horizon at point S to 103.5^{o }when descending past the horizon at point D.
Since the angle, ϕ_{1}, corresponding to the ascending node S, is 13.5^{o }and the angle, ϕ_{2}, corresponding to the descending node D, is 166.5^{o}, as shown in Figure 13a, the angle, α, corresponding to the arc that is visible to R in the orbital plane of SV, is 153^{o}. In Figure 13b, the triangle ΔOR(SV) is used to obtain the distance, d, between SV and the receiver, as
where r is the radius of the earth; h is the height of SV from the earth, and γ is referred to as the central angle of SV which is ∈ [13.5^{o}, 166.5^{o}] in the visible region to R. Based on (24) and from Figure 13b, one can obtain the angle θ from
In other words, the Doppler shift can be expressed as a function of γ as follows
Since SV travels in a constant speed, v, the Doppler shift, f_{D}, can be expressed as a function of time as follows:
where
where w is the angular velocity of SV obtained as . Figure 8 shows the Doppler shift f_{D }as a function of γ, where it is noticed that, the closer the position of SV to the zenith of the receiver, the smaller the Doppler shift; and, the farther the position of SV to the zenith of the receiver, the larger the Doppler shift.
Appendix 2
Visible region in the orbital planefor an off plane GPS receiver
This section investigates the case when the stationary GPS receiver resides on the surface of the earth at a point R which does not lie on the same orbital plane as SV. In this case, the visible arc of the orbit of SV is which together with line PQ encloses the shadowed part of Figure 5a. In Figure 5a, the plane RPQ is the tangent plane to the earth surface passing through R; PQ is the intersection between the tangent plane RPQ and the orbital plane; OI ⊥ PQ at point I; R_{p }is the intersection between OI and the earth surface, which is the point intersecting the orbital plane of SV and the shortest arc along the earth surface from R to the orbital plane; q is the shortest distance from the origin O to PQ; α is the angle ∠POQ, corresponding to the visible arc and β is the elevation angle, ∠ROI. From Figure 5a, we have
Thus, the angle α can be expressed as a function of the elevation angle β as
for β ≤ 76.1^{o}. As shown in Figure 5b, the maximum value of α, 153^{o}, occurs when β = 0^{o}, i.e. when the receiver lies in the orbital plane of SV; while α = 0^{o }occurs when β ≥ 76.1^{o}, i.e. when the receiver cannot see SV on the orbit. It can also be shown that the average value of α is 137^{o }which occurs when β = ± 49^{o}.
Endnotes
^{a}The C/A code can mitigate NBI by up to 30 dB when the OBI is as usual 1 ms due to the processing gain. Even when the OBI is increased to its maximum 20 ms, the processing gain only comes up to 43 dB [21]. When the receiver is in close proximity to the jammer and the NBI is larger than the processing gain, the positioning performance is poor. ^{b}Here, 2.048 MHz instead of 2.046 MHz is used for calculation convenience. ^{c}If the number of SVs in GPS increases, the number of occupied subcarriers by each SV will get reduced but the designed MC code is similar. ^{d}Doppler shift due to SV motion has a negligible effect on the reception of the MC code, which will be analyzed in detail in Section 6. ^{e}Only the mainlobe of the subcarrier is taken into consideration because the majority of signal energy locates in this area. Interfering on the sidelobe by NBI does not affect the probing signal significantly. ^{f}The 'adjacencies' is defined as the SV which in the frequency domain are close to "X" and can possibly collide with "X". ^{g}This representation denotes p_{1 }(collision1 visible) = 24.3% when the OBI is equal to 1 ms and p_{1 }(collision1 visible) = 1.42% when the OBI is equal to 20 ms. For convenience, we use this representation throughout this article.
Acknowledgements
This work is supported by the Alberta Informatics Circle of Research Excellence (iCORE), the Natural Sciences and Engineering Research Council of Canada (NSERC), the Canada Research Chair (CRC) Program, TRLabs and the CellLoc Location Technologies Inc. Canada.
References

L Dai, Z Wang, J Wang, Z Yang, Positioning with OFDM signals for the nextgeneration GNSS. IEEE Trans Consum Electron 56, 374–379 (2010) (doi:10, 2010), . 1109/TCE.2010.5505942

J Li, G Liao, O Shan, Joint frequency ambiguity resolution and accurate timing estimation in OFDM systems with multipath fading. EURASIP J Wirel Commun Netw 2006, 1–7 (2006) (doi:10, 2006), . 1155/WCN/2006/62173

CN Kishore, VU Reddy, Robust OFDM timing synchronisation in multipath channels. EURASIP J Wirel Commun Netw 2006, 1–8 (2006) (doi:10, 2006), . 1155/WCN/2006/8614

C Williams, S McLaughlin, MA Beach, Robust OFDM timing synchronisation in multipath channels. EURASIP J Wirel Commun Netw 2008, 1–12 (2008) (doi: 10, 2008), . 1155/2008/675048

L Hanzo, M Munster, B Choi, T Keller, OFDM and MCCDMA for Broadband Multiuser Communications, WLANs, and Broadcasting (Wiley, West Sussex, 2003)

U Tureli, D Kivanc, H Liu, Experimental and analytical studies on a highresolution OFDM carrier frequency offset estimator. IEEE Trans Veh Technol 50, 2 (2001)

U Tureli, H Liu, M Zoltowski, OFDM blind carrier offset estimation: ESPRIT. IEEE Trans Commun 48, 9 (2000)

J Li, M Kavehrad, Effects of time selective multipath fading on OFDM systems for broadband mobile applications. IEEE Commun Lett 3, 12 (1999)

D Wang, M Fattouche, OFDM transmission for timebased range estimation. IEEE Signal Process Lett 17, 6 (2010)

D Wang, M Fattouche, Multipath mitigation for LOS TBRE using NDB OFDM transmission and phase correlation. IET Electron Lett 46, 21 (2010). Publisher Full Text

F Zanier, M Luise, Fundamental issues in timedelay estimation of multicarrier signals with applications to nextgeneration GNSS. Proceedings of The 10th Workshop on Signal Processing for Space Communications (SPSC), Rhodes Island, 1–8 (2008)

P Misra, Global Positioning System: Signals, Measurements, and Performance, ed. by 2 (GangaJamuna Press, Massachusetts, 2006)

A Leick, GPS Satellite Surveying (Wiley, New Jersey, 2004) 3rd end

E Kaplan, C Hegarty, Understanding GPS: Principles and Applications, 2nd edn. (Artech House, Boston, 2005)

B Parkinson, J Spilker, Global Positioning System: Theory and Applications (American Inst. Aeronautics, Washington DC, 1996)

S Kay, Fundamentals of Statistical Signal Processing: Estimation Theory, 2nd edn. (PrenticeHall, Upper Saddle River, 1998)

T Logsdon, The NAVSTAR Global Positioning System (Van Nostrand Reinhold, New York, 1992)

MS Braasch, AJ Dierendonck, GPS receiver architectures and measurements. Proc IEEE 87, 1 (1999)

M Dinesh, S Yongcheol, S Ryosuke, GPS signal acquisition and tracking an approach towards development of softwarebased GPS receiver. Proceedings of The Institute of Electronics, Information and Communication Engineers, Technical Report of IEICE, German (2006)

D Manandhar, Y Suh, R Shibasaki, GPS signal acquisition and tracking: an approach towards development of softwarebased GPS receiver. IEICE, Tech Rep ITS200416 (2004)

Z Ponos, M Dukic, Analysis of GPS receiver antijamming characteristics. IEICE Trans Commun E83B, 10 (2000)

F Athley, Threshold region performance of maximum likelihood direction of arrival estimators. IEEE Trans Signal Process 53, 4 (2005)

D John, R John, B Robert, R Chris, Manual of Geospatial Science and Technology (CRC Press, Boca Raton, 2002)