Flexible Hardware Implementation of Collaborative GNSS Tracking Channel Heikki Hurskainen, Jussi Raasakka, and Jari Nurmi Department of Computer Systems Tampere University of Technology Tampere, Finland Email: ﬁrstname.lastname@tut.ﬁ Abstract—The most of the upcoming global satellite naviga- implementation results with analysis of the complexity of ourtion system (GNSS) signals will be composite type. Composite architecture. The paper is organized as following; the futuresatellite signals have unique spreading codes both for data composite GNSS signals and collaborative tracking algorithmschannel and dataless (pilot) channel. The combination allowsboth data extraction for navigation and longer integration of are discussed in Section II, the TUTGNSS receiver and a novelpilot for better timing and thus positioning accuracy. The non- implementation of composite tracking structure are presentedcoherent and coherent collaborative tracking algorithms are in Section III. Finally the implementation results are presentedpresented in literature. In this paper we present our work on in Section IV.ﬂexible hardware implementation, capable for both types ofcollaborative tracking. The implementation is done with FPGAbased TUTGNSS receiver platform, and synthesis results for II. F UNDAMENTALS OF COLLABORATIVE SIGNALimplementation are presented. From results it can be seen that the TRACKINGlogic consumption overhead for 16-channel collaborative trackingunit is 56.9% with full hardware support and 26.6% with A. Composite satellite signalsoptimized hardware support when compared to design without Optimal dual frequency combination for low costthe presented structure. GPS/Galileo was outlined in our earlier work , thus in this paper we discuss only signals within that frequency selection. I. I NTRODUCTION Both modernized GPS and Galileo will deploy composite Global Navigation Satellite Systems (GNSSs) are entering signals. The modernized GPS L1C signal, to be transmitted ina new era. The U.S. based NAVSTAR Global Positioning L1 frequency band (centered at 1,575.42 MHz), is using binarySystem (referred as GPS), with its modernization plans, is offset carrier (BOC) modulation on data channel 1 andstill the main system used, but it is about to be facing both time multiplexed BOC (TMBOC) modulation on pilot channelcompetition and completion from European Galileo system. 1 . Both channels are using their own sets of spreading,Both modernized GPS and Galileo are introducing new com- or pseudorandom noise (PRN) codes. The transmission powerposite signals where the traditional data channel, consisting of of the channels is weighted (25%/75% between data andlow rate navigation data, spreading code, possible modulation pilot) to meet the power spectral density (PSD) criteria ofsignal and carrier wave is enhanced with a pilot channel. multiplexed BOC (MBOC), which is set by the agreementPilot signals do not contain any navigation data, only a between European and U.S. GNSS authorities to ensure theshort secondary code. The beneﬁts of having composite signal compatibility of satellite navigation systems . In the newcomes from the dispersion of the two main properties of GNSS frequency band centered at 1176.45 MHz, GPS L5 signal issignal; navigation data and timing information. While the data the ﬁrst real navigation signal deploying composite signal. Thechannel holds the data containing ephemeris and almanac composite L5 signal consists of data component transmitted ininformation of the satellite constellation, the pilot channel in-phase and pilot channel transmitted in quadrature phase, andcan be integrated over longer periods to enhance the carrier- the code is binary phase shift keying (BPSK) modulated onto-noise ratio of the received signals. Naturally, the receiver the carrier .should be able to cope with the new composite signals, and Galileo signals, sharing the aforementioned frequencythe research over this area has been active. New algorithms bands, are called E1 and E5a. Both signals are compositefor both composite acquisition  and tracking  have been type, differences being in the modulation type and spreadingpresented in last years. code used and data rates. The biggest difference between In this paper we present our work towards the implementa- the signal fundamentals is the selected method of PRN codetion of ﬂexible hardware architecture for collaborative tracking creation. The E5a spreading codes are generatable, much likeof composite GNSS signals. The hardware capable of track- in equivalent GPS L5 signal, whereas E1 signal is usinging all composite signals is implemented in our TUTGNSS memory codes, impossible to generate without an error .receiver, a university based receiver tool running on Field Thus, shared code memory is needed to enable replica codeProgrammable Gate Array (FPGA) platform. We present the reproduction in tracking channels. The main properties of978-1-4244-8971-8/10$26.00 c 2010 IEEE
TABLE I C OMPARISON OF COMPOSITE GPS AND G ALILEO SIGNALS IN SHARED FREQUENCY BANDS Signal Data rate [Hz] PRN rate [MHz] Modulation GPS L1C 100 1.023 TMBOC GPS L5 50 10.230 BPSK Galileo E1 250 1.023 CBOC Galileo E5a 50 10.230 BPSKcomposite GPS and Galileo signals of interest are summarizedin Table I.B. Collaborative Tracking Algorithms Tracking is one of the key processes in satellite navigationreceivers. The signals transmitted by satellites are below noiseﬂoor when entering the surface of Earth. Spreading codesare used in transmitted signals, and when correlated to alocal replica with correct code delay and Doppler frequencyinformation, the integrated result raises signal power abovenoise and thus data becomes readable. Acquisition is a processto ﬁnd the coarse values for code delay and Doppler frequency.When found, tracking is used to ﬁne-tune these values andto decode the navigation data from the received stream . Fig. 1. Non-coherent channel combiningCollaborative (or sometimes composite) tracking refers tocooperative tracking of both data and pilot channels, and isdiscussed with detail in . This approach combines the bestof both worlds, tracking data channel enables navigation data = ( + − + ) + ( − − − )(1 − )extraction, whereas tracking pilot channel enables long inte- 1gration, independent of navigation bit boundaries, to estimate = √ [( + ) − ( + )] (2) 2the exact timing of the signal. 1 Non-coherent collaborative code tracking is illustrated in + √ [( + ) − (− + )](1 − ) 2Figure 1. There incoming signal is correlated with multiplecorrelators in two parallel channels, correlation results are where = 1 if ∣ + − + ∣ ∣ − − − ∣ and =integrated and fed to discriminator computation. The number 0 if ∣ + − + ∣ ∣ − − − ∣. The analysis presented inof correlators used per channel has a close relation to the  shows that coherent channel combining outperforms non-tracking algorithm used, e.g. typical discriminators for a single coherent algorithms.channel tracking consume three (e.g. narrow early-minus-late III. I MPLEMENTATION OF C OLLABORATIVE S IGNALcorrelator (NEML) ) to ﬁve (e.g. high resolution correlator T RACKING(HRC) ) correlators. Discriminator output is ﬁltered andused to control the frequency of replica code generation. The A. TUTGNSScomposite discriminator for non-coherent channel combining The fully university based TUTGNSS receiver is currentlyis given in Equation 1 . running on Altera Stratix II FPGA platform . The whole design consists of i) third party radio frequency front end (RF- = (∣ ∣2 + ∣ ∣2 − ∣ ∣2 − ∣ ∣2 ) (1) FE), ii) modular hardware design written in VHDL and iii) softcore NiosII processor  running the necessary baseband Where denotes correlation result for early and for late control and navigation software. The RE-FE is attached tocorrelator, results achieved both from data and pilot (upper the expansion interface of the FPGA through an additionaland lower channel in Figure 1 respectively). interface PCB and the navigation output as well as baseband Figure 2 illustrates the coherent channel combining. In debugging information are accessible through serial interfacecoherent tracking both channels use composite signal replicas, (RS-232) and serial peripheral interface (SPI) respectivelydifference being in relative sign between data and pilot com- .ponents. There exists relative sign ambiguity due to the data The hardware is implemented with modular approach,bit modulated in data signal, thus both variants are tracked and where the main design is hierarchically constructed frommaximum function is used to select the correct discriminator different functional units (e.g. Acquisition Unit, Trackingresult. The discriminator for coherent early minus late channel Unit), thus allowing change or modiﬁcation of one unit withoutcombining can be expressed as: modifying the others. The top level hierarchy of TUTGNSS
Fig. 3. Top level of TUTGNSS hardware TABLE II F ULL MASTER – SLAVE INTERFACE Fig. 2. Coherent channel combining Signal Width Description sv select 16 signal selection register sv special 16 special registerhardware is illustrated in Figure 3. Baseband converter unit code nco 32 Code NCO increment carrier nco 32 Carrier NCO increment(BCU) interfaces with RF-FE, and converts the incoming dig- start sc 32 Tracking timeital RF stream to more compatible with the rest of the system. ctrl 32 Channel controlMaster control unit (MCU) is interfacing the Nios II CPU withthe rest of the hardware accelerator. Acquisition unit (AU)encloses one massive parallel acquisition structure, whereas channel contains a dedicated memory handler for reading thetracking unit (TU) contains 16 ﬂexible tracking channels, each 32-bit blocks of PRN code from the shared code memory.channel containing up to 8 correlators. Phase measurement BOC modulation is added to PRN code in the trackingunit (PMU) and tracking result unit (TRU) are acting as channel, where the spreading code chip is simply XORed withintermediate storages for tracking channel measurement and the most signiﬁcant bit of NCO register to result BOC(1,1)output data. Sample counter unit (SCU) creates the internal modulation.time reference for the receiver. C. Master–Slave Channel Structure In our receiver, the hardware performs mainly the corre-lation functions for acquisition and tracking. The units read The composite tracking is enabled in TUTGNSS by intro-their controls from dedicated control registers and similarly ducing a master–slave structure. Tracking channels have alter-write their results to result registers. Control software uses the native control input from multiplexer structure (as illustratedsame registers to read results and write feedback to operations in Figure 4). All channels are capable of performing in both(e.g. tracking loops). In this way there are no decision making master and slave modes, the mode is controlled by controlmechanisms implemented in hardware, only the necessary signal.hardware acceleration is implemented. TUTGNSS software is ∙ In master mode the channel operates as normal, thealso designed with modular approach, and it can be roughly tracking is controlled by software via MCU.divided to baseband control and navigation processes. The ∙ In slave mode the channel operates as a slave to an-latest status of the navigation software is presented in . other (master) channel, in this mode the tracking process control inputs, listed in Table II, are read from masterB. Flexible Tracking Channel channel. Master channel can be any of the remaining 15 The concept for ﬂexible tracking channel was introduced in channels and the selection is controlled also through ctrlour earlier work . The target in ﬂexible channel design has register. The PRN number is bitmasked to produce pilotbeen on maximal hardware re-usage for tracking of different code when the master is tracking data and vice versa.signals, only signal speciﬁc blocks (e.g. code generators) have This arrangement enables ﬂexible conﬁguration of collabo-been added with multiplexers. Shared memory for Galileo E1 rative tracking on-the-ﬂy, independent of the current usage ofcodes is implemented outside of the tracking channels. Each channels. It also enables efﬁcient and ﬂexible usage of mixed
TABLE III R ESOURCE C ONSUMPTION OF 16– CHANNEL DESIGN (T RACKING U NIT ONLY ) IN A LTERA EP2S180F1020C3 D EVICE Design Combinatorial ALUTs Platform resources w/o master–slave 18,335 12.8% master–slave full 28,769 20.0% master–slave opt 23,203 16.2% maintaining the ﬂexibility and reconﬁgurability needed from future receivers. The tracking channels were implemented on TUTGNSS receiver platform and the hardware complexity was evaluated with synthesis results. The results showed 59.6% increase in logic consumption, when a 16-channel design with full master–slave structure was synthesized. With design optimization the increase in hardware overhead was reducedFig. 4. Implemented master–slave structure of TUTGNSS tracking channels to 26.6%. ACKNOWLEDGMENTmodes of single channel (e.g. for legacy GPS C/A signal) and The research leading to these results has received fundingdual channel (collaborative) tracking, since no hardware has from the European Union’s Seventh Framework Programmebeen cemented to work in a single mode. (FP7/2007-2013) under grant agreement n∘ 227890 (GRAM- The TUTGNSS channels are capable of creating only binary MAR project).replicas, thus composite replica code creation in case ofcoherent collaborative tracking (illustrated in Figure 2) is im- R EFERENCESpossible. Still, coherent combining of channels can be achieved  D. Borio and L. LoPresti, “Data and pilot combining for compos-when postcorrelation results are combined in software. Results ite GNSS signal acquisition,” International Journal of Navigation and Observation, vol. 2008, 2008, article ID 738183, 12 pages,of , , , and are available in tracking channel doi:10.1155/2008/738183.output, and remaining reconstruction of Equation 2 can be  D. Borio, C. Mongredien, and G. Lachapelle, “Collaborative code track-done in software. ing of composite gnss signals,” Selected Topics in Signal Processing, IEEE Journal of, vol. 3, no. 4, pp. 613 –626, aug. 2009.  H. Hurskainen, E.-S. Lohan, J. Nurmi, S. Sand, C. Mensing, and IV. R ESULTS M. Detratti, “Optimal dual frequency combination for galileo mass To test the complexity of the presented collaborative track- market receiver baseband,” in Signal Processing Systems, 2009. SiPS 2009. IEEE Workshop on, Oct. 7-9 2009, pp. 261 –266.ing implementation we synthesized the tracking unit consisting  “NAVSTAR GPS Space Segment/User Segment L1C Interfaces,” U.S.of 16 tracking channels, one code memory for Galileo E1 Air Force, Apr. 19, 2006, Draft IS-GPS-800.spreading codes and necessary memory handling logic. The  “Galileo Joint Undertaking - GPS-Galileo Working Group A (WGA) Recommendations on L1 OS/L1C optimization,”synthesis results of the TU design, with and without the http://www.galileoju.com/page3.cfm (active Oct 2006), Mar 2006.presented master–slave structure, are given in Table III. The  “NAVSTAR GPS Space Segment/User Segment L5 Interfaces,” U.S. Airresource usage percentages are computed from the number Force, Nov. 24, 2003, IS-GPS-705.  “Galileo open service signal in spaceinterface control document OS SIS(143,520) of adaptive look-up tables (ALUTs) in target device ICD, draft 1,” European Space Agency and European GNSS Supervisory. The number of used registers (15,840 dedicated logic Authority, Speciﬁcations Document, Feb 2008.registers) and memory (64 Block Memory Tiles) remains the  M. Braasch and A. J. van Dierendonck, “GPS Receiver Architectures and Measurements,” Proceedings of the IEEE, vol. 87, no. 1, pp. 48–64,same, since these are mainly used by the accumulators and Jan 1999.Galileo E1 PRN code memory respectively. The full master–  A. V. Dierendonck, P. Fenton, and T. Ford, “Theory and performanceslave structure causes 56.9% overhead in combinatorial logic of narrow correlator spacing in a GPS receiver,” Journal of the Institute of Navigation, vol. 39, no. 3, pp. 265–283, Fall 1992.when compared to design without collaborative tracking sup-  G. McGraw and M. Braasch, “GNSS multipath mitigation using highport. Due the large overhead, the master–slave hardware design resolution correlator concepts,” in in Proc. of ION National Technicalwas reduced to contain only timing critical components of Meeting, San Diego, CA, Jan 1999, pp. 333–342.  “Stratix II EP2S180 DSP Development Board - Ref-channel control, i.e. code and carrier generation feedback erence Manual,” http://www.altera.com/literature/manual/and the remaining interface signals were chosen to be driven mnl stx2 pro dsp dev kit ep2s180.pdf, Altera, Aug, 2005.(manually from) control software. With this approach the  “Nios II Processor Reference Handbook,” http://www.altera.com/literature/hb/nios2/n2cpu nii5v1.pdf, Altera,hardware logic overhead reduced to 26.6%. Jul 2010.  H. Hurskainen, “Research Tools and Architectural Considerations for V. C ONCLUSION Future GNSS Receivers,” Ph.D. dissertation, Tampere University of In this paper we presented our work on ﬂexible hardware Technology, Dec 2009.  T. Paakki, F. Della Rosa, H. Hurskainen, and J. Nurmi, “Navigationimplementation of a collaborative tracking channel of GNSS Algorithm Test Environment for GNSS Receivers,” in to appear in Proc.signals. The implementation presented enables efﬁcient us- European Navigation Conference (ENC GNSS 2010), Braunschweig,age of collaborative GNSS signal tracking algorithms, yet Germany, Oct 19–21, 2010.