A Low Complexity Navigation Data Estimation Algorithm for Weak GNSS Signal Tracking

The computation load of traditional navigation data estimation algorithms for weak GNSS signal tracking increases exponentially with respect to the number of data bits needed to be estimated. To solve this problem, by adopting the dynamic programming philosophy, a navigation data bits estimation algorithm is proposed. The proposed algorithm uses the partial sum of correlation values as data bit combination searching branches. It can predict and exclude searching branches of data bit combination which have small coherent accumulated energy as soon as possible by angle quantification, thus reducing its computation load to be linearly related to the number of data bits needed to be estimated. Simulation results show that for signal of 500bps navigation data rate, the carrier track loop with a frequency discriminator implementing 0.12s coherent accumulation by navigation data estimation improves the tracking sensitivity up to 7 dB compared with traditional frequency discriminator under the same track accuracy constraint.


Introduction
With the further widening application of radio satellite navigation, GNSS receiver is facing a more and more demanding work environment: In the coverage of the urban canyons and vegetation, the sattelite signal will be attenuated by more than a dozen or even dozens dBs compared to the open sky condition [1]; In the presence of strong interference, even if the antijaming treatment is performed in the front-end processing, it will still result in signal power antenuation obviously [2].Improving the track sensitivity will result in a higher rate of successful positioning under weak signal conditions, so the robustness of receiver is enhanced.Frequency discriminator performs a key role in the process of tracking the frequency of the signal carrier, so its performance have large impact for improving track sensitivity [3] [4].By using the correlation value sequence come from the prompt correlator, frequency discriminator can estimate the frequency track deviation which is the signal's carrier frequency minus the local replica carrier's frequency.As a frequency estimator, in order to obtain high estimation precision, the duration of data used for single frequency discrimination operation should be extended [5].Without the auxiliary ways to access the navigation data in advance, the the discriminator needs to estimate the combination of navigation data bits to achieve coherent accumulation.The modern GNSS signals have a pilot and data component transimited on the same carrier, and on the pilot component no data modulation is present.Although the frequency deviation can be estimated by the pilot component only with no need of data estimation, a discriminator jointly use the correlation value of pilot and data component will get a better performance [6].
So the navigation data estimation algorithm has great significance for design of frequency discriminator under weak signal condition.Many Literatures have researched the data estimation algorithm.Literature [7] adopts the Viterbi algorithm of dynamic programming philosophy to implement navigation data estimation, but this method needs to estimate the signal amplitude, and its effectiveness is limited by trace back depth parameter of the algorithm.Literature [8] estimate the bit combination based on the maximum energy criterion, and for every 5 adjacent bits, it adopts an exhaustive search method.Literature [9] combines the fast Fourier transform (FFT) with the exhaustive search of navigation data message together, and the FFTs needed by frequency discrimination is reduced by using the characteristics of navigation data only takes the vaule of +1 and -1.

239
A higher bit rate can shorten the time of first fix and transfer information for the augumentation system, a lot of GNSS signals adopt high navigation data rate, for example, the Beidou Satellite Navigation System (BDS) uses a 500 BPS navigation message for its GEO satellite's civil signals.Those traditional data estimation algorithms can be easily emplemented for the GPS signal which has a data rate of 50 BPS, while when used for the 500 BPS signal it encounters a big computational burden and can not be implemented in real-time.For the bit combination estimation problem of N bits, due to inverting all the data bits will not affect the frequency estimation, the number of bit combinations needed to be traversed is 1 2 N  .For the 50 BPS GPS signal, take N to 5~8, the signal-to-noise ratio obtained by coherent accumulation will be high enough.At this time, the number of bit combinations need to be searched is less.For the 500 BPS signal, compared with the 50bps signal, to achieve the same coherent integration time, the data bits need to be estimated increases 10 times.Take achieving 0.12s coherent integration by traditional algorithm as an example, for GPS signal only With such an exponational increment of computation load, it is difficult to implement data estimation in real time.Consequently, when used for GNSS signals with higher data rate, traditional navigation data estimation algorithms can not effectlivly support a long coherent accumulation time.
To solve this problem, a new navigation data estimation algorithm base on dynamic programming philosiphy [11] is proposed.The proposed algorithm uses the partial sum of correlation values as data bit combination searching branches.It can predict and exclude searching branches of data bit combination which have small coherent accumulated energy as soon as possible by angle quantification.This algorithm's computation complexity is in linear relationship with the number of data bits to be estimated, and it is applied in a frequency-locked loop (FLL) for weak GNSS signal tracking.

