The Fundamentals of GPS

July 17, 2002

Sharing is Caring

What exactly is GPS?
By now, most of us have come into contact with some form of GPS.They are in our cars, sometimes on the dashboard and sometimes in the glove compartment; they're making their way into our cell phones and even being attached to children.Oh, the humanity!

GPS, or the Global Positioning System, is a satellite navigation system that provides positioning and clock time to the terrestrial user.The system consists of more than just satellites. While the satellites make up the space segment, the system also includes a control segment that monitors and maintains the satellites, as well as the user segment that gets to have all the fun.

When most people think of GPS, they think of the United States NAVSTAR (NAVigational System Time And Ranging) constellation.However, although GPS was the brainchild of the U.S.Department of Defense, other space-based satellite positioning systems are in existence or are slated for development, most notably the GLONASS system created by the former Soviet Union and the Galileo system recently approved for funding by the European Union.

Where, when, how and why
The U.S.Department of Defense created NAVSTAR to work optimally with a constellation of 24 satellites.NAVSTAR was declared fully functional on April 27, 1995 with a constellation of 24 Block II and Block IIA satellites.Unofficially, NAVSTAR became fully operational December 8, 1993 with a mix of Block II, IIA and the original concept validation Block I satellites; 28 Block II, IIA and IIR satellites are currently in orbit and operational.(Visit for more information.)

Each of the 28 NAVSTAR Space Vehicles (SVs) is equipped with two channels: L1 and L2.The L1 channel produces a Carrier Phase signal at 1575.42 MHz as well as a C/A and P(Y) code - all this jargon is explained below.The L2 channel produces a Carrier Phase signal of 1227.6 MHz , but only P(Y) Code.Currently, there are plans in progress to implement an additional civilian code on the L2 band as well as the creation of a brand new L5, but that is for another article.

Carrier Phase: GPS uses microwaves, and just like all light and radio waves, each signal has a unique frequency and wavelength.Although these waves do a great job of penetrating the atmosphere, they are still not capable of cooking a burrito from orbit.

C/A and the P(Y) Code: Binary data that is modulated or "superimposed" on the carrier signal is referred to as Code.Two main forms of code are used with NAVSTAR GPS: C/A or Coarse/Acquisition Code (also known as the civilian code), is modulated and repeated on the L1 wave every millisecond; the P-Code, or Precise Code, is modulated on both the L1 and L2 waves and is repeated every seven days.The (Y) code is a special form of P code used to protect against false transmissions; special hardware, available only to the U.S.government, must be used to decrypt the P(Y) code.

How do you like your data?
Not all GPS positions are created equal.Natural and man-made error sources can degrade the standalone accuracy of GPS by as much as 100 meters horizontally and 300 meters vertically. Fortunately, man-made errors (at least the deliberate ones) are relatively small at the present time.

Navigated or Autonomous Positioning is an uncorrected position calculated by the receiver using Code measurements.

How Code Works
While the GPS receiver is listening to the satellites, it is also downloading information about the satellites' orbit and trajectory.An almanac is transmitted every 12.5 minutes and contains approximate orbits for the constellation, as well as atmospheric modeling.The ephemeris is transmitted every 30 seconds and contains shorter, more precise trajectory data for a given satellite.

Philosophy and Math
Each satellite produces a unique code sequence of ones and zeroes.By matching the time difference of the code generated by the satellite's atomic clock and the user's clock (not so atomic), the GPS receiver is able to match the code and calculate a time difference. Based on the calculated time difference and known value of the speed of light, the distance between the SV and the receiver can be determined (speed of light multiplied by time.) Because of the clocks' discrepancy, the slowing of light through the atmosphere and slight inaccuracy of the transmitted almanac, we call this distance a pseudorange.
The receiver position can then be calculated by intersecting distances from multiple satellites.Three satellites are required to determine a 2-dimensional position and four or more are necessary for 3D.

Differential Corrections
When we talk about differential or DGPS, we use the known position of one receiver to correct for the position of the unknown rover.Since we know the position of the satellite and the position of the known receiver, we can take the difference between the real range and the pseudorange to create a correction.We can then apply the pseudorange correction for each satellite to the unknown or rover receiver to calculate a better position.

Code Differential: We already covered the basics of calculating ranges using code techniques, so by using the same techniques to apply differential corrections to the ranges we can hope for a 30 centimeter-3 meter solution.

