EP1287375A4 - Determining time in a gps receiver - Google Patents

Determining time in a gps receiver

Info

Publication number
EP1287375A4
EP1287375A4 EP01924432A EP01924432A EP1287375A4 EP 1287375 A4 EP1287375 A4 EP 1287375A4 EP 01924432 A EP01924432 A EP 01924432A EP 01924432 A EP01924432 A EP 01924432A EP 1287375 A4 EP1287375 A4 EP 1287375A4
Authority
EP
European Patent Office
Prior art keywords
gps
time
data
memory
satellite
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
EP01924432A
Other languages
German (de)
French (fr)
Other versions
EP1287375B1 (en
EP1287375A1 (en
Inventor
Thomas King
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of EP1287375A1 publication Critical patent/EP1287375A1/en
Publication of EP1287375A4 publication Critical patent/EP1287375A4/en
Application granted granted Critical
Publication of EP1287375B1 publication Critical patent/EP1287375B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • G01S19/243Demodulation of navigation message
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/23Testing, monitoring, correcting or calibrating of receiver elements
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • GPHYSICS
    • G04HOROLOGY
    • G04RRADIO-CONTROLLED TIME-PIECES
    • G04R20/00Setting the time according to the time information carried or implied by the radio signal
    • G04R20/02Setting the time according to the time information carried or implied by the radio signal the radio signal being sent by a satellite, e.g. GPS
    • G04R20/06Decoding time data; Circuits therefor

Definitions

  • the present invention relates generally to a GPS receiver, and more particularly to a GPS handset.
  • the Global Positioning System is a satellite-based system developed by the U.S. Department of Defense to give accurate positional information to a GPS receiver anywhere in the world. A properly equipped GPS receiver may therefore be used in any setting in which position is desired, and typically yields positional coordinates in three dimensions.
  • the GPS system is enabled by a satellite orbital constellation made up of 24 or more satellites orbiting the earth in 12 hour orbits. The satellites are arranged in six orbital planes, each containing four satellites. The orbital planes are spaced sixty degrees apart, and are inclined approximately fifty-five degrees from the equatorial plane. This constellation ensures that from four to twelve satellites will be visible at any time at any point on earth with a clear view of the sky.
  • the GPS satellites transmit data to be used by GPS receivers, including satellite position data (ephemeris data) and satellite clock correction data.
  • the GPS signal includes a carrier signal that is bi-phase modulated with a 1023 bit long Gold spreading code at a 1.023 Mhz chip rate (0.001 second repeat interval). It is also modulated by data bits at a 50 bits per second (BPS) rate (transmitted at a rate of twenty milliseconds per data bit).
  • the 50 BPS data includes information for determining a GPS- based time (i.e., a clock time of the GPS satellite) and information for determining geographical location.
  • the clock time included in the GPS message is an absolute time signal that is precisely synchronized at the satellite. That is, all satellites in the GPS constellation are synchronized by ground reference stations that take into account the signal propagation time from the satellite to the ground station. In this manner, every satellite in the constellation is time synchronized at the satellite, the absolute time error is precisely controlled to within a few nanoseconds to tens of nanoseconds.
  • the absolute time signal may be used by a GPS receiver in order to accurately determine position. Once position is approximately known, the absolute time in the receiver can also be known by offsetting the precise time observed by the receiver in the satellite broadcast message by the computable propagation delay between the receiver and the satellite.
  • GDOP Geometric Dilution Of Precision
  • a Time Of Week (TOW) data field included in the 50 BPS data, in conjunction with the absolute time signal, allows a GPS receiver to accurately and reliably determine a local time.
  • the TOW data is transmitted by all satellites at six second intervals. The detection of the TOW data is dependent on the signal magnitude.
  • the GPS receiver cannot always reliably determine a local time from the GPS satellite broadcast data.
  • GPS functions are very useful and as a result have been incorporated into a variety of devices, including, for example, cellular phones, and other hand-held electronic devices. Due to their portable nature, such devices are often in vehicles traveling in urban canyons, or carried into buildings or other obstacles. As a natural result, the GPS signal may be blocked or poorly received. This may make the reception of the 50 BPS absolute time signal unreliable. In such cases, it is desirable that a GPS handset obtain an accurate time measurement so that positional measurements are available.
  • the range measurement and therefore the resulting positional measurement will have a proportional error. For example, if the measurement time contains an error of 20 milliseconds, the range measurement may be in error by as much as 80 meters, and the resulting position measurement may be in error by several hundreds of meters depending on the geometry.
  • the infrastructure is synchronized and every base station receives a precise time from a network GPS receiver.
  • the CDMA base station then synchronizes mobile devices by transmitting the time to the mobile devices, allowing a time in the CDMA phone handset to be known to an accuracy on the order of one microsecond (plus a transmission delay).
  • GSM Global System for Mobile communications
  • Krasner uses a digital snapshot memory in a handset to capture a random swath of data and transmit it to a base station.
  • the base station uses a conventional GPS receiver to measure the time of arrival of a portion of the 50 BPS data bits captured in the digital snapshot memory.
  • the data bits measured by the base station have a known time of arrival and are correlated against the unknown data bits captured in the digital snapshot memory. When a maximum correlation is obtained, the data capture time in the mobile memory can be determined.
  • the drawback in Krasner is that a remote base station GPS receiver is required.
  • the remote base station GPS receiver must measure a current 50 GPS data sequence from one or multiple GPS satellites and then transmit it to the mobile unit.
  • the mobile unit may transmit post-detection correlation data to the base.
  • the scheme requires that a large number of bits be transmitted between the base station and the mobile unit (for example, 12 satellites time 50 bits each), and it requires that the handset store a sample of the received data for subsequent correlation with the pattern observed and communicated from the base station.
  • LMUs Location Measurement Units
  • the purpose of the LMU is to measure the time offset between a time as kept by an unsynchronized communication network and GPS time.
  • An individual LMU measures the time of arrival of message bits from each base station and determines the relative time offset of each base station. This is accomplished by a GPS receiver inside an LMU, and with knowledge of the location of each base station and the location of the LMU (for purposes of determining a propagation time).
  • the second related art scheme is costly because it requires additional components in a communication network. It is also a complicated solution.
  • the 50 BPS data sequence is observed at a fixed master site.
  • the time data is transmitted from the master site to a mobile unit.
  • the mobile unit may use the known data pattern and its known time of arrival (observed by the master site) to narrow the acquisition bandwidth below the 50 BPS data rate.
  • a major drawback is that the measured 50 BPS data sequence must be transmitted to the mobile unit, and the mobile unit must be able to receive and demodulate the data.
  • a method for determining time in a GPS receiver comprises the steps of capturing GPS data from a GPS message for a predetermined period of time, locating a expected data pattern in the captured data, and determining a time offset between a data capture start time and a time of arrival of the expected data pattern.
  • a method for determining time in a GPS receiver comprises the steps of capturing post- correlation coherent GPS data for a predetermined period of time, locating a expected data pattern in the captured data, and determining a time offset between a data capture start time and a time of arrival of the expected data pattern.
  • a method for determining time in a GPS receiver comprises the steps of down converting the GPS message to a predetermined intermediate frequency, sampling the intermediate frequency to produce a plurality of samples, storing the plurality of samples into a memory, determining a code phase for each visible GPS satellite signal, determining a Doppler shift for each visible GPS satellite signal in the memory, selecting a satellite GPS data, measuring and storing an in-phase coherent characteristic of a post correlation data over a plurality of predetermined time periods, measuring and storing a quadrature coherent characteristic of a post correlation data over a plurality of predetermined time periods, coherently correlating the in-phase and the quadrature characteristics to a expected data pattern, and determining a time offset from a correlation maximum, with the correlation maximum occurring the time offset after a beginning of the capturing step.
  • a method for determining time in a GPS receiver comprises the steps of down converting the GPS message to a predetermined intermediate frequency, sampling the intermediate frequency to produce a plurality of samples, non-coherently correlating the plurality of samples against each visible satellite PRN and each visible satellite Doppler, determining a real-time code phase and a real-time Doppler shift for each visible GPS satellite signal, selecting satellite GPS data, measuring and storing a real-time in-phase coherent characteristic of post-correlation data over a plurality of predetermined time periods, measuring and storing a real-time quadrature coherent characteristic of post correlation data over a plurality of predetermined time periods, coherently correlating the in-phase and the quadrature characteristics to a expected data pattern, and determining a time offset from a correlation maximum, with the correlation maximum occurring the time offset after a beginning of the non-coherent correlating step.
  • the apparatus comprises a GPS down converter for down converting a GPS signal to an intermediate frequency, the down converting capable of being connected to a GPS signal source, an analog-to-digital converter connected to the down converter for converting intermediate frequency data to digital data, a digital IF switch connected to the analog-to-digital converter and connected to a clock, the digital IF switch is controlled by the clock to periodically close for a predetermined sample time period, an IF memory connected to the digital IF switch and capable of storing a plurality of digital IF data available when the digital IF switch is closed, a non-coherent
  • GPS correlator connected to the IF memory and capable of determining a code phase characteristic, determining a Doppler characteristic, and determining a signal strength characteristic for the plurality of digital IF data, a coherent GPS correlator connected to both the IF memory and the non-coherent GPS correlator and producing in-phase and quadrature coherent measurements, a memory storage switch connected to the coherent
  • GPS correlator the memory storage switch periodically closing to produce a plurality of in-phase and quadrature measurements, a samples memory connected to the memory storage switch and capable of storing the plurality of in-phase and quadrature measurements, a correlator connected to the samples memory and to a expected data pattern storage, the correlator coherently correlating the plurality of in-phase and quadrature measurements to a expected data pattern to produce a correlation output, a coherent integrator connected to the correlator, the coherent integrator integrating the correlation output to produce an integration output, a magnitude determiner connected to the coherent integrator, the magnitude determiner detecting a magnitude of the integration output and generating a plurality of integration magnitudes, a magnitude versus delay memory connected to the magnitude determiner and storing the plurality of integration magnitudes, and a maximum integration magnitude determiner connected to the magnitude versus delay memory and capable of determining a maximum integration magnitude, wherein a delay period of a maximum signal magnitude is a time offset.
  • the apparatus comprises a GPS down converter for down converting a GPS signal to an intermediate frequency, the down converting capable of being connected to a GPS signal source, an analog-to-digital converter connected to the down converter for converting intermediate frequency data to a plurality of digital data, a non-coherent GPS correlator connected to the analog-to-digital converter and capable of determining a code phase characteristic, determining a Doppler characteristic, and determining a signal strength characteristic for the plurality of digital data, a coherent GPS correlator connected to both the analog-to-digital converter and the non-coherent GPS correlator and producing in-phase and quadrature coherent measurements, a memory storage switch connected to the coherent GPS correlator, the memory storage switch periodically closing to produce a plurality of in-phase and quadrature measurements, a samples memory connected to the memory storage switch and capable of storing the plurality of in-phase and quadrature post-corre
  • FIG. 1 shows a GPS data word
  • FIGS. 2A-2B show the use of a one second capture timeframe used to capture a data segment of the GPS data word
  • FIG. 3 shows a flow chart of a first embodiment of the method of the present invention
  • FIG. 4 shows a flow chart of a second embodiment of the method of the present invention
  • FIG. 5 shows a flow chart of a third embodiment of the method of the present invention
  • FIG. 6 shows a flow chart of a fourth embodiment of the method of the present invention
  • FIG. 7 shows a block diagram of a first embodiment of an apparatus for determining time in a GPS handset
  • FIG. 8 shows how signals A and B are correlated to produce an output signal C
  • FIG.9 shows how the maximum integrated magnitude indicates the start of the predicted data pattern
  • FIG. 10 shows a block diagram of a second embodiment of the apparatus, without the use of a signal IF capture memory.
  • a low cost method of determining time in a non-synchronized GPS handset is done without the need for communications links and data transfer with external receivers or independent timing devices.
  • the predictable structure of the GPS satellite signal provides assistance in determining time at the handset.
  • the 50 BPS data pattern or data sequence is precisely known or is precisely computable as a function of time (i.e., deterministic).
  • deterministic a function of time
  • FIG. 1 shows the GPS data word 100 that is transmitted every 6 seconds by every GPS satellite.
  • the GPS data word 100 includes a preamble 102, a HOW word 105, and a subframe ID 106.
  • the preamble 102 contains a predetermined eight bit identifier that is the same for every satellite, with the same pattern repeating every six seconds.
  • the preceding two bits from the previous subframe are always the same (00), thus a total of ten bits are always the same for every satellite.
  • the term "preamble” is meant to include the ten-bit sequence with the preceding subframe's last two bits (00) and the eight-bit sequence at the start of the current subframe.
  • the preamble 102 takes 200 milliseconds to be transmitted by each satellite based on the 50 BPS data rate.
  • the HOW word 105 is a seventeen-bit long word that defines the time of week of the first bit of the next subframe.
  • the subframe ID 106 is a three-bit field that defines the contents of each of the five possible subframes.
  • the HOW word 105 takes 340 milliseconds to transmit, and the subframe ID 106 takes 60 milliseconds to transmit.
  • the ten-bit preamble 102 is always the same and known, and the seventeen-bit HOW word 105 and the three-bit subframe ID 106 are predictable as a function of time. Since a new HOW word 105 and subframe ID 106 appear in a message at six second intervals, knowledge of local time to within three seconds in the handset allows knowledge of the precise pattern of the seventeen-bit HOW word 105 and three- bit subframe ID 106 for every subframe. Maintaining handset local time to within three seconds is easily within the capabilities of low cost and low power real-time clocks that are already part of every digital handset.
  • Every bit of the 50 BPS message is coherent with the 1023 bit spreading Gold code that is transmitted at 1.023 MHz, which itself is also coherent relative to the precise satellite clock.
  • the Gold code repeats twenty times for every data bit, requiring a time period of about twenty milliseconds to decode the twenty occurrences of each Gold code bit.
  • the time of transmission from the satellite of each bit of the 50 BPS message is precisely controlled and known, and can be used to indicate precise time.
  • the GPS ground control segment maintains (i.e., steers) the precise clock in each satellite to an accuracy of a few nanoseconds.
  • the time of transmission from the satellite of the preamble 102, the HOW word 105, and the subframe ID 106 is precisely known. Synchronizing to the time of reception of these known or predictable data bit patterns allows transfer of precise absolute local time from the GPS satellite to the GPS receiver by adding the time of flight of the signal (the propagation delay between the satellite and receiver) and the satellite clock error to the time of reception of the predicted bits.
  • the propagation delay and the satellite clock errors are computable in the receiver by knowledge of the satellite broadcast ephemeris and clock correction data, which are also needed to compute position from the range measurements.
  • the arrival time of the GPS data word 100 may be used to calibrate a free- running local clock within the GPS handset.
  • the calibration method is taught by U.S. Patent No. 5,893,044 to King, incorporated herein by reference.
  • the Time Of Arrival (TOA) of the preamble 102, and/or the HOW word 105, and/or the subframe ID 106 may be used to measure the measurement time of the satellite ranges on the fly, or optionally, may be used to measure the capture time into a memory.
  • the on-the-fly method of GPS signal capture and correlation may be used in instances where the GPS signal is strong and the memory method of GPS signal capture and correlation may be used when the signal is weak or unreliable.
  • the memory is preferably larger than necessary to contain any one or all data segments.
  • the time of capture is preferably controlled by a free-running local real-time clock that is periodically recalibrated by the technique of the present invention, or by the technique taught by U.S. patent number 5,893,044 to King, or by the use of some other coarse time reference such as a pulse or message sent from the network to the handset.
  • the important thing is that the capture interval start time is of sufficient accuracy to be able to discriminate the start of one subframe data pattern from the other, or at most 3 seconds error.
  • the precise time of arrival of the data segment may be directly measured, thus establishing the time of data capture, and thus the range measurement time. This may be done without the need to modify extensively the hardware of existing GSM cellular devices, without the need to add additional components to an existing communications network, or without the need for special network messaging.
  • the GPS receiver or handset may have its own internal clock. However, this internal clock may not have a necessary accuracy in order to accurately track the time of arrival of GPS signal data. Instead, the internal clock can be periodically recalibrated by extracting the time of arrival of the GPS data message 100 and using the measured time of arrival to periodically recalibrate the internal clock. It is anticipated that in a worst case a local real-time clock in the GPS handset may use a 32 kHz oscillator having an error of about 50 parts per million (PPM), necessitating recalibration approximately twice a day (a 1 second accuracy drift).
  • PPM parts per million
  • the measured time of arrival of the GPS data message 100 will vary, but due to the relatively small variation in the local real-time clock (for which its time rate of change can also be calibrated by GPS), the measured time of arrival may be used to determine an offset that is useful for recalibrating the local real-time clock.
  • the vertical line showing the previous subframe and the current subframe may indicate where the GPS handset expects the GPS data message 100 to start. Therefore, measuring the difference between the actual start and when the GPS handset expects it to start gives a time offset that may be used to recalibrate the GPS handset clock time and rate of change of time.
  • a search process is used to sample a segment, examine it for the known data pattern or sequence, and then slide the examination interval to another segment length and repeat until the desired known data pattern or sequence is found.
  • FIGs. 2A-2B show the use of a one-second capture timeframe 200 to capture a data segment.
  • An incoming GPS signal is captured for a period of one second in this embodiment.
  • Other capture timeframes may be used as desired.
  • the preamble 102 arrives before the expected start time of the GPS handset (due to clock drift). However, due to the size of the capture timeframe 200, the entire preamble 102 is captured and stored.
  • a one-second capture timeframe is preferred so that GPS data before and after the expected start time of the preamble is captured. Therefore, captured data can be examined to find exactly when the preamble starts.
  • the preamble 102 arrives after the expected start time.
  • the local handset clock may be off quite a bit and yet the full preamble 102 may still be captured.
  • FIG. 3 shows a flow chart 300 of a first embodiment of the method for determining time in a GPS handset.
  • GPS data is captured for a predetermined period of time. In the preferred embodiment, GPS data is captured for about one second as shown in FIG. 2A and FIG. 2B, although other time periods can be used.
  • the start time and duration of the capture event are controlled by a local real-time clock.
  • the local real-time clock has been previously calibrated (either by the method described herein or by traditional GPS signal processing techniques), and may drift.
  • the accuracy of the local real-time clock is dependent on the stability of a driving oscillator, such as, for example, a handset reference oscillator.
  • a driving oscillator such as, for example, a handset reference oscillator.
  • the handset reference oscillator typically has a stability of about 0.05 PPM (i.e., the oscillator may vary by about plus or minus 5 oscillations for every 100,000,000 oscillations) .
  • the local real-time clock may also be driven by a simple 32 KHz free-running oscillator.
  • a expected data pattern with deterministic or predetermined characteristics e.g., a code replica of a preamble, HOW word, subframe ID, etc.
  • this is the preamble 102 shown in FIG. 1.
  • other expected data patterns with deterministic or predetermined characteristics may be used, such as the HOW word 105.
  • step 311 a time offset from the beginning of the capture to the time of arrival of the expected data pattern or data sequence is determined.
  • step 315 the propagation delay of the signal from the satellite and receiver and the satellite offset clock correction is applied, creating a precise measure of the local time.
  • This time offset may be used to recalibrate the clock in the GPS handset, as well as becoming the basis for time stamping the satellite range measurements.
  • FIG. 4 shows a flowchart 400 of a second embodiment of the method for determining time in a GPS handset.
  • the flow chart 400 differs from the flow chart 300 of the first embodiment only in that the method is performed on the fly. Therefore, in step 404, instead of just capturing GPS data as in step 304, the method captures post correlation coherent GPS data.
  • Step 408 is equivalent to step 308; step 411 is equivalent to step 311.
  • FIG. 5 shows a flow chart 500 of a third embodiment of the method for determining time in a GPS handset.
  • step 501 a received GPS message is down converted to an intermediate frequency. This is commonly known in the art and is done to make data processing and handling easier.
  • step 504 the intermediate frequency is sampled to get a plurality of digital samples.
  • the sampling is usually done over a predetermined time period such as, for example, one second, and as a result in the preferred embodiment two-hundred samples are created.
  • the digital IF samples are stored. In the preferred embodiment, they are stored in a general memory such as, for example, a random access memory. However, the digital IF samples may be stored in any type of digital storage device.
  • a code phase is determined for each visible satellite for which data has been received.
  • a Doppler (or frequency) shift is determined for data that is received for each visible satellite.
  • the GPS system employs twenty-four satellites distributed in orbit around the earth and generally at least four satellites are visible from any point on earth with a clear view of the sky.
  • the strongest signal is chosen for processing. Because the method is designed to determine an accurate time during periods when reception of GPS signals is relatively poor, selection of the strongest signal gives the most reliability and the most probability of success. It also reduces the computational time and its resulting power consumption by only processing the minimum number of signals needed for time determination, that being one satellite signal. Of course, the strongest signal is not absolutely necessary for determining accurate time. Additionally (but sub- optimally), multiple signals could be processed to determine time in the receiver.
  • step 522 an in-phase characteristic of the post-correlation coherent signal is measured and stored.
  • step 527 a quadrature characteristic of the post- correlation coherent signal is measured and stored. Steps 522 and 527 are preferably performed simultaneously.
  • step 531 the in-phase and quadrature characteristics determined in steps 522 and 527 are coherently correlated to an expected data pattern. In a preferred embodiment, this is the preamble 102, the HOW word 105, and / or the subframe ID 106.
  • step 531 is comparing in-phase and quadrature characteristics of the received signal to the expected data pattern to determine when the expected data pattern starts in the sequence of received data.
  • step 534 a time offset is determined from the correlation maximum.
  • the correlation of step 531 will produce a peak (which can be seen in FIG.9), and this peak is the point of maximum correlation, i.e., the point at which the incoming data matches the expected data pattern.
  • the time between the start of data capture and the peak therefore, gives the time offset at which the start of the expected data pattern occurs.
  • the capture time is determined from the time offset determined in step 534, the code phase and location of the selected satellite, the clock correction corresponding to the satellite (standard in any GPS receiver), the known time of arrival of the particular GPS data segment (preamble 102, HOW word 105, and /or subframe ID 106), and the geographical location of the handset.
  • the location of the handset may be computed by iteration from an initial guess, with the initial guess being for example the location of the closest cellular base station (each cellular base station has a known latitude and longitude). This data is sufficient to determine the time offset.
  • the time offset can then be used to recalibrate the handset real-time clock to maintain time synchronicity with the GPS satellite system.
  • FIG. 6 shows a flowchart 600 of a fourth embodiment of the method for determining time in a GPS handset.
  • the flow chart 600 differs from the flow chart 500 of the third embodiment in that for step 607, the flow chart 600 non-coherently correlates
  • each visible satellite Pseudo Random Noise (PRN) code i.e., a unique identifier for each satellite, also know as a Gold code
  • PRN visible satellite Pseudo Random Noise
  • the flow chart 500 or the flow chart 600 may be used.
  • the real-time, on-the-fly method is preferred, but alternatively a GPS signal may be stored in memory and then processed.
  • the memory is generally used in cases where the receiver has lost a correlation lock and can no longer correlate the signal in real-time, as it is received. This may be done in order to improve or maintain signal reception, to improve the strength of the received signal, to reduce power consumption, or to stretch out the processing over time.
  • FIG.7 shows a block diagram of a first embodiment of an apparatus 700 for determining time in a GPS handset.
  • the apparatus 700 includes an antenna 704, a GPS down converter 709, an analog-to-digital converter (ADC) 711, a pre-correlation digital
  • ADC analog-to-digital converter
  • IF switch 713 a local real-time clock 715, a digital IF memory 721, acquisition aiding data 724, a non-coherent GPS correlator 726, a coherent GPS correlator 729, a post-correlation coherent memory storage switch 732, a samples memory 735, a clean-up mixer 738, a correlator 742, a pre-stored predicted expected data pattern 744, a time expander 748, a time delay 750, a coherent integrator 754, a magnitude determiner 757, a magnitude versus delay memory 762, and a maximum integration magnitude determiner 766.
  • the antenna 704 receives a GPS signal and passes it to the GPS down converter 709.
  • the GPS down converter 709 converts the GPS data signal into an intermediate frequency (IF) and passes it to the ADC 711.
  • the ADC 711 converts the IF data into digital IF data and sends the digital IF data to the digital IF switch 713.
  • the digital IF switch 713 under control of the local real-time clock 715, takes periodic samples of the digital IF data, with the periodic samples (pre-correlation) being stored in the digital IF memory 721.
  • the accuracy of the real-time clock 715 must be kept to within (N-M)/2 milliseconds. Given that in the preferred embodiment N is 1 second and M is
  • the clock can drift as much as about plus' or minus 400 milliseconds and still be useful in capturing the target data sequence.
  • the local real-time clock 715 must be recalibrated periodically.
  • the recalibration may be done through several methods, including: 1) applying the method described herein with each GPS position location request, 2) automatic recalibration when the real-time clock 715 is predicted to drift a predetermined unacceptable amount, 3) when the handset has a clear view of the sky and traditional GPS can extract time from the direct GPS signals, 4) obtaining time from a traditional GPS signal detector at times when the handset has remote power, such as when charging, and getting time directly from the GPS signal when it is available, 5) transfer time from a car-kit to the handset from an embedded GPS sensor built into the car-kit or from the vehicle itself via a wireless interface such as Bluetooth, for example, 6) transmit course time through the unsynchronized network.
  • the non-coherent GPS correlator 726 determines a code phase characteristic, a Doppler characteristic, and a signal strength of received GPS satellite signals stored in the digital IF memory 721. It should be understood that the hardware up to this point is capable of receiving multiple GPS satellite signals, with the digital IF data stored in the digital IF memory 721 containing data for several satellite signals. As previously stated, a minimum of four GPS satellites will be in view of the GPS handset at any time, and possibly more. Therefore, at least four GPS data signals may be present.
  • the non-coherent GPS correlator 726 also receives information from the acquisition aiding data 724, including satellite ephemeris, such as known and expected satellite locations. This acquisition aiding data 724 allows the non-coherent GPS correlator 726 to discriminate between satellite signals, and to determine the code phase (0 to 1 millisecond time offset) and Doppler frequency (+/- 4 KHz) of each detectable satellite signal.
  • the non-coherent GPS correlator 726 may be a time domain correlator, where the correlator coherently sums successive outputs to 1 millisecond.
  • An example of such a correlator is shown in U.S. Patent No. 5,148,452 to Kennedy, et al., incorporated herein by reference.
  • the non-coherent GPS correlator 726 may be a frequency domain correlator as disclosed by Krasner, U.S. Patent No. 5,663,734 or as disclosed by Ma et al., U.S. Patent No.4,998,111, both of which are incorporated herein by reference.
  • non-coherent correlator does not require knowledge of the 50 BPS data pattern and can extract the code phase and Doppler shift of the signals in environments in which traditional GPS signal processing techniques fail.
  • the non-coherent GPS correlator 726 may be implemented by dedicated hardware or may be created by software coded into a programmable digital signal processor.
  • the coherent GPS correlator 729 is likewise connected to the digital IF memory 721 and is also connected to the non-coherent GPS correlator 726. Data from the digital IF memory 721 is fed into the (single channel) coherent GPS correlator 729, and the coherent GPS correlator 729 makes one millisecond in-phase and quadrature measurements of the signal at the predetermined code phase and Doppler.
  • the coherent GPS correlator 729 is a single channel correlator and produces in-phase and quadrature measurements of the strongest GPS data signal received from the non-coherent GPS correlator 726. At this point, a strongest GPS signal has been chosen and is used from this point on in order to increase the reliability and likelihood of obtaining a time determination. It is important to note that the non-coherent correlator 726 and the coherent correlator 729 can be the same correlator, used in two different modes.
  • the coherent GPS correlator 729 may be implemented by dedicated hardware or may be created by software coded into a programmable digital signal processor.
  • the post-correlation memory storage switch 732 connects to the sample memory 735 and creates in- phase and quadrature measurement sample words that are stored in the sample memory 735.
  • the memory storage switch 732 in the preferred embodiment takes one millisecond samples and creates N words of complex data of the in-phase and quadrature measurements, corresponding to the N milliseconds of data stored in the digital IF memory 721.
  • the 1 millisecond samples have been de-spread (the GPS signal is a spread spectrum signal), are approximately at zero Doppler, and thus the only remaining signal on the sample words is the 50 BPS data pattern (and noise).
  • the clean-up mixer 738 Connected to the samples memory 735 is the clean-up mixer 738 which removes any remaining Doppler characteristic from the stored in-phase and quadrature measurements (the samples memory 735 contains in-phase and quadrature measurement that have all or almost all Doppler removed from the samples). This can be accomplished using multiple techniques in an iterative manner, since the post correlation samples are already stored in memory and can be re-played. One method, for example, involves iteratively stepping the remaining Doppler wipe-off frequency over multiple correlations off the complete sample set stored in the samples memory 735 so as to find the Doppler wipe-off frequency that maximizes the peak signal in the magnitude versus delay memory 762.
  • the estimated Doppler frequency used to wipe-off most of the Doppler signal in the coherent correlator 729 should be held constant while the samples memory 735 is filled. In this way, a constant remaining Doppler wipe-off frequency can be used, or for the case of a receiver undergoing dynamics, a chirped (non constant, changed at a constant rate of frequency change) remaining Doppler wipe-off frequency can also be tried as part of the iterative trials.
  • the correlator 742 is connected to the clean-up mixer 738 and to the expected data pattern 744. The correlator 742 correlates the in-phase and quadrature measurements against the expected data pattern 744.
  • the expected data pattern 744 is the preamble 102, the HOW word 105, and/or the subframe ID 106 of the GPS data message 100.
  • the expected data pattern 744 is connected to a time expander 748 which expands each bit from 1 millisecond to 20 milliseconds in duration, and the time expander 748 is further connected to a delay 750.
  • the delay 750 is connected to the correlator 742. Therefore, the predicted 50 BPS data pattern is converted to a data pattern 200 milliseconds in length (for the case of preamble 102) in order to match the length of the sample words stored in the samples memory 735.
  • the correlator 742 coherently correlates the received and stored data against this expected data pattern and produces higher values when the data patterns correlate.
  • Signal C therefore contains a digital one when signals A and B have the same value, and contains a digital zero when signals A and B differ. This can be accomplished by exclusive OR gates in hardware or by a microprocessor algorithm stored in its memory.
  • the coherent integrator 754 is connected to the correlator 742 and integrates the correlation output to produce an integration output. It should be noted that much of the work to accomplish the N-M delayed coherent integrations can be done with a recursive algorithm stored in a microprocessor or in dedicated hardware, thus greatly reducing the number of operations necessary. In addition, the multiplication operations are all by +1 or -1, greatly simplifying the arithmetic.
  • the magnitude determiner 757 is connected to the coherent integrator 754 and detects a magnitude of the integration result.
  • a plurality of integration magnitudes from the magnitude determiner 757 are stored into the magnitude versus delay memory 762.
  • a total of N-M magnitude values are produced and stored in the magnitude versus delay memory 762.
  • the parameter N is the size in words of the samples memory 735, with N reflecting the number of milliseconds of data captured in the digital IF memory 721. For the case that the digital IF memory contains 1 second of data (i.e., 1000 samples), the parameter N is 1,000.
  • the parameter M is the length of the known data pattern. If the preamble 102 is to be captured, parameter M is
  • the parameter M is 340 milliseconds long.
  • the number of integration magnitudes corresponds to the number of samples in the original IF data captured after the ADC 711.
  • the maximum integration magnitude determiner 766 uses the data stored in the magnitude versus delay memory 762 to determine the point at which a maximum integration result is achieved. This is shown in FIG.9, wherein the maximum integrated magnitude indicates the start of the predicted data pattern.
  • the time offset between the time of a start of signal capture (the time zero point) and the time of the measured maximum integrated magnitude (the peak) is the time offset being sought.
  • the time offset may then be used (along with the code phase and the location of the selected satellite, and its corresponding satellite clock correction) to determine actual
  • a second embodiment of an apparatus for determining time on a GPS handset as shown in FIG. 10 is used for which the digital IF samples memory 721 and IF switch 713 as shown in FIG. 7 have been eliminated.
  • the local real time clock 1015 directly controls the capture time switch 1032 of the post-correlation in-phase and quadrature samples stored in the samples memory 1035.
  • the remaining apparatus is the same as described with reference to FIG. 7.
  • the apparatus 1000 is therefore designed to process GPS signals on-the-fly in order to determine the time offset.
  • elements 732 through 766 and elements 1032 through 1066 can preferably all be accomplished in a software algorithm running on a controlling microprocessor and thus requiring no additional hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)
  • Electric Clocks (AREA)
  • Circuits Of Receivers In General (AREA)

