## 2 Signal Model  
Received GNSS signals can be modeled as a combination of digitized signals corresponding to different PRNs as [21]:  
\[r(nT_{s})=\sum_{l=1}^{L}\sqrt{C_{l}}b_{l}(nT_{s}-\tau_{l})c_{l}(nT_{s}-\tau_{l})e ^{j(2\pi(f_{IF}+f_{dJ})nT_{s}+\varphi_{l})}+\eta_{fe}(nT_{s}) \tag{1}\]  
where \(l\) is the PRN index; \(L\) is the number of satellites; \(C_{l}\) is the power of the received signal from the \(l\)th satellite; \(b_{l}\) is the binary navigation data; \(c_{l}\) is the spreading code used to modulate the navigation data; \(\tau_{l}\), \(f_{dJ}\) and \(\varphi_{l}\) are code delay, Doppler frequency and carrier phase introduced by the communication channel; \(f_{IF}\) is the IF frequency and \(f_{s}=1/T_{s}\) is sampling frequency. \(\eta_{fe}(nT_{s})\) is front-end complex zero mean Gaussian noise. For each PRN, a reference tracking correlator multiplies the received signal by a corresponding PRN replica and the samples are integrated over a coherent integration time period. The output of the \(l\)th channel at the \(k\)th coherent integration epoch (time instant \(kN_{s}T_{s}\)) is given by:  
\[y_{l}[k]\equiv y_{l}(kN_{s}T_{s})=\frac{1}{N_{s}}\sum_{n=(k-1)N}^{kN_{s}-1}r( nT_{s})c_{l}(nT_{s}-\hat{\tau}_{l})e^{-j(2\pi(f_{IF}+\hat{f}_{l})nT_{s}+\hat{ \varphi}_{l})} \tag{2}\]  
where \(N_{s}\) is the number of samples in the coherent integration process. Using the sum of geometric series, Equation (2) can be rewritten as:  
\[y(kN_{s}T_{s})=\sqrt{C}bR_{\tau}(\Delta\tau_{0})\frac{\sin(\pi\Delta f_{0}N_{ s}T_{s})}{N_{s}\sin(\pi\Delta f_{0}T_{s})}e^{j(\pi\Delta f_{0}((2k-1)N_{s}-1)T_{s}+ \Delta\varphi_{0})}+\eta(kN_{s}T_{s}) \tag{3}\]  
where the index \(l\), which refers to the \(l\)th PRN, is omitted for simplicity. \(\Delta\tau_{0}=\tau-\hat{\tau}\), \(\Delta f_{0}=f_{d}-\hat{f}\) and \(\Delta\varphi_{0}=\varphi-\hat{\varphi}\) are code, frequency and phase offsets between the received and the replica signal generated by the reference tracking correlator. \(N_{s}T_{s}\) is the coherent integration time which is also noted by \(T_{I}\). \(\eta\) consists of in-phase (I) and quadrature-phase (Q) noise and residual cross correlation terms approximated by a zero-mean Gaussian distribution with variance \(\sigma_{0}^{2}=N_{0}/2T_{I}\)[22; 23]. \(N_{0}\) is the power spectral density of the receiver noise. \(R_{\tau}(\cdot)\) is the correlation function which is related to the choice of the GNSS signaling scheme [10; 24]. When tracking loops are locked and the received signal is stabilized in PLL mode, it is assumed that there are no tracking code and phase offsets and thus the in-phase output of the \(i\)th early or late correlator can be defined in the code-delay domain as follows:  
\[I_{c_{i}}=\sqrt{C}R_{\tau}(c_{i}T_{c})+\eta_{c_{i}}^{I} \tag{4}\]  
where \(T_{c}\) is the chip duration and \(c_{i}T_{c}\) denotes the spacing of the \(i\)th early (for \(c_{i}<0\)) or late (for \(c_{i}>0\)) correlator from the reference prompt correlator. \(\eta_{c_{i}}^{I}\) is the corresponding in-phase noise described above. The effect of binary data is neglected for the sake of simplicity. Since the tracking loops are locked and the received signal is tracked in PLL mode, the I branch is considered. If the receiver operates in a non-coherent mode, both I and Q branches should be taken into account [25].