GPS codes are chosen to produce a strong response if and only if a received signal and its anticipated pattern are closely aligned in time. Conventional designs thus use correlators to ascertain that alignment. Mechanization may take various forms (e.g., comparison of early-vs-late time-shifted replicas), but dependence on the correlation is fundamental. There is also the complicating factor of additional coding superimposed for satellite ephemeris and clock information but, again, various methods have long been known for handling both forms of modulation. Tracking of the carrier phase is likewise highly developed, with capability to provide sub-wavelength accuracies.

An alternative approach using FFT computation allows replacement of all correlators and track loops. The Wiener-Khintchine theorem is well over a half-century old (actually closer to a century), but using it in this application has become feasible only recently. To implement it for GPS a receiver input’s FFT is followed with term-by-term multiplication by the FFT of each separate anticipated pattern (again with optional insertion of fractional-millisecond time shifts for further refinement and again with various means of handling the added clock-&-ephemeris modulation). According to Wiener-Khintchine, multiplication in the frequency domain corresponds to convolution in time — so the inverse FFT of the product provides the needed correlation information.

FFT processing instantly yields a number of significant benefits. The correlations are obtained for all cells, not just the limited few that would be seen by a track loop. Furthermore all cell responses are unconditionally available. Also, FFTs are not only unconditionally stable but, as an all-zero filter bank (as opposed to a loop with poles as well as zeros), the FFT provides linear phase in the passband. Expressed alternatively, no distortion in the phase-vs-frequency characteristic means constant group delay over the signal spectrum.

The FFT processing approach adapts equally well with or without IMU integration. With it, the method (called deep integration here) goes significantly beyond ultratight coupling, which was previously regarded as the ultimate achievement. Reasons for deep integration’s superiority are just the traits succinctly noted in the preceding paragraph.

Finally it is acknowledged that this fundamental discussion touches very lightly on receiver configuration, only scratching the surface. Highly recommended are the following sources plus references cited therein:

* A very early analytical development by D. van Nee and A. Coenen,
“New fast GPS code-acquisition techniquee using FFT,” Electronics Letters, vol. 27, pp. 158–160, January 1991.

* The early pioneering work in mechanization by Prof. Frank van Graas et. al.,
“Comparison of two approaches for GNSS receiver algorithms: batch processing and sequential processing considerations,” ION GNSS-2005

* the book by Borre, Akos, Bertelsen, Rinder, and Jensen,
A software-defined GPS and Galileo receiver: A single-frequency approach (2007).

An early comment sent to this site raised a question as to how long I’ve been doing this kind of work.  Yes I’m an old-timer.  Some of my earlier Kalman filter studies are cited in books dating back to the 1970s — e.g., Jazwinski, Stochastic Processes and Filtering Theory, 1970 (page 267); Bryson & Ho, Applied Optimal Control, 1975 (page 374); Spilker, Digital Communication by Satellite, 1977 (page 636).  My first book, published by Academic Press, initially appeared in 1976.

