Delays In The C/A Code = Distance
Source: Tom's Guide US | Keywords: the, origins, of, gps
7. Delays In The C/A Code = Distance
In order for any spread spectrum technology to work, the transmit and receive ends have to be synchronized to the same code. And while Lamarr and Antheil suggested synchronizing this code using a mechanical clockwork mechanism at both ends, modern GPS receivers use correlators to automatically accomplish this. Correlators essentially connect Lamarr's ancestral spread spectrum theory to today's global positioning technology. How? A correlator is an algorithm that automatically synchronizes your GPS receiver's "decryption" process with the GPS satellite's "encryption" process. During satellite tracking, the process of synchronizing a GPS receiver with multiple, simultaneous transmissions from a group of satellites reveals minute relative differences in synchronization. These differences in synchronization relate to the actual distances between the satellites and the receiver.
Lamarr originally envisioned synchronizing the receiver and transmitter C/A "rolls" which would be impractical today. Modern correlators slide the "roll" automatically until a match is found. This elegant and natural extension of Lamarr's original concept has the side effect, once a match is found, of revealing the amount of latency in the time each satellite's transmissions takes to reach a GPS receiver. And hence the fundamental pieces of GPS begin to appear out of the primal concepts of spread spectrum. Read further to find out why latency or delay is distance!
Partially as a result of Einstein's work, the GPS constellation is made to tick together in synchronicity. Your GPS device tries to approximate the overall GPS "system" time internally. If the satellites transmit packets at the same time, but they are different distances away, then the arrival time of the packets will be different. Correlators are designed to match up various C/A codes to their corresponding satellite transmissions. Since each satellite's transmissions arrive at different times, their C/A codes also are delayed by that amount relative to the "system time." Consider this: All things being equal on your local area computer network, a smaller ping time means a network client is closer to you than a client with a larger ping time. Hence, the amount of delay the correlator needed to add to the C/A code to synchronize the connection is related to the real distance between you and that particular satellite.
So building on the example from Table 2:

Table 3. Receiver correlation in action.
As you can see, the correlator in the receiver is sliding a copy of one of 32 possible C/A codes. Each time the correlator slides this particular C/A code one step over, it checks to see if good data comes out. If the C/A code produces noise, this is considered no correlation. If the C/A code correlates, it means the data was successfully despread. The correlator will know if random noise results, or something that is not random noise. Once correlation occurs, the navigation packet can be recovered (in this case, HELLO). In reality, the data is not saying hello, but is transmitting the navigation packet. However, the cool part is the process of correlation yields a rough distance to the satellites. Knowing 4 satellites is enough to triangulate your 3D position on the earth.
Anyone who's ever used GPS gadgets understands that it takes time to get a fix and this is one of the most bothersome facts about GPS. While some devices get a fix faster than others, it always will take some amount of time to "get the connection." As we now know, correlators are used to align the C/A codes in the receiver to the C/A codes in the transmitters. Although there are at most a couple of handfuls of satellites visible at a time, modern GPS receivers have a lot of correlators. As it turns out, correlators are brute force beasties - they take a C/A code and try to make it decrypt the signal much the way a hacker's password cracker works. The more correlators you have working in parallel, the faster the work. SiRF Star II and III GPS receiver chipsets have 2,000 and 200,000 correlators respectively. The latest uBlox Antaris 5 GS chipsets have over a million correlators. The rule is simple: more correlators, faster fix times.
- Previous page Direct Sequencing
- Next page Conclusions