An apparatus and method of providing an extremely low-power self-awakening function to a processing unit of a communication system

Abstract: A low-power stop mode "snooze" timer is implemented in the processing unit of a communication system, which runs without the use of the usual crystal-controlled oscillator. The "snooze" timer is implemented by a second oscillator with associated timer circuit. The second oscillator runs continually and feeds a timer which is loaded with a suitable value. The timer, when timed out or expired, will reactivate the main processing functions, thus allowing the successful reception of an external signal from a remote transmission source. To compensate for the inaccuracy of the second oscillator due to its dependence upon voltage, process and temperature, the snooze timer's output is calibrated during the wake-up periods against a timing signal derived from the internal crystal-controlled timing source. This calibration compensates for the inherent frequency instability of the second oscillator and allows a timing signal of sufficient accuracy to be maintained over the stop cycle.

Description: FIELD OF THE INVENTION The present invention relates to electronic systems which operate between a normal operating mode and a power-saving "stop" mode during prolonged period of inactivity and can self-awaken periodically. Example of such electronic systems are communication devices such as packet radios and wireless telephone systems with low-power stop mode for power conservation purposes. ART BACKGROUND In the development of wireless wide area communications systems such as Mobitex™ ,CDPD packet radio and advanced wireless voice/data communications systems, there has been a need to provide as low a power sleep state as is possible to achieve longer battery life. This is particularly important in emergent two-way data communication radio networks, where one of the prime intended uses for these systems is as wireless wide area extension of network services such as electronic mail. For systems such as Personal Communications System ("PCS") phones, there are also additional requirements that the systems be light and compact while providing maximum talk time. This translates into minimum component count and advanced shutdown features. Further, if asynchronous page signaling is incorporated in the system as in packet radio, then the system will have to self-awaken in a given period in order not to miss the page signal. To achieve maximum benefit from the network, it is highly desirable to allow "connectionless contact," where a mobile user is effectively continually connected to the network and messages can be sent to the mobile user without any prior need to "switch on" the equipment or to have the mobile receiver continually active in receive mode. This has been achieved in the system by allowing the mobile user to register with the network and then to go into a sleep, or stop, mode. The user is transparently transferred or "roamed" between cell sites until such time as a transmission is requested or there is an incoming message or connection request for the terminal. To allow the maximum battery lifetime in the subscriber unit, the mobile unit periodically shuts down completely for a predetermined time as agreed between the unit and the controlling basestation and then wakes up at the appropriate moment. The basestation issues a list of "connection requests", pages, at this instant and if the mobile unit's address is active in the list, it will remain powered up in receive mode. If there is no activation request, or page, in the broadcast list, it will re-enter the sleep mode until the next wake-up period. Such a system allows the mobile unit to perform a highly efficient "sleep/receive" duty cycle, which greatly reduces the power consumed while allowing a fully transparent connection capability. As far as the user is concerned, she is connected to the network and all the services are available to her. Incoming messages and connection requests will appear just as if there were truly a continuous connection in place. Such a method of communication allows "forced delivery mode" for messages which will become highly desirable in so-called Personal Digital Assistants ("PDA"), where battery power is at a premium and yet its very existence depends on its ability to allow two-way messaging. In such a method of communication as above, it is likely that the communication link will be provided by use of a packet radio modem, which will contain a modulator/demodulator, a microprocessor-based protocol engine, possibly with either a radio transceiver or a link to a suitably equipped cellphone. Upper layers of connection protocol may reside on a host computer system and will generally only become active when an actual message is being transmitted or received. This architecture allows the modem device to handle the communications link and maintain the "connection" in sleep mode without requiring activation of the upper layers of protocol and hence the host system. A problem with this feature is that the timing associated with this system sleep facility requires a fair degree of accuracy to ensure that the remote unit and the basestation remain in synchronism. That is, there is no asynchronous "ring" event occurring which will force the system to wake up. This requires that some timing component be continually active in the remote unit and this timing component needs to be fairly accurate. The usual method of achieving this timing function would be to run the timer in the microprocessor or microcontroller, while shutting down all other possible power drains, such as the receiver front end, etc. However, this usually involves either the use of a crystal oscillator circuit or some autonomous wake-up function from an external timing element. The crystal oscillator circuit in a microprocessor, or microcontroller, is a considerable power drain on the overall system in sleep mode and running this circuit and its associate internal timer results in significant power consumption in sleep mode. As sleep mode time is very large in the "sleep/receive" duty cycle, this clearly results in a significant reduction in potential battery lifetime. While the use of a low-power external timing device could alleviate this problem, it would result in additional circuitry with associated cost and real estate penalties. Further attention is drawn to the document US 5,428,820 which discloses a portable radiotelephone operating in a radio communication system, wherein the portable radiotelephone includes a power consumption controller circuitry. The radiotelephone system is designed such that the portable radiotelephone need to only intermittently receive paging information from a remote transceiver during a control mode. The power consumption controller circuitry utilizes a low cost, low power, low frequency oscillator in conjunction with hardware and software for shutting down a portion of the radiotelephone for a sleep period, when the radiotelephone is not receiving information from the remote transceiver. Attention is also drawn to the document EP 0 586 256 A, which discloses a time measurement system for measuring time accurately with an inaccurate clock, in which two clock oscillators are compared and the momentary error of the slower clock oscillator is measured. When the error change rate of the slower clock oscillator is slow enough the fast clock oscillator can be switched off for longer time intervals. With the help of this apparatus and method of operation power can be saved in portable equipment which require accurate time measurement. In accordance with the present invention a device for invoking a wakeup logic, as set forth in claim 1, and a method for a processing unit in an electronic system to self-awaken from a low-power stop mode, as set forth in claim 5, is provided. Preferred embodiments of the present invention are disclosed in the dependent claims. SUMMARY OF THE INVENTION Therefore, it is an object of the present invention to be able to use as little power as possible in stop mode while maintaining system contact. It is also an object of the present invention to achieve high integration by including suitable low-power timing circuitry in the microprocessor/microcontroller itself. It is further an object of the present invention to be able to allow accurate timing even during stop mode without the use of external timing components or the internal crystal oscillator. It is yet another object of the present invention to be able to allow a low-power, accurate timing source by continual calibration from a known timing source. To resolve the above problem, a "snooze" timer is included in the processing unit of an electronic system, which runs without the use of the usual crystal-controlled oscillator. The "snooze" timer is implemented by a ring oscillator, or other low-power clocking mechanism, with associated timer circuit. The ring oscillator runs continually and feeds a timer which is preloaded with a suitable value. The timer, when timed out or expired, will reactivate the main processing functions, thus allowing the successful reception of an external system synchronization signal from a transmission source. To compensate for the inaccuracy of the ring oscillator due to its dependence upon voltage, process and temperature, the snooze timer's output is calibrated during the wake-up periods using a timing signal derived from the internal crystal-controlled timing source. This calibration compensates for the inherent frequency instability of the ring oscillator and allows a timing signal of sufficient accuracy to be maintained over the stop cycle. The low-power stop mode timer of the present invention thus allows a very low-power, accurate timing signal to be maintained without the use of external timing components during the critical stop periods, where power consumption should be at an absolute minimum. BRIEF DESCRIPTION OF THE DRAWINGS Additional objects, features and advantages of the present invention will become apparent to those skilled in the art from the following description, wherein: Figure 1(a) shows a conventional microprocessor-based communication system in a simplified block diagram. Figure 1 (b) shows a crystal oscillator with wakeup logic implemented with the conventional microprocessor-based communication system. Figure 2 illustrates a simplified system diagram of a microcontroller incorporating the low-power apparatus of the present invention. Figure 3 illustrates a simplified functional block diagram of the low-power apparatus of the present invention. Figure 4 (a), 4 (b) and 4 (c) illustrate the calibration process flow. DETAILED DESCRIPTION OF THE DRAWINGS An apparatus and method of providing low-power stop mode in a processor-based electronic system such as a packet radio communication system is disclosed. In the following description, the present invention is described in terms of algorithms and functional block diagrams, which are the usual means for those skilled in the art to communicate with others similarly skilled in the art. It should be appreciated by those skilled in the art that the present invention is not strictly limited to its symbolic representation herein and those skilled in the art can easily modify to implement the present invention for their particular applications. Also, although the following description discloses the present invention in the context of a processor-based communication device, it should be appreciated by those skilled in the art that the present invention may be readily adapted for use in connection with other electronic devices where a self-awakening function from a low-power inactive mode is desired. Reference is to Figure 1(a), where a conventional processor-based packet radio communication system is shown in a simplified block diagram. The communication system 10 may be implemented in a format commonly known as PCMCIA card 100, interfacing between a portable computer 101 and telephone 102 or radio transmitter 103. In the case of a packet radio, this PCMCIA card 100 will allow a mobile user to receive her e-mail on her portable computer 101 through a telephone connection 102 or a wireless radio connection 103. Typically the PCMCIA card 100 may comprise a microcontroller 110 for facilitating data transfer by a communication device such as an on-board analog receiver/transmitter such as a modem 115. The microcontroller 110 most likely will also have ROM 130 and RAM 140 memories, as well as a digital signal processor 150, to achieve its desired functionality. Reference is to Figure 1(b) , where a crystal oscillator 160 with wakeup logic 170 are illustrated with the conventional microcontroller 110. As described above, an external wake-up signal 175 will be needed in a conventional system to wake up the system. If the microcontroller 110 is interfacing with a telephone line 102 through a modem 115, then the ring signal from the telephone will serve as an external wakeup signal 175, triggering the wakeup logic 170. Therefore, the microcontroller 110 can run both "stop" and "sleep" modes, in addition to its normal operating mode, since the external wakeup signal 175 can also be used to provide the needed synchronization for the crystal oscillator 160. It should be noted that in "sleep" mode, the crystal oscillator 160 may be running, although at a low-power state, while the rest of the circuitry is shut down, until the wakeup signal 175, i.e. telephone ring signal, is received. In "stop" mode, the crystal oscillator 160 is also shut down, resulting in extremely low power, thus further extending the battery's life. However, in the case of the microcontroller 110 in a processor-based communication system, such as a packet radio system, there is no external wakeup signal 175 available for the crystal oscillator 160. The data stream is to be received by the system, which must be either awake, or in normal operating mode, at that time. Therefore, the crystal oscillator 160 needs to be continuously running in a powered-up state, drawing constant power and shortening the battery's life. As previously described, this constant power usage has become quite a disadvantage for the packet radio system. Reference is to Figure 2 , where a simplified system diagram of a microcontroller 200 incorporating the low-power self-awakening apparatus of the present invention is illustrated. The counting signal from a ring oscillator 210, typically running between 50 KHz and 200 KHz, is directed to a counter 220 through a multiplexer 215, allowing the crystal oscillator 260 to completely shut down in stop mode. The ring oscillator 210 and the counter 220, with the characteristics of drawing very little power in both sleep and stop modes, allow the microcontroller 200 to self-awake based on a pre-set time period. When the system containing the microcontroller 200 falls into sleep or stop mode, the ring oscillator 210 and the counter 220 continue to operate. With the multiplexer 215 selected to direct the counting signal from the ring oscillator 210 to the counter 220 during sleep or stop mode, the counter 220 can activate the wakeup logic 270 of the microcontroller 200 after it expires. When the microcontroller 200 is in normal operating mode, the crystal oscillator can resume its timing functions for the entire system. If the multiplexer 215 selects the crystal oscillator 260 as the counting signal, a more highly accurate time reference is possible. Reference is to Figure 3, where a functional block diagram illustrating the low-power apparatus of the present invention is shown. The ring oscillator 310 is coupled to a multiplexer 315, which also has an input from the crystal oscillator 360, through a low-power phase splitter 311 and a divide-by-127 counter 312. The output from the multiplexer 315 is applied to a phase splitter "A" 318, through a 16-bit programmable counter "C" 320 and similarly the counter 320 underflows through a phase splitter "B" 322 and eventually to a divide-by-217 counter 325. Note that the divide-by-127 counter 312 and the divide-by-217 counter 325 are implemented in the presently preferred embodiment to extend the time period for the crystal oscillator 360 and ring oscillator 310 and those skilled in the art can easily modify this embodiment to suit their particular applications and needs. Also, the phase splitters "A" and "B", 318, 322, are presently implemented for specifying the phases of the signals, i.e. rising edges or falling edges, to be counted by the counters 320, 325. After the system is awakened, or in normal operating mode, the crystal oscillator 360 can provide accurate timing signals for the entire system. In stop mode, the ring oscillator 310 provides the counting signal to the counter 320, through the multiplexer 315, drawing very little power. When the divide-by-217 counter 325 expires, the wakeup logic is activated. While the ring oscillator 310 and counter "C" 320 activate the wakeup logic of the microcontroller, they are generally not as accurate as the crystal oscillator 360, especially when the accuracy of the ring oscillator 310 is generally process-, temperature- and voltage-dependent, as those skilled in the art would readily appreciate. Without some calibration mechanism, it is likely that the ring oscillator will generate inconsistent stop/awake duty cycles, thus unnecessarily drawing power from the battery. Reference is to Figure 4 (a), 4 (b) and 4 (c), where the calibration process for the ring oscillator 310 in accordance with the present invention is illustrated. Figure 4 (a) shows that the ring oscillator 310, which can run in operating, sleep or stop modes, provides the signals for the 16-bit counter to count. The fixed 217 counter acts to extend the period before the wakeup logic is triggered. When the 16-bit counter expires, a first flag is set (400). The use of the first flag will be further described in the description of Figure 4 (c). Figure 4 (b) shows that the crystal oscillator, during operating mode, provides signals for its own 16-bit counter to count and when the counter expires, a second flag is set (410). The use of the second flag will be further described in the description of Figure 4 (c) . Figure 4 (c) now describes how the ring oscillator is calibrated by comparing its counter "C" with the counter "A", which is based on the much more accurate and stable crystal oscillator. Referring to Figure 4 (c), calibration is started after the system becomes awake (420). After both counters "A" and "C" are set to a respective known value (421, 422), the counters are enabled, or caused to count (423). Since the counter "A" receives its counting signal from a much faster crystal oscillator typically running between 8 - 20 MHz, the counter "A" will expire more often than the counter "C", which counts the slower ring oscillator (between 50 KHz - 200 KHz). Every time the counter "A" expires, while the counter "C" has not, a software counter is incremented (425). When the counter "C" finally expires, the value in the counter "A" is read (426), as well as how often it has expired from the software counter (427). This determines how many actual counts the counter "A" has experienced through the crystal oscillator. The actual time according to the counter "A" can thus be calculated, by using the frequency of the crystal oscillator and the counter "A"s total count (428). The ratio of the actual time based on the counter "A" to the pre-set known value of counter "C" determines the actual period of the ring oscillator (429). With this information, the more accurate value to pre-set the counter "C" for stop mode can be calculated (430). Note that this calibration process may be invoked when the device has just awakened, when it is powered on, or whenever the accuracy of the ring oscillator is likely to have degraded due to any reason, e.g. change of temperature. It should be noted, however, that those skilled in the art can easily determine their calibration requirements based on their applications. Although only a few exemplary embodiments of this invention have been described in detail above, those skilled in the art will readily appreciate that many modifications are possible in the exemplary embodiments without materially departing from the novel teachings and advantages of this invention. Accordingly, all such modifications are intended to be included within the scope of this invention as defined in the following claims.

