Login / Signup

GPS receiver design

  • user warning: Table './devemc/sessions' is marked as crashed and last (automatic?) repair failed query: SELECT COUNT(sid) AS count FROM sessions WHERE timestamp >= 1422555171 AND uid = 0 in /home/devemc/public_html/dev/includes/session.inc on line 157.
  • user warning: Table './devemc/sessions' is marked as crashed and last (automatic?) repair failed query: SELECT COUNT(DISTINCT s.uid) FROM sessions s WHERE s.timestamp >= 1422555171 AND s.uid > 0 in /home/devemc/public_html/dev/modules/user/user.module on line 790.
GPS design

GNSS (Global Navigation Satellite System) is a common name for all of the satellite based positioning systems, which are GPS (Global Positioning System) from US, Galileo from EU, GLONASS from Russia, and CNSS (Compass Navigation Satellite System) from China. GPS is the first and most popular one among these systems.

In US, FCC ordered all the network operators to follow E911 act(Enhanced 911) to offer the physical address of calling party who is calling 911 emergency call. More and more cellular phones have armed with GPS feature. In the same time, the navigation devices are popular due to fast growing of private cars and mobile phones in the emerging countries. Thanks to Google, more and more consumers can easily connect their GPS devices to the Google web services for navigation, virtual sight viewing or satisfying their curiosity. All of these services are available free of charge.

Google's Inspiration

Google MapGoogle is a great web innovator. Everybody knows about Google Map and Google Earth. And its competitors like Microsoft and Yahoo have to catch up. However Google is not the inventor of the web GIS. Actually web GIS has been available for a long time. Never the less, Google promotes the web GIS with its great influence in the Internet, and furthermore deliveries the free services in a quick and elegant way (AJAX). More and more companies and developers have identified the business opportunities by integrating the existing navigation technologies and web GIS. The new successful stories spread the world and gain the attentions of the venture capitals. As a result, the GPS ecosystem becomes highly competitive and exciting.

Competitive Market

A successful GPS application is made up of GPS terminals, map data services and service centers. That means the GPS applications are blending businesses involve Internet, mobile terminal, mobile network, automotives, and consumer electronics. More and more industries are looking for the new business opportunities in the navigation and location aware services via merging and acquisitions. It is a clear trend that the map data and services are the key factors of a business success. As usual, the silicon suppliers and device manufacturers have to fight for the market share and making devices cheaper. The startup companies must release products with unique features. Some suppliers offer dual mode or tri-mode satellite positioning chipsets for GPS, Galileo and CNSS. Some independent RFIC vendors team up with the software suppliers to promote the software GPS solutions in reduced BOM cost. Some other vendors are promoting the one chip RFIC for all RF features including Bluetooth, FM radio and GPS.

GPS Receiver Architecture

GPS works by making one way range measurements from the receiver to the satellites. In order to arrive at a position fix we must know precisely where the satellites are and how far we are from them. These data are available to the receiver by reading the data message from each satellite which provides a precise description of the satellite orbit and timing information which is used to determine when the signal was transmitted by the satellite. Each satellite transmits on 2 frequencies in the L band (L1=1575.42 MHz and L2=1227.6 MHz). Each satellite transmits a unique CDMA (Code Division Multiple Access) code on these frequencies. On top of this the signal is modulated with a 50 Hz data message which provides precise timing information and orbital parameters. Since the receiver knows which sequence is assigned to each satellite it knows what satellite the data is coming from. The receiver creates a copy of the sequence and correlates or integrates the received signal multiplied by this copy over a period of time (in our case 1 ms). The particular sequence transmitted by each satellite has been chosen to reduce the chance that a receiver will track a satellite transmitting a different PRN sequence. For more detail on correlators see the Zarlink chipset documentation or some of the other references.

GPS functional blockThe attached figure is a traditional GPS receiver architect (from Zarlink). It is made up of antenna, RF/IF section and a base band processing unit, which usually has correlators and an embedded processor. The host processor talks to the embedded processor in an industrial standard protocol called NMEA (National Marine Electronics Association) or optional proprietary protocols. The physical links between the processors might be a standard UART, USB or Bluetooth. The communication over USB and Bluetooth has to simulate a virtual serial port to talk with high level application software. The default baud rate of NMEA is 4800bps, the higher rate doesn't make sense.


Sarantel GPS Helix AntennaBecause of miniaturization and multi-functional requirements, the designer faces to more and more challenges in antenna design. These factors include human interference, noises from embedded processors and external interferences. It is better to copy the reference design from the application notes for an inexperienced engineer. Never the less, GPS antenna design is still easier than the mobile phone antenna design. We know, the latest mobile phone has to work on 800MHz, 900MHz and 1800MHz with PA and faces to the big noises inside.