Frequency Discriminator of Maximization Energy Criterion
The new algorithm and its performance is illustrated by considering the tracking of weak GEO signal of BDS.With the assumption of multiple access interference can be neglected, the signal received by the receiver can be expressed as: In the above formula: P is the received signal power, ( ) C t is the spread spectrum code, ( ) d t is the navigation message, 0 f is the carrier frequency,  is the initial carrier phase, ( ) n t is a Gaussian white noise.The data rate for ( ) d t is 500 BPS, each data bit has a duration of 2 ms.Carrier tracking for Weak signal generally adopts the FLL structure, its implementation block diagram is shown in figure 1.The usual application senario is that the receiver switch from a phase-locked loop (PLL) tracking state to FLL tracking state, so the boundary of navigation data bits can be assumed to be known.After wipe off the pseudo-code and carrier, the received signal is applied to the prompt correlator, the integral interval of the correlator is a navigation data bit, which means the integral time of the correlator is 2 c T ms  .To improve frequency discrimination performance, the output sequence of the correlator is buffered and grouped every data bits, and then send for the discriminator which can jointly estimate the frequency track deviation and the data bits.Then the frequency discrimination results put through the loop filter and control the numerical oscillator (NCO) used for generate the local carrier, so the loop update interval is The frequency discriminator in the FLL is designed by the criterion of maximization energy of coherent accumulated corralation value, which should perform two dimensional search of frequency deviation and bit combination.The proposed algorithm is used to reduce the computation load of finding the accumulated correlation value which have the maximum energy and its corresponding bit combination at a given frequency track deviation.
For low signal dynamic conditions, the frequency track deviation can be assumed to be fixed, neglecting the code tracking error, the group of correlation values use for frequency discrimination can be modelled as follow [12]: In the above model: . According to the model of equation ( 2), taking a similar analysis method of estimating frequency of a single tone signal buried in noise [5], the maximum likelihood joint estimator of the frequency deviation and navigation data is as follows: In the above formula: is the bit combination written in vector form, f is the frequency deviation to be searched, ˆml f is the estimated frequency deviation, ml D  is the estimation results of bit combination.In the optimization problem defined by equation (3), calculation its objective fucntion can be viewed as such a process: firstly the original correlation value is phase rotated, then data modulation is wiped off with a bit combination for try, finally the coherent accumulated correlation value and its energy is obtained.The phase rotation is used to compensate side effects on coherent accumulation which is result from frequency deviation.In a given frequency deviation, by only searching the bit combination, a maximum coherent accumulated energy can be find, it can be viewed as a function So the joint estimator's output ˆml f is where ( ) acc E f takes its maximum value.As shown in figure 2, the maximum likelihood estimator can be approximately implemented, by using the condition that ( ) acc E f is a continuous function and the interpolation method.This estimated is used as the frequency discriminator of the FLL, its specific steps are as follows: 1) Set the frequency track deviation's possible value section [ , ] max max f f  , and take L sample points with equal space f  in this section, namely: use the proposed data estimation algorithm, and find out the sample point with the largest energy E is the maximum, no interpolation is needed, directly limit the frequency deviation to 1 f or L f , otherwise firstly calculate the coefficient which can discribe the peak bias, then the revised discrimination result is obtained by Thus the calculation of k E can be regarded as a navigation data estimation problem which use the phase rotated correlation value and obtain the maximum energy of coherent accumulation.The correlation value [ ] r x k can be viewed as a two-dimensional vector, then it is 180 degree rotated when k d is -1, while k d is 1 corresponding to no rotation.So the navigation data estimation problem can be viewed as: given N number of two-dimensional vectors whose direction can be inverted 180 degree, find out a inversion combination which can make the sum vector { , } i q S S has the maximum energy value.In next section, the low complexity algorithm to solve this problem will be addressed in detail.

