METHOD AND APPARATUS FOR COMPENSATING LOCAL OSCILLATOR FREQUENCY ERROR THROUGH ENVIRONMENTAL CONTROL

Abstract: The frequency error of an oscillator is minimized by characterizing the operating environment of the oscillator. An electronic device monitors parameters that are determined to have an effect on the frequency accuracy of the internal frequency source. Temperature is one parameter known to have an effect on the frequency of the internal frequency source and a primary contributor to device temperature is the RF Power Amplifier (PA). The electronic device collects and stores the activity level of the PA. The effective PA duty cycle over a predetermined period of time is calculated. The LO operating environment is stabilized by operating the PA at the calculated duty cycle when the LO is required to operate in a high stability mode.

Description: 2 The GPS receiver calculates the distance from the satellite to the receiver by determining the time it takes for a signal transmitted by the satellite to reach the receiver. Once the receiver determines its distance from the satellite it knows that it resides on a locus of points equidistant from the satellite. The satellite appears as a point source and the locus of points equidistant from a point is a spherical surface. When the receiver determines its distance from a second satellite the receiver knows that its position is located somewhere on a second spherical surface. However, the potential positions are greatly reduced when the distance from two satellites is known. This is because the location of the receiver lies somewhere on the intersection of the two spherical surfaces. The intersection of two spherical surfaces is a circle. Therefore, the receiver knows that its position lies on the circle of intersection. Determining the distance from the receiver to a third satellite creates a third spherical surface. The third spherical surface intersects the first two surfaces and also intersects the circle that defines the intersection of the first and second spherical surfaces. The intersection of the three spherical surfaces results in two distinct points where the receiver may be located. Once the two points generated by the intersection of three spherical surfaces has been determined the receiver can estimate which of the two points is the correct location or the receiver can determine its distance from a fourth satellite. The receiver can estimate which one of the two points is its correct location once the distances from three satellites have been determined. This can be done because one of the two points is not a likely location. The correct one of the two points will likely be near the surface of the earth whereas the incorrect point likely will be very far above the surface of the earth or deep within the surface of the earth. The exact position of the receiver will be known if the distance from a fourth satellite is determined. The exact position is known using four satellites because the intersection of four spherical surfaces results in only one point. The main problem in a GPS implementation is the accurate determination of the distance from the satellite to the receiver. Distance from the satellite to the receiver is calculated by measuring the time of arrival of a signal transmitted from the satellite to the receiver. Each satellite transmits two carrier frequencies each modulated with a unique pseudo random code. One of the carrier frequencies operates at 1575.42 MHz and the other carrier frequency operates at 1227.60 MHz. The receiver demodulates the received signal to extract the pseudo random code. A locally generated pseudo random code is synchronized to the demodulated pseudo random code. The delay between the 3 two pseudo random codes represents the time of arrival of the transmitted signal. The distance from the satellite can then be determined by multiplying the time of arrival by the velocity of light. All of the transmitting satellites are time synchronized. However, the mobile receiver is only weakly synchronized to the satellites. The weak time synchronization of the receiver to the satellites introduces errors into the position determination. As stated above, a distinct time of arrival corresponds to a distinct distance. The locus of points equidistant from a point is a spherical surface with a radius equal to the distance. However, if the time of arrival is only known to lie within a range of times, that is a measured time plus or minus some error, then the distance can only be known to lie within the corresponding range of values. The locus of points equidistant from the source is a spherical shell in the case where the distance is only known to lie within a range of values. The thickness of the spherical shell is equal to the error in the distance measurement. The intersection of three spherical shells, each shell corresponding to a position estimate based on an additional satellite, results in two solids, one of which represents the position of the receiver. Recall that in the case of discrete distances the intersection of the three spherical surfaces results in two points rather than two solids. The time synchronization problem is partially solved by including the distance measurement from a fourth satellite. First, the time error is assigned an assumed value, even zero. Then the distances from three satellites are determined. As explained earlier, the intersection of the three spherical surfaces defined by these three distance measurements results in two distinct points, one of which is the position of the receiver. The distance from a fourth satellite defines a fourth spherical surface. Ideally, in the case of no timing error, the fourth spherical surface intersects the other three spherical surfaces at only one point. However, the four spherical surfaces do not intersect when a timing error is present. There is no timing error between the satellites. Therefore, the timing error from the receiver to one satellite is the same as the timing error from the receiver to any of the satellites in the constellation. The timing error can be determined by adjusting the value of the assumed timing error. The timing error is determined when the four spherical surfaces intersect in a single point. Resolution of the timing error is only one of the problems that must be dealt with when position determination using GPS is implemented. A GPS position determination receiver must be implemented in a small physical size at a relatively low cost. The size and cost constraints become increasingly 4 important when the GPS receiver is implemented in a consumer oriented device. New requirements for wireless phones include the ability to determine a caller's location. The specific location of a wireless telephone is important in the case of an emergency call such as a 911 call within the United States. Yet, despite the physical design constraints, the receiver must quickly search and acquire the satellite signals. A receiver design must tradeoff cost, receive signal sensitivity, and search time. A receiver design cannot maximize all parameters simultaneously. Significant improvements in receiver sensitivity or search time result in increased receiver cost. A major contributor to the complexity associated with searching and acquiring the satellite signal is the frequency error attributable to the receiver Local Oscillator (LO). The LO is used in the receiver to downconvert the received signal to a baseband signal. The baseband signal is then processed. In the case of a signal received from a GPS satellite the baseband signal is correlated to all possible pseudo random codes to determine which satellite originated the signal and to determine the time of arrival of the signal. The search and acquisition process is greatly complicated by the LO frequency error. Any frequency error contributed by the LO creates additional search space that must be covered. Furthermore, the LO frequency error presents a separate dimension over which time of arrival must be searched. Thus, the search space is increased in proportion to the frequency error, since the time of arrival search must be conducted over all possible frequency errors. Many parameters contribute to real or perceived LO frequency error. The circuit operating temperature as well as the temperature gradient across the circuit board affects the LO frequency. Additionally, the frequency stability of the frequency reference used for the LO contributes directly to the LO frequency stability. An additional contributor to frequency error is the doppler shift contribution attributable to the velocity of the receiver. Even in the situation where the receiver LO is perfectly accurate there may be a perceived frequency error due to the doppler shift contribution. The shift may cause either an apparent increase or an apparent decrease in the frequency of the satellite transmission. Although both the satellite and the receive LO may be perfectly stable the signal at the receiver appears to have shifted in frequency. Doppler shift contributed by the movement of the receiver is not corrected within the receiver and only contributes to any frequency error already present in the receiver. 5 What is required is a manner of reducing the LO frequency error to reduce the search space that must be covered in baseband signal processing. Reduction in the search space allows for lower search complexity, which in turn allows for greater receiver sensitivity and decreased search and acquisition times. SUMMARY OF THE INVENTION The present invention is a novel and improved method and apparatus for reducing the frequency error of a Local Oscillator (LO) by characterizing the operation of the Radio Frequency (RF) Power Amplifier (PA) while in a first mode. In a second mode the operation of the RF PA is duplicated to achieve a stable operating environment for the LO. While operating in a first mode, an external frequency source having a small frequency uncertainty is provided to a receiver. The receiver uses the external frequency source as a frequency reference. The receiver estimates the frequency error of the LO using the external frequency source as a frequency reference. Simultaneous to the frequency estimate the receiver monitors various predetermined parameters that are known to have an affect on the accuracy and frequency stability of the LO. Operating temperature and temperature gradients along the circuit board are examples of parameters that affect the LO accuracy. A major contributor to the overall temperature of an electronic device such as a wireless phone, is the RF PA. The RF PA is also a major contributor to the temperature gradients within the electronic device. However, the RF PA is not operated continuously. Therefore, one parameter that is monitored is the activity of the RF PA. The activity of the RF PA over a predetermined time period can be used to calculate an effective PA operating duty cycle. The monitored parameter values, including the effective operating duty cycle, and the LO frequency are stored in memory locations. Alternatively, the frequency error can be stored in the table. This provides a series of data tables which characterize the LO. The LO can be switched to a second mode where the LO output frequency is controlled to achieve a lower frequency error. In the second mode the receiver no longer utilizes the external frequency source. The LO is compensated to correct for the estimated error based on the prior characterization. To minimize the temperature gradient across the electronic device when operating in the second mode the RF PA activity is controlled. The F PA may be continuously active in the second mode or may be operated 6 at the effective duty cycle calculated and stored while the electronic device is operated in the first mode. BRIEF DESCRIPTION OF THE DRAWINGS The features, objects, and advantages of the present invention will become more apparent from the detailed description set forth below when taken in conjunction with the drawings in which like reference characters identify correspondingly throughout and wherein: FIG. 1 is a block diagram of a receiver; FIG. 2 is a block diagram of a local oscillator; FIG. 3 is a diagram illustrating the search space; FIG. 4 is a block diagram of a receiver implementing LO characterization; FIG. 5 is a block diagram of an alternative embodiment of a receiver implementing LO characterization and PA activity characterization; FIG.s 6A-6B are flow charts of the LO characterization process; and FIG. 7 is a flow chart of the LO compensation process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 is a block diagram of a generic receiver 100. The antenna 102 serves as the interface between broadcast signals and the receiver 100. The antenna 102 is tuned to optimally receive signals transmitted in the L-Band where the receiver 100 is configured as a GPS receiver. In the case of a GPS receiver, the source of the broadcast signals is the constellation of GPS satellites orbiting the earth. The signals received by the antenna 102 are coupled to a downconverter 110. The downconverter 110 serves to downconvert the RF signals received by the antenna 102 to baseband signals that are further processed. The main components of the downconverter 110 are the mixers 112 and the Local Oscillator (LO) 114. The downconverter 110 may also include filters and amplifiers (not shown) to maximize the quality of the resultant baseband signal. The received signal is coupled from the antenna 102 to the mixer 112 within the downconverter 110. Any filtering or amplification of the signal within the downconverter 110 is not shown in order to simplify the block diagram to its functional components. The mixer 112 acts to effectively 7 multiply the received signal with the LO 114 signal. The resultant signal output from the mixer 112 is centered at two primary frequencies. One frequency component of the mixer 112 output is centered at the sum of the received signal center frequency and the LO 114 operating frequency. The second frequency component of the mixer 112 output is centered at the difference between the received signal center frequency and the LO 114 operating frequency. Two mixers 112-113 are used in the downconverter 110 when the received signal is quadrature modulated. The received signal is used as the input to both mixers 112-113. The second input on the first mixer 112 is the LO 110 signal. The second input on the second mixer 113 is the LO 114 signal offset by ninety degrees in a phase shifter (not shown). The resultant output of the first mixer 112 is labeled the incident phase output (I) and the resultant output of the second mixer 113 is labeled the quadrature phase output (Q). The I and Q outputs from the downconverter 110 are coupled to respective filters, 122 and 124, that are used to remove the undesired frequency component from the mixers 112-113 and to precondition the downconverted signal prior to subsequent signal processing. The filtered I and Q signals are coupled to a bank of correlators 130. The correlators 130 utilize digital signal processing techniques to process the I and Q signals. The correlators digitize the I and Q signals in Analog to Digital Converters (ADC) to permit digital signal processing. The correlators 130 are used to determine the phase offset of the received satellite signals when the receiver 100 is configured for GPS position determination. The receiver 100 has no prior knowledge as to its position when it is first powered up. The receiver 100 determines its initial position by searching through all the possible pseudo random code sequences transmitted by each satellite. Additionally, the receiver 100 must search through all of the possible phases of all possible pseudo random codes. The search is performed by a number of correlators operating in parallel to minimize the search time required by the receiver 100. Each correlator operates on a single pseudo random sequence. The correlator attempts to determine the phase offset of an internally generated pseudo random code to the code received from the satellite. Pseudo random codes that do not correspond to the satellite signal will have no correlation because of the random nature of the codes. Additionally, the correct pseudo random code will have no correlation with the received signal unless the phases of the two code signals are aligned. Thus, the correlators 130 will only provide an indication of correlation in the correlator having the same pseudo random code as the received signal when the phases of the two signals is aligned. 8 The correlator results are coupled to a peak detection 140 processor. The many correlators operate in parallel and simultaneously provide results to the peak detection 140 processor. The peak detection 140 processor determines the most likely pseudo random codes and phase offsets for the received signal. GPS utilizes orthogonal codes for each of the satellites. This allows all of the satellites to simultaneously transmit at the same frequency. The receiver is thus simultaneously presented information from multiple sources. The multiple correlators 130 operate independently of each other and can determine the phase of a received pseudo random code in the presence of other orthogonal codes. Therefore, the peak detection 140 processor is simultaneously provided correlation numbers identifying a number of pseudo random codes and the phase offset for those codes. Since each satellite is assigned a pseudo random code, the identification of a pseudo random code identifies a particular satellite as its source. Additionally, the determination of the code phase offset determines the time of arrival of that signal. The processor 150 analyzes the information in the peak detection 140 processor to calculate the receiver's 100 position. The simultaneous determination of the pseudo random code and code phase offsets allows the processor 150 to make an estimate of receiver position as the peak detection 140 processor is updated. However, the search process is complicated if the LO 114 frequency within the downconverter 110 is inaccurate. FIG. 2 shows a block diagram of a typical Phase Locked Loop (PLL) synthesized LO 200. A reference oscillator 202 is used as a frequency reference for a PLL. The reference oscillator 202 may be a fixed oscillator or may be a stable Voltage Controlled Oscillator (VCO) with a small tuning range. A wireless phone may utilize a Voltage Controlled Temperature Compensated Crystal Oscillator (VCTCXO) as the reference oscillator 202. A reference adjust control line 204 is provided where a VCO is used as the reference oscillator 202. The output of the reference oscillator 202 is coupled to a reference divider 210. The reference divider 210 is used to scale down the frequency of the reference oscillator 202. This is important because the output frequency of the PLL is proportional to the frequency input to the phase detector 220. The output of the reference divider 210 is provided as one input to the phase detector 220. A VCO 240 generates the output 244 of the PLL. The VCO must be capable of tuning over the desired frequency range of the PLL. The voltage applied on the VCO control line determines the frequency of operation. The output 244 of the PLL can be used as the input to the mixers in a 9 downconverter. The PLL output 244 is also coupled to the input of an output divider 250. The output divider 250 scales the frequency output 244 such that the frequency input to the phase detector 220 (the scaled output of the reference oscillator 204) multiplied by the output divider 250 scale factor results in the desired output frequency. The output of the output divider 250 is provided as a second input to the phase detector 220. The phase detector 220 compares the output of the reference divider 210 to the output of the output divider 250 and generates an error signal as an output. The error signal output from the phase detector 220 is coupled to a loop filter 230. The loop filter 230 band limits the error signal from the phase detector 220. The output of the loop filter 230 is used as the control voltage on the VCO 240. Therefore, it can be seen that the PLL output 244 derives its frequency accuracy from the frequency accuracy of the reference oscillator 202. Errors in the frequency accuracy of the LO complicate the search process. The complete search space 300 that each correlator must cover is illustrated in FIG. 3. Each correlator in a GPS receiver must search through all code phase possibilities. The code phase search space 310 is shown as the vertical search space in FIG. 3. Each bin in the code phase search space 310 represents the smallest discernable phase difference. The short pseudo random code length used for GPS is 1023 bits long. The code phase search space 310 must cover all potential code phases if the pseudo random nature of the code results in negligible correlation for all code phase offsets greater than zero. Therefore, at least 1023 bins are required in the code phase search space 310 to uniquely identify the phase of the pseudo random code. It can be seen from FIG. 3 that an increase in the frequency search space 320 proportionally increases the complete search space 300. The frequency search space 320 represents an additional search dimension since the frequency error is mutually exclusive of any code phase error. Each bin in the frequency search space 320 represents the minimum discernable frequency span. The size of the minimum discernable frequency span is a function of the number of samples and the total integration time. The minimum discernable frequency span decreases as the total integration time increases. Additionally, a sufficient number of samples are required to achieve a desired discernable frequency span. An increase in the LO drift results in an increased frequency search space 320. The receiver correlates samples within each bin defined in the complete search space 300. Successive results are accumulated to further improve the Signal to Noise Ratio (SNR) of the received signal. LO drift causes the results of 10 the accumulation to appear in a number of bins corresponding to the frequency drift. This "smearing" of the signal is shown in FIG. 3 as shading in a number of the frequency bins. An LO which exhibits no drift enables the results of the accumulation to appear in one single frequency bin. This greatly improves signal identification through increased SNR. FIG. 4 shows a block diagram of the LO stabilization circuit in a wireless phone 400 having GPS capability. The wireless phone 400 incorporates a phone transceiver 410 that allows communication through the wireless phone system. The wireless phone 400 also incorporates a GPS receiver 420 to assist in position determination. In the embodiment shown in FIG. 4 the wireless phone 400 operates either in the phone mode or the GPS mode, both modes do not operate simultaneously. However, both phone and GPS modes may operate simultaneously if sufficient processing capability exists within the wireless phone 400. Radio Frequency (RF) signals couple to and from the wireless phone using the antenna 402. The RF signals coupled through the antenna 402 include the phone transceiver 410 transmit and receive signals as well as the receive signals for the GPS receiver 420. In the embodiment shown in FIG. 4 the GPS receiver 420 and the phone transceiver 410 share a common LO 450. As discussed above, inaccuracy in the LO 450 results in a larger search space for the GPS receiver 420. Therefore, the embodiment shown in FIG. 4 utilizes information received by the phone transceiver 410 to characterize the LO 450 such that when the GPS receiver 420 performs a search the LO 450 frequency error is minimized. To characterize the internal LO 450 the wireless phone 400 is provided an external signal that has high frequency stability. In a wireless system such as a Code Division Multiple Access (CDMA) system specified in Telecommunications Industry Association (TLA) /Electronics Industries Association (EIA) 95-B MOBILE STATION-BASE STATION COMPATIBILITY STANDARD FOR DUAL-MODE SPREAD SPECTRUM SYSTEMS, signals are continuously being broadcast by the base stations. The signals that are continuously being broadcast by the base stations include the pilot channel and the sync channel. Both of these signals exhibit high frequency stability and either can be used as the external reference needed to characterize the LO 450. A wireless phone 400 designed to operate in a CDMA system such as the one specified by TIA/EIA 95-B incorporates a searcher within a receiver to continually search for the presence of pilot signals. In the wireless phone 400 11 the receiver within the phone transceiver 410 receives a pilot signal transmitted by a base station (not shown). The wireless phone 400 is able to take advantage of the presence of the pilot signal to improve the signal acquisition in GPS mode. The receiver utilizes the frequency stable pilot signal as an external frequency reference to determine the frequency error in the LO 450. The frequency error determined by the receiver is reported to an oscillator characterization circuit 430. Additionally, sensors 440, 442 are distributed throughout the wireless phone 400 to monitor factors that contribute to LO 450 frequency error. The sensors 440, 442 may monitor factors including, but not limited to, temperature, temperature gradients, RF Power Amplifier (PA) operation, RF PA duty cycle, battery voltage, cumulative power on time, humidity, or any other variable that is determined to contribute to LO 450 frequency error. A sensor 440 couples a signal to the oscillator characterization circuit 430. A number of digitized values corresponding to the sensor 440 readings are averaged and the average is stored in an array in memory 434. If the sensor 440 outputs an analog value the oscillator characterization circuit 430 digitizes the readings prior to averaging and storing the average value in memory 434. If the sensor 440 outputs a digital value then the oscillator characterization circuit 430 does not need to further condition the signal and merely saves the averaged digital sensor 440 reading. A processor 432 that forms a part of the oscillator characterization circuit 430 performs the averaging function. The oscillator characterization circuit 430 also averages a number of the frequency error readings determined and reported by the phone transceiver 410. The averaged frequency error reading is also stored in an array in memory 434. The averaged frequency error is stored in a memory 434 location associated with the corresponding averaged sensor 440-442 readings. In this manner a snapshot of the operating environment and corresponding frequency error of the LO 450 is cataloged. The oscillator characterization circuit 430 continues to accumulate new sensor 440 readings and the corresponding frequency error as long as the wireless phone 400 is operating in phone mode. When the wireless phone 400 operates in GPS mode the oscillator characterization circuit 430 utilizes the previously saved sensor 440 reading and frequency error information to assist the GPS receiver 420 in signal acquisition. To assist in GPS signal acquisition the oscillator characterization circuit 430 reads the values of each of the sensors 440-442. Then the processor 432 compares the current sensor 440-442 values against the array of previously stored values. The probable LO 450 frequency error is determined as the 12 previously stored value corresponding to the sensor 440-442 readings. If the exact sensor 440-442 readings are not present in the array, the processor 432 interpolates between the existing values or extrapolates from the existing values. The oscillator characterization circuit 430 thereby determines a probable LO 450 frequency error. The oscillator characterization circuit 430 then generates an error signal that is applied to the LO control line 438 to compensate for the frequency error. In one embodiment the error signal is converted from a digital value to an analog value to be applied to the LO using an over-sampled high dynamic range delta-sigma modulator as the digital to analog converter. The oscillator characterization circuit 430 may alternatively send the value of the frequency error to the GPS receiver 420 on an information bus 436. Knowledge of the frequency error allows the GPS receiver 420 to narrow the search space and acquire the signal with fewer calculations. The oscillator characterization circuit 430 may alternatively provide a combination of the two corrections. The oscillator characterization circuit 430 may provide the GPS receiver 420 an indication of the frequency error upon initial entry into GPS mode then may correct for any frequency drift by providing a signal on the LO control line 438 while the wireless phone 400 remains in the GPS mode. Actively correcting the LO 450 frequency drift minimizes the signal smearing that occurs when the LO 450 frequency drifts over multiple frequency bins during accumulation of successive correlations. LO 450 frequency error compensation using a signal provided on an LO control line 438 can be performed on a PLL synthesized LO 200 as shown in FIG. 2. Referring back to FIG. 2, recall that the output frequency 244 is proportional to the output of the reference oscillator 202. Once the VCO gain of the reference oscillator 202 is known the change in output frequency 244 for a given change in the reference adjust 204 voltage can be determined. Thus, the oscillator characterization circuit 430 of FIG. 4 can calculate a voltage to drive the reference adjust 204 line of the PLL synthesized LO 200 to compensate for a determined frequency error. FIG. 5 shows an alternate embodiment of a wireless phone 500. The implementation of the wireless phone 500 in FIG. 5 is essentially identical to the wireless phone 400 shown in FIG. 4. However, the wireless phone 500 of FIG. 5 incorporates additional monitoring of the transmitter 520. A wireless phone 500 operating in a system such as the one specified in TIA/EIA 95-B utilizes a transmitter 520 to communicate with the base stations. The transmitter 520 incorporates a Power Amplifier (PA) 522 in order to supply sufficient RF power to ensure cornmunication with the base stations. However, the PA 522 is not 13 very efficient and consumes a relatively large amount of power. The relatively low efficiency of the PA 522 results in a large amount of power being dissipated in the form of heat. The large PA 522 heat dissipation is the largest contributor to the operating temperature of the phone transceiver 510. Additionally, since the PA 522 appears as a point heat source, a thermal gradient is generated across the entire wireless phone 500. The oscillator characterization circuit 430 takes advantage of the PA's 522 dominance of the operating environment of the wireless phone 500. When the wireless phone 500 is operated in a first mode the oscillator characterization circuit 430 monitors the operation of the PA 522. A wireless phone 500 operating in a CDMA communication system such as the one specified in TIA/EIA 95-B does not operate continuously. Instead, the PA 522 is cycled on and off to correspond to the needs of the phone transceiver 510. The PA 522 cycle time may be long, as in the case of the wireless phone 500 transitioning from an active call to a standby state, or the cycle time may be very short, as in the case of the transmitter 520 operating in a burst data mode. It can be seen that the PA 522 operation duty cycle has a direct effect on its thermal dissipation and the corresponding thermal gradient across the entire wireless phone 500. The oscillator control circuit 430 operating in a first mode monitors the operation of the PA 522 on a control bus 524. The first mode for may represent a phone mode wherein the wireless phone 500 communicates with the wireless system. The oscillator characterization circuit 430 determines the PA 522 duty cycle either by averaging the on/off cycles over a predetermined number of samples or by maintaining a running average of on/ off cycles. The calculated PA 522 duty cycle is stored in memory 434. The oscillator characterization circuit 430 switches from PA 522 monitoring to PA 522 control in a second mode. The second mode may represent a GPS mode wherein the wireless phone 500 acquires signals from the GPS satellites and determines the position of the wireless phone 500. The oscillator characterization circuit 430 retrieves the calculated duty cycle from memory 434 and operates the PA 522 at that duty cycle. Driver PA's (not shown) within the phone transceiver 510 are disabled in the second mode such that the transmitter 520 does not radiate any interfering emissions. A stable wireless phone 500 operating environment is created by cycling the PA 522 at the same duty cycle as it had previously operated in the first mode. Therefore, a change from the first mode to the second mode does not result in a complete disabling of the PA 522 which results in a change in the thermal gradient within the wireless phone 500. In an alternative embodiment the oscillator 14 characterization circuit 430 merely activates the PA 522 without duty cycling. The alternative embodiment has the advantage of being simpler to implement. Monitoring the PA 522 duty cycle is not required in the first mode. However, the simplicity comes at a cost of environment accuracy. Merely activating the PA 522 in the second mode likely results in an operating environment that does not emulate the operating environment in the first mode. Where the PA 522 was idle in the first mode, activating the PA 522 upon the change to the second mode actually maximizes the change in the operating environment of the wireless phone 500. In another embodiment, where the PA 522 incorporates multiple operating modes in addition to being duty cycled, the oscillator characterization circuit 430 also monitors the operating mode of the PA 522 when in the first mode and reproduces it when in the second mode. FIG.s 6A and 6B show a block diagram of the LO characterization process. Referring to FIG. 6A, the process starts at block 602. Block 602 may represent initiation of the LO characterization process by a control processor. Once the process is started the routine proceeds to block 604 where an external frequency source is received. The external frequency source can be input to the receiver or can be received over the air as described in the receiver of FIG.s 4 and 5. The external frequency source is used as a frequency reference in block 606 to calculate the LO frequency error. Where a CDMA pilot signal is used as the external frequency source, the CDMA receiver determines the LO frequency error. The routine proceeds to block 608 and stores the value of the frequency error determined in block 606. The routine then proceeds to decision block 610 to determine whether a predetermined number, j, of frequency error samples have been saved. The predetermined number, j, represents a number over which frequency error samples will be averaged. The number may be as low as one and as high as can be tolerated by hardware and timing constraints within the implementing device. If j samples have not yet been saved the routine proceeds back to block 604 to acquire additional samples. Once the predetermined number of samples, j, have been saved the routine proceeds to block 620 where the j frequency error samples are averaged. In an alternate embodiment a moving average of the frequency error can be calculated. The moving average has the advantage of being able to characterize the LO frequency over extremely long periods of time. The disadvantage is that the moving average may not respond quickly to changes in operating environment that result in LO frequency error. 15 Once the samples have been averaged the routine proceeds to block 622 where the averaged frequency error is saved in memory. After the averaged frequency error has been saved the routine proceeds to point 630. Point 630 does not represent a function of the routine. Instead, it is used merely to link FIG. 6A to FIG. 6B. Continuing in the routine at FIG. 6B, the routine proceeds to block 640 where sensor readings are received. At least one sensor reading is required and the upper limit of sensor readings is only limited by the amount of hardware and processing power available in the implementing device. The operation of the PA is one of the parameters monitored. Monitoring the PA operation does not require a sensor, rather only the activity line of the PA needs to be monitored. The sensor readings are each saved in memory at block 642. The routine then proceeds to decision block 650 to determine whether a second predetermined number of samples, k, have been saved from each sensor. If the second predetermined number of sensor readings, k, have not yet been acquired and saved, the routine returns to block 640 to acquire further samples. Once the second predetermined number of sensor samples, k, have been acquired and saved, the routine proceeds to block 660 where each of the sensor readings is averaged over the k previously saved values. As in the case of the number of frequency error samples to be averaged, the number of sensor reading over which averaging is to be performed is chosen by the designer. Averaging the number of PA activity samples gives an estimate of the PA duty cycle over the averaging period. It may be preferable to maintain a running average of the PA operation to allow continual update of the duty cycle after each sample. The averaged sensor readings are saved in memory in block 662. The LO characterization process is complete at this point and the routine may either end or may continually characterize the LO by looping back to point 603 as is shown in FIG. 6B. FIG. 7 shows a block diagram of the LO compensation routine that operates once at least one loop of the LO characterization routine has occurred. The routine starts at block 702. The start could represent the initialization of GPS mode in a wireless phone that implements both a GPS receiver as well as a phone transceiver. Alternatively, the start may represent the end of one loop in the LO characterization routine where LO compensation occurs continually as may the LO characterization process. The routine then proceeds to block 704 where the sensor values are read. These sensor readings represent the most recent sensor readings. The routine then proceeds to decision block 710 where the sensor values are compared against previously stored sensor readings. If the sensor readings match values 16 already existing in the characterization array then the routine proceeds to block 730 where the frequency error corresponding to the saved sensor values is looked up in the array. However, if the sensor values do not already exist in the LO characterization array the routine proceeds to block 720 where the frequency error is calculated by interpolating or extrapolating the saved sensor readings to match the recent sensor readings and thereby generating an estimated LO frequency error. From either block 720 or 730 the routine proceeds to block 740 where the proper LO correction is calculated based upon the estimated LO frequency error. The LO correction is calculated by determining the frequency error from the LO characterization array and computing a LO control signal based upon knowledge of the transfer function relating the LO control line signal to output frequency. Where the LO control line is a voltage control signal for a VCO the transfer function is determined by the VCO gain. The routine proceeds to block 742 once the LO correction has been determined. At block 742 the routine applies the LO correction to the LO. Alternatively, or in addition to applying the LO correction, the routine may report data to the GPS receiver. The data may consist of the determined LO frequency error and any correction applied to the LO. The routine then proceeds to block 750 where the calculated PA duty cycle is retrieved from memory. The routine then proceeds to block 752 where the PA is operated at the calculated duty cycle. The routine then loops back to block 704 to update the LO correction based upon new sensor readings. Using the information and the compensated LO, the GPS receiver is able to more quickly and efficiently acquire signals. The previous description of the preferred embodiments is provided to enable any person skilled in the art to make or use the present invention. The various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without the use of the inventive faculty. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein. WE CLAIM:

