Title of Invention

A METHOD AND APPARATUS FOR SEARCHING FOR POSITION DETERMINATION SIGNALS USING A PLURALITY OF SEARCHING MODES

Abstract A method of and system for searching for position determination signals using a plurality of progressively more sensitive search modes comprising a first level. . mode, a second mode, and at least one higher level mode. If any of the search window parameters exceed prescribed limits, a first level search is performed, and the search window parameters are refined responsive to the ensuing search results so they are within the prescribed limits. Then, the second level search is performed, and measurements derived from the ensuing search results. If the measurements satisfy selected measurement sufficiency criteria, additional searching within the position fix attempt is avoided. If the measurements do not satisfy the selected measurement sufficiency criteria, a higher level, more sensitive search is performed.
Full Text

PROCEDURE FOR SEARCHING FOR POSITION DETERMINATION SIGNALS USING A PLURALITY OF
•SEARCH MODES
Field of the Invention
[0001] This invention relates to the fields of position determination and GPS geo-
location systems, and, more specifically, to procedures for searching for position determination signals using search modes with varying sensitivity and time to fix.
Related Art
[0002] The GPS geo-location system is a system of earth orbiting satellites from
which entities visible to the satellites are able to determine their position. Each of the satellites transmits a signal marked with a repeating pseudo-random noise (PN) code of 1,023 chips uniquely identifying the satellite. The 1,023 chips repeat every millisecond. The sienal is also modulated with data bits, where each data bit has a 20 ms duration in the modulated sienal.
[0003] Figure 1 illustrates an application of the GPS geo-location system, whereby a
subscriber station 100 in a wireless communications system receives transmissions from* satellites 102a, 102b, 102c, 102d visible to the station, and derives time measurements from four or more Of the transmissions. The station provides the measurements to position determination entity fPDE) 104, which determines the position of the station from the measurements. Alternatively, the subscriber station 100 may determine its own position from this information.
[0004] The subscriber station 100 searches for a transmission from a particular
satellite bv correlating the PN code for the satellite with a received sisnal. The received signal is typically is a composite of transmissions from one or more satellites visible to the station's receiver in the presence of noise. The correlation is performed over a range of code phase hypotheses known as the code phase search window Wcp, and over a range of Doppler frequency hypotheses known as the Doppler search window WDOpp. The code phase hypotheses are typically represented as a range of PN code shifts, and the Doppler frequency hypotheses are typically represented as Doppler frequency bins.

[0005] Each correlation is performed over an integration time I which may be
expressed as the product of Nc and M, where Nc is the coherent integration time, and M is number of coherent integrations which are non-coherently combined. [0006] For a particular PN code, the correlation values are associated with the corresponding PN code shifts and Doppler bins to define a two-dimensional correlation function. Any peaks of the correlation function are located, and compared to a predetermined noise threshold. The threshold is selected so that the false alarm probability, the probability of falsely detecting a satellite transmission, is at or below a predetermined value. A time measurement for the satellite is derived from the location of the earliest non-sidelobe peak along the code phase dimension which equals or exceeds the threshold. A Doppler measurement for the subscriber station may be derived from the location of the earliest non-sidelobe peak along the Doppler frequency dimension which equals or exceeds the threshold.
[0007] Current subscriber station architectures place significant constraints on the process .of searching for position determination signals. In a shared RF architecture, for example, core RF circuitry in the subscriber station is shared between the GPS position determination receive path and the voice/data communication transmit and receive paths. Accordingly, the time during which the subscriber station performs the GPS position determination function interferes with the ability of the subscriber station to perform the voice/data communication function. To reduce this interference to acceptable levels, the GPS frequency tune time, i.e., the time during which the subscriber station is tuned to the GPS frequency to perform the GPS position determination function, is typically limited to a prescribed period, e.g., 1 or 2 seconds.
[0008] Due to constraints such as this, and the wide dynamic range typically exhibited by GPS position determination signals, it is difficult to perform the search for position determination signals in the allotted time and still achieve an accurate position fix. If the search is performed within the prescribed time period, the resulting position fix is often inaccurate. If the search fix is performed accurately, the allotted time if often exceeded.

SUMMARY OF THE INVENTION
[0009] A method is described of searching for position determination signals using *
a plurality of progressively more sensitive search modes. In a first embodiment, the plurality of search modes comprises, in order of increasing sensitivity, a first level mode, a second level mode, and at least one higher level mode. In this embodiment, the method begins by determining whether any of the search window parameters exceed prescribed limits. If so, a first level search is performed, and the search window parameters are refined based on the resulting search results so that they are within the prescribed limits. If none of the search window parameters exceed the prescribed limits, the first level search is avoided.
[0010] A second level search is then performed as part of a position fix attempt.
Measurements are derived from the ensuing search results. If the measurements satisfy one or more selected measurement sufficiency criteria, additional searching within the position fix attempt is avoided.
[0011] If the measurements do not satisfy the one or more selected measurement
sufficiency criteria, a higher level search beyond the second level is conducted. In one
embodiment, a selection is made between a third level and a fourth level search based on
prescribed selection criteria. In one implementation, if the criteria are satisfied, the third
level search is conducted, and if the criteria are not satisfied, the fourth level search is
conducted. ' "
[0012] In a second embodiment, the plurality of search modes comprises, in order of
increasing sensitivity, a first level mode, a second level mode, and a third level mode. In this embodiment, the method begins by performing a first level search as part of a position fix attempt.
s
[0013] Then, one or more measurements are derived from the ensuing search
results. It is determined whether the measurements satisfy one or more selected measurement sufficiency criteria.
[0014] If the measurements satisfy the one or more selected measurement
sufficiency criteria, additional searching within the position fix attempt is avoided.
[0015] If the measurements do not satisfy the one or more selected measurement
sufficiency criteria, a higher level search beyond the first level is performed. In this

embodiment, the higher level search is either a second level or a third level search based on one or more prescribed selection criteria.
[0016] Memories tangibly embodying the foregoing methods are also described.
Similarly, systems related to the foregoing methods are described.
BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The components in the figures are not necessarily to scale, emphasis instead
being placed upon illustrating the principles of the invention. In the figures, like reference
numerals designate corresponding parts throughout the different views.
[0018] Figure 1 is a diagram of a GPS geo-location system.
[0019] Figure 2 is a flowchart of an embodiment of a method according to the
invention of searching for position determination signals using a plurality of progressively more sensitive search modes.
[0020] Figure 3 illustrates an example of a polygon formed from measurements
resulting from a level 1 search.
[0021] Figure 4 is a flowchart of an implementation example of a method according
to the invention of searching for position determination signals using a plurality of ■ progressively more sensitive searches comprising, in order of increasing sensitivity, level 0, level 1, level 2, and level 3 search modes.
[0022] Figures 5 is a flowchart of the level 0 search in the implementation example
of Fi sure 4.
[0023] Figure 6 is a flowchart of the level 1 search in the implementation example
of Figure 4.
[0024] Figure 7 is a flowchart of the level 2 search in the implementation example
of Figure 4.
[0025] Figure 8 is a flowchart of the level 3 search in the implementation example
of Figure 4,
[0026] Figure 9 is a flowchart of the measurement sufficiency criteria employed in
the level 1 search of Figure 6.
[0027] Figure 10 is a flowchart of the level 2/level 3 selection criteria employed in the implementation example of Figure 4.