Low computation complexity navigation data estimation
The proposed navigation data estimation algorithm view the process of coherent accumulation as a multistage decision process, and take the successive navigation message bits as a decision variable.In literature [7] the dynamic programming programming process directly uses the bit combination as the state variable, while the proposed algorithm used the current accumulated correlation value as the state variable which can stands for a branch of bit combination, namely, the dynamic programming is carried out in correlation domain.Let the subset m A of 2 to be the all possible accumulated correlation values using only the first m correlation value vector as the data bits varies.Then it is easy to find that 1 A has only one element and the following recursion formula is correct: A is defined recursivly, which exclude all the elements that can not have the maximum energy by continue the coherent accumulation, and all the elements keeped for continue accumulation is in this subset.Thus the whole process of the algorithm is: firstly set   A , which means that on each ray of 2 , there is at most only one element in m .Because the angle's value section is continuous, limited number of correlation value can be exclued by directly using this principle.Because where signal is present, ( ) acc E f is significantly greater than energy of other bit combinations, the adoption of appropriate quantitative treatment will not have large influence on navigation data estimation performance.So the algorithm takes quantization for the correlation value's angle in polarangle plane, the continuous section is approximated by a finite number of discrete values.In other words, the 2 is divided to a finite number of sectors, and each sector is quantized to its middle ray.Calculating m and exclusion correlation value on this basis, it can be guaranted that in ervery quantitative sector there is at most only one element in m .Quantization of angle for the algorithm divided the  is: For any accumulated correlation value { , } x y S S at step m , it can be expressed in the polar-angle plane as follow: In the quantization process, the sample phase most closel to  is selected as the quantized angle, and keeps the energy not changed, so the quantized accumulated vector { , } i q S S can be expressed as follow: According to the above analysis, the new navigation data estimation algorithm can be implemented as the flow chart in Figure 4.
The process of calculation 1 m based on m can be specficed as follows: 1) At initial set 1 m to an empty set.
2) For each element y in m , calculate the accumulated vector y  whose corresponding next bit value is 1, and the accumulated vector y  whose corresponding next bit value is -1.
3) Let ( ) k y   to be the quantized angle of y  , if there is non elements in  From the recursive calculation process of m , it can be seen that elemment number of m is less than M .By noticing that computation amount at each iteration step is proportional to the number of the elements in m , the total computation complexity upper bound is in the form of M N  .Therefore, for a fixed M , the computation complexity of the algorithm is in linear relationship with the number of data bits to be estimated.Of course, as the increase of N , incrment in M is needed to reduce the quantification error, and thus reduce the corresponding performance loss.

Performance Analyses
In order to get the specific quantitative analysis results, aimed for the GEO signals of BDS, setting the coherent accumulation time to 0.12s (that means N = 60 $), the performance of data estimation and frequency discrimination under typical weak signal condition is verified by numerical simulation.
Considering that under the low dynamic condition, the frequency track deviation is relatively small, so in the implememnt of the frequency discriminator the section of possible frequency deviation is set to [ 10 ,10 ] Hz Hz  , and 11 sampling points with interval of 2Hz is selected in it.When M is sufficiently large, the performance improvement obtained by increase M is not obvious.Simulation results shows that take 10 2 M  can ensure relative high performance, so the performance simulation in this paper is carried out in such a case.

The bit error rate of navigation data estimation
For simplicity, without considering the error correcting encode and decode technique, only the original bit error rate is counted.According to the optimal data demodulation theory, the theoretical error rate can be calculated by the following formula [13]: As the frequency diviation sampling interval of the discriminator is 2 Hz, in the simulation the phase rotation process is bypassed.The frequency diviation value is take from -1Hz to 1Hz in steps of 0.2Hz, and for each value 2000 group of original correlation is generated for process.The actual statistic bit error rate and the theoretical bit error rate without tracking deviation at different CNR are as shown in table 1 It can be seen from table 1 that the measured bit error rate is well close to the bit err rate obtained by the optimal demodulation theory.The lower the CNR is, the greater the bit error difference is, but the maximum difference is not more than 0.03.When the CNR is as low as 20 dB-Hz, the bit error rate is up to close 0.3, at this condition serious loss of frequency discrination performance is expected.