Abstract

A method and apparatus for determining time in a GPS receiver is provided according to the invention. The method includes the steps of capturing (304) GPS data in a GPS message for a predetermined period of time, locating (308) a predetermined data sequence in the captured data, and determining (311) a time offset between a data capture start time and a time of arrival of the expected data pattern.

Description

DETERMINING TIME IN A GPS RECEIVER
CROSS-REFERENCE TO RELATED APPLICATIONS
The present application claims priority from, and the benefit of the filing date of, pending U.S. Utility Patent Application Serial No.09/253,318, filed February 19,
1999, from pending U.S. Utility Patent Application Serial No.09/253,662, filed February
19, 1999, and from pending U.S. Utility Patent Application Serial No. 09/253,679, filed February 19, 1999.
FIELD OF THE INVENTIONS
The present invention relates generally to a GPS receiver, and more particularly to a GPS handset.
BACKGROUND OF THE INVENTIONS
The Global Positioning System (GPS) is a satellite-based system developed by the U.S. Department of Defense to give accurate positional information to a GPS receiver anywhere in the world. A properly equipped GPS receiver may therefore be used in any setting in which position is desired, and typically yields positional coordinates in three dimensions. The GPS system is enabled by a satellite orbital constellation made up of 24 or more satellites orbiting the earth in 12 hour orbits. The satellites are arranged in six orbital planes, each containing four satellites. The orbital planes are spaced sixty degrees apart, and are inclined approximately fifty-five degrees from the equatorial plane. This constellation ensures that from four to twelve satellites will be visible at any time at any point on earth with a clear view of the sky.
The GPS satellites transmit data to be used by GPS receivers, including satellite position data (ephemeris data) and satellite clock correction data. The GPS signal includes a carrier signal that is bi-phase modulated with a 1023 bit long Gold spreading code at a 1.023 Mhz chip rate (0.001 second repeat interval). It is also modulated by data bits at a 50 bits per second (BPS) rate (transmitted at a rate of twenty milliseconds per data bit). The 50 BPS data includes information for determining a GPS- based time (i.e., a clock time of the GPS satellite) and information for determining geographical location.
Detailed information on the data contained within the GPS signal is available in Interface Control Document ICD-GPS-200, revised in 1991, published by Rockwell International Corporation and incorporated herein by reference. The clock time included in the GPS message is an absolute time signal that is precisely synchronized at the satellite. That is, all satellites in the GPS constellation are synchronized by ground reference stations that take into account the signal propagation time from the satellite to the ground station. In this manner, every satellite in the constellation is time synchronized at the satellite, the absolute time error is precisely controlled to within a few nanoseconds to tens of nanoseconds.
The absolute time signal may be used by a GPS receiver in order to accurately determine position. Once position is approximately known, the absolute time in the receiver can also be known by offsetting the precise time observed by the receiver in the satellite broadcast message by the computable propagation delay between the receiver and the satellite.
Knowledge of absolute time in the receiver is an important parameter because the GPS satellites move at approximately four meters per millisecond. If the range measurement time is in error by one millisecond, then the measured ranges can be in error by as much as four meters. This range error then multiplies by a geometry factor (GDOP, or Geometric Dilution Of Precision) to translate into additional positional error that can be many times the four meters of additional range error.
A Time Of Week (TOW) data field included in the 50 BPS data, in conjunction with the absolute time signal, allows a GPS receiver to accurately and reliably determine a local time. The TOW data is transmitted by all satellites at six second intervals. The detection of the TOW data is dependent on the signal magnitude.
Below a certain signal magnitude level it is possible to obtain a range measurement, but it is not possible to decode the TOW data. For example, for signal levels below approximately 30 dB-Hz, it becomes impossible to decode individual message bits of the 50 BPS message. It is possible, however, to obtain signal correlation at signals substantially below 30 dB-Hz, down to levels below 20 dB-Hz. Techniques employed by Motorola applications S/N 09/253,318, S/N 09/253,662, and S/N 09/253,679 can be used to extend the sensitivity of correlation detection to these levels. Thus, what is needed is a method of determining time at signal levels below 30 dB-Hz.
The GPS receiver cannot always reliably determine a local time from the GPS satellite broadcast data. GPS functions are very useful and as a result have been incorporated into a variety of devices, including, for example, cellular phones, and other hand-held electronic devices. Due to their portable nature, such devices are often in vehicles traveling in urban canyons, or carried into buildings or other obstacles. As a natural result, the GPS signal may be blocked or poorly received. This may make the reception of the 50 BPS absolute time signal unreliable. In such cases, it is desirable that a GPS handset obtain an accurate time measurement so that positional measurements are available. Because GPS satellites move at a rate of approximately 4 meters per millisecond, if a time of a range measurement is not known with accuracy, the range measurement and therefore the resulting positional measurement will have a proportional error. For example, if the measurement time contains an error of 20 milliseconds, the range measurement may be in error by as much as 80 meters, and the resulting position measurement may be in error by several hundreds of meters depending on the geometry.
In some cellular telephone devices, such as CDMA (code division multiple access) cellular phones, the infrastructure is synchronized and every base station receives a precise time from a network GPS receiver. The CDMA base station then synchronizes mobile devices by transmitting the time to the mobile devices, allowing a time in the CDMA phone handset to be known to an accuracy on the order of one microsecond (plus a transmission delay).
In non-synchronized GPS devices, such as, for example, Global System for Mobile communications (GSM) cellular phones, precise time information is desirable but generally not available from the signals emanating from the network. However, it is impractical and expensive to modify existing networks in order to synchronize them by adding appropriate hardware and/or software.
The related art has attempted to solve the problem in a variety of ways. A first scheme is given in Krasner, U.S. Patent No. 5,812,087. Krasner uses a digital snapshot memory in a handset to capture a random swath of data and transmit it to a base station. The base station uses a conventional GPS receiver to measure the time of arrival of a portion of the 50 BPS data bits captured in the digital snapshot memory. The data bits measured by the base station have a known time of arrival and are correlated against the unknown data bits captured in the digital snapshot memory. When a maximum correlation is obtained, the data capture time in the mobile memory can be determined.
However, the drawback in Krasner is that a remote base station GPS receiver is required. The remote base station GPS receiver must measure a current 50 GPS data sequence from one or multiple GPS satellites and then transmit it to the mobile unit. Alternatively, the mobile unit may transmit post-detection correlation data to the base. In either manner, the scheme requires that a large number of bits be transmitted between the base station and the mobile unit (for example, 12 satellites time 50 bits each), and it requires that the handset store a sample of the received data for subsequent correlation with the pattern observed and communicated from the base station. In a second related art scheme, Location Measurement Units (LMUs) are placed throughout an unsynchronized network. The purpose of the LMU is to measure the time offset between a time as kept by an unsynchronized communication network and GPS time. An individual LMU measures the time of arrival of message bits from each base station and determines the relative time offset of each base station. This is accomplished by a GPS receiver inside an LMU, and with knowledge of the location of each base station and the location of the LMU (for purposes of determining a propagation time).
The second related art scheme, however, is costly because it requires additional components in a communication network. It is also a complicated solution. In a third related art scheme, the 50 BPS data sequence is observed at a fixed master site.
The time data is transmitted from the master site to a mobile unit. The mobile unit may use the known data pattern and its known time of arrival (observed by the master site) to narrow the acquisition bandwidth below the 50 BPS data rate.
Again, a major drawback is that the measured 50 BPS data sequence must be transmitted to the mobile unit, and the mobile unit must be able to receive and demodulate the data.
There remains a need in the art, therefore, for a time-of-measurement determination in a GPS handset that is part of a non-synchronized network, such as the GSM system.
SUMMARY OF THE INVENTION
A method for determining time in a GPS receiver is provided according to a first aspect of the invention. The method comprises the steps of capturing GPS data from a GPS message for a predetermined period of time, locating a expected data pattern in the captured data, and determining a time offset between a data capture start time and a time of arrival of the expected data pattern.
A method for determining time in a GPS receiver is provided according to a second aspect of the invention. The method comprises the steps of capturing post- correlation coherent GPS data for a predetermined period of time, locating a expected data pattern in the captured data, and determining a time offset between a data capture start time and a time of arrival of the expected data pattern.
A method for determining time in a GPS receiver is provided according to a third aspect of the invention. The method comprises the steps of down converting the GPS message to a predetermined intermediate frequency, sampling the intermediate frequency to produce a plurality of samples, storing the plurality of samples into a memory, determining a code phase for each visible GPS satellite signal, determining a Doppler shift for each visible GPS satellite signal in the memory, selecting a satellite GPS data, measuring and storing an in-phase coherent characteristic of a post correlation data over a plurality of predetermined time periods, measuring and storing a quadrature coherent characteristic of a post correlation data over a plurality of predetermined time periods, coherently correlating the in-phase and the quadrature characteristics to a expected data pattern, and determining a time offset from a correlation maximum, with the correlation maximum occurring the time offset after a beginning of the capturing step.
A method for determining time in a GPS receiver is provided according to a fourth aspect of the invention. The method comprises the steps of down converting the GPS message to a predetermined intermediate frequency, sampling the intermediate frequency to produce a plurality of samples, non-coherently correlating the plurality of samples against each visible satellite PRN and each visible satellite Doppler, determining a real-time code phase and a real-time Doppler shift for each visible GPS satellite signal, selecting satellite GPS data, measuring and storing a real-time in-phase coherent characteristic of post-correlation data over a plurality of predetermined time periods, measuring and storing a real-time quadrature coherent characteristic of post correlation data over a plurality of predetermined time periods, coherently correlating the in-phase and the quadrature characteristics to a expected data pattern, and determining a time offset from a correlation maximum, with the correlation maximum occurring the time offset after a beginning of the non-coherent correlating step. An apparatus for determining time in a GPS receiver is provided according to a fifth aspect of the invention. The apparatus comprises a GPS down converter for down converting a GPS signal to an intermediate frequency, the down converting capable of being connected to a GPS signal source, an analog-to-digital converter connected to the down converter for converting intermediate frequency data to digital data, a digital IF switch connected to the analog-to-digital converter and connected to a clock, the digital IF switch is controlled by the clock to periodically close for a predetermined sample time period, an IF memory connected to the digital IF switch and capable of storing a plurality of digital IF data available when the digital IF switch is closed, a non-coherent
GPS correlator connected to the IF memory and capable of determining a code phase characteristic, determining a Doppler characteristic, and determining a signal strength characteristic for the plurality of digital IF data, a coherent GPS correlator connected to both the IF memory and the non-coherent GPS correlator and producing in-phase and quadrature coherent measurements, a memory storage switch connected to the coherent
GPS correlator, the memory storage switch periodically closing to produce a plurality of in-phase and quadrature measurements, a samples memory connected to the memory storage switch and capable of storing the plurality of in-phase and quadrature measurements, a correlator connected to the samples memory and to a expected data pattern storage, the correlator coherently correlating the plurality of in-phase and quadrature measurements to a expected data pattern to produce a correlation output, a coherent integrator connected to the correlator, the coherent integrator integrating the correlation output to produce an integration output, a magnitude determiner connected to the coherent integrator, the magnitude determiner detecting a magnitude of the integration output and generating a plurality of integration magnitudes, a magnitude versus delay memory connected to the magnitude determiner and storing the plurality of integration magnitudes, and a maximum integration magnitude determiner connected to the magnitude versus delay memory and capable of determining a maximum integration magnitude, wherein a delay period of a maximum signal magnitude is a time offset. An apparatus for determining time in a GPS receiver is provided according to a sixth aspect of the invention. The apparatus comprises a GPS down converter for down converting a GPS signal to an intermediate frequency, the down converting capable of being connected to a GPS signal source, an analog-to-digital converter connected to the down converter for converting intermediate frequency data to a plurality of digital data, a non-coherent GPS correlator connected to the analog-to-digital converter and capable of determining a code phase characteristic, determining a Doppler characteristic, and determining a signal strength characteristic for the plurality of digital data, a coherent GPS correlator connected to both the analog-to-digital converter and the non-coherent GPS correlator and producing in-phase and quadrature coherent measurements, a memory storage switch connected to the coherent GPS correlator, the memory storage switch periodically closing to produce a plurality of in-phase and quadrature measurements, a samples memory connected to the memory storage switch and capable of storing the plurality of in-phase and quadrature post-correlation measurements, a correlator connected to the samples memory and to a expected data pattern storage, the correlator coherently correlating the plurality of in-phase and quadrature measurements to a expected data pattern to produce a correlation output, a coherent integrator connected to the correlator, the coherent integrator integrating the correlation output to produce an integration output, a magnitude determiner connected to the coherent integrator, the magnitude determiner detecting a magnitude of the integration output and generating a plurality of integration magnitudes, a magnitude versus delay memory connected to the magnitude determiner and storing the plurality of integration magnitudes, and a maximum integration magnitude determiner connected to the magnitude versus delay memory and capable of determining a maximum integration magnitude, wherein a delay period of a maximum signal magnitude is a time offset. The above and other features and advantages of the present invention will be further understood from the following description of the preferred embodiments thereof, taken in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows a GPS data word;
FIGS. 2A-2B show the use of a one second capture timeframe used to capture a data segment of the GPS data word;
FIG. 3 shows a flow chart of a first embodiment of the method of the present invention;
FIG. 4 shows a flow chart of a second embodiment of the method of the present invention;
FIG. 5 shows a flow chart of a third embodiment of the method of the present invention; FIG. 6 shows a flow chart of a fourth embodiment of the method of the present invention;
FIG. 7 shows a block diagram of a first embodiment of an apparatus for determining time in a GPS handset;
FIG. 8 shows how signals A and B are correlated to produce an output signal C;
FIG.9 shows how the maximum integrated magnitude indicates the start of the predicted data pattern; and
FIG. 10 shows a block diagram of a second embodiment of the apparatus, without the use of a signal IF capture memory.
DETAILED DESCRIPTION OF THE INVENTIONS
A low cost method of determining time in a non-synchronized GPS handset is done without the need for communications links and data transfer with external receivers or independent timing devices. The predictable structure of the GPS satellite signal provides assistance in determining time at the handset.
There are at least three segments of the satellite broadcast data (each of which repeat every 6 seconds) in which the 50 BPS data pattern or data sequence is precisely known or is precisely computable as a function of time (i.e., deterministic). These known and predictable data sequences or data patterns can be correlated across multiple data bits and used to determine the precise time, even when the GPS signal is too weak to allow demodulation of the individual bits of the 50 BPS data message.
FIG. 1 shows the GPS data word 100 that is transmitted every 6 seconds by every GPS satellite. The GPS data word 100 includes a preamble 102, a HOW word 105, and a subframe ID 106. The preamble 102 contains a predetermined eight bit identifier that is the same for every satellite, with the same pattern repeating every six seconds. In addition, the preceding two bits from the previous subframe are always the same (00), thus a total of ten bits are always the same for every satellite. In the remainder of this document, the term "preamble" is meant to include the ten-bit sequence with the preceding subframe's last two bits (00) and the eight-bit sequence at the start of the current subframe. The preamble 102 takes 200 milliseconds to be transmitted by each satellite based on the 50 BPS data rate. The HOW word 105 is a seventeen-bit long word that defines the time of week of the first bit of the next subframe. The subframe ID 106 is a three-bit field that defines the contents of each of the five possible subframes. The HOW word 105 takes 340 milliseconds to transmit, and the subframe ID 106 takes 60 milliseconds to transmit.
As a result, the ten-bit preamble 102 is always the same and known, and the seventeen-bit HOW word 105 and the three-bit subframe ID 106 are predictable as a function of time. Since a new HOW word 105 and subframe ID 106 appear in a message at six second intervals, knowledge of local time to within three seconds in the handset allows knowledge of the precise pattern of the seventeen-bit HOW word 105 and three- bit subframe ID 106 for every subframe. Maintaining handset local time to within three seconds is easily within the capabilities of low cost and low power real-time clocks that are already part of every digital handset.
Every bit of the 50 BPS message is coherent with the 1023 bit spreading Gold code that is transmitted at 1.023 MHz, which itself is also coherent relative to the precise satellite clock. The Gold code repeats twenty times for every data bit, requiring a time period of about twenty milliseconds to decode the twenty occurrences of each Gold code bit.
Since the entire 50 BPS message is synchronous with the satellite clock, the time of transmission from the satellite of each bit of the 50 BPS message is precisely controlled and known, and can be used to indicate precise time. As mentioned earlier, the GPS ground control segment maintains (i.e., steers) the precise clock in each satellite to an accuracy of a few nanoseconds. As a result, the time of transmission from the satellite of the preamble 102, the HOW word 105, and the subframe ID 106 is precisely known. Synchronizing to the time of reception of these known or predictable data bit patterns allows transfer of precise absolute local time from the GPS satellite to the GPS receiver by adding the time of flight of the signal (the propagation delay between the satellite and receiver) and the satellite clock error to the time of reception of the predicted bits. The propagation delay and the satellite clock errors are computable in the receiver by knowledge of the satellite broadcast ephemeris and clock correction data, which are also needed to compute position from the range measurements.
The arrival time of the GPS data word 100 may be used to calibrate a free- running local clock within the GPS handset. The calibration method is taught by U.S. Patent No. 5,893,044 to King, incorporated herein by reference. The Time Of Arrival (TOA) of the preamble 102, and/or the HOW word 105, and/or the subframe ID 106 may be used to measure the measurement time of the satellite ranges on the fly, or optionally, may be used to measure the capture time into a memory. The on-the-fly method of GPS signal capture and correlation may be used in instances where the GPS signal is strong and the memory method of GPS signal capture and correlation may be used when the signal is weak or unreliable.
If a memory is used, the memory is preferably larger than necessary to contain any one or all data segments. The time of capture is preferably controlled by a free-running local real-time clock that is periodically recalibrated by the technique of the present invention, or by the technique taught by U.S. patent number 5,893,044 to King, or by the use of some other coarse time reference such as a pulse or message sent from the network to the handset. The important thing is that the capture interval start time is of sufficient accuracy to be able to discriminate the start of one subframe data pattern from the other, or at most 3 seconds error. Once a data segment is captured into memory (either IF memory for pre-correlation, or post correlation memory), the precise time of arrival of the data segment may be directly measured, thus establishing the time of data capture, and thus the range measurement time. This may be done without the need to modify extensively the hardware of existing GSM cellular devices, without the need to add additional components to an existing communications network, or without the need for special network messaging.
The GPS receiver or handset may have its own internal clock. However, this internal clock may not have a necessary accuracy in order to accurately track the time of arrival of GPS signal data. Instead, the internal clock can be periodically recalibrated by extracting the time of arrival of the GPS data message 100 and using the measured time of arrival to periodically recalibrate the internal clock. It is anticipated that in a worst case a local real-time clock in the GPS handset may use a 32 kHz oscillator having an error of about 50 parts per million (PPM), necessitating recalibration approximately twice a day (a 1 second accuracy drift).
Of course, as the local real-time clock in the handset varies, the measured time of arrival of the GPS data message 100 will vary, but due to the relatively small variation in the local real-time clock (for which its time rate of change can also be calibrated by GPS), the measured time of arrival may be used to determine an offset that is useful for recalibrating the local real-time clock. For example, in FIG. 1 the vertical line showing the previous subframe and the current subframe may indicate where the GPS handset expects the GPS data message 100 to start. Therefore, measuring the difference between the actual start and when the GPS handset expects it to start gives a time offset that may be used to recalibrate the GPS handset clock time and rate of change of time. For the case in which the local real-time clock has not been calibrated, then a search process is used to sample a segment, examine it for the known data pattern or sequence, and then slide the examination interval to another segment length and repeat until the desired known data pattern or sequence is found.
FIGs. 2A-2B show the use of a one-second capture timeframe 200 to capture a data segment. An incoming GPS signal is captured for a period of one second in this embodiment. Other capture timeframes may be used as desired. In FIG. 2A the preamble 102 arrives before the expected start time of the GPS handset (due to clock drift). However, due to the size of the capture timeframe 200, the entire preamble 102 is captured and stored. A one-second capture timeframe is preferred so that GPS data before and after the expected start time of the preamble is captured. Therefore, captured data can be examined to find exactly when the preamble starts.
In FIG.2B the preamble 102 arrives after the expected start time. By using a one second capture timeframe 200 the local handset clock may be off quite a bit and yet the full preamble 102 may still be captured.
FIG. 3 shows a flow chart 300 of a first embodiment of the method for determining time in a GPS handset. In step 304 GPS data is captured for a predetermined period of time. In the preferred embodiment, GPS data is captured for about one second as shown in FIG. 2A and FIG. 2B, although other time periods can be used. The start time and duration of the capture event are controlled by a local real-time clock. The local real-time clock has been previously calibrated (either by the method described herein or by traditional GPS signal processing techniques), and may drift.
The accuracy of the local real-time clock is dependent on the stability of a driving oscillator, such as, for example, a handset reference oscillator. In GSM and CDMA handsets the handset reference oscillator typically has a stability of about 0.05 PPM (i.e., the oscillator may vary by about plus or minus 5 oscillations for every 100,000,000 oscillations) . The local real-time clock may also be driven by a simple 32 KHz free-running oscillator. In step 308, a expected data pattern with deterministic or predetermined characteristics (e.g., a code replica of a preamble, HOW word, subframe ID, etc.) is located in the captured data. In the preferred embodiment, this is the preamble 102 shown in FIG. 1. However, other expected data patterns with deterministic or predetermined characteristics may be used, such as the HOW word 105.
In step 311 a time offset from the beginning of the capture to the time of arrival of the expected data pattern or data sequence is determined.
In step 315 the propagation delay of the signal from the satellite and receiver and the satellite offset clock correction is applied, creating a precise measure of the local time. This time offset may be used to recalibrate the clock in the GPS handset, as well as becoming the basis for time stamping the satellite range measurements.
FIG. 4 shows a flowchart 400 of a second embodiment of the method for determining time in a GPS handset. The flow chart 400 differs from the flow chart 300 of the first embodiment only in that the method is performed on the fly. Therefore, in step 404, instead of just capturing GPS data as in step 304, the method captures post correlation coherent GPS data. Step 408 is equivalent to step 308; step 411 is equivalent to step 311.
It should be understood that either the flow chart 300 or the flow chart 400 may be used. The real-time, on-the-fly method is preferred, but alternatively a GPS signal may be stored in memory and then processed. The memory is generally used in cases where the receiver has lost a correlation lock and can no longer correlate the signal in real-time, as it is received. This may be done in order to improve or maintain signal reception, to improve the strength of the received signal, to reduce power consumption, or to spread the computational load out over time. FIG. 5 shows a flow chart 500 of a third embodiment of the method for determining time in a GPS handset. In step 501, a received GPS message is down converted to an intermediate frequency. This is commonly known in the art and is done to make data processing and handling easier.
In step 504, the intermediate frequency is sampled to get a plurality of digital samples. The sampling is usually done over a predetermined time period such as, for example, one second, and as a result in the preferred embodiment two-hundred samples are created.
In step 507, the digital IF samples are stored. In the preferred embodiment, they are stored in a general memory such as, for example, a random access memory. However, the digital IF samples may be stored in any type of digital storage device. In step 510, a code phase is determined for each visible satellite for which data has been received.
In step 512, a Doppler (or frequency) shift is determined for data that is received for each visible satellite. The GPS system employs twenty-four satellites distributed in orbit around the earth and generally at least four satellites are visible from any point on earth with a clear view of the sky.
In step 517, the strongest signal is chosen for processing. Because the method is designed to determine an accurate time during periods when reception of GPS signals is relatively poor, selection of the strongest signal gives the most reliability and the most probability of success. It also reduces the computational time and its resulting power consumption by only processing the minimum number of signals needed for time determination, that being one satellite signal. Of course, the strongest signal is not absolutely necessary for determining accurate time. Additionally (but sub- optimally), multiple signals could be processed to determine time in the receiver.
In step 522, an in-phase characteristic of the post-correlation coherent signal is measured and stored. In step 527, a quadrature characteristic of the post- correlation coherent signal is measured and stored. Steps 522 and 527 are preferably performed simultaneously.
In step 531, the in-phase and quadrature characteristics determined in steps 522 and 527 are coherently correlated to an expected data pattern. In a preferred embodiment, this is the preamble 102, the HOW word 105, and / or the subframe ID 106.
In effect, step 531 is comparing in-phase and quadrature characteristics of the received signal to the expected data pattern to determine when the expected data pattern starts in the sequence of received data.
In step 534, a time offset is determined from the correlation maximum. The correlation of step 531 will produce a peak (which can be seen in FIG.9), and this peak is the point of maximum correlation, i.e., the point at which the incoming data matches the expected data pattern. The time between the start of data capture and the peak, therefore, gives the time offset at which the start of the expected data pattern occurs.
In step 538, the capture time is determined from the time offset determined in step 534, the code phase and location of the selected satellite, the clock correction corresponding to the satellite (standard in any GPS receiver), the known time of arrival of the particular GPS data segment (preamble 102, HOW word 105, and /or subframe ID 106), and the geographical location of the handset. The location of the handset may be computed by iteration from an initial guess, with the initial guess being for example the location of the closest cellular base station (each cellular base station has a known latitude and longitude). This data is sufficient to determine the time offset. The time offset can then be used to recalibrate the handset real-time clock to maintain time synchronicity with the GPS satellite system.
FIG. 6 shows a flowchart 600 of a fourth embodiment of the method for determining time in a GPS handset. The flow chart 600 differs from the flow chart 500 of the third embodiment in that for step 607, the flow chart 600 non-coherently correlates
GPS samples against each visible satellite Pseudo Random Noise (PRN) code (i.e., a unique identifier for each satellite, also know as a Gold code) and each visible satellite Doppler characteristic. The other steps shown in FIG. 6 are analogous to their counterpart steps in FIG. 5. Similar to the method of FIG. 4, the method of FIG. 6 is an on-the-fly time offset determination, not requiring a digital IF memory.
It should be understood that either the flow chart 500 or the flow chart 600 may be used. The real-time, on-the-fly method is preferred, but alternatively a GPS signal may be stored in memory and then processed. The memory is generally used in cases where the receiver has lost a correlation lock and can no longer correlate the signal in real-time, as it is received. This may be done in order to improve or maintain signal reception, to improve the strength of the received signal, to reduce power consumption, or to stretch out the processing over time.
FIG.7 shows a block diagram of a first embodiment of an apparatus 700 for determining time in a GPS handset. The apparatus 700 includes an antenna 704, a GPS down converter 709, an analog-to-digital converter (ADC) 711, a pre-correlation digital
IF switch 713, a local real-time clock 715, a digital IF memory 721, acquisition aiding data 724, a non-coherent GPS correlator 726, a coherent GPS correlator 729, a post-correlation coherent memory storage switch 732, a samples memory 735, a clean-up mixer 738, a correlator 742, a pre-stored predicted expected data pattern 744, a time expander 748, a time delay 750, a coherent integrator 754, a magnitude determiner 757, a magnitude versus delay memory 762, and a maximum integration magnitude determiner 766.
The antenna 704 receives a GPS signal and passes it to the GPS down converter 709. The GPS down converter 709 converts the GPS data signal into an intermediate frequency (IF) and passes it to the ADC 711. The ADC 711 converts the IF data into digital IF data and sends the digital IF data to the digital IF switch 713. The digital IF switch 713, under control of the local real-time clock 715, takes periodic samples of the digital IF data, with the periodic samples (pre-correlation) being stored in the digital IF memory 721.
In order to guarantee that the target bits are properly captured in the N- millisecond long memory, the accuracy of the real-time clock 715 must be kept to within (N-M)/2 milliseconds. Given that in the preferred embodiment N is 1 second and M is
200 milliseconds, the clock can drift as much as about plus' or minus 400 milliseconds and still be useful in capturing the target data sequence.
However, the local real-time clock 715 must be recalibrated periodically. The recalibration may be done through several methods, including: 1) applying the method described herein with each GPS position location request, 2) automatic recalibration when the real-time clock 715 is predicted to drift a predetermined unacceptable amount, 3) when the handset has a clear view of the sky and traditional GPS can extract time from the direct GPS signals, 4) obtaining time from a traditional GPS signal detector at times when the handset has remote power, such as when charging, and getting time directly from the GPS signal when it is available, 5) transfer time from a car-kit to the handset from an embedded GPS sensor built into the car-kit or from the vehicle itself via a wireless interface such as Bluetooth, for example, 6) transmit course time through the unsynchronized network.
The non-coherent GPS correlator 726 determines a code phase characteristic, a Doppler characteristic, and a signal strength of received GPS satellite signals stored in the digital IF memory 721. It should be understood that the hardware up to this point is capable of receiving multiple GPS satellite signals, with the digital IF data stored in the digital IF memory 721 containing data for several satellite signals. As previously stated, a minimum of four GPS satellites will be in view of the GPS handset at any time, and possibly more. Therefore, at least four GPS data signals may be present. The non-coherent GPS correlator 726 also receives information from the acquisition aiding data 724, including satellite ephemeris, such as known and expected satellite locations. This acquisition aiding data 724 allows the non-coherent GPS correlator 726 to discriminate between satellite signals, and to determine the code phase (0 to 1 millisecond time offset) and Doppler frequency (+/- 4 KHz) of each detectable satellite signal.
The non-coherent GPS correlator 726 may be a time domain correlator, where the correlator coherently sums successive outputs to 1 millisecond. An example of such a correlator is shown in U.S. Patent No. 5,148,452 to Kennedy, et al., incorporated herein by reference. Alternatively, the non-coherent GPS correlator 726 may be a frequency domain correlator as disclosed by Krasner, U.S. Patent No. 5,663,734 or as disclosed by Ma et al., U.S. Patent No.4,998,111, both of which are incorporated herein by reference. It is important to note that a non-coherent correlator does not require knowledge of the 50 BPS data pattern and can extract the code phase and Doppler shift of the signals in environments in which traditional GPS signal processing techniques fail. In addition, the non-coherent GPS correlator 726 may be implemented by dedicated hardware or may be created by software coded into a programmable digital signal processor.
The coherent GPS correlator 729 is likewise connected to the digital IF memory 721 and is also connected to the non-coherent GPS correlator 726. Data from the digital IF memory 721 is fed into the (single channel) coherent GPS correlator 729, and the coherent GPS correlator 729 makes one millisecond in-phase and quadrature measurements of the signal at the predetermined code phase and Doppler. The coherent GPS correlator 729 is a single channel correlator and produces in-phase and quadrature measurements of the strongest GPS data signal received from the non-coherent GPS correlator 726. At this point, a strongest GPS signal has been chosen and is used from this point on in order to increase the reliability and likelihood of obtaining a time determination. It is important to note that the non-coherent correlator 726 and the coherent correlator 729 can be the same correlator, used in two different modes.
Like the non-coherent GPS correlator 726, the coherent GPS correlator 729 may be implemented by dedicated hardware or may be created by software coded into a programmable digital signal processor.
Connected to the coherent GPS correlator 729 is the post-correlation memory storage switch 732 that connects to the sample memory 735 and creates in- phase and quadrature measurement sample words that are stored in the sample memory 735. The memory storage switch 732 in the preferred embodiment takes one millisecond samples and creates N words of complex data of the in-phase and quadrature measurements, corresponding to the N milliseconds of data stored in the digital IF memory 721. The 1 millisecond samples have been de-spread (the GPS signal is a spread spectrum signal), are approximately at zero Doppler, and thus the only remaining signal on the sample words is the 50 BPS data pattern (and noise). Connected to the samples memory 735 is the clean-up mixer 738 which removes any remaining Doppler characteristic from the stored in-phase and quadrature measurements (the samples memory 735 contains in-phase and quadrature measurement that have all or almost all Doppler removed from the samples). This can be accomplished using multiple techniques in an iterative manner, since the post correlation samples are already stored in memory and can be re-played. One method, for example, involves iteratively stepping the remaining Doppler wipe-off frequency over multiple correlations off the complete sample set stored in the samples memory 735 so as to find the Doppler wipe-off frequency that maximizes the peak signal in the magnitude versus delay memory 762. In order to best do this, the estimated Doppler frequency used to wipe-off most of the Doppler signal in the coherent correlator 729 should be held constant while the samples memory 735 is filled. In this way, a constant remaining Doppler wipe-off frequency can be used, or for the case of a receiver undergoing dynamics, a chirped (non constant, changed at a constant rate of frequency change) remaining Doppler wipe-off frequency can also be tried as part of the iterative trials. The correlator 742 is connected to the clean-up mixer 738 and to the expected data pattern 744. The correlator 742 correlates the in-phase and quadrature measurements against the expected data pattern 744.
In the preferred embodiment the expected data pattern 744 is the preamble 102, the HOW word 105, and/or the subframe ID 106 of the GPS data message 100. The expected data pattern 744 is connected to a time expander 748 which expands each bit from 1 millisecond to 20 milliseconds in duration, and the time expander 748 is further connected to a delay 750. The delay 750 is connected to the correlator 742. Therefore, the predicted 50 BPS data pattern is converted to a data pattern 200 milliseconds in length (for the case of preamble 102) in order to match the length of the sample words stored in the samples memory 735. The correlator 742 coherently correlates the received and stored data against this expected data pattern and produces higher values when the data patterns correlate. This is shown in FIG. 8, where signals A and B are correlated to produce an output signal C. Signal C therefore contains a digital one when signals A and B have the same value, and contains a digital zero when signals A and B differ. This can be accomplished by exclusive OR gates in hardware or by a microprocessor algorithm stored in its memory.
The coherent integrator 754 is connected to the correlator 742 and integrates the correlation output to produce an integration output. It should be noted that much of the work to accomplish the N-M delayed coherent integrations can be done with a recursive algorithm stored in a microprocessor or in dedicated hardware, thus greatly reducing the number of operations necessary. In addition, the multiplication operations are all by +1 or -1, greatly simplifying the arithmetic.
The magnitude determiner 757 is connected to the coherent integrator 754 and detects a magnitude of the integration result. A plurality of integration magnitudes from the magnitude determiner 757 are stored into the magnitude versus delay memory 762. In the preferred embodiment, a total of N-M magnitude values are produced and stored in the magnitude versus delay memory 762. The parameter N is the size in words of the samples memory 735, with N reflecting the number of milliseconds of data captured in the digital IF memory 721. For the case that the digital IF memory contains 1 second of data (i.e., 1000 samples), the parameter N is 1,000. The parameter M is the length of the known data pattern. If the preamble 102 is to be captured, parameter M is
200 milliseconds long. Likewise, for the HOW word 105 the parameter M is 340 milliseconds long. The number of integration magnitudes corresponds to the number of samples in the original IF data captured after the ADC 711.
The maximum integration magnitude determiner 766 then uses the data stored in the magnitude versus delay memory 762 to determine the point at which a maximum integration result is achieved. This is shown in FIG.9, wherein the maximum integrated magnitude indicates the start of the predicted data pattern. The time offset between the time of a start of signal capture (the time zero point) and the time of the measured maximum integrated magnitude (the peak) is the time offset being sought. The time offset may then be used (along with the code phase and the location of the selected satellite, and its corresponding satellite clock correction) to determine actual
(local) time and to recalibrate the handset real-time clock, as discussed above in conjunction with step 538 of FIG. 5 and step 638 of FIG. 6.
In a similar manner, a second embodiment of an apparatus for determining time on a GPS handset as shown in FIG. 10 is used for which the digital IF samples memory 721 and IF switch 713 as shown in FIG. 7 have been eliminated. Referring to
FIG. 10, the local real time clock 1015 directly controls the capture time switch 1032 of the post-correlation in-phase and quadrature samples stored in the samples memory 1035. The remaining apparatus is the same as described with reference to FIG. 7. The apparatus 1000 is therefore designed to process GPS signals on-the-fly in order to determine the time offset.
It should be noted that elements 732 through 766 and elements 1032 through 1066 can preferably all be accomplished in a software algorithm running on a controlling microprocessor and thus requiring no additional hardware.
While the preferred embodiments have been described in detail above, the invention is not intended to be limited to the specific embodiments as described. It is evident that those skilled in the art may now make numerous uses and modifications of and departures from the specific embodiments described herein without departing from the inventive concepts.
What is claimed is:

