Skip to content


Open Access

Utilization of multi-rate signal processing for GNSS-SDR receivers

  • Baharak Soltanian1Email author,
  • Ali Shahed hagh ghadam2 and
  • Markku Renfors1
EURASIP Journal on Advances in Signal Processing20142014:42

Received: 5 November 2013

Accepted: 4 March 2014

Published: 31 March 2014


In this article, we propose a low-complexity solution for the decimation chain in the digital front-end (DFE) of global navigation satellite system (GNSS) receivers. The received signals are typically highly oversampled in the DFE of GNSS receivers to reduce the ranging error and therefore to improve the positioning accuracy in the tracking stage of the GNSS receivers. However, this oversampling imposes unnecessary complexity on the acquisition stage of the GNSS receivers where an approximate estimate of the code phase and Doppler frequency shift is produced. Therefore, reducing the sampling frequency for the acquisition stage reduces the overall receiver complexity without any significant effect on the performance of such receivers. The proposed solution for the decimation chain involves the use of infinite impulse response (IIR) filters as the decimation filter as they can be implemented more efficiently in comparison to finite impulse response (FIR). In addition, a hybrid time-frequency domain filtering scheme is proposed here to alleviate the effects of non-linear phase in the decimation IIR filter as well as the analog front-end receivers. The advantages of this proposed method is explored and stated, both from performance and complexity perspectives, through rigorous comparison with alternative available solutions.


Digital filtersIIRFIRGNSS receivers

1 Introduction

In the past few decades, global navigation satellite systems (GNSS) have become popular and act as a basis for precise and reliable positioning and navigation for various important applications in our society. The United States NAVSTAR Global Positioning System (GPS), Russian GLONASS, and European Galileo are some of the existing and emerging GNSS alternatives. They provide location and time information in all weathers, anywhere on or near the Earth, where there is an unobstructed line of sight to four or more satellites [1].

Existence of different space-based navigation systems calls for GNSS receivers which can function with one or more of those available systems. Considering the ongoing evolution of GNSS systems and increasing interest to multi-GNSS receivers, software-based signal processing is a suitable option, instead of traditional hardware-based solutions which are inflexible. Software-defined radio (SDR) is a general framework for highly flexible multi-system solutions also in the context of GNSS devices [13].

Navigation algorithms in general start with cold acquisition to determine the number of online satellites and provide a rough extract of the code phase and frequency shift related to Doppler phenomena. Traditionally, this has been done by correlating the incoming signal with a locally generated pseudorandom noise (PRN) code. There are three different methods in the literature to perform the acquisition correlation. First, serial search acquisition implements the correlation procedure in the time domain and is very popular among application-specific integrated circuit (ASIC)-based GPS receivers. The main advantage of this method over the other two is simplicity which makes it a perfect choice for ASIC receivers, but it has a disadvantage of being time-consuming, especially in the case of ‘cold start,’ i.e., cases where there is no prior information about the geographic region where the positioning devices are located [46]. The second method is parallel time-frequency search acquisition. Fully parallel search is very fast but also very complex to implement. Therefore, hybrid solutions between fully serial and fully parallel are, in practice, considered. In general, time domain correlation-based parallel solutions require massive amounts of very simple arithmetic processing and are not very practical to be implemented in software. The third method is fast Fourier transform (FFT)-based acquisition/correlation, which is based on the fact that correlation becomes a multiplication in the frequency (FFT) domain [1, 3]. In this approach, after carrier removal/digital down-conversion (DDC), the incoming signal is transformed into the frequency domain and is multiplied by the conjugate FFT of a known locally generated PRN code. Finally, inverse FFT (IFFT) is applied to the resulting frequency domain correlation function. FFT-based acquisition is highly parallel and efficient, as well as flexible, but it has relatively high complexity [7, 8]. In this article, we focus on the latter method, i.e., the FFT-based acquisition method. Moreover, the assumption through this article is the basic navigation scenario, where the receiver has line of sight to a sufficient number of satellites and the channel has a relatively flat frequency response within the signal bandwidth

In general, the complexity of the acquisition stage in all the above methods, including the FFT-based approach, is directly impacted by the oversampling factor which is used in the digital front-end (DFE) of the GNSS receivers. The oversampling in the GNSS receivers is mainly targeted at improving the estimation accuracy of the code phase and Doppler frequency shift in the tracking stage of these receivers which in turn results in improved ranging and positioning accuracy [9]. However, the acquisition stage can still well operate at a lower sampling frequency as this stage only provides the approximate code phase and Doppler frequency. The previous work by the first author [10] proposed a reduction in sampling frequency for both tracking and acquisition stages which has the drawback of rounding the correlation function’s peak and affects the overall performance of the GNSS receivers. In this article, an alternative solution is presented which involves reducing the sampling frequency only for the acquisition stage and uses the original highly oversampled signal for the tracking algorithm. The proposed decimation chain for the acquisition stage utilizes low-complexity infinite impulse response (IIR) filters as an anti-aliasing filter as opposed to their higher complexity finite impulse response (FIR) counterpart [11, 12]. In addition, a hybrid time-frequency filtering scheme is proposed here to improve the phase linearity of the IIR decimation filter as well as the frequency response of the analogue filter in the receiver’s front-end.

