Looking Closely at Received GPS Carrier Phase
By Johnathan York, Jon Little, and David Munton
The stability of a received GPS signal determines how well the receiver can track the signal and the accuracy of the positioning results it provides. While the satellites use a very stable oscillator and modulation system to generate their signals, just how stable are the resulting phase-modulated carriers? In particular, do received signals always conform to the published system specifications? In this month’s column we take a look at a specially designed receiver for analyzing GPS carrier phase and some of the interesting results that have been obtained.
A RADIO WAVE, OR ANY ELECTROMAGNETIC WAVE FOR THAT MATTER, may be generally characterized by four parameters: amplitude, frequency, phase, and polarization. If the values of amplitude, frequency, and polarization remain constant, then the wave is a pure oscillation or “tone” and can be represented as a sine wave.
An unvarying tone doesn’t convey any information. However, the wave can be modulated by varying one or more of its characteristic parameters in a controlled fashion. In this way information, whether it be audio, images, or data, can be transmitted from one place to another. The sine wave is therefore referred to as a “carrier” (of the modulation). A continuous wave is a wave that is not interrupted.
Of course, radio waves are not only used for communicating. They’re also used for navigation, radar, and many other purposes including the jamming of other radio signals. The modulating signal may either be continuously varying (analog) or have a fixed number of values of one or more of the parameters (digital) — two values in the case of binary modulation.
Amplitude modulation is commonly used for broadcasting and communications. If a continuous wave is interrupted by keying the transmitter on and off using a code of some kind, such as Morse code, information can be sent. For speech and music transmission, an audio waveform is modulated onto the carrier.
Frequency modulation is used for very high frequency (VHF) high-fidelity broadcasts and for communications in the VHF and ultra-high-frequency ranges of the radio spectrum. The instantaneous carrier frequency changes with the frequency and amplitude of the modulating waveform.
Phase modulation is typically used for data transmissions and, as we know, this is how the pseudorandom noise codes and the navigation message modulate the signal carriers of GPS and other global navigation satellite systems. (While the polarization of a wave can be modulated to transmit information, this is not very common.) The stability of a received GPS signal — both the carrier and its modulations — determines, in part, how well the receiver can track the signal and the accuracy of the positioning results it provides.
While the satellites use a very stable oscillator and modulation system to generate their signals, just how stable are the resulting phase-modulated carriers? In particular, do received signals always conform to the published system specifications? In this month’s column we take a look at a specially designed receiver for analyzing GPS carrier phase and some of the interesting results that have been obtained.
“Innovation” features discussions about advances in GPS technology, its applications, and the fundamentals of GPS positioning. The column is coordinated by Richard Langley, Department of Geodesy and Geomatics Engineering, University of New Brunswick.
By Johnathan York, Jon Little, and David Munton
All global navigation satellite systems (GNSS) rely on well-defined data messages modulated onto stable carrier signals. The transmission of signals that adhere to published interface specifications (ISs) is what permits a GPS or GLONASS signal to be transmitted from a satellite and to be decoded at our receiver. This process is one that most of us never need to consider, and is part of the background magic that make GNSS so powerful.
Still, signals are generated and received by real hardware — hardware that can be subject to the harsh space environment or a challenging ground environment. And once these signals are generated, they propagate to the user along a path through a dynamic medium that includes the ionosphere — a dilute plasma that introduces a well-known time-delay and phase change into the signal. The net result is is an effect on the signal that depends on both time and space.
An interesting question is the following: How do we know that the signal we plan to send (as documented in an IS) is actually the signal that we receive? A pragmatic answer is that GNSS positioning works. If there is a difference between the IS-defined signal and the received signal, the impact is not seen by most users. Another answer is that satellite vendors test (and then test again) their equipment prior to launch, providing a high level of certainty that the ISs are being adhered too. In this article, we will describe our work in providing a third way of answering the question — by monitoring signals — motivated by our desire to see “all the bits, all the time.” We have seen some interesting effects in our observations, and we will discuss our attempts to detect and characterize these effects.
For our purposes, we will be looking strictly at the L1 C/A-code signal. The reasons for this will become clear shortly. The standard textbook form of the noiseless signal is
where P is the signal power, cCA(t) is the C/A-code modulation stream of plus and minus ones, nNav(t) is the navigation bitstream that is modulated onto the signal, and the cos(ωt) factor represents the fundamental carrier frequency, with ω being the angular frequency (ω=2πf). For the GPS L1 signal, f = 1575.42 MHz. The GPS receiver processes this signal (in the presence of noise) into the observables (such as range, phase, or Doppler frequency shift), or the positions and velocities that we need.
One of the research problems that we find interesting is determining how to monitor the details of the signal in Equation (1) or of any other GNSS signal. Why would this be of interest? To us this is interesting because we have seen events where the signal does not behave as expected. In fact, these events were first noted by the Federal Aviation Administration’s (FAA’s) Wide Area Augmentation System (WAAS) receivers, and were later noted again in ionospheric observations. By being able to monitor the signal at a very detailed level, we can hope to gain insight into the origins of these events.
We are not alone in wanting to validate that the signal and data being produced by a GNSS receiver is valid. A standard approach to monitoring the GNSS signal would be to use an autonomous receiver method, known as receiver autonomous integrity monitoring or RAIM. However, in this approach, the integrity of the navigation solution is evaluated based on the range and phase observables produced by the receiver, and we obtain no insight into the behavior of the actual signal — only the receiver’s behavior in processing the received signals. Another option is to directly observe each satellite’s signal using a high-gain antenna. This approach provides significant insight into the behavior of the signal but is expensive and is really only effective on one satellite at a time. A system, which is close in spirit to our approach, is the Ohio University GPS Anomalous Event Monitor (GAEM). GAEM consists of two high-quality commercial receivers, which serve as independent triggers for an RF capture system. When the receivers detect an anomaly, the RF capture system is able to provide 20 seconds of raw RF data for study.
Using an Inexpensive Software Receiver
The observations we will discuss in the rest of this paper were made using what we term the Global Navigation Satellite System Complex Ambiguity Function receiver, or GCAF. The GCAF is a prototype receiver, and is well suited to some of the detailed analysis we have described.
Briefly, the GCAF receiver is a single-channel, single-frequency (L1) GPS receiver, which uses firmware installed on a field programmable gate array (FPGA) to process the incoming GPS signal. FIGURE 1 is a labeled photograph of the GCAF. RF down-conversion occurs in the module at lower left. The down-converted signal is passed to an FPGA-based software receiver, shown at lower right. All of the processing to produce the complex correlation curves is done in the software receiver. The aggregator, shown at upper right, simply provides an Ethernet interface to the outside.
The incoming signal is correlated against a replica of the expected L1 C/A-code signal, generating samples of the correlation curve. The difference between the GCAF and many standard commercial GPS receivers is that the GCAF samples the C/A-code correlation curve at 512 points (lags) at a 1-kHz rate. Each correlation sample is complex, consisting of in-phase (I) and quadrature (Q) components, with the software that processes the receiver raw data designed to maintain the signal in the I-component, and noise in the Q-component. As a result, the GCAF engine not only tracks the signal where it is expected to appear, but also at nearby offset phases and Doppler shifts simultaneously, and this ability substantially eliminates dependence on the tracking loop behavior and allows the observation of the characteristics of the received signal, rather than inferring them from observations of tracking loop behavior. See the sidebar, for more details on the receiver’s operation.
Since the GCAF provides access to the high-rate complex correlation values, we can “decode” the navigation modulation sequence, nNav(t), from the incident signal by tracking the correlation peak phase and watching for phase changes. These phase changes correspond to distinct changes in the carrier phase. FIGURE 2 shows results from measurements collected with the GCAF while observing space vehicle number (SVN) 26 / pseudorandom noise code number (PRN) 26 on August 22, 2009. The top plot shows the amplitude of the in-phase component of the incident signal in blue, and that of the quadrature component in red. The amplitude is in arbitrary units, while the time along the bottom is in milliseconds–so the entire snapshot is only 0.6 seconds long.
These results in Figure 2 are as we expect, with the dominant energy appearing in the I-component. Clearly visible in the I-component is the navigation bitstream, which appears as a series of 180° phase changes in the carrier signal (hence changing the sign of the amplitude). The lower plot in Figure 2 shows the results of a “squaring” detector applied to the complex signal. Effectively this doubles any phase changes, since (ejφ)2 = ej(2φ). This nicely converts the navigation bitstream transitions to 2 × 180°, or 360°, which removes them from the signal. (This is the approach pioneered by one of the first commercial GPS receivers, the Macrometer, for providing correlation-free L1 phase observations by removing both the code and navigation message phase transitions.) What the lower plot in Figure 2 conveys is the absence of any transitions other than the expected ones of 180°.
However, not all of our measurements are quite this typical. In some cases we observe what we term “carrier-phase signal events” (CPSEs). FIGURE 3 shows a typical example of such a CPSE taken on SVN48 (PRN21) on March 13, 2010. In the upper plot, note the sudden change in amplitude in the quadrature component near -100 milliseconds. In the lower plot, note the sudden changes in the carrier phase that occur at the same times as the amplitude changes. In this case, the squaring detector shows clear evidence of a transition that was not anticipated, and appears to be of approximately 90° and persist for approximately 175 milliseconds.
Of course, the single-channel nature of the GCAF does not permit an unambiguous identification of where in the signal chain a CPSE is introduced. The introduction of events might occur within the satellite transmission chain, or be produced within the propagation environment, or possibly be a quirk of the receiver itself. However, the types of events we observe seem a very unlikely failure mode for the GCAF. In the case of the example shown in Figure 2, the only place in the system where a signal at the exact Doppler-shifted frequency of the SV is in the numerically controlled oscillator (NCO) of the carrier-tracking loop. The GCAF tracking loop is updated at a rate slower than many of these events and manual examination of telemetry from the tracking loops in specific instances indicates no anomalous or discontinuous tracking behavior during the events examined. If events are generated by the local receiver environment, one possible mechanism would be a small multipath source at a position so as to induce a phase shift at a greater magnitude than the direct signal. This appears unlikely as events occur at many times of day (and therefore multipath geometries), and have onsets and durations that are difficult to explain with a reasonable multipath reflector.
As a prototype instrument, the GCAF does have practical limitations. One of these limitations is that observations are divided into 5-minute intervals, at which point the signal is reacquired and data collected for another 5-minute interval. This is an operational limitation, which serves to improve robustness and bound individual output file sizes to 1 gigabyte each, and as a result, limits the durations of the CPSE that we can observe.
The simple squaring detector discussed above is not sufficient to provide a robust detection mechanism for the type of CPSEs we might see. In fact, we wanted a metric that would not rely on a pre-definition of what we might see in the signal, but which would flag changes in signal phase that might be interesting. To develop this metric, we borrowed ideas from the field of metrology, specifically work that characterizes noise types in oscillators. We ended up focusing on the modified Allan variance. While we will not detail the derivation of our metric here, we will discuss the results.
The basic idea is to consider the phase, ϕ, of the GPS signal, averaged over sequential periods of duration τ. We choose τ to satisfy τ > 1 millisecond, since this is the basic chipping period of the L1 C/A-code signal. For the n-th period, τ, we denote this averaged phase by <ϕn>. By considering the impact of noise, specifically receiver thermal noise and clock stability, we can formulate a probabilistic bound of the form:
The interpretation of this result is that for a given averaging period τ the interval-to-interval variation in the average phase should never be too large. The right-hand side of Equation (2) provides a threshold for the phase variations over three consecutive periods, and is determined by the receiver thermal noise and clock stability. This bound, which is probabilistic in nature, applies with a false alarm rate of once in 10 years. If the metric exceeds this threshold, we declare that a phase event may have occurred within the three intervals.
There is still the practical question of what averaging intervals τ need to be chosen. We have chosen to use a discrete set of τ that range from a few milliseconds to several seconds. This enables us to identify CPSEs that might occur rapidly (that is, at millisecond levels) or more slowly (at second levels). FIGURE 4 provides an example of the metric response to three consecutive CPSEs that are associated with SVN48 (PRN07). The upper plot shows the results of the squaring detector applied to the phase. Clearly evident are three rapid phase changes of about 20°. The next plot shows the result of the detection metric, which shows three double peaks in the vicinity of the phase changes. The third plot shows the I- (blue) and Q- (green) signal components. The bottom plot shows the NCO offset, which is a useful diagnostic.
Observations of Signal Events
The examples we have shown so far reflect what we refer to as two-sided discontinuities; that is, a sudden change in phase, followed by a return to close to the original value. FIGURE 5 shows a similar type of CPSE, in which we only see one side of the change. We have seen this type of event quite commonly on SVN62 (PRN25). If there is a return to the original phase, it may be beyond our observation period. Note that the apparent slope in Figure 5 is an artifact of a linear detrending process acting across the discontinuity. FIGURE 6 shows an example of a different type of CPSE that we occasionally see, one in which a change in the slope of the phase occurs (corresponding to a change in frequency). The figure shows a single inflection in the phase rather than a rapid change in the phase value.
Over the entire GPS constellation, we see events with rapid phase changes most frequently associated with the signals from three SVNs: 45 (an original Block IIR satellite), 48 (a Block IIR-M satellite), and 62 (a Block IIF satellite). This is most clearly shown in FIGURE 7, which contains a histogram of the number of events with rapid phase changes we have seen, broken out by SVN. For this histogram, we have chosen to count only those events that have well-defined phase discontinuities. Other SVNs, for example SVN34 (a Block IIA satellite), will show CPSEs on occasion, but the signals from this set of three SVNs are the ones that we have come to observe most closely. Until recently, SVN62 was the newest SV, and so we have been heavily weighting our observations on this SV.
Is There an Impact on Users?
To conclude, it is worth assessing what the potential impact of signal events on user equipment might be. We first began to investigate the detailed carrier-phase structure when we learned that the FAA WAAS system found that the carrier phase from SVN45 behaved differently than the rest of the GPS constellation, and that similar effects were seen in SVN34 (PRN04) and SVN35 (PRN05). What was observed were short-duration irregularities (< 1 minute) in which the carrier phase changed rapidly. These events were noticed simultaneously across multiple receivers. These observations led to our use of the GCAF to investigate the carrier phase. It is clear that the CPSEs can have an impact on specialized equipment.
But what about more standard user equipment? Given the types of events that we have observed, particularly those in which the phase changes suddenly and by a large amount, it is natural to ask how this might impact position and navigation users. A momentary 90-degree phase shift that lasts tens to hundreds of milliseconds might have varying effects on receivers depending on the duration of the event, the design of the carrier tracking loop in the receiver, and the instantaneous noise environment at each receiver.
If the CPSE is shorter than the inverse of the receiver carrier tracking loop bandwidth, then the receiver might perceive the CPSE as a very brief loss of signal since the tracking loop will not be able to respond quickly enough. Observables formed from a second or more of raw values are likely to experience a small reduction in signal strength. As a result, short events are likely to go undetected by a traditional receiver that is primarily performing navigation.
However, CPSEs that persist longer than the inverse of the receiver carrier-tracking-loop bandwidth could be interpreted by the receiver in a variety of ways, including a combination of cycle slip(s), navigation bit polarity inversion, or rapid carrier-phase changes.
We have been engaged in a detailed examination of the GPS L1 C/A-code signal for several years. In examining the signals, we have found that there are times when the signal exhibits an unexpected transition in phase. Looking across the GPS constellation, we find that these events tend to vary by satellite, both in rate and in behavior. While the impact from these events on most user equipment is small, the fact that the behavior is unique by SV is interesting. The type of detailed signal monitoring we have described is useful in two ways: it provides a means of observing effects that might otherwise pass unnoticed, and it gives us the capability to look for events in the future that might have a more obvious impact.
This article was stimulated by our research paper “A Non-Traditional Approach to Analysis of Signal Structure Anomalies Observed in PRN 21” presented at ION GNSS 2010, the 23rd International Technical Meeting of the Satellite Division of The Institute of Navigation in Portland, Oregon, September 21–24, 2010.
The GCAF receiver uses a Xilinx, Inc., Spartan-3 FPGA.
The Global Navigation Satellite System Complex Ambiguity Function Receiver
The signal from the GCAF’s antenna passes through an amplifier stage, and then to an analog front end, where the signal is downconverted from the L1 frequency, 1575.42 MHz, directly to in-phase and quadrature IF signals. The signal is then passed to a Flexible Low-power Wideband Receiver (FLWR). The FLWR is a low-cost FPGA-based digitizing receiver designed and built by the Applied Research Laboratories at the University of Texas. Notably, the FPGA implementing the C/A-code replica generation and computation of the fast numeric theoretic transform (FNT) is an inexpensive 400 kilo-gate FPGA. The receiver is a two-channel, 10-bit, direct sample receiver, operating at 100 megasamples per second. The FLWR was built to operate as part of an array of antennas, and so connects to an aggregator. In the application discussed in this article, the aggregator simply serves as an interface between the receiver and a host computer. The C/A-code replica generator and the FNT computation of the correlation functions are written as Verilog firmware and loaded onto this receiver. Command and control and data collection occur over a USB port on the aggregator board, which is connected to a local computer.
The host computer receives the time-domain correlation curves from the FPGA and stores them on disk for future processing. The time-domain correlation curve data is also processed by software in the host computer in order to provide feedback to the code and carrier local replica generators on the FPGA. In this way, the tracking loops are closed through the host computer via USB approximately every 100 milliseconds. Because the prototype GCAF provides hundreds of correlator output lags and a rapid dump period, the GCAF is able to track the peak very loosely. That is, unlike a traditional three-lag correlator, which must constantly track the correlation peak in order to produce meaningful data, the GCAF tracking loop needs remain only in the vicinity of the peak. Because the FNT-based GCAF is bit-accurate to traditional early/prompt/late correlators at each lag, there is potential to produce geodetic-quality observables in this loose tracking mode. This stands in contrast to the coarse quality typical of FFT-based loose-tracking approaches. In many cases, this property may make redundant the early/prompt/late-style correlator typically found alongside FFT-based correlators.
Specifically, our prototype implementation has a sufficient number of correlator lags and a sufficiently high dump rate such that it is necessary to remain only within ±25 microseconds of the code peak and ±50 Hz of the carrier peak. The loose-tracking capability of GCAF has interesting implications for signal quality (and anomaly) monitoring. Commercially available atomic frequency standards have time drift rates of 0.2 microseconds per month, and absolute frequency accuracies of well below 1 Hz at the GPS L1 frequency. This level of accuracy means that the GCAF can perform open-loop tracking of GNSS signals when the receiver and satellite positions are known. Open-loop tracking is very useful for anomaly diagnosis and monitoring, as it observes the signals as received from the satellite, as opposed to observing their effects on a tracking loop.
Johnathan York received a Ph.D. degree in electrical engineering from the University of Texas at Austin. He has worked at the University of Texas Applied Research Laboratories (ARL:UT) since 2001, working primarily with high-throughput real-time digital signal processing applications.
Jon Little is a senior engineering scientist at ARL:UT. He holds a B.S. degree (1988) and an M.S. degree (1990) from Auburn University, Auburn, Alabama. He has worked extensively with the design and development of GPS ground systems and receivers.
David Munton received a B.S. degree in physics from Sonoma State University in Rohnert Park, California, and a Ph.D. degree in physics from The University of Texas at Austin. He has worked as a research scientist at ARL:UT since 1993. His GNSS research interests include precise positioning and three-frequency measurement combinations.
◾ Carrier-Phase Events and Monitoring
“A Non-Traditional Approach to Analysis of Signal Structure Anomalies Observed in PRN 21” by J. Little, J. York, A. Farris, and D. Munton in Proceedings of ION GNSS 2010, the 23rd International Technical Meeting of the Satellite Division of The Institute of Navigation, Portland, Oregon, September 21–24, 2010, pp. 2190–2198.
“Carrier-Phase Anomalies Detected on SVN-48” by B.W. O’Hanlon, M.L. Psiaki, S.P. Powell, and P.M. Kintner. Jr., in GPS World, Vol. 21, No. 6, June 2010, p. 27.
“GNSS Watch Dog: A GPS Anomalous Event Monitor” by Z. Zhu, S. Gunawardena, M. Uijt de Haag, F. van Graas, and M. Braasch in Inside GNSS, Vol. 3, No. 7, Fall 2008, pp. 18–28.
◾ GCAF Receiver
“A Fast Number-theoretic Transform Approach to a GPS Receiver” by J. York, J. Little, D. Munton, and K. Barrientos in Navigation: The Journal of The Institute of Navigation, Vol 57, No. 4, Winter 2010, pp. 297–307.
“A Complex-Ambiguity Function Approach to a GPS Receiver” by J. York, J. Little, D. Munton, and K. Barrientos in Proceedings of ION GNSS 2009, the 22nd International Meeting of the Satellite Division of The Institute of Navigation, Savannah, Georgia, September 22–25, 2009, pp. 2637–2645.
◾ GPS Interface Specification
Navstar GPS Space Segment / Navigation User Interfaces, Interface Specification, IS-GPS-200 Revision E, prepared by Science Applications International Corporation, El Segundo, California, for Global Positioning System Wing, June 2010.
Global Navigation Satellite System GLONASS, Interface Control Document, Navigational Radio Signal in Bands L1, L2 (Edition 5.1), prepared by Russian Institute of Space Device Engineering, Moscow, 2008.
◾ Receiver Autonomous Integrity Monitoring
“The Integrity of GPS” by R.B. Langley in GPS World, Vol. 10, No. 3, March 1999, pp. 60–63.
◾ GPS Signal Components
“Minding Your Is and Qs” by R.B. Langley, a sidebar in “Open Source GPS–A Hardware/Software Platform for Learning GPS: Part II, Software” by C. Kelley and D. Baker in GPS World, Vol. 17, No.2, February 2006, p. 56.
◾ Modified Allen Variance
“Allan Variance and Clock Stability” by R.B. Langley, a sidebar in “New IGS Clock Products: A Global Time Transfer Assessment” by J. Ray and K. Senior in GPS World, Vol. 13, No. 11, November 2002, p. 48.
The Science of Timekeeping by D.W. Allan, N. Ashby, and C. Hodge, Agilent (formerly Hewlett-Packard) Application Note AN1289, Agilent Technologies Inc., Santa Clara, California, 1997 and 2000.