## Abstract

Many common discriminators used for code tracking of global navigation satellite system (GNSS) signals are ratios of quadratic forms of the correlation outputs. Here we derive a general expression for the gain of this type of discriminator and show that it depends on the effective carrier-to-noise ratio. We then evaluate this expression for several different code discriminators and GNSS signals, including GPS C/A-code, P-code, L1C, and M-code, Galileo E1 OS, GLONASS L1OF and L2OF, and BeiDou B1I and B2I. We also determine how noise and interference saturate the discriminator (i.e., make its output less sensitive to changes in the input) and the resulting effect on loop bandwidth. The discriminator gains described in this paper compensate for the saturation and ensure that loop bandwidth and code tracking performance can be accurately predicted and controlled over a critical range of effective carrier-to-noise ratios.

## 1 INTRODUCTION

The code discriminator in a global navigation satellite system (GNSS) receiver offers a significant amount of design freedom that can be used to track different types of GNSS signals with a variety of spreading modulations under different environmental conditions, such as multipath and interference. Figure 1 is a block diagram of a code tracking loop, in which the inputs to the code discriminator are correlation outputs which are usually at several different replica offsets relative to the received signal (e.g., early, prompt, and late). The output of the code discriminator is a measurement of the relative delay between the replica and the incoming signal, which is filtered to produce the pseudorange observables.

When the carrier phase is tracked reliably, the correlation outputs can be processed coherently by the code discriminator (i.e., in a way that relies on phase information) to maximize tracking accuracy. However, when noise and interference are powerful enough so that the carrier phase cannot be reliably tracked, the correlation outputs must be processed *noncoherently* (i.e., in a way that does *not* rely on phase information). To produce outputs that are independent of carrier phase, noncoherent discriminators typically rely on the magnitudes or magnitudes squared of the in-phase and quadrature correlation outputs.

While the correlation outputs depend on received signal and interference power, it is highly desirable for the discriminator output to be *independent* of these values so that the desired tracking loop parameters (e.g., loop bandwidth) can be maintained over a range of received signal and interference powers. This requires normalizing the discriminator output by a measure of received signal and interference power (Betz, 2016; Cassel, 2022; Kaplan & Hegarty, 2006). A common example is the normalization of the early-minus-late (EML) correlation outputs that measure relative delay by the early-plus-late correlation outputs that measure received signal and interference power.

In this document, we consider normalized noncoherent discriminators whose outputs can be expressed as a ratio of quadratic forms of the correlation outputs. Many common discriminators take this form, including noncoherent early-plus-late-normalized early-minus-late (EPL-normalized EML) and prompt-normalized early-minus-late (P-normalized EML) magnitude-squared discriminators that are used to track a wide variety of binary phase shift keyed with rectangular symbols (BPSK-R) and binary offset carrier (BOC)-modulated signals. The BOC-specific discriminators described by Bello & Fante (2005), Fante (2004), and Juang & Kao (2012) also take this form. The five-tap discriminators described by Juang & Kao (2012) are designed to achieve accurate, ambiguity-free^{1} BOC(1,1) tracking with good multipath resistance. The discriminators described by Bello & Fante (2005) and Fante (2004) are designed to achieve ambiguity-free GPS M-code tracking.

We derive a general expression for the gain of this type of discriminator, which is a constant multiplier that converts the ratio of quadratic forms of the correlation outputs into units of seconds (i.e., measuring the relative delay between the replica and the incoming signal) and is computed so that the ratio between discriminator output and discriminator input is unity when tracking errors are small. This unit ratio is important because it ensures that the actual loop bandwidth matches the desired loop bandwidth which will ensure that code tracking performance, including tracking accuracy, transient response and tolerable noise and interference power can be accurately predicted and controlled. We compute discriminator gains for several different GNSS signals, including GPS C/A-code, P-code, L1C, and M-code, Galileo E1 OS, GLONASS L1OF and L2OF, and BeiDou B1I and B2I, at various receiver precorrelation bandwidths. These signals are listed in Table 1 together with their spreading modulations and two-sided transmit bandwidths taken from Betz (2016). The BeiDou B1I and B2I transmit bandwidths are the 1 dB bandwidths as specified by the China Satellite Navigation Office (2016).

We also describe how noise and interference saturate the discriminator. Saturation makes the discriminator output less sensitive to changes in the input and effectively reduces the loop bandwidth (Kaplan & Hegarty, 2006). We also demonstrate how the discriminator gain compensates for this effect. Specifically, the discriminator gain depends on the effective carrier-to-noise ratio, thus ensuring that the ratio between the discriminator output and discriminator input is unity for small tracking errors over a range of effective carrier-to-noise ratios. When the effective carrier-to-noise is high, saturation is minimal and can be ignored at the cost of only a small reduction in the actual loop bandwidth compared to the desired loop bandwidth. However, when effective carrier-to-noise is low, for example due to interference or signal attenuation, the impact of saturation is not negligible and must be taken into account. If it is not, then the loop bandwidth decreases as effective carrier-to-noise decreases, which can have a significant impact on code tracking performance. Code tracking loops that are only tuned to operate at a nominal carrier-to-noise ratio are susceptible to this effect if the actual carrier-to-noise ratio changes (Betz, 2016; Kaplan & Hegarty, 2006).

