## 2 Fundamentals of the New Algorithms
### Acquisition Process  
The acquisition system for GNSS application is based on the maximum-likelihood estimation theory, which can be briefly described as follows [17]. The incoming sampled signal can be denoted as a vector  
\[\mathbf{y}=[y(0)\;y(1)\cdots y(L-1)] \tag{1}\]  
where \(L\) is the total number of the samples, and  
\[y(n)=r(n)+W(n) \tag{2}\]  
where \(r(n)\) is a signal that contains a vector of unknown parameters \(\mathbf{a}=[\alpha_{1}\,\alpha_{2}\,\alpha_{3}\cdots\alpha_{K}]\), \(W(n)\) is a zero-mean White Gaussian Noise (WGN) random process with variance \(\sigma^{2}\), and \(0\leq n\leq L-1\). Figure 1: Brief structure of new Doppler frequency refinement process. The ML estimate of the parameter vector \(\mathbf{a}\) can be found by maximizing the likelihood function, which depends on the probability density function (PDF), that is  
\[p(\mathbf{y};\overline{\mathbf{a}}) = \frac{1}{\left(2\pi\sigma^{2}\right)^{\frac{L}{2}}}\exp\left[-\frac {1}{2\sigma^{2}}\sum\limits_{n=0}^{L-1}\left(y(n)-\overline{r}(n)\right)^{2}\right] \tag{3}\] \[= \frac{1}{\left(2\pi\sigma^{2}\right)^{\frac{L}{2}}}\exp\left[- \frac{1}{2\sigma^{2}}\sum\limits_{n=0}^{L-1}\left(y^{2}(n)+\overline{r}^{2}(n )\right)+\frac{1}{2\sigma^{2}}\sum\limits_{n=0}^{L-1}y(n)\overline{r}(n)\right]\]  
where the test signal \(\overline{r}(n)\) has the same structure of \(r(n)\), but the unknown parameter vector \(\mathbf{a}\) is substituted by a vector \(\overline{\mathbf{a}}\), whose elements are variables defined in a range \(ran_{\mathbf{a}}\) that contains all the possible values of the unknown vector \(\mathbf{a}\), that is to say, \(\overline{\mathbf{a}}\in ran_{\mathbf{a}}\). If the energy of the test signal \(\overline{r}(n)\) (that is the term \(\sum\limits_{n=0}^{L-1}\overline{r}^{2}(n)\) in Equation (3)) does not depend on \(\overline{\mathbf{a}}\), then it is possible to show [17] that the corresponding ML estimate \(\widehat{\mathbf{a}}_{ML}\) of \(\mathbf{a}\) is  
\[\widehat{\mathbf{a}}_{ML}=\arg\max\limits_{\overline{\mathbf{a}}\in ran_{ \mathbf{a}}}\sum\limits_{n=0}^{L-1}y(n)\overline{r}(n) \tag{4}\]  
So, in this case, the ML estimation actually depends on the scalar product \(R(\overline{a})\) between the test signal and the received signal, defined as  
\[R(\overline{a})=\sum\limits_{n=0}^{L-1}y(n)\overline{r}(n) \tag{5}\]  
\(\widehat{\mathbf{a}}_{ML}\) can be found by searching the maximum \(R(\overline{a})\) in the range \(ran_{\mathbf{a}}\). In GNSS field, without considering the influence of noise, the received signal, after down-conversion and sampling, can be written as [1]  
\[y\left(nT_{s}\right)=\sum\limits_{m=1}^{N_{v}}y_{m}(nT_{s}) \tag{6}\]  
where \(N_{v}\) is the number of satellites in view, and  
\[y_{m}(nT_{s})=A_{m}C_{m}(nT_{s}-\tau_{m})d_{m}(nT_{s}-\tau_{m})\cos(2\pi(f_{ IF}+f_{d,m})nT_{s}+\varphi_{m}) \tag{7}\]  
where \(A_{m}\) is the amplitude of the signal, \(C_{m}(nT_{s}-\tau_{m})=c_{m}(nT_{s}-\tau_{m})s_{b}(nT_{s}-\tau_{m})\) is the product of the satellite spreading code \(c_{m}(nT_{s}-\tau_{m})\) and subcarrier \(s_{b}(nT_{s}-\tau_{m})\) used in the new GNSS systems [18], such as in Galileo (if no subcarrier is present, then \(s_{b}(nT_{s}-\tau_{m})\)=1), \(\tau_{m}\) is the code delay, \(d_{m}(nT_{s}-\tau_{m})\) is the navigation data, \(f_{IF}\) is the intermediate frequency, \(f_{d,m}\) is the Doppler frequency shift, \(\varphi_{m}\) is the phase of the carrier, and \(T_{s}\) is the sampling interval (the inverse of the sampling frequency \(f_{s}\)). From Equation (7), we can learn that in principle, the satellite signal actually contains four unknown parameters: code delay (\(\tau\)), Doppler frequency (\(f_{d}\)), carrier phase (\(\varphi\)) and data bit. However in the acquisition process, only two of them are estimated, which are \(\tau\) and \(f_{d}\). With respect to the parameter data bit, in the implementation, a non-coherent acquisition scheme is used to solve the problem, so here we assume that there is no data-transition in the accumulation period.