In this article, Section 2 formulates the GPS signal model and introduces an SDR-type GNSS receiver architecture. Section 3 presents alternative decimation filter structures for the receiver and develops a model for calculating the FFT domain filtering coefficients. Also, the possibility of utilizing joint time and FFT domain filtering for narrowband interference suppression is presented. Section 4 includes numerical performance results and comparisons in terms of filter frequency responses and implementation complexity and also in terms of GPS acquisition performance. Finally, conclusions are given in Section 5.

2 FFT-based GNSS receiver

In this article, the GNSS signal we choose to deal with is GPS L1 C/A, and we model the incoming signal before transferring it into baseband as [1]
u ( n ) = i = 1 L A i d i ( n ) c i ( n ) e 2 ( f IF + f d i ) n + w ( n ) ,

where d i (n) is the navigation data, assumed to be constant during the FFT block, and c i (n) is the PRN code of i th online satellite. Here fIF is the radio architecture-dependent nominal intermediate frequency (IF) after down-conversions in the front-end, f d i is the frequency shift due to the Doppler effect of satellite i and receiver local oscillator frequency offsets, L is the number of satellites in the line of sight, A i is the complex gain factor for satellite i, and w(n) is additive white Gaussian noise.

Figure 1 shows a general block diagram for conventional front-end plus FFT-based acquisition [1, 3]. On the analog side, after the signal is transferred into an IF frequency, the continuous-time signal, x c (t), is filtered by an anti-aliasing filter, h c (t), before the analog-to-digital converter (ADC). The main reason is to restrict the bandwidth of the incoming signal and satisfy the Nyquist bandpass sampling theorem [3]. Then, the filtered signal is digitized by passing through a bandpass sampling ADC [3]. Afterward, the signal will be down-converted by passing through a digital down-converter (DDC) which consists of a direct digital synthesizer (DDS) and a low-pass filter (LPF), which is decimating at least during the acquisition stage of the receiver. The purpose of the LPF is to bandlimit the down-converted signal and remove the harmonic component produced by DDS. Generally, different filter designs would be considered for acquisition (h A (n)) and tracking (h T (n)) stages, for implementing reduced sampling for the acquisition process.
Figure 1
Figure 1

Block diagram for a GNSS receiver with FFT-based acquisition. An FFT domain filter response compensator is proposed as a new element for mitigating the non-ideal frequency response of the analog and digital front-end filters.

The FFT-based correlation processing has not been commonly considered for tracking, but it could be an interesting alternative for GNSS SDR receivers [13, 14]. Such tracking solution can be easily combined with the proposed architecture, just using different LPF designs, which provides a higher sampling rate and increased FFT length for correlation processing.

In the considered superheterodyne radio architecture, a single ADC is enough as the analog IF signal is real. The DDS generates a complex I/Q signal, and two identical low-pass filters are used for the in-phase (I) and quadrature (Q) components. Using configurable DDS and configurable decimating low-pass filters, the bandwidth and sampling rate for the consecutive signal processing stages can be optimized separately for different GNSS systems (GPS, Galileo, GLONASS) while the analog sections are common for different systems.

Figure 1 shows an example of a possible receiver architecture [1], but the considered digital signal processing structure is generic and suitable, e.g., for direct-conversion/low-IF type of analog front-ends. Naturally, the ADC requirements depend on the choice of the analog front-end design.

In an SDR-based multi-GNSS receiver, the ADC sampling rate would be high with respect to the interesting GNSS signal bandwidth. Actually, in the GNSS application, also receiver architectures where the sampling is done directly for the RF signal have been seriously considered [15]. This becomes possible due to the low spectral dynamic range as the GNSS signal levels are typically below the noise floor. Due to high ADC sampling rate, digital decimation filtering before the correlation processing is mandatory in such receivers from the implementation complexity point of view. Especially, in FFT-based processing, high sampling rate would lead to excessive FFT length [10, 16]. The digital low-pass filters are designed to suppress the aliasing of out-of-band noise and interference components sufficiently in conjunction with sampling rate reduction.

At this point of the acquisition process, after low-pass filtering and decimation, the satellite-dependent Doppler shift is removed. Then, the FFT of the resulting sequence, v(n), is multiplied by the conjugate of the FFT of the locally generated PRN code, c(n). At this point, IFFT is performed, and finally, a search to find the peak of the correlation function (CF) is implemented.

To compensate the imperfections of the decimation/anti-aliasing filter’s frequency response, we propose to apply a compensator in the FFT domain [17, 18]. A phase response compensator becomes mandatory, if IIR filters with non-linear phase response are considered. A magnitude response compensator might also help to relax the passband ripple requirements of both FIR and IIR designs. Additionally, the compensator could be used for mitigating the non-ideal passband frequency response of the analog filtering stages. The FFT domain compensator is basically implemented through complex weights of the FFT bins, which are designed based on knowledge of the overall passband filtering response. Additionally, this FFT domain filtering stage can be used for fine-tuning the overall frequency response in the passband and transition band regions, e.g., for sharpening the transition band.