The most commonly used antennas in GPS are the Helix and the patch antenna. Patch antenna has strong direction selectivity, which is used in most of the external GPS mice. The Helix antenna is much suitable for handheld GPS, which offers broader antenna angle, and it works better than patch antenna when it is close to human.

There are some off-the-shelf antennas available in the market. Most of them are external antennas, which offer better performance.

Sarantel offers GPS antenna in full Balun design, which offers 360 degree antenna reception and highly frequency selectivity, and most of the noises can be eliminated. This company also offers the bulk ceramic antenna as the smallest antenna in the world.

Mr. Mark Kesauer offers an inexpensive external GPS antenna design on Circuit Cellar. The PDF document is available on here. This design uses commonly available components and materials.


The RF parts of a GPS from different suppliers are slightly different but most of these ICs are sharing same concept. The RF section includes LNA, filter, PLL and BPSK demodulator. Maxim’s MAX2769 demonstrates the general RF IC for GPS receiver.

The RF front-end of a GPS receiver first amplifies the weak incoming signal with a low-noise amplifier (LNA), and then downconverts the signal to a low intermediate frequency (IF) of approximately 4MHz. This downconversion is accomplished by mixing the input RF signal with the local oscillator signal using one or two mixers. The resulting analog IF signal is converted to a digital IF signal by the analog-to-digital converter (ADC).

The MAX2769 integrates all these functions (LNA, mixer, and ADC), thus significantly reducing the development time for applications. The device offers a choice of two LNAs: one LNA features a very-low, 0.9dB noise figure, 19dB of gain, and -1dBm IP3, for use with passive antennas; the other LNA has a 1.5dB noise figure with slightly lower gain and power consumption, and a slightly higher IP3, for use with an active antenna.

There is a provision for external filtering at RF after the amplifier. The signal is then downconverted directly using the integrated 20-bit, sigma-delta, fractional-N frequency synthesizer together with a 15-bit integer divider to achieve virtually any desired IF between zero and 12MHz. A wide selection of possible IF filtering choices accommodates different schemes, such as those of Galileo.

The overall gain from RF input to IF output can be tuned or automatically controlled over a 60dB to 115dB range. The output can be chosen as analog, CMOS, or limited differential. The internal ADC has a selectable output of one to three bits. The integrated reference oscillator enables operation with either a crystal or a temperature-compensated crystal oscillator (TCXO), and any input reference frequency from 8MHz to 44MHz can be used.


The correlators of GPS are the essential parts of the whole system of bit synchronization and decoding. The correlators will feed the raw digit output to the embedded processor to acquire, confirm, pull-in, track the satellites, and translate into NMEA protocol, which the host controller can understand.

The correlators can be implemented in hardware and software. Recently, the number of correlators increases dramatically. The early product from Zarlink has 12 channel correlators. The newer SiRF-II has 1920 correlators inside, and the latest SiRF-III has over equivalent 200K correlators to reduce the TTFF. MediaTek (MTK) Taiwan also released a low cost GPS chip, which has 32 channel correlators inside. I use a MTK based GPS for my own testing purpose. It works fine, although I still expect more accuracy from the device. However, its performance is good enough as a consumer class GPS receiver.

Some open source projects released the FPGA based correlators. On the other hand, the correlators can be implemented in a FFT based software algorithm, which is referred as software GPS and cited in an application note from Maxim.

Embedded Processor

The silicon suppliers are trying to promote their own platforms in GPS. The task for the embedded processor is calculation and tracking the different satellites and interfacing with host processor in NMEA. If you check the attached NMEA document, you will realize that the embedded processor has to deal with so many parameters in detail. The requirements for the embedded processors are big enough memory address space and sufficient processing power for intensive calculation. The ARM7TDMI is a 32bit core, which offers sufficient memory space and processing power. The peripherals included UART, USB and Bluetooth have been available for ARM for a long time. As a result, the latest GPS chips from different suppliers have the identical trend to select ARM7TDMI as the embedded processor.

There are some key KPIs for the GPS, which might be related to the correlators and software in the embedded processor.

  1. Cold Start: A cold start results when there is no valid Almanac or Ephemeris information available for the satellite constellation in SRAM, or when the time and/or position information is NOT known (i.e. starts at 0 in both cases). Also a cold start will be initiated if an Almanac is valid, but a fix cannot be achieved within 10 minutes of power-up. This could occur if the receiver position has moved significantly since it was last powered-up, but the position change and time are NOT initialized by the user
  2. Warm Start: A warm start results when there is a valid Almanac, and the initial time and position are known in SRAM, but the ephemeris is NOT valid (i.e. more than 4 - 6 hours old).
  3. Hot Start: A hot start results when there is a valid Almanac, valid ephemeris (i.e. less than 4 - 6 hours old), and when accurate time and position information are also known in SRAM (position error less than 100km, time error less than 5 minutes).