[002S] Figure 11 is a table identifying the parameters governing the level 0, level 1,
level 2, and level 3 search modes in the implementation example of Figure 4.
[0029] * Figures 12A-12B illustrate a segmentation procedure employed in the
implementation example of Figure 4, whereby the two-dimensional domain to be
searched for a GPS satellite is divided into a plurality of segments, each characterized by
a range of Doppler frequencies and a range of code phases.
[0030] Figure 13 is a block diagram of an embodiment of a system according to the
invention for searching for position determination signals using a plurality of
progressively more sensitive search modes.
[0031] Figure 14 is a block diagram of an embodiment of a subscriber station
embodying or incorporating the system of Figure 13.
DETAILED DESCRIPTION
[0032] As utilized herein, terms such as i4about" and "substantially" are intended to
-allow some leeway in mathematical exactness to account for tolerances that are acceptable in the trade. Accordingly, any deviations upward or downward from the value modified by the terms "about" or "substantially" in the range of 1% to 20% should be considered to be explicitly within the scope of the stated value.
[0033] Moreover, as used herein, the term "software" includes source* code,
assembly language code, binary code, firmware, macro-instructions, micro-instructions, or the like, or any combination of two or more of the foregoing.
[0034] Furthermore, the term "memory" refers to any processor-readable medium.
including but not limited to RAM, ROM, EPROM. PROM, EEPROM, disk, floppy disk, hard disk, CD-ROM, DVD, or the like, or any combination of two or more of the foregoing, on which may be stored a scries of software instructions executable by a processor.
[0035] The terms "processor" or "CPU" ;-jfer to any device capable of executing a
series of instructions and includes, without limitation, a general- or special-purpose microprocessor, finite state machine, controller, computer, digital signal processor (DSP), or the like.

[0036] The tenn "space vehicle" and the abbreviation "SV" both mean a GPS
satellite.
[0037] Figure 2 is a flowchart of an embodiment of a method according to the
invention of searching for position determination signals using a plurality of progressively
■ more sensitive search modes comprising, in order of increasing sensitivity, a level 0
mode, a level 1 mode, and at least one higher level mode. This particular embodiment
and the related implementation illustrated in Figures 4-10, grew out of the timing
constraints imposed by a shared RF architecture on the time during which the subscriber
station is allowed to tune to the GPS frequency, but it should be appreciated that the
invention is not limited to this, and encompasses applications to duaJ RF (non-shared)
architectures which do not impose such constraints.
[0038] In one example, the method is performed by an entity whose position is
sought to be determined, such as a subscriber station in an IS-S01 compliant wireless communications system. A PDE provides to the subscriber station acquisition assistance (AA) indicating which SVs are likely to be visible to the station. These SVs form a set NTOT- In a second example, AA is unavailable, and the set NTOT consists of all SVs in the GPS geo-location system. In a third example, the subscriber station has access to a recent almanac as well as an approximate measure of time and coarse knowledge of its own position. From this information, the subscriber station predicts which SVs are visible to it. These SVs form the set NTOT in this example.
[0039] Each of the SVs in the set NTOT is associated with search window parameters
defining the two-dimensional domain of code phase and Doppler frequency hypotheses to be searched for the SV. In one implementation, illustrated in Figure 12A, the search window parameters for an SV comprise a code phase search window size, WIN_S1Z£CP. a code phase window center, WIN_CENTcp, a Doppler search window size, WIN_S1ZEDOPP» and a Doppler window center, WIN_SIZEDOPP- In the case where the entity whose position is sought to be determined is a subscriber station in an 1S-801 compliant wireless communication system, these parameters are indicated by acquisition assistance provided to the subscriber station by the PDE.
[0040] The method begins with step 202, which comprises determining whether any of the search window parameters exceed prescribed limits. In one embodiment, step 202 '

comprises determining whether any of the search windows for an SV in the set NTOT
exceed prescribed size limits. That might occur, for example, if a new base station is
* added to a network without being added to the PDE base station almanac. A PDE in this
situation providing AA to subscriber stations serviced by the base station sets the code
phase search window size for all SVs to the maximum value of 1,023 chips. A code
phase search window of this magnitude might cause a time out condition during the level
1 search- The purpose of step 202 in this example is to determine which, if any, of the
SVs are associated with search windows that could cause a time out condition,
[0041] If any of the search window parameters exceed prescribed limits, step 204 is
performed. Step 204 comprises performing a level 0 search. In one example, the level 0 search is performed only for those SVs in the set NTOT whose code phase search window size exceeds a predetermined threshold.
[0042] Step 206 follows step 204. In step 206, the search window parameters are
refined based on the ensuing search results so that they are within the prescribed limits. In one example, where only the SVs whose code phase window sizes exceed a predetermined threshold are searched, this step comprises locating the maximum peak for a given PN code, modifying the window center so it is located at the peak, and reducing the window size so a search for the SV can be accommodated through a single pass through the correlator. This step may also involve re-centering and reducing the size of the Doppler frequency search window.
[0043] From step 206, the method performs step 208, which comprises conducting a
level 1 search as part of a position fix attempt. The level 1 search is a more sensitive
search compared to the level 0 search. Accordingly, in one implementation, the
integration time used to conduct this search exceeds that of the level 0 search.
[0044] From step 208? the method proceeds to step 210. In step 210, measurements
are derived from the ensuing search results. In one example, the measurements comprise a signal to noise ratio (SNR) and code phase (*:me) for each of the discernable peaks. In one implementation example, the SNR which i> derived is the peak carrier signal to noise ratio (C/No).
[0045] From step 210, the method proceeds to inquiry step 212. In step 212, it is
determined whether the measurements resulting from the level 1 search satisfy one or

