|20090298507||Method for Implementing a Business of Communication Service Level Based on a User Request||December, 2009||Ouyang et al.|
|20050191971||Assisted listening device||September, 2005||Boone et al.|
|20070275739||Method and System for Authorising Short Message Service Messages||November, 2007||Blackburn|
|20070238493||Mobile Station Having a Configurable Grip||October, 2007||Richardson et al.|
|20030134600||Location device and wireless mulitfuntion key-fob system||July, 2003||Picone et al.|
|20100015924||PROCESS FOR ENABLING COMMUNICATION OF A COMMUNICATION DEVICE OVER A SPECTRUM||January, 2010||Mueller et al.|
|20050277433||Mobile network, wireless network multiplexer and communication path control method to be used in same network||December, 2005||Ohta|
|20080132161||METHOD FOR END-USER PROVISION OF INTERNET MULTIMEDIA SUBSYSTEM SERVICES||June, 2008||Chen et al.|
|20070082650||Automatic location identification (ALI) service requests steering, connection sharing and protocol translation||April, 2007||Zhu et al.|
|20080096580||WLAN Network Information Caching||April, 2008||Montemurro|
|20090042604||CELLULAR HOME SECURITY SYSTEM||February, 2009||Ficquette|
Mobile wireless devices in wireless networks usually depend on a battery for their operating power. To extend the time that the devices are capable of operating between battery charges, the devices may resort to sleep periods (i.e., periods of non-operation, at least for the radio circuits, when the battery drain is greatly reduced). During a sleep period the data to be communicated to/from the device may be queued up until the device is operational again. Knowing how long to sleep (without obsoleting and/or missing necessary data) may be problematic even in fairly simple systems. However, the complexity of modem network communications and the mixture of different data types in a network (e.g., text, video, voice-over-IP, etc.), makes it difficult to determine a balance between saving more power (which may be achieved with longer sleep periods) and not obsoleting and/or missing necessary data (which may be achieved with shorter sleep periods).
Some embodiments of the invention may be understood by referring to the following description and accompanying drawings that are used to illustrate embodiments of the invention. In the drawings:
FIG. 1 shows two devices in a wireless network according to an embodiment of the invention.
FIG. 2 shows a flow diagram of a method of dynamically determining a sleep interval based on downlink communications, according to an embodiment of the invention.
FIG. 3 shows a flow diagram of a method of dynamically determining a sleep interval based on uplink communications, according to an embodiment of the invention.
In the following description, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In other instances, well-known circuits, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
References to “one embodiment”, “an embodiment”, “example embodiment”, “various embodiments”, etc., indicate that the embodiment(s) of the invention so described may include particular features, structures, or characteristics, but not every embodiment necessarily includes the particular features, structures, or characteristics. Further, some embodiments may have some, all, or none of the features described for other embodiments.
In the following description and claims, the terms “coupled” and “connected,” along with their derivatives, may be used. It should be understood that these terms are not intended as synonyms for each other. Rather, in particular embodiments, “connected” is used to indicate that two or more elements are in direct physical or electrical contact with each other. “Coupled” is used to indicate that two or more elements co-operate or interact with each other, but they may or may not be in direct physical or electrical contact.
As used in the claims, unless otherwise specified the use of the ordinal adjectives “first”, “second”, “third”, etc., to describe a common element, merely indicate that different instances of like elements are being referred to, and are not intended to imply that the elements so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
Various embodiments of the invention may be implemented in one or any combination of hardware, firmware, and software. The invention may also be implemented as instructions contained in or on a machine-readable medium, which may be read and executed by one or more processors to enable performance of the operations described herein. A machine-readable medium may include any mechanism for storing, transmitting, and/or receiving information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium may include a storage medium, such as but not limited to read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; a flash memory device, etc. A machine-readable medium may also include a propagated signal which has been modulated to encode the instructions, such as but not limited to electromagnetic, optical, or acoustical carrier wave signals.
The term “wireless” and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that communicate data by using modulated electromagnetic radiation through a non-solid medium. The term does not imply that the associated devices do not contain any wires, although in some embodiments they might not. The term “mobile wireless device” is used to describe a wireless device that can be in motion while it is communicating.
Some embodiments of the invention may dynamically adjust a sleep interval for a mobile wireless communications device (subsequently called a STA in this document), based on various operational factors such as the actual or estimated amount of data to be communicated. In some operations the goal of this adjustment is to make the sleep interval as long as is feasible without a significant chance of losing or obsoleting data in the communications exchange because the STA was asleep. ‘Asleep’, ‘sleep mode’, and related variations of the term ‘sleep’ refer to a mode in which the signal processing circuitry of the STA goes into a non-operational low power mode to reduce overall power consumption. In some embodiments other portions of the STA may remain in an operating mode during the sleep mode, but other embodiments may use other techniques. The techniques described herein may be especially beneficial when used in conjunction with a network protocol commonly known as Unscheduled Advanced Power Saving Delivery (U-APSD).
In some embodiments the STA may determine its sleep interval based on estimated downlink transmissions to be received from an access point or other centralized network control node. In other embodiments the STA may determine its sleep interval based on estimated uplink transmissions to be transmitted from the STA to the centralized network control node. In still other embodiments the STA may determine its sleep interval based on a combination of uplink and downlink considerations.
FIG. 1 shows two devices in a wireless network according to an embodiment of the invention. In the illustrated network 100, a mobile wireless device 110 (STA) may communicate wirelessly with centralized network controller 180 (AP) through their respective antennas 116 and 186. The STA may be any of multiple types of wireless devices, such as but not limited to a wireless personal computer (PC), a personal data assistant (PDA), etc. The STA is shown with a signal processing circuit (SPC) 120 that may convert digital data into signals suitable for radio frequency (RF) transmission, and may also convert received RF signals into digital data suitable for processing by digital circuitry. In some embodiments the SPC 120 may include such things as RF circuitry, baseband circuitry, and a digital signal processor (DSP), although other embodiments may include other combinations. A buffer 130 may hold data for subsequent conversion/transmission by the SPC 120, and/or may hold data that has been received and converted through the SPC 120 for subsequent processing by application processor 140. In some embodiments the buffer 130 may comprise a transmit queue and/or a receive queue.
STA 110 may also include a battery 160 to provide operating power to various parts of the STA. In the illustrated embodiment, power control circuit 150 may control whether SPC 120 is in a low-power sleep mode, a full-power operating mode, or some other intermediate power mode, based on control signals from the application processor that may be based at least in part on the data communicated between the STA and AP. Other parts of the STA may also have various modes of power consumption and operating status, which may be controlled by the power control circuit 150 and/or one or more other power control circuits (not shown).
The AP is shown with a transmit queue 185, in which it may place data to be transmitted to the STA and/or other STAs. Both the STA 110 and the AP 180 may have other circuits, which have not been shown because they are not considered key to an understanding of the various embodiments of the invention.
FIG. 2 shows a flow diagram of a method of dynamically determining a sleep interval for a wireless communications device based on downlink communications, according to an embodiment of the invention. For convenience and improved understanding, the following acronyms and meanings are used in the discussion of FIG. 2, but the embodiments of the invention should not be limited to devices using these acronyms. Note: although these parameters may be used in the STA to determine a sleep interval for the STA, the transmit queue referred to in these definitions is the AP's transmit queue. The relevant information about the AP transmit queue may be communicated to the STA through any feasible means.
Referring again to FIG. 2, flow diagram 200 shows operations that may be performed in a STA. At 210, the STA may complete its current communications sequence with another wireless device, and prepare for entering a sleep mode in which its SPC will be placed in a low power non-operational state. In some embodiments that communications sequence may be defined as a TXOP, but other embodiments may use other techniques. To determine how long the STA will be in the sleep mode, it determines a number of parameters at 220. As stated in the acronym definitions above, MAXFD may be predetermined, while ECAD may be produced by multiplying CAD by a constant that is greater than 1. EDEXQ, DSXQ, TADXQS, and EADXQS may be determined by examining various operational factors, such as but not limited to transmission data rate, variability of transmission data rate, variability of CAD, network capacity, recent network throughput, operational parameters specified by the AP, etc. Once all the necessary factors have been determined through monitoring, calculation, etc., the critical parameters that determine the sleep interval may be derived.
At 230, it's determined whether the transmit queue 185 is empty and at 235 it's determined whether TDXQBS is known to the STA. Three cases may be considered:
1. If the transmit queue is empty, then the sleep interval SI may be determined at 240 as 1) MAXFD−ECAD, or 2) ETADXQS−ECAD, whichever is smaller.
2. If the transmit queue is not empty and TDXQBS is known to the STA, then the sleep interval SI may be determined at 250 as 1) TDXQBS−ECAD, or 2) ETADXQS−ECAD, whichever is smallest.
3. If the transmit queue is not empty and TDXQBS is not known to the STA, then the STA may immediately access the channel and try to download the data without going to sleep. SI is essentially zero with this option.
For the first two cases, the STA may enter the sleep mode at 260 and remain in sleep mode for the duration of the calculated SI, unless the sleep mode is interrupted by some external event not covered in this discussion. For the third case, there essentially is no non-zero sleep interval, as shown at 270.
After the STA wakes up at the end of the SI, it may establish communications with the AP, complete those communications, and repeat the operations of FIG. 2 to determine the duration of the next sleep interval.
Although the previous description assumes the STA completes a communications sequence (e.g., a TXOP) before determining the next value for SI, some embodiments may perform all or part of these calculations before the end of that communications sequence. However, performing these calculations while data is still being exchanged during the TXOP may produce less dependable results, since some of the parameters might not be based on complete information and/or the most recent information.
FIG. 3 shows a flow diagram of a method of dynamically determining a sleep interval for a wireless communications device based on uplink communications, according to an embodiment of the invention. For convenience and improved understanding, the following acronyms and meanings are used in the discussion of FIG. 3, but the embodiments of the invention should not be limited to devices using these acronyms. Note: although the definitions for FIG. 2 referred to the transmit queue in the AP, the definitions for FIG. 3 refer to the transmit queue in the STA.
Flow diagram 300 shows operations that may be performed in a STA. At 310, the STA may complete its current communications sequence with another wireless device, and prepare for entering a sleep mode in which its SPC may be in a non-operational low power state. In some embodiments this communications sequence may be a TXOP, but other embodiments may use other techniques. At 320, values for DSMXQ, TDMXQBS, and ECAD may be determined. At 330 the sleep interval is set to equal TDMXQBS minus ECAD, and the STA may enter the sleep mode at 340. If there is no time-critical data in the transmit queue, so that TDMXQBS cannot be calculated a reasonable sleep interval may be used instead.
Although the SPC portion of the STA may be in a non-operational state during the sleep mode, an applications processor or other processor in the STA may continue to operate. Among other things, this processor may continue placing data into the transmit queue at 360, the data in the transmit queue to be transmitted at a later time. This may continue until either 1) the sleep interval expires, as determined at 350, or 2) the sleep interval is prematurely terminated at 370 because the amount of data CQS in the transmit queue reaches or exceeds the desired queue size DSMXQ. In either case, after the STA wakes up at 380, it may acquire the channel and then transmit from the transmit queue at 390.
The previous paragraphs have described determining one sleep interval based on downlink communications, and another separate sleep interval based on uplink communications. But in some embodiments these may be combined, and a single sleep interval determined by considering both uplink and downlink traffic. For example, after determining these two sleep intervals independently, the sleep interval actually used may be the shortest of the two.
The foregoing description is intended to be illustrative and not limiting. Variations will occur to those of skill in the art. Those variations are intended to be included in the various embodiments of the invention, which are limited only by the spirit and scope of the following claims.