Software GPS

If the hardware can be implemented in software, the total cost of a GPS can be reduced. Different suppliers have different approaches. One solution is merging the embedded processor to the host processor, so the job is done in the host. In this solution, the basic hardware blocks such as correlators are still kept. Some companies call this approach as accelerated software GPS. The other solution is taking the digitalized signal from IF, and implements the correlators and decoders in software. We can call it as full software GPS. The software GPS is only available in commercial licenses on specific chip in linkable library. Sometime the software GPS license might be more expensive than a low cost IC.

SiRF has acquired the Centrality Atlas, who offers SoC for GPS. Its Atlas is a software GPS product, running on a 300MHz ARM microprocessor and 200MHz DSP. This chip is the best seller in automotive navigator. It offers the comparable performance with SiRF-III, with lower price and media player features.

NXP software also offers Spot GPS software for the host application processors. The Spot GPS Software is a commercial software package in the form of ANSI C. It is easy to be deployed since most of the latest smart phones have a 200MHz, even 500MHz processor inside.

There is also an open source GPS project called GPS world, which uses ATMEGA32 for back-end processing. But this project is not a complete software GPS solution, because it was built upon a hardware correlators IC from Zarlink. However if you are developing the firmware of a GPS receiver, it could be the base for your development. In the reference of open source projects, you can find other software GPS designs.

Modules or DIY

GPS moduleBecause GPS is quite sensitive to the environment, inexperienced designs will ruin the whole project. According to the field report, the GPS module has quite high failure rate in production site. Some mobile phone manufacturers tried to design the GPS by themselves, finally they found their GPS phone design is totally a fiasco.

The module includes everything and assembly in a can module. The size is as small as a coin. There are many professional GPS module suppliers. LeadTek, Holux and other suppliers are offering SiRF and MTK based solution worldwide.

Application Software

From the point of system software development, the software engineer can consider GPS unit as a standard serial port. No matter which OS is selected, the serial port is always available, either in a real RS232 or simulated serial port on USB and Bluetooth. Any person who has experience of developing UART can develop the GPS application software in NMEA protocol as well.

Finally, the high level application software will combine the map data and coordinates from GPS and present to the users.

OpenmokoThere is an open source project called Openmoko, which is sponsored by FIC Taiwan. This project is basically an ARM920T (S3C2440) microprocessor based mobile phone. The GSM/GPRS module and GPS module are connected to the serial ports for ARM920. The phone is working like a desktop PC with GPRS modem and GPS receiver. Anyway, it is a good project which you can start up your own GPS terminals.
The connected GPS project Dash Express is a derivated project from Openmoko.

There are also many open source projects available. You always can find the projects in your favorite languages, Java, Python, C++, .NET and even in web programming languages.


General Information for GPS

A summary table for 2nd generation GPS chipset. The latest GPS chipsets are 3rd generation, but the information is still helpful.






GPS Receiver Information, software and hardware review of GPS receivers.






Fastrax Software GPS solution, new software based GPS solution - GPS cost below 3$.







Antenova is a leading developer and supplier of high performance antennas and RF antenna modules for mobile handsets, portable devices and laptop computers.





SuomiNet Support, a professional GPS organization.






Silicon suppliers

NXP, Infineon, Sony, ST, Atmel, SiGe, SiRF, MediaTek, u-Nav, Zarlink, NemeriX, VLSI, Global Locate, Javad Navigation. ublox.

Infineon and Global Locate's baby: Hammerhead II GPS






Global Locate, acquired by Broadcom






Sony GPS






Maxim GPS solution






SiRF Products












ublox GPS and Galileo position solutions






u-Nav, acquired by Atheros






California Eastern Laboratories (CEL) GPS LNA






Zarlink GPS







NeneriX GPS Product Overview





Module suppliers

Trimble, Motorola, Rockwell, Garmin, Leadtek, Holux, Royaltek, NAVCOM, javad GNSS

Trimble embedded GPS






NXP mobile platform, including GPS








Rockwell Collins: NavStrike 3.3 Munitions Embedded GPS Module






Holux GPS module






NAVCOM GPS products






GPS Antennas with other products in tracking, GPS, RF, Wireless and Quick solutions off-the-shelf






Novatel Inc.






Open Source Project