The pseudorandom codes used, e.g., in the GPS system, are repetitive. Therefore, cyclic correlation is used with the FFT length equal to the length of the code epoch. Regarding FFT domain filtering, it is also enough to do the weighting for the bins of each FFT block, which implements cyclic convolution. There is no need to consider overlap-save of overlap-add type of processing [16] in this application.

In the block diagram of Figure 1, the coefficients C(k) used for correlation processing can be precomputed and stored in the memory of the device, since they only depend on the PRN sequence. Also, the filter compensator coefficients can be precomputed based on knowledge of the digital, and possibly also analog, filter frequency responses. Since the two sets of coefficients are applied in the same way on the FFT of the input signal, we can actually combine these functions in the precomputed coefficients. In this case, the filter compensator introduces no additional complexity in the correlation processing. However, if the compensator coefficients are adjustable, e.g., based on h1(n) or h2(n), the coefficients need to be recomputed for all needed PRN codes after adjusting the compensator coefficients.

3 Filtering in time and FFT domains

3.1 Filters and compensators

Digital filters can be categorized in two different types, FIR and IIR filters [12]. The z-domain transfer functions of N th-order FIR and IIR filters are
H f ( z ) = i = 0 N b i z - i
H i ( z ) = i = 0 N b i z - i 1 + i = 1 N a i z - i .

FIR and IIR filters have their advantages and disadvantages as discussed in the ‘Introduction’ Section. It is possible to design and implement FIR filters in such a way as to have a linear phase, but they have high order which leads to high complexity. On the contrary, IIR filters introduce phase nonlinearity but have lower order and lower complexity.

In multi-rate filtering applications, FIR filters have an advantage in terms of computational complexity. Considering sampling rate reduction (decimation) by a factor of R using an FIR filter of length N + 1, (N + 1) / R coefficient multiplications per input sample are needed. Making use of coefficient symmetry of linear-phase FIR filters, the multiplication rate becomes about (N + 1) / (2R) per input sample. If general IIR filters would be used for multi-rate filtering applications, there is no such advantage, and implementation of an N th-order IIR filter takes at least N multiplications per input sample.

The so-called halfband and M th-band FIR and IIR filters are particularly effective in multi-rate filtering applications, both classes having effective decimated polyphase implementation structures [19, 20]. In our case study in Section 4, we consider decimation by 2, so we introduce here briefly both classes of halfband filters. Halfband filters in general have symmetric transition bands around a quarter of the sampling rate, and transition band aliasing is unavoidable. When this effect is not acceptable, an additional filtering stage is needed to suppress it. Another common characteristic is that when the filter has reasonable stopband attenuation, the passband ripple becomes very small. This is because the frequency responses at ω and π - ω are tied up together. In the FIR case, the sum of zero-phase frequency responses adds up to a constant value, ej ω N/2HHB-FIR(e j ω ) = 1 - ej(π-ω)N/2HHB-FIR(ej(π-ω)). In the half-band IIR filter case, the squared magnitude responses add up to a constant value, |HHB-FIR(e j ω )|2 = 1 - |HHB-FIR(ej(π-ω))|2.

In the case of a halfband FIR filter, about half of the filter coefficients are zero. The filter transfer function can be expressed, for the feasible filter orders N = 2, 6, 10, …, as
H HB - FIR ( z ) = h 0 + h 2 z - 2 + h 4 z - 4 + + h N / 2 - 1 z - N / 2 + 1 + 0.5 z - N / 2 + h N / 2 - 1 z - N / 2 - 1 + + h 2 z - N + 2 + h 0 z - N .

This means that even-indexed coefficients (with index range 0, …, N) are symmetric and among the odd-indexed coefficients, only the center one takes a non-zero value of 0.5 (with typical scaling). Utilizing coefficient symmetry, CHB-FIR = (N + 2) / 8 non-trivial coefficient multiplications need to be computed per input sample. We see that there is a factor of (about) 2 saving first due to symmetric impulse response, second due to the halfband nature, and third due to sampling rate reduction by 2.

Halfband IIR filters can be obtained, for example, as odd-order elliptic low-pass filters with specific squared magnitude response symmetry around f s /4. Such an IIR filter design has all its poles on the imaginary axis, and it can be implemented as a parallel connection of two allpass filters A1(z2) and A2(z2) in the form
H HB - IIR ( z ) = A 1 z 2 + z - 1 A 2 z 2 / 2 .
Both allpass filters can be implemented as a cascade of second-order allpass sections of the form
A k ( 2 ) = a k ( 2 ) + z - 2 1 + a k ( 2 ) z - 2 .

In the halfband case, the two constituent allpass transfer functions are functions of z-2, and the structure has efficient decimated polyphase implementation [19, 20]. A decimated halfband IIR filter of odd order N can be implemented using (N - 1) / 2 first-order allpass sections executed during one output sampling interval. Since a first-order allpass section can be implemented with one coefficient multiplier, the multiplication rate becomes (N - 1) / 4 per input sample.

