Systems and methods for managing power consumption

GPS navigation devices or GPS receivers can consume less power by using a temperature recorder circuit and/or a power manager in maintaining the accuracies of the GPS receiver time and reference frequency to improve battery life. A representative receiver includes a time reference device and the temperature recorder circuit that operate while the receiver hibernates. The time reference device generates clock signals and the temperature recorder circuit receives and operates using the clock signals from the time reference device. The temperature recorder senses the temperature of the time reference device. The temperature recorder circuit is designed to send a wake-up signal to at least one electrical component of the receiver to wake up the electrical component of the receiver. The electrical component of the receiver includes at least one of the following: a GPS signal processing system and a frequency reference device.

TECHNICAL FIELD

The present disclosure is generally related to global positioning system (GPS) technology and, more particularly, is related to systems and methods for managing power consumption.

BACKGROUND

Today, it is important to consumers that portable devices have a long battery life. Many portable devices include GPS receivers that enable the consumers to navigate from one place to another. GPS acquisition performance is typically limited by four items of information:a) The accuracy of a reference frequency on a GPS receiverb) The accuracy of the GPS receiver time relative to GPS system timec) Availability of currently valid Ephemeris information (high precision satellite orbital parameters.)d) The accuracy of an initial position estimate of the GPS receiver

GPS navigation devices consume a fair amount of power to realize high speed GPS acquisition performance, resulting in shorter battery life for GPS devices. Currently, the available techniques for improving the above items a) and b) are limited with respect to power consumption.

For example, the reference frequency often comes from a temperature compensated crystal oscillator (TCXO) in most GPS receivers. The TCXO typically runs when the GPS receiver is running and not when the GPS receiver hibernates because the TCXO can use too much power if it is left always on. It is a much more accurate frequency reference than a real time clock (RTC) crystal oscillator. But since the TCXO cannot be left always on, the TCXO cannot be used for a time reference, because when the power is off, a time counter using that reference frequency would stop. The RTC crystal oscillator is typically used as a time reference for the above reasons, among others.

Currently, the accuracy of time from the RTC crystal oscillator is typically limited by unknown frequency excursions, among other factors. Such unknown frequency excursions are typically dominated by temperature changes at the RTC crystal oscillator, during the time when the RTC crystal oscillator cannot otherwise be calibrated to a more accurate time reference because the GPS is shut off (in hibernate mode) to save battery power. If an external source of time is available, such as from a radio network, then the time accuracy is limited to the accuracy of the network source. Sometimes the network time is not available, or not very accurate for the purpose of this application.

The knowledge of the reference frequency is typically limited by the accuracy and environmental (temperature) stability of the reference TCXO. Frequency can also be derived from some network radio receivers, but this may not be quick, easy to implement, accurate, or even available.

SUMMARY

GPS navigation devices or GPS receivers can consume less power by using a temperature recorder circuit and/or a power manager in maintaining the accuracies of the GPS receiver time and reference frequency to improve battery life. A representative receiver includes a time reference device and the temperature recorder circuit that operate while the receiver hibernates. The time reference device generates clock signals and the temperature recorder circuit receives and operates using the clock signals from the time reference device. The temperature recorder senses the temperature of the time reference device. The temperature recorder circuit is designed to send a wake-up signal to at least one electrical component of the receiver to wake up the electrical component of the receiver. The electrical component of the receiver includes at least one of the following: a GPS signal processing system and a frequency reference device.

Other systems, devices, methods, features of the invention will be or will become apparent to one skilled in the art upon examination of the following figures and detailed description. It is intended that all such systems, methods, features be included within the scope of the invention, and be protected by the accompanying claims.

DETAILED DESCRIPTION

Exemplary systems are first discussed with reference to the figures. Although these systems are described in detail, they are provided for purposes of illustration only and various modifications are feasible. After the exemplary systems are described, examples of flow diagrams of the systems are provided to explain the manner in which parameters and values associated with some electrical components of the navigation device can be adjusted while conserving power consumption using a temperature recorder circuit and a power manager.

FIG. 1is a block diagram that illustrates a system100having a global positioning system (GPS) navigation device115that improves accuracies of the GPS receiver time and the reference frequency while conserving power consumption using a temperature recorder circuit310(FIG. 3) and a power manager330(FIG. 3). A simple system100includes a plurality of signal sources105,110,113,114and a navigation device115. Alternatively or additionally, a more complex system100, such as an assisted global positioning system (AGPS), further comprises a base station120and a server125. Although only one navigation device115, one base station120, and one server125are shown in the system100, the system100can include multiple navigation devices, multiple base stations and/or multiple servers. Alternatively or additionally, the server125may be co-located with the base station120(e.g., Server Generated Extended Ephemeris) or with the navigation device115(e.g., Client Generated Extended Ephemeris).