more selected measurement sufficiency criteria. If the measurements satisfy the one or
more selected measurement sufficiency criteria, additional searching within the position
fix attempt is avoided.
[0046] If the measurements do not satisfy the one or more selected measurement
sufficiency criteria, step 214 is performed. In step 214, a higher level search for position
determination signals is performed. The higher level search is a more sensitive search
than the level 1 search. Accordingly, the integration time employed in this search is
longer than that employed in the level 1 search.
[0047] In one implementation, inquiry step 212 begins by comparing the SNR
measurements from the level 1 search to a first noise threshold Tj. The noise threshold T]
is determined so that the false alarm probability is below a predetermined level. The SVs
which exceed the noise threshold Tj form a set N.
[0048] The SNR measurements from the level 1 search are also compared to a
second, stronger threshold T2 The SVs which exceed the threshold T? form the set S.
The set S' is defined as the SVs in the set NTOT but excluding S.
[0049] In one e'xample, the higher level search is avoided if |S|, the number of SVs
in the set S, equals |NTOT|> the number of SVs in the set NTOT, indicating that all SVs -
searched for satisfy the stronger threshold To.
[0050] In a second example, a polygon is constructed from the measurements for
the SVs in the set N. For each of these SVs, a vector is formed from the satellite azimuth
angle and peak carrier signal to noise ratio (C/No). The vectors are oriented in a
coordinate system. The endpoints of the vectors are connected to define a polygon. In
this implementation, the second search is avoided if the area A of the polygon equals or
exceeds a threshold AT-
[0051] Figure 3 illustrates an example of a polygon defined by the five vectors
300a, 300b, 300c, 300d, and 300e. Each of these vectors represents or corresponds to a
measurement. More specifically, the angle between the vector and the vertical axis is the
azimuth angle for the SV, and the magnitude of the vector is the peak carrier signal to
noise ratio (C/No). The endpoints of the vectors are identified with numerals 302a, 302b,
302c, 302d, and 302e. The polygon which is defined by these endpoints is identified with

numeral 306. The area of this polygon, which is determined using known techniques, is used in the above comparison.
[0052] In a third'example, the higher level search is avoided if |N|, the number of
SVs in the set N. equals or exceeds a threshold NEE.
[0053] . In a fouith example, the peak carrier signal to noise ratio (C/No) for each of the SVs in the set N is summed. The higher level search is avoided if this sum equals or exceeds a predetermined threshold.
[0054] In a fifth example, a combination of any two or more of the foregoing is
employed to determine if the higher level search is to be avoided.
[0055] Figure 4 illustrates an implementation example of a method of searching for
position determination signals using a plurality of progressively more sensitive search
modes. In this implementation example, the entity whose position is sought to be
determined is a subscriber station in an 1S-SOI compliant wireless communication system.
[0056] The search modes which are employed in this example comprise, in order of
increasing sensitivity, a level 0 mode, a level 1 mode, a level 2 mode, and a level 3 mode. In one example, the parameters governing each of these modes is illustrated in Figure 11. As can be seen, in this example, the total integration time utilized in mode 0 is 20 ms, consisting of one 20 ms coherent integration; the total integration time utilized in mode 1 is 80 ms, consisting of four 20 ms coherent integrations non-coherently combined; the total integration time utilized in mode 2 is 8S0 ms, consisting of 44 20 ms coherent integrations non-coherently combined; and the total integration time utilized in mode 3 is 1760 ms, consisting of 22 80 ms coherent integrations non-coherently combined. Since sensitivity is proportional to total integration time, the sensitivity of the modes also successively increases. In the example illustrated, the sensitivity of mode 0 is 31.0 dB-Hz; the sensitivity of mode 1 is 26.4 dB-Hz; the sensitivity of mode 2 is 19.2 dB-Hz; and the sensitivity of mode 3 is 15.45 dB-H2,
[0057] The method begins with step 402. In this step, the subscriber station obtains
acquisition assistance from a PDE for each of the SVs in the set NTOT- This acquisition assistance indicates for each such SV a code phase window size, a code phase window center, a Doppler frequency window size, and a Doppler frequency window center. Note that sensitivity assistance, although available, is not requested at this time because of the

large overhead involved, and since sensitivity assistance is not required for coherent
integration times of 20 ms or less (as utilized in the level 0, 1, and 2 search modes).
[0058] The method then proceeds to step 404. In step 404, an inquiry is made
whether any of the SVs in the set NTOT have code phase window sizes which exceed a predetermined threshold.
[0059] In one configuration, the predetermined threshold is set to identify those SVs
whose code phases axe such that the SVs cannot be searched through a single pass through the correlator. Consider, for example, a correlator having eight (8) parallel channels with a capacity of 32 chips for each channel, and several chips of overlap between the channels. An SV can be searched with a single pass through the correlator if the code phase search window is less than or equal to about 200 chips, a figure which is derived by subtracting overhead due to overlap between channels from 256 chips, the assumed nominal capacity of the correlator. Therefore, in this configuration, the SVs whose code phase windows exceed 200 chips are searched in the level 1 search. It should be appreciated, however, that this threshold is highly implementation dependent, and will thus vary depending on the implementation.
[0060] In step 404, if none of the SVs in the set NTOT have code phase windows
which exceed the predetermined threshold, the method jumps to step 40S. If any of these
SVs have code phase windows which exceed the threshold, step 406 is performed. In step
406, the method comprises performing a level 0 search in relation to each of the SVs in
the set NTOT whose code phase search window exceeds the threshold.
[0061] For each SV searched in the level 0 search, the maximum peak in the
resulting correlation function is located. The code phase window center for the S V is then
set to the code phase associated with the maximum peak for the SV. The code phase
window size for the SV is also reduced such that the SV can be detected again using a
sincle sesment search. The assistance data from anv SV that is not detected in the level 0
search is deleted such that these SVs are not searched at subsequent search levels.
[0062] From step 406, the method proceeds to step 408. In step 408, the method
performs a level 1 search in relation to all the SVs in the set NTOT- In this step, selected measurement sufficiency criteria are also applied to measurements derived from the