Claims

1. A method for determining time in a global positioning satellite (GPS) receiver, comprising the steps of: capturing GPS data from a GPS message for a predetermined period of time; locating an expected data pattern in said captured GPS data; and determining a time offset between a start time of said predetermined period of time and a time of arrival of said expected data pattern.
2. The method of claim 1, wherein said time offset is used to calibrate a clock of said GPS receiver.
3. The method of claim 1, wherein said GPS message is from a GPS satellite and wherein the step of determining further comprises the step of correcting said time offset to compensate for a signal propagation time between said GPS satellite and said GPS receiver.
4. The method of claim 3, wherein the step of correcting further comprises the step of modifying said corrected time offset to compensate for a satellite clock offset time.
5. The method of claim 1, wherein said expected data pattern is a GPS message preamble.
6. The method of claim 1, wherein said expected data pattern is a hand-over word.
7. The method of claim 1, wherein said expected data pattern is a subframe ID.
8. The method of claim 1, wherein said expected data pattern is selected from the gr0UP consisting of a GPS message preamble, a hand-over word, and subframe ID, and combinations thereof.
9. The method of claim 1, wherein said predetermined period of time is approximately one second.
10. The method of claim 1, wherein the step of capturing comprises the steps of: down converting a GPS signal to a predetermined intermediate frequency; sampling said down-converted GPS signal to produce a plurality of samples; and storing said plurality of samples into a memory.
11. An apparatus for determining time in a GPS receiver, comprising: a down converter for down converting a plurality of GPS signals to an intermediate frequency; an analog-to-digital converter coupled to said down converter for converting said down-converted plurality of GPS signals to digital data; a digital intermediate frequency (IF) switch coupled to said analog-to- digital converter and coupled to a clock, said digital IF switch controlled by said clock to periodically close for a predetermined sample time period; an IF memory coupled to said digital IF switch for storing a plurality of digital IF data available when said digital IF switch is closed; a non-coherent GPS correlator coupled to said IF memory for determining a code phase characteristic, determining a Doppler characteristic, determining a signal strength characteristic for a plurality of GPS signals in said plurality of digital IF data, and selecting a GPS satellite signal based on said determined code phase characteristics, determined Doppler characteristics, and determined signal strength characteristics; a coherent GPS correlator coupled to said IF memory and said noncoherent GPS correlator for producing in-phase and quadrature coherent measurements; a memory storage switch coupled to said coherent GPS correlator, said memory storage switch periodically closing to produce a plurality of in-phase and quadrature coherent measurement samples; a samples memory coupled to said memory storage switch for storing said plurality of in-phase and quadrature coherent measurement samples; a correlator coupled to said samples memory and to a predetermined expected data pattern storage, said correlator coherently correlating said plurality of in- phase and quadrature coherent measurement samples to a predetermined expected data pattern in said predetermined expected data pattern storage to produce a correlation output; a coherent integrator coupled to said correlator for integrating said correlation output to produce an integration output; a magnitude determiner coupled to said coherent integrator for detecting a magnitude of said integration output and generating a plurality of integration magnitudes; a magnitude versus delay memory coupled to said magnitude determiner and storing said plurality of integration magnitudes; and a maximum integration magnitude determiner coupled to said magnitude versus delay memory and capable of determining a maximum integration magnitude and a time offset representative of a delay period from a starting time of storing a plurality of digital IF data to said maximum integration magnitude.
12. The apparatus of claim 11, wherein a capture time is determined from said time offset, a code phase of said selected GPS satellite signal, a location of a satellite corresponding to said selected GPS satellite signal, and a location of said apparatus.
AMENDED CLAIMS
[received by the International Bureau on 15 August 2001 (15.08.01); original claim 1 amended; remaining claims unchanged (1 page)]
1. (Once Amended) A method for determining time in a global positioning satellite (GPS) receiver, comprising: capturing GPS data from a GPS message for a predetermined period of time; locating a time of arrival of an expected data pattern in said captured GPS data by correlating the captured GPS data with the expected data pattern; and determining a time offset between a start time of said predetermined period of time and a time of arrival of said expected data pattern.
2. (Not Amended) The method of claim 1, wherein said time offset is used to calibrate a clock of said GPS receiver.
3. (Not Amended) The method of claim 1, wherein said GPS message is from a GPS satellite and wherein the step of determining further comprises the step of correcting said time offset to compensate for a signal propagation time between said GPS satellite and said GPS receiver.
4. (Not Amended) The method of claim 3, wherein the step of correcting further comprises the step of modifying said corrected time offset to compensate for a satellite clock offset time.
AMENDED SHEET (ART/Wtf)
EP01924432A 2000-03-30 2001-03-29 Determining time in a gps receiver Expired - Lifetime EP1287375B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/539,137 US6346911B1 (en) 2000-03-30 2000-03-30 Method and apparatus for determining time in a GPS receiver
US539137 2000-03-30
PCT/US2001/010053 WO2001075470A1 (en) 2000-03-30 2001-03-29 Determining time in a gps receiver

