A satellite signal navigation receiver can reduce channel resource usage and matched filter requirements by producing a single-bit local replica code from the combined incoming signals of each in view satellite. In one embodiment, the E1-B and E1-C signals from a Galileo satellite are received and converted into single-bit digital representations (B and C, respectively). A modified local replica code D is created by modifying (B−C) by replacing all “−2” values with “−1” values, by replacing all “+2” values with “+1” values, and by replacing all zero values such that a sum of the replaced zero values over a predetermined period will approximately equal zero. For instance, the “0” values can be replaced with alternating “−1” and “+1” values. Another modified replica code D* can be created by modifying (B+C) in a similar manner.
|
12. A satellite navigation signal receiver, comprising:
a signal receiving unit configured to receive a pair of incoming signals from an in-view satellite;
an analog to digital conversion circuit configured to convert each of the received incoming signals into a single-bit signal code; and
a digital signal processor configured to process the single-bit signal codes to obtain navigation information, said digital signal processor comprising:
a modified code generator configured to generate a single single-bit local replica code based on adding or subtracting one of the single-bit codes from the other single-bit signal codes; and
a matched filter configured to correlate the local replica code with the incoming signals.
1. A satellite navigation signal receiver, comprising:
a digital signal processor configured to process a pair of incoming satellite signals from each of a plurality of in-view satellites;
a modified code generation unit configured to generate a single single-bit modified local replica code for each of the plurality of in-view satellites, the single single-bit modified local replica code for each in-view satellite being based on adding or subtracting a single-bit digital representation of one of the pair of incoming satellite signals for the in-view satellite from a single-bit digital representation of the other of the pair of incoming satellite signals for the in-view satellite; and
a matched filter configured to correlate an incoming satellite signal with the modified local replica codes.
9. A method of combining satellite navigation signals in a signal receiver, the signal receiver comprising a signal receiving unit, an analog-to-digital converter and a code generator, said method comprising:
receiving at the signal receiving unit two or more signals from a single satellite;
converting at the analog-to-digital converter each of the two or more signals into digital representations of the satellite signals;
combining at the code generator by adding or subtracting the two or more digital representations of the satellite signals to create a combined signal representation;
modifying at the code generator the combined signal representation to create a single single-bit local replica code; and
correlating the single-bit local replica code with a received signal from the single satellite.
2. A satellite navigation signal receiver according to
3. A satellite navigation signal receiver according to
4. A satellite navigation signal receiver according to
5. A satellite navigation signal receiver according to
6. A satellite navigation signal receiver according to
7. A satellite navigation signal receiver according to
8. A satellite navigation signal receiver according to
10. A method according to
11. A method according to
13. A satellite navigation signal receiver according to
14. A satellite navigation signal receiver according to
15. A satellite navigation signal receiver according to
16. A satellite navigation signal receiver according to
|
This disclosure relates generally to satellite navigation signal receivers, such as Global Navigation Satellite System (GNSS) receivers, and more particularly, to methods and apparatuses for efficiently combining satellite navigation signals.
The conventional Global Positioning System (GPS) traditionally transmitted only one signal (e.g., GPS L1 C/A code) to consumer users. Modern satellite systems, like in the Galileo positioning system, however, may transmit more than one signal on the same frequency for various purposes (including, for instance, providing secure signals not intended for use by most users, and providing multiple signals split between data and pilot channels). In the case of the Galileo system, two signals (Galileo E1-B and E1-C signals) are provided on the same frequency with 50% of the power being transmitted in each of the signals.
Conventional systems may combine signals from a single satellite to boost signal strength and optimize receiver acquisition, tracking sensitivity, and operation under dynamics. However, conventional systems lack the ability to combine signals in a way that permits the combined signal to be processed efficiently, for instance as a single-bit signal using a single channel per satellite.
Satellite navigation systems with global or near global coverage can be referred to as Global Navigation Satellite Systems (GNSS). These include, for instance, the United States' NAVSTAR Global Positioning System (GPS), Russia's Global Navigation Satellite System (GLONASS), China's Compass navigation system (Compass), and the European Union's Galileo positioning system (Galileo).
In the case of Galileo satellite signals, a GNSS receiver typically frequency translates every in-view satellite's E1-B and E1-C signals to a lower carrier frequency before sampling the signal bands via an analog to digital converter (ADC). Thereafter, the signals are processed digitally in a digital signal processor. Because Galileo and GPS receive bands are sufficiently close, the digitized signals may contain both system's visible satellites.
Digital signal processing in a conventional receiver is used to acquire, track, and demodulate the individual satellite signals, plus many other functions known to those skilled in the art. The output of the digital signal processor is typically a range measurement for each satellite in-view, which can then be further processed to produce a navigation, velocity, and timing solution also known to those skilled in the art.
In a conventional digital signal processor, the digitized samples are sent to a digital pre-processor block that may perform interference mitigation, filtering, re-sampling, or other operations. These operations can include, for instance, generating an automatic gain control (AGC) signal designed to keep the N-bit sampled signal+noise within an optimal range.
If the receiver is capable of processing 20 channels, then it can use up to 20 channels to perform satellite acquisition and tracking tasks. Although 20 channels may have conventionally been sufficient for GPS position tracking and navigation, with the evolution of additional satellite systems (e.g., Glonass, Galileo, Compass, etc.), the number of satellites in-view, as well as user performance expectations, have grown substantially. Accordingly, it is now not unreasonable to expect a satellite navigation receiver to have upwards of 200 channels.
A matched filtering operation correlates the incoming satellite signal with a locally generated spreading code replica, the mathematical definition is given as follows:
z(t)=∫×(t)*y(t+τ)dτ
(τ typically covers −1 msec to +1 msec)
Where x(t) is the incoming satellite signal and y(t) is the locally generated replica. The variable t is the time shift applied to y(t) to generate outputs at different relative code delays. The output z(t) is the desired correlation output. Each satellite transmits a different spreading code and, in the case of Galileo satellite systems, two spreading codes per satellite (i.e., one for each of the E1-B and E1-C signals).
The E1-B and E1-C signals are typically transmitted with equal power. Therefore, if only one of the signals is received, half of the available signal power (e.g., approximately 3 dB of signal power) will be wasted. For satellite reception in the most challenging environments, it is therefore preferable to receive both E1-B and E1-C signals and then combine them to maximize the received signal power. This signal combining enables the highest sensitivity and best dynamic performance satellite acquisition and tracking.
The E1-B and E1-C signals are each defined as binary sequences. Therefore when receiving the E1-B or E1-C signals, the locally generated replica can be efficiently represented as a K=1-bit signal. And because the locally generated replica for these signals is a one bit signal, this allows the matched filter for the E1-B and E1-C signals to be optimally designed having minimal Application Specific Integrated Circuit (ASIC) area and power consumption characteristics.
Combining the E1-B and E1-C signals can be achieved, for instance, by correlating the incoming satellite signal with a locally generated replica of (E1-B)-(E1-C). Generating a replica like this from two binary sequences, however, generates a three-state sequence (e.g., binary states={−1, +1}, combination states={−2, 0, +2}). Unfortunately, for optimal matched filter design, this 3-state local code presents a problem because it cannot be represented by a single bit. Typically, this problem has been solved by having the matched filter correlate first with E1-B, then independently with E1-C, and subsequently combining the output results to create the correlation of E1-B and E1-C. This operation, however, requires two channels per satellite, which is also undesirable because it uses up more of the receiver's important channel resources.
Smart phones and other GNSS devices are trending toward receiving the Galileo E1-B and E1-C signals. These two signals are transmitted together at a carrier frequency of 1575.42 MHz. Each satellite has different spreading codes for its E1-B and E1-C transmission, and 50 such pairs of codes have been defined in the Interface Control Document (ICD) (see “European GNSS (Galileo) Signals in Space Interface Control Document,” issue 1, February 2010, the contents of which are hereby incorporated herein by reference in their entirety).
According to principles of the present inventive concepts, a receiver can be designed to permit the combined E1-B and E1-C correlation to be performed with a single matched filter operation while maintaining a 1-bit local replica code generation. This thereby enables a matched filter design with minimum ASIC space and power requirements while sparing additional demands on the limited channel resources.
In one embodiment, the incoming signal is correlated with a modified locally generated code, instead of the ICD defined E1-B or E1-C memory codes. These locally generated codes can be designated, for instance, as D and D*, with a D and D* code generated for each satellite. In one embodiment, D represents a modified version of B−C (where B and C are the digital representations of the E1-B and E1-C signals, respectively). Correspondingly, D* represents a modified version of B+C. The determination of which locally generated code (D or D*) to correlate with any given time can be determined by the data bit sign relationship between the B and C codes at that time.
Various methods can be used for creating the modified local replica codes. For example, the D code can be formed from (B−C) by replacing the resulting 3-state values {−2, 0, +2} as follows: setting “−2”=>“4”, “+2”=>“+1”, and replacing all “0” values in the memory code by alternating “−1” and “+1” values such that over the code correlation period (e.g., 4 msecs) they will approximately correlate to zero. It should be noted, however, that other mechanisms for ensuring that the replaced zero values accumulate to approximately zero over the desired period are also possible. For example, the first two, three, four, or more “0” values could be replaced by a value of “−1” with the next like number of “0” values replaced by “+1”, and repeating the replacement sequence for the duration of the period. The D* code can be formed from (B+C) in a similar manner.
D and D* are therefore modified versions of (B−C) and (B+C), respectively, with a single bit signal space of {4, +1}, rather than a three-state sequence of {−2, 0, +2}. Accordingly, because the substituted D and D* signals are single bit representations, by using D and D*, the matched filter structures can remain unchanged. The ASIC area and power consumption attributes can therefore benefit significantly from this design, and the channel resources can be spared from additional burdens.
The following detailed description is presented to enable one of ordinary skill in the art to make and use the invention, and is provided in the context of a patent application and its requirements. Accordingly, various modifications to the exemplary embodiments and the generic principles and features described herein will be readily apparent to those skilled in the art. The exemplary embodiments are mainly described in terms of particular methods and systems provided in particular implementations. However, the methods and systems will operate effectively in other implementations. Phrases such as “exemplary embodiment”, “one embodiment” and “another embodiment” may refer to the same or different embodiments as well as to multiple embodiments. The embodiments will be described with respect to systems and/or devices having certain components. However, systems and/or devices according to the present inventive principles may include more or fewer components than those shown, and variations in the arrangement and type of the components may be made without departing from the scope of the inventive concepts. The exemplary embodiments may also be described in the context of particular methods having certain steps. However, the method and system operate effectively for other methods having different and/or additional steps and steps in different orders that are not inconsistent with the exemplary embodiments. Thus, the present inventive concepts are not intended to be limited to the embodiments shown, but are to be accorded the widest scope consistent with the principles and features described herein.
For instance, the Galileo and GPS receive bands are close enough such that the digitized signals from the ADC 120 can contain both System's visible satellites.
Referring to
After digitization in the ADC 120, the signals are sent to a digital signal processor 140, which is shown in more detail in
As will be described in further detail with additional reference to
This digital signal processor structure 140 typically determines the number of channels a receiver is capable of processing. For example, if the receiver is capable of processing 20 channels then it can use up to 20 channels to perform satellite acquisition and tracking tasks. Although, conventionally, 20 channels may have been sufficient for performing GPS satellite signal acquisition, tracking, and measurement functions, with the evolution of additional satellite systems (e.g., Glonass, Galileo, Compass, etc.), the number of satellites in-view and user performance expectations have grown substantially, where-in upwards of 200 channels is not an unreasonable expectation.
As shown in
z(t)=∫×(t)*y(t+τ)dτ
(τ typically covers −1 msec to +1 msec)
In this equation, x(t) is the incoming satellite signal and y(t) is the locally generated replica. The variable τ is the time shift applied to y(t) to generate outputs at different relative code delays. The output z(t) is the desired correlation output. Each satellite transmits a different spreading code and, in the case of Galileo satellites, two spreading codes per satellite (one for each of the E1-B and E1-C signals).
As noted previously, the E1-B and E1-C signals are each transmitted with equal power such that if only one signal is received and utilized, then half of the available signal power will be wasted. For satellite reception in the most challenging environments, it is therefore desirable to receive both E1-B and E1-C signals and then combine them to maximize received signal power, thus enabling the highest sensitivity and best dynamic performance satellite acquisition and tracking.
E1-B and E1-C are defined as binary sequences. Therefore, when receiving E1-B or E1-C, the locally generated replica can be efficiently represented as a K=1-bit signal. And because it is a 1-bit signal, this allows the matched filter to be designed to minimize ASIC area and power consumption. Even when processing only a single-bit signal, the matched filter 148 can be a significant component in terms of its space and power requirements. It is therefore desirable to minimize the complexity of the matched filter 148 to reduce its demand on system space and power.
Combining the E1-B and E1-C signals is conventionally achieved by correlating the incoming satellite signal with a locally generated replica of the combined signals ((E1-B)-(E1-C)), generated in the satellite code generation circuitry 146. Unfortunately, however, generating the local replica from two binary sequences results in a three-state sequence (binary={−1,±1}, combination={−2,0,+2}). Because this 3-state local code must be represented by multiple bits, it presents a problem for an optimized matched filter design. This problem is typically solved by having the matched filter 148 correlate first with E1-B, then independently with E1-C, and subsequently combining the output results to create the correlation of E1-B and E1-C. Unfortunately, however, this operation requires two channels per satellite, which is also undesirable as it quickly uses up important channel resources of the receiver. Accordingly, it would be desirable to enable a combined signal from a single satellite that can be represented by a single-bit local replica code without significant degradation in its other performance characteristics.
The principles of the present inventive concepts are designed to allow combined E1-B and E1-C correlation to be performed with a single matched filter operation while maintaining a 1-bit local code generation. They further permit the correlation of the combined signals to be performed using only a single channel per satellite.
According to principles of the present inventive concepts, smart phones and other GNSS receivers may receive both the Galileo E1-B and E1-C signals. As explained previously, these two signals are transmitted together at a carrier frequency of 1575.42 MHz, and each satellite has different spreading codes for its E1-B and E1-C transmissions. Fifty such pairs of codes have been defined in the ICD (see “European GNSS (Galileo) Signals in Space Interface Control Document”, issue 1, February 2010).
Using the modified satellite code generation and processing block 145A, the incoming signal can be correlated with a modified locally generated code (e.g., D and D*), instead of the ICD defined E1-B or E1-C memory codes. According to this embodiment, new locally generated codes are designated D and D*, with a D and D* code generated for each satellite. D represents a modified version of (B−C) and D* represents a modified version of (B+C). Which code to correlate with is determined by the data bit sign relationship between B and C codes at any given time.
More specifically, D and D* are preferably modified versions of (B−C) and (B+C), respectively, each having a signal space of {−1, +1} instead of {−2, 0, +2}. With D and D* having a single-bit signal space, the matched filter structures can be optimized with reduced area and power requirements.
It should be noted that the results of (B−C) and (B+C) typically contain approximately 50% “0” values, 25% “−2” values and 25% “+2” values. Therefore, according to principles of the present inventive concepts, to achieve a signal space of {−1, +1}, the locally generated D and D* codes can be formed from (B−C) or (B+C), respectively, as follows:
Of course, it will be readily understood that other mechanisms for ensuring that the overall value of the zeros in the single bit (B−C) and (B+C) representations over a predetermined period accumulate to approximately zero are also possible. For example, the first two, three, four, or more “0” values could be replaced by a value of “−1” with the next like number of “0” values replaced by “+1”, with the replacement sequence repeated for the duration of the period.
In summary, the D and D* locally generated codes can therefore be created and used as follows:
Step 1—Create two new locally generated single-bit memory codes from the E1-B and E1-C signals, with D z (B−C) and D*≈(B+C) over a predetermined signal period.
Step 2—Correlate the incoming signal with D or D*, as determined based on the data bit sign relationship between the B and C codes at the given time.
Using the modified correlation codes according to the present inventive principles, a single bit matched filter can be used for the correlation operation and significant space, power, and/or channel resources can be preserved. In addition, according to these principles data stripping can be built into the selection of correlation between D and D* so the data stripping block 149 of
Referring first to
Accordingly, principles of the present inventive concepts permit a single-bit locally generated code to be used for correlation with an incoming satellite navigation signal to allow an optimized matched filter design with minimal space and power requirements. These principles may also be used to limit demands on channel resources.
Although the principles of the present inventive concepts have been described herein with respect to certain embodiments thereof, the inventive concepts are not limited thereto. The principles of the present inventive concepts, for instance, are not limited to use with the Galileo E1-B and E1-C signals. Other examples of signals transmitted on the same frequency from the same satellite include modern/future GPS L1-C signals combined with the legacy GPS L1 C/A code, both of which may use binary spreading codes and transmit on a frequency of 1575.42 MHz. In addition, transmitting the GPS L1 C/A signal along with an SBAS C/A code from the same satellite is possible, as is the case in the Japanese augmentation satellite system (QZSS). The signal combining principles of the present inventive concepts are equally applicable to these and other signal systems.
The scope of these inventive principles should therefore not be limited to any specific embodiment but should be interpreted to cover all such configurations and modifications thereto encompassed by the spirit and scope of the appended claims.
Patent | Priority | Assignee | Title |
10725183, | Feb 22 2018 | Samsung Electronics Co., Ltd | GNSS multipath mitigation via pattern recognition |
10746882, | Feb 21 2018 | Samsung Electronics Co., Ltd | GNSS receiver performance improvement via long coherent integration |
10768310, | Jan 03 2018 | Samsung Electronics Co., Ltd | System and method for providing code modification for multipath improvement in GNSS receivers |
10768311, | Dec 27 2017 | Samsung Electronics Co., Ltd | System and method for combining signals for improved performance in challenging environment |
11346958, | Apr 27 2018 | sSamsung Electronics Co., Ltd | GNSS receiver performance improvement via long coherent integration |
Patent | Priority | Assignee | Title |
6922167, | Jul 14 2003 | European Space Agency | Hardware architecture for processing galileo alternate binary offset carrier (AltBOC) signals |
7362795, | Mar 28 2004 | Trimble Navigation LTD | Method and apparatus for acquisition and tracking of GPS satellites at low signal to noise levels |
7643537, | Jan 23 2007 | L3 Technologies, Inc | Spread spectrum signal detection with inhibiting for known sidelobe locations |
7994977, | Dec 02 2008 | CSR TECHNOLOGY INC | Method and apparatus for a GPS receiver capable or reception of GPS signals and binary offset carrier signals |
8027371, | Apr 19 2007 | MEDIATEK INC | Combine time multiplexed pilot (TMP) derotation with descrambling and despreading in data correlators used by rake receivers |
8111735, | Jan 28 2008 | MEDIATEK INC. | GNSS data/pilot correlator and code generator thereof |
20060022869, | |||
20070205940, | |||
20090196329, | |||
20090224973, | |||
20110206031, | |||
20110261805, | |||
20110309978, | |||
CN102207550, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
May 06 2013 | LENNEN, GARY | SAMSUNG ELECTRONICS CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 030388 | /0291 | |
May 09 2013 | Samsung Electronics Co., Ltd. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Aug 21 2019 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Nov 13 2023 | REM: Maintenance Fee Reminder Mailed. |
Apr 29 2024 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Mar 22 2019 | 4 years fee payment window open |
Sep 22 2019 | 6 months grace period start (w surcharge) |
Mar 22 2020 | patent expiry (for year 4) |
Mar 22 2022 | 2 years to revive unintentionally abandoned end. (for year 4) |
Mar 22 2023 | 8 years fee payment window open |
Sep 22 2023 | 6 months grace period start (w surcharge) |
Mar 22 2024 | patent expiry (for year 8) |
Mar 22 2026 | 2 years to revive unintentionally abandoned end. (for year 8) |
Mar 22 2027 | 12 years fee payment window open |
Sep 22 2027 | 6 months grace period start (w surcharge) |
Mar 22 2028 | patent expiry (for year 12) |
Mar 22 2030 | 2 years to revive unintentionally abandoned end. (for year 12) |