search results, and a flag sei if the selected measurement sufficiency criteria are met.
These measurement sufficiency criteria will be explained later in relatroirto Figure 9.
[0063] As part of step 408, the measurements resulting from the level 1 search are
classified into three categories: strong, weak, and none. In one example, this classification is performed using thresh-holding. A first threshold Ti is used to identify peaks which are in the weak category, and a second, more stringent threshold T2 is used to identify peaks which are in the strong category. The SVs in the weak category form a set N, and the SVs in the strong category form a set S. The set S' is the SVs in the set NTOT except for those SVs in the set S. Note that similar thresh-holding is also performed in the level 2 and 3 searches, and that the set S may be augmented if a strong peak is identified in either of these searches which was not previously identified in the level 1 search.
[0064] In one configuration, illustrated in the table of Figure 11, the threshold Tj
applied in mode 1 to identify weak peaks is 25.0 dB-Hz. In this configuration, the threshold To'varies with'one of three time-to-fix vs. accuracy/sensitivity options selected by the user. More specifically, the threshold T2 for the first, second, and third options is respectively set to 29.4 dB~Hz, 32.4 dB-Hz, and oo. The latter refers to a setting which is so large that the threshold T? will never be satisfied.
[0065] Step 410 follows step 408. In step 410, the flag indicating the status of the
application of the selected measurement sufficiency criteria in step 408 is checked. If set, indicating satisfaction of the selected measurement sufficiency criteria, the method proceeds to step 420. In step 420, the measurements resulting from the level 1 search are reported to the PDE. which determines the position of the subscriber station based thereon. Alternatively, the subsenber station determines its own position from these measurements. If not set, indicating lack of satisfaction of the selected measurement sufficiency criteria, the method jumps to step 412.
[0066] In step 412. the method applies predetermined selection criteria to determine
whether a level 2 or a level 3 search should be performed.^These selection criteria will be explained later in relation to Figure 10. If level 2 is selected, the method proceeds with step 414. If level 3 is selected, the method jumps to step 416.

[0067] In step 414, a level 2 search is performed for those SVs in the set S\ The
SVs in the set S are not searched since acceptable measurements are considered to have
been obtained for these SVs in the level 1 search. From step 414, the method proceeds to
step 420. In step 420, the measurements from the level 2 search, and any level 1
measurements for SVs in the set S, are reported to the PDE. In response, the PDE
determines the position of the subscriber station from these measurements. Alternatively,
the subscriber station determines its own position from these measurements.
[0068] In step 416, the subscriber station requests sensitivity assistance from the
PDE in order to account for bit phase changes that occur within the 80 ms coherent
integration time employed in the level 3 search. As discussed, this step is deferred until
now to avoid incurring the overhead of sensitivity assistance in the case when a level 3
search is not required or selected.
[0069] From step 416, the method proceeds to step 418. In step 418, the method
performs a level 3 search for those SVs in the set S'. Again, the SVs in the set S are not
searched since acceptable measurements were obtained for these SVs in the level 1
search.
[0070] Step 420 follows step 418. In step 420, the measurements from the level 3
search, and any level 1 measurements for SVs in the set S, are reported to the PDE. In
response, the PDE determines the position of the subscriber station. Alternatively, the
subscriber station determines its own position from these measurements.
[0071] Figure 5 illustrates the tasks or substeps which underlie the level 0 search,
block 406. in Figure 4. In task 502, those SVs in the set NTQT whose code phase window
size exceeds a predetermined threshold are identified. In one example, discussed earlier.
the predetermined threshold is 200 chips, but it should be appreciated that this threshold is
highly implementation dependent, and that other values are possible depending on the.
implementation.
[0072] In task 504, one of these SVs is selected, and in task 506, the code phase
window for the selected SV is enlarged if necessary so that the code phase search space
for the SV comprises an integral number of slices. For purposes of this disclosure, a slice
is the code phase space which can be searched through a single pass through the
correlator. In one example, where the correlator comprises 8 parallel channels, each

having a capacity of 32 chips, the size of a slice is 256 chips. In this example, the code phase is increased to account for a 4 chip overlap between adjacent segments, and is then further enlarged and re-centered until a total of K*8 segments are implied, where K is an integer. Again, however, it should be appreciated this example is implementation dependent, and that other examples are possible.
[0073] Task 508 follows task 506. In task 508, the search space for the SV is divided up into segments to accommodate a level 0 search. Figures 12A and 12B illustrate this segmentation procedure in more detail.
[0074] Figure 12A illustrates the two-dimensional search space for an SV. In this example, the code phase axis is the horizontal axis, and the Doppler frequency axis is the vertical axis, but this assignment is arbitrary and could be reversed. The center of the code phase search window is referred to as WIN_CENTcp> and the size of the code phase search window is referred to as WIN_SIZEcp. The center of the Doppler frequency search window is referred to as WIN_CENTDOPP, and the size of the Doppler frequency search window is referred to as WIN_SIZEDOPP-
[0075] The search space is divided up into a plurality of segments 1202a, 1202b, 1202c, each of which is characterized by a range of Doppler frequencies and a range of code phases. In one example, illustrated in the table of Figure 11, the range of frequencies associated with a segment is ± 250 Hz for the level 0, 1, and 2 search modes, and is ± 62.5 Hz for the level 3 search mode, and the range of code phases associated with a segment is 32 chips. In this particular example, the range of frequencies characterizing a segment is divided up into 20 bins, and the range of code phases characterizing a segment is divided into 64 bins.
[0076] The range of code phases characterizing a segment is advantageously equal to the capacity of a channel ol the correlator. That way, the segment can be searched through a single channel pass. In one example where the channel capacity is 32 chips, the range of code phases characterizing a segment is likewise 32 chips, but it should be appreciated that other examples are possible.
[0077] The segments advantageously overlap by a prescribed number of chips in order to avoid missing peaks that appear at segment boundaries. Figure 12B illustrates the overlapping which is typically employed. As illustrated, the tail end of segment 1202a

overlaps the front end of segment 1202b by A chips, and the tail end of segment 1202b
likewise overlaps the front end of segment 1202c by A chips. Because of the overhead
due to this overlap, the effective range of code phases represented by a segment is
typically less than the channel capacity. In the case where the overlap is 4 chips, for
example, the effective range of code phrases represented by a segment is 28 chips.
[0078] Turning back to Figure 5, in task 508, the search phase space for the SV is
divided up into segments in preparation for a level 0 search, and the segments are queued. Then, task 510 is performed. In task 510, it is determined whether any additional SVs are present in the set NTOT whose search widows exceed the predetermined threshold. If so, the method loops back to step 504 for another pass through tasks 504, 506, and 508. If not, the method proceeds with step 512. Through performance of tasks 504, 506, 508, and 510, it can be seen that the search space-for each SV whose code phase search window exceeds the predetermined threshold is divided up into segments which are queued in preparation for a level 0 search.
[0079] In task 512, the level 0 Search is performed by adjusting the segment code
phase and Doppler window parameters to account for the time elapsed between the time
of the assistance data and the time the level 0 search is performed, and then processing the
segments through the correlator. Again, in one example, where the correlator comprises
eight parallel channels, the segments are processed through the correlator eight segments
at a time, but it should be appreciated that other examples are possible. The integrations
are performed by the correlator in accordance with the level 0 integration parameters.
Advantageously, these parameters emphasize speed rather than sensitivity. In one
example, the integration parameters for the level 0 search comprise, as set forth in the
table of Figure 11, a single coherent integration of 20 ms. Accordingly, the level 0 search
will typically only detect the strongest signals. . ' '
[0080] Task 514 follows 512. In task 514, the code phase and Doppler frequency bin associated with the strongest peak associated with each SV which is searched is retained. Task 516 loops back to task 512 until all the queued segments have been searched. Advantageously, all the segments are searched within a fraction of a single GPS frequency tune time, but it should be appreciated that it is possible that multiple GPS frequency tune times may be required to search through all the segments..

