1. Field of the Invention
The present invention relates to signal correlators for digital signal receivers and, more particularly, to a method and apparatus processing satellite positioning system signals in a mobile receiver.
2. Description of the Background Art
Global Positioning System (GPS) receivers use measurements from several satellites to compute position. GPS receivers normally determine their position by computing time delays between transmission and reception of signals transmitted from satellites and received by the receiver on or near the surface of the earth. The time delays multiplied by the speed of light provide the distance from the receiver to each of the satellites that are in view of the receiver.
More specifically, each GPS signal available for commercial use utilizes a direct sequence spreading signal defined by a unique pseudo-random noise (PN) code (referred to as the coarse acquisition (C/A) code) having a 1.023 MHz spread rate. Each PN code bi-phase modulates a 1575.42 MHz carrier signal (referred to as the L1 carrier) and uniquely identifies a particular satellite. The PN code sequence length is 1023 chips, corresponding to a one millisecond time period. One cycle of 1023 chips is called a PN frame or epoch.
GPS receivers determine the time delays between transmission and reception of the signals by performing a series of correlations between the incoming signals and internally generated PN signal sequences (also referred to as reference codes or PN reference codes). For each incoming signal, the correlation process can be lengthy, as both the time delay and the exact frequency of the signal are unknown. To test for the presence of a signal, the receiver is tuned to a particular frequency, and the incoming signal is correlated with the PN reference code having a particular code shift corresponding to a time delay. If no signal is detected, the PN reference code is shifted and the correlation is repeated for the next possible time delay. To find a given signal, receivers traditionally conduct a two dimensional search, checking each delay possibility over a range of frequencies. In addition, each individual correlation is typically performed over one or more milliseconds in order to allow sufficient signal averaging to distinguish the signal from the noise. Because many thousands frequency and time delay possibilities are checked, the overall acquisition process can take tens of seconds.
The measured time delays produced by the correlation process are referred to as “sub-millisecond pseudoranges”, since they are known modulo the 1 millisecond PN frame boundaries. By resolving the integer number of milliseconds associated with each measured time delay, then one has true, unambiguous pseudoranges. A set of four pseudoranges together with knowledge of absolute times of transmission of the GPS signals and satellite positions in relation to these absolute times is sufficient to solve for the position of the GPS receiver. The absolute times of transmission (or reception) are needed in order to determine the positions of the GPS satellites at the times of transmission and hence to compute the position of the GPS receiver.
Accordingly, each of the GPS satellites broadcasts a model of satellite orbit and clock data known as the satellite navigation message. The satellite navigation message is a 50 bit-per-second (bps) data stream that is modulo-2 added to the PN code with bit boundaries aligned with the beginning of a PN frame. There are exactly 20 PN frames per data bit period (20 milliseconds). The satellite navigation message includes satellite-positioning data, known as “ephemeris” data, which identifies the satellites and their orbits, as well as absolute time information (also referred to herein as “GPS time” or “time-of-day”) associated with the satellite signal. The absolute time information is in the form of a second of the week signal, referred to as time-of-week (TOW). This absolute time signal allows the receiver to unambiguously determine a time tag for when each received signal was transmitted by each satellite.
In some GPS applications, the signal strengths of the satellite signals are so low that either the received signals cannot be processed, or the time required to process the signals is excessive. Detecting attenuated signals requires each correlation to be performed over a relatively long period of time. For example integration may be performed over a few seconds, as opposed to the 1-10 millisecond period used in traditional GPS receivers. The two dimensional sequential search process employed by traditional receivers becomes impractical at such long integration times, because the overall search time increases by a factor of 100 or more. Moreover, the pseudoranges measured by the process may be inaccurate, since the receiver performs the correlations at a coarse spacing, such as one-half chip, for example.
To accelerate the search process, GPS designers add additional correlators to the receiver so that multiple time delay possibilities can be checked simultaneously. Typically, each correlator that is added requires a separate code mixer and signal accumulator. For a given sensitivity level, this decreases search times in proportion to the number of correlators. To achieve the sensitivity and acquisition time demanded in low signal-to-noise ratio environments, the design might have to incorporate many thousands of correlators. This addition is typically prohibitively complex and expensive for a consumer class device.
Therefore, there exists a need in the art for improved, low cost processing of satellite positioning system signals in a mobile receiver.
A method and apparatus for processing a satellite positioning system signal is described. In one embodiment, a timing reference related to a satellite positioning system time of day is obtained from a wireless communication signal received by a mobile receiver. A bias in a local clock of the mobile receiver with respect to a frame timing of a repeating code broadcast by the satellite is compensated for in response to the timing reference. An expected code delay window is obtained for the satellite positioning system signal at the mobile receiver. The satellite positioning system signal is correlated with a reference code within the expected code delay window. The timing reference allows the mobile receiver to substantially compensate for the local clock bias associated with correlator circuitry used to measure code delays to satellite positioning signals. In one embodiment, the timing reference is combined with expected pseudorange data to determine the expected code delay window over which the satellite signals are correlated. In another embodiment, the timing reference is further compensated to account for the distance of the mobile receiver from a wireless base station.
In another embodiment, an expected code delay window is obtained at the mobile receiver. The mobile receiver selects a sampling resolution in response to a size of the expected code delay window. The satellite positioning system signal is sampled at the selected sampling resolution. The sampled satellite positioning system signal is correlated with a reference code. In one embodiment, a higher sampling resolution is selected when the size of the code delay window satisfies a threshold, which enables more accurate code delay measurements.
So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures.
A method and apparatus for processing a satellite positioning system signal in a mobile receiver is described. Those skilled in the art will appreciate that the invention may be used with various types of mobile or wireless devices that are “location-enabled,” such as cellular telephones, pagers, laptop computers, personal digital assistants (PDAs), and like type wireless devices known in the art. Generally, a location-enabled mobile device is facilitated by including in the device the capability of processing satellite positioning system (SPS) satellite signals.
Satellite navigation data, such as ephemeris for at least the satellites 112, may be collected by a network of tracking stations (“reference network 114”). The reference network 114 may include several tracking stations that collect satellite navigation data from all the satellites in the constellation, or a few tracking stations, or a single tracking station that only collects satellite navigation data for a particular region of the world. An exemplary system for collecting and distributing ephemeris is described in commonly-assigned U.S. Pat. No. 6,411,892, issued Jun. 25, 2002, which is incorporated by reference herein in its entirety. The reference network 114 may provide the collected satellite navigation data to the server 108. Upon request, the server 108 may transmit satellite trajectory data (e.g., ephemeris, almanac, or some other satellite trajectory model) to the mobile receiver 102. Alternatively, the mobile receiver 102 may receive satellite trajectory data (e.g., ephemeris, almanac, or some other satellite trajectory model) via a communications network 115 (e.g., a computer network, such as the Internet). Notably, the satellite trajectory data may comprise a long term satellite trajectory model, as described in commonly-assigned U.S. Pat. No. 6,560,534, issued May 6, 2003, which is incorporated by reference herein in its entirety.
In one embodiment, the mobile receiver 102 sends the satellite measurement data to the server 108 along with a time-tag. The server 108 receives satellite navigation data for at least the satellites 112 from the reference network 114. The server 108 locates position of the mobile receiver 102 using the satellite measurement data and the satellite navigation data (referred to as the mobile station assisted or “MS-assisted” configuration). In another embodiment, the mobile receiver 102 obtains satellite trajectory data from either the server 108 or the communications network 115. The mobile receiver 102 locates its own position using the satellite measurement data and the trajectory data (referred to as the mobile station based or “MS-based” configuration). In yet another embodiment, the mobile receiver 102 may locate its own position by decoding satellite navigation message from the satellite signals, rather than receiving the satellite trajectory data from an external source (referred to as the autonomous configuration).
In any configuration, the mobile receiver 102 may use satellite signal acquisition assistance data (“acquisition assistance data”) to assist in acquiring satellite signals and obtaining satellite measurement data. Acquisition assistance data may be computed using satellite trajectory data (e.g., ephemeris or other satellite trajectory model) and an approximate position of the mobile receiver 102. An approximate position of the mobile receiver 102 may be obtained using various position estimation techniques known in the art, including use of transitions between base stations of the wireless communication network 110, use of a last known location of the mobile receiver 102, use of a location of the base station 109 in communication with the mobile receiver 102, use of a location of the wireless communication network 110 as identified by a network ID, or use of a location of a cell site of the wireless communication network 110 in which the mobile receiver 102 is operating as identified by a cell ID.
The acquisition assistance data includes expected pseudorange data. In one embodiment of the invention, the acquisition assistance data includes expected pseudoranges from the satellites 112 to an assumed position of the mobile receiver 102 (approximate position) at an assumed time-of-day. The expected pseudoranges may be computed using the satellite trajectory data. The details of such computations are well known in the art and, for purposes of clarity, are not repeated herein. The expected pseudoranges may be computed by the server 108 and transmitted to the mobile receiver 102 upon request. Alternatively, if the mobile receiver 102 has obtained satellite trajectory data, the mobile receiver 102 may compute the expected pseudoranges.
In one embodiment, the expected pseudoranges are derived from a model that is valid over specified period of time (“pseudorange model”). The mobile receiver 102 may apply a time-of-day to the pseudorange model to extract appropriate expected pseudorange parameters. Exemplary processes for forming pseudorange models as acquisition assistance data are described in commonly-assigned U.S. Pat. No. 6,453,237, issued Sep. 17, 2002, which is incorporated by reference herein in its entirety. A pseudorange model may be formed by the server 108 and transmitted to the mobile receiver 102 upon request. Alternatively, if the mobile receiver 102 has obtained satellite trajectory data, the mobile receiver 102 may form the pseudorange model.
In one embodiment, the acquisition assistance data may be formatted as described in ETSI TS 101 527 (3GPP TS 4.31), which is shown below in Table 1. Notably, the acquisition assistance data defined in 3GPP TS 4.31 may include a satellite vehicle identifier (SVID), zeroth and first order Doppler terms, a Doppler uncertainty, an expected code phase (e.g., sub-millisecond pseudorange), an integer code phase, a code phase search window, and expected azimuth and elevation data. The range of possible values and associated resolutions are shown for each of the parameters.
The server 108 illustratively comprises an input/output (I/O) interface 104, a central processing unit (CPU) 124, support circuits 106, and a memory 120. The CPU 124 is coupled to the memory 120 and the support circuits 106. The memory 120 may be random access memory, read only memory, removable storage, hard disc storage, or any combination of such memory devices. The support circuits 106 include conventional cache, power supplies, clock circuits, data registers, I/O interfaces, and the like to facilitate operation of the server 108. The I/O interface 104 is configured to receive satellite navigation data from the reference network 114. The I/O interface 104 is also configured for communication with the wireless communication network 110. Various processes and methods described herein may be implemented using software 122 stored in the memory 120 for execution by the CPU 124. Alternatively, the server 108 may implement such processes and methods in hardware or a combination of software and hardware, including any number of processors independently executing various programs and dedicated hardware, such as application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), and the like.
The base station 109 is configured to broadcast a time synchronization signal to enable the mobile receiver 102 to synchronize to the base station 109 as a first step in establishing communication with the wireless communication network 110. The time synchronization signal includes a timing message that is related to GPS time. The timing message may be related absolutely to GPS time (e.g., the timing message may be a system time message) or may be related to a sub-millisecond portion of GPS time (e.g., the timing message may be a frame number and information relating the frame number to GPS time). In either case, information from the time synchronization signal may be used to establish a timing reference for the mobile receiver 102.
For example, the base station 109 may employ a separate synchronization channel for broadcasting a time message that contains the system time relative to timing markers in the synchronization channel. The system time may be equivalent to GPS time or may have some known relationship to GPS time. The mobile receiver 102 may derive the system time from the time synchronization signal and determine a timing reference related to GPS time. The timing reference may be used to calibrate clock circuits within the mobile receiver 102, or may be used to establish a time offset between such clock circuits and GPS time. In one embodiment, the timing reference is further compensated to account for the distance of the mobile receiver 102 from the base station 109. This compensation makes use of a measurement of the round trip signal delay between base station 109 and the mobile receiver 102. In this manner, the mobile receiver 102 may be synchronized to GPS time.
An exemplary cellular communication network that employs such a timing synchronization signal is the North American CDMA (code division multiple access) standard (IS-95). The IS-95 system employs a separate 26.67 millisecond synchronization channel that is spread using a PN sequence of 215 chips. Additionally, the synchronization channel is modulated with a particular Walsh code, allowing it to be separated from paging and traffic channels using different Walsh codes. The synchronization channel carries a message containing a time of day relative to the frame boundaries of the synchronization channel (“CDMA system time”). The CDMA system time is precisely related to GPS time. In one embodiment, to accurately determine GPS time from the CDMA system time, the CDMA time obtained from the synchronization channel is adjusted to remove an offset that is added by the delay in the transmission of the CDMA system time from the base station 109 to the mobile receiver 102. This adjustment is made by measuring the round-trip delay for a signal being transmitted from the mobile receiver 102 to the base station 109 and back. The synchronization channel structure for the IS-95 CDMA system is well known in the art. For purposes of clarity by example, aspects of the invention are described with respect to an IS-95 CDMA system. It is to be understood, however, that the invention may be used with other types of synchronized cellular communication networks that provide time synchronization signals, such as CDMA-2000, W-CDMA, and the like.
The present invention may also be used with non-synchronized cellular communication systems that include a mechanism for relating a non-synchronized system time to GPS time, such as global system for mobile communication (GSM), universal mobile telecommunications system (UMTS), North American time division multiple access (TDMA) (e.g., IS-136), and personal digital cellular (PDC) networks. For example, in a GSM system, the time synchronization signal comprises a synchronization burst periodically transmitted by the base station 109 and a timing message that provides a GSM time stamp associated with the synchronization burst. In some GSM networks, GSM time is not synchronized to GPS time. However, such networks may include location measurement units (LMUs). As is well known in the art, an LMU includes a GPS receiver, which is used to receive and decode time information (TOW) from the satellites in view of one or more base stations. The LMU then computes an offset value between GPS time and the time as known by the base station(s) that are near the LMU (“air-interface timing”). The offset is provided to the base station(s) for use in relating the air-interface timing to GPS time. Notably, the base station 109 may transmit an offset between its air-interface timing and GPS time to the mobile receiver 102. For example, the offset may be supplied to the mobile receiver 102 as part of an acquisition assistance data exchange as defined in 3GPP TS 4.31
As described below, the invention may synchronize to the frame timing of the PN codes broadcast by the GPS satellites using the timing reference derived from a time synchronization signal of a wireless network. This allows the mobile receiver 102 to substantially compensate for the local clock bias associated with the correlator circuitry used to measure the code delays. Then, using expected pseudorange data, the mobile receiver 102 may derive an expected code delay window over which the satellite signals may be correlated. In this manner, the invention substantially reduces the time required to detect the satellite signals, as well as increases the accuracy of the satellite measurement data.
The processor 206 may comprise a microprocessor, instruction-set processor (e.g., a microcontroller), or like type processing element known in the art. The processor 206 is coupled to the memory 210 and the support circuits 208. The memory 210 may be random access memory, read only memory, removable storage, hard disc storage, or any combination of such memory devices. The support circuits 208 include conventional cache, power supplies, clock circuits, data registers, I/O interfaces, and the like to facilitate operation of the mobile receiver 102. Various processes and methods described herein may be implemented using software 211 stored in the memory 210 for execution by the processor 206. Alternatively, the mobile receiver 102 may implement such processes and methods in hardware or a combination of software and hardware, including any number of processors independently executing various programs and dedicated hardware, such as ASICs, FPGAs, and the like.
Notably, in an IS-95 CDMA compatible environment, the wireless transceiver 204 detects a pilot channel of a nearby base station (e.g., the base station 109 of
GPS signals are received by the antenna 116. The front end 302 filters, amplifies, and frequency shifts the GPS signals in a well-known manner for digitization by the A/D converter 304. Outputs of the A/D converter 304 are respectively coupled to each of the processing channels 306. The receiver interface 305 includes a bus configured to communicate with external circuitry (e.g., the processor 206), and a bus configured to communicate with each of the processing channels 306.
Each of the processing channels 306 comprises a tuner 308, a carrier numerically controlled oscillator (NCO) 310, a decimation circuit 312, a code NCO 314, correlator circuitry 316, a PN code generator 318, accumulation circuitry 320, correlation results memory 322, and control logic 324. Each of the processing channels 306 may be used to process a signal from a particular satellite. The tuner 308 is driven by the carrier NCO 310 to digitally tune a particular satellite signal. The tuner 308 may serve two purposes. First, the tuner 308 may remove any intermediate frequency component remaining after processing by the front end 302. Second, the tuner 308 may compensate for any frequency shift resulting from satellite motion, user motion, and reference frequency errors. The tuner 308 outputs baseband signal data comprises an in-phase component (I) and a quadrature component (Q).
The decimation circuit 312 processes the I and Q data from the tuner 308 to produce a series of complex signal samples with I and Q components in accordance with a sampling rate determined by the code NCO 314. In general, the sampling rate of the decimation circuit 312 may be selected to produce P samples per chip of the satellite signal PN code, where P is an integer greater than zero. In this manner, the GPS receiver 202 may operate in multiple modes of resolution. For example, in a standard resolution mode, the decimation circuit 312 may produce digital signal samples have two samples per PN code chip (i.e., the samples are spaced at ½ of a PN code chip or P=2). In a high-resolution mode, the decimation circuit 312 may produce digital signal samples having five samples per PN code chip (i.e., the samples are spaced at ⅕ of a PN code chip or P=5). Those skilled in the art will appreciate that other values for the sample spacing may be employed and that the GPS receiver 202 may operate in more than two modes of resolution.
The correlator circuitry 316 processes the I and Q samples from the decimation circuit 312. The correlator circuitry 316 correlates the I and Q signals with an appropriate PN code generated by the PN code generator 318 for the particular satellite signal. An exemplary embodiment of the correlator circuitry 316 is described below with respect to
The coherent integration interval is limited by several factors, including uncompensated Doppler shift, 180 degree phase transitions caused by the navigation data bits, and phase shifts induced by motion of the mobile receiver 102. These factors introduce slow, but seemingly random phase variations into the signals. Over many tens of milliseconds, these phase changes cause destructive interference that defeats the purpose of coherent integration. Thus, to achieve long averaging intervals, the accumulation circuitry 320 may perform a secondary step of magnitude accumulation (also referred to as non-coherent integration).
The carrier NCO 310, the code NCO 314, the correlator circuitry 316, and the accumulation circuitry 320 are controlled by the control logic 324. The control logic 324 may receive various configuration parameters via the receiver and channel interfaces 305 and 326 (e.g., parameters generated by a processing device, such as the processor 206 in the mobile receiver 102). For example, the configuration parameters may include one or more of the desired tuning frequency of the carrier NCO 310, the desired mode of resolution for the decimation circuit 312 (e.g., standard resolution mode or high-resolution mode), the desired coherent and non-coherent integration periods, and the desired timing reference and code delay window data for the correlator circuitry. Alternatively, one or more of such configuration parameters may be generated by the control logic 324. The control logic 324 may implement the desired mode of resolution through control of the code NCO 314. For a detailed understanding of the GPS receiver 202 and the components discussed above, the reader is referred to commonly-assigned U.S. Pat. No. 6,704,348, issued Mar. 9, 2004, which is incorporated by reference herein in its entirety.
In one embodiment, the sync tracking circuit 407 receives a reference signal that provides a timing reference related to GPS time (e.g., a reference signal derived from a time synchronization signal of a cellular network). As described above, the reference signal may be used to precisely track GPS time, typically to within a few microseconds. The correlator clock 406 may comprise a free-running (i.e., non-synchronized) clock. The sync tracking circuit 407 keeps track of the offset (error) between the reference signal and the timing of the correlator clock 406. The sync tracking circuit 407 supplies an offset signal to the code delay control circuit 405. In this manner, the code delay control circuit 405 can account for any error in the timing of the correlator clock 406. In another embodiment, the correlator clock 406 may comprise a steerable clock circuit. Rather than employing the sync tracking circuit 407, the timing of the correlator clock 406 may be directly controlled using the reference signal. In general, a bias in the correlator clock 406 with respect to the frame timing of the satellite PN codes is compensated for using the reference signal.
With the compensation of local clock bias, the code delay control circuit 405 may correctly center an expected code search window in order to detect the incoming signal. The expected code search window is formed using the expected pseudorange data. Notably, a sub-millisecond portion of the expected pseudorange data relates to the expected code phase offset at which the PN reference code and the incoming signal will be aligned. As is well known in the art, the particular one of the correlators 402 having the input signal and PN reference code aligned will have a high correlation output with respect to all other correlators 402. The adder 404 sums I and Q correlation results, which are supplied to the accumulation circuitry 320.
The correlation response 501 illustratively includes a peak 508 at a time delay 510. The time delay 510 corresponds to the time delay of the PN reference code that results in the greatest alignment with the incoming signal samples. As is apparent from the graph 500, the more samples per chip (i.e., the higher the resolution), the more accurate the time delay measurement becomes. For example, a resolution of two samples per chip provides a sample spacing 509 of approximately 500 nanoseconds, which corresponds to a range difference of 150 meters. A resolution of five samples per chip provides a sample spacing 509 of approximately 200 nanoseconds, which corresponds to a range difference of 60 meters. Thus, it is clear that an increase in resolution provides for a more accurate delay measurement and hence a more accurate pseudorange measurement.
Referring to
If the code delay window 512 is known before correlation begins, then the correlators 402 may compute only the correlations within the code delay window 512. As described below, the invention advantageously employs an expected code delay window and a timing reference related to GPS time to time the correlation process such that the correlators 402 compute only the correlations within the code delay window 512. In this manner, since only a subset of the full convolution is computed at once for each processed code epoch, either the number of correlators 402 may be reduced or the sampling resolution may be increased, as desired, depending upon the accuracy, power consumption, and circuit size constraints.
At optional step 606, the mobile receiver 102 may select a resolution mode. In one embodiment, the mobile receiver 102 may select a resolution mode for a particular channel of the GPS receiver based on the size of an expected code delay window with respect to a predefined threshold. The predefined threshold may be determined in accordance with hardware limitations (e.g., the number of correlators per channel in the GPS receiver). The resolution mode may be selected on a channel-by-channel basis. For example, if a given expected code delay window is less than 110 chips, than a particular channel in the GPS receiver may be configured in a high-resolution mode (e.g., 110 chips at five I samples and five Q samples per chip). Otherwise, the particular channel may be configured in a normal resolution mode.
At step 608, satellite signals are received and sampled by the mobile receiver 102. The satellite signals are sampled at a sampling resolution set by the mobile receiver 102. At step 610, a timing reference is derived from a time synchronization signal in the external aiding data. At step 612, a correlator clock bias within the mobile receiver 102 is compensated for using the timing reference. Without the timing reference, the timing of the correlator circuitry within the mobile receiver 102 is arbitrary relative to the timing of the satellite PN codes, which yields an unknown local clock bias. Since the timing reference is related to GPS time, the correlator clock bias may be estimated or the correlator clock may be substantially synchronized to the frame timing of the satellite PN codes. In this manner, an uncertainty component of the measured time delay caused by an unknown relative timing of the correlator circuitry is substantially reduced or eliminated. It is to be understood, however, that the timing reference may not be completely accurate. To achieve the best accuracy, the delay between the mobile receiver 102 and the base station 109 may be taken into account, as discussed above (e.g., a round-trip travel time between the mobile receiver 102 and the base station 109 may be measured when deriving the timing reference). A remaining uncertainty component of the measured time delay is related to the unknown pseudorange and any error in the timing reference with respect to GPS time.
At step 614, expected code delay windows for satellites of interest are derived from the external aiding data. The expected code delay windows account for the uncertainty component of the measured time delay related to the unknown pseudorange. Notably, the expected code delay window is based on an expected pseudorange for each satellite of interest. At step 616, each satellite signal of interest is correlated with the appropriate PN reference code within the appropriate expected code delay window derived at step 614. Since the correlator clock bias is compensated, and expected code delay windows have be determined, the mobile receiver 102 may correlate over substantially less than a full epoch of the PN code. As discussed above, this allows the mobile receiver 102 to employ less correlators and/or increase the sampling resolution. At step 618, the correlation results produced at step 616 may be analyzed to measure sub-millisecond pseudoranges to the satellites of interest. The sub-millisecond pseudoranges may be used to locate position of the mobile receiver 102 in a well known manner. The method 600 ends at step 620.
In the preceding discussion, the invention has been described with reference to application upon the United States Global Positioning System (GPS). It should be evident, however, that these methods are equally applicable to similar satellite systems, and in particular, the Russian GLONASS system, the European GALILEO system, combinations of these systems with one another, and combinations of these systems and other satellites providing similar signals, such as the wide area augmentation system (WAAS) and SBAS that provide GPS-like signals. The term “GPS” used herein includes such alternative satellite positioning systems, including the Russian GLONASS system, the European GALILEO system, the WAAS system, and the SBAS system, as well as combinations thereof.
While the foregoing is directed to illustrative embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.
This application is a continuation of U.S. patent application Ser. No. 12/388,316, filed Feb. 18, 2009 and is a divisional patent application of and claims priority to co-pending U.S. patent application Ser. No. 10/838,517 filed May 4, 2004. U.S. patent application Ser. No. 10/838,517 is a continuation-in-part of the following U.S. patent applications: (1) U.S. patent application Ser. No. 10/295,332, filed Nov. 15, 2002, which is a continuation of U.S. patent application Ser. No. 09/990,479, filed Nov. 21, 2001 (now U.S. Pat. No. 6,487,499), which is a continuation of U.S. patent application Ser. No. 09/553,930, filed Apr. 21, 2000 (now U.S. Pat. No. 6,453,237), which claims priority to U.S. provisional patent application No. 60/130,882, filed Apr. 23, 1999; (2) U.S. patent application Ser. No. 10/359,468, filed Feb. 5, 2003, which is a continuation of U.S. patent application Ser. No. 09/989,625, filed Nov. 20, 2001 (now U.S. Pat. No. 6,587,789), which is a divisional of U.S. patent application Ser. No. 09/615,105, filed Jul. 13, 2000 (now U.S. Pat. No. 6,411,892); (3) U.S. patent application Ser. No. 10/665,703, filed Sep. 19, 2003, which is a divisional of U.S. patent application Ser. No. 09/900,499, filed Jul. 6, 2001 (now U.S. Pat. No. 6,704,348), which is a continuation-in-part of U.S. patent application Ser. No. 09/861,086, filed May 18, 2001 (now U.S. Pat. No. 6,606,346); (4) U.S. patent application Ser. No. 09/993,335, filed Nov. 6, 2001. Each of the aforementioned patent applications, patents, and provisional application are incorporated by reference herein in their entireties.
Number | Date | Country | |
---|---|---|---|
60130882 | Apr 1999 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10838517 | May 2004 | US |
Child | 12388316 | US | |
Parent | 09900499 | Jul 2001 | US |
Child | 09993335 | US | |
Parent | 09615105 | Jul 2000 | US |
Child | 09861086 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12388316 | Feb 2009 | US |
Child | 12869879 | US | |
Parent | 09990479 | Nov 2001 | US |
Child | 10295332 | US | |
Parent | 09989625 | Nov 2001 | US |
Child | 09990479 | US | |
Parent | 09553930 | Apr 2000 | US |
Child | 09615105 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10665703 | Sep 2003 | US |
Child | 10838517 | US | |
Parent | 10359468 | Feb 2003 | US |
Child | 10665703 | US | |
Parent | 10295332 | Nov 2002 | US |
Child | 10359468 | US | |
Parent | 09993335 | Nov 2001 | US |
Child | 09989625 | US | |
Parent | 09861086 | May 2001 | US |
Child | 09900499 | US |