The frequency discriminator performance
The performance of the frequency discriminator under different CNR is investigated by simulation.With a given CNR and frequency track deviation, the gain coefficient and noise level of the discriminator at certain condition can be reflected by statis the averge value and variance of the discrinator's output.From -7.5 Hz to 7.5 Hz, with the interval of 0.5 Hz, deviation value is selected to generate the original correlation value.At a given CNR and frequency deviation 2000 original correlation value is produced.By statising the averge value and variance value of discriminator output at different CNR and frequency deviation, the perormance curve of the discriminator is as shown in Figure 5.  for the frequency discriminator can be defined.On this basis, quantitative performance comparison between the new frequency discriminator of this paper and the traditional frequency discirminator can be done, the results are shown in Table 2.In order to ensure the same length of correlation value is used for frequency discrimination, the traditional discriminator is designed as follows: a) Divide the 60 correlation values into 30 groups, with each group including the two adjacent correlation values; b) For each group of data, firstly the ratio between cross product and dot product is calculated, and then the estimated frequency values is produced by an arc tangent function; c) the estimated values got from 30 group of data is averaged up to form the final discriminator output.It can be seen from Table 2 that the normalized variance and the averaged gain of the new frequency discriminator is significantly superior outperforms the traditional discrimintor at the two investigated CNR.Especially, when the CNR is 20 dB-Hz, the traditional discriminator's output is almost pure noise.

Evaluation of computational complexity
The navigation data estimation algorithm is implemented by C++ and runs on a 64 bit server with 2.4 GHz CPU, so the amount of calculation can be measured by run time of the process.Because the main computation load of the discriminator embodies in the navigation data estimation, the run time of the new frequency discriminator in table 2 is mainly consumed by data estimation.Therefore the single run time for data estimation is obtained by divding run time of discriminator with the times of data estimation used in the discriminator, the results are shown in Table 3. Adopting the traditional exhaustive search method to estimate navigation data, even for a single bit combination, the run time is greater than 1500s, so when used for a 60 bit data estimation, the calculation amount for the new algorithm is less than 0.00001 times of the traditional algorithm.As the FLL updates every 120 ms, it can be seen from the above table that the processing speed of data estimation is near the requirement of real-time implementation, and by reducing M the processing speed can be improved more.The new data estimation algorithm need to store m which at most can have M elements, so its required amount of storage is in linear relationship with M .While the traditional algorithm only needs to storage the current maximum energy among the bit combinations have been searched, its required amount of storage is less.This fact shows that the dynamic programming algorithms have the feature of replacing the time complexity with the space complexity.

Simulation
As the data estimation can be implemented with little compation amout, this article designed a frequency discriminator for the 500 BPS signal with a 0.12s coherent accumulation time.The FLL's trak capability improvement for weak signal of the new discriminator is investigated by simulation.
The second-order FLL structure is adopted for simulation, and by using the new discrinator and traditional discriminator mentioned in the previous section respectively, two tracking loops is designed for compare.The initial value of doppler frequency is -180 Hz, the total length of the simulation data is 120 s, and the loops start work at a steady tracking state, which means the initial velecity and accerlaration tracking error is 0. As only considering the carrier tracking, the code tracking deviation is assumed to be zero.According to the loop parameter design method in literature in [14], the main characteristics of a tracking loop can be reflected by the product of the loop noise bandwidth L B and the loop update interval T , namely L B T .For the static situation with zero doppler viration rate, a smaller loop bandwidth shoud be adopted, so the loop parameters is designed under condition of  In the static condition, for the loop with the new frequency discriminator, the standard deviation of the tracking error is 2.18 Hz, while for the loop with traditional frequency discriminator, the standard deviation of the tracking error is 14.54 Hz.In the dynamic condition, for the loop with the new frequency discriminator, the standard deviation of the tracking error is 1.27 Hz; while for the loop with traditional frequency discriminator, the standard deviation of the tracking error is 19.96Hz.In the weak signal condition, whether there are dynamic or not, the frequency tracking error of the loop with new frequency discriminator is less than 5 Hz, while the frequency tracking error of the loop with traditional frequency discriminator are up to 30 ~ 40 Hz.Further simulation shows that, if the loop with the traditional frequency discriminator needs to achieve the same tracking precision as the loop with the new frequency discriminator, the required CNR of the dynamic and the static signals should be 27 db -Hz and 30 db -Hz respectively, that means, the new discriminator increases the sensitivity of the FLL by 7dB.

