## 5 GNSS Receiver Positioning System Architecture  
The complete custom designed GNSS software receiver architecture is shown in Figure 1. The first step comprises to receive original carrier frequency GNSS signals using a wideband antenna and  
\begin{table} \begin{tabular}{c c c} \hline \hline
**Name** & **Objective Function** & **Weight Function** \\ \hline
\begin{tabular}{c} LSE \\ Huber \\ Bi-square \\ \end{tabular} & \(\mu(\stackrel{{\rightarrow}}{{r}})=\left\{\begin{array}{ cc}\overline{\mathbf{r}}^{2}\\ \overline{\mathbf{r}}^{2}\\ \overline{\mathbf{a}}^{2}\end{array},\begin{array}{cc}\overline{\mathbf{r}}^{ 2}\\ \overline{\mathbf{r}}^{2}\end{array},\begin{array}{cc}\overline{\mathbf{r}}^{ 2}\\ \overline{\mathbf{r}}^{2}\end{array},\begin{array}{cc}\overline{\mathbf{r}}^{ 2}\\ \overline{\mathbf{r}}^{2}\end{array}>\alpha\end{array}\right.\) & \(w(\stackrel{{\rightharpoonup}}{{r}})=\left\{\begin{array}{ cc}1&|\overline{\mathbf{r}}^{ 2}|\leq\alpha\\ \alpha/|\overline{\mathbf{r}}^{2}|,\begin{array}{cc}\overline{\mathbf{r}}^{ 2}|>\alpha\end{array}\right.\) \\ \end{tabular}  & \(w(\stackrel{{\rightharpoonup}}{{r}})=\left\{\begin{array}{ cc}1&|\overline{\mathbf{r}}^{ 2}|\leq\alpha\\ \alpha/|\overline{\mathbf{r}}^{2}|, \begin{array}{cc}\overline{\mathbf{r}}^{ 2}|>\alpha\end{array} \right. signals are down-converted to IF (intermediate frequency) data for further processing in software receiver. Receiver signal tracking module processes the IF data and performs two tasks: first the satellites, originating the signal data, are acquired/identified, secondly the satellites are tracked using the stream of signals. The next step involves the transformation of signal tracking parameters to the satellite observations and navigation information. This information is used by estimation algorithm to calculate the receiver location information i.e., position, velocity, time etc. In Table 2, specifications of the custom designed software receiver are presented. For performance comparison, LSE, WLSE and the proposed estimator are implemented under same receiver specifications. Non-coherent scalar architecture is used for tracking satellites with the early-minus-late discriminator for code phase and cross discriminator for Doppler frequency.\(CNo\) and other observation parameters are averaged over 1 second. To reduce the dynamic stress errors, 3 rd order phase lock loop (PLL) assisted by frequency lock loop (FLL) is used. First order DLL (delay lock loop) is used for code phase tracking. For \(n+m\) visible satellites from BeiDou and GPS constellations, tracking module tracks the satellite signals using Doppler frequency and code phase \((f,\phi)\). Doppler frequency and Code phase information is used to estimate the satellite to receiver pseudorange rate \(\left(\hat{p}\right)\) and the satellite pseudorange observations (\(\rho\)) respectively. This information along other satellite information is transferred to position estimation module. Estimation process computes the receiver position in addition to maintain the integrity and reliability of calculated position. \begin{table}
\begin{tabular}{c c c} \hline \hline \multirow{2}{*}{**BeiDou Discriminator Output (Integration Time)**} & **GEO** & **2 ms** \\ \cline{2-3}  & **MEO** & **20 ms** \\ \hline
**GPS Discriminator Output (Integration Time)** & **MEO** & **20 ms** \\ \hline DLL bandwidth & & 1 Hz \\ PLL bandwidth & & 10 Hz \\ Position update interval & & 1 s \\ CN0 update interval & & 1 s \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Software Receiver Specifications. Figure 1: Implementation flowchart of proposed estimation scheme. In addition to the estimation process, an outlier identification and exclusion procedure is also introduced for verification of outlier free positioning. A reliability test is used to check whether the outlier observations is present or not. If the presence of an outlier observation is confirmed, probabilistic outlier observations are approximated.