1. Field of the Invention
This invention relates to wireless communications, and more specifically to correction of shifts that occur due to Doppler effects imposed on transmitted signals.
2. Background Information
Many applications for wireless communications include obtaining timing and/or positional information from a received signal. Such applications may include locating and tracking a particular feature or pattern in a received signal over time. In one example, a base station tracks a signal received from a mobile telephone to determine the telephone's relative velocity. In another example, a receiver calculates its position by identifying delays in signals received from satellites in a global positioning satellite (GPS) system.
In a direct sequence spread spectrum (DSS) technique, a data signal is spread with a pseudo-noise (PN) code sequence before being modulated onto a carrier. In a GPS system, one such code sequence is called a coarse acquisition (C/A) code. When the received signal is correlated with the same code sequence, a correlation peak is obtained. The location in time of the correlation peak provides information regarding the propagation delay of the signal. This propagation delay information may be used to determine the relative distance between the transmitter and the receiver.
It may be desired to integrate correlation results over time, whether coherently and/or noncoherently. For example, an individual correlation result may be too weak to distinguish from background noise. Accordingly, integration over time may be employed to improve the signal-to-noise ratio (SNR).
Relative motion between a transmitter and a receiver causes a Doppler shift in the received signal. One effect of a Doppler shift is to cause the spreading code sequence in the received signal to drift over time. When correlating a Doppler-shifted signal over time, the correlation peak becomes distorted. The distortion typically appears as a spreading of the correlation peak as compared to the correlation peak resulting from correlation of a non-shifted copy of the signal. Such distortion may reduce the signal-to-noise ratio (SNR) of the correlation peak. This can be understood by recognizing that the amount of energy in the peak is the same whether distorted or not. However, in the distorted peak, the amount of energy is more spread out. In addition, this distortion or spreading of the peak may reduce the accuracy to which the location in time of the correlation peak may be determined.
A method according to one embodiment of the invention includes correlating a received signal with a predetermined code sequence and integrating the results of the correlation. As a result of integrating a Doppler shifted signal over time, the output of the integration includes one or more applied shifts (e.g. based on an estimated Doppler time shift). The method further includes (A) determining a location of a feature in the result of the integrating and (B) applying a correction based upon the applied shifts to the determined location of the feature.
The appended figures are illustrative only and are not intended to accurately depict particular features or to indicate particular scale relationships.
As the distance between the transmitter and receiver changes, the resulting Doppler shift causes the location (i.e., code phase τ) of the peak to change. The direction of movement of the peak depends upon whether the distance between the transmitter and receiver is becoming smaller or larger. The magnitude of the movement of the peak is directly proportional to the relative velocity of the transmitter with respect to the receiver (ignoring environmental effects such as reflections).
As discussed above, relative motion between a transmitter and a receiver may cause a Doppler shift in the received signal. In the example of
If the peak is integrated over several code modulation periods, drift due to the Doppler shift may cause the composite peak to spread over time rather than accumulating to increase SNR. It may be difficult to localize a spread peak, such that accuracy may be decreased. Spreading may reduce the height (e.g. power) of the composite peak. The position of the peak may also be shifted in code phase space. The shift of the composite peak in code phase can be approximated by the time average of the position of the instantaneous peak of the signal.
It may be desirable to combine the correlation results into a composite result. One possible advantage to such combination is to increase the effective observed SNR. In one example, a composite result is obtained by summing individual correlation results (e.g. as obtained over corresponding code modulation periods). In other applications, the various constituent correlation results may be weighted differently and/or subtracted from one another. One may see that as the Doppler shift causes the peaks to drift with respect to one another, a peak of the composite result may not have a single clearly defined location in code phase space.
Shifting allows the peak to accumulate, and may lead to better localization; unfortunately, shifting makes the time base inaccurate. For example, an error of only ⅛ chip is equivalent to over 30 meters. It is, of course, desirable to correctly locate the peak.
In one implementation, the received signal is sampled at chip×8 (e.g. 8×1.2288 MHz for a GPS signal). The sampled signal is resampled to chip×2 and divided into two streams (e.g. on-time and late) for correlation as described herein.
Tasks T130 and T140 determine relations between a current value of the accumulator and ½ of a correction unit. If task T130 determines that the current value exceeds ½ (alternatively, is not less than ½), then task T150 decrements the accumulator value and a correction of −1 unit is issued. Otherwise, if task T140 determines that the current value is not greater than −½ (alternatively, is less than −½), then task T160 increments the accumulator value and a correction of +1 unit is issued.
In one case, a correction having a magnitude of one unit is implemented by inserting or deleting one unit from the received signal before correlation. Alternatively, such a correction may be implemented by deleting or inserting one unit from the code sequence to be applied to the received signal.
dt, where c is the rate of drift, and T is the time over which the integration is performed. This value is the area of the triangle outlined in bold, divided by the length of the base of the triangle. This value is equal to the position of the instantaneous peak at the middle of the integration period.
As demonstrated in
In a case where the selected timestamp is the midpoint of the integration period, the drift of the received signal at that moment may be determined from the position of a compensated peak {circumflex over (p)} by adding back the time averaged value of the compensation. In the example shown in
In the example shown in
In other applications, it may be desired to obtain a peak position for a timestamp at another point in time t. For example, a peak position for a timestamp at the start of the integration period may be calculated by adding the compensation (and any bias) to the position of the observed peak and also subtracting the time averaged value of the Doppler shift. (e.g. the area of the triangle divided by the length of the base in the examples of
The estimate(s) upon which the Doppler shift curve is based may be erroneous. For example, factors such as oscillator drift may affect the accuracy of such a determination. One possible advantage of selecting a timestamp at the middle of the integration period is that the calculation of peak position need not include the area under the Doppler shift curve, which area will be affected by an error in the Doppler estimate. Therefore, a peak position as calculated for such a timestamp may be robust to at least minor errors in a Doppler estimate.
If there is an error in the estimate of the signal drift value, corrections may be applied by the compensation procedure as shown in
where pcp is the position of the peak in the composite peak profile, {tilde over (c)}(t) is the staircase function due to code Doppler compensations, and the bias is the magnitude sum of all compensations applied before the start of integration.
The foregoing presentation of the described embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments are possible, and the generic principles presented herein may be applied to other embodiments as well.
For example, the invention may be implemented in part or in whole as a hard-wired circuit or as a circuit configuration fabricated into an application-specific integrated circuit. The invention may also be implemented in part or in whole as a firmware program loaded into non-volatile storage or a software program loaded from or into a data storage medium as machine-readable code, such code being instructions executable by an array of logic elements such as a microprocessor or other digital signal processing unit. Thus, the present invention is not intended to be limited to the embodiments shown above but rather is to be accorded the widest scope consistent with the principles and novel features disclosed in any fashion herein.
This application claims priority to U.S. Provisional Application No. 60/369,406, filed Apr. 1, 2002.
Number | Name | Date | Kind |
---|---|---|---|
5809064 | Fenton et al. | Sep 1998 | A |
5822363 | Le Roy | Oct 1998 | A |
5955986 | Sullivan | Sep 1999 | A |
6289041 | Krasner | Sep 2001 | B1 |
6304216 | Gronemeyer | Oct 2001 | B1 |
6731672 | Eschenbach | May 2004 | B1 |
6850557 | Gronemeyer | Feb 2005 | B1 |
6909738 | Akopian et al. | Jun 2005 | B2 |
20020105458 | Dooley et al. | Aug 2002 | A1 |
20020181626 | Sung | Dec 2002 | A1 |
20030050949 | Van Wechel et al. | Mar 2003 | A1 |
Number | Date | Country |
---|---|---|
0033471 | Jul 2000 | WO |
Number | Date | Country | |
---|---|---|---|
20060121915 A1 | Jun 2006 | US |
Number | Date | Country | |
---|---|---|---|
60369406 | Apr 2002 | US |