U.S. patent application number 14/271136 was filed with the patent office on 2014-09-11 for pre-loading data.
This patent application is currently assigned to Core Wireless Licensing S.a.r.l. The applicant listed for this patent is Core Wireless Licensing S.a.r.l. Invention is credited to Jan CHIPCHASE, Raphael GRIGNANI.
Application Number | 20140258600 14/271136 |
Document ID | / |
Family ID | 34930710 |
Filed Date | 2014-09-11 |
United States Patent
Application |
20140258600 |
Kind Code |
A1 |
GRIGNANI; Raphael ; et
al. |
September 11, 2014 |
PRE-LOADING DATA
Abstract
A device includes a non-volatile memory configured to store
software to facilitate normal functions of the device, a first
processing section including a data processor configured to execute
the software when the device is in a normal mode, and load the
software into a working memory in response to a trigger, and a
second processing section coupled to a clock for maintaining a
time, the second processing section configured to handle background
processes when the device is in a low-power mode and initiate the
trigger in response to the time of the clock preceding a user-set
time by a preset advance interval, the pre-set advance interval
taking into account a length of time to load the software into the
working memory, wherein the working memory includes a volatile
memory configured to store the software, and wherein in the
low-power mode, the volatile memory receives insufficient power to
store the software.
Inventors: |
GRIGNANI; Raphael; (Woodland
Hills, CA) ; CHIPCHASE; Jan; (Tokyo, JP) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Core Wireless Licensing S.a.r.l |
Luxembourg |
|
LU |
|
|
Assignee: |
Core Wireless Licensing
S.a.r.l
Luxembourg
LU
|
Family ID: |
34930710 |
Appl. No.: |
14/271136 |
Filed: |
May 6, 2014 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
11664411 |
Aug 7, 2007 |
8761711 |
|
|
PCT/IB2005/002936 |
Sep 30, 2005 |
|
|
|
14271136 |
|
|
|
|
Current U.S.
Class: |
711/103 |
Current CPC
Class: |
G06F 9/4401 20130101;
G06F 1/329 20130101; Y02D 10/24 20180101; G06F 12/0246 20130101;
Y02D 30/50 20200801; Y02D 70/142 20180101; Y02D 50/20 20180101;
H04M 1/72525 20130101; G06F 1/3203 20130101; Y02D 30/70 20200801;
Y02D 70/1242 20180101; Y02D 10/00 20180101; G06F 1/3246
20130101 |
Class at
Publication: |
711/103 |
International
Class: |
G06F 1/32 20060101
G06F001/32; G06F 12/02 20060101 G06F012/02 |
Claims
1. A battery powered device comprising: a non-volatile memory
configured to store software to facilitate normal functions of the
device; a first processing section comprising a data processor
configured to execute the software when the device is in a normal
mode, and load the software into a working memory in response to a
trigger; and a second processing section coupled to a clock for
maintaining a time, the second processing section configured to
handle background processes when the device is in a low-power mode
and initiate the trigger in response to the time of the clock
preceding a user-set time by a preset advance interval, the pre-set
advance interval taking into account a length of time to load the
software into the working memory, wherein the working memory
comprises a volatile memory configured to store the software, and
wherein in the low-power mode the volatile memory receives
insufficient power to store the software.
2. The device of claim 1, wherein the preset advance interval is
such as to enable the software to be loaded prior to the user-set
time.
3. The device of claim 1, wherein the software is at least part of
an operating system of the device.
4. The device of claim 1, wherein in the low-power mode the first
processing section receives insufficient power to operate
normally.
5. The device of claim 1, wherein the device is a portable
device.
6. The device of claim 1, comprising a communication subsystem
configured to communicate with a network.
7. The device of claim 6, wherein the communication subsystem
comprises a communication interface configured to download external
content data and a data store configured to store a list of the one
or more user-set addresses, and wherein the device is configured
to, in response to triggering by the second processing section,
download the external content data from the one or more user-set
data addresses via the communication interface.
8. The device of claim 7, wherein the preset advance interval
enables the external content data to be downloaded prior to the
user-set time.
9. The device of claim 7, wherein the communication interface is
configured to receive the data by a wireless data link thereto.
10. The device of claim 9, wherein the communication interface is
configured to receive the data by radio.
11. The device of claim 10, wherein the device is a mobile phone
and the communication interface is configured to communicate with a
mobile phone network for downloading the data.
12. The device of claim 7, comprising a memory for storing the
downloaded data.
13. The device of claim 1, comprising a user interface for
presenting the downloaded data to a user.
14. A method to operate a device comprising a non-volatile memory
configured to store software to facilitate normal functions of the
device, a first processing section comprising a data processor
configured to execute the software, the device being configured to
operate the first processing section in a normal mode in which it
can execute the software and a low-power mode, wherein the device
comprises a volatile memory configured to store the software when
it has been loaded and wherein in the low-power mode the volatile
memory receives insufficient power to store software; and a second
processing section having a clock for maintaining a time, and being
configured to trigger behavior of the device in response to the
time of the clock preceding a user-set time by a pre-set advance
interval, the pre-set advance interval taking into account a length
of time to load the software into the volatile memory; the method
comprising: in response to triggering by the second processing
section when the first processing section is in the low-power mode,
directing the first processing section to load the software into
the volatile memory before entering the normal mode.
15. A method comprising: using a non-volatile memory of a device to
store software to facilitate normal functions of the device;
executing the software when the device is in a normal mode, and
loading the software into a working memory in response to a
trigger; processing background processes when the device is in a
low-power mode; and initiating the trigger in response to a time of
a clock preceding a user-set time by a pre-set advance interval,
the pre-set advance interval taking into account a length of time
to load the software into the working memory, wherein the working
memory comprises a volatile memory configured to store the
software, and wherein in the low-power mode the volatile memory
receives insufficient power to store the software.
16. The method according to claim 15, comprising setting the
pre-set advance interval to enable the software to be loaded prior
to the user-set time.
17. The method of claim 15, wherein the processing of background
processes occurs while a data processor performing the processing
receives insufficient power for normal operation.
18. The method of claim 15, comprising downloading external content
data using a communication subsystem of the device.
19. The method of claim 18, wherein downloading the external
content data comprises downloading the external content data from
one or more user-set addresses in response to the trigger.
20. The method as recited in claim 19, comprising setting the
pre-set advance interval to enable the external content data to be
downloaded prior to the user-set time.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This is a continuation of U.S. application Ser. No.
11/664,411, filed on 2 Apr. 2007, which is the National Stage of
International Application No. PCT/IB2005/002936, International
Filing Date 30 Sep. 2005, which designated the United States of
America, and was published under PCT Article 21 (2) as WO
Publication No. WO 2006/038087, the disclosures of which are
incorporated herein by reference in their entireties.
FIELD
[0002] The disclosed embodiments relate to pre-loading of data.
BACKGROUND
[0003] As mobile phones and other handheld electronic devices
become increasingly sophisticated it is taking longer for them to
reach an operational state after they have been turned on. Modern
mobile phones can take over a minute to boot up. The reason for
this is that the devices' operating systems, including the
essential software that the devices require to reach an operational
state, are becoming more sophisticated and require longer to load
from non-volatile memory into working memory and to place the
variables and other settings used by the devices during operation
into an operational configuration. This is a problem because users
would prefer to be able to use a device as soon as possible after
they turn it on.
[0004] One solution to this problem is for users to leave a device
powered on all the time, either in a fully operational mode, or in
a suspended mode in which the processor is substantially disabled
but the working memory is still powered. However, in the case of
battery-powered devices this uses up battery power and reduces the
time that the device can be used before charging. Also, some users
prefer to turn their devices off entirely, so that it does not
disturb them, for example by ringing if it is mobile phone.
[0005] Another solution is for the device to provide a hibernation
mode in which the content of working memory is cached to
non-volatile memory when the device is powered down. Then, when the
device is powered up the cached data can be retrieved and the
device can be returned relatively quickly to its operational state.
This is useful in devices that have ample non-volatile memory, such
as laptops with large hard disks. However, for other devices it
would generally require a considerable increase in size and
cost.
[0006] There is therefore a need for an improved method of loading
the essential software needed for normal operation of a device.
[0007] In addition to being turned on by a user manually operating
a switch, some devices can turn on automatically. On example of
this is that some mobile phones can turn on automatically when
their alarm clock function is active and an alarm time is reached
and/or the alarm is acknowledged rather than snoozed by a user. To
achieve this such phones have--in addition to a main processing
function that is used during normal operation of the phone--a
background processing function that handles background processes
whilst the phone is in its "off" state. The background function
uses very little power compared to the main processing function.
Operations handled by the background processing function include
maintenance of a real-time clock, performance of alarm clock and
reminder functions (at least whilst the phone is in its "off" state
and detection of external events that are to trigger the device to
turn on, such as the pressing of an "on" button and connection to
an external power supply.
SUMMARY
[0008] According to the presently disclosed embodiments, there is
provided a battery-powered device comprising: a memory storing
software essential to the provision of normal functions of the
device; a first processing section comprising a data processor
capable of executing the software, the device being capable of
operating the first processing section in a normal mode in which it
can execute the software and a low power mode; a second processing
section having a clock for maintaining a time, and being capable of
triggering behavior of the device in response to the time of the
clock preceding a user-set time by a pre-set advance interval; the
device being configured to, in response to triggering by the second
processing section when the first processing section is in the low
power mode, cause the first processing section to enter the normal
mode and to load the software.
[0009] According to a further aspect of the disclosed embodiments,
there is provided a method for operating a device comprising a
memory storing software essential to the provision of normal
functions of the device, a first processing section comprising a
data processor capable of executing the software, the device being
capable of operating the first processing section in a normal mode
in which it can execute the software and a low power mode; and a
second processing section having a clock for maintaining a time,
and being capable of triggering behavior of the device in response
to the time of the clock preceding a user-set time by a pre-set
advance interval; the method comprising: in response to triggering
by the second processing section when the first processing section
is in the low power mode, causing the first processing section to
enter the normal mode and to load the software.
[0010] The pre-set advance interval may allow the software to be
loaded prior to the user-set time.
[0011] The software may at least be part of an operating system of
the device.
[0012] The first processing section may comprise a data processor
and a volatile memory for storing software when it has been
loaded.
[0013] In the low power mode the processor may receive insufficient
power to operate normally. In the low power mode the processor may
use less power than in the normal mode.
[0014] In the low power mode the volatile memory may receive
insufficient power to store software.
[0015] The device may be a portable device.
[0016] The device may be powered by means other than a battery, for
example by mains electrical power.
[0017] The device may comprise a communication interface for
downloading data and a data store for storing a list of one or more
user-set data locations, and wherein the device may be configured
to, in response to triggering by the second processing section,
download data from the or each user-set data location via the
communication interface.
[0018] The pre-set advance interval may be such as to allow the
data to be downloaded prior to the user-set time.
[0019] The communication interface may be capable of receiving the
data by a wireless data link thereto.
[0020] The communication interface may be capable of receiving the
data by radio.
[0021] The device may be a mobile phone and the communication
interface may be capable of communication with a mobile phone
network for downloading the data.
[0022] The device may comprise a memory for storing the downloaded
data.
[0023] The device may comprise a user interface for presenting the
downloaded data to a user.
BRIEF DESCRIPTION OF THE DRAWINGS
[0024] Further aspects, details, advantages and modifications of
the disclosed embodiments will become apparent from the following
detailed description which is to be taken in conjunction with the
accompanying drawings, in which:
[0025] FIG. 1 is a schematic diagram of a communication
terminal.
DETAILED DESCRIPTION
[0026] According to the disclosed embodiments, the communication
terminal 1 is a mobile phone that offers an alarm clock facility.
Whilst the phone is turned off the alarm clock facility is operated
by a background function of the phone. When the alarm time set by
the user is reached the background function can cause the phone to
turn back on and the alarm to sound. According to the disclosed
embodiments, the turning on of the phone is begun shortly before
the alarm time so that there is time to load essential software of
the phone (e.g. some or all of its operating system and associated
variables) before the alarm time. This allows power to be saved
when the device is turned off, and yet the device is fully
functional at the alarm time.
[0027] The system shown in FIG. 1 will now be described in more
detail.
[0028] The mobile phone 1 comprises a central processing unit 16,
which controls the operation of the phone in accordance with
software stored in a read only memory 13. The central processing
unit is connected to a display 12 for displaying information to a
user, a keypad 10 for obtaining input from a user, a loudspeaker 7
for outputting audio to be heard by the user and a microphone 8 for
receiving audio from the user. The central processing unit contains
random access memory (RAM) 2 that can be used for storing temporary
data, as can an external RAM 3.
[0029] A background processing unit 5 can handle background
processes whilst the phone is in its "off" state. The background
function uses very little power compared to the main processing
function 16. The background processing unit implements a real-time
clock under the control of a crystal oscillator 6. The mobile phone
also has a communication subsystem 11 for communicating with a
mobile telephony network. The communication subsystem comprises an
antenna 15 and a communication engine 14. The communication engine
20 is connected between the antenna and the processor 10. The
communication engine handles conversion between baseband and radio
frequency and handles signaling communications with the wireless
network. At least some functional elements of the communication
engine may be implemented on a common chip with one or more parts
of the central processing unit.
[0030] The processor may have access to a non-volatile memory 4 for
storing user settings.
[0031] The mobile phone may be powered by a battery 12.
[0032] The mobile phone may be operable in accordance with any
suitable communications protocol. Examples include GSM and 3G
(UMTS).
[0033] When the phone is turned on by means of the user pressing a
power on key on the keyboard 10, the phone starts by loading its
essential software from ROM into working memory. That process
typically includes configuring operating variables for use. Once
that process is completed, it can begin to provide functions to the
user.
[0034] The user can configure the phone to turn on automatically,
for example using an alarm clock function of the phone or by using
a power saving function that automatically turns the phone off at a
preset time of day and back on at another preset time. Such a power
saving function would normally be set so as to turn the phone off
automatically overnight. To operate either of these functions, the
user uses the keypad 10 to navigate a menu structure of the phone
and then enters the desired on time and, for the power saving
function, an off time. The phone stores the set on and off times in
non-volatile memory 4 and compares those with the value of the
real-time clock maintained by the background function 5. When the
value of the real time clock matches the value stored for the on
time (taking into account a pre-load offset interval as described
below) the phone enters a turn-on routine. If the phone has been
turned on by means of the alarm clock function then it also sounds
an alarm at the set time.
[0035] The turn-on routine will now be described. First, the phone
powers up the components such as processor 16 and RAM 3 that may be
used for normal operation. User interface devices such the display
may not be powered on at that time. Then the phone loads from ROM
13 the essential software that it requires for operation. Any
essential working variables are configured and the variables and
the software required for subsequent operations are stored in
working memory. Typically, this process will involve loading the
operating system of the phone. When this load operation has been
completed, the phone is ready for normal operation. This operation
takes some time, and so a pre-load offset interval is stored in the
phone, for example in the non-volatile memory 4 or in the
background function 5, which triggers the turn-on routine. The
background function 5 is configured to initiate the turn-on routine
at a time of the real-time clock that precedes the pre-set on time
by the pre-load offset interval. The preload offset interval is set
so that there is sufficient time to load the operating system
before the turn-on time is reached. The result of this procedure is
that the phone is ready for use immediately, for the provision of
its full normal range of functions to a user, at the turn-on
time.
[0036] The user may also configure the phone to load content data
before turn-on. For example, the user may want the phone to load
the latest news, weather or horoscopes (including text, image,
video, audio and other data) so that he can view them when the
phone turns on. The data could be loaded in any suitable form, but
options include loading the data from websites or from RSS (RDF
site summary) feeds. To activate this function, the user uses the
keypad 10 to navigate a menu structure of the phone and then enters
the address(es) of the desired content data. The phone stores the
addresses in non-volatile memory 4. The turn-on routine can then
include the downloading of the content data from the defined
addresses. This may be done after the essential software has been
fully loaded, or may be done in parallel with the loading of some
of the software if those parts of the software needed for
downloading the content data have already been loaded. The content
data can be downloaded via any suitable connection to the phone,
but conveniently it can be downloaded by means of a connection to a
network via the communication subsystem 11. For example, it could
be downloaded by means of a circuit-switched or packet-switched
connection to an internet gateway of a mobile phone network.
Alternative types of connection include wireless LAN (local area
network) and wired data connections. The preload offset time may
take into account the time required to load the content data; thus
the pre-load offset time may be set so that there is sufficient
time to load the operating system and the content data before the
turn-on time is reached. The user can then view the loaded data
(using a suitable viewer application of the phone, for example a
web browser) at the turn-on time.
[0037] In order to successfully set the pre-load offset time when
the phone is to download content data during the turn-on routine,
the phone may estimate the time that will be taken to download the
data. It may do this based on the number of stored addresses and
the type of data (if any) with which they are associated. It may
also take into account how long downloads of data from those
addresses have taken in the past. Similarly, the pre-load offset
time allowed for loading of the essential software may be set
rigidly, or may be adjusted depending on how long the loading has
taken in the past. In the most basic embodiment, the offset time
could be unalterably fixed at a time that is likely to be
sufficient for loading the software and user data in most normal
circumstances, e.g. 5 or 10 minutes.
[0038] If the turn-on routine is completed before the pre-set on
time then some or all of the user interface devices (e.g. the
display)may remain powered down until the on-time. This saves on
battery power.
[0039] In an optional mode of operation, the phone may continue to
load software and if necessary, download content data when the
pre-set alarm clock on time is reached, irrespective of whether or
not the user presses a button to enter a snooze mode. This provides
an advantage over prior art phones in which the essential software
is not loaded until the user actually cancels the alarm.
[0040] In either mode, if the alarm is not cancelled or
acknowledged within a pre-set period of time (e.g. 20 minutes) from
the alarm on time, then the phone is shut down and re-enters its
sleep state.
[0041] If the turn-on routine is initiated, but the phone does not
have sufficient power to last until the next alarm, it
automatically switches to the sleep state without loading the
essential software in order to preserve power. Under the control of
the background processing system, it then reawakens at the alarm on
time in order to sound the alarm. If the phone does not have
sufficient power to last until the alarm goes off even in the off
state, then the user is warned that they need to charge the
phone.
[0042] The disclosed embodiments are not limited to use with mobile
phones and could be used with other (e.g. battery-powered) devices.
Non-limiting examples of such devices include personal digital
assistants (PDAs) laptop computers, personal music players, radios
etc.
[0043] The applicant hereby discloses in isolation each individual
feature described herein and any combination of two or more such
features, to the extent that such features or combinations are
capable of being carried out based on the present specification as
a whole in the light of the common general knowledge of a person
skilled in the art, irrespective of whether such features or
combinations of features solve any problems disclosed herein, and
without limitation to the scope of the claims. The Applicant
indicates that aspects of the disclosed embodiments may include any
such individual feature or combination of features. In view of the
foregoing description it will be evident to a person skilled in the
art that various modifications may be made within the scope of the
embodiments disclosed herein.
* * * * *