The Open Source GPS project is a 12 channel L1 only receiver. The software goes from acquisition all the way to processing the navigation message and producing position and velocity fixes at a programmable rate of up to 10 Hz. It is capable of doing a cold start, warm start or hot start depending on the data available. The source code is written in C and was compiled on a Borland 4.5 C/C++ compiler.




The GPS World project is the first ATMega32 based GPS receiver ( back end) that can track satellites and calculate the navigation solution from raw digital data.







An Open Source locoGPS Module Coming to iPhone.




Web Links from a GPS fan






This page is meant to list all of the open source and open hardware GNSS (Global Navigation Satellite System) projects. Although most projects currently focus on GPS, we welcome Galileo and GLONASS projects as well!





The goal of grGPS is to design a single board receiver that has an RF input at on end, dedicated to picking up the GPS L1 Signal, and a Baseband interface at the other end, with baseband samples heading for demodulation. The intent here is to hook up to the GNU Radio USRP for the baseband demodulation and signal processing.

Gps AVL (automatic vehicle location)

Gps AVL (automatic vehicle location) it's a current industrial/consumer request (microcontroller embedded designs gps-gsm/gprs for localization).
Very interesting and helpful article!

Are all GPS listed systems active?

You mention Galileo, GLONASS, and CNSS, but as far as I know Galileo is not yet running at the moment, what about GLONASS, and CNSS, are they already active or are they still wannabe?

About the commercial operation for these systems

I am not sure about the commercial operation status for those positioning systems. Russian plan to expand the GLONASS to civilian applications. They are going to switch to the same frequency of GPS. After all, GLONASS will be more and more similar to GPS, with slightly difference on code (S/P code)and coordinates (SGS-E90). The Chinese GNSS is currently still in its infancy, and reversed for military purposes. In recently SiChuan earth quake, GNSS terminals are widely deployed in rescue teams. The GNSS oriented companies have issued their IPOs in stock market to support GNSS.

Allan K Liu

GPS receiver hardware design

GPS receiver hardware design (zarlink application note)
application note pdf

I found this pdf on google and submit it to this great Open Source community

Excellent representation.

Excellent representation. Didn't know about the 9-11 posting. And the crime prevention has had numerous variety of wired selections. That would improve on possible disconnection by intruder.

911 phone

Actually GPS is not the only candidate in the 911 acts. A-GPS and cell triangle positioning is also on the list. In metropolitan area, the performance of GPS will be influenced by many factors. So the cellular network based positioning technologies sometimes very helpful. For example, Japanese use PHS network for positioning. The engineers also try to use mesh networks like Zigbee as small area positioning with RSSI.

Allan K Liu

Does 911 phone mean 911 GSM?

Sorry I don't want to joke about it, but your comment title could be interpreted in a wrong way. Better specify GSM and GPS next time.... :)

I think 911 mean 9/11

I think 911 mean 9/11 (september eleven)
But you are right, the title is ambiguous, inattentive people can fall into error.

I think 911 it means the

I think 911 it means the Police number in USA.Laughing

Allan, please solve our

Allan, please solve our doubts, what do you mean?

911 = US emergency call
911 = 9/11 = twin tower tragedy

Clarification for 911

Sorry for the confusion due to my expression in this article. I would like to apologize to you and make a clarification hereafter.

From Wikipedia:

E911 stands for Enhanced 911, is a North American telecommunications based system that automatically associates a physical address with the calling party's telephone number, and routes the call to the most appropriate Public Safety Answering Point (PSAP) for that address. (From Wikipedia)

From FCC:

The FCC's wireless E911 rules require certain CMRS carriers to begin transmission of enhanced location information in two phases. Phase I requires carriers to transmit a caller's phone number and general location to a Public Safety Answering Point (PSAP). Phase II requires more precise location information be provided to the PSAP. Under the current rules, two prerequisites must be met before the wireless carrier is obligated to implement E911. The carrier must receive a request from a PSAP that it has the capabilities to receive and use the location information, and there must be in place a mechanism for recovering the costs of implementation. Carriers are to provide the requested E911 service by the later of six months after the prerequisites are met, or April 1, 1998 (for Phase I) or October 1, 2001 (for Phase II).

E911 is a operator oriented (including wired, wireless and VoIP)law act. However GPS is widely used in most of the implementation. Among these implementations, GPSone of CDMA network/terminal is frequently mentioned, because Qualcomm's CDMA chipset has integrated GPS receiver. I think it is easy for Qualcomm to share some common blocks since GPS is a CDMA system as well. The GSM/GPRS/EDGE terminals prefer A-GPS solution, actually it is a GPS module which initialized by GSM network.

The tragety happened on Spet,11,2001 has nothing to do with E911 act.

I will update the paper to express it in a clearer way.

Who's online

There are currently users and guests online.

Recent comments