[0081] After a]] the segments have been searched, task 518 is performed. In task
518, the strongest peak for each SV that was searched is compared to a mode 0-deiection
threshold. In one example, illustrated in the table of Figure 11, the mode 0 detection
threshold is 29.8 dB-Hz. If the strongest peak for an SV falls below the threshold, the
acquisition data for the SV, i.e., the search window sizes and centers, is nulled out, thus
ensuring that the SV will not be further searched or reported. That is desirable since these
SVs represent those SYs with large search windows which could not be reduced through
the level 0 search. Thus, it is important to eliminate these SVs from the class of SVs
which are searched to avoid time out conditions and the like.
[00S2] Task 520 follows task 518. In task 520, for each of the surviving SVs, i.e.,
those SVs whose strongest peak exceeds the level 0 threshold, the center of the code
phase window for the SV is located at the peak, and the window size is reduced so that
the peak can be found through a sinele pass of a scement through the correlator.
Moreover, the 0th order Doppler is modified to be that of the center frequency of the
Doppler bin where the max peak is located.
[O0S3] Once task 520 has been completed, the level 0 search is completed.
[0084] Figure 6 illustrates the tasks which underlie the level 1 search, block 408, of
Figure 4. In task 602, an SV in the set NTOT« whose acquisition assistance data is still
intact, and which may have been modified through the level 0 search, is selected.
[0085] Task 604 is then performed. In task 604, the code phase search window for
the SV is enlarged to account for code drift over time. In one example, an enlargement of
4 chips is implemented.
[0086] Task 606 follows task 604. In task 606, the search space for the SV is
divided up into segments in preparation for a level 1 search, and the segments queued. In
one example, as illustrated in Figure i 1. a segment for a level 1 search is characterized bv
a ±250 Hz range of Doppler frequencies, divided up into 20 bins, and a range of 32 chips.
divided up into 64 bins.
[0087] In task 60S. an inquiry is made whether there are additional SVs with intact
acquisition data which need to be searched in level 1. If so, the method loops back to task
602. If not. the method proceeds with task 610. Through tasks 602 and 608, tasks 604

and 606 are performed for each of the SVs in the set NTOT whose acquisition data is intact aftef performance of the level 0 search.
[0088] In task 610, all the queued level 1 segments are processed through ihe
correlator. In one example, the segments are processed through the correlator eight at a
time, but it should be appreciated'that other examples are possible.
[0089] Task 612 is then performed. In task 612, a Max Peak algorithm is
performed. In accordance with this algorithm, the strongest peak for each SV searched in the level 1 search is retained.
[0090] Task 614 follows task 612. In task 614, an inquiry is made whether there are
additional level 1 segments to process. If so, the method loops back to task 610. If not, the method proceeds with task 616. Task 614 causes the method to iterate through tasks 610 and 612 until all level 1 segments have been processed.
[0091] The integration time underlying the level 1 search emphasizes speed rather
than sensitivity, but does so to a lesser extent than the level 0 search. In one example, the
level 1 integration time is, as illustrated in Figure 11, SO ms, comprising four 20 ms
coherent integrations which are non-coherently combined. Advantageously, due to the-
level 1 integration parameters, and the reduction in search windows achieved through the
level 0 search, all level 1 segments are processed in a single GPS frequency tune period.
[0092] Task 616 is then performed. In task 616, the SVs searched in the level 1
search* are divided into three categories, strong, weak, and none. In one example, the classification is performed through thresh-holding. If the strongest peak found for the SV exceeds a threshold Tj, the SV is placed in the weak category. If the strongest peak found for the SV exceeds a second stronger threshold T2. the SV is placed in the strong category'. In one example, as illustrated in Figure 11, the threshold Ti is 25.0 dB-Hz. The threshold To, as indicated previously, varies with a time-to-fix vs. accuracy/sensitivity option selected by the user. In one configuration, one of three options are possible; the threshold T2 for the first, second, and third options is respectively set to 29.4 dB-Hz, 32.4 dB-Hz. and x. The latter refers to a setting which is so large that the threshold T2 will never be satisfied.