Claims: A device for invoking a wakeup logic (270) of a processing unit (200) in an electronic system from a low-power stop mode after a second predetermined time period, said electronic system comprising a first oscillator (260) of a predetermined frequency being non-operational in the stop-mode and a first counter (265) for providing internal timing to said electronic system, said electronic system converting itself into said low-power stop mode after a first predetermined period of inactivity, said low-power stop mode causing said electronic system to remain non-operational until said stop mode is terminated, comprising: a second oscillator (210) of a nominal predetermined frequency for continuously generating an oscillating signal in said low-power stop mode, said second oscillator (210) being less accurate than said first oscillator (260); a second counter (220) coupled to said second oscillator (210) for counting said oscillating signal to a predetermined count until said second counter expires in said second predetermined time period; detection means coupled to said second counter (220) for detecting if said second counter has expired and if so, said detection means generating a wakeup signal to invoke said wakeup logic (270), such that said stop mode is terminated after said second predetermined time period; a calibration means coupled to said second oscillator (210) and to said first oscillator (260), said calibration means, operative after said stop mode is terminated, causing said first counter (265) to count using said first oscillator (260), after said first oscillator (260) is out of said stop mode, with said second counter (220) also counting using said second oscillator (210), said calibration means determining a true operating frequency of said second oscillator (210) and setting said second predetermined time period according to said true operating frequency of said second oscillator (210). A device according to Claim 1, wherein said calibration means: synchronizes said second counter (220) with said first counter (265) in a normal operating mode; said first counter (265) continuously counting said first oscillator (260) until said second counter (220) has expired; reads said first counter (265) to determine the time it took said second counter (220) to expire; calculates said true operating frequency of said second oscillator (210) based on said time it took said second counter (220) to expire and said predetermined count initially set in said second counter (220). The device according to claim 1 wherein said electronic system comprises a packet radio communication system. The device according to claim 1, wherein the electronic system comprises a processor-based packet radio interfacing between a data processing unit and a wireless data transceiver, said packet radio comprising said first oscillator (260) and a first timer for providing internal timing and said wakeup logic (270) for invoking said packet radio from said stop mode, said stop mode causing said packet radio to remain non-operational after said packet radio has been inactive in said first predetermined period to preserve power, said low-power device for periodically triggering said wakeup logic (270) to invoke said packet radio from said stop mode, wherein said second oscillator comprises a ring oscillator (210) of a predetermined frequency for continuously generating an oscillating signal in said stop mode; said second counter (220) is coupled to said second oscillator (210) for counting said second oscillator (210) to a predetermined count when said second counter (220) expires corresponding to a second predetermined period for said packet radio to awake from said stop mode; said detection means for detecting if said second counter (220) has expired and if so, said detection means generating a wakeup signal to trigger said wakeup logic (270), such that said stop mode is terminated after said second predetermined period; said calibration means operating said first and second counters (265, 220) to determine an actual time it took said second counter to expire and setting said second predetermined period for triggering said wakeup logic (270) according to said actual time of said second oscillator (210), said calibration means: synchronizing said second counter (220) with said first counter (265) after said stop mode is terminated; said first counter (265) continuously counting said first oscillator (260) until said second counter (220) has expired; reading said first counter (265) to determine the time it took said second counter (220) to expire; calculating said true operating frequency of said second oscillator (210) based on said time it took said second counter (220) to expire and said predetermined count initially set in said second counter (220). A method for a processing unit in an electronic system to self-awaken from a low-power stop mode after a second predetermined time period, said electronic system comprising a second oscillator (210) of a nominal frequency and a crystal oscillator (260) of a predetermined frequency being non-operational in the stop mode and a first counter (265) for providing internal timing to said electronic system, said electronic system converting itself into said low-power stop mode from a normal operating mode after a first predetermined period of inactivity, said low-power stop mode causing said electronic system to remain non-operational until said stop mode is terminated, comprising the steps of: a) continuously operating said second oscillator (210) to generate an oscillating signal in said low-power stop mode said second oscillator being less accurate than said crystal oscillator; b) counting said oscillating signals by using a second counter (220) coupled to said second oscillator (210) to a predetermined count when said second counter (220) expires in said second predetermined time period; c) detecting by using a detection means coupled to said second counter (220) if said second counter (220) has expired and if so, said detection means generating a wakeup signal to invoke said wakeup logic (270), such that said stop mode is terminated after said second predetermined time period; d) calibrating by using a calibration means coupled to said second oscillator (210) and to said crystal oscillator (260), said calibration means, operative after said stop mode is terminated, causing said first counter to count using said crystal oscillator (260), after said crystal oscillator (260) is out of said stop mode, with said second counter (220) also counting using said second oscillator (210), said calibration means determining a true operating frequency of said second oscillator (210) and setting said second predetermined time period according to said true operating frequency of said second oscillator (210). The method in accordance with claim 5 wherein said electronic system, comprises a data/voice communication system, the method is for said data/voice communication system to self-awaken from said low-power stop mode after a second predetermined time period to receive an asynchronous paging signal from a basestation, said data/voice communication system comprising said second oscillator (210) of a nominal frequency and said crystal oscillator (260) of a predetermined frequency and said first counter 265 for providing internal timing to said electronic system, said data/voice communication system converting itself into said low-power stop mode from a normal operating mode after a first predetermined period of inactivity, said low-power stop mode causing said electronic system to remain dormant until said stop mode is terminated.

Inventors: CHAPMAN MARK NMI, STARBUCK DENNIS E, CHAPMAN, MARK (NMI), STARBUCK, DENNIS E.
Applicants: SKYWORKS SOLUTIONS INC, SKYWORKS SOLUTIONS, INC.
Application year: 1996
Main classification: G06F1
IPC codes: H04B7, H04B1, H04M1, G06F1, H04W52