The signal sources105,110,113,114include GPS satellites (also known as space vehicles), among others. The signal sources105,110,113,114generally orbit above the location of the navigation devices115at any given time. The navigation devices115include, but are not limited to, GPS receivers130, cell phones with embedded signal receivers, and personal digital assistants (PDAs) with embedded signal receivers, among others. The navigation devices115further includes a temperature recorder circuit310and a power manager330, both of which are described further in relation toFIGS. 3-5. The signal sources105,110,113,114transmit signals to the navigation devices115, which use the signals to determine the location, speed, and heading of the navigation devices115.

In an AGPS system, a GPS assistance server125assists the navigation devices115, such as a Mobile Station (MS) client (e.g., a cellular phone) in obtaining a position fix on the client's position. In one embodiment of the AGPS, the MS client115sends GPS measurements to the GPS server125, which then calculates the client's position. For an accurate 3-D position fix the MS client115generally receives signals from four satellites105,110,113,114.

FIG. 2is a high-level block diagram that illustrates an embodiment of a navigation device115, such as that shown inFIG. 1. The navigation device115includes, but is not limited to, sensor(s)205, a GPS signal processing system210, and a user interface215. It should be noted that some sensors205may not be included in some navigation devices115. The sensor205can include, but is not limited to, temperature sensors305(FIG. 3) and inertial sensors that include, for example, micro-electromechanical system (MEMS) sensors, among others.

The GPS signal processing system210can compute position fixes using a current working hypothesis of a location based on prior navigation. The GPS signal processing system210obtains at least one GPS range measurement. With at least one range measurement, a timing receiver can update the GPS receiver time and frequency, based on the position hypothesis. If the current position hypothesis is not available, the GPS signal processing system210uses at least three (3) and possibly more satellite acquisitions and range measurements to calculate the position fix.

The GPS signal processing system210can include, but is not limited to, a GPS receiver130, a temperature recorder circuit310(FIG. 3) and a power manager330(FIG. 3), among others. In general, the GPS receiver130is capable of computing position fixes. The GPS receiver130can be designed to electrically couple to the temperature recorder circuit310and the power manager330, both of which facilitates improving the accuracy of the GPS receiver time and reference frequency while conserving power consumption. The temperature recorder circuit310and the power manager330are further described in relation toFIG. 3.

FIG. 3is a block diagram that illustrates an embodiment of a GPS signal processing system210, such as that shown inFIG. 2, which includes a temperature recorder circuit310and a power manager330. In this example, the GPS signal processing system210includes a GPS receiver130having memory325that contains the power manager330and a GPS receiver processing device335that executes the power manager330. The GPS receiver130is electrically coupled to the temperature recorder circuit310, time reference device340, frequency reference device350, and sequencer360, among others.

The time reference device340and temperature recorder circuit310operate regardless of whether or not the navigation device115hibernates. The time reference device340generates clock signals while and the temperature recorder circuit310receives and operates using the clock signals from the time reference device340. The temperature recorder circuit310is designed to send a wake-up signal to the GPS signal processing system210, the frequency reference device350, and other electrical components of the GPS receiver130to wake up the GPS receiver130.

The temperature recorder circuit310includes a temperature sensor305that senses the temperature of the time reference device340and/or a frequency reference device350and generates data associated with a temperature change of the time reference device340or the frequency reference device350. In this example, the time reference device340and the frequency reference device350are shown to be implemented as physically separate devices from the GPS receiver130, and separate from each other. However, one skilled in the art would appreciate the various combinations of having separate devices or combined devices for the time reference device340, the frequency reference device350, and GPS receiver130.

The temperature sensor305can be located, for example, a) on the GPS receiver silicon die130, b) external to the GPS receiver silicon die130on the frequency reference device350, c) external to the GPS receiver silicon die130on the time reference device340, and d) internal to the temperature recorder310. It should be noted that although the figures show one temperature sensor305, one skilled in the art would appreciate using more than one temperature sensors305on various electrical components of the navigation device115. For example, two temperature sensors305can be located external to the GPS receiver silicon die130each on the frequency reference device350and on the time reference device340. The temperature recorder circuit310can measure and store the outputs of one of the two temperature sensors305, both, or average.

The processing device335, such as a microprocessor, is coupled to the memory325having the power manager330. The receiver processing device335is designed to wake up after receiving the wake-up signal from the temperature recorder circuit310and execute instructions associated with the power manager330. The instructions associated with the power manager330include, for example, determining if the temperature recorder circuit310sent a wake-up signal and reading the data from the temperature recorder circuit310. Based on the read data, the power manager330adjusts at least one of the following: the time reference device340, the frequency reference device350and the temperature recorder circuit310, to improve accuracy of the GPS receiver time and reference frequency, and change operation(s) of the temperature recorder circuit310. Operations of the power manager330are further described inFIGS. 4-5.

