Real time software GPS receiver implementation




Kashyap, Pradeep

Journal Title

Journal ISSN

Volume Title



During recent years, location technologies have emerged as a research area with many possible applications in wireless communications, surveillance, military equipment, etc. A GPS receiver is a boon to mankind which is operated on a microcontroller chip that does all the signal processing. The first generation GPS receivers mainly made use of hardware for almost all the processing required. Using hardware is not always the best solution everywhere and it's apparent that a software GPS receiver implementation provides a great deal of flexibility and a cost effective solution. A receiver performs acquisition of satellites, tracking of the acquired signals and position computation in order to deliver a user position fix. During the tracking of signals, most of the available software GPS receivers make use of the conventional three correlator approach which is time consuming because of the various number of multiplications involved in extracting the navigation data bits from the received signal. These multiplications are time consuming and delay the process of tracking resulting in a late position fix.

In GPS, code modulated signals are transmitted by several satellites and received by GPS receivers of which the current position is to be determined. The Doppler frequency estimate and code offset parameters of a satellite signal are given by an initial synchronization called acquisition, followed by a fine synchronization called tracking. The main purpose of tracking is to continuously refine these values using feedback loops. Advanced tracking loops use multiple correlators for more accurate tracking and multipath mitigation. This is a challenge for so-called software GPS receiver implementations.

In the implemented software GPS receiver, a block correlator is designed which implements multiple correlators in a joint mode by sharing computations due to which the overall system is implemented at the cost of a single correlator plus insignificant overhead. The block correlator requires only additions. All the multiplications in the equations are just sign changes. Performance benchmarking demonstrates significant processing speed gains close to analytical estimates. Thus reduced complexity block correlators enable more efficient signal processing in software receivers thereby enabling the implementation of real time software GPS receiver.

Also, Location Based Services (LBS) such as safety applications have become very popular. For example, US Federal Communication Commission Enhanced 911 (E911) Mandate seeks to provide emergency services personnel with location information that will enable them to dispatch assistance to wireless 911 callers much more quickly. Assisted GPS (A-GPS) is an extension of the conventional Global Positioning System (GPS) which increases start-up sensitivity by as much as 25dB relative to conventional GPS and reduces start times to less than six seconds. In A-GPS assistance data is delivered to the receiver through communication links. The implementation addresses the generation of the assistance data for GPS simulators for testing A-GPS receivers. The proposed approach is to use IP-based links and location support standards for assistance delivery avoiding network-specific signaling mechanisms so that GPS receiver developers can use this information for testing A-GPS capabilities using basic GPS simulators.


This item is available only to currently enrolled UTSA students, faculty or staff. To download, navigate to Log In in the top right-hand corner of this screen, then select Log in with my UTSA ID.


AGPS, GPS, implementation, labview, receiver, software



Electrical and Computer Engineering