Journal of Global Positioning Systems (2009) Vol.8, No.2 :174-186 doi:10.5081/jgps.8.2.174 Application of Mixed-radix FFT Algorithms in Multi-band GNSS Signal Acquisition Engines Nagaraj C Shivaramaiah, Andrew G Dempster, Chris Rizos School of Surveying and Spatial Information Systems, University of New South Wales, Sydney, Australia Abstract Due to their fast operation, Fast Fourier Transform (FFT)-based coarse signal synchronization methods are an attractive option for Global Navigation Satellite System (GNSS) receiver baseband signal processing. However, there are several reasons why the utility of FFT-based methods is dependent on understanding the trade-off between synchronization speed and the required processing power. Firstly, the new signals of the GNSS family, for instance Galileo and GPS modernization, employ longer period Pseudo Random Noise (PRN) codes and higher signal bandwidths, which demand FFTs of large transform lengths. Secondly, to gain an advantage in positioning performance, next generation receivers target multiple GNSS signals, and since each signal has its own code length (and hence a minimum sampling frequency), the receiver should accommodate FFT blocks of varying lengths. This paper discusses the requirements of FFT-based algorithms for such a multi- band receiver and analyzes the application of prime- factor and mixed-radix FFT algorithms. A novel way of factorizing different transform lengths into smaller transforms and then combining these smaller-point FFTs to compute the larger required FFTs is described. It is shown that the use of the proposed architecture reduces the computational load (or processor cycles) and increases the re-usability of the acquisition search engine to process different signals. Keywords: Code Acquisition, GNSS Receivers, FFT, Multi-band GNSS, FPGA 1 Introduction There has been a tremendous increase in interest in satellite-based radio navigation technologies with the announcement of designs for multiple satellite systems and new ranging signals (Rizos 2007) that will complement those of the venerable Global Positioning System (GPS). The greatest interest has been directed to the European Global Navigation Satellite System (GNSS) known as Galileo, as well as the modernization plans for GPS. These developments (and other GNSS and Regional Navigation Satellite Systems) have posed new challenges to the receiver development community, especially with regard to the baseband signal processing of multiple GNSS signals (Dempster 2007, Dempster and Hewitson 2007). In order to compute the receiver-satellite range and to demodulate the data streams, a GNSS receiver has to first synchronize with the satellite signal. The receiver has to search for the Doppler frequency and the PRN code chip delay. Signal synchronization is generally carried out in two steps: the coarse synchronization (referred to as Acquisition), and fine synchronization (called Tracking). During signal acquisition, the receiver searches for available satellites and estimates the approximate chip delay and Doppler frequency. The resolution of the coarse estimates of chip delay and Doppler frequency depends on the requirements of the succeeding tracking stage - typical values being 0.5 chips for the code delay and 500 Hz (for one millisecond coherent integration) for the Doppler frequency. The number of time cells to search depends on the code length. The number of frequency cells to search depends on the total frequency ambiguity and also on the coherent integration time. As an example, for a code length of 10230, Doppler frequency uncertainty region of ± An acquisition engine is more useful initially when the receiver is powered on, rather than during normal operation. Hence the design goal of the acquisition engine in a multi-band GNSS receiver is to have the flexibility to search any of the desired signals using as little computer 5 KHz and an integration time of 1 ms, there will be 20460 time cells (at 0.5 chip steps) and 21 (at 500 Hz steps) frequency cells to search. Generally, search algorithms in GNSS receivers spend more of their resources (time and processing power) estimating the chip delay than the Doppler frequency (Kaplan and Hegarty 2006).