Conclusion
As the application environment of GNSS receiver becomes more and more harsh, how to improve the track sensitivity has become a hot and diicult spot for research.In order to perform coherent accumulation stride across multiple navigation data bits in a frequency discriminator, the bit combination of navigation message should be estimated, and this is proved to be an effective measure to improve the track sensitivity.Almost every traditional data estimation algorithm aims at the GPS signals whose data rate is 50 BPS, when they are used for the 500 BPS signal its computation amount increases exponatially.Based on the philosiphy of dynamic programming and through the quantitative processing of the coherent accumulation value in the polar-angle plane, a navigation data estimation algorithm have been proposed which reduces the computaltion complexity to be in linear relationship with the number of data bits for estimation.It has solved the problem of track weak signals of high data rate independently.By extension of the correlation value model, it will be convenient to extend the data estimation algorithm suitable for the modern GNSS signals with a pilot component and improves the accuracy of jointly tracking the data and pilot components.In addition, combination of the new algorithm with the error correction encode and decode technique is worth to be researched further.
combinations should be searched, while for the BDS's GEO signal 59 2 number of bit combinations should be searched, which means the computation load increase 54 2 times.

Figure 1 .
Figure 1.Block diagram of the FLL for weak signal tracking

~
the signal to noise ratio, A is the signal amplitude with a normalized noise energy, err f is the frequency track error deviation,  is the carrier phase track deviation, k d is the navigation data bits, its value is + 1 or 1, [ ] IP k and [ ] QP k are the correlation value, and it can be written as a complex value form

Figure 2 .
Figure 2. Diagram of the joint estimator for frequency deviation and navigation data

A
be derived by the above recursion formula, by finding its elements of maximum energy, ( ) acc E f can be obtained.As the noise part in the original correlation value is irrelevant to each other, the accumulated correlation values are limited to a small area of twodimensional plane, while with the increase of m , the number of elements in m A increases exponentially.So for a larger m , the elements distribution of m A shows a feature of massive gathering.Therefore with tolerance of certain approximation, only a little elements in m A is needed to continue the accumulation in the next decision-making stage.These keeped for accumulation elements are the most likely to be of maximum energy after all the correlation value are accumulated, and a lot of other elements is excluded from consideration in the after stages in advance.So a subset m in m

..
On the other hand, due to the vector 1 y r  also is in N A , Therefore the inner product of 1 y and r should be non positive, that means the angle is between them is less than or equal to 90 degrees.Using the condition of

Figure 3 .
Figure 3. Geometry principle used for exclusion correlation values

2
to M sectors, and the quantized rays is uniformly distributed, namely with the interval of   , the discrete quantitative angle for section[0,2 ]


ISSN: 1693-6930 TELKOMNIKA Vol. 13, No. 1, March 2015 : 238 -249 244 add y  to 1 m ; otherwise, let z to be the element in 1 m which has the quantized angle of ( ) k y   , then compare the amptitude value of y  and z , if | | | | y z   ，the element z of1 m is replaced by y  , else keep 1 m unchanged.

Figure 4 . 4 )
Figure 4. Flow chart of implementing the navigation data estimation algorithm

Figure 5 .
Figure 5.The performance curve of the frequency discriminator dynamic situation of 3 Hz/s doppler viration rate, a wider loop bandwidth shoud be adopted, so the loop parameters is designed under condition of 0.025 L B T  .In the static condition of 20 dB-Hz signal, the tracking error comparison of the two loops is shown in Figure 6; while in the  ISSN: 1693-6930 TELKOMNIKA Vol. 13, No. 1, March 2015 : 238 -249 248 dynamic situation of 23 dB-Hz signal, the tracking error comparison of the two loops is shown in Figure 7.

Figure 6 .Figure 7 .
Figure 6.Comparison of the track performance for the two loops with zero frequency variation and the CNR is 20 db-Hz

1 1
 A , then recursivly calculate the 2 、 3 untilThe geometric principle used for corrrelation value exclusion is show in figure3, if there are two elemnets 1 y , 2 y in the m A with the same angle in the polar-angle plane and 1 can not get the maximum energy.This conclusion can be proved by reduction to absurdity.Supposing that from 1 N using its step to step recursive relationship.At last find out the vector of maximum energy element in N , and use it as the result of coherent accumulation, the corresponding decision value sequence are the estimation result for bit combination.So a properly correlation value exclusion method is needed.TELKOMNIKA ISSN: 1693-6930  A Low Complexity Navigation Data Estimation Algorithm for Weak GNSS .... (Shunxiao Wu) 243 y

Table 1 .
. The statistic results of bit error rate

Table 2 .
Comparison of discriminator performance

Table 3 .
Average run time for a single navigation data estimation