[0093] The SVs in ihe weak category define a set N, and the SVs in the strong
category define a set S. The .set S" cojnprises those SVs in the set NTOT excluding those
SVs in the set S. " *
[0094] Task 618 follows task 616. In task 618, the peaks in the strong and weak
categories are analyzed to ensure they are not due to cross-correlation. The analysis performed to detect peaks due to cross-correlation is conventional, and need not be detailed here.
[0095] Task 620 is then performed. In task 620, if a peak in the strong or weak
category is determined to be due to cross-correlation, the peak is reclassified to the None category, i.e., treated as though it did not satisfy the Tj threshold.
[0096] Task 622 is then performed. In task 622, it is determined whether the
measurements derived from the level 1 search results satisfy one or more selected measurement sufficiency criteria. Task 624 is then performed. In task 624. if the level 1 measurements satisfy the one or more selected measurement sufficiency criteria, task 626 is performed. In task 626. a flag is set indicating that a level 2 or 3 search is not required. - In task 624, if the level ! measurements fail to satisfy the one or more selected measurement sufficiency criteria, task 628 is performed.
[0097] The specific substeps underlying tasks 622 and 624 are illustrated in Figure
9. In substep 906? |S|, the number of SVs in the set S and therefore the.sttong category, is
compared to |NTOT|, the number of SVs in the set NTOT. If |S| equals |NTOT|, indicating that
all SVs in the set NTOT are in *he strong category, the method proceeds to task 626.
whereby the flag is set indicating that a level 2 or 3 search is not required.
[0098] If |Sj does not equal }NTOTJ, substep 904 is performed. In substep 904. the
polygon described earlier in relation to Figure ? is formed from the measurements for the SVs in the set N. and the area A of this polygon is determined.
[0099] Inquiry substep 906 follows substep 904. In inquiry subsiep 906, the area A
of the pohgon is compared to a threshold ;
[0100] In one example, the threshold area AT and the threshold number NEE v^ry
with the time-to-fix vs. accuracy/sensitivity threshold selected by the user. In one configuration, the threshold ajea AT for the first, second, and third options is respectively set to 4 x 10 , 6 x 10 , and x>. The latter refers to a setting which so large that the threshold is never satisfied. In addition, the threshold number NEE for the first, second and third options is respectively set to 4, 5, and GO. Again, the latter refers to a setting which is so large that the threshold is never satisfied.
[0101] Turing back to Figure 6, task 62S is performed if the level 1 measurements
fail to satisfy the one or more selected measurement sufficiency criteria. In task 628, a list of the strong and weak peaks, and the measurements derived there-from, such as the Doppler and code phase bin containing the peak, and the peak carrier signal to noise ratio (C/No) for the peak, is retained. This list is used in the subsequent level 2 or 3 search to detect peaks due to cross-correlation.
[0102] Task 630 is then performed. In task 630, the acquisition data for the SVs
corresponding to the vveak..peaks. i.e., those in the set N, is adjusted so that the peak can be located through a single search segment. Accordingly, the code phase window is re-centered on the code phase where the peak is found, and the size of the code phase window is reduced to 28 chips. Similarly, the Doppler window size is reduced to 25 Hz. and the 0lh order Doppler is modified to be that of the interpolated frequency where the peak is found.
[0103] Task 632 is then performed. In task 632, a flag is set indicating that a level 2
or 3 is required. The level 1 search then concludes.
[0104] Figure 10 illustrates the substeps underlying task 412, in which a level 2 or 5
search is selected. In inquiry substep 1002. }N|, the number of SVs in the set N, is compared with a second threshold number NV If |N| exceeds NE, a jump is made to block 414. and a level 2 search is performed. Otherwise, the method proceeds with inquiry substep 1004.
[0105] In one example, the second threshold number NE varies with the time-to-fix
vs. accuracy/sensitivity option selected by the user. In one configuration, the value of NE for the first, second and third options is respectively set to 5, 5, and oo. The latter indicates a setting which is so large that the threshold is never satisfied.

luiuoj m inquiry subsiep 1004, an estimate test is made of the time required to
performed a level 3 search on the SVs in the set S\ This time is compared with the
maximum time tmax which is remaining in the current GPS position location session. If t^
exceeds tni3X, indicating there is insufficient time to conduct a level 3 search in the current
session, the method proceeds to task 414 of Figure 4. Otherwise, the method proceeds
with task 416.
[0107] In one example, the time tmax is based on quality of service considerations.
In a second example, involving a PDE-initiated or mobile-terminated search, such as that
stemming from a 911 call by a subscriber station in an 1S-SO1 compliant system, t^ is
the Preferred Response Quality (PRQ) value specified by the PDE. In a third example,
for a mobile-initiated search, such as that involving an Internet geography-based search
initiated by the subscriber station, tmax is assigned by the subscriber station.
[0108] Figure 7 illustrates the tasks underlying the level 2 search, block 414, of
Figure 4. In task 702, an SV in the set S", i.e., those SVs previously classified as being
within the weak or None categories, is selected.
[0109] Task 704 follows task 702. In task 704, the code phase window for the
selected SV is increased to accommodate overlapping of segments between adjacent
.correlator segments. Jn one example, the segments are overlapped by four chips, but it
should be appreciated that other examples are possible.
[0110] Task 706 follows'task 704. In task 706, the search space for the selected SV
is divided up into segments in preparation for a level 2 search, and the segments are
queued. In one example, level 2 segments, as illustrated in Figure 11, are characterized by
a range oi -250 Doppler frequencies, divided up into 20 bins, and a range of 32 code
phases, divided up into 64 bins.
[0111] Task 70S follows insk 706. In task 70S, an inquiry is made whether there are
additional SVs in the set S". If sc. the method loops back to task 702 for another iteration.
If not. the method proceeds with task ~K>. Through iterations through the loop
represented by the tasks 702? 704, 706. and "08. the method generates and queues level 2
segments for each of the SVs in the set S".
[0112] In task 710, level 2 segments are processed through the correlator. In one
example, where the correlator comprises eight parallel channels, eight segments are

processed through the correlator at a time, although it should be appreciated that other examples are possible.
[0113] Task 712 follows task 710. In task 712, a Multi/Max Peak algorithm is
applied to locate, for each SV in the set S\ the earliest valid peak for the SV. This is in contrast to the Max Peak algorithm referred to in task 612, which locates the strongest peak for each SV involved in the respective search. According to one example of the Multi/Max Peak algorithm, a valid peak for the SV is the strongest peak for that SV unless there is an earlier peak within 4 chips and 15 dB of the strongest peak, in which case the valid peak is the earlier peak. This algorithm recognizes that the earliest peak is not always the strongest peak but can be a weaker peak earlier in time than the strongest peak.
[0114] In addition, the peaks which axe identified in task 712 are analyzed to
determine if they represent cross-correlations of the peaks listed in task 628. If a peak is so identified, the peak is discarded at run time in preference to other weaker peaks that mSy better represent the SV. In one example, this step occurs by comparing the C/No and Doppler values of the peaks identified in task 712 with the corresponding values of the peaks identified in step 628.
[0115] Task 714 follows task 712.- In task 714, an inquiry is made whether there are
any remaining level 2 segments to process. If so, the method loops back to task 710 for
another iteration. If not, the method proceeds to step 716. Through one or more iterations
through tasks 710, 712, and 714. all level 2 segments are processed.
[0116] The integration parameters underlying the level 2 search emphasize
sensitivity and accuracy rather than speed. In one example, illustrated in Figure 11. the integration underlying the level 2 search comprises 44 20 ms coherent integrations which are non-coherently combined. In one example, the level 2 integration parameters are such that two level 2 segments can be processed by each correlator channel in one GPS frequency tune period. In the case where the correlator has eight parallel channels, thai translates into a requirement that at least 16 segments be processed in a single GPS frequency tune period.