Publications (3)

Publication Number Publication Date
EP1287375A1 EP1287375A1 (en) 2003-03-05
EP1287375A4 true EP1287375A4 (en) 2003-05-14
EP1287375B1 EP1287375B1 (en) 2007-04-18

Family

ID=24149944

Family Applications (1)

Application Number Title Priority Date Filing Date
EP01924432A Expired - Lifetime EP1287375B1 (en) 2000-03-30 2001-03-29 Determining time in a gps receiver

Country Status (13)

Country Link
US (1) US6346911B1 (en)
EP (1) EP1287375B1 (en)
JP (2) JP2003529776A (en)
KR (1) KR100489843B1 (en)
CN (1) CN100377507C (en)
AT (1) ATE360221T1 (en)
AU (2) AU2001251085B2 (en)
BR (1) BR0109560A (en)
DE (1) DE60127955T2 (en)
ES (1) ES2284635T3 (en)
HU (1) HU229144B1 (en)
MX (1) MXPA02009511A (en)
WO (1) WO2001075470A1 (en)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090043506A1 (en) * 1997-10-22 2009-02-12 Intelligent Technologies International, Inc. Method and System for Controlling Timing of Vehicle Transmissions
US6301545B1 (en) * 1999-04-30 2001-10-09 Sirf Technology, Inc. Global positioning system tag system
US6701127B1 (en) * 1999-12-16 2004-03-02 General Dynamics Decision Systems, Inc. Burst communications method and apparatus
US6775802B2 (en) * 2000-08-08 2004-08-10 Qualcomm Incorporated Method, apparatus, and system for signal prediction
US6611756B1 (en) * 2000-08-10 2003-08-26 Lucent Technologies Inc. Method for predicting navigation information in a global positioning system
EP1184674A1 (en) * 2000-08-10 2002-03-06 Lucent Technologies Inc. A method of aligning predicted navigation information
US6678510B2 (en) * 2001-02-05 2004-01-13 Nokia Mobile Phones Ltd. Method, apparatus and system for GPS time synchronization using cellular signal bursts
JP4531333B2 (en) * 2001-02-06 2010-08-25 エヌエックスピー ビー ヴィ GPS signal despreading method
US7401272B1 (en) * 2001-03-09 2008-07-15 Pmc-Sierra, Inc. Apparatus and method for high speed sampling or testing of data signals using automated testing equipment
MXPA03008298A (en) * 2001-03-15 2004-02-17 Qualcomm Inc Time acquisition in a wireless position determination system.
US9052374B2 (en) 2001-07-18 2015-06-09 Fast Location.Net, Llc Method and system for processing positioning signals based on predetermined message data segment
US6882309B2 (en) * 2001-07-18 2005-04-19 Fast Location. Net, Llc Method and system for processing positioning signals based on predetermined message data segment
US7386326B2 (en) * 2001-09-04 2008-06-10 Texas Instruments Incorporated Programmable task-based co-processor
EP1446910B1 (en) * 2001-10-22 2010-08-11 Rambus Inc. Phase adjustment apparatus and method for a memory device signaling system
RU2300839C2 (en) 2001-11-20 2007-06-10 Квэлкомм Инкорпорейтед Relay station controlling return communication line capacity
US6748202B2 (en) * 2001-12-12 2004-06-08 Nokia Corporation Method, apparatus and system for synchronizing a cellular communication system to GPS time
US7574218B2 (en) * 2002-01-16 2009-08-11 Kyocera Wireless Corp. Systems and methods for transmitting global positioning system information
WO2003083501A1 (en) * 2002-03-28 2003-10-09 Nokia Corporation Determination of the transmission time of a signal part in a positioning system
US6944540B2 (en) 2002-03-28 2005-09-13 Motorola, Inc. Time determination in satellite positioning system receivers and methods therefor
WO2003084086A1 (en) * 2002-03-28 2003-10-09 Nokia Corporation Method for determining the correlation between a received beacon signal and a reconstructed signal
US6788663B2 (en) * 2002-05-03 2004-09-07 Qualcomm Inc System, method, and apparatus for generating a timing signal
US7831263B2 (en) * 2002-11-08 2010-11-09 Qualcomm Incorporated Apparatus and method for determining the location of a repeater
WO2005104573A1 (en) * 2004-04-05 2005-11-03 Qualcomm Incorporated Repeater that reports detected neighbors
FR2857102B1 (en) * 2003-07-04 2007-06-15 Nortel Networks Ltd METHOD FOR MEASURING THE RECEIVING TIME OF A RECEIVED RADIO SIGNAL, MEASURING DEVICE AND DEVICE FOR LOCATING A MOBILE STATION FOR CARRYING OUT THE METHOD
US6788249B1 (en) * 2003-07-23 2004-09-07 Snaptrack Incorporated System for setting coarse GPS time in a mobile station within an asynchronous wireless network
US8825194B2 (en) * 2003-12-18 2014-09-02 International Business Machines Corporation Global positioning system location information for an automated data storage library
US20050138071A1 (en) * 2003-12-18 2005-06-23 International Business Machines Corporation Accurate time information for the operation of an automated data storage library
US7447253B2 (en) * 2004-02-06 2008-11-04 Glocal Locate, Inc. Method and apparatus for processing satellite positioning system signals to obtain time information
KR101271876B1 (en) * 2004-03-23 2013-06-10 더 리젠트스 오브 더 유니이버시티 오브 캘리포니아 Apparatus and method for improving reliability of collected sensor data over a network
US9118380B2 (en) * 2004-04-05 2015-08-25 Qualcomm Incorporated Repeater with positioning capabilities
WO2006003673A1 (en) * 2004-07-05 2006-01-12 Accord Software & Systems Pvt. Ltd. Low gate count sequential multitap correlator
US7778596B2 (en) 2004-07-29 2010-08-17 Qualcomm Incorporated Airlink sensing watermarking repeater
US8364185B2 (en) * 2005-04-18 2013-01-29 Samsung Electronics Co., Ltd. Method and system for synchronizing a clock for an adjacent network to a clock for an overlay network
KR100594123B1 (en) * 2005-05-03 2006-06-28 삼성전자주식회사 Apparatus and method for receiving gps signal in mobile telecommunications terminal
US8542714B2 (en) * 2005-07-29 2013-09-24 U-Blox Ag Method and system for reconstructing time of transmit from assisted or weak signal GPS observations
US7348921B2 (en) 2005-09-19 2008-03-25 Trimble Navigation Limited GPS receiver using stored navigation data bits for a fast determination of GPS clock time
US7365681B2 (en) * 2005-09-19 2008-04-29 Trimble Navigation Limited GPS receiver having a prescribed time-of-entry into an operation mode
US7260026B1 (en) * 2006-11-06 2007-08-21 The Boeing Company Time-of-day tracking with INS input
KR100841356B1 (en) * 2006-11-29 2008-06-25 국방과학연구소 Apparatus and method for time check
US20090016167A1 (en) * 2007-07-09 2009-01-15 Seiko Epson Corporation Time Adjustment Device, Timekeeping Device with a Time Adjustment Device, and a Time Adjustment Method
JP5428167B2 (en) * 2007-07-09 2014-02-26 セイコーエプソン株式会社 Time correction device, time measuring device with time correction device, and time correction method
US7701390B2 (en) * 2007-07-09 2010-04-20 Seiko Epson Corporation Time adjustment device, timekeeping device with a time adjustment device, and a time adjustment method
JP5034749B2 (en) 2007-07-31 2012-09-26 セイコーエプソン株式会社 Time correction device, time measuring device with time correction device, and time correction method
JP4650467B2 (en) * 2007-09-26 2011-03-16 セイコーエプソン株式会社 Time correction device and timing device with time correction device
CN100449329C (en) * 2007-11-22 2009-01-07 民航数据通信有限责任公司 Data format conversion method fitting the need of broadcasting type automatic relevance monitoring message processing request
JP4488066B2 (en) * 2007-11-22 2010-06-23 セイコーエプソン株式会社 Satellite signal receiver and timing device
WO2009079380A2 (en) * 2007-12-14 2009-06-25 Magellan Systems Japan, Inc. Process for sub-microsecond time transfer using weak gps/gnss signals
US8116170B2 (en) * 2007-12-19 2012-02-14 Seiko Epson Corporation Timekeeping device and satellite signal reception method for a timekeeping device
US7936642B1 (en) * 2008-01-02 2011-05-03 Atheros Communications, Inc. High sensitivity GPS-assisted time source
US8331422B2 (en) 2008-02-28 2012-12-11 Magellan Systems Japan, Inc. Method and apparatus for acquisition, tracking, and transfer using sub-microsecond time transfer using weak GPS/GNSS signals
GB2459333A (en) * 2008-04-24 2009-10-28 Nordnav Technologies Ab Method of synchronizing a receiver with a signal transmitted by a remote transmitter on-board a satellite
US7932859B2 (en) * 2008-05-20 2011-04-26 Motorola Mobility, Inc. Method and apparatus for satellite positioning system time resolution
US7821450B1 (en) * 2008-05-21 2010-10-26 The United States Of America As Represented By The Secretary Of The Navy System and method for transmitting GPS signals over a network
US8036599B2 (en) * 2008-06-05 2011-10-11 Broadcom Corporation Method and system for a wireless headset with a clock
JP2009300274A (en) * 2008-06-13 2009-12-24 Casio Comput Co Ltd Gps receiver apparatus and information acquisition method thereof
JP4544351B2 (en) * 2008-07-17 2010-09-15 カシオ計算機株式会社 Time information acquisition device and radio clock
US7924224B2 (en) * 2008-08-15 2011-04-12 Trueposition, Inc. Variable coherence integration for the location of weak signals
CN102216801B (en) * 2008-09-17 2013-07-17 意法爱立信有限公司 A time reference system
JP4752916B2 (en) * 2009-01-15 2011-08-17 カシオ計算機株式会社 Time information acquisition device and radio clock
JP5272964B2 (en) 2009-08-18 2013-08-28 セイコーエプソン株式会社 Electronic clock
CN102033486B (en) 2009-09-25 2012-05-30 卡西欧计算机株式会社 Time information-acquiring apparatus and radio wave timepiece
US8587477B2 (en) * 2010-01-25 2013-11-19 Qualcomm Incorporated Analog front end for system simultaneously receiving GPS and GLONASS signals
US8018379B1 (en) 2010-01-25 2011-09-13 Qualcomm Atheros, Inc. Automatic gain control in system simultaneously receiving GPS and GLONASS signals
US8410979B2 (en) * 2010-01-25 2013-04-02 Qualcomm Incorporated Digital front end in system simultaneously receiving GPS and GLONASS signals
US8441398B2 (en) * 2010-02-03 2013-05-14 Texas Instruments Incorporated Receivers, circuits, and methods to improve GNSS time-to-fix and other performances
US8259012B2 (en) * 2010-04-14 2012-09-04 The Boeing Company Software GNSS receiver for high-altitude spacecraft applications
JP5901177B2 (en) * 2011-08-22 2016-04-06 株式会社メガチップス Positioning device, observation device and positioning method
US8922430B2 (en) 2011-12-22 2014-12-30 Trueposition, Inc. Optimization of variable coherence integration for the location of weak signals
CN103197534B (en) * 2012-01-06 2017-07-11 中兴通讯股份有限公司 Time calibrating method and device
JP5447598B2 (en) * 2012-07-03 2014-03-19 セイコーエプソン株式会社 Time correction device, time measuring device with time correction device, and time correction method
US20140192793A1 (en) * 2013-01-04 2014-07-10 Qualcomm Incorporated Systems and methods for hierarchical time source usage in near-me area network discovery and synchronization
US9439040B2 (en) 2014-08-15 2016-09-06 Wensheng Hua System and method of time of flight detection
EP3301481B1 (en) * 2016-09-29 2023-02-15 Siemens Aktiengesellschaft Code archive for replika-pseudorandom noise codes
JP6702246B2 (en) * 2017-03-22 2020-05-27 カシオ計算機株式会社 Satellite radio receiver, electronic clock, date and time acquisition method and program
US10707984B2 (en) * 2017-07-14 2020-07-07 Qualcomm Incorporated Techniques for synchronizing slave devices
US11483691B2 (en) 2018-03-13 2022-10-25 Cypress Semiconductor Corporation Time of arrival estimation for Bluetooth systems and devices
EP3908854A4 (en) * 2019-01-07 2022-11-02 Regulus Cyber Ltd. Detection and mitigation of satellite navigation spoofing
CN109991839B (en) * 2019-04-08 2020-09-18 北京控制工程研究所 Satellite timing method based on satellite clock drift iterative estimation
CN111726793B (en) * 2020-06-17 2021-07-30 翱捷科技股份有限公司 Timing deviation compensation method and device and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4014166A (en) * 1976-02-13 1977-03-29 The United States Of America As Represented By The Secretary Of Commerce Satellite controlled digital clock system
US4872164A (en) * 1987-09-04 1989-10-03 Ant Nachrichtentechnik Gmbh Method and arrangement for compensating shifts in delay produced by the doppler effect in bursts in a TDMA frame
WO1998025158A1 (en) * 1996-12-04 1998-06-11 Snaptrack, Inc. Method and apparatus for determining time for gps receivers
US5798732A (en) * 1996-09-19 1998-08-25 Trimble Navigation Limited GPS receiver having a fast time to first fix
US5812087A (en) * 1997-02-03 1998-09-22 Snaptrack, Inc. Method and apparatus for satellite positioning system based time measurement

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5225842A (en) 1991-05-09 1993-07-06 Navsys Corporation Vehicle tracking system employing global positioning system (gps) satellites
US5319374A (en) 1993-02-02 1994-06-07 Trimble Navigation Limited Precise universal time for vehicles
US5917444A (en) * 1995-05-22 1999-06-29 Trimble Navigation Ltd. Reduction of time to first fix in an SATPS receiver
GB2301725B (en) * 1995-05-31 2000-02-02 Gen Electric A reduced-power GPS-based system for tracking multiple objects from a central location
US5736960A (en) 1995-09-19 1998-04-07 Northrop Grumman Corporation Atomic clock augmented global positioning system receivers and global positioning system incorporating same
DE69637755D1 (en) * 1995-10-09 2009-01-02 Snaptrack Inc GPS RECEIVER AND METHOD FOR PROCESSING GPS SIGNALS
US5663735A (en) 1996-05-20 1997-09-02 Trimble Navigation Limited GPS receiver using a radio signal for improving time to first fix
US6151353A (en) * 1996-07-12 2000-11-21 General Electric Company Pre-acquisition frequency offset removal in a GPS receiver
US5893044A (en) * 1997-01-21 1999-04-06 Motorola Inc. Real time clock apparatus for fast acquisition or GPS signals
JP3717133B2 (en) * 1997-02-20 2005-11-16 松下電器産業株式会社 GPS receiver
KR100570315B1 (en) * 1997-10-22 2006-04-12 캠브리지 포지셔닝 시스템스 리미티드 Positioning system for digital telepho ne networks
JP3223351B2 (en) * 1997-10-22 2001-10-29 日本無線株式会社 GPS receiver
JP3629152B2 (en) * 1998-09-07 2005-03-16 日本無線株式会社 Positioning method in GPS receiver

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4014166A (en) * 1976-02-13 1977-03-29 The United States Of America As Represented By The Secretary Of Commerce Satellite controlled digital clock system
US4872164A (en) * 1987-09-04 1989-10-03 Ant Nachrichtentechnik Gmbh Method and arrangement for compensating shifts in delay produced by the doppler effect in bursts in a TDMA frame
US5798732A (en) * 1996-09-19 1998-08-25 Trimble Navigation Limited GPS receiver having a fast time to first fix
WO1998025158A1 (en) * 1996-12-04 1998-06-11 Snaptrack, Inc. Method and apparatus for determining time for gps receivers
US5812087A (en) * 1997-02-03 1998-09-22 Snaptrack, Inc. Method and apparatus for satellite positioning system based time measurement

