1. Field of the Invention
The present invention relates to communication device mounting for example a global positioning system (GPS) in a mobile phone or other portable terminal.
2. Description of the Related Art
In a GPS measuring the position of a mobile body utilizing satellites (GPS satellites), the basic function of a GPS receiver is to receive signals from four or more GPS satellites, calculate the position of the receiver from the received signals, and inform it to the user.
The GPS receiver demodulates a signal from a GPS satellite to acquire orbital data of the GPS satellite and derives its own three-dimensional position from the orbit and time information of the GPS satellite and delay time of the received signal by simultaneous equations. The reason why four GPS satellites giving received signals are required is that there is error between the time inside the GPS receiver and the time of a satellite and that error must be eliminated.
In the case of a GPS receiver for consumer use, a positioning computation is carried out by receiving a spread-spectrum signal wave referred to as the “L1 band” or “C/A” (“coarse acquisition” or “clear and acquisition”) code from a GPS satellite (Navstar).
The C/A code is a signal obtained by binary phase shift keying (BPSK) modulating a carrier wave (hereinafter referred to as a “carrier”) having a frequency of 1575.42 MHz by a signal obtained by spreading data of 50 bps by a code of a pseudorandom noise (PN) sequence having a transmission signal rate (chip rate) of 1.023 MHz and a code length of 1023, for example, the Gold code. In this case, since the code length is 1023, the C/A code is formed as a code comprised of the code of the PN sequence repeated using 1023 chips as one cycle (one cycle=1 millisecond (msec)) as shown in FIG. 1A.
The code of the PN sequence of this C/A code is different for every GPS satellite, but is configured so that which satellite uses which code of the PN sequence can be detected by a GPS receiver in advance. Further, the navigation message mentioned above enables the GPS receiver to learn from which GPS satellites signals can be received at that position and that point of time. Accordingly, in the case of for example three-dimensional positioning, the GPS receiver receives the waves from four or more GPS satellites which can be acquired at that position and that point of time, despreads the spectrum, and performs the positioning computation to find its own position.
Then, as shown in FIG. 1B, one bit of the satellite signal data is transmitted as 20 cycles' worth of the code of the PN sequence, that is, 20 milliseconds. Namely, the data transmission rate is 50 bps. 1023 chips of one cycle's worth of the code of the PN sequence are inverted between a time when the bit is “1” and a time when the bit is “0”.
As shown in FIG. 1C, in a GPS, one word is formed by 30 bits (600 milliseconds). Further, as shown in FIG. 1D, one sub-frame (6 seconds) is formed by 10 words. As shown in FIG. 1E, the word at the header of one sub-frame has a preamble always regarded as a bit pattern even when data is updated inserted into it. The data is transmitted after this preamble.
Further, one frame (30 seconds) is formed by five sub-frames. The navigation message is transmitted in data units of this one frame. First, three sub-frames in this one frame of data form information inherent in the satellite referred to as “ephemeris information”. This information includes parameters for finding the orbit of the satellite and a transmission time of a signal from the satellite.
All GPS satellites are provided with atomic clocks and use common time information. The transmission time of a signal from a GPS satellite is a one second unit of the atomic clock. Further, the code of the PN sequence of the GPS satellite is generated as a code in synchronization with the atomic clock.
The orbit information of the ephemeris information is updated every several hours, but becomes the same information until that update. By holding the orbit information of the ephemeris information in the memory of this GPS receiver, however, the same information can be precisely used for a few hours. Note that the transmission time of the signal from a GPS satellite is updated every one second.
The navigation message of the remaining two sub-frames of one frame of the data is information commonly transmitted from all satellites and referred to as “almanac information”. 25 frames' worth of this almanac information become necessary in order to acquire all information. It is comprised of rough position information of each GPS satellite, information indicating which GPS satellites can be used, etc. This almanac information is updated every several months, but becomes the same information until that update. By holding this almanac information in the memory of the GPS receiver, the same information can be precisely used for several months.
In order to receive a GPS satellite signal and obtain the above data, first the carrier is removed, then a code of the PN sequence (hereinafter the code of the PN sequence will be referred to as the “PN code”) the same as the C/A code used in the GPS satellite to be received prepared in the GPS receiver is used to acquire the signal from the GPS satellite and despread the spectrum. When phase synchronization with the C/A code can be established and the spectrum is despread, the bit is detected, and it becomes possible to acquire a navigation message including the time information from the signal from the GPS satellite.
The signal from the GPS satellite is acquired by phase retrieval of the C/A code. In this phase retrieval, the correlation between the PN code of the GPS receiver and the PN code of the received signal from the GPS satellite is detected. For example, when the correlation value of the result of the correlation detection is larger than the value set in advance, it is judged that the two are synchronized. When it is judged that synchronization has not been established, any synchronization technique is used to control the phase of the PN code of the GPS receiver to synchronize it with the PN code of the received signal.
As mentioned above, a GPS satellite signal is a signal obtained by BPSK modulating a carrier by a signal obtained by spreading data by a spread code. Accordingly, in order for a GPS receiver to receive a GPS satellite signal, it is necessary to establish synchronization of not only the spread code, but also the carrier and the data, but the spread code and the carrier cannot be independently synchronized.
A GPS receiver generally converts the carrier frequency in the received signal to an intermediate frequency in several MHz and performs the synchronization detection processing mentioned above by that intermediate frequency signal. The carrier in the intermediate frequency signal includes a frequency error mainly due to a Doppler shift in accordance with the velocity of the GPS satellite and a frequency error of a local oscillator generated inside the GPS receiver when converting the received signal to an intermediate frequency signal.
Accordingly, due to these frequency error factors, the carrier frequency in the intermediate frequency signal is unknown, so a frequency search becomes necessary. Further, a synchronization point (synchronization phase) of the spread code in one cycle depends upon the positional relationship between the GPS receiver and the GPS satellite, so is unknown. Therefore, as mentioned above, some sort of synchronization technique becomes necessary.
The GPS receiver uses a synchronization technique employing a frequency search for the carrier and a sliding correlator+delay locked loop (DLL)+Costas loop. This will be explained below.
The clock for driving the generator of the PN code of the GPS receiver is generally one obtained by dividing the frequency of the oscillation signal of a reference frequency oscillator provided in the GPS receiver. As this reference frequency oscillator, use is made of a high precision quartz oscillator. From the output of this reference frequency oscillator, a local oscillation signal used for converting the received signal from a GPS satellite to an intermediate frequency signal is generated.
FIG. 2 is a view for explaining this frequency search. As shown in FIG. 2, when the frequency of the clock signal for driving the generator of the PN code of the GPS receiver is a certain frequency f1, phase retrieval of the PN code is performed, that is, the phase of the PN code is sequentially shifted by one chip, the correlation between the GPS received signal and the PN code at the time of each chip phase is detected, and the peak value of the correlation is detected, whereby it is possible to detect the phase at which synchronization can be established.
When the frequency of the clock signal is f1 and there is no synchronized phase in all of the 1023 chips' worth of the phase retrieval, for example the frequency division ratio with respect to the reference frequency oscillator is changed, the frequency of the drive clock signal is changed to f2, and 1023 chips' worth of phase retrieval is carried out in the same way as above. This is repeated by stepwise changing the frequency of the drive clock signal as shown in FIG. 2. The above operation constitutes the frequency search.
When this frequency search detects the frequency of the drive clock signal regarded to be able to be synchronized, the final phase synchronization of the PN code is carried out at that clock frequency. Due to this, even if there is deviation in the oscillation frequency of the quartz frequency oscillator, it becomes possible to acquire a satellite signal.
However, if the above-mentioned technique is used as the synchronization method, this would be unsuitable for fast synchronization in principle. In an actual receiver, in order to compensate for this, it would be necessary to search for the synchronization point in parallel by forming multiple channels. Further, as described above, if a long time is required for the synchronization of the spread code and carrier, the response of the GPS receiver would become slow. This would be inconvenient in usage. Therefore, for the phase synchronization of the spread code, a technique of performing the code synchronization by a digital matched filter using fast Fourier transform (FFT) processing without using the technique of sliding correlation as mentioned above is realized by improvement of the capability of the hardware such as the digital signal processor (DSP).
Summarizing the problems to be solved by the invention, in recent years, products combining mobile phones or other networked portable terminals and GPS receivers and services for the same have been put into practical use. As cheaper networks are built in the future, the network hardware and GPS systems will become even more integrated, so it is predicted that network services utilizing positioning will increase.
The reference frequency oscillator applied to a GPS system basically has a fixed oscillation frequency, but the reference frequency oscillator used in a mobile phone etc. is configured so as to change in frequency according to a change in the base station or other conditions. Accordingly, if simply configuring a wireless communication device combining a network device and GPS system, it would be necessary to mount two types of reference frequency oscillators. However, this would result in the size of the module becoming larger and would also lead to a cost increase. For such a reason, when configuring a wireless communication device combining a network device and GPS system, it is desirable to make joint use of one reference frequency oscillator, that is, a reference frequency oscillator having a variable frequency as used in mobile phones etc. If simply making joint use of such a variable frequency reference frequency oscillator, however, the following disadvantages would arise.
As explained above, the transmission signal referred to as the “L1 band” or “C/A code” of a GPS satellite is a signal obtained by BPSK modulating a carrier of 1575.42 MHz by a signal obtained by directly spreading data of 50 bps by the Gold code having a code length of 1023 and a chip rate of 1.023 MHz. Accordingly, in order to receive a signal from a satellite by a GPS receiver, as mentioned above, it is necessary to establish synchronization between the spread code and the carrier and data, but the synchronization of the spread code and the carrier cannot be independently carried out. The GPS receiver converts the carrier frequency to within several MHz and processes it by the intermediate frequency (IF). However, the carrier at the IF includes an error of the local oscillation frequency mainly generated inside the receiver at the time of the Doppler shift due to the velocity of the satellite and the conversion to the IF, therefore the carrier frequency at the IF is unknown. Further, the phase of the spread code depends upon the positional relationship between the GPS receiver and the satellite, so is unknown. Accordingly, when using a reference frequency oscillator changing in frequency according to the conditions, if the frequency changes, the frequency of the IF carrier also changes. If the frequency of the IF carrier changes, the synchronization between the received signal and the spread code can no longer be held. As a result, it becomes impossible to continuously track the satellite.