Throughout this paper, we assume that, during correlation processing, the spreading modulation and filtering of the replica are matched to the incoming signal. In practice, there are many situations in which this may not be the case. For example, low-cost receivers can process GPS L1C and Galileo E1 OS signals as if they were BOC(1,1) signals (Hein et al., 2006; Lohan, 2010; Macchi et al., 2008) and the upper and lower sidebands of BOC signals can be processed independently (Barker et al., 2000; Borio, 2017; Fishman & Betz, 2000; Heiries et al., 2004; Martin et al., 2003; Wendel et al., 2014).

Nevertheless, the discriminator gains computed in this paper can be used for full-band tracking of all the signals listed in Table 1. For simplicity, and to accommodate the aforementioned low-cost receivers, we compute the discriminator gains for GPS L1C and Galileo E1 OS as if they were BOC(1,1)-modulated signals. This results in gains that yield discriminator output-to-input ratios of approximately unity. The analysis in this paper can be extended for more precise computation of gains for multiplexed BOC (MBOC) or composite BOC (CBOC) signals.

This paper is organized as follows: in Section 2, we present a model for the mean and covariance matrix of the correlation outputs (which we assume to be Gaussian) that will represent the foundation used to derive the discriminator gains. We follow this in Section 3 with the general form of a normalized noncoherent discriminator using magnitude-squared processing of the correlation outputs. We also introduce several discriminators from the literature that also take on this form. In Section 4, we compute the gains for the normalized noncoherent discriminators used to track the signals in Table 1 using different precorrelation bandwidths and tap locations. We then analyze the effect of discriminator saturation due to noise and interference on the loop bandwidth in Section 5 and validate the results via the simulation shown in Section 6. Finally, we conclude with a brief summary in Section 7.

## 2 CORRELATION OUTPUT MODEL

To begin, we will let the in-phase (I) and quadrature (Q) correlation outputs (i.e., the outputs of the “correlator” box in Figure 1) from *n* complex taps (2*n* real and imaginary), including the prompt (so *n* is odd), be represented by the 2*n* × 1 vector **x** distributed as shown in Equation (1):

1

The expected value of **x** is shown in Equation (2):

2

where * μ_{I}* and

*are each*

**μ**_{Q}*n*× 1 vectors whose

*i*-th elements are as indicated in Equation (3):

3

as described in Betz & Kolodziejski (2009b) and Cassel (2022). Here, as indicated in Equation (4),

4

is the value of the band-limited autocorrelation function at delay *δ* (n.b., this simply comes from the fact that the autocorrelation function and power spectral density are Fourier transform pairs), *C* is the received signal power in watts, *θ* is the (approximately constant) phase error between the signal and the replica, *β* is the two-sided precorrelation bandwidth in hertz, *G _{S}*(

*f*) is the symmetric signal power spectral density normalized to unit power over the transmit bandwidth,

*ε*is the error in code delay between the signal and the replica in seconds, and

*δ*is an

*n*× 1 vector of tap locations in seconds relative to the prompt from earliest to latest, where negative values indicate early tap locations and positive values indicate late tap locations. Assuming the in-phase and quadrature correlation outputs are mutually uncorrelated, the covariance matrix is given by Equation (5):

5

where *T* is the coherent integration time in seconds and **S** is an *n* × *n* symmetric matrix whose entry in row *i*, column *j* is as indicated in Equation (6):

6

as shown by Cassel (2022). Here, as shown in Equation (7),

7

is the power spectral density of the sum of white thermal noise with power spectral density *N*_{0} watts/hertz and potentially non-white interference with received power *J* watts and symmetric power spectral density *G _{I}*(

*f*) normalized to unit power over the transmit bandwidth (thus

*G*(

_{W}*f*) does not have unit power).

While not explored in this paper, the correlation output model can be extended to situations in which the replica is not matched to the incoming signal in spreading modulation and/or filtering (e.g., see Julien (2012)), situations in which the satellite transmitter, propagation channel, or receiver front-end introduce signal distortion, and situations in which the interference power spectral density is asymmetric. In these cases, ** μ** and

**Σ**are in general complex-valued (because the cosines in Equations (4) and (6) are actually real parts of a complex exponential and the power spectral densities generalize to cross power spectral densities); however, the development described in the sections to follow remains fundamentally the same.

## 3 NONCOHERENT CODE DISCRIMINATOR MODEL

The output of a normalized noncoherent code discriminator with magnitude-squared processing can be expressed as a ratio of quadratic forms as shown in Equation (8):

8

in units of seconds, where *K* is the scalar discriminator gain, **A** is an indefinite symmetric 2*n* × 2*n* matrix, and **B** is a positive semi-definite symmetric 2*n* × 2*n* matrix. The output *e*(*ε*) is a function of *ε* through the random vector **x**, whose expected value is a function of *ε* as shown in Equation (3).

Table 2 lists ** δ**,

**A**, and

**B**for the EML discriminators, five-tap BOC(1,1) discriminators described by Juang & Kao (2012), and Fante M-code discriminators described by Bello & Fante (2005) and Fante (2004), where

*R*is the chipping rate and abs {

_{c}**A**} indicates the matrix whose elements are the absolute values of the elements in

**A**. Table 3 lists the five-tap BOC discriminator parameters for the two “cases” and two “configurations” described by Juang & Kao (2012). Note that although

**B**is diagonal in all cases, this does not necessarily need to be the case. The EML discriminators in Table 2 can be used to track any BPSK-R- or BOC-modulated signals with the appropriate EML tap spacing Δ. The five-tap BOC(1,1) discriminators are designed specifically to track signals with BOC(1,1)-like modulation, including GPS L1C and Galileo E1 OS, while the Fante discriminators are designed specifically to track GPS M-code.