Also Published As

Publication number Publication date
MXPA02009511A (en) 2003-06-30
CN100377507C (en) 2008-03-26
KR20030012857A (en) 2003-02-12
JP5646575B2 (en) 2014-12-24
JP2013050461A (en) 2013-03-14
HU229144B1 (en) 2013-09-30
DE60127955D1 (en) 2007-05-31
KR100489843B1 (en) 2005-05-17
EP1287375B1 (en) 2007-04-18
CN1422384A (en) 2003-06-04
ES2284635T3 (en) 2007-11-16
WO2001075470A1 (en) 2001-10-11
AU5108501A (en) 2001-10-15
US6346911B1 (en) 2002-02-12
HUP0300338A2 (en) 2003-06-28
AU2001251085B2 (en) 2005-06-09
BR0109560A (en) 2004-06-22
ATE360221T1 (en) 2007-05-15
DE60127955T2 (en) 2008-01-17
EP1287375A1 (en) 2003-03-05
JP2003529776A (en) 2003-10-07

Similar Documents

Publication Publication Date Title
US6346911B1 (en) Method and apparatus for determining time in a GPS receiver
AU2001251085A1 (en) Determining time in a GPS receiver
EP1979760B1 (en) An unassisted indoor gps receiver
EP1825289B1 (en) Method and apparatus for increasing coherent integration length while receiving a positioning signal
EP2093584B1 (en) Processing received satellite radio signals
WO2003081977A2 (en) Time determination in satellite positioning system receivers and methods therefor
CA2436977C (en) Methods and apparatuses for processing of global positioning system signals with a matched filter
JP2005508502A (en) Method and apparatus for receiving a global positioning system signal using a cellular acquisition signal
WO2000049737A1 (en) Gps signal acquisition method and system
US8284818B2 (en) Spread spectrum transmission systems
KR100663899B1 (en) Enhanced GPS receiver using communication link
EP1293797A1 (en) Method and electronic device for performing positioning
US7161533B2 (en) Method and a system for positioning, and an electronic device
KR100678143B1 (en) Apparatus and method for synchronization of base station and reference clock of mobile terminal using global positioning system in mobile communication system
EP1365254A1 (en) A method of aligning predicted navigation information
US6714159B1 (en) Method for performing positioning and an electronic device

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20021030

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