[0117] Advantageously, all the level 2 segments can be processed in a single GPS
frequency tune period, but it should be appreciated that it is possible that multiple GPS
«
frequency tune periods will be required to process the level 2 segments.
[0118] Task 716 is then performed. In task 716, a conventional cross-correlation
. test is applied to all the peaks which have been identified. These include the peaks in the set S, identified through either the level 1 or level 2 searches, and the peaks in the set S\ Since this test is conventional, it need not be detailed here.
[0119] Task 71S follows task 716. In task 718, for each peak identified as a cross-
correlation, the RMSE saturation flag for the peak is set, or alternatively, the measurement type is set to the None category7, indicating that the peak should be ignored for purposes of position determination. The level 2 search then concludes.
[0120] Figure 8 illustrates the tasks underlying the level 3 search, block 418, of
Figure 4. In task S02. an SV in the set S\ i.e., those SYs previously classified as being within the weak or none categories, is selected.
[0121] Task 804 follows task 802. In task 804, the code phase window for the
selected SV is increased to account for code drift over time. In one example, the - segments are enlarged by four chips.
[0122] Task 806 follows task 804. In task 806, the search space for the selected SV
is divided up into segments in preparation for a level 3 search, and the segments are queued. In one example, a level 3 segments is, as illustrated in Figure 11, characterized by a range of ±62.5 Doppler frequencies, divided up into 20 bins, and a range of 32 code phases, divided up into 64 bins.
[0123] Task SOS follows task 806. In task 808, an inquiry is made whether there are
additional SYs in the set S". If so, the method loops back to task 802 for another iteration. If not, the method proceeds with task 810. Through iterations through the loop represented by the tasks 802, S04. 806;and SOS, the method generates, and queues level ? segments for each of the SVs in the set S[0124] In task S10, level 3 segments are processed through the correlator. In one
example, where the correlator comprises eight parallel-channels, eight segments are processed through the correlator at a time, although it should be appreciated that other examples are possible.

[0125] Task 812 follows task 810. In task S12, the Multi/Max Peak algorithm is
applied to locate, for each SV in the set S\ the earliest valid peak for the SV. In addition.
the peaks which are identified in task 812 are analyzed to determine if they represent
cross-correlations of the peaks listed in task 628. If a peak is so identified, the peak is
discarded at run time in preference to other weaker peaks that may better represent the
SV. In one example, this step occurs by comparing the C/No and Doppler values of the
peaks identified in task 812 with the corresponding values of the peaks identified in step
62S.
[0126] Task 814 follows task 812. In task 814, an inquiry is made whether there are
any remaining level 3 segments to process. If so, the method loops back to task 810 for
another iteration. If not, the method proceeds to step 816. Through one or more iterations
through tasks 810, 812, and 814. all level 3 segments are processed.
[0127J The integration parameters underlying the level 3 search emphasize
sensitivity and accuracy rather than speed, and do so to a greater degree than the level 2
search. In one example, illustrated in Figure 11, the integration underlying the level 3
search comprises 22 80 ms coherent integrations which are non-coherently combined. In
one example, the level 3 integration parameters are such that one level 3 segments can be
processed by each correlator channel in one GPS frequency tune period. In the case
where the correlator has eight parallel channels, that translates into a requirement that at
least 8 segments be processed in a single GPS frequency tune period.
[0128] Since the coherent integration time employed in the level 3 search is 80 ms,
which exceeds the 20 ms time period over which a data bit is modulated onto an SV
signal, the coherent integration in the level 3 search is performed with the sensitivity
assistance from the PDE provided in task 416 to account for bit phase changes that occur
within the 80 ms coherent integration time.
[0129] Advantageously, all the level 3 segments are processed in a single GPS
frequency tune penod. but it should be appreciated that it is possible for multiple GPS
frequency tune periods to be required to process the level 3 segments.
[0130] Task 816 is then performed, h: task S16, a conventional cross-correlation
test is applied to all the peaks which have been identified. These include the peaks in the

set S, identified through either the level ] or level 3 searches, and those in the set S\ Since this test is conventional, it need not be detailed here.
[0131] Task 818 follov.'s task 816. In task 818, for each peak identified-as a cross-
correlation, the RMSE saturation flag for the peak is set, or alternatively, the measurement type is set to the None category indicating that the peak should be ignored for purposes of position determination. The level 3 search then concludes.
[0132] An embodiment of a system for searching for position determination signals
within a prescribed time- period is illustrated in Figure 13. As illustrated, the system comprises processor 1302, memory 1304, and correlator 1306.
[0133] The correlator 1306 is configured to produce correlation functions from
signals provided to it by a receiver (not shown), and provide them to processor 1302, either directly or through memory 1304. The correlator 1306 may be implemented in hardware, software, or a combination of hardware and software.
[0134] The memory 1304 tangibly embodies a series of software instructions for
performing any of the methods of Figures 2, 4-10, or any of the embodiments,
implementations, or examples thereof which have been described or suggested.
[0135] The processor is configured to access and execute the software instructions
tangibly embodied by memory 1304. Through execution of these instructions, the
processor 1302 directs the correlator 1306 to search for position determination signals, . .
cither as part of a level 0, level 1, level 2, or level 3 search, and it derives measurements
from the resulting correlation functions provided to it by correlator 1306.
[0136] If the search is a level 1 search, the processor 1302 determines whether the
level 1 measurements satisfy one or more selected measurement sufficiency criteria. If so,
the processor 1302 terminates the search. If not. the processor 1302 directs the correlator
1306 to perform a level 2 or 3 search for position determination srgnals.
[0137] An embodiment of a subscriber station in a wireless communication system is
illustrated in Figure 14. This particular subs:riber station is configured to embody or incorporate the system of Figure 13.
[0138] Radio transceiver 1406 is configured to modulate baseband information,
such as voice or data, onto an RF carrier, and demodulate a modulated RF carrier to obtain baseband information.