As will become clear later in the text, it is instructive to define two discriminator gains. The first definition accounts for noise and interference power and results in an unbiased gain, i.e., one that yields a unit S-curve slope through the origin, and thus produces an actual loop bandwidth that matches the desired bandwidth, regardless of signal, noise, and interference power. This will be designated *K*. We will show that computing this value requires a measurement of the effective carrier-to-noise ratio. The second definition assumes that both noise and interference are identically zero and results in a biased gain (because noise power can never be exactly zero in reality). We will show that the biased gain yields an S-curve slope that is less than unity through the origin, and thus an actual loop bandwidth less than the desired bandwidth, and does not depend on the effective carrier-to-noise ratio. This will be designated *K*_{bias}.

For convenience, let Equation (8) be expressed as shown in Equation (9):

9

where *p* = **x**^{T}**Ax** and *q* = **x**^{T}**Bx**. With E{•} indicating the expected value of the argument, the unbiased gain *K* and biased gain *K*_{bias} are computed according to Equation (10):

10

and Equation (11):

11

respectively, in which the only difference is that the biased gain assumes that noise and interference power are identically zero, i.e., **Σ** = **0**. While the expected value E {*f*(*p, q*)} can be computed exactly as described in Magnus (1986), for simplicity we approximate it using a first order Taylor series expansion^{2}, which yields Equation (12):

12

The partial derivative of the expected value of the discriminator output with respect to *ε* is as indicated in Equation (13):

13

If the discriminator is an unbiased estimator of tracking error (as a well-designed discriminator should be), E {*p*}|_{ε=0} = 0, this leads to Equation (14):

14

The expected value of a quadratic form in Gaussian random variables is as described in Equation (15) (Mathai & Provost, 1992):

15

Because **A** and **Σ** are not functions of *ε*, then the numerator of the right side of Equation (14) can be expressed as shown in Equation (16):

16

where the partial derivatives are given in Equation (17):

17

and the slope of the band-limited autocorrelation function at delay *δ* is given in Equation (18):

18

Because **B** is not a function of *ε*, then the denominator of the right side of Equation (14) can be expressed as shown in Equation (19):

19

Substitution of Equations (16) and (19) into (14) and the result into Equation (10) yields the unbiased gain shown in Equation (20):

20

Furthermore, substituting Equations (16) and (19) into (14) and the result into Equation (11) yields the biased gain shown in Equation (21):

21

The unbiased gain can then be expressed as shown in Equation (22):

22

## 4 CALCULATION OF DISCRIMINATOR GAINS

Three quantities must be evaluated to compute the discriminator gains: , and . Because **B** is diagonal and **Σ** is block diagonal, then the first quantity can be expressed as indicated in Equation (23):

23

where *S _{i,i}* is shown in Equation (24):

24

using Equation (6). As shown in Equation (25), let

25

be the fraction of signal power passed by the precorrelation filter and as shown in Equation (26), let

26

be the spectral separation coefficient (SSC) between the interference and the signal in units of seconds. Then Equation (24) can be expressed as shown in Equation (27):

27

Equation (23) then becomes Equation (28):

28

Let the effective carrier-to-noise ratio be defined as described in Betz (2016) and shown in Equation (29):

29

in hertz. Then Equation (28) can be expressed as shown in Equation (30):

30

Again using the fact that **B** is diagonal, Equation (3) can be used to show Equation (31):

31

Using Equations (3) and (17) and the block diagonal structure of **A**, we derive in Appendix A Equation (32):

32

Note that for discriminators in which **A** is diagonal, this reduces to Equation (33):

33

as shown in Appendix A (recalling that *n* is odd, so *n* – 1 is even). Substituting Equations (31) and (32) into Equation (21) yields the biased gain as indicated in Equation (34):

34

in units of seconds, which is deterministic and does not depend on received signal power *C*, white thermal noise power spectral density *N*_{0}, or received interference power *J*. When **A** is diagonal, this reduces to Equation (35):

35

Substituting Equations (30) and (31) into Equation (22) and defining a parameter *γ* as shown in Equation (36):

36

which is unitless and positive because **B** is positive semi-definite, then the unbiased gain can be expressed as shown in Equation (37):

37

in units of seconds.