Halfband FIR and IIR filters provide 6- or 3-dB attenuation, respectively, at the transition band center frequency of f s  / 4. Therefore, an additional filter section is needed for suppressing transition band aliasing around this frequency. In the proposed overall structure with decimation by 2 at the time-domain filter stage, FFT domain filtering can be used for suppressing the transition band aliasing. If needed, an additional simple, multiplier-free time domain filter section,
H 0 ( z ) = 1 + z ( - 1 ) / 2 ,

may be included after the sampling rate reduction stage. Such a filter stage increases the attenuation around f s  / 4 by inserting a zero in the frequency response at this frequency.

Utilization of both FIR and IIR filters introduces linear or nonlinear phase distortion to the resultant signal. In GNSS receivers, the mentioned phase distortion changes the code phase which prevents the device to converge toward the correct position of the user. An error of ±1 chip in the code phase results in an error of 300 m in pseudorange. The phase distortion caused by linear-phase FIR filters can be modeled as a delay equal to half of the order of the filter, N / 2, in the time domain. To compensate its effect, the rule of thumb is to remove the first N / 2 samples from the filter output sequence. Contrary to FIR filters, IIR filters introduce a nonlinear phase distortion which cannot be modeled easily in the time domain and somehow it must be compensated. The distortion related to utilization of IIR filters affects both passband and transition band responses, but the effect can again be compensated by the FFT processing.

The compensated FFT sequence can be written as follows:
Z ( k ) = H eq ( k ) · V ( k ) ,

where Heq(k), k = 0, …, K - 1 are the compensator coefficients corresponding to the used FFT length, K, and derived based on the principles discussed below.

Let Hfe(e j ω ) be the front-end frequency response, including in the general case both analog and digital filters. Then, in the basic compensator approach, the frequency response is inverted in the passband and possibly also in part of the filter transition band. In the stopband region, zero-valued coefficients can be used to remove the noise. This leads to a more general approach where we define a target frequency response H T (k), k = 0, …, K - 1 and choose the FFT domain filter coefficients as
H eq ( k ) = H T ( k ) / H fe e 2 πk / K , k = 0 , , K - 1 .
Here we choose the target frequency response according to an ideal low-pass filter, i.e., the passband and stopband target frequency response values are 1 and 0, respectively. Defining the passband edge frequency as the FFT index k e , the FFT domain filter coefficients can be written as
H eq ( k ) = 1 / H fe ( e j 2 πk / K ) k [ 0 , k e ] 0 k [ k e + 1 , K - k e - 1 ] . 1 / H fe ( e j 2 πk / K ) k [ K - k e , K - 1 ]

Using this approach, zeros will appear in the overall frequency response at the FFT frequency bins in the stopband region. However, due to FFT leakage effects, the attenuation between the stopband FFT bin frequencies is limited. This effect is characterized numerically in Section 4. It will be seen that the stopband attenuation provided by the FFT domain filtering helps to sharpen the time domain filter frequency response significantly.

3.2 Narrowband interference removal

There are various potential sources of narrowband interferences (NBIs) to the GNSS signal bands (including leakage of local oscillator signals of nearby radio devices and, in some cases, intentional jamming) [21, 22]. If the NBI level is high enough, it will have severe effects in the GNSS receiver signal processing.

GPS signals are wideband signals of the spread spectrum type and their power spectral densities are below the thermal noise level. They are fairly robust against suppression of some relatively narrow portions of the spectrum. Thus, in principle, it is possible to remove narrowband interferences in the FFT domain by zeroing the affected FFT bins [22]. However, due to the spectral leakage of FFT processing, this approach has limited performance. Additionally, strong NBI would increase the voltage range of the ADC significantly, leading to more demanding ADC specifications.

The alternative approach is to use narrowband bandstop (notch) filter in the analog or digital front-end [23, 24]. The choice of an analog notch filter has the benefits that it avoids the increase of the ADC voltage range which would increase the complexity and cost of the ADC. However, analog and the simplest digital narrowband notch filters have nonlinear phase response which distorts the cross-correlation severely.

Utilizing a narrowband notch filter for removing the interference would distort the correlation function shape and severely degrade the acquisition performance, as discussed in Section 4. However, if we use filtering in the FFT domain, then we can again compensate the phase distortion due to the notch filter using the same principle as in Equation 7. This compensation is done for the frequency bins around the notch frequency. The best we can do for the bins affected by the NBI is to force them to zero. The FFT domain filtering process is still formally expressed by Equations 6 and 7, where now Hfe includes also the frequency response of the notch filter. We set Heq(k) = 0 for k = kNBI - Lnotch / 2, …, kNBI + Lnotch / 2, where kNBI is the frequency bin closest to the NBI center frequency and 2 × Lnotch + 1 is the notch width in FFT bins.