In the early 1960s, not long after Kalman’s ASME breakthrough paper on optimal filtering, I was at work simulating its effectiveness for orbit determination (publication #4).  No formal recognition of EKF existed at that time, but nonlinearities in both dynamics and observables made that course of action an obvious choice.  In 1967 I applied it to attitude determination for my Ph.D. dissertation (publication #9). Shortly thereafter I wrote a program (publication #16) for application to deformations of a satellite so large (end-to-end length taller than the Empire State Building) that its flexural oscillations were too slow to allow decoupling from its rotational motion (publications #10, 11, 12, 14, 15, 27).  Within that same time period I analyzed and simulated strapdown inertial navigation (publications #6, 7, 8).

Early familiarizarion with Kalman filtering and inertial navigation paid huge dividends during subsequent efforts in other areas.  Those included, at first, doppler nav with a time-shared radar beam (publication #20), synthetic aperture radar (publications #21, 22, 38, 41), synchronization (publication #19), tracking (publications #23, 24, 28, 30, 32, 36, 39, 40, 48, 52, 54, 60, 61, 66, 67, 69), transfer alignment (publications #29, 41, 44), software validation (publications #34, 42), image fusion (publications #43, 49), optimal control (publication #33), plus a few others.  All these efforts made it quite clear to me — there’s much more to all this than sets of equations.

Involvement in all those fields had a side effect of delaying my entry into GPS work; I was a latecomer when the GPS pioneers were already established.  GPS/GNSS is heavily involved, however, in much of my later work (latter half of my publications) — and my work in other areas produced a major benefit:  The experience provided insights which, in the words of one reviewer quoted in the book description (click here) are either hard to find or unavailable anywhere else.  Recognizing opportunities for synergism — many still absent from today’s operational systems — enabled me to cross the line into advocacy (publications #26, 47, 55, 63, 66, 68, 73, 74, 77, 83, 84, 85, 86).  Innovations present in GNSS Aided Navigation and Tracking were either traceable to or enhanced by my earlier familiarization with techniques used in other areas.


This set of blogs will not be considered complete until at least seventy (or possibly a hundred) are available for visitors to download and/or print.  Each individual blog, with links to references (which in some cases can also be downloaded and printed from this site), summarizes a specific aspect from a chosen set of topics.  A smaller number of these “one-pagers” will address topics from my earlier, more fundamental, book Integrated Aircraft Navigation.  An additional few (very few) will deal with topics not covered in either of those two books.  An example of the latter publicizes some useful facets of the ultra-familiar classical low-pass filter which (believe it or not – after all these years) have remained obscure.

Over time, dozens more will be added from a wide span of topics (all firmly supported by experience as well as theory, ranging from elementary to advanced, in some cases relatively new and therefore largely unknown) that will include

  • Modern estimation in both block (weighted least squares) and sequential (Kalman filtering, with Battin’s derivation – much easier to follow than Kalman’s) form, with their interrelationship developed quite far, enabling “plant noise” levels to be prescribed in closed-form, also providing highly unusual insight into sequentially correlated measurement errors; chi-squared residuals; implications of optimality during transients; need for conservatism in modeling; sensitivity of matrix-vs-vector extrapolation (“do’s and don’ts”); application-dependence of commonality and uniqueness features; quantification of observability and effects of augmentation on it; duality among a wide scope of navigation modes; commonly overlooked duality between tracking and short-term inertial nav error propagation; when “correction-to-the adjustment” terms can and can’t be omitted; suboptimal (equal-eigenvalues) estimation with steady-state performance indistinguishable from optimal; all fully supported by theory and experience
  • Basic building-blocks for attitude expressions: superiority of quaternions and direction cosines over Euler angles, due to singularity (“gimbal lock” at 90-deg for x-y-z sequence) and at 0-deg for z-x-z sequences used for orbits
  • GPS issues related to the top-priority goal of robustness: beyond elementary (4-state and 8-state) formulations; duality of pseudorange and phase ambiguity; exploitation of modern processing capabilities in GPS/GNSS receivers; carrier phase as integrated doppler vs frequency data; 1-sec sequential phase changes (much easier to mix across constellations, negligible sequential changes in IONO/TROPO propagation, ambiguity resolution not needed, instant reacquisition, no-mask angle needed); streaming velocity for dead reckoning with segmentation of position fixes; differential operation – differencing across satellites, receivers, and time; handling correlations from differencing; orthogonalization for simple QR factorization; measurement relocation in time and lever-arm adjustment; E(Extended)RAIM;  D(Differential)RAIM; necessity of weighting in single-measurement RAIM with pseudoranges and carrier phases, concurrently; sample flight test results showing state-of-the-art accuracies in dynamics (e.g., cm/sec RMS velocity error and tenths-mrad leveling) with a low-cost IMU; revisit of the same flight segment, achieving decimeter/sec RMS velocity error without any IMU
  • Tracking (with subdivision into over a dozen topics including a littoral environment operation with hundreds of ships present; orbit determination; usage of Lambert’s laws; surface-to-air (subdivided into ground-to-air and tracking from ships), air-to-surface and surface-to-surface (again with the same subdivision),  air-to-air; reentry vehicles; usage of stable coordinate frames; linearity in both dynamics and measurements; Mode-S squitters for mutual surveillance and collision avoidance in crowded airspace; multiple track output usage (placement of gates, antenna steering, file maintenance); crucial importance of transmitting measurements rather than coordinates (publication #66); extension to noncooperative objects, critical distinction (often blurred) between errors in tracking and stabilization; sucessfully accomplished concurrent track of multiple objects with electronically steered beams; bistatic and multistatic operation; postprocessing to form familiar parameters from estimator outputs; short-range projectiles over “flat-earth” – plus many more)
  • Processing of inertial data – incrementing of position, velocity, attitude; straightforward state-of-the-art algorithms for complete metamorphosis from raw gyro and accelerometer samples into final 3-D position, velocity, and attitude; motion-sensitive inertial instrument errors; coning; sculling; critical distinction between misalignment (imperfect mechanical mounting) vs misorientation; adaptive accommodation of gyro scale factor and misalignment errors; instability of unaided vertical channel; azimuth pseudomeasurement; near-universal misconceptions connected to free-inertial coast
  • Support functions (transfer alignment; SAR motion compensation; stabilization of images; sensor control mechanizations; synchronization; determination of retention probability)
  • Vision-for-the-future with maximum situation awareness for all cooperating participants in a scenario; critical role of interfaces (implications of singularities, RAIM, Differential GPS, etc.), software modularity, reuse, coordination).  Full validation in GNSS Aided Navigation and Tracking.