Claims: 17 CLAIMS 1. A device for compensating Local Oscillator (LO) frequency error comprising: an LO; a receiver coupled to the LO for receiving an external frequency source and calculating an LO frequency error based upon the external frequency source; a Power Amplifier (PA); a minimum of one sensor for monitoring at least one variable that contributes to LO frequency error; and an oscillator characterization circuit for receiving the calculated LO frequency error and readings from the minimum of one sensor and for monitoring the activity of the PA; wherein the oscillator characterization circuit generates a compensation signal based upon the PA activity, the calculated LO frequency error, and readings from the minirnurn of one sensor. 2. The device of Claim 1 wherein the oscillator characterization circuit calculates a PA duty cycle in a first mode and controls the PA activity in accordance with the calculated PA duty cycle in a second mode. 3. The device of Claim 1 wherein the oscillator characterization circuit operating in a first mode stores in a memory device the readings from the minimum of one sensor, a calculated PA duty cycle, and the calculated LO frequency error and the oscillator characterization circuit operating in a second mode generates the compensation signal. 4. The device of Claim 3 wherein the oscillator characterization circuit generates the compensation signal by comparing a recent set of readings from the minimum of one sensor to the readings stored in the memory device and generates the compensation signal based upon the corresponding calculated LO frequency error saved in the memory device. 18 5. The device of Claim 3 wherein the oscillator characterization circuit in the second mode operates the PA in accordance with the calculated PA duty cycle. 6. The device of Claim 1 wherein the receiver is a wireless phone receiver. 7. The device of Claim 6 wherein the wireless phone receiver is adapted to receive Code Division Multiple Access (CDMA) signals. 8. The device of Claim 7 wherein the external frequency source is a CDMA pilot signal. 9. The device of Claim 8 wherein the oscillator characterization circuit operating in a first mode stores in a memory device the readings from the minirnun of one sensor, a calculated PA duty cycle, and the calculated LO frequency error and the oscillator characterization circuit operating in a second mode generates the compensation signal and operates the PA in accordance with the calculated PA duty cycle. 10. The device of Claim 9 wherein the oscillator characterization circuit applies the compensation signal to the LO to correct the LO frequency error. 11. The device of Claim 9 wherein the first mode is a wireless phone mode. 12. The device of Claim 11 wherein the second mode is a Global Positioning System (GPS) mode. 13. The device of Claim 9 wherein the minimum of one sensor comprises a temperature sensor. 14. A method for compensating Local Oscillator (LO) frequency error comprising: monitoring in a first mode a minimum of one sensor reading; 19 monitoring an LO frequency error; monitoring in the first mode an activity of a Power Amplifier (PA); compensating in a second mode an estimated LO frequency error based upon the minimum of one sensor reading and the LO frequency error monitored in the first mode. 15. The method of Claim 14 wherein the step of monitoring an LO frequency error comprises: receiving an external frequency source; and generating the LO frequency error by comparing the external frequency source to an LO frequency. 16. The method of Claim 14 further comprising; calculating in the first mode a PA duty cycle; and controlling in the second mode the PA in accordance with the calculated PA duty cycle. 17. The method of Claim 16 wherein the compensating step comprises: receiving a recent set of readings from the minimum of one sensor; generating the estimated LO frequency error using the recent set of readings from the minimum of one sensor and the readings from the minimum of one sensor received in the first mode; generating an LO correction signal from the estimated LO frequency error; and applying the LO correction signal to compensate the LO. 18. The method of Claim 14 wherein the external frequency source is a Code Division Multiple Access (CDMA) pilot signal. 19. The method of Claim 18 wherein the minimum of one sensor comprises a temperature sensor. 20. The methods of Claim 14 wherein the second mode is a Global Positioning System (GPS) mode.

Inventors: PATRICK CHRISTOPHER, YOUNIS SAED G, PATRICK, CHRISTOPHER, YOUNIS, SAED, G.
Applicants: QUALCOMM INC, QUALCOMM INCORPORATED
Application year: 2001
Main classification: H03J7
IPC codes: H03J7, H03L7, H04B1