1. Field of the Invention
The present invention relates to a method for adjusting the power consumption of an communication device, in which method at least one operating voltage is generated for the communication device containing at least one processor which is used to execute program commands of one or more applications. The invention also relates to a communication device whose power consumption is arranged to be controlled.
2. Description of Prior Developments
The features in wireless communication devices, such as mobile phones, are constantly increasing, and they typically include functions for storing e.g. telephone numbers of people and firms. As is well known, there are also devices available which contain two different user interfaces, for example the user interfaces of a wireless communication device and a PDA device. One such device is the Nokia 9000 Communicator. In this specification, the term communication device will be used for such a device. By means of the PDA user interface of such a communication device, it is possible to store various data in the device, to have a wireless connection to the Internet network, and to receive for example telecopy messages, and by means of the CMT user interface (Cellular Mobile Telephone) of the same it is possible to perform conventional mobile phone functions such as receiving a call and selecting a telephone number. The above-described communication device typically comprises separate keypads and displays for the different user interfaces.
For storing various information, there are known devices available, such as notebook microcomputers, small hand-held computers, or PDA devices (Personal Digital Assistant). In this specification, PDA devices refer to devices similar to the ones described above. In these devices, it is possible to store for example calendar data, notes, address data, telephone numbers or corresponding information entered by the user. This information can be reviewed by means of the display of the device. The data is typically entered in these devices by means of a keypad, but it is known that there are also devices available which are equipped with a touch screen so that the functions of the device can be controlled by touch. The performance of the PDA devices is constantly enhanced, and they already contain many features known from PC devices (Personal Computer).
In this specification, the aforementioned different functions will be called applications (calendar application, notebook application, video call application, etc). Correspondingly, in this specification, the aforementioned notebook microcomputers, PDA devices, wireless communication devices among which also a communication device can be classified, etc, will be called electronic devices. The applications are composed of program commands executed by one or more processors of the electronic device. Furthermore, the applications are typically supplemented with data sections, such as different set parameters. The execution of the applications is advantageously controlled by means of a so-called operating system. The operating system is composed of the program commands of the processor as well. The operating system is used to provide the applications under execution with execution time, and to control information transmission between the application and the functional parts of the communication device, for example reading the keypad and writing out on the display device. In this specification, the performance requirement of the application refers particularly to the rate in which the application executes program commands, i.e. its processing capacity. Other factors that affect the performance of the application can include for example the memory capacity required in the performance of the application.
Different applications used in connection with such an electronic device often have different performance requirements. For example, a video call conducted with a communication device requires a considerably greater capacity than the use of a calendar application. The video call can be implemented in such a way that a data call of two time slots is set up in the communication device, which for example in the GSM mobile communication network with channel coding of 14.4 kbit/s means a data transmission rate of 28.8 kbit/s. Furthermore, the communication device has to be capable of executing a video conference system application when necessary. A conventional audio call does not require as great a performance as the video call but, however, a greater performance than the calendar application. There are also known wireless telephones in which applications with different performance requirements are available, such as games, a calendar and a speech call.
In practical applications, for example in a communication device, one or more processors, part of the digital logics and a large part of the memory are integrated together in a single application specific integrated circuit (ASIC). The power consumption of such an ASIC circuit can be described by means of the following simplified model:
P=V2xc2x7Cxc2x7Fxe2x80x83xe2x80x83(1)
in which
V=operating voltage,
C=capacitance,
F=clock frequency,
The capacitance of the internal couplings in the ASIC circuit is determined according to the technology used in the implementation of the ASIC circuit, and this capacitance cannot be influenced during the use of the communication device. In a communication device of prior art, the operating voltage and the clock frequency of the ASIC circuit are set in such a way at the designing stage that the application requiring the highest performance will function sufficiently fast. This has the result that the use of applications requiring less performance will also consume as much power as the use of an application requiring great performance. The operating voltage and the clock frequency are connected with each other in such a way that a high clock frequency requires the use of a higher operating voltage than lower clock frequency. On the basis of the aforementioned formula, the power consumption increases as a square of the operating voltage, and thus enhancing the performance by increasing the clock frequency and, respectively, the operating voltage, considerably increases the power consumption of the ASIC circuit.
The performance requirement of the application can usually be estimated at the stage of designing the application. The use of the application can affect the performance required. For example real-time applications, such as calls of different types and the transmission of video information, require that certain operations are performed within set time limits. However, non-real-time applications, such as reading and writing a calendar, a notebook, or e-mails of a communication device, are not critical in view of the time of execution, but during the use of such applications, the processor of the communication device is waiting for the actions of the user for the most of the time.
Solutions have been developed in which at least part of the function of the ASIC circuit can be set in a so-called standby condition or inactive state when there are no applications to be executed. With this solution, it is possible to reduce the power consumption of the communication device at least to a certain extent, but the power consumption is substantially increased into the maximum when the user starts up an application, such as a calendar application or a notebook application.
In some mobile communication systems, such as GSM, the wireless communication devices must use only one reference oscillator from which all necessary frequences are generated. Therefore, in prior art communication devices it has not been possible to change the clock frequency of the processors to adjust the power consumption of the communication device.
The purpose of the present invention is to provide a method for adjusting the power consumption of a communication device dynamically on the basis of the performance requirements of the applications used in the communication device at a given time, as well as a communication device in which it is possible to adjust power consumption dynamically. The invention is based on the idea that in the communication device, the operating voltage and the clock frequency are adjusted simultaneously on the basis of the performance required by the application used at a given time. The method according to the present invention is a method for adjusting the power consumption of a communication device, in which method at least a first operating voltage (VCC1, VCC2) is generated for the communication device, the communication device contains at least one processor (MPU, DSP) which is used to execute program commands of one or more applications, the execution rate of at least one processor (MPU, DSP) in the communication device is set with a clock signal (CLK) which is generated by means for generating a clock signal (CLK), and the operating voltage for the means for generating a clock signal (CLK) that is provided by a second operating voltage (VCC2), characterized in that a performance requirement is specified for the applications, wherein at least the first operating voltage (VCC1) of the communication device is adjusted on the basis of the performance requirement of one or more applications which are being executed at a time, and that the second operating voltage (VCC2) is kept substantially constant during the change of at least the first operating voltage (VCC1). Whereas the communication device according to the present invention comprises means for generating a first operating voltage (VCC1), one or more processors (MPU, DSP) for executing the program commands of applications, means for generating a clock signal (CLK) for the processor, and means for generating a second operating voltage (VCC2) for the means for generating a clock signal (CLK), characterized in that a performance requirement is specified for the applications, that the communication device also comprises means (MPU, DSP) for examining the performance requirement of the application and means (CTRL, 22) for adjusting at least the first operating voltage (VCC1), wherein the first operating voltage (VCC1) is arranged to be adjusted on the basis of the performance requirement of one or more applications under execution at a given time, and that the second operating voltage (VCC2) is arranged to be kept substantially constant during the change of at least the first operating voltage (VCC1).
With the present invention, considerable advantages are achieved when compared with solutions of prior art. With the method according to the invention, it is possible to considerably reduce the power consumption of a communication device in comparison with communication devices of prior art, especially when using applications which require less performance. Reducing the power consumption does not, however, affect the functionality of the applications in the communication device. In addition to the increased operating time of the communication device, the smaller power consumption also entails the advantage that the generation of heat in the communication device is smaller than in communication devices of prior art. This reduces the failure probability. The life of the battery is also extended because the need to charge the battery is decreased with the smaller power consumption. With the method according to the invention, it is also possible to keep the processors in operation during the change of operating voltages. With the present invention it is possible to change the operating voltages in a very large scale and it is also possible to set the operating voltages into many different values. Further, the change of the operating voltages is preferably conducted by software of a processor of the communication device. In the communication device according to the invention there are means for generating an adjustable clock signal from one oscillator. Further, it is possible to adjust the operating voltages and clock signal frequencies almost independently from each other and to use many different voltage-frequency combinations in the communication device according to the invention.
USPTO Backgrounds
USPTO Backgrounds