WO2005029117A1 - Partial almanac collection system - Google Patents
Partial almanac collection system Download PDFInfo
- Publication number
- WO2005029117A1 WO2005029117A1 PCT/US2004/030010 US2004030010W WO2005029117A1 WO 2005029117 A1 WO2005029117 A1 WO 2005029117A1 US 2004030010 W US2004030010 W US 2004030010W WO 2005029117 A1 WO2005029117 A1 WO 2005029117A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- almanac
- gps
- call processor
- further including
- pacs
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/27—Acquisition or tracking or demodulation of signals transmitted by the system creating, predicting or correcting ephemeris or almanac data within the receiver
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/03—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
- G01S19/10—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers providing dedicated supplementary positioning signals
- G01S19/12—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers providing dedicated supplementary positioning signals wherein the cooperating elements are telecommunication base stations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/03—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
- G01S19/05—Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers providing aiding data
Definitions
- This invention relates generally to global positioning systems ("GPS").
- GPS global positioning systems
- this invention relates to an almanac collection system for collecting piecewise almanac information from a GPS satellite.
- almanac collection system for collecting piecewise almanac information from a GPS satellite.
- wireless devices also known as “mobile devices”
- mobile devices such as two-way radios, portable televisions, Personal Digital Assistants (“PDAs”)
- PDAs Personal Digital Assistants
- cellular telephones also known as “wireless telephones,” “wireless phones,” “mobile telephones,” “mobile phones,” and/or “mobile stations”
- satellite radio receivers and Satellite Positioning Systems
- SATPS Satellite Positioning Systems
- U.S. United States
- GPS Global Positioning System
- NAVSTAR Global Positioning System
- GPS systems are typically satellite (also known as “space vehicle” or “SV”) based navigation systems.
- GPS include but are not limited to the United States (“U.S.”) Navy Navigation Satellite System (“NNSS”) (also know as TRANSIT), LORAN, Shoran, Decca, TACAN, NAVSTAR, the Russian counterpart to NAVSTAR known as the Global Navigation Satellite System (“GLONASS”) and any future Western European GPS such as the proposed "Galileo” program.
- U.S. United States
- NSS Navy Navigation Satellite System
- LORAN also know as TRANSIT
- LORAN also know as TRANSIT
- GLORAN Global Navigation Satellite System
- GLONASS Global Navigation Satellite System
- GLONASS Global Navigation Satellite System
- any future Western European GPS such as the proposed "Galileo” program.
- GPS NAVSTAR GPS
- U.S. Congress later directed the DoD to also promote GPS's civilian uses.
- GPS is now a dual-use system that may be accessed by both U.S. government agencies (such as the military) and civilians.
- the GPS system is described in GPS Theory and Practice, Fifth ed., revised edition by Hofrnann- Wellenhof, Lichtenegger and Collins, Springer- Verlag Wien New York, 2001, which is fully inco ⁇ orated herein by reference.
- GPS typically includes identifying precise locations on the Earth and synchronizing telecommunication networks such as military communication networks and the cellular telephone networks such as CDMA and TDMA type systems.
- telecommunication networks such as military communication networks and the cellular telephone networks such as CDMA and TDMA type systems.
- FCC Federal Communications Commission
- GPS is being employed for both location determination and synchronization in many cellular applications.
- GPS satellites transmit highly accurate, time coded information that permits a GPS receiver to calculate its location in terms of latitude and longitude on Earth as well as the altitude above sea level.
- GPS is designed to provide a base navigation system with accuracy within approximately 100 meters for non-military users and even greater precision for the military and other authorized users (with Selective Availability "SA" set to ON).
- GPS typically comprises three major system segments: space, control, and user.
- the space segment of GPS is a constellation of satellites orbiting above the Earth that contain transmitters, which send highly accurate timing information to GPS receivers on earth.
- the implemented GPS constellation includes 21 main operational satellites plus three active spare satellites. These satellites are arranged in six orbits, each orbit containing three or four satellites.
- the orbital planes form a 55° angle with the equator.
- the satellites orbit at a height of approximately 10,898 nautical miles (20,200 kilometers) above the Earth with orbital periods for each satellite of approximately 12 hours.
- each of the orbiting satellites contains four highly accurate atomic clocks (two rabidium and two cesium). These atomic clocks provide precision timing pulses used to generate a unique binary code (also known as a pseudorandom "PRN-code” or pseudo noise "PN-code”) that is transmitted to Earth.
- PRN-code identifies the specific satellite in the GPS constellation.
- the satellite also transmits a set of digitally coded information that includes two types of orbital parameters for determining the locations-in-space for the satellites known as almanac data and ephemeris data.
- the ephemeris data (also known as “ephemerides”) defines the precise orbit of the satellite.
- the ephemeris data indicates where the satellite is at any given time, and its location may be specified in terms of the satellite ground track in precise latitude and longitude measurements.
- the information in the ephemeris data is coded and fransmitted from the satellite providing an accurate indication of the position of the satellite above the Earth at any given time.
- current ephemeris data is sufficient for determining locations-in-space to a few meters or a few tens of meters at current levels of SA.
- a ground confrol station updates the Ephemeris data each hour to ensure accuracy. However, after about two hours the accuracy of the ephemeris data begins to degrade.
- the almanac data is a subset of the ephemeris data.
- the almanac data includes less accurate information regarding the location of all the satellites in the constellation.
- the almanac data includes relatively few parameters and is generally sufficient for determining locations-in-space to a few kilometers.
- Each GPS satellite broadcasts the almanac data for all the GPS satellites in the GPS constellation on a twelve and one-half ("12.5") minute cycle. Therefore, by tracking only one satellite, the almanac data of all the other satellites in orbit are obtained.
- the almanac data is updated every few days and is useful up to approximately several months.
- GPS receivers that have been off for more than a few hours typically utilize the almanac data to determine which GPS satellites are in- view.
- both the almanac and ephemeris data are valid only for a limited amount of time.
- the location of the satellites based on this information is less and less accurate as the almanac and ephemeris data ages unless the data is updated at appropriate intervals in time.
- the ephemeris data includes three sets of data available to determine position and velocity vectors of the satellites in a terrestrial reference frame at any instant. These three sets of data include almanac data (as mentioned earlier), broadcast ephemerides, and precise ephemerides. The data differs in accuracy and is either available in real-time or after the fact. Typically, the purpose of the almanac data is to provide the user with less precise data to facilitate receiver satellite search or for planning tasks such as the computation of visibility charts.
- the almanac data are updated at least every six days and are broadcast as part of the satellite message.
- the almanac data within the satellite message essentially contain parameters for the orbit and satellite clock correction terms for all satellites.
- GPS almanac data is described in "GPS Interface Confrol Document ICD-GPS-200" for the “NAVSTAR GPS Space Segment and Navigation User Interfaces” published by NavTech Seminars & NavTech Book and Software Store, Arlington, Va., reprinted February, 1995, which is herein incorporated by reference.
- the GPS receiver will scan the GPS spectrum to acquire a GPS signal transmitted from an available GPS satellite. Once the GPS signal is acquired the GPS receiver will then download the GPS almanac data for the GPS constellation, the ephemeris data and clock correction information from the acquired GPS satellite. Once the almanac data is downloaded, the GPS satellite will then scan the GPS spectrum for the available (i.e., the "in-view”) GPS satellites as indicated by the almanac data. Ideally, given sufficient time and assuming the environmental conditions sunrounding the GPS receiver allow the GPS receiver to acquire two to three additional in-view GPS satellites, the GPS receiver receives both distance and timing information from the three to four satellites and calculates its position on the Earth.
- TTFF Time-to-First-Fix
- a cellular telephone or personal digital assistant with an integrated GPS receiver would have to wait at least 12.5 minutes (assuming perfect environmental conditions with all necessary in-view satellites being visible) for the GPS receiver to download the GPS almanac before making a call. This would be unacceptable for most applications.
- Past approaches to reduce the amount of time required to download the almanac data have included storing some sort of almanac (such as factory installed almanac data) in a memory unit (such as a read-only memory "ROM”) in the GPS receiver. Typically, this pre-stored almanac data is utilized to reduce the TTFF in a cold-start condition.
- almanac such as factory installed almanac data
- ROM read-only memory
- the cold-start condition usually still has a relatively long TTFF time due to the uncertainties associated with the satellite positions and the age of the pre-stored almanac.
- this GPS receiver can then download the updated almanac data from the acquired satellite and update the ROM (or a read-access memory "RAM") for future use.
- this approach still requires that the GPS receiver receive the updated almanac data (i.e., receiving a "fresh" copy of the almanac data) from the satellites for future acquisitions. Receiving the updated almanac data will still require significant amounts of time that will affect the performance of the GPS receiver.
- aiding approaches have been developed for mobile telephones that assist the GPS receiver by providing aiding data from a commumcation module (also known as a "call processor” or "CP") for such purposes as acquisition, location calculation and/or sensitivity improvement.
- a commumcation module also known as a "call processor” or "CP”
- Examples of some of these aiding approaches include systems described by United States (“U.S.”) Patent 6,433,734, titled “Method and apparatus for determining time for GPS receivers," issued on August 13, 2002 to inventor Krasner; U.S.
- Patent 6,421,002 titled “GPS receiver utilizing a communication link,” issued on July 16, 2002 to inventor Krasner; U.S. Patent 6,411,254, titled “Satellite positioning reference system and method,” issued on June 25, 2002 to inventors Moeglein et al.; U.S. Patent 6,400,314, titled “GPS receiver utilizing a communication link,” issued on June 4, 2002 to inventor Krasner; U.S. Patent 6,313,786, titled “Method and apparatus for measurement processing of satellite positioning system (SPS) signals,” issued November 6, 2001 to inventors Sheynblat et al.; U.S.
- SPS satellite positioning system
- Patent 6,259,399 titled “GPS receivers and garments containing GPS receivers and methods for using these GPS receivers," issued on July 10, 2001 to inventor Krasner; U.S. Patent 6,215,441, titled “Satellite positioning reference system and method,” issued on April 10, 2001 to inventors Moeglein et al.; U.S. Patent 6,208,290, titled “GPS receiver utilizing a communication link,” issued on March 27, 2001 to inventor Krasner; U.S. Patent 6,185,427, titled “Distributed satellite position system processing and application network,” issued on February 6, 2001 to inventors Krasner et al.; U.S.
- Patent 6,150,980 titled “Method and apparatus for determining time for GPS receivers," issued on November 21, 2000 to inventor Krasner
- U.S. Patent 5,945,944 titled “Method and apparatus for determining time for GPS receivers,” issued on August 31, 1999 to inventor Krasner
- U.S. Patent 5,825,327 titled “GPS receiver utilizing a communication link,” issued on November 24, 1998 to inventor Krasner
- Patent 5,825,327 titled “GPS receivers and garments containing GPS receivers and methods for using these GPS receivers," issued on October 20, 1998 to inventor Krasner, which are herein incorporated by reference.
- these aiding approaches in wireless networks are typically cellular network (i.e., cellular platforms such as TDMA, GSM, CDMA, etc.) and vendor specific, and are provided by Geolocation Server Stations located at the cellular network.
- the GPS receiver in the mobile telephone also known as a "mobile station” or "MS”
- MS Geolocation Server Station
- the partial almanac collection system may include a global positioning system (“GPS”) module, and a controller in signal communication with the GPS module and the call processor, the controller instructing the GPS module to collect piecewise almanac data in response to a request from the call processor.
- GPS global positioning system
- the partial almanac collection system collects a piecewise
- GPS almanac by receiving a request for a GPS almanac download from a call processor and in response receives the GPS almanac in a piecewise process.
- the piecewise process may include receiving a plurality of sub-sets of the GPS almanac and storing the plurality of sub-sets of the GPS almanac into a memory device. Additionally, the piecewise process may further include determining when the last sub-set of the plurality of sub-sets of the GPS almanac has been received and combining all the sub-sets of the plurality of sub-sets of the GPS almanac to create a full GPS almanac.
- FIG. 1 is an illustration of a typical known GPS receiver in operation.
- FIG. 2 is an illustration of example known electronic devices with integrated GPS receivers in communication with wireless (both cellular and non- cellular) and non-wireless networks.
- FIG. 3 is a block diagram of a known wireless mobile positioning system architecture that receives GPS data from the GPS constellation.
- FIG. 4 is a block diagram of an exemplary implementation of the mobile device including a call processor in signal communication with a GPS module.
- FIG. 5 is a block diagram of an exemplary implementation of a protocol independent interface in a wireless mobile positioning system architecture.
- FIG. 6 is a block diagram of an exemplary implementation of a mobile device, according to FIG. 5, utilizing a FSM in a GSM environment.
- FIG. 7 is a block diagram of an exemplary implementation of a mobile device, according to FIG. 5, utilizing a FSM in a CDMA environment.
- FIG. 8 shows an example of a RRLP to protocol independent interface message flow diagram between a Geolocation Server Station, Call Processor and GPS Module.
- FIG. 9 shows an example of a protocol independent interface message flow diagram between a call processor, GPS Module and abase station ("BS").
- FIG. 10 is a block diagram of an example implementation of a partial almanac collection system ("PACS") in signal communication with the GPS constellation and networks shown in FIG. 2.
- PPS partial almanac collection system
- FIG. 11 shows a flow diagram of an example process performed by the PACS shown in FIG. 10.
- FIG. 12 shows a signal flow diagram for example polling process performed by the PACS shown in FIG. 10.
- FIG. 13 shows a signal flow diagram for example non-polling process performed by the PACS shown in FIG. 10.
- FIG. 14 shows a signal flow diagram for another example non-polling process performed by the PACS shown in FIG. 10.
- FIG. 15 shows a signal flow diagram for yet another example non-polling process performed by the PACS shown in FIG. 10.
- FIG. 16 shows a signal flow diagram for yet another example non-polling process performed by the PACS shown in FIG. 10.
- FIG. 1 a diagram 100 of an example implementation of a known Global Positioning System (“GPS”) is illustrated.
- GPS Global Positioning System
- a GPS receiver 102 located on the Earth 104 is designed to pick up signals 106, 108, 110 and 112 from several GPS satellites 114, 116, 118 and 120 simultaneously.
- the GPS receiver 102 decodes the information and, utilizing the time and ephemeris data, calculates the position of the GPS receiver 102 on the Earth 104.
- the GPS receiver 102 usually includes a floating-point processor (not shown) that performs the necessary calculations and may output a decimal or graphical display of latitude and longitude as well as altitude on a display 122.
- signals 106, 108 and 110 from at least three satellites 114, 116 and 118 are needed for latitude and longitude information.
- a fourth satellite signal 112 from satellite 120 is needed to compute an altitude.
- FIG. 2 illustrates a diagram 200 of a number of different known applications for GPS.
- numerous example devices 202, 204, 206, 208, 210, and 212 are shown receiving and utilizing GPS signals 214, 216, 218, 220, 222 and 224 from a GPS constellation 226 of satellites (where the individual satellites are not shown).
- the example devices may include a hand-held GPS receiver 202, an automobile GPS receiver 204, an integrated cellular telephone GPS receiver 206, an integrated personal digital assistant (PDA) GPS receiver 208, an integrated mobile computer (such as a typical "laptop” or “notebook” computer) GPS receiver 210, an integrated computer (non-mobile) GPS receiver 212, or any other similar type of device that may incorporate a GPS receiver.
- PDA personal digital assistant
- These new integrated communication devices may either be in communication with a cellular telephone communication network through collection nodes such as a base-station tower 228 or with a non-cellular communication network through non-cellular collection point 230.
- the cellular communication networks may be a TDMA, CDMA, GSM, W-CDMA, CDMA 2000, UMTS, 3G, GPRS, or AMPS type of cellular network.
- the non-cellular communication network may include such networks as BlueTooth ® , Wireless Fidelity ("Wi-Fi ® ”) network based on IEEE 802.11, or other similar wireless networks.
- the hand-held GPS receiver 202, integrated automobile GPS receiver 204, integrated cellular telephone GPS receiver 206, PDA 208, and mobile computer 210 may be in communication with cellular base-station 228 via signal paths 232, 234, 236, 238 and 240, respectively.
- the hand-held GPS receiver 202, DPA 208, and mobile computer 210 may be in signal communication with the non-cellular connection point 230 via signal paths 242, 244 and 246.
- the non-mobile computer 212 may include an integrated GPS receiver (not shown) that is integrated internally on the motherboard, through an internally added peripheral device, or as a connected external peripheral device.
- the integrated GPS receiver (not shown) may receive aiding from a network server 248 via network 250 and modem 252.
- the network 250 may be the well-known plain old telephone service ("POTS'), an Ethernet, the Internet or other similar network. It is appreciated that other devices connected to POTS, Ethernet and the Internet such as vending machines, office and business equipment, or other important equipment also may be utilized in the same fashion as the non-mobile computer 212.
- POTS plain old telephone service
- FIG. 3 shows a known wireless mobile positioning system architecture 300 with network aiding that receives GPS data from the GPS constellation 226 via signal paths 302 and 304.
- the architecture 300 may include a mobile device 306, base station 308, wireless network infrastructure 310, Geolocation Server Station 312, GPS reference receiver 314 and optional end user 316.
- the GPS reference receiver 314 receives GPS signals from the GPS constellation 226 via signal path 302.
- the mobile device 306 receives GPS signals from the GPS constellation 226 via signal path 304 and is in signal commumcation with base station 308 via signal path 318.
- the mobile device 306 includes a call processor 320 and GPS module 322. Both the call processor 320 and GPS module 322 are in signal communication via signal path 324.
- the call processor 320 and GPS module 322 may be each functional units that may be implemented in either separate semiconductor chips or in one common semiconductor chip or die.
- the architecture 300 shown in FIG. 3 requires that the GPS module 322 utilize the same protocol utilized by the Geolocation Server Station 312 in order to receive any GPS aiding information from the Geolocation Server Station 312.
- FIG. 4 shows an example implementation of a mobile device 400 including a call processor 402 in signal communication with a GPS module 404 via signal path 406.
- the mobile device 400 may be of the example devices 202, 204, 206, 208, 210, and 212 shown in FIG. 2.
- the call processor 402 is in signal communication with the base station 308 via signal path 318 and the GPS module 404 receives GPS data from the GPS Satellite Constellation 226 via signal path 304.
- the call processor 402 and GPS module 404 may be each functional units that may be implemented in either separate semiconductor chips or in one common semiconductor chip or die.
- the signal path 406 may be implemented with a RS232 data link if the call processor 402 and GPS module 404 are physically separate devices.
- the mobile device 400 would receive GPS signals 304 from the GPS constellation 226, FIG. 3, and communication signals 318 from the cellular telephone communication network infrastructure 310 through base-station tower 308 or with the non-cellular communication network (not shown) through non- cellular collection point 230, FIG. 2.
- the call processor 402, FIG. 4 may be any communication device capable of communication either one-way or two-way with an external communication network such as the cellular telephone communication network infrastructure 310, FIG. 3, or non-cellular wireless or non- wireless network (not shown).
- the call processor 402 includes dedicated hardware (not shown) and software (not shown) for establishing and managing a telecommunication connection.
- Examples of a cellular telephone type of call processor 402 may include a cellular telephone call processing Integrated Dispatch Enhanced Network ("iDENTM") produced by Motorola, Inc., of Schaumberg, Illinois, CDMA2000® IX type chipsets utilized by Nokia of Finland, Sony Ericsson of Sweden, Qualcomm, Inc.
- iDENTM Integrated Dispatch Enhanced Network
- GPS module 404 may include any GPS receiver capable of communicating with the call processor 402.
- the architecture 500 may include a mobile device 506, base station 508, wireless network infrastructure 510, Geolocation Server Station 512, GPS reference receiver 514, and optional end user 516.
- the mobile device 506 and GPS reference receiver 514 receive GPS signals from the GPS Satellite Constellation 226 via signal paths 504 and 502, respectively.
- the Mobile Device 506 may include a Call Processor 520, GPS module
- the Call Processor 520 and GPS module 522 may be each functional units that may be implemented in either separate semiconductor chips or in one common semiconductor chip or die.
- the PI2 524 is an interface that allows the GPS module 522 to receive aiding data from the Geolocation Server Station 512 without requiring the GPS module 522 to utilize the same protocol utilized by the Geolocation Server Station 512. Therefore, the PI2 524 enables the GPS module 522 to be free of specific implementations of multiple protocols for different Geolocation Server Stations.
- the PI2 524 may be a RS232 link, a logical interface via a memory sharing of software data stractures or other types of electrical and/or logical interfaces.
- each Geolocation protocol may be implemented via a translator in the PI2 524 that translates the Geolocation Server Station 512 protocol to an independent protocol used by the GPS module 522. This allows seamless availability of geolocation information as the Mobile Device 506 hands-off from one wireless communication standard to another, thereby changing the way in which the mobile device 506 receives aiding data and transmits position, or other geolocation results, from the Call Processor 520 to the Geolocation Server Station 512.
- each unique geolocation protocol (such as IS-817, IS-801 etc.) for all the different air interfaces utilized in the various places around the world may be served by the GPS device 506 without resetting or reconfiguring the GPS module 522 because the PI2 524 is capable of translating the GPS information from the Geolocation Server Station 512 of the communication system subscribed to by the user (not shown) of the Mobile Device 506 into the protocol utilized by the GPS module 522.
- An example of the PI2 524 may include the aiding independent interoperability interface ("AI3") developed and owned by SiRF Technology, Inc., of San Jose, California.
- the interface 526 between the base station 508 and infrastructure 510 may be any air-interface.
- the interface 526 is typically controlled by the call processor 520 manufacturer.
- the PI2 524 includes two interfaces generally known as the "F” interface (not shown) and "G” interface (not shown).
- the F interface which is the client system interface between the GPS module 522 and Call Processor 520, acts as a bootstrap protocol, ever present, allowing the Call Processor 520 to choose at run-time how the aiding will be conveyed to the GPS module 522 in the aiding encapsulation layer.
- the Call Processor 520 may choose between an air-interface (such as interface 526 in the case of the end-to-end system architecture) or the G interface.
- the F interface may perform the following tasks: GPS module 522 hardware management from the Call Processor 520 (power on/off, reset); if available, implicit aiding interface, i.e., sends time and frequency transfer from network (or from Call Processor 520 real time clock) via the Call Processor 520, and approximate Mobile Device 506 position (generally implicit from the network, if it does exist); session opening/closing (i.e., notifying the GPS module 522 that an air-interface connection has been opened/closed); and in a dual-mode Mobile Device 506, notifying the GPS module 522 what air interface is on, thus notifying the GPS module 522 what set of geolocation air-interface protocols to use to dialog with the SLS.
- implicit aiding interface i.e., sends time and frequency transfer from network (or from Call Processor 520 real time clock) via the Call Processor 520, and approximate Mobile Device 506 position (generally implicit from the network, if it does exist)
- session opening/closing i.e., not
- the G interface is utilized to convey GPS aiding information received from the base station 508 to the GPS module 522. Since there are typically many existing Geolocation protocols, the G interface may be designed to be usable over a large range of Geolocation standards and air-interface independent, i.e. it is unique for applicable air-interfaces.
- the PI2 524 may be implemented as a reduction of the applicable Geolocation standards.
- the Call Processor 520 sends position request information and network aiding information in PI2 format to the GPS module 522 through the G interface.
- the GPS module 522 sends position results or error notification to Call Processor 520 though the same interface.
- All Geolocation protocols including SAMPS, GSM, and CDMA, work under the interaction paradigm.
- the base station 508 sends back only what the Mobile Device 506 has requested. Generally, the sfrategy to perform the interaction is highly dependent on the knowledge of the GPS module 522 processing.
- Geolocation protocols are application protocols, which means they deal with the semantics (meaning) of the message. They do not, therefore, merely transport data from one side to the other side, without error correction and elimination of swapping or repetition as in a TCP-IP stack. As such, any entity that handles the protocol (e.g., decides to request some data) needs to know what that data will be used for, and the meaning of every parameter exchanged over the protocol (i.e., it needs to know what is happening on the GPS side). As such, the implementer of the Geolocation protocol should be GPS "savvy.”
- the PI2 524 utilizes an air-interface Finite State Machine
- FIG. 6 shows an exemplary block diagram for IS-801 based
- CDMA Mobile Device 600 utilizing a FSM.
- the Mobile Device 600 includes Call Processor 602 and GPS Module 604.
- Call Processor 602 includes air-interface CP module 606, air-interface protocol to GPS module interface converter 608, GPS module data stracture 610, GPS module air-interface assembler/disassembler 612, GPS module/CP System Message protocol assembler/disassembler 614, and GPS Module interface module 616.
- the GPS Module 604 includes CP interface module 618, PI2 interface module 620, PI2 data stracture 622, CP System interface FSM 624, and GPS core 626.
- FIG. 7 shows an exemplary block diagram for RRLP- based handset (i.e., a GSM base cellular telephone) mobile device 700 utilizing a FSM in a CDMA environment.
- the mobile device 700 includes Call Processor 702 and GPS Module 704 in signal commumcation via signal path 706.
- Call Processor 702 includes air-interface CP module 708, air-interface protocol to GPS module interface converter 710, GPS module PI2 data stracture 712, PI2 interface messages assembler/disassembler 714, CP/GPS module System Message protocol assembler/disassembler 714, and GPS Module interface module 718.
- the GPS Module 704 includes CP interface module 720, PI2 interface module 722, PI2 data structure 724, CP System interface FSM 726, and GPS core 728.
- the GPS core 728 receives GPS signals from the GPS satellite constellation 226 via signal path 732 and the Air-interface CP module 708 is in signal communication with the base station (not shown) via signal path 730.
- FIG. 8 shows an example of a RRLP to PI2 message flow diagram 800 between a Geolocation Server Station 802, Call Processor 804 and GPS Module 806.
- FIG. 8 graphically shows the process described earlier.
- FIG. 9 shows an example of PI2 message flow diagram 900 between a call processor 902, GPS Module 904 and a base station ("BS") 906.
- the call processor 902 includes a base station interface handler 908, PI2 converter 910, F interface handler 912 and G interface handler 914.
- FIG. 9 shows graphically shows the process described earlier.
- FIG. 10 shows an example implementation of integrated cornmunication and GPS system 1000 similar to any of the example devices 202, 204, 206, 208, 210, and 212 shown in FIG. 2.
- the integrated communication and GPS system 1000, FIG. 10 would receive GPS signals 1002 from the GPS constellation 226, FIG. 2, and communication signals 1004, FIG. 10, from the cellular telephone communication network (not shown) through base-station tower 228, FIG. 2, or with the non-cellular commumcation network (not shown) through non-cellular collection point 230.
- the integrated communication and GPS system 1000 may include a communication module 1006 (such as a Call Processor "CP"), a GPS core 1007 within a GPS module 1008 in signal communication with the Call Processor 1006, and a Partial Almanac Collection System (“PACS”) 1010.
- CP Call Processor
- PHS Partial Almanac Collection System
- the Call Processor 1006 may be any communication device capable of commumcation either one-way or two-way with an external communication network such as the cellular telephone communication network (not shown) or non-cellular wireless or non-wireless network (not shown).
- Examples of a cellular telephone type of communication module 1006 may include a cellular telephone call processing Integrated Dispatch Enhanced Network ("iDENTM") produced by Motorola, Inc., of Schaumberg, Illinois, CDMA2000® IX type chipsets utilized by Nokia of Finland, Sony Ericsson of Sweden, Qualcomm, Inc. of San Diego, California or any similar type of GSM/CDMA/TDMA/UMTS type of communication device capable of communicating with the GPS module 1008.
- iDENTM Integrated Dispatch Enhanced Network
- Examples of a non-cellular telephone type of communication device may include a SX45 GPS accessory produced by Siemens SA of Germany, any communication device capable of communicating to a BlueTooth ® , Wireless Fidelity (“Wi-Fi ® ”) network based on IEEE 802.11, or other similar wireless networks.
- the GPS module 1008 may include any GPS receiver capable of communicating with the commumcation module 1006.
- the GPS core 1007 is a typical GPS functional block within a GPS receiver that receives GPS signals from the GPS satellite constellation 226 and extracts GPS data from the received GPS signals.
- the PACS 1010 may include a controller 1012, memory device 1014 such as non-volatile memory and/or storage device to store data, an interface 1018 (such as the above mentioned PI2 interface), and a PACS commumcation bus 1016 in signal communication with the controller 1012, storage device 1014, interface 1018, Call Processor 1006 and GPS module 1008.
- the PACS 1010 may be integrated (such as being integrated on the same integrated circuit semiconductor die) in either the Call Processor 1006 or the GPS module 1008, or may be a separate external device within the integrated commumcation and GPS system 1000.
- the PACS 1010 also may be a separate external device external to the integrated communication and GPS system 1000 such as an external add-on card or device. Additionally, the PACS 1010 may be integrated on a single integrated circuit semiconductor die that includes the Call Processor 1006, GPS module 1008 and PACS 1010.
- the controller 1012 may be any processor type of controller including the processor (not shown) of the Call Processor 1006, the processor (not shown) of the GPS module 1008, or an external processor that is capable of controlling how the almanac data is gathered by GPS module 1008 and how the gathered data is passed to the Call Processor 1006.
- the controller 1012 may be a microprocessor, digital signal processor ("DSP"), or application specific integrated circuit ("ASIC"). In the case of a microprocessor or DSP, software (not shown) may be utilized to confrol the operations of the controller 1012.
- This software may be resident in the controller 1012, the Call Processor 1006, GPS module 1008 or in a removable memory (not shown) such as an removable memory disk (such as a floppy, CDROM, DVD or other similar type medium) or card (such as a MemoryStickTM, CompactFlashTM, xDTM, SmartMediaTM or other similar medium).
- a removable memory such as a floppy, CDROM, DVD or other similar type medium
- card such as a MemoryStickTM, CompactFlashTM, xDTM, SmartMediaTM or other similar medium.
- the PACS 1010 allows the GPS module 1008 to receive a partial (i.e., piecewise or piece-meal) almanac from the GPS constellation 226. In this way, the integrated communication and GPS system 1000 does not have to wait a significant amount of time with continuous uninterrupted satellite visibility for the GPS module 1008 to download an entire full almanac of almanac data. [074] The PACS 1010 allows the GPS module 1008 to receive the almanac data and provide to the PACS 1010 the information for each individual satellite as it becomes available.
- the PACS 1010 is capable of receiving information such as the almanac week and time-of-arrive ("TOA") from the GPS module 1008, and associating the almanac week and TOA with each satellite datum that is provided by the GPS module 1008.
- the PACS 1010 then assembles the satellite information received from the GPS module 1008 and keeps frack of the freshness of each satellite in the almanac.
- the PACS 1010 is capable of working with an almanac that may have a mixture of satellites with differing almanac week and TOA information.
- the PACS 1010 controller 1012 is capable of initiating and ending an almanac download session with the GPS module 1008 via PACS communication bus 1016.
- the PACS 1010 controller 1012 is also capable of determining whether it has received sufficient satellite information from the GPS module 1008 to keep track of the status of each satellite in the almanac.
- the controller 1012 then stores the almanac in PACS 1010 non-volatile memory 1014, via PACS communication bus 1016, for future use.
- the PACS 1010 is able to pass the almanac data to the Call Processor 1006 and/or GPS module 1008 via PACS communication bus 1016.
- the PACS 1010 may operate in two ways.
- the first way may be described as a polling process (i.e., method) where the PACS 1010 requests a piecewise almanac download from the GPS module 1008 possibly in response to receiving a request for a piecewise download from the Call Processor 1006 if the PACS 1010 is a separate device from the Call Processor 1006.
- the PACS 1010 continues to make period requests to the GPS module 1008 to gather the almanac status until either it is received completely (as indicated by a full almanac received flag) or the PACS 1010 decides to close the session with the GPS module 1008 before a full download of the almanac data is completed.
- the PACS 1010 may close the session with GPS module 1008 before a full download of the almanac data for a number of different reasons including powering down (t.e., when a user rums off the integrated communication and GPS device 1000), power saving considerations, having already received a full almanac for the Call Processor 1006, or because the Call Processor 1006 requested the session closed to place a call or perform another function that conflicts with an open session with the GPS module 1010.
- the second way may be described as a non-polling method where the
- PACS 1010 again makes a request to the GPS module 1008 for a piecewise almanac download again possibly in response to receiving a request from the Call Processor 1006. However, in this case, the controller 1012 makes a determination on how the GPS module 1008 will respond to the request from the Call Processor 1006. If the GPS module 1008 received enough time to complete the collection of a full almanac, the PACS 1010 responds to the Call Processor 1006 that a full almanac is downloaded as saved in memory 1014.
- the PACS 1010 determines for any reason to perform a session close with the GPS module 1008 before the GPS module 1008 was able to download a full almanac, the PACS 1010 responds to the Call Processor 1006 that a partial almanac has been downloaded. If the environmental conditions change while the GPS module 1008 is collecting the almanac data and the GPS module is only capable of downloading a partial almanac, the PACS 1010 responds to the Call Processor 1006 that a partial almanac has been downloaded. Additionally, if PACS 1010 determines that the GPS module 1008 cannot collect any almanac information within a time limit given by the Call Processor 1006, the PACS 1010 responds to the Call Processor 1006 that no almanac data could be collected.
- FIG. 11 shows a flow diagram 1100 illustrating an example method of operation of the PACS in both a polling and non-polling process.
- the process starts in step 1102 and continues through decision step 1104 to step 1106.
- the Call Processor opens a session with the PACS and then, in step 1108, the Call Processor requests that the PACS perform a piecewise almanac download from a satellite (also known as a "space vehicle” or "SV").
- the PACS performs a piecewise almanac download in step 1110.
- the Call Processor then polls the PACS to see if a full almanac was downloaded.
- step 1112 if a full almanac was downloaded, the process continues to step 1114 and the PACS responds to the Call Processor with a status of full almanac. The Call Processor then closes the session with the PACS in step 1116 and the process ends 1118.
- step 1112 If, instead, the full almanac was not downloaded, the process continues from decision step 1112 to decision step 1120. In decision step 1120, if the Call Processor closed the session with the PACS, the process ends 1118. [080] If, however, the Call Processor did not close the session with the PACS, the process continues from decision step 1120 to step 1122. In step 1122, the PACS responds to the Call Processor with the status of collected satellite almanac for the Call Processor's poll request. The process then continues to step 1124, and the Call Processor periodically polls the PACS to collect the piecewise almanac.
- the PACS responds by performing a piecewise almanac download for each poll in step 1110 and the process repeats steps 1112, 1120, 1122, 1124, and 1110 until either a full almanac is downloaded or the Call Processor closes the session, in which case, the process ends via steps 1114, 1116 and 1118 or 1120 and 1118.
- step 1126 the Call Processor opens a session with the PACS and in step 1128 the Call Processor requests that the PACS perform a piecewise almanac download from a satellite.
- the PACS performs a piecewise almanac download, in step 1130, and responds to the Call Processor, in step 1132, with the status of the collected almanac.
- step 1134 the Call Processor requests a status of the almanac and, in decision step 1136, the PACS determines if the PACS received enough time to complete a full almanac download. It appreciated that the Call Processor may also make the same determination.
- step 1138 the PACS reports a status of full almanac to the Call Processor, which in response the Call Processor closes the session with PACS in step 1140.
- the PACS then stores the almanac data to memory (i.e., a storage device), in step 1142, and then sends an acknowledgment to the Call Processor in step 1144.
- the process then ends 1118.
- step 1146 if the Call Processor performed a Session Close operation before the PACS downloaded a full almanac, the process continues to step 1148.
- step 1148 the PACS reports a status of partial almanac download to the Call Processor, which in response the Call Processor closes the session with PACS in step 1140.
- the PACS then stores the almanac data to memory (i.e., a storage device), in step 1142, and then sends an acknowledgment to the Call Processor in step 1144.
- the process ends 1118.
- step 1150 if the Call Processor and/or the PACS dete ⁇ nines that the signal conditions have changed in a way that causes the PACS to only collect a partial almanac, the PACS reports a status of partial almanac to the Call Processor in step 1148. In response, the Call Processor closes the session with PACS in step 1140. The PACS then stores the almanac data to memory (i.e., a storage device), in step 1142, and then sends an acknowledgment to the Call Processor in step 1144. The process then ends 1118.
- memory i.e., a storage device
- step 1152 if the Call Processor and/or the PACS determines that the signal conditions have not changed in a way that causes the PACS to only collect a partial almanac, the process continues to decision step 1152.
- decision step 1152 if the Call Processor and/or the PACS determines that the PACS cannot collect the entire almanac within a certain time determined by either the Call Processor and/or the PACS, the process continues to step 1154.
- step 1154 the PACS responds to Call Processor with a status that indicates that the almanac cannot be collected.
- the Call Processor closes the session with PACS in step 1140.
- the PACS stores the almanac data to memory (i.e., a storage device), in step 1142, and then sends an acknowledgment to the Call Processor in step 1144.
- the process ends 1118.
- FIG. 12 shows a signal flow diagram 1200 for the exemplary polling process performed by the PACS 1202.
- the Call Processor 1204 makes a request for a piecewise almanac download to the PACS 1202.
- the Call Processor 1204 may take on the burden of making periodic requests to the PACS 1202 to gather the almanac status until either the Call Processor 1204 receives the status of a full almanac download or the Call Processor 1204 decides to close the session before a full almanac is complete.
- the process may include the Call Processor 1204 opening a session with the PACS 1202 (possible through the PI2 interface), making a request to the PACS 1202 for collecting a piecewise satellite ("SV") almanac download, periodically polling the PACS 1202 to collect the piecewise almanac, having the PACS 1202 respond with a collected SV almanac status for each polling request, and on completion of the complete download, having the Call Processor 1204 close the session with the PACS 1202.
- the PACS 1202 then stores the almanac data to the memory device 1260 (such as Flash) before the session is closed between the PACS 1202 and Call Processor 1204.
- the memory device 1260 such as Flash
- the PACS 1202 may receive instructions from the Call Processor 1204 that include parameters of operations such as, but not limited to, instructions to collect satellite almanac when signal conditions are above a certain level (such as greater than 28 dB-Hertz) and indications of the whether the Call Processor 1204 will, or will not, not provide any almanac aiding.
- parameters of operations such as, but not limited to, instructions to collect satellite almanac when signal conditions are above a certain level (such as greater than 28 dB-Hertz) and indications of the whether the Call Processor 1204 will, or will not, not provide any almanac aiding.
- the Call Processor 1204 sends an Session Open request 1206 to the PACS 1202 via Interface 1208 (such as the PI2 interface).
- the PACS 1202 sends an acknowledgment 1210 of the Session Open request 1206.
- the Call Processor 1204 then sends a request for piecewise almanac 1212 to the PACS 1202.
- the PACS 1202 then passes the piecewise almanac request 1214 from the Interface 1208 to the controller 1216, which passes the request 1218 to the GPS core 1220 within the GPS module (not shown) and sends an acknowledgment 1222 to the call processor 1204.
- the GPS core 1220 then receives the GPS signals 1224 from the GPS constellation 1226.
- the GPS core 1220 extracts the received almanac data from the received GPS signals 1224 and passes the received almanac data 1228 to the controller 1216.
- the Controller 1216 determines the pseudorandom noise number ("PRN"), time-of-arrive (“TOA”), and Week number from the almanac data and passes, via 1230 and 1232, the almanac data, including the PRN, TOA and Week number, from the PACS 1202 to Call Processor 1204.
- the Call Processor 1204 makes periodic requests for piecewise almanac 1234 via requests for almanac update status requests.
- the GPS Core 1220 is constantly receiving GPS signals 1224 and 1236 from the GPS constellation 1226, and that the Controller 1216 is periodically requesting 1238, 1240, and 1242 and receiving 1244, 1246 and 1248 almanac data from the GPS core 1220.
- the Controller 1216 responds to the periodic requests for piecewise almanac from the Call Processor 1204, with piecewise almanac data 1250 that is passed 1252 from the PACS 1202 to the Call Processor 1204.
- the Controller 1216 then manages the almanac database and applies any mixed almanac processing.
- the Call Processor 1204 sends a Session Close Request 1254 to the PACS 1202, in response to either a received status from the PACS 1202 of full almanac collected or a status indicating that the PACS cannot collect the almanac.
- the Session Close request 1256 is passed to the Controller 1216.
- the Controller 1216 then passes 1258 the almanac data to storage memory 1260.
- the Controller then responds, via 1262 and 1264, to the Call Processor 1204 with an acknowledgment.
- the Call Processor makes a request for an almanac download (such as a piecewise almanac download) to the PACS.
- the PACS makes a determination on the reporting of the status of the almanac download based on the following scenarios: 1) PACS will report a status of full almanac download, if the PACS received enough time to complete the collection of the full almanac; 2) PACS will report a status of partial almanac download in the case that the Call Processor performs Session Close, for any reason, before a full almanac download was completed by the PACS; 3) PACS will report a status of partial almanac download in the case when the signal condition changes while the PACS is collecting the almanac and was able to collect only a partial almanac; and 4) PACS will report a status to the Call Processor that the almanac could not be collected because the PACS could not collect the almanac (typically in weak signal conditions) within a certain predetermined time such as, for example, 5 minutes.
- the PACS then stores the almanac data to the memory device (such as Flash) before the session is closed between and the
- FIG. 13 shows a signal flow diagram 1300 for exemplary non-polling process performed by the PACS 1302.
- the Call Processor 1304 initiates a session with the PACS 1302 and requests an almanac download (such as a piecewise almanac download) to the PACS 1302.
- the PACS 1302 may receive instructions from the Call Processor 1304 that include parameters of operations such as, but not limited to, instructions to collect satellite almanac when signal conditions are above a certain level (such as greater than 28 dB-Hertz) and indications of the whether the Call Processor 1304 will, or will not, provide any almanac aiding.
- the PACS 1302 then responds with an acknowledgment to the Call Processor's 1304 request, starts almanac collection, and responds to the Call Processor 1304 with almanac status messages.
- the Call Processor 1304 requests almanac update status from the PACS 1302 via message requests.
- the PACS 1302 responds to the Call Processor 1304 requests with almanac status messages for the almanac data collected for all the satellites that include almanac PRN, TOA, and Almanac Week number.
- the PACS 1302 then manages the almanac database and applies any mixed almanac processing.
- the Call Processor 1304 closes the session with the PACS 1302 by sending a Close Session Request.
- the PACS 1302 then stores the ahnanac to a memory device 1360 (such as Flash) and sends an acknowledgment to the Call Processor 1304.
- the Call Processor 1304 sends an Session Open request 1306 to the PACS 1302 via Interface 1308 (such as the PI2 interface).
- the PACS 1302 sends an acknowledgment 1310 to the Session Open request 1306.
- the Call Processor 1304 then sends a request for almanac 1312 to the PACS 1302.
- the PACS 1302 then passes the almanac request 1314 from the Interface 1308 to the controller 1316, which passes the request 1318 to the GPS core 1320 within the GPS module (not shown) and sends an acknowledgment 1322 to the call processor 1304.
- the GPS core 1320 receives the GPS signals 1324 from the GPS constellation 1326.
- the GPS core 1320 extracts the received almanac data from the received GPS signals 1324 and passes the received almanac data 1328 to the controller 1316.
- the Controller 1316 determines the status of the almanac download and passes the almanac data status, via 1330 and 1332, from the PACS 1302 to Call Processor 1304.
- the Call Processor 1304 makes a request for almanac 1334.
- the GPS Core 1320 is constantly receiving GPS signals 1324 and 1336 from the GPS constellation 1326, and that the Controller 1316 is periodically requesting 1338, 1340, and 1342 and receiving 1344, 1346 and 1348 almanac data from the GPS core 1320.
- the Controller 1316 responds to the almanac request 1334 from the Call
- the Controller 1316 then manages the almanac database and applies any mixed almanac processing.
- the Call Processor 1304 sends a Session Close Request 1354 to the PACS 1302, in response to either a received status from the PACS 1202 of full almanac collected or a status indicating that the PACS cannot collect the ahnanac.
- the Session Close request 1356 is passed to the Controller 1316.
- the Controller 1316 then passes 1358 the almanac data to storage memory 1360.
- the Controller 1316 then responds, via 1362 and 1364, to the Call Processor 1302 with an acknowledgment.
- FIG. 14 shows a signal flow diagram 1400 for another example non- polling process performed by the PACS 1402.
- the PACS 1402 reports a status of partial almanac download as a result of the Call Processor 1404 performing a Session Close (for any reason) before a full almanac download was completed by the PACS 1404.
- the Call Processor 1404 initiates a session with the PACS 1402 and requests an almanac download (such as a piecewise almanac download) from the PACS 1402.
- the PACS 1402 may receive instructions from the Call Processor 1404 that include parameters of operations such as, but not limited to, instructions to collect satellite almanac when signal conditions are above a certain level (such as greater than 28 dB-Hertz) and indications of the whether the Call Processor 1404 will, or will not, provide any almanac aiding.
- the PACS 1402 then responds with an acknowledgment to the Call Processor's 1404 request, starts almanac collection, and responds to the Call Processor 1404 with almanac status messages.
- the Call Processor 1404 requests almanac update status from the PACS 1402 via message requests.
- the PACS 1402 responds to the Call Processor 1404 requests with an acknowledgment and starts almanac collection.
- the Call Processor 1404 then sends a close session request to the PACS 1402 before the PACS 1402 gets a chance to complete the full almanac download.
- the PACS 1402 then manages the almanac database and applies any mixed ahnanac processing and responds to the Call Processor 1404 with a message that indicates whether a partial satellite almanac has been collected by the PACS 1402.
- the Call Processor 1404 requests an almanac update status and the PACS 1402 responds by reporting the almanac status for partial almanac data in fields that include almanac PRN, TOA, and Almanac Week number.
- the PACS 1402 then stores the almanac to a memory device 1452 (such as Flash) and sends an acknowledgment to the Call Processor 1404. At this point, the Call Processor 1404 may determine whether it wants a full almanac status or only the partially collected almanac.
- a memory device 1452 such as Flash
- the Call Processor 1404 sends an Session Open request 1406 to the PACS 1402 via Interface 1408 (such as the PI2 interface).
- the PACS 1402 sends an acknowledgment 1410 to the Session Open request 1406.
- the Call Processor 1404 then sends a request for almanac 1412 to the PACS 1402.
- the PACS 1402 then passes the almanac request 1414 from the Interface 1408 to the controller 1416, which passes the request 1418 to the GPS core 1420 within the GPS module (not shown) and sends an acknowledgment 1420 to the call processor 1404.
- the GPS core 1420 receives the GPS signals 1424 form the GPS constellation 1426.
- the GPS core 1420 extracts the received almanac data from the received GPS signals 1424 and passes the received almanac data 1428 to the controller 1416. It is appreciated that the GPS Core 1420 is constantly receiving GPS signals 1424 and 1430 from the GPS constellation 1426, and that the Controller 1416 is periodically requesting 1418 and 1432 and receiving 1428 and 1434 almanac data from the GPS core 1420. In this way, the PACS 1402 gathers the piecewise almanac from the GPS constellation 1426. When the Call Processor 1404 sends a Session Close request 1436 to the PACS 1402, the Session Close request 1438 is passed to the Controller 1416.
- the Controller 1416 then manages the almanac database and applies any mixed almanac processing and responds 1440, via the interface 1408, with response message 1442 to the Call Processor 1404 that indicates whether or not the PACS 1402 has collected a partial almanac for a satellite from the GPS constellation 1426.
- the Call Processor 1404 requests 1444 an almanac update status from the PACS 1402.
- the PACS 1402 responds 1446 to the Call Processor 1404 requests with almanac status messages 1448 for the almanac data collected for a satellite (or the satellites) that includes almanac PRN, TOA, and Almanac Week number.
- the PACS 1402 then passes 1450 the almanac data to storage memory 1452.
- the Controller 1416 then responds, via 1454 and 1456, to the Call Processor 1402 with an acknowledgment.
- FIG. 15 shows a signal flow diagram 1500 for yet another example non- polling process performed by the PACS 1504.
- the PACS 1502 reports a status of partial almanac download as a result of a change in signal conditions before a full almanac download was completed by the PACS 1504.
- the Call Processor 1504 initiates a session with the PACS 1502 and requests an almanac download (such as a piecewise almanac download) from the PACS 1502.
- the PACS 1502 may receive instractions from the Call Processor 1504 that include parameters of operations such as, but not limited to, instractions to collect satellite almanac when signal conditions are above a certain level (such as greater than 28 dB- Hertz) and indications of the whether the Call Processor 1504 will, or will not, provide any almanac aiding.
- the PACS 1502 sends an acknowledgment to the Call Processor 1502 and begins collecting the almanac. In this example, the signals change prior to the PACS 1502 collecting a full almanac.
- the PACS 1502 then sends a message to the Call Processor 1504 indicating whether it has collected a partial almanac.
- the Call Processor 1504 requests an almanac update status and the PACS 1504 response with the almanac status including the almanac status for partial almanac data in fields that include almanac PRN, TOA, and Almanac Week number.
- the PACS 1504 then manages the almanac database and applies any mixed almanac processing.
- the Call Processor 1502 then sends a Session Close request.
- the PACS 1502 then stores the almanac to a memory device 1520 (such as Flash) and sends an acknowledgment to the Call Processor 1504.
- the Call Processor 1504 sends an Session Open request 1506 to the PACS 1502 via Interface 1508 (such as the PI2 interface).
- the PACS 1502 sends an acknowledgment 1510 to the Session Open request 1506.
- the Call Processor 1504 then sends a request for almanac 1512 to the PACS 1502.
- the PACS 1502 then passes the almanac request 1514 from the Interface 1508 to the controller 1516, which passes the request 1518 to the GPS core 1520 within the GPS module (not shown) and sends an acknowledgment 1522 to the call processor 1504.
- the GPS core 1520 receives the GPS signals 1524 form the GPS constellation 1526.
- the GPS core 1520 extracts the received almanac data from the received GPS signals 1524 and passes the received almanac data 1528 to the controller 1516. It is appreciated that the GPS Core 1520 is constantly receiving GPS signals 1524 and 1530 from the GPS constellation 1526, and that the Controller 1516 is periodically requesting 1518 and 1532 and receiving 1528 and 1534 almanac data from the GPS core 1520. In this way, the PACS 1502 gathers the piecewise almanac from the GPS constellation 1526. The PACS 1502 then sends a response message 1536, 1538 to the Call Processor 1504 that indicates whether a partial almanac has been collected.
- the Call Processor 1504 requests an almanac update status 1540, 1542 and the PACS 1502 responds with the almanac status 1544, 1546 including the almanac status for partial almanac data in fields that include almanac PRN, TOA, and Almanac Week number.
- the PACS 1502 then manages the almanac database and applies any mixed ahnanac processing.
- the Call Processor 1504 sends a Session Close request 1548 to the PACS 1502
- the Session Close request 1550 is passed to the Controller 1516.
- the PACS 1502 passes 1552 the almanac data to storage memory 1554.
- the Controller 1516 then responds, via 1556 and 1558, to the Call Processor 1504 with an acknowledgment.
- FIG. 16 shows a signal flow diagram 1600 for yet another example non- polling process performed by the PACS 1604.
- the PACS 1602 reports a status of partial almanac download as a result of a change in signal conditions before a full almanac download was completed by the PACS 1604.
- the Call Processor 1604 initiates a session with the PACS 1602 and requests an almanac download (such as a piecewise almanac download) from the PACS 1602.
- the PACS 1602 may receive instructions from the Call Processor 1604 that include parameters of operations such as, but not limited to, instructions to collect satellite almanac when signal conditions are above a certain level (such as greater than 28 dB- Hertz) and indications of whether the Call Processor 1604 will, or will not, provide any almanac aiding.
- the PACS 1602 sends an acknowledgment to the Call Processor 1602 and begins collecting the almanac in piecewise fashion. In this example, if the PACS 1602 cannot collect the almanac (such as in weak signal environment) within a predetermined time, the PACS 1602 sends a message to the Call Processor 1604 that an almanac cannot be collected.
- the Call Processor 1604 responds by sending a Session Close request and the PACS 1602 signals change prior to the PACS 1602 collecting a full almanac. In response, the PACS 1602 returns an acknowledgment to the Call Processor 1604.
- the Call Processor 1604 sends an Session Open request 1606 to the PACS 1602 via Interface 1608 (such as the PI2 interface).
- the PACS 1602 sends an acknowledgment 1610 to the Session Open request 1606.
- the Call Processor 1604 then sends a request for almanac 1612 to the PACS 1602.
- the PACS 1602 then passes the almanac request 1614 from the Interface 1608 to the controller 1616, which passes the request 1618 to the GPS core 1620 within the GPS module (not shown) and sends an acknowledgment 1622 to the call processor 1604.
- the GPS core 1620 receives the GPS signals 1624 from the GPS constellation 1626.
- the GPS core 1620 extracts the received almanac data from the received GPS signals 1624 and passes the received almanac data 1628 to the controller 1616. It is appreciated that the GPS Core 1620 is constantly receiving GPS signals 1624 and 1630 from the GPS constellation 1626, and that the Controller 1616 is periodically requesting 1618 and 1630 and receiving 1628 and 1634 almanac data from the GPS core 1620. In this way, the PACS 1602 attempts to gather the piecewise almanac from the GPS constellation 1626.
- the PACS 1602 If the PACS 1602 cannot collect the almanac within a certain predefined time such as, for example, 5 minutes, the PACS 1602 responds to the Call Processor 1604 with a status message 1636, 1638 that indicates that the PACS 1602 cannot collect the almanac. In response, the Call Processor 1604 sends a Session Close request 1640 to the PACS 1602, the Session Close request 1640 is passed 1642 to the Controller 1616. The Controller 1616 then responds, via 1644 and 1646, to the Call Processor 1602 with an acknowledgment.
- a Session Close request 1640 to the PACS 1602
- the Session Close request 1640 is passed 1642 to the Controller 1616.
- the Controller 1616 responds, via 1644 and 1646, to the Call Processor 1602 with an acknowledgment.
- the processes described in FIG. 11 through FIG. 16 may be performed by hardware or software. If the process is performed by software, the software may reside in software memory (not shown) in the controller 1012, memory device 1014, Call Processor 1006, GPS module 1008, or an removable memory medium.
- the software in memory may include an ordered listing of executable instractions for implementing logical functions (i.e., "logic” that may be implement either in digital form such as digital circuitry or source code or in analog form such as analog circuitry or an analog source such an analog electrical, sound or video signal), may selectively be embodied in any computer-readable (or signal-bearing) medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that may selectively fetch the instractions from the instruction execution system, apparatus, or device and execute the instractions.
- logical functions i.e., "logic” that may be implement either in digital form such as digital circuitry or source code or in analog form such as analog circuitry or an analog source such an analog electrical, sound or video signal
- any computer-readable (or signal-bearing) medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system
- a "computer- readable medium” and/or “signal-bearing medium” is any means that may contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
- the computer readable medium may selectively be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium.
- a non-exhaustive list of the computer- readable medium would include the following: an electrical connection (or an “electronic” connection) having one or more wires, a portable computer diskette (magnetic), a RAM (electronic), a read-only memory “ROM” (electronic), an erasable programmable read-only memory (EPROM or Flash memory) (electronic), an optical fiber (optical), and a portable compact disc read-only memory "CDROM” (optical).
- the computer-readable medium may even be paper or another suitable medium upon which the program is printed, as the program can be elecfronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner if necessary, and then stored in a computer memory.
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006526973A JP5078352B2 (en) | 2003-09-18 | 2004-09-13 | Partial almanac collection system |
EP04788742A EP1664829A1 (en) | 2003-09-18 | 2004-09-13 | Partial almanac collection system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/666,551 US7239271B1 (en) | 2002-08-15 | 2003-09-18 | Partial almanac collection system |
US10/666,551 | 2003-09-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2005029117A1 true WO2005029117A1 (en) | 2005-03-31 |
Family
ID=34375855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2004/030010 WO2005029117A1 (en) | 2003-09-18 | 2004-09-13 | Partial almanac collection system |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1664829A1 (en) |
JP (1) | JP5078352B2 (en) |
KR (1) | KR20060092216A (en) |
CN (1) | CN1860378A (en) |
WO (1) | WO2005029117A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014108752A1 (en) * | 2013-01-10 | 2014-07-17 | Nokia Corporation | Handling assistance data for global positioning |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7123928B2 (en) | 2003-07-21 | 2006-10-17 | Qualcomm Incorporated | Method and apparatus for creating and using a base station almanac for position determination |
US9137771B2 (en) | 2004-04-02 | 2015-09-15 | Qualcomm Incorporated | Methods and apparatuses for beacon assisted position determination systems |
US8478228B2 (en) | 2008-10-20 | 2013-07-02 | Qualcomm Incorporated | Mobile receiver with location services capability |
US8600297B2 (en) | 2009-07-28 | 2013-12-03 | Qualcomm Incorporated | Method and system for femto cell self-timing and self-locating |
WO2017175294A1 (en) * | 2016-04-05 | 2017-10-12 | 三菱電機株式会社 | Signal reception device and signal reception method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6256475B1 (en) * | 1997-09-11 | 2001-07-03 | Lucent Technologies, Inc. | Telecommunications-assisted satellite positioning system |
US20020049536A1 (en) * | 2000-08-08 | 2002-04-25 | Peter Gaal | Method, apparatus, and system for signal prediction |
US6389291B1 (en) * | 2000-08-14 | 2002-05-14 | Sirf Technology | Multi-mode global positioning system for use with wireless networks |
US20020135510A1 (en) * | 2001-02-27 | 2002-09-26 | Bruno Ronald C. | Hybrid system for position determination by a mobile communications terminal |
EP0880713B1 (en) * | 1995-10-09 | 2003-08-27 | Snaptrack, Inc. | Combined gps positioning system and communications system utilizing shared circuitry |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6107960A (en) * | 1998-01-20 | 2000-08-22 | Snaptrack, Inc. | Reducing cross-interference in a combined GPS receiver and communication system |
US6462708B1 (en) * | 2001-04-05 | 2002-10-08 | Sirf Technology, Inc. | GPS-based positioning system for mobile GPS terminals |
JP2003194910A (en) * | 2001-12-26 | 2003-07-09 | Matsushita Electric Ind Co Ltd | Location detecting apparatus |
JP4255441B2 (en) * | 2002-08-15 | 2009-04-15 | サーフ テクノロジー インコーポレイテッド | GPS system interface |
-
2004
- 2004-09-13 KR KR1020067005443A patent/KR20060092216A/en not_active Application Discontinuation
- 2004-09-13 WO PCT/US2004/030010 patent/WO2005029117A1/en active Application Filing
- 2004-09-13 JP JP2006526973A patent/JP5078352B2/en not_active Expired - Fee Related
- 2004-09-13 CN CNA2004800284563A patent/CN1860378A/en active Pending
- 2004-09-13 EP EP04788742A patent/EP1664829A1/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0880713B1 (en) * | 1995-10-09 | 2003-08-27 | Snaptrack, Inc. | Combined gps positioning system and communications system utilizing shared circuitry |
US6256475B1 (en) * | 1997-09-11 | 2001-07-03 | Lucent Technologies, Inc. | Telecommunications-assisted satellite positioning system |
US20020049536A1 (en) * | 2000-08-08 | 2002-04-25 | Peter Gaal | Method, apparatus, and system for signal prediction |
US6389291B1 (en) * | 2000-08-14 | 2002-05-14 | Sirf Technology | Multi-mode global positioning system for use with wireless networks |
US20020135510A1 (en) * | 2001-02-27 | 2002-09-26 | Bruno Ronald C. | Hybrid system for position determination by a mobile communications terminal |
Non-Patent Citations (2)
Title |
---|
B. W. PARKINSON - J. J. SPILKER: "Global Positioning system: Theory and Applications - Vol. I", 1996, AMERICAN INSTITUTE OF AERONAUTICS AND ASTRONAUTICS, XP002318287 * |
See also references of EP1664829A1 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014108752A1 (en) * | 2013-01-10 | 2014-07-17 | Nokia Corporation | Handling assistance data for global positioning |
RU2619263C2 (en) * | 2013-01-10 | 2017-05-15 | Нокиа Текнолоджиз Ой | Supporting data processing for global positioning |
CN104919336B (en) * | 2013-01-10 | 2017-06-23 | 诺基亚技术有限公司 | Process the assistance data for global location |
Also Published As
Publication number | Publication date |
---|---|
JP2007506099A (en) | 2007-03-15 |
CN1860378A (en) | 2006-11-08 |
JP5078352B2 (en) | 2012-11-21 |
KR20060092216A (en) | 2006-08-22 |
EP1664829A1 (en) | 2006-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7239272B2 (en) | Partial almanac collection system | |
JP4255441B2 (en) | GPS system interface | |
EP1817604B1 (en) | Reference oscillator frequency correction system | |
KR101054716B1 (en) | Methods and apparatuses for assisted navigation systems | |
AU755817B2 (en) | Method and apparatus for acquiring satellite positioning system signals | |
CN101365957B (en) | Global navigation satellite system | |
US20070132636A1 (en) | Multi-receiver satellite positioning system method and system for improved performance | |
KR20020087098A (en) | Methods and apparatuses for using assistance data relating to satellite position systems | |
US8217832B2 (en) | Enhancing location accuracy using multiple satellite measurements based on environment | |
WO2007027422A1 (en) | Satellite positioning system aiding using a secondary satellite receiver | |
EP1664829A1 (en) | Partial almanac collection system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200480028456.3 Country of ref document: CN |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BW BY BZ CA CH CN CO CR CU CZ DK DM DZ EC EE EG ES FI GB GD GE GM HR HU ID IL IN IS JP KE KG KP KZ LC LK LR LS LT LU LV MA MD MK MN MW MX MZ NA NI NO NZ PG PH PL PT RO RU SC SD SE SG SK SY TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): BW GH GM KE LS MW MZ NA SD SZ TZ UG ZM ZW AM AZ BY KG MD RU TJ TM AT BE BG CH CY DE DK EE ES FI FR GB GR HU IE IT MC NL PL PT RO SE SI SK TR BF CF CG CI CM GA GN GQ GW ML MR SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2004788742 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020067005443 Country of ref document: KR Ref document number: 2006526973 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 440/MUMNP/2006 Country of ref document: IN |
|
WWP | Wipo information: published in national office |
Ref document number: 2004788742 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1020067005443 Country of ref document: KR |