Note that (**x**^{T}**Ax**/(**x**^{T}**Bx**) is unitless, so *K* and *K*_{bias} take the same units as the discriminator input *ε* and output *e*(*ε*). Because we defined *ε* and *e*(*ε*) in units of seconds, *K* and *K*_{bias} are also in units of seconds. (This can also be seen from the fact that *R*(*δ*) is unitless and *R*′(*δ*) is in units of Hz, which when substituted into Equations (34) and (35) yield *K*_{bias} in units of seconds.) The discriminator input, output, and gain can be converted into any units that measure the delay between the incoming signal and the replica, including chips, meters, or samples, by using the appropriate unit conversion factors.

Tables 4, 5, 6, 7, 8, 9, 10, and 11 list the calculated values of *K*_{bias} in nanoseconds and *γ* (unitless) for GLONASS L1OF and L2OF, BeiDou B1I, GPS P-code, GPS M-code, GPS C/A-code, GPS L1C, Galileo E1 OS, and BeiDou B2I, respectively, for various precorrelation bandwidths, discriminators, and tap spacings. Notice that the leftmost column in each table corresponds to a precorrelation bandwidth equal to *or wider than* the signal transmit bandwidth. In Equations (25), (34), and (36), *G _{S}*(

*f*) = 0 outside the signal transmit bandwidth, so a precorrelation bandwidth wider than the signal transmit bandwidth will not affect

*K*

_{bias}or

*γ*, but will in general affect (

*C/N*

_{0})

_{eff}.

The EPL-normalized EML and P-normalized EML discriminators included in these tables use example EML tap spacings Δ in chips. For example, a 1/2-chip EML tap spacing is commonly used for tracking BPSK-R-modulated signals. It is important to note that there are limits to how narrowly the early and late taps can be spaced because precorrelation band-limiting rounds the correlation peak as discussed by Betz & Kolodziejski (2000).

There is a relationship between the *K*_{bias} and *γ* values for BPSK-R-modulated signals with the same discriminators for fixed ratios between the chipping rate and the precorrelation bandwidth *β*. For example, consider GPS P-code with *β* = 20.460 MHz, BeiDou B1I and B2I with *β* = 4.092 MHz, GPS C/A-code with *β* = 2.046 MHz, and GLONASS L1OF and L2OF with *β* = 1.022 MHz. The signals’ chipping rates are equal to 1.023 Mcps times ten, two, one, and (approximately) one half, respectively (see Table 1). In each case, the precorrelation filter captures the main lobe of the signal power spectrum. For each discriminator, the *γ* values are the same across all these signals, and the *K*_{bias} values (in nanoseconds) are simply scaled by the relative chipping rates.

It is important to understand that the gains for the five-tap BOC(1,1) discriminators as described in Juang & Kao (2012) and the Fante M-code discriminators from Bello & Fante (2005) and Fante (2004) can potentially affect the ambiguity removal characteristics of these discriminators. Because the discriminator gain is a constant multiplier from discriminator input to output, the discriminator S-curve is simply stretched or squeezed along the *y*-axis.

For example, Figure 2 shows two discriminator S-curves for the eight-gate optimized Fante discriminator tracking GPS M-code with a 30.69 MHz precorrelation bandwidth and (*C* / *N*_{0})_{eff} → ∞. The curve labeled *K*_{bias} = 21.10 ns uses the value from Table 7 and results in a unit S-curve slope through the origin (indicated by the dashed line) as intended. The curve labeled *K*_{bias} =195.50 ns corresponds to a one-chip discriminator gain and results in a much steeper S-curve slope through the origin.

While both S-curves only have one zero-crossing (at the origin) and thus result in ambiguity-free tracking, the bumps in the 21.10 ns curve are closer to the *x*-axis than those of the 195.50 ns curve. This could increase the susceptibility to stable biased tracking points at which random errors due to noise and interference cause the loop to lock onto a side peak of the correlation function. In other words, if the bumps get too close to the *x*-axis, noise and interference can cause the loop to “get stuck” at near-zero-crossings.

However, as long as the tracking loop remains in its linear region of operation (i.e., as long as tracking errors *ε* are small), the discriminator gain and the loop bandwidth are closely related. This is easily seen in Cassel (2022) and Stephens & Thomas (1995) and will be described further in the next section. Returning to the example in Figure 2, using a discriminator gain of *K*_{bias} = 195.50 ns results in an S-curve slope through the origin of approximately nine. This produces a higher loop bandwidth than would be obtained using a discriminator gain of *K*_{bias} = 21.10 ns, which results in a unit S-curve slope through the origin and an actual loop bandwidth equal to the desired bandwidth. When tracking errors are not small and the loop is in its nonlinear region of operation, the loop bandwidth does not adequately describe loop performance (because it is computed assuming a linear system; see Stephens & Thomas (1995)).

Finally, the accuracy of the discriminator gain *K* depends on the accuracy of the effective carrier-to-noise estimates. If the estimates of (*C* / *N*_{0})_{eff} are noisy or biased, *K* will also be noisy or biased. In fact, carrier-to-noise estimation is most noisy and most susceptible to bias when (*C* / *N*_{0})_{eff} is itself low, which, as we will discuss further in the next section, is precisely the situation in which accurate estimates of (*C* / *N*_{0})_{eff} are most important. Carrier-to-noise estimation is a ubiquitous capability of GNSS receivers that will not be discussed in depth in this paper. There are many different carrier-to-noise estimators; for some examples, see Falletti et al. (2011), Psiaki et al. (2005), and Van Dierendonck (1996).

When (*C* / *N*_{0})_{eff} is low and long periods of smoothing are required to obtain accurate (*C* / *N*_{0})_{eff} estimates, abrupt changes in (*C* / *N*_{0})_{eff} will not be immediately reflected in the discriminator gain *K*. This will result in transient deviations of the actual loop bandwidth from the desired bandwidth. Of course, this trade-off is unavoidable in principle. Furthermore, note that discriminator normalization using instantaneous correlation outputs can have a significant impact on tracking accuracy (Cassel, 2022). This can be mitigated by averaging the correlation outputs used for normalization over time (Cassel, 2022) or by estimating the statistics of the correlation outputs used in the normalization and accounting for them in the estimate of received power (Borio et al., 2008).

## 5 DISCRIMINATOR SATURATION

From Equation (37), the ratio of the unbiased to the biased gain is as shown in Equation (38):

38

Observe that, as shown in Equation (39):

39

and *K* > *K*_{bias} because *γ* >0. Because the biased gain can only be smaller than the unbiased gain, it results in an S-curve slope through the origin that is less than unity and therefore an actual loop bandwidth that is smaller than desired as described in Cassel (2022). This phenomenon, which we call *discriminator saturation*, becomes more pronounced as *T*(*C* / *N*_{0})_{eff} decreases.

There is a clear explanation as to why discriminator saturation exists. All the discriminators described in this paper (and in general all unbiased normalized noncoherent discriminators which use magnitudes squared of the correlation outputs) have a matrix **A** such that in the numerator of the discriminator output, the squared noise and interference on the early and late taps cancels in expectation. However, because **B** is positive semi-definite, the squared noise and interference in the denominator of the discriminator output does not cancel but instead adds. Thus, the denominator depends on the noise and interference power. As noise and interference power increase, the magnitude of the denominator also increases, thereby decreasing the magnitude of the discriminator output.

To see the impact of saturation on the loop bandwidth *B _{L}*, consider the discrete-update tracking loop design described by Stephens & Thomas (1995). The unbiased discriminator gain

*K*yields a unit S-curve slope through the origin and therefore complies with Equation (1) of Stephens & Thomas (1995) (i.e., the discriminator output equals the discriminator input when tracking errors are small). The resulting transfer function from true phase input to estimated phase output (which, in this case, is the relative delay between the replica and the incoming signal) is as indicated in Equation (40):

40

for loops with phase and phase-rate feedback (see Stephens & Thomas (1995)) and Equation (41):

41

for loops with rate-only feedback (see derivations in Cassel (2021) and Thomas (1989) as well as in Stephens & Thomas (1995)), where *N* is the loop order, *n _{c}* is the computation delay in number of update intervals, and

*K*

_{1}, …,

*K*are the loop constants described in Stephens & Thomas (1995) which are functions of the product of the desired loop bandwidth,

_{N}*B*

_{L,des}, and the loop update interval (which we assume is equal to the coherent integration time

*T*).

However, when using the biased discriminator gain *K*_{bias}, the right side of Equation (1) from Stephens & Thomas (1995) is multiplied by *K*_{bias}/*K*, reflecting the reduction in S-curve slope through the origin due to discriminator saturation. Carrying this ratio through the derivations in Cassel (2021), Stephens & Thomas (1995), and Thomas (1989) yields the transfer functions shown in Equation (42):

42

for loops with phase and phase-rate feedback and in Equation (43):

43

for loops with rate-only feedback, where the new loop constants are as indicated in Equation (44):

44

and the original constants *K*_{1}, …, *K _{N}* are based on the desired loop bandwidth and are taken from Stephens & Thomas (1995). Discriminator saturation essentially reduces the loop constants and thus the loop bandwidth. The

*true*loop bandwidth, or the bandwidth at which the loop actually operates, can be computed numerically (Cassel, 2021; Stephens & Thomas, 1995) as shown in Equation (45):

45

where *ξ* = *fT* is the normalized frequency. It can be easily verified by substituting *H*(*z*) into Equation (45) that using the unbiased discriminator gain *K* yields a true loop bandwidth that matches the desired loop bandwidth, *B*_{L,true} = *B*_{L,des}. Using the biased discriminator gain *K*_{bias} and substituting *H*_{bias}(*z*) into Equation (45) yields a true loop bandwidth that is narrower than the desired loop bandwidth, *B*_{L,true} < *B*_{L,des}.

Figures 3 and 4 show the ratio of the true *B _{L}T* product to the desired

*B*product, which is equivalent to

_{L}T*B*

_{L,true}/

*B*

_{L,des}, because

*T*is fixed, as a function of

*K*/

*K*

_{bias}for loops with immediate updates (

*n*= 0) and delay-by-one updates (

_{c}*n*=1), respectively. In each figure, the top row corresponds to a first order loop, the middle row corresponds to a second order supercritically damped (SCD) loop, and the bottom row corresponds to a second order standard underdamped (SUD) loop. First and second order code tracking loops are common in GNSS receivers because carrier aiding from the carrier tracking loop is usually employed to remove the signal dynamics from the code loop, thereby enabling the use of lower-order loops (Betz, 2016; Kaplan & Hegarty, 2006). The left and right columns correspond to phase and phase-rate feedback and rate-only feedback, respectively. The different curves in each plot indicate different desired

_{c}*B*products within the ranges of the tables as previously presented by Stephens & Thomas (1995).

_{L}TThe main result is that when *T*(*C* / *N*_{0})_{eff} is large and *K* / *K*_{bias} is close to unity, the loop designer can “get away with” using the deterministic *K*_{bias} and thus eliminate the need to incorporate (*C* / *N*_{0})_{eff} estimates “on-the-fly” while incurring a slight reduction in the actual loop bandwidth relative to the desired bandwidth. When *T*(*C* / *N*_{0})_{eff} decreases and *K* / *K*_{bias} increases, the discriminator becomes saturated with noise and interference which reduces the S-curve slope and thus reduces the actual loop bandwidth unless (*C* / *N*_{0})_{eff} estimates are incorporated on-the-fly and the unbiased gain *K* is used. In other words, the use of *K*_{bias} yields an increasingly saturated discriminator and a decreasing true loop bandwidth as *T*(*C* / *N*_{0})_{eff} decreases, all other things remaining equal. This reinforces the design best-practice of maximizing coherent integration time, especially when (*C* / *N*_{0})_{eff} is low. The unbiased gain *K* compensates for discriminator saturation by incorporating (*C* / *N*_{0})_{eff} estimates to maintain the actual loop bandwidth at the desired value.

Note also that for a given *K* / *K*_{bias}, the ratio between the true and desired loop bandwidths is closest to unity when the desired *B _{L}T* is minimized. In other words, the higher the desired loop bandwidth, the more susceptible the loop is to discriminator saturation, all else remaining equal. For example, consider the bottom left plot of Figure 3 with

*K*/

*K*

_{bias}= 2. With a desired

*B*product of 0.5, the bandwidth ratio is approximately 0.53, meaning that the biased gain yields a true loop bandwidth that is approximately half the desired bandwidth. With a desired

_{L}T*B*product of 3.0, the bandwidth ratio is approximately 0.26, meaning that the biased gain yields a true loop bandwidth that is only one quarter of the desired bandwidth.

_{L}TFinally, Equation (38) reveals a simple and intuitive interpretation for *γ*: it indicates the susceptibility of the discriminator output to saturation by noise and interference. A larger value of *γ* indicates greater susceptibility to saturation, and *vice versa*. If a loop designer wishes to maintain a true loop bandwidth that is sufficiently close to the desired bandwidth, then the higher the value of *γ*, the higher the value of *T*(*C* / *N*_{0})_{eff} at which the discriminator must be “de-biased” using the unbiased gain *K*. Conversely, the smaller the value of *γ*, the lower the value of *T*(*C* / *N*_{0})_{eff} at which the designer can “get away with” using the biased gain *K*_{bias}.

Equation (36) and the specific values of *γ* in the tables shown in the previous section provide further insights into how *γ* depends on the choice of discriminator. The value of *γ* achieves a minimum of unity for the P-normalized discriminators (i.e., the P-normalized EML and P-normalized five-tap BOC discriminators). When prompt normalization is used, the only non-zero elements of the matrix **B** are those corresponding to indices *i* for which *δ _{i}* = 0. In these cases, Equation (36) simplifies to

*γ*= 1.

In the general case in which the denominator of the discriminator output consists of correlation outputs from early and late taps (i.e., there are non-zero elements of **B** corresponding to indices *i* for which *δ _{i}* ≠ 0), then

*γ*>1. Referring again to Equation (36), the factor

*R*(

*δ*) is the value of the band-limited autocorrelation function at delay

_{i}*δ*. As

_{i}*δ*approaches nulls in the correlation function squared,

_{i}*R*(

*δ*) decreases and the value of

_{i}*γ*increases. This is easiest to see from the tables shown in the previous section for the EPL-normalized EML discriminator tracking BPSK-R-modulated signals. As the EML tap spacing Δ decreases, the taps move further away from the nulls in the correlation function squared (because the band-limited autocorrelation function is roughly triangular), and

*γ*approaches unity. In fact, in the limit as Δ→0, EPL normalization approaches prompt normalization (Cassel, 2022) and

*γ*→ 1.

Collectively, these findings suggest that discriminator saturation can be minimized by minimizing the distances between the taps used in the denominator of the discriminator output and the peak(s) of the autocorrelation function squared. Other factors influence these tap locations, including the desired shape of the discriminator S-curve, code tracking loop pull-in range and speed, and code tracking accuracy. These factors are often more important than avoiding discriminator saturation. For instance, prompt normalization leaves the discriminator output more susceptible to biased measurements of received signal and interference power than early-plus-late normalization, all else remaining equal (Cassel, 2022). As another example, the ability to unambiguously track BOC-modulated signals using the discriminators described by Bello & Fante (2005), Fante (2004), and Juang & Kao (2012) can be extremely valuable in high multipath or strong interference environments. Further evaluation of these additional factors is beyond the scope of this paper.

It is important to quantify discriminator saturation and to control the loop bandwidth because the loop bandwidth determines how much noise and interference is passed through the loop filter and how quickly the loop observables respond to changes in the loop input (see Figure 1). If the actual loop bandwidth is smaller than the desired bandwidth, then the loop will respond more slowly and filter out more noise and interference than would be otherwise expected. While filtering out more noise than expected at low effective carrier-to-noise may be viewed as beneficial, the loop designer has no control over the physical phenomenon responsible for this outcome. The benefit of using unbiased discriminator gains is that the actual loop bandwidth, and thus actual tracking accuracy, transient response, and tolerance to noise and interference, can be predicted more accurately and controlled over a range of effective carrier-to-noise ratios.

## 6 CODE TRACKING SIMULATIONS

To verify the analytical results and demonstrate the effects of discriminator saturation, we will simulate C/A-code tracking in white noise using the model presented in Section 2 with a 4.092 MHz precorrelation bandwidth, *T* = 20 ms, and an EPL-normalized EML discriminator with Δ = 1 spreading code chip in two relevant signal environments. The first, called the “benign” case, is at (*C* / *N*_{0})_{eff} = 45 dB-Hz, which is typical of what might be encountered with an unobstructed view of the sky and no interference. The second, called the “degraded” case, is at (*C* / *N*_{0})_{eff} = 20 dB-Hz, which could be due to interference or signal attenuation.

In our simulations, we assume that signal dynamics have been completely removed by the carrier tracking loop, leaving no residual Doppler and thus allowing us to use a first order code tracking loop. We will also assume phase and phase-rate feedback, immediate updates, a desired loop bandwidth of 0.1 Hz, and accurate estimates of (*C* / *N*_{0})_{eff} for computing the unbiased discriminator gain *K*. Finally, we perform discriminator denominator averaging for 30 coherent integration intervals (for a total of 30 × 0.02 = 0.6 seconds) as described by Cassel (2022). This will facilitate a more accurate comparison of the simulation results to the theoretical expressions for tracking accuracy derived by Betz & Kolodziejski (2009a).

### 6.1 The Benign Case

Table 8 shows that for C/A-code tracking with a precorrelation bandwidth of 4.092 MHz and an EPL-normalized EML discriminator with Δ = 1 spreading code chip, *γ* = 3.6225. With (*C*/*N*_{0})_{eff} =45 dB-Hz and *T* = 20 ms, *K* / *K*_{bias} =1.006, which the top left plot of Figure 3 shows will cause an imperceptible reduction in the true loop bandwidth. We can therefore expect that discriminator saturation will have very little impact in the benign case.

Figure 5 shows the results of 20 seconds of steady-state code tracking in the benign case. The plots on the left show the results of 100 Monte Carlo trials with the unbiased gain *K*, while those on the right show the results of 100 Monte Carlo trials with the biased gain *K*_{bias}. The uppermost plots show the discriminator outputs, and the lowermost plots show the loop filter outputs. Solid black lines indicate the true delay (which is zero) and the dashed black lines indicate the theoretical ±3*σ* values based on a predicted loop filter output variance of 0.165 m^{2} as evaluated using the theory from Betz & Kolodziejski (2009a). The actual loop filter output variances in the bottom left and bottom right plots are 0.163 m^{2} and 0.166 m^{2}, respectively, which both agree very closely with the theoretical prediction. This result was expected because in the benign case, the unbiased gain and the biased gain differ by a factor of only 1.006. In other words, the true loop bandwidths using the unbiased and biased gains are approximately the same, and therefore so are the tracking accuracies.

Figure 6 shows the results of 20 seconds of code tracking with a step input of 0.25 chips (73.26 m) in the benign case. The plots on the left show the results of 100 Monte Carlo trials with the unbiased gain *K*, while those on the right show the results of 100 Monte Carlo trials with the biased gain *K*_{bias}. The uppermost plots show the discriminator outputs, and the lowermost plots show the loop filter outputs. The solid black lines indicate the true delay and the dashed black lines indicate the step response of the loop whose transfer function is given by Equation (46):

46

which is derived from Equation (40). We can compare the Monte Carlo results to the step response because the delay step of 0.25 chips is within the approximately linear region of the discriminator S-curve (and thus the loop behavior is close to that of a linear system). The filter responses from simulation in the bottom left and bottom right plots both agree closely with predicted step response (i.e., the colored lines follow the curved black dashed lines very closely). This is also an expected result because the true loop bandwidths using the unbiased and biased gains are approximately the same, and thus so are the step responses.

The results of Monte Carlo simulation of the benign case show that discriminator saturation has little effect at high (*C* / *N*_{0})_{eff} values, and that ignoring the saturation and simply using the biased gains *K*_{bias} has negligible impact on tracking accuracy and the transient response.

### 6.2 THE DEGRADED CASE

We now consider the degraded case when (*C* / *N*_{0})_{eff} = 20 dB-Hz. With the same coherent integration time of *T* = 20 ms, the resulting ratio of discriminator gains is *K* / *K*_{bias} = 2.811, indicating that the biased gain is much smaller than the unbiased gain. From the plot shown in the top left of Figure 3 with a desired *B _{L}T* = 0.1 × 0.02 = 0.002, the ratio of the true loop bandwidth to the desired bandwidth is 0.355, indicating that the true loop bandwidth when using the biased gain is much smaller than the desired bandwidth. We can therefore expect that discriminator saturation will have a significant impact in the degraded case.

Figure 7 shows the results of 20 seconds of steady-state code tracking in the degraded case in which the plots show the same information as described in the previous subsection. In the bottom left plot, the loop filter output variance is 99.84 m^{2}, which agrees closely with the theoretically-predicted value of 102.52 m^{2} determined using the theory from Betz & Kolodziejski (2009a). While the tracking accuracy is poorer than in the benign case due to the reduced (*C* / *N*_{0})_{eff}, we find the same general result, i.e., the filter output variance from Monte Carlo simulation agrees with the theoretical prediction.

However, the plot in the bottom right of Figure 7 shows that when one is using the biased gain, the filter output variance is much smaller than predicted. In this case, the filter output variance from Monte Carlo simulation is only 37.85 m^{2}. This is a direct result of discriminator saturation, which results in a reduction in loop bandwidth and a corresponding reduction in tracking error variance when left uncompensated. As shown by Betz & Kolodziejski (2009a), the filter output variance scales (approximately) with the loop bandwidth. The Monte Carlo simulations confirm that to be the case: a true loop bandwidth of 0.1 × 0.355 = 0.0355 Hz would yield a theoretical tracking error variance of 36.40 m^{2}, which closely matches the Monte Carlo simulation variance of 37.85 m^{2}.

Figure 8 shows the results of 20 seconds of code tracking with a step input of 0.25 chips in the degraded case in which the plots show the same information as described in the previous subsection. In the plot on the bottom left, the loop filter output, although noisier than in the benign case, closely follows the curved black dashed line, indicating the predicted step response. Again, when using the unbiased gain, we find close agreement between simulation results and theoretical predictions.

However, as shown in the plot in the bottom right of Figure 8, the filter responds to the step input much slower than predicted when using the biased gain. This is another direct result of discriminator saturation, which, when left uncompensated, results in a reduction in loop bandwidth and a corresponding decrease in the responsiveness of the filter output to changes in the input.

The Monte Carlo results of the degraded case show that discriminator saturation can have a significant effect at low (*C* / *N*_{0})_{eff} values, and that ignoring the saturation and simply using the biased gains *K*_{bias} can have a significant impact on tracking accuracy and the transient response. If there is no accounting for saturation, the actual loop performance can differ significantly from theoretical predictions because the true loop bandwidth is smaller than the desired bandwidth. As confirmed in the simulation results, discriminator saturation results in a filter output variance that is smaller than predicted and a transient response that is slower than predicted.

## 7 SUMMARY

Many noncoherent code discriminators take the form of a ratio of quadratic forms of the correlation outputs, including the EPL-normalized and P-normalized EML discriminators that can be used to track BPSK-R- and BOC-modulated GNSS signals. The five-tap discriminators in Juang & Kao (2012) used to track BOC(1,1) signals and the GPS M-code discriminators as described by Bello & Fante (2005) and Fante (2004) also take this form. When properly normalized, the outputs of these discriminators are all independent of the effective carrier-to-noise ratio, which is a desirable property.

The key to proper normalization is the discriminator gain, which is computed so that the ratio between the discriminator output and discriminator input is unity when tracking errors are small. This allows loop parameters, including loop bandwidth, to be maintained at desired values over a range of received signal and interference powers. This in turn permits more accurate predictions of and better control over tracking accuracy, transient response, and tolerable noise and interference power.

In this paper, we derived a general expression for the gain of this form of discriminator, showed its dependence on the effective carrier-to-noise ratio, and evaluated it for several different GNSS signals, receiver precorrelation bandwidths, and code discriminators. We showed that if the dependence of the discriminator gain on the effective carrier-to-noise ratio is ignored, then decreasing the effective carrier-to-noise ratio results in discriminator saturation and a loop bandwidth that is smaller than desired. Accounting for the effective carrier-to-noise ratio in the discriminator gain compensates for this effect and yields a constant loop bandwidth as a function of the effective carrier-to-noise ratio while the loop is in its linear region of operation.

The results documented in this paper can be applied to full-band tracking of GPS C/A-code, P-code, L1C, and M-code, Galileo E1 OS, GLONASS L1OF and L2OF, and BeiDou B1I and B2I when the receiver code replica is matched to the incoming signal in modulation and filtering. They may also be extended to other GNSS signals. The results for GPS L1C and Galileo E1 OS are approximate, since we assume those signals are processed as if they were BOC(1,1). By modifying the correlation output model and following the analysis in this paper, results can also be derived for code tracking when the replica is not matched to the incoming signal in spreading modulation and/or filtering and when signal distortion has been introduced by the satellite transmitter, propagation channel, or receiver front-end.

## HOW TO CITE THIS ARTICLE

Cassel, R. (2023). Noncoherent code discriminator gains for global navigation satellite system signal tracking. *NAVIGATION, 70*(4). https://doi.org/10.33012/navi.598

## ACKNOWLEDGMENTS

We would like to thank J. Chuang, E. Lundberg, and R. Singh of The MITRE Corporation and the anonymous reviewers for their reviews and feedback. The views, opinions, and/or findings contained in this report are those of the author and should not be construed as an official Government position, policy, or decision. This is the copyright work of The MITRE Corporation, and was produced for the U.S. Government under Contract No. FA8702-22-C-0001, and is subject to the Rights in Technical Data-Noncommercial Items Clause DFARS 252.227-7013 (FEB 2014).

Approved for public release; distribution unlimited. Public release case number 22-1239. ©2023 The MITRE Corporation. All rights reserved.

## APPENDIX A DERIVATION OF EQUATIONS (32) AND (33)

Let be expressed as shown in Equation (47):

47

where and . This can be expressed as a double sum as indicated in Equation (48):

48

which can be expanded to Equation (49):

49

Note that the first *n* elements of **u** and **v** correspond to the real parts and the second *n* elements correspond to the imaginary parts of the correlation outputs (see Equation (2)). Because **A** is a block diagonal matrix with zero matrices in the off diagonals, real and imaginary parts of the correlation outputs are never cross-multiplied (i.e., real parts only multiply real parts and imaginary parts only multiply imaginary parts). Therefore, the second and third terms in the above equation are zero, as per Equation (50):

50

where the first term corresponds to the real parts of the correlation outputs and the second term corresponds to the imaginary parts. Substituting the values for **u** and **v** from Equations (3) and (17) yields Equation (51):

51

Because **A** is a block Toeplitz matrix and sin^{2}(*θ*) + cos^{2}(*θ*) = 1, then the above equation can be expressed as indicated in Equation (52):

52

which is Equation (32). If **A** is diagonal, then *A _{i,j}* = 0 ∀

*i*≠

*j*, and the equation above reduces to Equation (53):

53

In all discriminators for which **A** is diagonal, the entries corresponding to the prompt correlation outputs are zero. This allows the equation above to be expressed as Equation (54):

54

Due to the symmetry of the vector *δ* and the properties of **A**, then the above equation can be expressed as shown in Equation (55):

55

which, using the evenness and oddness of cosine and sine yields Equation (33) as shown by Equation (56):

56

## Footnotes

↵1 By ambiguity-free, we mean that the code discriminator S-curve, which plots the discriminator output as a function of its input, has only one zero-crossing. In other words, for signals with spreading modulations that have multiple correlation peaks, the code discriminator allows the tracking loop to maintain a lock on the main/central correlation peak rather than the side peaks.

↵2 There are two reasons why we do not use the exact expression described in Magnus (1986). First, it is extremely long and obscures almost all useful information, and second, it is much more difficult to evaluate numerically than the Taylor series approximation, which as we will see yields straightforward integrals of signal power spectral densities times sines and cosines. The Taylor series approximation is accurate for small

*ε*(which is the specific region of concern) since*p*and*q*are near their expected values.

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.