RIC1 Information provided on ipc code assigned before grant

Ipc: 7G 01S 5/14 A

A4 Supplementary search report drawn up and despatched

Effective date: 20030327

17Q First examination report despatched

Effective date: 20030710

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: G01S 1/00 20060101ALI20060920BHEP

Ipc: G01S 5/14 20060101AFI20060920BHEP

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CH

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070418

Ref country code: LI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070418

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REF Corresponds to:

Ref document number: 60127955

Country of ref document: DE

Date of ref document: 20070531

Kind code of ref document: P

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070718

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070918

ET Fr: translation filed
REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2284635

Country of ref document: ES

Kind code of ref document: T3

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070418

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070418

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070418

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20080121

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070719

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20080331

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20080331

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070418

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20080329

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070418

REG Reference to a national code

Ref country code: GB

Ref legal event code: 732E

Free format text: REGISTERED BETWEEN 20110127 AND 20110202

REG Reference to a national code

Ref country code: DE

Ref legal event code: R081

Ref document number: 60127955

Country of ref document: DE

Owner name: MOTOROLA MOBILITY, INC. ( N.D. GES. D. STAATES, US

Free format text: FORMER OWNER: MOTOROLA, INC., SCHAUMBURG, US

Effective date: 20110324

Ref country code: DE

Ref legal event code: R081

Ref document number: 60127955

Country of ref document: DE

Owner name: MOTOROLA MOBILITY, INC. ( N.D. GES. D. STAATES, US

Free format text: FORMER OWNER: MOTOROLA, INC., SCHAUMBURG, ILL., US

Effective date: 20110324

Ref country code: DE

Ref legal event code: R081

Ref document number: 60127955

Country of ref document: DE

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC, MOUNTAIN VIEW, US

Free format text: FORMER OWNER: MOTOROLA, INC., SCHAUMBURG, ILL., US

Effective date: 20110324

REG Reference to a national code

Ref country code: FR

Ref legal event code: TP

Owner name: MOTOROLA MOBILITY, INC., US

Effective date: 20110912

REG Reference to a national code

Ref country code: NL

Ref legal event code: TD

Effective date: 20111229

Ref country code: NL

Ref legal event code: SD

Effective date: 20111229

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 16

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 17

REG Reference to a national code

Ref country code: NL

Ref legal event code: PD

Owner name: MOTOROLA MOBILITY LLC; US

Free format text: DETAILS ASSIGNMENT: CHANGE OF OWNER(S), CHANGE OF LEGAL ENTITY; FORMER OWNER NAME: MOTOROLA MOBILITY, INC.

Effective date: 20170331

REG Reference to a national code

Ref country code: NL

Ref legal event code: PD

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC; US

Free format text: DETAILS ASSIGNMENT: CHANGE OF OWNER(S), ASSIGNMENT; FORMER OWNER NAME: MOTOROLA MOBILITY, INC.

Effective date: 20170626

REG Reference to a national code

Ref country code: GB

Ref legal event code: 732E

Free format text: REGISTERED BETWEEN 20170831 AND 20170906

REG Reference to a national code

Ref country code: FR

Ref legal event code: CD

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC, US

Effective date: 20171214

Ref country code: FR

Ref legal event code: TP

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC, US

Effective date: 20171214

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 18

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 60127955

Country of ref document: DE

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

Ref country code: DE

Ref legal event code: R081

Ref document number: 60127955

Country of ref document: DE

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC, MOUNTAIN VIEW, US

Free format text: FORMER OWNER: MOTOROLA MOBILITY, INC. ( N.D. GES. D. STAATES DELAWARE ), LIBERTYVILLE, LLL., US

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20200327

Year of fee payment: 20

Ref country code: DE

Payment date: 20200327

Year of fee payment: 20

Ref country code: FI

Payment date: 20200327

Year of fee payment: 20

Ref country code: NL

Payment date: 20200326

Year of fee payment: 20

Ref country code: IT

Payment date: 20200323

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20200325

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: ES

Payment date: 20200401

Year of fee payment: 20

REG Reference to a national code

Ref country code: DE

Ref legal event code: R071

Ref document number: 60127955

Country of ref document: DE

REG Reference to a national code

Ref country code: NL

Ref legal event code: MK

Effective date: 20210328

REG Reference to a national code

Ref country code: FI

Ref legal event code: MAE

REG Reference to a national code

Ref country code: GB

Ref legal event code: PE20

Expiry date: 20210328

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20210328

REG Reference to a national code

Ref country code: ES

Ref legal event code: FD2A

Effective date: 20211029

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20210330

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230511