Abstract
The former Galileo Commercial Service (CS) will provide a High Accuracy Service (HAS) and a Commercial Authentication Service (CAS). The first will disseminate free Precise Point Positioning (PPP) corrections through the E6-B signal whereas the second will provide authentication capabilities through the E6-C pilot component that will be encrypted. For this reason, improved processing strategies for data-only processing need to be investigated. The combined use of Kalman filtering and noncoherent integrations is analyzed in this work. A Software Defined Radio (SDR) receiver has been developed and used for the analysis. Different scenarios were considered including simulated data with decreasing Carrier-to-Noise Power Spectral Density Ratio (C/N0) levels and live static and dynamic data collected under harsh environments. It emerges that the use of Kalman filtering with extended noncoherent integrations is an effective approach to improve the performance of data-only processing.
1 INTRODUCTION
With the Commercial Service (CS) implementing act (European Commission, 2018), the European Commission established that Galileo will provide a free High Accuracy Service (HAS) enabling decimeter-level positioning through the provision of Precise Point Positioning (PPP) corrections. These corrections will be transmitted on the E6-B data components of the E6 signal with centre frequency 1278.85 MHz (European Union, 2016, 2019). At the same time, the E6-C pilot component will be encrypted for authentication purposes. Although the presence of the pilot component can provide increased tracking performance (Curran & Melgard, 2016; Gohler et al., 2016), several strategies, based on extended integration times, can be adopted to enhance the sensitivity of data-only tracking schemes (Borio & Susi, 2018, 2019; O’Driscoll, Petovello, & Lachapelle, 2011).
These high-sensitivity techniques are of paramount importance for HAS applications that require continuous carrier phase tracking to provide a continuous service.
The Galileo E6-B signal is currently one of the Global Navigation Satellite System (GNSS) modulations with the highest symbol rate with a symbol duration equal to 1 ms (European Union, 2016). This high data rate limits the coherent integration time to 1 ms (European Union, 2016). While this integration time can be extended by using external information about data symbols (Zhang & Gao, 2015), other approaches should be adopted when the receiver is working in a stand-alone mode (Borio & Susi, 2018, 2019).
Noncoherent integrations (Del Peral-Rosado, López-Salcedo, Seco-Granados, López-Almansa, & Cosmen, 2010) represent a potential solution for increasing the integration time where the data symbols are removed through complex squaring, which preserves phase information. After this operation, the integration time can be further extended. This approach has been adopted along with standard tracking loops in Borio and Susi (2018, 2019) where the benefits of noncoherent integrations for data-only processing were analyzed for the Galileo E6-B signal.
While, noncoherent integrations are effective for mitigating the impact of noise, additional processing strategies have to be adopted to compensate for possible signal dynamics and oscillator-induced effects. For this reason, in Borio and Susi (2018, 2019), frequency aiding from the E1-C channel has been implemented. While noncoherent integrations boost the post-correlation Signal-to- Noise Ratio (SNR), aiding from other channels reduces the impact of dynamics and allows the usage of narrow loop bandwidths. In this paper, a different approach is investigated and noncoherent integrations are used in conjunction with a Kalman Filter (KF) that replaces the Phase Lock Loop (PLL) and Delay Lock Loop (DLL) filters of the standard tracking loops. The KF has been selected for its adaptive nature, which is particularly indicated under variable conditions, for instance when deep signal fading and variable dynamics are present (Vila-Valls, Closas, Navarro, & Fernandez-Prades, 2017).
The joint use of noncoherent integrations and KF was considered in Del Peral-Rosado et al. (2010) for increasing the sensitivity of receivers processing GPS L1 Coarse/Acquisition (C/A) signals. This approach was, however, analyzed using only simulated data. Moreover, the KF was tailored to the GPS L1 signal. In this paper, the approach is adapted to the Galileo E6-B modulation and thoroughly analyzed using real data. Also, a different system model has been considered. More specifically, the KF used in Susi, Andreotti, Aquino, and Dodson (2017) was adapted to the Galileo E6-B case.
Development and analysis have been performed by exploiting a Software Defined Radio (SDR) receiver capable of processing E6-B and E6-C signals. The E6-B noncoherent KF has been compared to standard tracking and to pilot-only tracking strategies. For pilot processing, a KF-based tracking architecture was also implemented.
For the analysis, both hardware simulated and real data have been exploited. Simulated data was used to assess the sensitivity of the different tracking strategies by generating E6-B/C signals with power decreasing in a controlled manner. Real tests included static scenarios with obstructions from nearby buildings and dynamic tests in suburban environments, where the presence of buildings and foliage renders the signal reception challenging. Results obtained using pilot processing are provided as a comparison term. While performance obtained using pure pilot processing cannot be matched by data-only processing, the use of noncoherent integrations improves receiver sensitivity and makes tracking loops able to maintain signal lock also in challenging conditions such as in the presence of multipath and fading.
Finally, a dynamic test was also conducted under challenging conditions: the results obtained using the SDR receiver were compared with the ones given by a Commercial Off-The-Shelf (COTS) receiver that was used as a benchmark. The results discussed in this paper show the advantage of using the proposed tracking architecture to enhance the sensitivity of data-only tracking.
This paper is an extended version of Susi and Borio (2019) presented at the ION 2019 GNSS+ conference. With respect to Susi and Borio (2019), this paper provides a more complete description of the SDR receiver and of the different processing stages implemented. In addition to this, a theoretical analysis of the carrier and code discriminator outputs in the presence of noncoherent integrations is provided. Theoretical results are supported by experimental results.
The remainder of this paper is organized as follows. Section 2 provides an overview on the Galileo E6-B/C signal and introduces the signal model adopted for the development of KF tracking. Section 3 details the different functional blocks implemented at the tracking stage whereas Section 4 introduces the KF filter implemented. Section 5 analyzes the code and carrier discriminator variances used as input of the KF. Section 6 describes the tracking strategies analyzed and the experimental setup adopted for the data collections. Experimental results are discussed in Section 7 while Section 8 draws final conclusions.
2 SIGNAL MODEL
A GNSS receiver collects signals from several satellites and processes them in an independent way leveraging the properties of Direct Sequence Spread Spectrum (DSSS) modulations. Independent processing of different signals is based on the quasi-orthogonality of the codes used to modulate the different signal components. For this reason, signals from a single satellite are considered in the following. The continuous signal received from a single satellite can be modelled as the sum of L useful components and can be expressed as (Kaplan & Hegarty, 2005):
1
where L is the total number of signals transmitted by the satellite. The terms, ej(t), represent the different GNSS baseband signal components modulated by a spreading code and carrying the navigation message. For each signal component identified by the subscript j, Cj is the received power and fRF,j is the central frequency, whereas τj, ϕj, and fj are the code delay, the carrier phase, and the Doppler shift introduced by the propagation channel. Finally, n(t) is a zero mean Additive White Gaussian Noise (AWGN) introduced by the propagation channel and with spectral density N0. The ratio between the signal power, Cj, and N0, defines the Carrier-to-Noise Power Spectral Density Ratio (C/N0), one of the main signal quality indicators used in GNSS signal processing. When only the Galileo E6-B/C signals are considered, signal (1) can be expressed as (European Union, 2016):
2
This signal is given by the combination of a pilot and data component, which are characterized by the same power so that
3
Both data and pilot components are Binary Phase Shift Keying (BPSK) modulated. The data component can be expressed as:
4
where dE6-B(t) is the navigation message with a data rate of 1 ksymbol/s and cE6-B(t) is the spreading code with a 5.115 Mchip/s rate. The pilot component can be expressed as:
5
where cE6-B(t) is the primary spreading code with a 5.115 Mchip/s rate anda1msduration while sE6-C(t) is the secondary spreading code leading to a tiered spreading code of length equal to 100 ms. The E6-B/C spreading codes can be found in European Union (2019).
Continuous signal (2) is amplified, filtered, down-converted to the baseband, and sampled by the receiver front end, which provides the following digital complex sequence:
6
where is the sampling interval used by the front end to digitize the signal and n is the discrete time index. The symbol ̃⋅ is used to denote the impact of the receiver front end on the useful signal components. When only the data component is considered, Equation (6) finally becomes:
7
After digitalization, the signal is processed by the acquisition stage that has the goal to provide coarse estimates of the signal code delay and Doppler shift, τ0 and f0. These estimates are then refined by the tracking stage that also determines the signal carrier phase. In addition to this, the receiver tracking stage has the purpose to provide a dynamic estimate of the above parameters, following their temporal variations. In this paper, a standard acquisition approach (Kaplan & Hegarty, 2005) is adopted. For this reason, acquisition is not further detailed. The selected tracking stage is detailed in the next section.
3 TRACKING STAGE
In this paper, a software Matlab receiver has been implemented. The receiver implements different processing strategies including KF tracking with noncoherent integrations. A general representation of the tracking loops implemented for the processing of the Galileo E6-B signal is shown in Figure 1.
Independently from the strategy adopted, input signal (7) is correlated with local carrier and code replicas. This is a standard process that leads to the Prompt, Early, and Late correlator outputs (Kaplan & Hegarty, 2005):
8
where , fd, and are the current estimates of the code delay, Doppler frequency, and carrier phase. ds is the Early-minus-Late chip spacing. In Equation (8), N samples are combined together to form a correlator output. The integration over N samples effectively down-samples the original signal, y[n]. In particular, the index k in Equation (8) is used to denote the different correlators produced over time. The sampling interval of the correlators is equal to Tc = NTs and defines the coherent integration time. It is possible to show (Del Peral-Rosado et al., 2010; Van Dierendonck, 1996) that the correlator outputs can be effectively modelled as
9
where R(.) is the BPSK correlation function and
10
are the residual delay and phase errors. In Equation (9), the impact of residual frequency errors is neglected in order to simplify the notation. A sinc term depending on the residual frequency error should be introduced in order to account for the effect of the residual Doppler frequency (Del Peral-Rosado et al., 2010; Van Dierendonck, 1996).
In Equation (9), the three correlator outputs are modulated by the E6-B navigation message defined in Equation (4) and assumed constant over the coherent integration time:
11
Moreover, three noise terms are present. These terms are obtained from the processing of the input noise, η(nTs), in Equation (6). They will be better analyzed in Section 5.
The Galileo E6-B navigation message limits the coherent integration time, and a nonlinear operation is required to remove its impact. This operation is performed through squaring as shown in Figure 1. After squaring, the integration process can continue and extended correlators are obtained (Borio & Lachapelle, 2009):
12
In order to simplify the notation, the temporal index for the extended correlators has been omitted in Equation (12). At each loop update, a new set of correlators is, however, produced. The extended correlators are obtained by combining signal samples over a total duration equal to
13
which also defines the update rate of the loop.
The extended correlators are passed to the code and carrier discriminators. In this paper, we used the following discriminators:
14
and
15
Carrier discriminator (14) is an extension of the standard Costa loop discriminator (Borio & Lachapelle, 2009; Kaplan & Hegarty, 2005; Van Dierendonck, 1996), and the factor 1/2 considers the fact that phase errors are doubled through squaring. Equation (18) is a generalization of the normalized early-minus-late envelope discriminator. The square roots present in Equation (18) are required to compensate for the effect of squaring in Equation (12).
In standard tracking loops (Kaplan & Hegarty, 2005; Van Dierendonck, 1996), the discriminator outputs are fed to two independent loop filters. The output of such filters is then used to control the Numerically Controlled Oscillators (NCOs) that generate the new local code and carrier replicas and close the processing loop. This process is shown in Figure 1 with dashed lines and dashed boxes. This convention has been used to indicate that, in this work, standard tracking loop filters have been replaced by a single KF, which is better detailed in the next section.
The full software receiver used for the analysis implements several processing options and transitions between different processing stages depending on the output of a Frequency Lock Indicator (FLI) and a Phase Lock Indicator (PLI) (Kaplan & Hegarty, 2005; Van Dierendonck, 1996). These processing stages are shown in Figure 2a): after acquisition the receiver uses a standard DLL and a Frequency Lock Loop (FLL). When the FLI indicates that frequency lock has been achieved, the FLL is replaced by a standard PLL. Finally, when the PLI indicates that also phase lock has been achieved, KF tracking is started. Only at this stage, standard loop filters are replaced by the KF. Figure 2b) shows the normalized code and carrier Doppler produced by the standard loop filters and the KF: the transition between the two stages can be clearly distinguished. The KF implicitly performs carrier smoothing with a single Doppler state variable. This leads to very smooth code Doppler estimates. More details are provided in the next section.
4 KALMAN FILTER TRACKING
Being an adaptive filter, the KF is particularly indicated under harsh and variable working conditions. In addition to this, the KF is an optimum filter in the Minimum Mean Square Error (MMSE) under the assumption of additive Gaussian noise (Kalman, 1963). This assumption is approximately true for the architecture considered here and under high/medium C/N0 conditions. In particular, the carrier and code discriminator outputs can be approximated as Gaussian random variables for high/medium C/N0 conditions. When the C/N0 drops, the Gaussian approximation is no longer valid and the KF does not operate under optimal conditions.
As a consequence, the filter can be subjected to poor performance or divergence. To overcome this issue, a possible solution is to use an Extended Kalman Filter (EKF) (e.g., Del Peral-Rosado et al., 2010; Vila-Valls et al., 2017; Vila-Valls, Brossier, & Ros, 2010; Vila-Valls, Ros, & Brossier, 2012). The latter has the advantage to directly cope with nonlinear Gaussian observation models by implementing a linearization process. Specifically, this approach allows dealing with measurements that are not linearly dependent on the state vector and with nonlinear dynamics (Vila-Valls et al., 2017). Therefore, the complex signal samples can be directly input to the EKF without the necessity of a discriminator (Vila-Valls et al., 2017). In this way, it is possible to avoid the saturation and noise amplification effects, which can be produced by classical discriminators operating in the presence of very weak signals (Del Peral-Rosado et al., 2010), as shown in Figure 3a.
The latter figure compares the empirical probability density functions (pdfs) estimated for the output of a Costas arctangent discriminator without noncoherent integrations and for a pure four-quadrant arctangent discriminator used for pilot processing. The pdfs have been estimated using real data collected under low C/N0 conditions. In the Costas case, the data carrier discriminator output does not follow a Gaussian distribution, and the optimality conditions for KF processing are violated. On the contrary, given the larger phase discrimination range of a pure four-quadrant arctangent, the pilot carrier discriminator output is able to maintain a pdf that is approximately Gaussian at lower C/N0 conditions.
In order to be able to use the classical KF, the validity range of the Gaussian approximation can be extended by increasing the equivalent SNR at the discriminator input. This operation is performed using noncoherent integrations that are effective in restoring the optimality working conditions of the KF. This fact is highlighted in Figure 3b) that shows the empirical pdf obtained when 20 noncoherent integrations are used along with the discriminator in Equation (14). In this case, the data carrier discriminator output approximately follows a Gaussian distribution. This result is the main justification for combining together noncoherent integrations and KF.
The KF is based on the design of a dynamic system model, which is used to predict and estimate the time evolution of the parameters of interest. This prediction is then corrected by using actual measurements.
In this research work, the KF states are a four-dimensional vector composed of the code delay error, the carrier phase error, the carrier Doppler frequency, and the Doppler rate errors as in Susi et al. (2017). This model has been widely used in the literature. The state vector can be expressed as:
16
where Δτ and Δϕ are the code delay and carrier phase errors defined in Equation (10). Δf is the residual Doppler frequency shift, and Δa is the Doppler frequency rate correction.
The system dynamic model, which defines the state evolution by providing the state vector at the instant (k + 1), is defined as:
17
where Ak is the following transition matrix
18
with β indicating the factor converting cycles in unit of code chips and Tu indicating the loop update rate.
The term wk in Equation (18) indicates an additive zero mean and uncorrelated Gaussian noise process, which can be expressed as:
19
where Qk is the discrete transition noise covariance matrix modelling the noise of the state elements. Assuming that the noise affecting the elements of the state vector is due to independent sources, Qk can be defined as a diagonal matrix where the diagonal elements are the spectral densities of the process noises. In this case, Qk has been defined as in Macchi et al. (2010).
As previously mentioned, the KF corrects the prediction performed using the system model by exploiting the noise of the actual measurements, which are, in this case, the output of the code and carrier discriminators.
The measurement model can be expressed as
20
where is the vector including the code and carrier discriminator outputs, which represent the estimates of the code and phase errors over the time of integration. Hk is the observation matrix mapping the filter states into the measurements, and it is defined as follows
21
vk ∼ N(0,Rk) is the zero mean and uncorrelated Gaussian noise affecting the measurements.
Specifically, considering the code and carrier measurements as independent variables, Rk can be represented as a diagonal matrix having as diagonal elements the carrier and code noise variance:
22
The variances of the code and carrier discriminators, which are used to fill the measurement noise matrix, are derived in Section 5 and in Appendix A where it is also shown their dependence on the signal C/N0. The latter is computed from the correlator output by implementing the Narrow-Wide Band Power Ratio (NWPR) estimator (Kaplan & Hegarty, 2005) at the loop update rate, Tu. As detailed in Appendix A, the use of an extended integration time allows the reduction of the carrier and code noise by averaging the term on a longer temporal interval.
The code and carrier discriminator outputs are related to the state vector by a linear relationship justifying the use of a linear KF. Therefore, after implementing the linear dynamic and measurement models, the KF recursive and predictions steps can be applied as described in Kalman (1963). As shown in Equation (18) and in Equation (21), the extended time of integration is included in both transition and observation matrices, and it implicates that the KF measurements will be updated at a lower rate. Specifically, extending the integration interval K times the measurements input rate will be K times lower (Del Peral-Rosado et al., 2010).
5 DISCRIMINATOR OUTPUT VARIANCES
In order to derive the variances of the discriminator outputs, it is necessary to propagate the signal model in Equation (6) through the correlation process and the nonlinear discriminators shown in Figure 1. In this respect, it is possible to show (Van Dierendonck, 1996) that the noise terms in Equation (9) are complex circularly symmetric Gaussian random variables. Their real and imaginary parts have variance:
23
The three random variables in Equation (9) are correlated, and their covariance is determined by the Early-minus-Late correlator spacing, ds. In particular,
24
These properties are used in this section to evaluate the discriminator output variances, and . In particular, using the results derived in Borio (2011), it is possible to show that the variance of Equation (14) can be effectively approximated as
25
where SNRP is the SNR after noncoherent integrations:
26
After squaring and assuming perfect phase and code recovery (Δφ = 0,Δτ = 0), each prompt correlator assumes the following form:
27
and
28
Thus,
29
and
30
The results in Equation (30) have been obtained by exploiting the properties of Gaussian random variables. In particular, the covariance term in the second line of Equation (30) is zero since it leads to odd terms in zero mean Gaussian random variables. The variance of is obtained by exploiting the properties of moments of order four of zero mean Gaussian variables.
The SNR after noncoherent integrations can be finally computed from Equations (29) and (30):
31
From this result, it is finally possible to determine the variance of :
32
The derivation of is more complex and requires approximations based on the Delta method (Ver Hoef, 2012). For this reason, the derivations are reported in Appendix A, where it is shown that:
33
The validity of Equations (32) and (33) has been empirically investigated using the data collected during the hardware simulator experiment described in Section 6, where E6-B signals were collected for different C/N0 values. Several instances of the code and carrier discriminator outputs were evaluated and used to empirically estimate the variances, and . Finally, the results were plotted as a function of the input C/N0 and compared with the theoretical formulas derived in this section.
The results are shown in Figure 4 for three different values of K, the number of noncoherent integrations, and for ds = 1. A good agreement between theoretical and experimental results can be observed, most of all for high/medium C/N0 values. For low C/N0 values, nonlinear effects start playing a significant role, and the approximations made to derive Equations (32) and (33) are no longer valid. Differences can be clearly observed for the code discriminator output variances analyzed in Figure 4b): for C/N0 values below 35 dB-Hz, the code discriminator output variance starts saturating and converges to a constant value. While this effect is difficult to quantify from a theoretical point of view, it has been accounted for in the KF implementation. In particular, has been fixed to a constant value for C/N0 levels below 35 dB-Hz. These values have been empirically determined for different values of K and reflect the results shown in Figure 4b).
6 TRACKING STRATEGIES AND EXPERIMENTAL SETUP
In addition to KF tracking, different data and pilot processing strategies have been implemented into the SDR receiver and used for comparison purposes. They are:
Standard tracking on the data channel with integration time limited to 1 ms, fixed bandwidth of 10 Hz, and a Costas loop as carrier discriminator (Kaplan & Hegarty, 2005).
Data KF tracking on the data channel with integration time limited to 1 ms and a Costas loop as carrier discriminator.
Pure pilot KF tracking with long coherent integration and a four-quadrant arctangent as carrier discriminator. This discriminator is characterized by a wider linearity region in comparison to other discriminators, such as the Costas, and consequently, it allows enhanced sensitivity performance (Curran, 2015). Secondary code synchronization is at first performed and the secondary code symbols are removed from the correlator outputs. This process allows the extension of the coherent integration time.
Data KF with noncoherent integrations: the data bit effect is removed through squaring before implementing extended integrations. Moreover, a modified four-quadrant arctangent is adopted as carrier discriminator (Borio & Lachapelle, 2009).
While a detailed description of pure pilot KF tracking is out of the scope of this paper, the architecture adopted for this type of processing is shown in Figure 5. The figure has been organized in order to highlight the commonalities and differences with respect to noncoherent data KF processing analyzed in Figure 1. In this case, the pilot component in Equation (6) is processed, and the local codes match those of the E6-C signal. As for the data component, the primary code is at first removed, and coherent integration is performed on the primary code duration. In this way, correlators similar to those in Equation (9) are obtained. For the pilot signal, the data navigation message is replaced by the E6-C secondary code, sE6-C [k] = sE6-C(nTs), that is known at the receiver side and constant over the primary code coherent integration process.
In Figure 5, the block labeled as “Sec. code synchro” represents the secondary code synchronizer that is used to detect the start of the secondary code and to generate a local version of this component. In this paper, we used a simple secondary code synchronizer, which maximizes the correlation of the incoming prompt correlators with the known secondary code sequence. After secondary code wipe-off, additional coherent integrations can be performed extending the integration time on several pilot primary code periods. In this case, no nonlinear operations are performed, and no noise amplification occurs due to squaring that is replaced by secondary code removal. The correlators are then passed to the code and carrier discriminators. We used a standard normalized early-minus-late envelope discriminator for the code component and a pure four-quadrant arctangent discriminator (Kaplan & Hegarty, 2005) for the carrier component:
34
where Pp indicates the prompt correlator obtained after extended coherent integrations on the secondary code. The output of the pure four-quadrant arctangent discriminator was analyzed in Figure 3a): this type of discriminator has a larger phase discrimination range and provides improved performance with respect to data processing for a fixed integration time.
Code and carrier discriminator outputs are then passed to the KF that has the same structure used for data processing. As for data processing, the software receiver implements several states that include standard processing, which is used for initialization before KF tracking.
Several tests have been carried out using both simulated and real data, which were then used to assess the tracking schemes described above. Specifically, a first test was performed using the Spirent GSS9000 simulator shown in Figure 6. The simulator was set to generate E6-B/C signals with C/N0 levels progressively decreasing at steps of 1 dB-Hz per minute. This test was performed in order to assess the sensitivity of the different tracking schemes.
The simulator was connected to a Universal Software Radio Peripheral (USRP) X310 front end by Ettus, which was driven by a 10 MHz external low phase noise Oven Controlled Crystal Oscillator (OCXO), as shown in Figure 6 (upper left side). The external oscillator was used since the clock embedded in the front end is not stable and can introduce significant drifts.
The data collected with the USPR X310 was then processed using the different tracking strategies implemented in the SDR receiver. Further tests were performed under real scenarios in both static and dynamic conditions. For the static test, the above front end, again driven by the external OCXO, was connected to a high-grade geodetic antenna placed in the proximity of buildings obstructing the signal reception, as shown in the lower left side of Figure 6. The aim of the test was to assess the performance of the tracking algorithms under real multipath conditions.
Finally, a dynamic test was carried out inside the Joint Research Centre (JRC) campus in Ispra, Italy. This location was selected because of the presence of buildings and foliage, which make the signal reception very difficult. For the dynamic test, a USRP2 front end was used. The front end, in this case driven by an external rubidium clock, was placed inside a van and connected to an antenna mounted on the roof of the van.
Details related to the dynamic experimental setup are shown in Figure 7. The upper right side of Figure 7 provides an external view of the van used for the test. The interior of the van with the USRP2, the rubidium oscillator, and the COTS receiver are shown in the upper left side of Figure 7. Also in this case, a 10 MHz external oscillator was used since the USRP2 houses a poor internal clock, which could introduce apparent dynamics, as discussed in Borio and Susi (2018).
The lower left and right sides of Figure 7 show two sections of the test environment characterized by the presence of tall trees with rich foliage and sporadic buildings. As mentioned above, for all the tests, an E6-capable COTS receiver was connected to the same high-end geodetic antenna used by the SDR front end. Tracking results obtained using the COTS receiver were used as a reference term for SDR processing, as detailed in the next section.
7 EXPERIMENTAL RESULTS
7.1 Static simulated data
The results obtained processing the simulated data are shown in Figure 8 where the C/N0 time series, as estimated by the different tracking strategies, are compared.
The experimental analysis clearly demonstrates the benefits of combining KF with noncoherent integrations for the processing of E6-B signals. When considering the simulated scenario, the synergy between KF and noncoherent integration provides a significant performance gain as compared to standard processing.
Standard data-only processing with a fixed loop bandwidth equal to 10 Hz and 1 ms integration time achieves a tracking threshold of around 29 dB-Hz. Using the data-only KF with integration time equal to 1 ms provides only a slight improvement in tracking sensitivity with a tracking threshold around 28 dB-Hz.
However, when the data-only KF is combined with noncoherent integrations (in this case K = 20 and Tu = 20 ms), the loop never loses lock for the whole duration of the simulation, and indeed, the signal is tracked down to 24 dB-Hz. When pilot processing is adopted, the KF is always able to maintain signal lock even when the coherent integration time is equal to 1 ms. Therefore, the combination of KF and noncoherent extended integrations allows achieving results comparable to the ones obtained using the pilot processing.
Figure 9 shows the normalized carrier and code Doppler time series for:
standard data-only processing (upper left side),
data-only processing with KF and 1 ms integration time (lower left side),
data-only processing with KF and 20 noncoherent extended integration (upper left side)
and pilot processing with 1 ms integration time (lower right side).
From these figures, we can clearly observe that for standard tracking and KF tracking with 1 ms integration time, the carrier and code Doppler values diverge when loss of lock occurs. On the contrary, in the case of KF data-only processing with extended integration time, the Doppler is correctly estimated, and indeed, it follows a linear trend as for the pilot-only processing case.
7.2 Static live data under multipath conditions
As described in Section 6, a static test with live signals has been carried out by placing a high-grade geodetic antenna in proximity of buildings to test the tracking performance under real multipath conditions.
Figure 10a) reports the C/N0 values recorded by the COTS receiver for all the four Galileo satellites tracked during the data collection, which lasted around four hours. From Figure 10, it can be observed that the signal from one satellite, PRN 30, was very powerful, and it is characterized by C/N0 values quite stable, above 50 dB-Hz, for the entire duration of the test.
On the contrary, the signals from the other satellites show different levels of C/N0 with fluctuations that can be attributed to multipath. In particular, the signal from PRN 2 is the one with the largest variations in the C/N0 values, and thus, it was selected to challenge the different algorithms. Figure 10b) shows the page reception maps that provides, as a function of time and for the different signals, the number of errors recorded in the different E6-B pages. Galileo E6-B signals currently broadcast a dummy message that contains a known bit sequence. For this reason, it was possible to count the number errors occurring in the received E6-B pages. The white areas in Figure 10b) indicate that for that portion of the test the receiver was unable to decode the E6-B navigation message. This figure confirms the findings of Figure 10a): the scenario selected was affected by severe multipath with discontinuous tracking and page decoding.
The time span between 40 and 1,800 seconds in Figure 10a) has been selected for the analysis with the SDR receiver.
It is worth underlining that the different tracking strategies have been applied without enabling any reacquisition technique in order to be able to better analyze the different tracking behaviors. Figure 11 shows the C/N0 time series obtained for the different tracking strategies. For data-only processing, both standard processing and the KF with 1 ms integration lose the lock after about 180 seconds in correspondence of a deep signal fade.
On the contrary, data-only KF processing with 20 noncoherent integrations is able to track the signal until the end of the experiment, achieving similar performance of the pilot-only case. As for the simulator test, KF with 20 noncoherent integrations achieves a tracking threshold of about 24 dB-Hz, a value that occurs in correspondence of a deep signal fade. These results agree with the ones obtained using simulated data and confirm the effectiveness of KF combined with extended integration in enhancing the sensitivity of the data-only processing.
As already mentioned, the E6-B signal is currently transmitting a dummy navigation message with a known sequence of bits. Thus, it was possible to evaluate the demodulation capabilities of the different approaches. More specifically, the Bit Error Rate (BER) and the Symbol Error Rate (SER) have been evaluated from the data correlator output. The SER has been estimated before decoding the convolutional code of the E6-B signal while the BER has been estimated after applying a soft Viterbi decoding (Proakis, 2018).
In the COTS receiver case, the same evaluation was performed by exploiting the demodulated navigation data that the receiver provides as output. It is worth underlining that the COTS receiver implements pilot-only processing that is used to aid the demodulation of the data channel. The data channel is then demodulated and decoded using soft Viterbi decoding. The BER evaluated from the COTS receiver are reported in Figure 12 for signal PRN 2 and PRN 27 cases, namely the satellite signals with lower C/N0 values.
The curves show a good agreement with the BER theoretically expected for a Gaussian channel with soft Viterbi decoding. In both cases, the BER starts significantly increasing for C/N0 values lower than 28 dB-Hz. Specifically, the BER approaches the random guess probability, 0.5, in correspondence of 28 dB-Hz. This means that the bits are randomly guessed and correctly modulated only half of the time. So, even with pilot-only processing and even if we are able to track weak signals, the demodulation performance is already degraded below 28 dB-Hz.
These results agree with the ones presented in Borio and Susi (2018, 2019). The same analysis has been performed using the SDR receiver and implementing data-only tracking with 20 noncoherent integrations and soft Viterbi decoding. In this case, also, the SER has been evaluated. BER and SER results for the SDR receiver are presented in Figure 13. As for the COTS receiver, a good agreement between experimental and theoretical curves is found. As for pilot-only processing, the demodulation performance strongly decreases below 28 dB-Hz. The demodulation performance for data-only and pilot-only processing is comparable.
7.3 Dynamic live data
As described in Section 6, the dynamic test has been carried out in a very challenging scenario with rich foliage strongly attenuating the signals and buildings blocking signal reception. Consequently, the tracking approaches needed to cope with both weak signals and signal dynamics. In addition to this, frequent signal blockage was observed.
The results of the dynamic tests are reported in Figure 14, which compares the C/N0 time series obtained with the COTS receiver and the ones obtained with the SDR receiver using the data-only KF with 20 noncoherent integrations. Specifically, the C/N0 time series obtained by the COTS and the SDR receiver are reported as dashed and continuous lines, respectively. For this test, contrarily to what is done for the static test under multipath, reacquisition was enabled. This was necessary in order to cope with signal blockage.
Also in this case, four Galileo signals were tracked during the whole data collections. In particular, the signal arriving from satellite PRN 9 was very strong with C/N0 values quite stable around 55 dB-Hz. The other three satellites showed C/N0 values characterized by several fluctuations due to the very challenging scenario.
For all signals, there is a very good agreement between the C/N0 obtained with the proposed data-only processing scheme and the one provided by the COTS receiver that is implementing pilot processing. Also for this challenging scenario, the lack of the pilot component is compensated by the use of the proposed data-only KF with extended integration time.
8 CONCLUSIONS
This paper investigated the use of KF with noncoherent integrations for the processing of the Galileo E6-B component. The analysis showed the effectiveness of the proposed tracking approach in enhancing the sensitivity of data-only tracking schemes and in reducing the gap between data and pilot processing. This technique, for the test cases examined in this paper, allows compensating at least partially for the sensitivity degradation due to the encryption of the Galileo E6-C pilot component.
In particular, noncoherent integrations reduce the variance of the measurement noise at the input of the KF. This makes data-only tracking able to maintain signal lock also in challenging conditions, characterized by multipath and signal dynamics, as the ones analyzed in this paper.
HOW TO CITE THIS ARTICLE
Susi M, Borio D. Kalman filtering with noncoherent integrations for Galileo E6-B tracking. NAVIGATION. 2020;67:601–617. https://doi.org/10.1002/navi.380
APPENDIX A: CODE DISCRIMINATOR OUTPUT VARIANCE
An approximate expression for the code discriminator variance, , can be obtained by using the Delta method (Ver Hoef, 2012), which is based on the Taylor expansion of Equation (15). In particular, it is convenient to express Equation (15) as a function of the real and imaginary parts of Es and Ls and expand it in Taylor series:
A1
where the subscripts “I” and “Q” are used to denote real and imaginary parts, respectively. Moreover,
A2
In Equation (36), it has been assumed that the signal phase has been correctly recovered and that the useful signal component is on the in-phase branches, Es,I and Ls,I. While this assumption simplifies derivations, it is not necessary, and the same result obtained in the following can be found by splitting the signal component between real and imaginary parts. In order to keep derivations simple, perfect phase recovery has been assumed.
In order to simplify notation, the partial derivatives of function g(.) introduced in Equation (35) are denoted in the following as , where X denotes the variable with respect to which the derivative has been computed. Applying the variance operator to the Taylor expansion in Equation (35), the following approximation for is found:
A3
where the fact that in-phase and quadrature components are uncorrelated has been exploited. The partial derivatives in Equation (37) should be computed with respect to the correlator mean values. In particular, it is possible to show
A4
Using these results, Equation (37) becomes:
A5
where the fact that Early and Late components have the same variance has been exploited. The variance, Var{Es,I}, can be computed similarly to Equation (30) and in particular,
A6
The covariance between Es,I and Ls,I can be computed in a similar way and more specifically,
A7
The approximate expression for the code discriminator output variance provided in Equation (33) is obtained by replacing the variance and covariance terms in the right side of Equation (39) with Equations (40) and (41), respectively.
- Received November 22, 2019.
- Revision received March 4, 2020.
- © 2020 The Authors. NAVIGATION published byWiley Periodicals LLC on behalf of Institute of Navigation.
This is an open access article under the terms of the Creative Commons Attribution License, which permits use, distribution and reproduction in any medium, provided the original work is properly cited.