Even though the FFT bins significantly affected by the NBI are removed, it is important to compensate the phase distorting around the notch. Furthermore, the combination of time domain and FFT domain notch filtering enables to create a sharp notch with low complexity.

Figure 2 shows the block diagram for all the time domain filtering sections considered in our study.
Figure 2
Figure 2

Halfband decimation filter for I/Q signal with notch filter section and an additional filter stage. Improved attenuation is provided at f s /2.

In the next section, we will show the result for the effect of narrowband interference and utilizing the notch filter to remove its effect.

4 Analysis, numerical comparison, and result

In this section, numerical results for utilization of the developed filtering approach are presented. Different combined time and FFT domain filter designs are presented, and the results are compared with basic reference solutions. In the following, we consider only the digital filtering sections. Compensating also the distortions of the analog filters can be included after their magnitude and phase responses are available, e.g., through measurements during system calibration. Performing FFT domain filtering enables the possibility of combining the coefficients with the multipliers coming from the FFT of the spreading sequence, and these coefficients can be precomputed and obtained from the memory of the device.

In our case study, we use GPS L1 signal with a carrier frequency of 1,575.42 MHz. The input signal in our simulation is the down-converted version of L1 signal. The coarse/acquisition (C/A) code has a length of 1,023 chips and a chip rate of 1.023 MHz. In this case, a timing error of one chip corresponds to about 300-m error in pseudorange. Conventionally, in the acquisition stage, the target for timing error is 0.5 chips. When the same filtering solution is used for precise delay estimation (i.e., code tracking), the target is clearly below 0.1 chip residual timing error. In addition, we use oversampling factor 16, i.e., the sampling rate is F s =16.367 MHz. Decimation by 2 is performed by the digital filtering stage, such that the oversampling factor of FFT processing is 8. In a multi-GNSS SDR receiver, the ADC sampling rate would be much higher, but using a lower sampling rate in the simulations does not essentially affect our conclusions about the acquisition performance.

4.1 Filter design

The target is a low-pass frequency response with a passband edge of 3 MHz and a stopband edge of 4 MHz, corresponding to the normalized frequency of 0.375 π and 0.5 π, respectively, at the input sampling rate. We consider two choices for the minimum stopband attenuation, 40 and 60 dB. All aliasing spectral components should be attenuated at least by these values. Here we present four different time domain filtering solutions, including minimum-order FIR and IIR designs, as well as halfband FIR and IIR designs. It will be seen that much more relaxed filtering would be sufficient in the case of an interference-free radio environment and ideal analog front-end. The motivation for considering higher attenuations is to remove all possible interferences in frequencies which do not contribute significantly to the performance.

As a reference, the minimum order for a pure time domain linear-phase FIR filter design with 60 dB stopband attenuation and ±0.1 dB maximum passband ripple would be 42, thus requiring 10.75 multiplications per input sample. For the combined filtering approach, basic frequency response analysis cannot be applied, and the plotted frequency responses are obtained through simulations.

In the minimum-order FIR and IIR designs, the optimization results in significant distortion in the passband frequency response which is compensated by FFT domain filtering. The time domain filters are traditional designs with equiripple passband and stopband responses, and the minimum filter orders are found by adjusting the passband and stopband ripple values such that target stopband attenuation is reached. The minimum filter orders and corresponding multiplication rates are shown in Table 1, and the resulting magnitude responses are shown in Figure 3. In these solutions, the passband amplitude response variation is very significant. The FFT domain compensation of the passband response affects greatly also the stopband frequency response. This is because the FFT domain filter operates at a lower sampling rate and its amplitude response is symmetric around f s  / 4. It can be expected that the order of the time domain filters could be reduced by using optimized non-equiripple designs balancing the time and FFT domain filter characteristics on the passband and stopband regions. However, such optimization is not straightforward to carry out and is left as a topic for future studies.
Table 1

Minimum time domain filter orders and multiplication rates per input sample for different filter designs

Stopband attenuation

40 dB

60 dB

TD FIR only



Min-order FIR



Min-order IIR



Halfband FIR



Halfband IIR



TD, time domain.

Figure 3
Figure 3

Magnitude responses for minimum-order FIR (upper) and IIR (lower) designs with 40-dB stopband attenuation.

In both FIR and IIR halfband designs, the passband ripple becomes very small, and the effect of the compensation stage on the stopband ripple is very minor. The main effect of the FFT domain filter is to suppress the transition band aliasing, making it possible to use halfband filters with the adopted filter specifications, while providing also very sharp stopband edges. However, with the 60-dB stopband attenuation requirement, an additional filter section providing a transition band zero, as described in Section 3.2, is needed to reach the specification. The characteristics of these designs are summarized in Table 1, and the resulting magnitude responses are shown in Figures 4 and 5.
Figure 4
Figure 4

Magnitude responses for halfband FIR designs with stopband attenuation of 40 dB (upper) and 60 dB (lower).

Figure 5
Figure 5

Magnitude responses for halfband IIR designs with stopband attenuation of 40 dB (upper) and 60 dB (lower).