Phase Differential: Because phase data is all about the waves, the problem becomes figuring out just how many whole waves there really are. This is known as "Integer Ambiguity." After an autonomous position is calculated using code methods, clock errors can be negated by observing two satellites from two receivers (a method known as double differencing).Once the better approximation of the position is known, a statistical calculation of phase intersections from multiple satellites can be used to resolve ambiguous results.Because we know the length of the wavelength (e.g.19.4 cm for L1), we can add the number of wavelengths plus the fraction to create a distance that is not time dependent.

Post-Process Differential is done on a computer after the GPS measurements have been performed by the receivers on-site.In order to process this data, the user must have office software capable of calculating the differences, as well as a receiver that is capable of capturing raw data, which usually consists of a navigation file that includes satellite information and a file of observations with pseudoranges and their corresponding SVs.Although most receivers use a proprietary raw filetype, a generic format known as Receiver Independent Exchange Format (RINEX) was created to facilitate processing between different receivers and software packages.

Real-time Differential involves the use of a reference receiver, but differs from post-processing in that corrections are communicated instantaneously to the user or "rover."

Real-Time Code: There are currently several popular forms of RT-Code differential available to the consumer.

  1. Radio Beacon Correction: A land-based radio correction usually controlled by the Coast Guard and provided free of charge.(In the United States a National DGPS initiative has begun to provide double redundant beacon coverage across the 48 continental states.)
  2. atellite Corrections: A subscription-based service that provides the user with corrections from a geo-stationary satellite.
  3. WAAS EGNOS and MSAS: The Wide Area Augmentation System and its sister corrections in Europe and Japan are a new satellite-based differential that is free of charge, but still of questionable reliability. These systems are designed to provide a higher confidence level in autonomous GPS positioning for use in aviation.Unlike radio and satellite differential, WAAS corrects the atmospheric and orbital data so that autonomous calculations can better determine true position.
  4. User Defined: Higher end units can be used to create their own differential by employing two receivers (a reference and a rover) and communicating via radio, Internet, or cellular phone.

Real-Time Phase: Although similar methodologies are employed, RT-Phase (Real Time Kinematic) is far more complex than code and is usually performed on L1/L2 RTK-enabled GPS receivers.

Sources of Error: Finally, it is important to recognize the many error sources that GPS receivers that we as users must not only be aware of, but also correct. For example:

  • Atmosphere: Ionospheric and Tropospheric refraction can delay the signal and cause ranging errors.(Think of a pencil in a glass of water.)
  • Multipath: Reflecting or bouncing signals not traveling directly to the antenna can cause ranging errors, e.g.buildings, tree trucks, canyons.
  • Satellite Geometry (Dilution of Precision or DOP): Bad satellite geometry can result in weak positional solutions.These DOPs can be separated into Vertical, Horizontal, Positional (3D) and Geometric (with time).
  • Selective Availability: The US government's ability to degrade positional accuracy by "dithering" or slightly altering the satellite clocks and by changing the broadcast ephemeris to report a slightly different satellite position.(Switched off on May 1, 2000, but can be reinstated at any time.)
  • Anti Spoofing: To prevent hostile outside sources from degrading the P-Code, the (Y) Code replaces the P Code, creating an encryption that can only be demodulated by special hardware.

While there is much more to GPS than covered in this article, we have hit the major hotspots of user level discussion.In future columns, we will build on this basic knowledge.

Greg Pendleton is a Licensed Land Surveyor and Product Manager for the GPS/GIS product area of the GIS & Mapping Division of Leica Geosystems, which specializes in creating hardware and software solutions for the acquisition and update of geographic database data via satellite positioning.


Sharing is Caring

Geospatial Newsletters

Keep up to date with the latest geospatial trends!

Sign up

Search DM

Get Directions Magazine delivered to you
Please enter a valid email address
Please let us know that you're not a robot by using reCAPTCHA.
Sorry, there was a problem submitting your sign up request. Please try again or email

Thank You! We'll email you to verify your address.

In order to complete the subscription process, simply check your inbox and click on the link in the email we have just sent you. If it is not there, please check your junk mail folder.

Thank you!

It looks like you're already subscribed.

If you still experience difficulties subscribing to our newsletters, please contact us at