[013VJ An antenna 1410 is configured to transmit a modulated RF carrier over a
wireless communications link and receive a modulated RF carrier over a wireless
communications link.
[0140] Baseband processor 1408 is configured to provide baseband information
from CPU -1402 to transceiver 1406 for transmission over a wireless communications
link. The CPU 1402 in turn obtains the baseband information from an input device within
user interface 1416. Baseband processor 1408 is also configured to provide baseband
information from transceiver 1406 to CPU 1402. CPU 1402 in turn provides the
baseband information to an output device within user interface 1416.
[0141] User interface 1416 comprises a plurality of devices for inputting or
outputting user information such as voice or data. The devices typically included within
the user interface include a keyboard, a display screen, a microphone, and a speaker.
[0142] GPS receiver 1412 is configured to receive and demodulate GPS satellite
transmissions, and provide the demodulated information to correlator 1418.
[0143] Correlator 1418 is configured to derive GPS correlation functions from the
information provided to it by GPS receiver 1412. For a given PN code, correlator 141S
produces a correlation function which is defined over a range of code phases which define
a code phase search window, and over a range of Doppler frequency hypotheses. Each
individual correlation is performed in accordance with defined coherent and non-coherent
integration parameters.
[0144] Correlator 1418 may also be configured to derived pilot-related correlation
functions from information relating to pilot signals provided to it by transceiver 1406.
This information is used by the subscriber station to acquire wireless communications
services.
[0145] Channel decoder 1420 is configured to decode channel symbols provided to
it by baseband processor 140S into underlying source bits. In one example, where the
channel symbols are convolutionally encoded symbols, the channel decoder is a Viterbi
decoder. In a second example, where the channel symbols are serial or parallel
concatenations of convolutional codes, the channel decoder 1420 is a turbo decoder.

[0146] Memory 1404 is configured to hold software instructions embodying any of
the methods of Figures 2, 4-10. r-r any of the embodiments, implementations, or examples thereof which have been described or suggested.
[0147] CPU 1402 is configured to access and execute these software instructions.
Through execution of these software instructions, the CPU 1402 directs correlator 1418 to perform level 0, level 1, level 2. or level 3 searches as the case may be, analyze the GPS correlation functions provided to it by correlator 1418, derive measurements from the peaks thereof, and; in the case of level 1 measurements, determine whether the level 1 measurements satisfy selected measurement sufficiency criteria, or whether level 2 or 3 searches are required to fix the position of the entity.
[0148] CPU 1402 is also configured to determine the root mean square error
(RMSE) associated with each of the measurements. These measurements and RMSE values are provided to a PDE (not shown). The PDE weights each of the measurements based on the inverse of its corresponding RMSE value, and then estimates the location of the subscriber station based on :he weighted measurements. Alternatively, the subscriber station determines its own location from this information.
[0149] While various embodiments, implementations and examples have been
described, it will be apparent to those -of ordinary skill in the art that many more embodiments, implementations and examples are possible that are within the scope of this invention. In particular, embodiments are possible where the invention is employed to search for position determination signals comprising base station transmissions, or combinations of base station and GPS satellite transmissions. Embodiments are also possible where the invention is extended to search procedures involving any number of levels of search modes, including configuration employing levels beyond level 3. Embodiments are also possible in relation to subscriber stations which employ dual RF solutions in contrast to shared RF solutions. Consequently, the invention is not to be limited except in relation to the appended daims.
What is claimed is:



CLAIMS
1. A method of searching for position determination signals using a plurality of progressively more sensitive search modes which plurality comprises, in order of increasing sensitivity, a first level mode, a second level-mode, and at least one higher level mode, the method comprising:
determining whether any search window parameters exceed prescribed limits;
performing a first level search if any search window parameters exceed prescribed limits, and refining the search window parameters responsive thereto so they are within the prescribed limits;
performing a second level search as part of a position fix attempt;
deriving one or more measurements from the ensuing search results;
determining whether the measurements satisfy one or more selected measurement sufficiency criteria;
avoiding additional searching within the position fix attempt if the measurements satisfy the one or more selected measurement sufficiency criteria; and
performing a higher level search beyond the second level if the measurements do not satisfy the one or more selected measurement sufficiency criteria.
2. The method of claim ] wherein the signals are GPS satellite signals.
?. The method of claim 1 wherein the measurements comprise peak SNR and ume measurements.
4. The method of claim 1 wherein ihc higher level search window parameters
are optimized.
5. The method of claim 1 wherein ihe higher level search is selected between a
third level and a fourth level search based on application of prescribed selection criteria.

performing a first level search if any search window parameters exceed prescribed limits, and refining the search window parameters responsive thereto so they are within the prescribed limits;
performing a second level search as part of a position fix attempt;
deriving one or -more measurements from the ensuing search results;
determining whether the measurements satisfy one or more selected measurement sufficiency criteria;
avoiding additional searching within the position fix attempt if the measurements satisfy the one or more selected measurement sufficiency criteria; and
performing a higher level search beyond the second level if the measurements do not satisfy the one or more selected measurement sufficiency criteria, wherein the higher level search is either a third level or a fourth level search based on one or more prescribed selection criteria.
7. The method of claim 6 further comprising determining the position of an entity
from measurements derived from one or more of the searches.
8. The method of claim 7 wherein the entity is a subscriber siation in a wireless
communications system.
* *9. The method of claim 8 wherein the series of search modes employs progressively greater integration times.
20. The method of claim 7 wherein the fourth level search employs a coherent integration rime greater than 20 ms, and ihe third level search does not.
11. A method of searching for position determination signals using a plurality of progressively more sensitive search modes which plurality comprises, in order of increasing sensitivity, a first level mode, a second level mode, and at least one higher level mode, the method comprising:
a step for determining whether any search window parameters exceed prescribed limits;

a step for performing a first level search if any search window parameiers exceed prescribed limits, and refining the search window parameters responsive thereto so they are within the prescribed limits;
a step for performing a second level search as part of a position fix attempt;
a step for deriving one or more measurements from the ensuing search results;
a step for determining whether the measurements satisfy one or more selected measurement sufficiency criteria;
a step for avoiding additional searching within the position fix attempt if the measurements satisfy the one or more selected measurement sufficiency criteria; and
a step for performing a higher level search beyond the first level if the measurements do not satisfy the one or more selected measurement sufficiency criteria.
12. The method of claim 11 further comprising discarding those measurements from
the higher level search which are determined to be cross-corrclation6 of the measurements
from the second level search.
13. The method of claim 12 wherein the measurements are discarded during run time
in favor of other measurements which better represent an SV.
14. The method of claim 11 further comprising discarding those measurements from
the higher level search which are determined to be cross-correlations of the measurements
from the second level search.
15. The method of claim 14 wherein the measurements are discarded at run time in
favor of other measurements which better represent an SV.
16. The method of claira 11 further comprising a step for discarding those
measurements from the higher level search which are determined to be cross-correlations of
the measurements from the second level search.


Documents:

679-chenp-2005-abstract.pdf

679-chenp-2005-assignement.pdf

679-chenp-2005-claims.pdf

679-chenp-2005-correspondnece-others.pdf

679-chenp-2005-description(complete).pdf

679-chenp-2005-drawings.pdf

679-chenp-2005-form 1.pdf

679-chenp-2005-form 18.pdf

679-chenp-2005-form 3.pdf

679-chenp-2005-form 5.pdf

679-chenp-2005-pct.pdf


Patent Number 219183
Indian Patent Application Number 679/CHENP/2005
PG Journal Number 27/2008
Publication Date 04-Jul-2008
Grant Date 25-Apr-2008
Date of Filing 20-Apr-2005
Name of Patentee QUALCOMM INCORPORATED
Applicant Address
Inventors:
# Inventor's Name Inventor's Address
1 ROWITCH, DOUGLAS, NEAL
2 PATRICK, CHRISTOPHER
PCT International Classification Number G01S 5/14
PCT International Application Number PCT/US03/33660
PCT International Filing date 2003-10-22
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 10/278,694 2002-10-22 U.S.A.