From Table 1, it can be observed that the combined time and FFT domain filtering approach provides quite significant savings over the basic time domain FIR filtering approach, while providing also essentially sharper transition band. All these designs reach very small passband ripple, and their phase responses are practically linear. The halfband IIR filtering approach reaches the lowest multiplication rates, while the minimum-order FIR filter gives also relatively low multiplication rates and the simplest implementation structure.

Figure 6 shows an example where a notch is included in the frequency response at 0.5 MHz to suppress NBI, in the case of the IIR halfband design with 60-dB stopband attenuation. In the FFT domain, the notch width is 2Lnotch + 1 = 101 bins, and the time domain notch is implemented as H notch ( z ) = ( 1 - e j 2 π ω notch z - 1 ) / ( 1 - 0.95 e j 2 π ω notch z - 1 ) . We can see that plain FFT domain NBI suppression gives 24-dB attenuation only, whereas with joint time-FFT domain processing, the notch goes well below -60 dB. FFT domain processing sharpens the notch provided by the time domain filter, but it also reduces the attenuation at the symmetrically located stopband frequencies.
Figure 6
Figure 6

Magnitude responses for halfband IIR design with 60-dB attenuation and a notch at 0.5 MHz.

4.2 Complexity evaluation

In this article, we choose the complexity metric as the overall number of real multiplications and real additions required for the code and Doppler acquisition. In addition, we select the split-radix algorithm since it is an effective approach to implement FFTs and IFFTs and fairly commonly used for complexity evaluation. For an FFT or IFFT of length K, the split-radix algorithm takes

  • K(log2(K) - 3) + 4 real multiplications

  • 3K(log2(K) - 1) + 4 real additions

In general, the uncertainty about the GPS carrier frequency due to Doppler and receiver local oscillator offset is ±10 kHz. The typical target for residual frequency offset in the acquisition stage is ±250 Hz, so the Doppler search is done in 500-Hz steps. Then, 41 steps have to be completed in the worst case. It is enough to do the FFT for the offsets of 0 and 500 Hz only, because the FFTs for the other cases can be obtained just by shifting the FFT bins. However, the FFT domain multiplications and IFFTs have to be repeated 41 times in the worst case. The FFT domain multiplication by the FFT of the code sequence is done in the ±3-MHz range, for 6,000 points, leading to 24,000 real multiplications and 12,000 additions per search step.

Overall, the basic FFT-based acquisition for a single PRN takes about 4.5 × 106 multiplications and 13.2 × 106 additions in the worst case when using 8 × chip rate samples in the FFT processing. On the other hand, if there is prior knowledge about the frequency offset in the order of ±500 Hz, only three steps of the search need to be completed. This requires about 0.48 × 106 multiplications and 1.51 × 106 additions. Using the time domain FIR filtering solution with 60-dB stopband attenuation takes about 0.18 × 106 multiplications and 0.33 × 106 additions, whereas the joint time-frequency filtering approach with minimum-order FIR filter takes about 37,000 multiplications and 49,000 additions. In other words, the complexity of the time domain FIR filter solution is close to the complexity of a single acquisition step (0.19 × 106 multiplications and 0.6 × 106 additions) whereas the lowest-complexity joint design reduces the filtering complexity by a factor of about 5.

In conclusion, while the filtering part has a rather small effect on the overall complexity in the worst-case full-range Doppler search, the effect may be quite significant in limited search cases when there is prior information about the Doppler values of different satellites, which is often the practical situation.

4.3 GPS acquisition performance

In this subsection, we examine how the shape of the correlation peak is affected by different filtering solutions and check the acquisition performance for a GPS L1 signal. In the simulations, for simplicity, the code phase has been kept constant at 928.125 chips. Table 2 lists the simulated filtering configurations and the acronyms used in the result plots.
Table 2

Simulated filter configurations

No filter

No filtering in time domain or frequency domain


IIR time domain filter

2-tap FIR TD

2-tap FIR time domain filter


Halfband FIR time domain filter


Halfband IIR time domain filter


IIR filter with frequency domain equalization and sharpening

2-tap FIR TD + FD

2-tap FIR filter with frequency domain equalization and sharpening


Halfband FIR filter with frequency domain equalization and sharpening


Halfband IIR filter with frequency domain equalization and sharpening

Decimation by 2- to 8-MHz sampling rate is included in all cases. TD, timde domain; FD, frequency domain.

Figure 7 shows some examples of the shapes of the correlation peaks with different filtering solutions in the ideal noise-free case. We can see that the IIR filter distorts the shape of the correlation peak severely, whereas the linear-phase filters are just introducing time shifts. However, as the main metrics for performance analysis, we use (i) the probability of missing the correlation peak and (ii) root-mean-square (RMS) delay estimation error E Č p - C p 2 . Here E, Č p , and C p denote the expectation, the estimated code phase, and the actual code phase, respectively. The criterion for missed detection is that the estimation error exceeds half of the chip interval. To improve the code phase estimation, we use a second-order polynomial model for the correlation peak and find its maximum location. The model is obtained by fitting the polynomial to the highest peak and the two neighboring samples on both sides of it [25]. For each filter design, the reference code phase is obtained in the same way from a noise and interference-free simulation. When calculating the RMS values, only the cases where the delay estimation error is within ± half of the chip interval are included. The following results have been obtained from simulations with 20,000 independent noise instances.
Figure 7
Figure 7