A sequencer360turns on the GPS receiver130based on the wake-up signal from the temperature recorder circuit310. The sequencer360can continuously operate regardless of whether the GPS receiver130or navigation device115hibernates, similar to the temperature recorder circuit310and time reference device340. The sequencer360is adjustable and receives configuration parameters from the memory325via the power manager330and the processing device335, when the GPS Receiver is awake.

FIG. 4is a more detailed block diagram that illustrates an embodiment of a temperature recorder circuit310, such as that shown inFIG. 3. The temperature recorder circuit310includes an analog section405and a digital section413. The analog section405includes a temperature sensor305that is coupled to an analog-to-digital converter (ADC)450. The temperature sensor305senses the temperature of the time reference device340or the frequency reference device350and generates data associated with a temperature change of the time reference device340or the frequency reference device350at line480. The ADC450receives the generated data at line480from the temperature sensor305and converts the data from analog signals to digital signals at line485.

The temperature sensor305can be located on the time and frequency reference device340,350, or in close proximity to the time and frequency reference device340,350so that the temperature sensor305can accurately measure the temperature of the time and frequency reference device340,350. Alternatively there may be two temperature sensors305each to measure the time reference device340and the frequency reference device350, using either two ADC's or one ADC with multiplexed input. The temperature sensor305and ADC450can be designed to measure the temperature of the time and frequency reference device340,350at an update rate, regardless of whether the system is operating or hibernating.

The ADC450can be coupled to a switched differential proportional to absolute temperature (PTAT) voltage reference447that is designed to be bypassed with switches and fed a constant voltage to the ADC450. The switched PTAT voltage reference447stores the result in memory440with a point of pure reference curvature at the applied temperature to correct an Nth, e.g. 2nd, order dependence of the switched PTAT voltage reference447. Alternatively or additionally, the switched PTAT voltage reference447is further designed to switch back in and subtract a resulting conversion from the earlier stored code. The switched PTAT voltage reference447can repeat the subtraction each time without having to re-compute the pure reference curvature.

A control generator420receives clock signals at line475from the time reference device340and can change a measurement rate of the temperature sensor305at line470based on the clock signal475. A time counter430also receives the clock signals at line475from the time reference device340and generates data associated with the GPS receiver time at line490. The memory440of the temperature recorder circuit310receives and stores, for example, the GPS receiver time from the time counter430at line490and sensed temperature data from the ADC450at line485.

A hysteresis circuit445receives real-time data associated with the temperature from the ADC450at line485, compares it with the most recent previous temperature from memory440, and determines whether the memory440stores the real-time data at line485. The hysteresis circuit445can instruct the memory440at line495to store the real-time data at line485based on the temperature change. Alternatively or additionally, the hysteresis circuit445can be designed to reduce the instances in which electrical circuit noise causes a memory access, rather than a real temperature change. Additionally, the hysteresis circuit445is designed to receive a hysteresis threshold, at line497, from the register and bus interface415. The hysteresis circuit445is further designed to store the current temperature value in memory440, responsive to any change in temperature exceeding the hysteresis threshold. Storage event can be programmed to cause memory440to signal register and bus interface415which then executes an interrupt to the GPS receiver130if the GPS receiver130is powered on or sequencer360if the GPS receiver130is in hibernate mode.

The time value from the time counter430at line490is stored in memory440to be associated with the stored temperature or implied temperature change. The registers and bus interface415receives data from the memory440of the temperature recorder circuit310or First in First out (FIFO) implemented in memory440at line493.

The registers and bus interface415can receive wake up signals from the hysteresis circuit445or the memory440, and send an interrupt signal460onward to the GPS receiver130, based on at least one of the following data: hysteresis threshold exceeded in circuit445, FIFO level being exceeded in memory440, the memory440being full, sensed temperature, data associated with the GPS receiver time, or temperature change. The processing device335generally has access through the memory440of the temperature recorder circuit310to the receiver time and temperature that caused the event. Alternatively or addition, if the option for receiver time alone is meant to imply a wake alarm from the time reference device340, the GPS receiver130can be configured to be able to distinguish the time alarm, so that appropriate action can be taken.

