The present invention is directed to a global positioning system (GPS), and more particularly to a GPS system having improved signal-to-noise ratio for reducing the required signal level for which GPS may be implemented in hand-held electronic devices or cell phones.
The United States Global Positioning System (GPS) is used extensively throughout the world for estimating the position of a receiver in terms of latitude, longitude, and elevation on the earth, and for navigation. Development efforts in GPS implementation have focused on packaging, miniaturization and cost reduction for commercial applications, e.g., hand-held electronic devices. In the area of GPS performance, the major thrust is to increase the sensitivity of the GPS receiver so that it can acquire satellite signals at the reduced signal levels associated with covered environments, such as under tree canopies or indoors. A major driver for this development is legislation in the United States requiring that all cell phones must soon be able to provide localization information with 911 calls.
Since emergency situations frequently occur indoors, this has spurred great interest in improving the sensitivity of GPS to be able to acquire and process satellite information at lower signal levels. The most severe condition is a “cold start”, wherein the GPS receiver is turned on with no information regarding the satellites or its location. A “warm start” is a reacquisition of the satellite data with the benefit of previous track and satellite information, for example when an outdoor track is dropped as the receiver is brought indoors. Warm starts require less signal strength than cold starts. Assisted GPS (AGPS) is a mode of operation that reduces the amount of data that needs to be estimated by the receiver by providing that information via an auxiliary communications link. AGPS requires less computation since the supplied information reduces the search space for acquisition, and can be performed at a lower signal level than a cold start. Another variable is the time to first fix (TTFF), which is reduced dramatically if assist data from other ground communications links can be made available to the GPS receiver.
The entire area of development collectively denoted by High Sensitivity GPS (HSGPS) has concentrated on the added signal processing complexity that could provide operation in these adverse environments that have reduced GPS signal levels.
GPS is a space-based localization system that operates on signals received from satellite transmitters. It is thus a “passive” system, in that it operates entirely on received rather than transmitted and reflected energy, and is therefore available for use by anyone who has the needed receiver equipment. Each satellite in the GPS system is called a space vehicle (SV) and transmits a GPS signal to the ground. The data or information contained in this signal is called navigation, or NAV data, digitally encoded in bits called NAVbits. It contains GPS timing or clock correction data, satellite location or “ephemeris” information, other data related to propagation conditions such as ionospheric data, and almanac data related to the orbits of all of the SVs. All of this information is coordinated between all of the SVs and central ground control stations operated by the US Government for the entire GPS network. The receiver needs to lock on to signals from a minimum of four SVs to unambiguously solve the geometric equations that locate its position on the earth. Most receivers simultaneously scan for between eight and twenty possible satellites.
A major function of the signal acquisition processing in GPS is to extract and estimate two specific pieces of data from each SV: 1) the time alignment, which will be denoted as a time shift, of the unique code sequence from each SV, and 2) the frequency or Doppler shift of the carrier frequency caused by relative motion between the SV and the receiver. Assisted GPS restricts the region of time and frequency shifts over which search is required by utilizing approximate satellite localization information provided by the ephemeris data through some form of communication link.
Improvements in operation at reduced signal levels such as indoors and under trees have concentrated on using multiple frequencies simultaneously as in military systems, and launching new satellites with increased transmission power levels. Even with these improvements there is always a need to detect lower signal levels for both civilian and military systems.
The present invention changes the signal processing in GPS to operate at lower received signal levels. By operating at lower received signal levels, the GPS system is able to achieve cold starts, warm starts, and assisted GPS faster and in conditions at which they could not otherwise be achieved. This allows the user greater flexibility in the conditions under which the GPS is used. The GPS, whether stand alone or in a cell phone, provides positional information faster and in conditions such as under tree canopies and indoors, where operation would not be possible with existing GPS processing approaches. The present approach may be implemented in application specific hardware, programmable digital signal processors, or a mixture of both as might be appropriate.
One of the innovations is improving the acquisition function of the GPS receiver. It does this by inserting new signal processing for broadband noise reduction that allows subsequent improved estimation of critical time shift and frequency shift parameters needed for GPS localization at lower received signal levels.
Another innovation is improving the decoding of the navigation bits from the satellite transmissions to provide ephemeris data needed for computing navigation solutions at lower received signal levels. It does this by examining the output of the same new signal processing for broadband noise reduction for discontinuities in the output time series that correspond to navigation bit changes.
In one embodiment, the invention is directed to a method for GPS signal processing that enables GPS signal acquisition at reduced received signal power levels. This is done by sensing GPS signals from a plurality of satellites through an antenna and preamplifier, receiving the GPS signals from the antenna in an radio frequency or RF stage, and then down converting the GPS signals from RF to intermediate (IF) frequencies in a down converter. The resulting IF GPS signals are then converted to digital GPS signals in an analog-to-digital converter (A/D) for input to a digital signal processor or DSP. The processing in the DSP takes several steps. First the digital GPS signals are buffered into a time block for decoding by multiplying the buffered digital GPS signals by a coarse acquisition (C/A) code that has been concatenated over a time interval that matches the buffered block of time sampled digital GPS signals, resulting in a decoded GPS signal. This is followed by filtering and decimating the decoded GPS signal in the digital signal processor to reduce the sample rate. At this point the reduced sample rate signal is processed to reduce the broadband noise component of the filtered and decimated decoded GPS digital signals. This is done by a process called Broadband Noise Reduction (BBNR) which employs adaptive filtering. The input to the adaptive filter is obtained by applying the reduced sample rate signal to a bulk delay to provide a delayed version of the reduced sample rate signal. This delayed version is processed in an adaptive filter, the output of which is then subtracted from the original undelayed reduced sample rate signal to generate an error signal. This error signal is fed back to the adaptive filter to iteratively adjust a plurality of filter weighting parameters in the adaptive filter to minimize the power in the error signal. This produces an adaptive filter output signal having a reduced level of the broadband noise component. Spectral analysis of the adaptive filter output signal is then performed to detect the shifted carrier frequency. The frequency shift is estimated by performing spectral bin-to-bin comparisons on a plurality of discrete frequency bins and selecting a peak spectral bin based on a greatest power value for all time shifts associated with the C/A codes, and comparing the greatest power value in the peak spectral bin to a threshold value. Associating the time shift of the C/A code and the frequency bin with greatest power value that exceeds the threshold results in the time shift estimate and frequency shift estimate. The time shift estimate and frequency shift estimate are then passed to a signal tracking function to produce a refined time shift estimate and a refined frequency shift estimate which is then passed to a navigation processor that combines the refined time shift estimate and the refined frequency shift estimate with ephemeris data to calculate a GPS location.
In another embodiment, the invention is directed to a method for GPS signal processing that improves navigation bit decoding. The approach is the same through the step of reducing the broadband noise component using the BBNR. Discontinuities in the BBNR output time waveform are then used to detect transitions in the navigation bits. This is done by detecting a plurality of negative spikes in the power of the time waveform of the adaptive filter output signal, and associating the occurrence of the detected spikes with a flip of the NAVbits from zero to one or from one to zero, and by associating the corresponding time of the spike with the time of the NAV bit flip. The NAVbits and the times associated with NAVbit flips are then passed to a navigation processor where the NAVbits are decoded into ephemeris data. The ephemeris data is used in navigational calculations to obtain a GPS location.
In another embodiment, the invention is directed to a method for GPS signal processing that performs both the time shift and frequency shift estimation along with the detection of navigation bit flips and combines them to improve both GPS signal acquisition and navigation bit decoding.
In another aspect, the invention is directed to a system for GPS signal processing. In a system implementation, hardware or software functions are provided for each of these steps.
This invention makes these changes in the digital signal processor portion of the receiver which will be described below in more detail.
The invention allows GPS operation at lower input signal levels and thereby improves the sensitivity sufficiently for the GPS to work in adverse environments where the received signal level is reduced, such as indoors, under trees, inside vehicles, in between tall buildings in inner city canyons, etc. This applies to all GPS operational modes such as cold start, warm start, and assisted GPS.
This invention improves the signal-to-noise ratio at which GPS will operate, by inserting new additional signal processing, thus making dramatic strides in High Sensitivity GPS performance. It may be implemented in application specific hardware, programmable digital signal processors, or a mixture of both as might be appropriate It does this with easily accommodated increases in processing complexity, such that it is well within the realm of inclusion in small, inexpensive implementations such as hand-held devices or cell phones.
Other features and advantages of the present invention will be apparent from the following more detailed description of the preferred embodiment, taken in conjunction with the accompanying drawings which illustrate, by way of example, the principles of the invention.
There are three important GPS signal processing functions addressed in this discussion: 1)signal acquisition, which is described in conjunction with
The signal acquisition function is the estimation of the critical time and frequency shift parameters to accuracy adequate to allow subsequent code and carrier track loops to lock on and track dynamic time shifts and Doppler changes in the GPS signals. The signal tracking function is the dynamic tracking and refinement of the time shift and frequency shift estimates. The outputs of the signal acquisition function along with the input data are passed to the signal tracking function, which uses them to initialize the carrier and code tracking loops. To obtain a GPS location, the acquisition and tracking results are passed to a navigation processor, which combines the time shift and frequency shift estimates with ephemeris data. The navigation information bit decoding is needed by the navigation processor to estimate the ephemeris data from the SV transmissions, where it has been encoded in the NAVbits.
The description of the invention will be illustrated using the civilian GPS. The GPS signal 202 from each GPS satellite 204 is different and contains unique coded information that is used in performing the method 20. The GPS signals 202 are typically of a frequency for civilian GPS called the L1 carrier, a single sinusoidal carrier that is transmitted from each SV at a frequency of 1575.42 MHz. The navigation information is encoded as a sequence of bits transmitted at a 50 Hz rate. The navigation data is multiplied (or logic exclusive OR'd) with the SV's pseudo-random noise code, which is a 1.023 MHz bit stream. The combined bit stream (NAVbits and code bits) is modulated onto the carrier by varying its phase for each information bit, using quadrature phase shift keying, or QPSK. The navigation data, which is encoded in bits of information called NAVbits, changes slowly and has a relatively small amount of information; it varies at a 50 Hz rate.
The data is multiplied (or applied using a logic exclusive OR function) with the SVs pseudo-random noise code. The modulating codes vary rapidly and thus occupy a broad frequency band relative to the NAV data. This spreads the spectral content over a broad band that provides very desirable properties with respect to jamming signals and multipath propagation, and also allows multiple users to occupy the same band and be distinguished from one another. The codes are carefully selected from the class of so called “Gold codes” which have low response when cross-correlated with one another, and very spiked response when autocorrelated with themselves. The spiked autocorrelation property is what is used to accurately estimate the relative time shift between the received modulated signal and the replica code in the receiver. The codes vary so rapidly that the delay steps between code chips are sufficiently small, and the value of time shift that provides code alignment is of a sufficiently high-resolution time value to provide time shift estimates.
A bank of correlators, or matched filters, is used to extract an estimate of the propagation time shift and the Doppler frequency shift. These matched filters correlate the received signal with replicas of the code for different time alignments and different frequency shifts, resulting in a large magnitude signal when the time shifts and frequency shifts are properly aligned.
Continuing the description of the invention using the civilian GPS, the codes are called the C/A (Coarse Acquisition) Codes. The C/A codes are 1.023 MHz Pseudo Random Noise (PRN) Codes which repeat every millisecond (or 1023 bits). This noise-like code modulates the 50 Hz NAVbits “spreading” the spectrum over approximately 1 MHz bandwidth. There is a different C/A code PRN for each SV. GPS satellites are often identified by their PRN number, the unique identifier for each pseudo-random-noise code.
Because antenna signals are generally weak, the output amplitude is scaled up using a preamplifier 208 that is usually part of the antenna hardware. The preamplifier output is input to a radio frequency (RF) receiver stage 210, which is hardware circuitry tuned to respond to the 1575.42 MHz satellite transmissions, step 24 of
The output signals 212 of the RF stage 210 are down-converted from RF to IF (intermediate frequencies, of about 5 MHz) in a down converter 214, step 26 of
The analog IF GPS signals are converted in step 28 of
The first operation in the digital signal processor 220 is to buffer the digital GPS signals 216 to obtain a block of time-sampled digital GPS signals 222, step 30 of
The time-sampled digital GPS signals 222 are multiplied in the multiplier 232, step 32 of
Since there is no need to run the subsequent digital processing at a higher rate than twice its bandwidth, the output 228 of the multiplier 232 is low pass filtered and decimated in step 36 of
After the filtering and decimating step 36, the spectral level of the broadband noise component of the reduced sample rate GPS signal 236 is reduced, step 38 by a series of steps in the digital signal processor 220. This broadband noise reduction is indicated as step 38 of
The reduced sample rate signal 236 is applied to a bulk delay 240, step 80, to provide a delayed version 282 of the reduced sample rate signal 236. In this step 80, a bulk delay predetermined amount of time is greater than the correlation time of the broadband noise component of the delayed version 282 of the reduced sample rate signal 236, and less than a correlation time of the GPS signal component of the reduced sample rate signal 236, such that the delayed signal broadband noise component is decorrelated. The delayed version 282 of the reduced sample rate signal 236 is correlated with respect to the GPS signal component of the undelayed reduced sample rate signal 236 which contains the GPS information.
The delayed version 282 of the reduced sample rate signal 236 is adaptively filtered, step 84 in
The adaptive filter output signal 286 is subtracted, step 88 in adder 288, from the undelayed reduced sample rate signal 236 to produce an error signal 290. The error signal 290 is fed back to the adaptive filter 284, step 90 in
The adaptive filter 284 is a tapped delay line with weighting coefficients that scale the values of the digital waveform at each tap and then sum the plurality of filter weighted tap outputs. The weighting coefficients are iteratively adjusted in adaptive filter 284. The adaptive filter adjusts its transfer function to pass the correlated components of the reduced sample rate signal 236 and the delayed version of the reduced sample rate signal 282, and to reject the uncorrelated components of the reduced sample rate signal 236 and the delayed version of the reduced sample rate signal 282 to modify the adaptive filter output signal 286. The adaptive filter 284 preferably includes a least mean square (LMS) algorithm to iteratively adjust the plurality of filter weighting parameters in the adaptive filter 284 to minimize the power in the error waveform 290. The adaptive filter 284 in the BBNR processing block 238 employs a particular configuration of the Least Mean Square (LMS) Adaptive Filter, which is well known to those skilled in the art of signal filtering, and is described in detail in the textbook Adaptive Filters, Structures, Algorithms and Applications, by M. Honig and D.G. Messerschmitt, Kluwer Academic Publishers, Boston, USA 1984.
Returning to the flow diagram of
A peak spectral bin based on a greatest power value of all of the FFT bins computed over the plurality of replications for each possible time shift of the C/A code is picked, step 42, in a comparator 242. There is a replication 44 of the functions 30 through 42 in
The method includes associating, step 46, a time shift of the C/A code and the frequency bin with the greatest power value that exceeds the threshold setting 246 to be, respectively, the time shift estimate 248 and the frequency shift estimate 250. The time shift estimate associated with the C/A code that aligned with the data is related to the propagation travel time from the satellite 204 to the GPS receiver 200. These output values of the signal acquisition function are passed to the signal tracking function
The time shift estimate 248 and the frequency shift estimate 250 are passed, step 48, to a signal tracking function 252 to produce in tracking step 50 of
The refined time shift estimate 254 and the refined frequency shift estimate 256 are passed, step 52 of
The approach in this invention also improves the bit decoding of the navigation information from the SV transmissions. This approach is illustrated in
The method next includes detecting changes in the NAVbits and decoding the NAVbits by detecting discontinuities in the BBNR output 286, i.e., a plurality of negative spikes in the power in the time waveform of the adaptive filter output signal, step 60. The occurrence of the detected spikes is associated with a flip of the NAVbits from zero to one or from one to zero, and by associating a corresponding time of the spike with a boundary in time of the NAVbit flip. This allows the NAVbits to be decoded at lower signal levels than is required for conventional GPS processing. A particular BBNR (of the 2048 replicated versions) produces the best time alignment for estimating the time shifts 248 in
NAVbit estimation is the most demanding GPS process in terms of requiring the largest signal level. Current GPS systems require approximately a signal level of −142 to −145 dBm to decode the NAVbits, even though the time and frequency shifts can be estimated conventionally at approximately −155 dBm. That is why cold start can only be done at between −142 to −145 dBm, while assisted GPS (AGPS) can operate at about −155 dBm.
The spike detector/associator 260 detects the occurrence of NAVbit flips 262 and associates the time at which they occur with the NAVbit boundaries, 264. The steps 60 are performed in the DSP 220. The detected NAVbits are then passed 62 to the navigation processor 258, where the NAVbits are decoded into a set of ephemeris data. The ephemeris data are used in the navigational calculations described earlier to obtain the GPS location.
Referring to
Accumulating Y samples of input data for Z between 20 and 1000 milliseconds at a typical GPS sample rate of 5 MHz corresponds to a value of Y between 100,000 and 5,000,000 samples. Other embodiments may accumulate samples over a larger or smaller time block, which will adjust the values for number of samples and sample rate accordingly. The sample C/A code is concatenated to correspond to the time samples stored in the input buffer 224. The Low Pass Filtering and Decimation function 234 reduces the bandwidth and the corresponding sample rate at which the BBNR 238 operates, to the bandwidth and sample rate of the spectral information in the GPS signal. The sample rate reducer 234 is here implemented using low pass filtering and decimation, but may be applied in various configurations of one or more stages, so long as the configurations produce equivalent results.
In the specific case shown in
During the acquisition processing the NAVbits are assumed to be flipping between zeros and ones, but the NAVbits are not decoded because they are already provided in decoded form via an assist information path. So the effects of random bit flips are present, but the DSP is not decoding the information in the bit flips. This also allows increasing the coherent processing time. In this example processing takes place over approximately a 2.5 sec period, so some prediction is required to compensate for satellite motion over that interval of time. Any GPS operating over that time interval would have to perform a similar prediction, and it is assumed that it is done here in the same way. A single satellite only is simulated in this example. The conditions that apply for the performance simulations in
Three cases are compared in
In terms of absolute signal levels, the following has been demonstrated for the use of BBNR to improve GPS performance: 1) the simulation examples in
While the invention has been described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. As used herein, digital signal processing may be a general purpose programmable processor using software instructions or application specific hardware or a combination of both. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include all embodiments falling within the scope of the appended claims.
This application claims the benefit of U.S. Provisional Application No. 60/838,258 filed Aug. 17, 2006 for which priority is claimed and whose disclosure is incorporated by reference.
Number | Date | Country | |
---|---|---|---|
60838258 | Aug 2006 | US |