Shapes of the correlation peak with different low-pass filtering cases. For 3-MHz passband edge, 4-MHz stopband edge, and 60-dB stopband attenuation. Ideal, noise-free case.

Figures 8 and 9 show the RMS delay estimation error and the missed detection probability for different filtering solutions as a function of the carrier-to-noise ratio (CNR) in a situation where there is only one PRN code present and the frequency offset is compensated accurately. We have included in the comparison also the most simple FIR filter with two taps and transfer function (1 + z-1) / 2. The other filters are as explained in Section 4.1 with 60-dB attenuation. It was verified that decimation to the rate of 8 samples per chip without any filtering results in significant distortion. We can see that the simple two-tap filter provides the lowest RMS delay error in this test case. Time domain filtering with an elliptic IIR filter results in clearly degraded performance, while the other filtering solutions provide rather similar detection and RMS performance. It is notable that the FFT domain compensation greatly enhances the performance of IIR filters.
Figure 8
Figure 8

RMS delay estimation error for different filtering solutions. As a function of the CNR in a situation where there is only one PRN code present and the frequency offset is compensated accurately.

Figure 9
Figure 9

Misdetection probability for different filtering solutions. As a function of the CNR in a situation where there is only one PRN code present and the frequency offset is compensated accurately.

Figures 10 and 11 show corresponding results in the case where another PRN code with 10 dB higher power level (which is quite an extreme case) is included and there is a Doppler error of 250 Hz for the target PRN (typical worst-case situation with 500-Hz resolution in the Doppler search). We can see differences mostly in significantly degraded missed detection characteristics which are quite similar for all the filter solutions (the no-filter case is not included here anymore).
Figure 10
Figure 10

RMS delay estimation error for different filtering solutions. As a function of the CNR in a situation where there is worst-case Doppler error in the target PRN and another PRN code is present at 10 dB higher level.

Figure 11
Figure 11

Misdetection probability for different filtering solutions. As a function of the CNR in a situation where there is worst-case Doppler error in the target PRN and another PRN code is present at 10 dB higher level.

Figures 12 and 13 show a case where a 100-kHz wide notch is included at the center frequency of 100 kHz. Here we can observe quite significant benefit for the joint time and frequency domain filtering approaches. The FFT domain compensation is able to reduce the problems due to a non-ideal time domain notch filter.
Figure 12
Figure 12

RMS delay estimation error for different filtering solutions. As a function of the CNR in a situation where there is a notch at 100-kHz frequency from the carrier to reject strong narrowband interference.

Figure 13
Figure 13

Misdetection probability for different filtering solutions. As a function of the CNR in a situation where there is a notch at 100-kHz frequency from the carrier to reject strong narrowband interference.

From the results, we can see that such a code phase estimation scheme with optimized multi-rate filtering and eight times chip rate FFT processing could provide sufficient accuracy for the final solution, without separate tracking code phase in the case of one-shot positioning tasks. Of course, this is applicable as such only when there is good visibility of the satellites, such the CNR levels above 40 dBHz can be expected and RMS errors below 0.1 chips can be reached.

5 Conclusion

In this article, we have studied joint filtering solutions combining time domain filters and FFT domain processing. We have seen that FFT domain filtering and equalization helps to significantly relax the requirements for preceding time domain filtering stages while enhancing the passband amplitude and phase response characteristics and providing the sharpened transition band.

Such combined filtering solutions are feasible especially whenever time domain pre-processing is followed by FFT or other means of converting the signal to the frequency domain (like analysis filter bank) for further processing. In addition to FFT-based SDR-type GNSS receivers, the approach could find use, for example, in multi-carrier wireless communication systems or audio signal processing.

Basic filter design tools are not sufficient for finding optimized designs in some of the considered cases. Especially, further work is needed for optimizing the time domain stage in the minimum-order FIR and IIR filter designs in order to achieve minimax or L2-optimized overall frequency response. Some savings in the time domain filter order can be expected through such optimization.


Authors’ Affiliations

