My last post started me thinking about the GPS system. What is GPS? GPS stands for Global Positioning System. It is a collection of satellites orbiting the earth, and each one transmits a signal back to earth. Back here on earth, you can buy a device that receives these signals from several different satellites. Your device then calculates its four coordinates (three space coordinates and one time coordinate) using geometry. You then know where you are, and what time it is!

To work out where you are, your receiving device needs to know two things: The location of at least four satellites above you, and your distance from each of those satellites. The locations of all satellites are stored in the memory of the GPS receiver, and updates to the locations are contained in the received signal. The distance to a GPS satellite is worked out using the time it takes the signal to travel to the receiver from the satellite.

Apparently our society is becoming very dependent on the GPS system, in unexpected ways and in ways we don’t realize, according to a report last year from the UK Royal Academy of Engineering. Data networks, financial systems, shipping and air transport, agriculture, railways and emergency services, along with satnav systems, all use GPS. There are many applications that were not foreseen. There is a danger if we now re-design a system to *rely* on the GPS signal. There should at least be a backup in the event of GPS failure. This also means that whoever operates the GPS system can bring down those other systems, simply by turning off the GPS transmissions, or by increasing the error.

Part of a GPS signal is the time. The time coordinate is often overlooked. Many applications such as satnav only use the space coordinates. However the GPS satellites have very accurate atomic clocks, so the time transmissions by themselves have proved to be very useful. For example, wireless networks use GPS time at their base stations to synchronize them. I’ve read that GPS is now the world’s main supplier of accurate time.

If you are moving then your GPS receiver can work out your speed. Your speed and direction of motion can be calculated from your exact position now, and your exact position 5 seconds later (say). All four coordinates (space + time) are needed, because speed = distance/time.

How does your GPS receiver know which signal came from which satellite? There is some interesting mathematics programmed into the GPS receiver to enable this. What happens is that each satellite transmits a code as part of its signal, called its pseudo-random code (PRC). The receiver is able to use these PRCs to distinguish the various signals from different satellites, by calculating something called the correlation. The correlation properties also allow for signals bouncing off buildings and other objects.

The European Union is developing its own GPS system, known as Galileo. Russia and China are also developing their own. No wonder it’s crowded up there.

Interesting post Gary! Is the mathematics of GPS’s PRC described anywhere that you know of?

Thanks Richard. A PRC is sometimes called PRN.

There is an entire course on GPS offered at the University of Colorado. If you click on Lecture Topics, and then Signal Structure, there are some good slides there.

Here is a more detailed explanation of cross-correlation. It makes the interesting point that 1 microsecond of inaccuracy in the time gives a 300m inaccuracy in the location.

Searching for Mathematics of GPS gives more links, however not many of them mention cross-correlation.