The present invention relates to a receiver apparatus, a reception method, and a computer program.
In recent years, various electronic devices such as car navigation devices, mobile telephones, and digital still cameras have come equipped with a positioning function using the Global Positioning System (GPS). Typically, when the GPS is used in an electronic device, a GPS module receives signals from four or more GPS satellites, measures the position of the device based on the reception signals, and notifies a user of a measurement result through a screen of a display device or the like. More specifically, the GPS module demodulates the reception signals, acquires trajectory data of each GPS satellite, and derives a three-dimensional (3D) position of the device based on the trajectory data, time information, and a delay time of the reception signal by a simultaneous equation. Using four or more GPS satellites as a reception target, influence of an error between an internal time of a module and a time of a satellite can be reduced.
Here, a signal (an L1 band and a C/A code) transmitted from the GPS satellite is a signal in which Binary Phase Shift Keying (BPSK) modulation is further performed on a spread spectrum signal, which has undergone spread spectrum modulation on data of 50 bps by a gold code with a code length of 1023 and a chip rate of 1.023 MHz, using a carrier of 1575.42 MHz. Thus, in order for the GPS module to receive the signal from the GPS satellite, it is necessary to acquire synchronization of a spread code, a carrier, and data.
Generally, a GPS module mounted in an electronic device performs frequency conversion from a carrier frequency of a reception signal to an intermediate frequency (IF) of several MHz or less, and then performs the synchronization process. For example, a typical IF is 4.092 MHz, 1.023 MHz, 0 Hz, or the like. Typically, a signal level of the reception signal is smaller than a signal level of thermal noise, and a signal to noise (S/N) ratio is smaller than 0 dB, but the signal can be demodulated by a processing gain of a spread spectrum scheme. In the case of a GPS signal, for example, a processing gain on a data length of 1 bit is 10 Log(1.023 MHz/50)≈43 dB.
In the past, GPS receivers were mainly used in car navigation systems, but GPS receivers have recently been mounted in mobile telephones, digital still cameras, and the like, and the market for the GPS receivers is growing. In terms of performance, sensitivity has been improved, and thus GPS receivers having receiving sensitivity of −150 to −160 dBm are being proliferated.
With the spread of the GPS receivers, for the sake of hitherto unheard of the indoor use, expectations for improvements in the receiving sensitivity of the UPS signal are increasing more and more.
In a spread spectrum wireless system such as the GPS, a synchronous addition of a reception signal is usually used as a technique of improving the receiving sensitivity. The GPS signal is a periodic signal of 1 ms, but since the GPS signal is multiplied by navigation data of 50 bps, the synchronous addition of the GPS signal is typically allowed to be performed repeatedly only up to 20 times, that is, up to 20 ms.
In this regard, for example, in an A-GPS, navigation data by which the GPS signal is multiplied can be acquired from a network in advance, and by multiplying the received GPS signal by the acquired navigation data, the navigation data by which the GPS signal is multiplied is removed, and thus the synchronous addition can be performed over a long time.
However, in the technique of improving the receiving sensitivity using the previously acquired navigation data as in the A-GPS, there is a problem in that the GPS receiver needs to be connected to a network in order to acquire the navigation data.
In this regard, the present invention is made in light of the foregoing, and the present invention is directed to provide a receiver apparatus, a reception method. and a computer program, which are novel and improved and capable of improving the receiving sensitivity of the GPS signal.
The present technology is provided to solve the above-mentioned issues. According to an embodiment of the present technology, there is provided a receiver apparatus including a receiving unit that receives a global positioning system (GPS) signal from a satellite in a GPS, a multiplying unit that multiplies the GPS signal received by the receiving unit by pseudo navigation data, and an integrating unit that performs a synchronous addition on a signal, in which navigation data is removed from the GPS signal, serving as an output from the multiplying unit.
The receiver apparatus may further include a storage unit that stores the navigation data included in the GPS signal received by the receiving unit, and a generating unit that generates the pseudo navigation data using the navigation data stored in the storage unit.
The generating unit may calculate a probability of occurrence of each of all bit patterns of a bit string of a bit length N in the navigation data, and decide a bit string of a bit length N to be used as the pseudo navigation data based on a calculation result.
The generating unit may calculate an expectation value of a gain of a result of the synchronous addition when a plurality of bit strings of the bit length N that differ in a bit pattern are used as the pseudo navigation data, and decide a plurality of bit strings of the bit length N that differ in the bit pattern which is to be used as the pseudo navigation data based on a calculation result.
The generating unit may calculate a number of bit inversions of each of all the bit patterns of the bit string of the bit length N, and decide the bit string of the bit length N to be used as the pseudo navigation data based on a calculation result.
Further, in order to solve the above-mentioned issues, according to an embodiment of the present technology, there is provided a reception method including the steps of receiving a global positioning system (GPS) signal from a satellite in a GPS, multiplying the GPS signal received in the step of receiving the GPS signal by pseudo navigation data, and integrating for performing a synchronous addition on a signal, in which navigation data is removed from the GPS signal, serving as an output in the step of multiplying the GPS signal.
Further, in order to solve the above-mentioned issues, according to an embodiment of the present technology, there is provided a computer program for causing a computer to execute the steps of receiving a global positioning system (GPS) signal from a satellite in a GPS, multiplying the GPS signal received in the step of receiving the GPS signal by pseudo navigation data, and integrating for performing a synchronous addition on a signal, in which navigation data is removed from the GPS signal, serving as an output in the step of multiplying the GPS signal.
As described above, according to the present invention, the receiving sensitivity of the GPS signal can be improved.
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the appended drawings. Note that, in this specification and the appended drawings, structural elements that have substantially the same function and structure are denoted with the same reference numerals, and repeated explanation of these structural elements is omitted.
Further, the description will proceed in the following order.
1. Hardware Configuration of GPS Module According to Present Invention
2. Configuration of Main Part of GPS Receiver
3. Functional Configuration of Main Parts of UPS Receiver
4. Synchronization Timing Detecting Process
5. Pseudo Navigation Data Generating Process
[1. Hardware Configuration of GPS Module According to Present Invention]
First, a hardware configuration of a GPS module according to the present disclosure will be described.
Referring to
The XO 72 oscillates a signal D1 having a predetermined frequency (for example, about 32.768 kHz), and supplies the oscillated signal D1 to the RTC 64. The TCXO 74 oscillates a signal D2 having a different frequency (for example, about 16.368 MHz) from that of the XO 72, and supplies the oscillated signal D2 to the multiplier/divider 76 and a frequency synthesizer 28.
The multiplier/divider 76 performs either or both of multiplication and division on the signal D2 supplied from the TCXO 74 based on an instruction from the CPU 60. Then, the multiplier/divider 76 supplies a signal D4 obtained by performing either or both of multiplication and division to the frequency synthesizer 28 of the frequency converting unit 20, an analog-to-digital converter (ADC) 36, the CPU 60, the timer 68, the memory 70, the synchronization acquiring unit 40, and the synchronization holding unit 50.
The antenna 12 receives a GPS signal (for example, a radio frequency (RF) signal in which a carrier of 1575.42 MHz is spread) including navigation data or the like transmitted from a GPS satellite which is a satellite of the GPS, converts the GPS signal into an electric signal D5, and supplies the electric signal D5 to the frequency converting unit 20.
The frequency converting unit 20 includes a low noise amplifier (LNA) 22, a band pass filter (BPF) 24, an amplifier 26, a frequency synthesizer 28, a multiplier 30, an amplifier 32, a low pass filter (LPF) 34, and an analog digital converter (ADC) 36. The frequency converting unit 20 down-converts the signal D5 having a high frequency of 1575.42 MHz received through the antenna 12 into a signal D14 having, for example, a frequency of about 1.023 MHz for simple digital signal processing as will be described below.
The LNA 22 amplifies the signal D5 supplied from the antenna 12, and supplies the amplified signal to the BPF 24. The BPF 24 is configured with a surface acoustic wave (SAW) filter, extracts a specific frequency component from a frequency component of a signal D6 amplified by the LNA 22, and supplies the extracted frequency component to the amplifier 26. The amplifier 26 amplifies a signal D7 (a frequency FRF) having the frequency component extracted by the BPF 24, and supplies the amplified signal to the multiplier 30.
The frequency synthesizer 28 generates a signal D10 having a frequency FLO using the signal D2 supplied from the TCXO 74 based on an instruction D9 from the CPU 60. Then, the frequency synthesizer 28 supplies the generated signal D10 having the frequency FLO to the multiplier 30.
The multiplier 30 multiplies the signal D8 having the frequency FRF supplied from the amplifier 26 by the signal D10 having the frequency FLO supplied from the frequency synthesizer 28. In other words, the multiplier 30 converts the frequency signal down to an IF signal D11 (for example, an IF frequency signal having a frequency of about 1.023 MHz).
The amplifier 32 amplifies the IF signal D11 down-converted by the multiplier 30, and supplies the amplified IF signal to the LPF 34.
The LPF 34 extracts a low-frequency component from the frequency component of the IF signal D12 amplified by the amplifier 30, and supplies a signal D13 having the extracted low-frequency component to the ADC 36.
The ADC 36 converts the IF signal D13 of the analog type supplied from the LPF 34 into a signal of a digital type by sampling, and supplies an IF signal D14 converted into the signal of the digital type to the synchronization acquiring unit 40 and the synchronization holding unit 50 bit by bit.
The synchronization acquiring unit 40 performs synchronization acquisition on a pseudo-random noise (PRN) code of the IF signal D14 supplied from the ADC 36 using the signal D4 supplied from the multiplier/divider 76 based on control by the CPU 60. Further, the synchronization acquiring unit 40 detects a carrier frequency of the IF signal D14. Then, the synchronization acquiring unit 40 supplies the phase of the PRN code, the carrier frequency of the IF signal D14, or the like to the synchronization holding unit 50 and the CPU 60.
The synchronization holding unit 50 holds synchronization of the PRN code and the carrier of the IF signal D14 supplied from the ADC 36 using the signal D4 supplied from the multiplier/divider 76 based on control by the CPU 60. More specifically, the synchronization holding unit 50 operates using the phase of the PRN code or the carrier frequency of the IF signal D14 supplied from the synchronization acquiring unit 40 as an initial value. Then, the synchronization holding unit 50 demodulates navigation data included in the IF signal D14 supplied from the ADC 36, and supplies the demodulated navigation data, the phase of the PRN code and the carrier frequency of high accuracy to the CPU 60.
The CPU 60 calculates the position of the GPS module 10 by calculating the position and the speed of each GPS satellite based on the navigation data, the phase of the PRN code, and the carrier frequency supplied from the synchronization holding unit 50. Further, the CPU 60 may correct the time information of the RTC 64 based on the navigation data. Further, the CPU 60 may be connected to a control terminal, an input/output (I/O) terminal, an additional function terminal, or the like and execute various kinds of control processes.
The RTC 64 measures a time using the signal D1 having a predetermined frequency supplied from the XO 72. The time measured by the RTC 64 is appropriately corrected by the CPU 60.
The timer 68 counts a time using the signal D4 supplied from the multiplier/divider 76. The timer 68 is referred to, for example, when a decision on a start timing of various kinds of control by the CPU 60 is made. For example, the CPU 60 refers to the timer 68 when deciding a timing to start an operation of a PRN code generator of the synchronization holding unit 50 based on the phase of the PRN code acquired by the synchronization acquiring unit 40.
The memory 70 includes a random access memory (RAM), a read-only memory (ROM), or the like, and has a function as a work space used by the CPU 60, a program storage unit, a navigation data storage unit, or the like. In the memory 70, the RAM is used as a work area when various kinds of processes are performed by the CPU 60 or the like. In addition, the RAM may be used for buffering of various kinds of input data and to hold the ephemeris and the almanac which are trajectory information of the GPS satellite obtained by the synchronization holding unit 50 and interim data or calculation result data generated in a calculation process. Further, in the memory 70, the ROM is used as a means for storing various kinds of programs, fixed data, or the like. In the memory 70, a non-volatile memory may be used as a means for storing the ephemeris and the almanac which are the trajectory information of the GPS satellite, position information of a positioning result, an error amount of the TCXO 74, or the like while the GPS module 10 is powered off.
In the configuration of the GPS module 10 illustrated in
In addition, the synchronization acquiring unit 40 uses a matched filter, for example, in order to perform synchronization acquisition of a spread code at a high speed. Specifically, for example, the synchronization acquiring unit 40 may use a so-called transversal filter 40a illustrated in
For example, referring to
The memory 41 buffers the IF signal sampled by the ADC 36 of the frequency converting unit 20. The FFT unit 42 reads the IF signal buffered by the memory 41 and performs the FFT on the IF signal. The memory 43 buffers a frequency domain signal converted from the IF signal of the time domain which has been subjected to the FFT in the FFT unit 42.
Meanwhile, the spread code generator 44 generates the same spread code as a spread code in the RF signal received from the GPS satellite. The FFT unit 45 performs the FFT on the spread code generated by the spread code generator 44. The memory unit 46 buffers the spread code of the frequency domain converted from the spread code of the time domain by the FFT in the FFT unit 45.
The multiplier 47 multiplies the frequency domain signal buffered in the memory 43 by the spread code of the frequency domain buffered in the memory 46. The IFFT unit 48 performs an inverse FFT on the multiplied frequency domain signal output from the multiplier 47. As a result, a correlation signal of the time domain between the spread code in the RF signal from the GPS satellite and the spread code generated by the spread code generator 44 is acquired. Then, the peak detector 49 detects a peak of the correlation signal output from the IFFT unit 48.
The digital matched filter 40b may be implemented as software executing processes of the respective units such as the FFT units 42 and 45, the spread code generator 44, the multiplier 47, the IFFT unit 48, and the peak detector 49 using a digital signal processor (DSP).
[2. Configuration of Main Part of GPS Receiver]
Next, a configuration of a main part of a GPS receiver according to an embodiment of the present invention will be described.
Referring to
In the GPS transmitter 200, the multiplier 202 multiplies a carrier frequency of 1.5 GHz by navigation data. The multiplier 204 multiplies an output from the multiplier 202 by a spread code. The antenna 206 transmits an output from the multiplier 204 as a GPS signal.
In the GPS receiver 100, the antenna 102 receives the GPS signal transmitted from the GPS transmitter 200. For example, the antenna 102 corresponds to the antenna 12 illustrated in
[3. Functional Configuration of Main Parts of GPS Receiver]
Next, a functional configuration of main parts of the GPS receiver 100 illustrated in
Referring to
The navigation data acquiring unit 122 acquires navigation data from a received GPS signal, and causes the acquired navigation data to be stored in the navigation data storage unit 126. Further, the navigation data acquiring unit 122 acquires navigation data stored in the navigation data storage unit 126.
The pseudo navigation data generating unit 124 generates pseudo navigation data using the navigation data acquired by the navigation data acquiring unit 122, and causes the generated pseudo navigation data to be held in the pseudo navigation data holding unit 128. For example, the navigation data acquiring unit 122 and the pseudo navigation data generating unit 124 correspond to the CPU 60 illustrated in
The navigation data storage unit 126 stores navigation data. The pseudo navigation data holding unit 128 holds pseudo navigation data. For example, the navigation data storage unit 126 and the pseudo navigation data holding unit 128 correspond to the memory 70 illustrated in
[4. Synchronization Timing Detecting Process]
Next, a synchronization timing detecting process executed by the GPS receiver 100 illustrated in
Referring to
Next, the multiplier 104 of the GPS receiver 100 multiplies the GPS signal received by the antenna 102 in step S100 by a Sin/Cos wave of 1.5 GHz which is equivalent to the carrier frequency of the GPS (step S102).
Next, the multiplier 106 of the GPS receiver 100 multiplies a signal, in which the carrier frequency is removed, serving as an output from the multiplier 104 by a spread code of the GPS, that is, a pseudo random number using a gold code specific to each GPS satellite (step S104).
Next, the multiplier 108 of the GPS receiver 100 multiplies a signal, in which the spread code is removed, serving as an output from the multiplier 106 by pseudo navigation data which will be described later (step S106).
Next, the integrator 110 of the GPS receiver 100 performs the synchronous addition on a signal, in which the navigation data is removed, serving as an output from the multiplier 108 for a long time (step S108).
Next, the GPS receiver 100 detects a synchronization timing using an output from the integrator 110 and then ends the present process.
According to the synchronization timing detecting process illustrated in
[5. Pseudo Navigation Data Generating Process]
Next, a pseudo navigation data generating process executed by the GPS receiver 100 illustrated in
Referring to
Next, the pseudo navigation data generating unit 124 of the GPS receiver 100 generates the pseudo navigation data by executing a first pseudo navigation data generating process of
Referring to
Next, the pseudo navigation data generating unit 124 decides the bit string of the bit length N to be used as the pseudo navigation data based on the calculation result of step S300 (step S302), and then ends the present process.
For example, when the bit length is 4 as illustrated in
Referring to
Next, the pseudo navigation data generating unit 124 calculates the number of bit inversions of each bit pattern of the bit string having the bit length N (step S402). For example, in the bit string of “0110,” since a bit between a first bit and a second bit remains inverted and a bit between a third bit and a four bit remains inverted, the number of bit inversions is 2.
Next, the pseudo navigation data generating unit 124 decides the bit string of the bit length N to be used as the pseudo navigation data based on the calculation result of step S400 and the calculation result of step S402 (step S404), and then ends the present process.
For example, in the case in which the bit length is 4 as illustrated in
Referring to
Next, the pseudo navigation data generating unit 124 calculates an expectation value of a gain of the synchronous addition result when a plurality of bit strings of the bit length N that differ in the bit pattern are used as the pseudo navigation data (step S502).
Next, the pseudo navigation data generating unit 124 decides a plurality of bit strings of the bit length N that differ in the bit pattern which are to be used as the pseudo navigation data based on the calculation result of step S500 and the calculation result of step S502 (step S404), and then ends the present process.
For example, when the bit length is 4 as illustrated in
In addition, in
As illustrated in
In the pseudo navigation data generating process of
Referring to
Next, the pseudo navigation data generating unit 124 calculates an expectation value of a gain of the synchronous addition result when a plurality of bit strings of the bit length N that differ in the bit pattern are used as the pseudo navigation data (step S602).
Next, the pseudo navigation data generating unit 124 calculates the number of bit inversions of each bit pattern of the bit strings of the bit length N (step S604).
Next, the pseudo navigation data generating unit 124 decides a plurality of bit strings of the bit length N that differ in the bit pattern which are to be used as the pseudo navigation data based on the calculation result of step S600, the calculation result of step S602, and the calculation result of step S604 (step S606), and then ends the present process.
For example, when the expectation value when “0000” and “0001” are used as the pseudo navigation data is the same as the expectation value when “0000” and “0101” are used as the pseudo navigation data in
In the pseudo navigation data generating process of
According to the present embodiment, the GPS receiver 100 generates the pseudo navigation data using the received navigation data. Thus, even when the property of navigation data is changed, it is possible to generate and use optimal pseudo navigation data at all times.
Further, the present invention may be implemented such that a storage medium storing a program code of software for implementing the functions of each embodiment is supplied to a system or an apparatus, and a computer (the CPU, a micro processing unit (MPU), or the like) of the system or the apparatus reads and executes the program code stored in the storage medium.
In this case, the program code read from the storage medium implements the functions of each embodiment, and the program code and the storage medium storing the program code configures the present invention.
For example, a floppy (a registered trademark) disk, a hard disk, a magneto-optical disc, an optical disc such as a compact disc read only memory (CD-ROM), a compact disc read recordable (CD-R), a compact disc rewritable (CD-RW), a digital versatile disc read only memory (DVD-ROM), a digital versatile disc random access memory (DVD-RAM), a digital versatile disc rewritable (DVD-RW), or a digital versatile disc+rewritable (DVD+RW), a magnetic tape, a non-volatile memory card. or a read only memory (ROM) may be used as the storage medium used to supply the program code. Further, the program code may be downloaded via a network.
Further, in addition to the case in which the functions of each embodiment are implemented by executing the program code read by the computer, all or part of the actual process may be performed by an operating system (OS) operating on a computer based on an instruction of the program code, and the functions of each embodiment may be implemented by the process.
In addition, the program read from the recording medium may be written in a memory included in a functionality expansion board inserted into a computer or a functionality expansion unit connected to a computer, then the CPU or the like included in the expansion board or the expansion unit having the expanded function may perform all or part of the actual process based on an instruction of the program code, and the function of each embodiment may be implemented by the process.
The preferred embodiments of the present invention have been described above with reference to the accompanying drawings, whilst the present invention is not limited to the above examples, of course. A person skilled in the art pertaining to the present disclosure may find various alternations and modifications within the scope of the appended claims, and it should be understood that they will naturally come under the technical scope of the present invention.
Number | Date | Country | Kind |
---|---|---|---|
2010-182335 | Aug 2010 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2011/068218 | 8/10/2011 | WO | 00 | 1/8/2013 |