|Publication number||USRE42676 E1|
|Application number||US 11/962,999|
|Publication date||Sep 6, 2011|
|Filing date||Dec 21, 2007|
|Priority date||Mar 16, 2001|
|Also published as||CN1375707A, DE60227308D1, EP1244225A2, EP1244225A3, EP1244225B1, US7110474, US20020159542|
|Publication number||11962999, 962999, US RE42676 E1, US RE42676E1, US-E1-RE42676, USRE42676 E1, USRE42676E1|
|Inventors||Mikko Kokkonen, Samuli Pietila|
|Original Assignee||Nokia Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (15), Non-Patent Citations (2), Classifications (6), Legal Events (1)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This application is a reissue application of U.S. Pat. No. 7,110,474, which issued on U.S. patent application Ser. No. 10/101,385, filed Mar. 15, 2002, which claims priority from Finland application No. 20010543, filed Mar. 16, 2001. The priority of both of said applications is hereby claimed.
The present invention relates to a method for determining a boundary of an information element according to the preamble of the appended claim 1. The invention further relates to a system as set forth in the preamble of the appended claim 12. The invention relates also to an electronic device as set forth in the preamble of the appended claim 20.
In positioning systems based on satellite positioning a positioning receiver attempts to receive signals of at least four satellites in order to find out the position of the positioning receiver and the time data. An example of such a satellite positioning system is the GPS system (Global Positioning System), comprising a plurality of satellites orbiting the globe according to predefined orbits. These satellites transmit positioning data, on based of which the position of a satellite can be defined at each moment of time, in case the exact time data used in the satellite positioning system is known in the positioning receiver. In the GPS system the satellites transmit a spread spectrum modulated signal that is modulated with a code that is individual for each satellite. Thus, the positioning receiver can distinguish signals transmitted by different satellites from each other by using a reference code corresponding to the satellite code generated locally in the positioning receiver.
A drawback with such positioning systems based on satellite positioning is often the fact that a signal transmitted by a satellite is strongly attenuated when arriving to the positioning receiver, wherein it is very difficult to distinguish the signal from the background noise. The signal is attenuated inter alia by climatic conditions and obstacles, such as buildings and surrounding grounds in the routing of the signal. Also, the signal can travel to the positioning receiver through a plurality of different routes which causes so-called multipath propagation and aggravates the sychronizing of the positioning receiver to a wished signal because the transmitted signal arrives to the receiver through different routings, for example straight from the satellite (line-of-sight) and, in addition to this, reflected. Due to this multipath propagation the same signal is received as several signals with different phases. It is particularly difficult to perform positioning inside a building, because the building itself strongly attenuates the signal transmitted by satellites and, on the other hand, multipath propagation can be even stronger because possibly reflected signals coming for example through a window are not necessarily as attenuated as signals coming straight through the roof. In this case the receiver can make erroneous interpretations about the propagation time and the positioning of the satellite at the moment of transmission of the signal inter alla due to said addition to the propagation time of the signal caused by multipath propagation
Each operating satellite of the GPS system transmits a so-called L1 signal in the carrier frequency of 1575.42 MHz. This frequency is also indicated with 154f0, where f0=10.23 MHz. Furthermore, the satellites transmit another ranging signal at a carrier frequency of 1227.6 MHz called L2, i.e. 120f0. In the satellite, the modulation of these signals is performed with at least one pseudo random sequence. This pseudo random sequence is different for each satellite. As a result of the modulation, a code-modulated wideband signal is produced. The modulation technique used makes it possible to distinguish in the receiver the signals transmitted from different satellites, although the carrier frequencies used in the transmission are substantially the same. This modulation technique is called code division multiple access (CDMA). In each satellite, for modulating the L1 signal, the pseudo random sequence used is e.g. a so-called C/A code (Coarse/Acquisition code), which is a code from the family of the Gold codes. Each GPS satellite transmits a signal by using an individual C/A code. The codes are formed as a modulo-2 sum of two 1023-bit binary sequences. The first binary sequence G1 is formed with a polynome X10+X3+1, and the second binary sequence G2 is formed by delaying the polynome X10+X9+X8+X6+X3+X2+1 in such a way that the delay is different for each satellite. This arrangement makes it possible to produce different C/A codes by an identical code generator. The C/A codes are thus binary codes whose chipping rate in the GPS system is 1.023 MHz. The C/A code comprises 1023 chips, wherein the duration of the epoch is 1 ms. The carrier of the L1 signal is further modulated by navigation information at a bit rate of 50 bit/s. The navigation information comprises information about the “health”, orbit, time data of the satellite, etc.
During their operation, the satellites monitor the condition of their equipment. The satellites may use for example so-called watchdog operations to detect and report possible faults in the equipment. The errors and malfunctions can be instantaneous or longer lasting. On the basis of the health data, some of the faults can possibly be compensated for, or the information transmitted by a malfunctioning satellite can be totally disregarded. Furthermore, in a situation in which the signal of more than four satellites can be received, the information received from different satellites can be weighted differently on the basis of the health data. Thus, it is possible to minimize the effect of errors on measurements, possibly caused by satellites that seem unreliable.
To detect the signals of the satellites and to identify the satellites, the receiver must perform acquisition, whereby the receiver searches for the signal of each satellite at the time and attempts to be synchronized and locked to this signal so that the data transmitted with the signal can be received and demodulated.
The positioning receiver must perform the acquisition e.g. when the receiver is turned on and also in a situation in which the receiver has not been capable of receiving the signal of any satellite for a long time. Such a situation can easily occur e.g. in portable devices, because the device is moving and the antenna of the device is not always in an optimal position in relation to the satellites, which impairs the strength of the signal coming in the receiver.
The positioning arrangement has two primary functions:
The distances to the satellites are called pseudo ranges, because the time is not accurately known in the receiver. Thus, the determinations of position and time are repeated until a sufficient accuracy is achieved with respect to time and position. Because time is not known with absolute precision, the position and the time must be determined e.g. by linearizing a set of equations for each new iteration.
The pseudo range can be calculated by measuring the pseudo transmission time delays between signals of different satellites.
Almost all known GPS receivers utilize correlation methods for acquisition to the code as well as for tracking. In a positioning receiver, reference codes ref(k), i.e. the pseudo random sequences for different satellites are stored or generated locally. A received signal is subjected to conversion to an intermediate frequency (down conversion), after which the receiver multiplies the received signal with the stored pseudo random sequence. The signal obtained as a result of the multiplication is integrated or low-pass filtered, wherein the obtained result is information on whether the received signal contained a signal transmitted by a satellite. The multiplication is iterated in the receiver so that the phase of the pseudo random sequence stored in the receiver is shifted each time. The correct phase is inferred from the correlation result preferably so that when the correlation result is the greatest, the correct phase has been found. Thus, the receiver is correctly synchronized with the received signal. After the code acquisition has been completed, the next steps are frequency tuning and phase locking.
The above-mentioned acquisition and frequency control process must be performed for each signal of a satellite received in the receiver. Some receivers may have several receiving channels, wherein an attempt is made on each receiving channel to be synchronized with the signal of one satellite at a time and to find out the information transmitted by this satellite.
The positioning receiver receives information transmitted by satellites and performs positioning on the basis of the received information. For the positioning, the receiver must receive the signal transmitted by at least four different satellites to find out the x, y, z coordinates and the time data. The received navigation information is stored in a memory, wherein this stored information can be used to find out e.g. the positioning data of satellites.
The subframes 2 and 3 are used for the transmission of ephemeris data. The subframe 4 contains other system information, such as universal time, coordinated (UTC). The subframe 5 is intended for the transmission of almanac data of all the satellites. The entity of these subframes and frames is called a GPS navigation message that comprises 25 frames, i.e. 125 subframes. The length of the navigation message is thus 12 min 30 s.
In the GPS system, time is measured in seconds from the beginning of a week. In the GPS system, the moment of beginning of a week is mid-night between Saturday and Sunday. Bach subframe to be transmitted contains information on the moment of the GPS week when the subframe in question was transmitted. Thus, the time data indicates the time of transmission of a certain bit, i.e. in the GPS system, the time of transmission of the last bit in the subframe in question. In the satellites, time is measured with high-precision atomic chronometers. In spite of this, the operation of each satellite is controlled in a control centre for the GPS system (not shown), and e.g. a time comparison is performed to detect chronometric errors in the satellites and to transmit this information to the satellite.
For precise positioning it is of great importance how precisely the real GPS time is known by the receiver. In practice, precise GPS time can be defined after the positioning calculation, in which the clock error of the receiver with respect to the GPS time is determined. However, in the very first positioning calculation, an estimation of the GPS time can be used, because the real GPS time is not necessarily known by the receiver. The estimated GPS time at a moment of time k can be derived on the basis of measurement of three time elements according to the following formula:
TGPS j(k)=TTow(k)+Tms j(k)+Tchip j(k)+0.078 (1)
In Formula 1, the average time of flight (ToF) of the signal from the satellite to the receiver is 78 ms. As a reference it is possible to use any such receiving channel in which the signal-to-noise ratio (SNR) is sufficient.
The time data (ToW) is transmitted in the navigation message at intervals of six seconds and it indicates the time passed from the latest change of the GPS week. Thus, the value range of the time data is the remainder of one week. In a corresponding manner Tms j(k) equals the remainder of six seconds and Tchip j(k) equals the remainder of 1 ms. The first three terms of the Formula (1) can also be used in the measurement of the time of arrival (ToA) of the signal.
In poor receiving conditions, in which the navigation data cannot be detected e.g. due to a high bit error rate (BER), it is not possible to determine the GPS time directly by means of the Formula 1. However, the code phase can normally still be measured.
In poor signal conditions, it is possible to try to detect the moment of change for the bit (boundary). The detection of bit boundary is necessary in order to detect the navigation data, to use coherent integration in the tracking loop, and/or to calculate pseudo ranges in such a receiver in which the control is performed only according to the C/A code.
In some prior art receivers, so-called hard decisions are used for detecting the bit boundary. In the receivers, the received signal is integrated during an epoch. Subsequently (1 ms), the output signal of the correlator of the receiver is examined. In the histogram method the output value of the correlator is compared to the previous output value. In case the output values are of opposite sign, a decision is made that the sign of the data bit has changed. The reliability of each such decision made after a change in epoch is highly deteriorating as the signal/noise ratio (C/NO) deteriorates, wherein also the probability of erroneous positioning increases. Using this method presupposes that the synchronizing part of the receiver is phase-locked into the epoch. Additionally, it is troublesome to adapt this method in such receivers in which common dump is used.
In another receiver, correlation of a received signal is performed to a pre-synchronising part (preamble of Telemetry Word), whose contents are known. A drawback with this arrangement is that the synchronizing time is relatively long, on average at least 3 seconds. Additionally, the final error ratio is rather poor, because the length of the initial synchronizing part is only 8 bits.
The purpose of the present invention is to obtain an improved method for detecting the bit boundary from the received signal, and a receiver in which the aim is to detect the bit boundary. More precisely, the method according to the present invention is primarily characterized in what will be presented in the characterizing part of the appended claim 1. The system according to the present invention is primarily characterized in what will be presented in the characterizing part of the appended claim 12. The electronic device according to the present invention is primarily characterized in what will be presented in the characterizing part of the appended claim 20.
Considerable advantages are achieved by the present invention when compared with positioning systems and receivers of prior art. Because in the method of the invention the bit boundary can be detected also from a weak and noisy signal more reliably than when applying prior art methods, the positioning reliability can be improved. Moreover, when applying the method of the invention it is possible to detect the contents of the data transferred in the signal faster than in the prior art, because the bit boundary can be detected more precisely. The use of the method according to the invention allows positioning also indoors, which is not necessarily possible with prior art solutions.
In the following, the present invention will be described in more detail with reference to the appended drawings, in which
In the following, the operation of the method according to a preferred embodiment of the invention will be described with reference to the system shown in
Next, the operation of an advantageous receiver PR will be briefly described with reference to the reduced block charts of
An advantageous structure for the digital monitoring blocks 8a, 8b, 8n is shown in the block chart of
The receiver PR preferably also comprises means for performing the functions of the wireless communication device, such as a second antenna 20, a radio part 21, audio means, such as a codec 22a, a speaker 22b and a microphone 22c, a display 23, a keypad 24, and a memory 25. The control block 9 can be at least partly common for performing the functions of the receiver PR and performing functions of the wireless communication device, or separate processors, or the like, can be used for these functions. In the following, the invention will be described in more detail with reference to the receiver shown in
However, navigation data cannot be detected in poor signal conditions, but the synchronizing of the signal can, nevertheless, be possible. After the receiver PR has been locked to the signal to be received (frequency and/or code phase), the bit boundary detection is started by using the method of the invention in the following manner.
Transmission of different binary values is performed in code modulation for example in a manner that with the first value (e.g. +1) a modulating code is used as such and, in a corresponding manner, with a second binary value (e.g. −1), inverse values of the chips of the modulating mode are used.
In the analog/digital convener 6 an analog/digital conversion is performed to the satellite signals to be received, wherein the further processing of the signals can be carried out on the basis of digital signals. In a receiver comprising a plurality of receiving channels a separate analog/digital converter for each channel can be used, or a common converter is used for the channels, wherein the sorting of the channel signals is performed after the analog/digital conversion, as in the receiver according to
In practice, the moment the samples are taken is not always at the same point of the epoch, because in particular the Doppler shift and multipath propagation can cause time variable delay in the signal transmission time from satellite to receiver. In addition, the sample interval is not necessarily always exactly 1 ms inter alia due to inaccuracy of the clock of the receiver. In
In case the moving calculation block MA uses calculation that preserves the sign, such as average or summing, the absolute values of these reference values are computed in an absolute value block ABS in order to eliminate bit data dependency from the reference values. In this case, a group of numerical values as illustrated in
These determination values are processed in a determination block DET where preferably a maximum point, that is the greatest determination value, is searched. If only one such maximum point is found, its index indicates the location of the bit boundary. In the situation in
In the determination block DET it is possible, instead of searching for the maximum, to perform a comparison to a predetermined threshold value, wherein, when such a threshold value that is larger than (or as large as) the threshold value is found, the location point of the bit boundary is concluded from the determination value index exceeding this threshold value.
Even though it has been described above that for determining the determination values, certain measures are taken in separate blocks, and values are transferred between the blocks, it is obvious that these measures can be performed advantageously in the control block 9 as program codes of a signal processing unit (not shown), or the like. In this case it is not necessary to transfer the numerical values to different blocks, but for example in the memory means one or a plurality of areas of the memory means are allocated for storing these values. In this case, the function according to each block stores the values it has determined to a certain memory area, from which the function according to the following block retrieves these numerical values as the operation is proceeding.
The above mentioned operations are performed for a given period of time, for example until a wished number of vectors K have been formed, or until the maximum value exceeds a given threshold value. After this, a decision of the bit boundary is made in the determination block in a manner described above. The operation can also be repeated in case it is wished to redefine the location of the bit boundary, for example if the signal conditions change to a significant degree, or if the satellite, which the receiver has been following, changes.
In the embodiment described above, the integration of the signal was performed separately on each channel, wherein the moment when the integration is started or stopped is determined separately for each channel. Subsequently, a situation is described in which a so-called common dump is used, in which an integration is performed for every channel simultaneously, for example on the basis of the epoch of the signal of one channel. In this case, the timing of the epoch is not necessarily the same as that of the other channels, because the signals of different satellites have a different propagation time from the satellite to the receiver. However, the moving average is calculated in epochs. This requires some changes to the above-described method according to a preferred embodiment of the invention. For each channel, the phase of the epoch at the dump time has to be detected, so that the moment when the epoch is changing can be calculated relative to the integration time (that is, the moment in the integration interval at which the epoch changes). As the integration interval can, to a significant degree, differ from the timing of the epoch, the bit boundary can be situated relatively far from the moment when the integration interval is started or terminated. Thus, to form signal-specific reference values of each channel, a number of such signal-specific integration values are selected that are used in the transmission of one bit, in which values at least a half of the epochs belong to said integration interval. For example in the case of
Correspondingly, in a situation in which the epoch is shorter than the integration time it is possible to apply the above-described deduction analogically in order to determine which samples are selected to the selection window at a time. However, the selection criteria are different than those described in the above situation.
Also, it may be necessary to make changes in the decision block if it is possible that the epoch differs significantly from the integration time phase. If the integration time ends for example near the midpoint of the epoch, such (successive) calculation windows starting either just before the bit boundary or right after it, are substantially equally good in terms of bit energy. In this case, either of the calculation windows can be used in the coherent one-bit size integration. This means that there can be a difference of approximately 1 ms in the bit boundary detection depending on which of the calculation windows is used. This may cause significant errors in calculation of pseudo ranges and in positioning. The effect of this error can be advantageously reduced as follows. Comparison if performed for the components adjacent to the maximum component of the vector from which the bit boundary is determined. If either of these components is significantly greater than the other component and is approximately of the same order as the maximum value then this sample indicates the direction where the real bit boundary is different from the bit boundary indicated by the maximum value. In this examination the last (20th) and the first component of the vector are interpreted as adjacent values. The bit boundary can now be approximated for example by interpolating as follows:
in which chip_at_dump is the order number of the chip of the epoch at the end of the integration time, max_val is the maximum value, val_right is the value on the right of the maximum value, and val_left is the value on the left of the maximum value. If the maximum value is the first value of the calculation window, the last value of the calculation window is interpreted as the value on the left of the maximum value, and correspondingly, if the maximum value is the last value of the calculation window, the first value of the calculation window is interpreted as the value on the right of the maximum value.
In a situation when the receiver is (in the code phase and carrier wave block) only frequency locked, the signal to be integrated is in the complex form. Thus, complex calculation is used in the calculation of the moving average, wherein in the absolute value block ABS a complex absolute value is formed, or some other real number without sign, such as the sum of the absolute value of the real part and the absolute value of the imaginary part (abs(Re)+abs(Im)).
Instead of calculating the average value or summing the vectors performed in a determination-value-forming block AVG it is possible to use also some other low-pass filtering function. Additionally, in the determination-value-forming block AVG it is possible to use adaptive determination function; for example the threshold value can be changed on the basis of the noise contents of the received signal.
By using the above-described method, the positioning can be performed also in poor signalling conditions, also indoors. In the method no information on the data used in the modulation of the signal is necessary, such as navigation data, for bit boundary determination according to the above-described method. After the bit boundary has been determined, it is possible, if necessary for example by using correlators to attempt to determine the starting points of the frames used in the transmission of the navigation data.
In particular when using the common integration principle it is possible in some applications to decrease the noise effect in a manner that the first and last values of the window are weighed less than other values. In the calculation of the weigh coefficient it is possible to use for example the maximal ratio combining (MRC) formula known as such.
After detecting the bit boundary it is possible to perform the positioning, even if the receiver did not have navigation data and the exact time data. In this context it is possible to utilize for example auxiliary data obtained from the mobile communication network, but also other methods are possible to apply in connection with the method of the present invention.
Even if the invention has been exemplified above by using a spread-spectrum signal that is modulated from a repetition-coded signal modulated with an individual code, the invention can be applied also in other systems using repetition coding and in which different phases of binary and other information are modulated by using symbols.
It is obvious that the present invention is not limited solely to the above-presented embodiments, but it can be modified within the scope of the appended claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5237587 *||Nov 20, 1992||Aug 17, 1993||Magnavox Electronic Systems Company||Pseudo-noise modem and related digital correlation method|
|US5285291 *||Feb 8, 1991||Feb 8, 1994||Adobe Systems Incorporated||Methods of assigning pixels to cells of a halftone grid|
|US5694416 *||Feb 24, 1995||Dec 2, 1997||Radix Technologies, Inc.||Direct sequence spread spectrum receiver and antenna array for the simultaneous formation of a beam on a signal source and a null on an interfering jammer|
|US5768319||Feb 18, 1997||Jun 16, 1998||Motorola, Inc.||GPS data collection in high noise-to-signal ratio environments|
|US5909462||Dec 31, 1996||Jun 1, 1999||Lucent Technologies Inc.||System and method for improved spread spectrum signal detection|
|US6181755||May 20, 1997||Jan 30, 2001||Nokia Mobile Phones Ltd.||Receiver synchronisation in idle mode|
|US6370397||May 1, 1998||Apr 9, 2002||Telefonaktiebolaget Lm Ericsson (Publ)||Search window delay tracking in code division multiple access communication systems|
|US6580749||May 8, 2000||Jun 17, 2003||Nec Corporation||CDMA receiver having a controllable search range and method for controlling the same|
|US6731622||May 26, 1999||May 4, 2004||Telefonaktiebolaget Lm Ericsson (Publ)||Multipath propagation delay determining means using periodically inserted pilot symbols|
|US6868110||Dec 1, 2000||Mar 15, 2005||The Board Of Trustees Of The Leland Stanford Junior University||Multipath and tracking error reduction method for spread-spectrum receivers|
|US20020072855 *||Nov 28, 2001||Jun 13, 2002||Global Locate, Inc.||Wide area inverse differential gps|
|DE3131845A1||Aug 12, 1981||Feb 24, 1983||Bbc Brown Boveri & Cie||Method for generating and monitoring digital signals having any desired signal coding|
|EP0923208A2||Dec 9, 1998||Jun 16, 1999||Texas Instruments Inc.||Method and apparatus for synchronization word detection|
|WO1990006642A1||Nov 24, 1989||Jun 14, 1990||Storno As||Method of determination of signal reception time by means of correlation technique|
|WO2000014560A1||Sep 2, 1999||Mar 16, 2000||Qualcomm Inc||Method and apparatus for increasing the sensitivity of a global positioning satellite receiver|
|1||English translation of the abstract attached.|
|2||Hoeher, "Optimal Subblock-by Subblock Detection", IEEE, Apr. 1995. vol. 43, pp. 714-717.|
|International Classification||H04L27/00, G01S1/00, G01S19/24|