Alternatively or additionally, the FIFO fill depth can be set by a processing device335so that the wake-up signal can be sent before memory440is actually full. As such, the temperature recorder circuit310can wake up the GPS receiver130or navigation device115at or before a certain temperature change has occurred. The temperature change may be less, but not more than the temperature change implied by the fill level. If the FIFO uses the memory440with write and read pointers, then the FIFO generally triggers the empty signal or the full signal when a read pointer points to a write pointer address or the write pointer points to the read pointer address, respectively.

The registers and bus interface415communicates configuration commands and/or data between the memory325and the processing device335. The registers and bus interface415facilitates initialization of the temperature recorder circuit310by, for example, sending initialization data at line487to the control generator420. The initialization data includes, but is not limited to, control enable instruction, warm-up period instruction, and temperature recorder circuit310enable instruction, among others. It should be noted that a temperature recorder circuit310that has a fixed and unchangable configuration may not need any initialization.

In this example, the processing device335of the GPS receiver130communicates with the temperature recorder circuit310using the interface bus at line455. The processing device335of the GPS receiver130is electrically coupled to the time reference device340to receive the clock signals at line499. The clock signal at line475runs the time counter430that has stored receiver time while the navigation system115was off. This receiver time is the local estimate of GPS system time and is used to initialized the receiver timing to allow more rapid acquisition of GPS signals. Once acquired, the GPS signals are used to make pseudo-range measurements (e.g., range measurements biased by the error in the local receiver time relative to true GPS system time) from the GPS receiver130to the several satellites105,110,113,114. These measurements are then used to calculate the position and time error by the processing device335at the GPS receiver130. It should be noted that the temperature recorder circuit310can be coupled with any electrical components of the GPS receiver130or navigation device115and can wake up the GPS receiver130or other devices.

FIG. 5is a flow diagram that illustrates an embodiment of the architecture, functionality, and/or operation of the navigation device115, such as that shown inFIG. 1, which manages its power consumption using a temperature recorder circuit310and a power manager. Beginning with steps510and520, the navigation device115initializes the electrical components of the navigation device115and can be configured to hibernate as the temperature recorder circuit310and time reference device340operates. In step530, the temperature recorder circuit310sends a wake-up signal to some electrical components of the navigation device115, waking up the electrical components. In step530and540, the power manager330receives the wake-up signal and other data from the temperature recorder circuit310and adjusts parameters and values associated with some electrical components of the navigation device115based on the received wake-up signal and data. The electrical components can include, but are not limited to, the time reference device340, the frequency reference device350and the temperature recorder circuit310.

The systems and methods disclosed herein can be implemented in software, hardware, or a combination thereof. In some embodiments, the system and/or method is implemented in software that is stored in a memory and that is executed by a suitable microprocessor (μP) situated in a computing device. However, the systems and methods can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device. Such instruction execution systems include any computer-based system, processor-containing system, or other system that can fetch and execute the instructions from the instruction execution system. In the context of this disclosure, a “computer-readable medium” can be any means that can contain, store, communicate, propagate, or transport the program for use by, or in connection with, the instruction execution system. The computer readable medium can be, for example, but not limited to, a system or propagation medium that is based on electronic, magnetic, optical, electromagnetic, infrared, or semiconductor technology.

Specific examples of a computer-readable medium using electronic technology would include (but are not limited to) the following: an electrical connection (electronic) having one or more wires; a random access memory (RAM); a read-only memory (ROM); an erasable programmable read-only memory (EPROM or Flash memory); magneto-resistive random access memory (MRAM). A specific example using magnetic technology includes (but is not limited to) a portable computer diskette. Specific examples using optical technology include (but are not limited to) optical fiber and compact disc read-only memory (CD-ROM).

Note that the computer-readable medium could even be paper or another suitable medium on which the program is printed. Using such a medium, the program can be electronically captured (using, for instance, optical scanning of the paper or other medium), compiled, interpreted or otherwise processed in a suitable manner, and then stored in a computer memory. In addition, the scope of the certain embodiments of the present disclosure includes embodying the functionality of the preferred embodiments of the present disclosure in logic embodied in hardware or software-configured mediums.

It should be noted that any process descriptions or blocks in flowcharts should be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps in the process. As would be understood by those of ordinary skill in the art of the software development, alternate embodiments are also included within the scope of the disclosure. In these alternate embodiments, functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved.

This description has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the disclosure to the precise forms disclosed. Obvious modifications or variations are possible in light of the above teachings. The embodiments discussed, however, were chosen to illustrate the principles of the disclosure, and its practical application. The disclosure is thus intended to enable one of ordinary skill in the art to use the disclosure, in various embodiments and with various modifications, as are suited to the particular use contemplated. All such modifications and variation are within the scope of this disclosure, as determined by the appended claims when interpreted in accordance with the breadth to which they are fairly and legally entitled.