Department of Electronics and Communications Engineering, Faculty of Computing and Electrical Engineering, Tampere University of Technology, Tampere, Finland
MaxLinear, Carlsbad, USA


  1. Borre K, Akos DM, Bertelsen N, Rinder P, Jensen S: A Software-Defined GPS and Galileo Receiver - A Single-Frequency Approach. Birkhäuser, Boston: ; 2007.MATHGoogle Scholar
  2. Mitola J: The software radio architecture. IEEE Comm. Mag 33(1995):26-38.View ArticleGoogle Scholar
  3. Tsui J: Fundamentals of GPS Receivers: A Software Approach. New York: Wiley; 2000.Google Scholar
  4. Parkinson B, Spilker J: Global Positioning System: Theory and Application. Danvers: AIAA; 1996.View ArticleGoogle Scholar
  5. Jovanovic VM: Analysis of strategies for serial-search spread-spectrum code acquisition direct approach. IEEE Tran. Comm 36(1988):1208-1220.View ArticleGoogle Scholar
  6. Polydoros A, Weber CL: A unified approach to serial search spread-spectrum code acquisition - part I: general theory. IEEE Trans. Comm 32(1984):542-549.View ArticleGoogle Scholar
  7. Davenport R: FFT processing of direct sequence spreading codes using modern, DSP microprocessors. In Proceedings of the IEEE National Aerospace and Electronics Conference. Dayton, OH, USA: ; May 1991.Google Scholar
  8. Braasch MS, van Dierendonck AJ: GPS receiver architectures and measurements. Proc. IEEE 1999, 87: 48-64. 10.1109/5.736341View ArticleGoogle Scholar
  9. Kos T, Markezic I, Pokrajcic J: Effects of multipath reception on GPS positioning performance. In Proceedings of ELMAR. : Zadar, Croatia; Sept 2010.Google Scholar
  10. Soltanian B, Collin J, Takala J: The effect of the incoming signal decimation on the performance of the FFT-based acquisition stage in SDR GNSS receivers. In Proceeding of Navitec. Noordwijk, Netherlands: ; Dec 2010:8-10.Google Scholar
  11. Saramäki T, Yu T, Mitra SK: Very low sensitivity realization of IIR digital filters using a cascade of complex all-pass structures. IEEE Trans. Circuits Syst 1987, 34: 876-886. 10.1109/TCS.1987.1086237View ArticleGoogle Scholar
  12. Mitra S: Digital Signal Processing: A Computer-Based Approach. New York: Mcgraw-Hill; 2006.Google Scholar
  13. Yang C: Zoom, pruning, and partial, FFT for GPS signal tracking. In Proceedings of the National Technical Meeting of The Institute of Navigation. Long Beach, CA, USA: ; Jan 2001.Google Scholar
  14. Ba X, Liu H, Zheng R, Chen J: A novel algorithm based on FFT for ultra high-sensitivity GPS, tracking. In Proceedings of the 22nd International Technical Meeting of The Satellite Division of the Institute of Navigation. Savannah, GA, USA: ; Sept 2009.Google Scholar
  15. Akos DM, Tsui JBY: Design and implementation of a direct digitization GPS receiver front end. IEEE Trans Microwave Theory Tech 1996, 44(12):2334-2339. 10.1109/22.554550View ArticleGoogle Scholar
  16. Crochiere RE, Rabiner LR: Multirate Digital Signal Processing. Englewood Cliffs: Prentice-Hall; 1983.Google Scholar
  17. Hegde V, Pai S, Jenkins WK, Wilborn J: Genetic algorithms for adaptive phase equalization of minimum phase SAW filters. In Proceedings of the 2000 Annual Asilomar Conference on Signals, Systems, and Computers. Pacific Grove CA, USA: ; Nov 2000:1649-1652. (2000)Google Scholar
  18. Martoyo L, Weiss T, Capar F, Jondral FK: Low complexity CDMA downlink receiver based on frequency domain equalization. In Vehicular Technology Conference. Orlando, FL, USA: ; Sept 2003.Google Scholar
  19. Renfors M, Saramäki T: Recursive nth-band digital filters - part I: design and properties. IEEE Trans. Circuits Syst. CAS-34 1987, 24-39.Google Scholar
  20. Renfors M, Saramäki T: Recursive nth-band digital filters - part II: design of multistage decimators and interpolators. IEEE Trans. Circuits Syst. CAS-34 1987, 40-51.Google Scholar
  21. Miller M, Nguyen T, Yang C: Symmetric phase-only matched filter (SPOMF) for frequency-domain software GNSS receivers. Navigation: J. Inst. Navigation 2007, 54: 31-42.View ArticleGoogle Scholar
  22. Capozza PT, Holland BJ, Hopkinson TM: A single-chip narrow-band frequency-domain excisor for a global positioning system (GPS) receiver. J. Solid-state Circuits 35(2000):401-411.View ArticleGoogle Scholar
  23. Chien Y, Huang Y, Yang D, Tsao H: A novel continuous wave interference detectable adaptive notch filter for GPS receivers. In Proceedings of 2010 IEEE Global Telecommunications Conference. Miami, FL, USA: ; Dec 2010.Google Scholar
  24. Liu Y, Laakso TI, Diniz PSR: A complex adaptive IIR notch filter algorithm with optimal convergence factor. In European Conference on Circuit Theory and Design. Espoo, Finland: ; Jan 2001.Google Scholar
  25. Soltanian B, Lehtinen V, Lohan E-S, Renfors M: Complexity analysis of an interpolation based rake receiver for WCDMA systems. In Global Telecommunications Conference. San Antonio, TX, USA: ; Nov 2001.Google Scholar


© Soltanian et al.; licensee Springer. 2014

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.