JP6070321B2 - 携帯情報端末、制御方法、制御プログラム - Google Patents

携帯情報端末、制御方法、制御プログラム Download PDF

Info

Publication number
JP6070321B2
JP6070321B2 JP2013058359A JP2013058359A JP6070321B2 JP 6070321 B2 JP6070321 B2 JP 6070321B2 JP 2013058359 A JP2013058359 A JP 2013058359A JP 2013058359 A JP2013058359 A JP 2013058359A JP 6070321 B2 JP6070321 B2 JP 6070321B2
Authority
JP
Japan
Prior art keywords
cpu
portable information
boost
information terminal
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013058359A
Other languages
English (en)
Other versions
JP2014182736A (ja
Inventor
正明 野呂
正明 野呂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013058359A priority Critical patent/JP6070321B2/ja
Priority to US14/188,128 priority patent/US9529404B2/en
Publication of JP2014182736A publication Critical patent/JP2014182736A/ja
Application granted granted Critical
Publication of JP6070321B2 publication Critical patent/JP6070321B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3212Monitoring battery levels, e.g. power saving mode being initiated when battery voltage goes below a certain level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3218Monitoring of peripheral devices of display devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)
  • Power Sources (AREA)

Description

本技術は、携帯情報端末、制御方法、制御プログラムに関する。
例えばスマートフォンなどの携帯情報端末は、通常のデスクトップPC(Personal Computer)用OSと同様、ユーザが多種多様なアプリ(アプリケーション)を自由にダウンロード及びインストールすることができる為、それぞれのアプリが要求するCPUの動作周波数を事前に把握することは困難である。同様に、アプリ開発者も、多種多様な携帯情報端末で、どの程度のCPU性能が必要であるかを把握することは困難である為、アプリ毎に必要なCPUの動作周波数に基づき、携帯情報端末のCPUの動作周波数を決定することはできない。
デスクトップ用マルチタスクOSでのCPU動作周波数制御を説明する。
先ず、ユーザもしくはミドルウェアに於いて、CPU動作周波数ポリシ(CPUの動作周波数を変更するアルゴリズム、動作周波数の上限値及び下限値、アルゴリズムや上限値及び下限値の継続時間)を指定して、OSカーネルに動作周波数の制御を指示する。OSカーネルは、CPU利用率と動作周波数ポリシに基づき、CPUの動作周波数の目標値を決定して、CPUの制御回路ドライバに動作周波数の制御を実施させる。
ところが、従来技術にかかるCPU動作周波数制御は、CPUの利用率の観測後に実施される為、なんらかの負荷が発生してからCPUの動作周波数が上昇するまでに時間がかかる。このため、瞬間的に高い処理能力が必要となった場合、ユーザの体感性能が劣化することがある。
さらに、CPU動作周波数制御モジュールに於いて、CPUの動作周波数の上昇が遅れると、以下のような問題も生じる。例えば携帯情報端末のスリープモードを解除する場合、先ず、OSカーネルが所定時間スリープを禁止するタイマを設定して、続いて該タイマが切れるまでに、ミドルウェアやアプリがスリープ禁止の設定を実行する。ところが、スリープモードの解除では、大量の処理が発生する。もし、CPU動作周波数制御モジュールによる、CPUの動作周波数の上昇制御が遅れると、発生した大量の処理をCPUが処理しきれずに、スリープモードの解除前にOSカーネルのスリープ禁止タイマが切れることがある。即ち、携帯情報端末をスリープモードから復帰させる為に電源ボタンを押下したにも関わらず、スリープモードの解除前に再度スリープモードに遷移することがある。スリープモードに遷移しないまでも、電源ボタンを押下してから実際に携帯情報端末が操作可能になるまでに膨大な時間がかかり、ユーザの操作性を損なうこともある。
このような問題を解決する為、ブースト(以下、boostとする)という仕組みが存在する。boostは、CPU動作周波数制御モジュールの制御パラメータである動作周波数の下限値をCPU動作周波数制御モジュールの外部から変更して、CPUの動作周波数を瞬時に新たな下限値以上の動作周波数に変更する仕組みである。boostを使用すれば、瞬時に高い処理能力が必要なイベントが発生した際に、CPUの動作周波数の下限値が一時的に急上昇するので、イベントを確実に処理することができる。
特開2010−39791号公報
ところで、従来技術にかかるboostは、ユーザが携帯情報端末の画面をOFFからONに切り替えるときなど、もっともCPUの処理能力が必要となる場面に用いられてきた。このため、CPU動作周波数制御モジュールに与える動作周波数の下限値やboostの持続時間は、最大の性能要求を満足できるように決められていた。それゆえ、高い処理能力を必要としないイベントが発生したときには、boostを動作させることで、無駄な消費電力が発生していた。
開示の技術によれば、CPUの能力不足を避けつつ、消費電力を削減できる携帯情報端末、制御方法、制御プログラムを提供する。
開示の技術の一観点によれば、CPUの動作周波数を制御する携帯情報端末に於いて、 前記携帯情報端末の状態を取得する状態取得部と、前記状態の変更後かつ前記状態の取得に関する時間の経過前に発生するイベントの検知を契機に、前記CPUの動作周波数の下限値を上昇させる制御部と、を備える携帯情報端末、が提供される。
本開示の技術の一観点によれば、CPUの能力不足を避けつつ、消費電力を削減することができる。
第1の実施形態にかかる携帯情報端末のハードウェア構成の概略図である。 第1の実施形態にかかる携帯情報端末の機能ブロックの概略図である。 第1の実施形態にかかるboostモジュールの詳細な機能ブロックの概略図である。 第1の実施形態にかかる端末状態パラメータテーブルの概略図である。 第1の実施形態にかかるboostのフローチャートである。 第1の実施形態にかかるboostの具体例の説明図である。 第2の実施形態にかかる携帯情報端末の機能ブロックの概略図である。 第2の実施形態にかかるboostのフローチャートである。 第2の実施形態にかかるboostの具体例の説明図である。
[第1の実施形態]
以下、図1〜図6を参照して、第1の実施形態を説明する。
本実施形態では、携帯情報端末100に発生するイベントの種別に基づき、boostの制御パラメータを変更することで、CPUの能力不足を回避しつつ消費電力の削減をはかる。
例えば、画面OFFから画面ONへの切り替えや緊急地震速報のプッシュ通知などのイベントは、CPUの能力不足による処理遅延や処理中断が許されない為、このようなイベントが発生した場合には、事前に用意された、あらゆるイベントを確実に処理できる制御パラメータを使用して、boost(最優先クラスboost)を実行する。
一方、例えばメールチェックなどの、CPUの能力不足が許されるイベントが発生した場合には、消費電力を削減する為に、携帯情報端末の端末状態に紐付けられた制御パラメータを使用して、boost(標準クラス用boost)を実行する。
しかし、携帯情報端末に発生した特定のイベントに起因して、端末状態が変更した場合、携帯情報端末による端末状態の把握が遅延することがある。このため、端末状態の変更直後にCPUの能力不足が許される別イベントが発生した場合、変更後の端末状態に紐付けられた制御パラメータを使用して、boost(標準クラス用boost)を実行できないことがある。従って、特定のイベントに起因する端末状態の変更後の所定時間は、事前に決められた、通常のイベントを確実に処理できる制御パラメータを使用して、boost(中優先クラスboost)を実行する。
[携帯情報端末100のハードウェア]
図1は、第1の実施形態にかかる携帯情報端末100のハードウェア構成の概略図である。本実施形態では、携帯情報端末100として、例えばスマートフォンやタブレットPCなどの携帯型の情報処理装置を想定する。
図1に示すように、携帯情報端末100は、CPU(Central Processing Unit)101、メインメモリ102、補助メモリ103、クロック供給回路104、電圧供給回路105、電源回路106、バッテリ107、外部給電部108、ディスプレイ109、タッチスクリーン110、ネットワークI/F(Interface)111、センサ112、をハードウェアモジュールとして備える。これらのハードウェアモジュールは、バス113により相互接続されている。
CPU101は、ベースバンドLSI(Large Scale Integrated)ではなく、アプリケーションプログラムを実行するプロセッサを想定している。CPU101は、クロック供給回路104から供給されるクロック信号と、電圧供給回路105から供給される電圧と、により動作して、携帯情報端末100の各種ハードウェアモジュールを制御する。さらに、CPU101は、補助メモリ103に格納された各種プログラムをメインメモリ102に読み出すとともに、該メインメモリ102に読み出した各種プログラムを実行することで、各種機能を実現する。各種機能の詳細は、後述することとする。
メインメモリ102は、CPU101により実行される各種プログラムを格納する。さらに、メインメモリ102は、CPU101のワークエリアとして使用され、CPU101による処理に必要な各種データを記憶する。メインメモリ102としては、例えばRAM(Random Access Memory)などを用いても良い。
補助メモリ103は、携帯情報端末100を動作させる各種プログラムを格納している。各種プログラムとしては、例えば、携帯情報端末100により実行されるアプリケーションプログラムのほか、アプリケーションプログラムの実行環境であるOS(Operating System)などがある。本実施形態にかかる制御プログラムも補助メモリ103に格納されている。補助メモリ103としては、例えば、ハードディスクやフラッシュメモリ等の不揮発メモリを用いても良い。
クロック供給回路104は、CPU101に供給する為のクロック信号を生成する。電圧供給回路105は、電源回路106から供給される電力に基づき、CPU101に供給する為の可変電圧を生成する。
電源回路106は、バッテリ107から供給される電力を、電源線(図示しない)を介して、携帯情報端末100の各種ハードウェアモジュールに供給する。但し、外部給電部108に外部電源(図示しない)が接続されている場合、電源回路106は、外部給電部108から供給される電力を、携帯情報端末100の各種ハードウェアモジュールに供給しても良い。バッテリ107は、電源回路106に電力を供給する。バッテリ107としては、例えばリチウムイオン電池等の電池を使用しても良い。
ディスプレイ109は、CPU101により制御され、画像情報を表示する。タッチスクリーン110は、ディスプレイ109に貼り付けられ、ユーザの指先やペン先などで接触された位置情報を入力する。
ネットワークI/F111は、CPU101により制御され、例えばメールやツイッターの受信などのインターフェースとして機能する。
センサ112は、携帯情報端末100の状態情報(端末状態)を取得する。センサ112としては、例えば加速度センサ、ジャイロセンサ、照度センサ、地磁気センサ、傾きセンサ、加圧センサ、接近センサ、温度センサ、などが想定される。
[携帯情報端末100の機能ブロック]
図2は、第1の実施形態にかかる携帯情報端末100の機能ブロックの概略図である。
図2に示すように、携帯情報端末100は、CPU動作周波数制御モジュール201、boostモジュール202、スケジューラ203、ミドルウェア・ドライバ204、を備える。
CPU動作周波数制御モジュール201、boostモジュール202、スケジューラ203、ミドルウェア・ドライバ204は、何れもCPU101がメインメモリ102に制御プログラムを読み込むとともに、該メインメモリ102に読み込んだ制御プログラムを実行することで実現される。
CPU動作周波数制御モジュール201は、CPU101の負荷と、制御パラメータと、に基づき、CPU101の動作周波数を制御する。制御パラメータは、例えばCPU101の動作周波数を変更する制御アルゴリズム、動作周波数の上限値及び下限値、制御アルゴリズムや動作周波数の上限値及び下限値の継続時間、などを含む。例えば、動作周波数の下限値を100MHz、継続時間を2秒とすると、CPU動作周波数制御モジュール201は、制御パラメータの設定後2秒間、100MHz以上の動作周波数でCPU101を動作させることとなる。
boostモジュール202は、ミドルウェア・ドライバ204からのboost依頼に基づき、CPU動作周波数制御モジュール201の制御パラメータを書き換える。さらに、boostモジュール202は、携帯情報端末100の端末状態に基づき、boostモジュール202が管理する標準クラス用パラメータを書き換える。boostモジュール202は、標準クラス用パラメータの他、中優先クラス用パラメータ及び最優先クラス用パラメータを管理する。中優先クラス用パラメータ及び最優先クラス用パラメータは、何れも事前に決められた固定値である。boostモジュール202の詳細は、後述することとする。
スケジューラ203は、OSカーネルのシステム状態情報からCPU101の負荷を取得する。CPU101の負荷としては、例えばCPU利用率を使用しても良い。
ミドルウェア・ドライバ204は、ミドルウェアもしくはデバイスドライバとして機能する。例えば、ミドルウェア・ドライバ204は、イベントの発生を契機に、boostモジュール202にboost依頼を通知する。イベントとしては、例えば画面OFFから画面ONへの切り替え(スリープモードからの復帰)、緊急地震速報のプッシュ通知、画面操作、メールのサーバチェック(以下、メールチェックとする)、などを想定する。なお、本実施形態では、画面OFFから画面ONへの切り替えや緊急地震速報のプッシュ通知を、CPU101の能力不足(処理能力の不足や低下など)が許されないイベントとし、画面操作やメールチェックを、CPU101の能力不足が許されるイベントとする。boost依頼は、イベントの発生に起因するboostの開始指示である。boost依頼は、少なくともイベント内容を含む。
(boostモジュール202の詳細)
図3は、第1の実施形態にかかるboostモジュール202の詳細な機能ブロックの概略図である。
図3に示すように、boostモジュール202は、boost制御部202a、パラメータ判定部202b、boost受付I/F(Interface)202c、タイマ202d、標準クラス用パラメータ格納部202e、中優先クラス用パラメータ格納部202f、最優先クラス用パラメータ格納部202g、を含む。
boost制御部202aは、boost受付I/F202cからの最優先boost依頼もしくは非最優先boost依頼に基づき、標準クラス用パラメータ格納部202e、中優先クラス用パラメータ格納部202f、最優先クラス用パラメータ格納部202gから標準クラス用パラメータ、中優先クラス用パラメータ、最優先クラス用パラメータの何れかを取得して、CPU動作周波数制御モジュール201の制御パラメータに設定する。
詳細には、boost受付I/F202cから最優先boost依頼が通知された場合、boost制御部202aは、最優先クラス用パラメータ格納部202gから最優先クラス用パラメータを取得して、CPU動作周波数制御モジュール201の制御パラメータに設定する。boost受付I/F202cから非最優先boost依頼が通知された場合、boost制御部202aは、タイマ202dからの後述する経過時間に基づき、標準クラス用パラメータ格納部202eもしくは中優先クラス用パラメータ格納部202fから、標準クラスパラメータもしくは中優先クラス用パラメータを取得して、CPU動作周波数制御モジュール201の制御パラメータに設定する。
パラメータ判定部202bは、ミドルウェア・ドライバ204からの端末情報に基づき、標準クラス用パラメータ格納部202eに格納されている標準クラス用パラメータを更新する。具体的には、パラメータ判定部202bは、定期的にミドルウェア・ドライバ204から端末情報を取得して、端末情報が変化するたびに、変化後の端末情報に紐付けられた制御パラメータを端末状態パラメータテーブルTから読み出して、標準クラス用パラメータ格納部202dの制御パラメータに書き込む。端末状態パラメータテーブルTの詳細は、後述することとする。
boost受付I/F202cは、ミドルウェア・ドライバ204からのboost依頼を受け付け、該boost依頼にかかるイベントの種別に基づき、最優先boost依頼もしくは非最優先boost依頼をboost制御部202aに通知する。最優先boost依頼を通知する場合、boost受付I/F202cは、さらに、最優先boostの発生をタイマ202dに通知する。
タイマ202dは、boost受付I/F202cからの最優先boost発生通知に基づき、経過時間の計測を実行する。即ち、タイマ202dは、最優先boost依頼にかかるイベント発生後の経過時間を計測する。
標準クラス用パラメータ格納部202eは、標準クラス用パラメータを格納する。標準クラス用パラメータは、携帯情報端末100の端末情報に基づき、動的に書き換えられる。標準クラス用パラメータを使用するboostを、標準クラスboostとする。
中優先クラス用パラメータ格納部202fは、中優先クラス用パラメータを格納する。中優先クラス用パラメータは、事前に決められた固定パラメータである。中優先クラス用パラメータを使用するboostを、中優先クラスboostとする。
最優先クラス用パラメータ格納部202gは、最優先クラス用パラメータを格納する。最優先クラス用パラメータは、事前に決められた固定パラメータである。最優先クラス用パラメータを使用するboostを、最優先クラスboostとする。中優先クラス用パラメータ及び最優先クラス用パラメータは、最優先クラスboostによるCPU101の処理能力が、中優先クラスboostによるCPU101の処理能力よりも大きくなるように設定される。
(端末状態パラメータテーブルT)
図4は、第1の実施形態にかかる端末状態パラメータテーブルTの概略図である。
図4に示すように、端末状態パラメータテーブルTは、携帯情報端末100の端末状態毎に制御パラメータを記憶する。本実施形態にかかる端末状態パラメータテーブルTでは、端末状態を画面のON/OFF及び動作中のアプリ種別の組み合わせとし、制御パラメータをCPU101の動作周波数の下限値とする。
例えば、「画面:ON、動作中アプリ:メール」である端末状態「1」には、制御パラメータとして、動作周波数の下限値300MHzが紐付けられている。「画面:OFF,動作中アプリ:メール」である端末状態「2」には、制御パラメータとして、動作周波数の下限値100MHzが紐付けられている。但し、本実施形態にかかる端末状態は、これに限定されるものではなく、画面のON/OFFや動作中のアプリ種別の他に、携帯情報端末100への充電の有無などを組み合わせても良い。さらに、本実施形態にかかる制御パラメータは、動作周波数の下限値の他に、boostの継続時間やboostのアルゴリズムなどを組み合わせも良い。
[boostの処理フロー]
図5は、第1の実施形態にかかるboostのフローチャートである。
図5に示すように、boost受付I/F202cは、ミドルウェア・ドライバ204からのboost依頼に基づき、boostの対象となるイベントが発生したかどうかを判断する(ステップS001)。
ここで、boostの対象となるイベントが発生したと判断された場合(ステップS001のYes)、boost受付I/F202cは、イベントが最優先クラスであるかどうかを判断する(ステップS002)。なお、最優先クラスのイベントとは、例えば画面OFFから画面ONへの切り替えや緊急地震速報のプッシュ通知などの、CPU101の能力不足が許されないイベントである。
ここで、イベントが最優先クラスであると判断された場合(ステップS002のYes)、即ちCPU101の能力不足が許されない場合、boost受付I/F202cは、boost制御部202aに最優先boost依頼を通知する。boost制御部202aは、boost受付I/F202cからの最優先boost依頼に基づき、最優先クラスboostを実行する(ステップS003)。具体的には、boost制御部202aは、最優先クラス用パラメータ格納部202gから最優先クラス用パラメータを取得して、CPU動作周波数制御モジュール201に書き込む。こうして、CPU動作周波数制御モジュール201は、最優先クラス用パラメータを使用して、CPU101の動作周波数を制御する。これにより、CPU101は、例えば画面OFFから画面ONへの切り替えや緊急地震速報のプッシュ通知などの、あらゆるイベントを確実に処理できる処理能力を発揮することとなる。
次に、boost受付I/F202cは、タイマ202dに優先boostの発生を通知して、タイマ202dに最優先クラスboostからの経過時間の計測を開始させる(ステップS004)。
次に、boost受付I/F202cは、再度、ミドルウェア・ドライバ204からのboost依頼に基づき、boostの対象となるイベントが発生したかどうかを判断する(ステップS001)。
一方、イベントが最優先クラスであると判断されない場合(ステップS002のNo)、即ちCPU101の能力不足が許される場合、boost受付I/F202cは、boost制御部202aに非最優先boost依頼を通知する。boost制御部202aは、boost受付I/F202cからの非最優先boost依頼に基づき、最優先クラスboostからの経過時間がしきい値以上であるかどうかを判断する(ステップS005)。
ここで、最優先クラスboostからの経過時間がしきい値以上であると判断された場合(ステップS005のYes)、boost制御部202aは、最優先クラスboost後の端末状態に紐付けられた標準クラス用パラメータが標準クラス用パラメータ格納部202eに記憶されたと判断して、標準クラスboostを実行する(ステップS006)。具体的には、boost制御部202aは、標準クラス用パラメータ格納部202eから標準クラス用パラメータを読み出して、CPU動作周波数制御モジュール201に書き込む。こうして、CPU動作周波数制御モジュール201は、標準クラス用パラメータを使用して、CPU101の動作周波数を制御する。これにより、CPU101は、それぞれのイベントを処理できる最適な処理能力を発揮することとなる。
次に、boost受付I/F202cは、再度、ミドルウェア・ドライバ204からのboost依頼に基づき、boostの対象となるイベントが発生したかどうかを判断する(ステップS001)。
一方、最優先クラスboostからの経過時間がしきい値以上であると判断されない場合(ステップS005のNo)、boost制御部202aは、最優先クラスboost後の端末状態に紐付けられた標準クラス用パラメータが標準クラス用パラメータ格納部202eに記憶されていないと判断して、中優先クラスboostを実行する(ステップS007)。具体的には、boost制御部202aは、中優先クラス用パラメータ格納部202fから中優先クラス用パラメータを読み出して、CPU動作周波数制御モジュール201に書き込む。こうして、CPU動作周波数制御モジュール201は、中優先クラス用パラメータを使用して、CPU101の動作周波数を制御する。これにより、CPU101は、あらゆる通常のイベント、即ち最優先クラスのイベントではないイベントを確実に処理できる処理能力を発揮することとなる。
次に、boost受付I/F202cは、再度、ミドルウェア・ドライバ204からのboost依頼に基づき、boostの対象となるイベントが発生したかどうかを判断する(ステップS001)。
一方、boostの対象となるイベントが発生したと判断されない場合(ステップS001のNo)、パラメータ判定部202bは、ミドルウェア・ドライバ204からの各種情報に基づき、携帯情報端末100の端末状態を特定する(ステップS008)。具体的には、パラメータ判定部202bは、ミドルウェア・ドライバ204からの各種情報に基づき、画面のON/OFFや動作中アプリの種別などを取得して、携帯情報端末100の端末状態を特定する。
次に、パラメータ判定部202bは、端末状態パラメータテーブルTを参照して、携帯情報端末100の端末状態に紐付けられた制御パラメータを取得する(ステップS009)。例えば、端末状態が「画面:ON、動作中アプリ:メール」であれば、パラメータ判定部202bは、端末状態パラメータテーブルTから端末状態「1」に紐付けられた制御パラメータ「下限値:300MHz」を取得することとなる。
次に、パラメータ判定部202bは、標準クラス用パラメータ格納部202eに格納された標準クラス用パラメータを、携帯情報端末100の端末状態に紐付けられた制御パラメータに書き換える(ステップS010)。例えば、端末状態「1」であれば、パラメータ判定部202bは、標準クラス用パラメータを「下限値:300MHz」に更新することとなる。
[boostの具体例]
図6は、第1の実施形態にかかるboostの具体例の説明図である。
図中のパート(a)は、boostを実行したときのCPU101の処理能力及び処理負荷(実際の処理量)のグラフである。グラフでは、横軸を時間(sec)、縦軸を処理能力(MHz)としている。実線は、CPU101の処理能力、点線(破線)は、CPU101の処理負荷である。図中のパート(b)は、携帯情報端末100の端末状態、端末状態の判定状況、boostに使用するパラメータの関係である。
端末状態の判定状況が「判定済」かつ端末状態が「画面:OFF、動作中アプリ:メール」である区間R1にメールチェックのイベントが発生すると、boostモジュール202は、端末状態に紐付けられた標準クラス用パラメータを使用して、標準クラスboostを実施する。即ち、端末状態が「画面:OFF、動作中アプリ:メール」であれば、携帯情報端末100が意識的に操作されていないと推測できる為(ポケットに入っているなど)、boostモジュール202は、端末状態に紐付けられた標準クラス用パラメータを使用することで、CPU101の処理能力を低調に維持したまま、メールチェックのイベントを処理する。これにより、イベント処理の為の消費電力を削減する。
一方、画面OFFから画面ONへの切り替えのイベントが発生すると、boostモジュール202は、携帯情報端末100の端末状態に関係なく、最優先クラス用パラメータを使用して、最優先クラスboostを実行する。即ち、画面OFFから画面ONへの切り替えのイベントは、CPU101の能力不足が許されないイベントである為、boostモジュール202は、最優先クラス用パラメータを使用して、CPU101の処理能力を大幅に上昇させることで、イベントを確実に処理することを優先する。
他方、画面OFFから画面ONへの切り替えのイベント後の経過時間がしきい値未満である区間R2、即ちCPU101の能力不足が許されないイベント後の経過時間がしきい値未満である区間R2に画面操作やメールチェックなどのイベントが発生すると、boostモジュール202は、イベントの種別に関係なく、中優先クラス用パラメータを使用して、中優先クラスboostを実行する。即ち、CPU101の能力不足が許されないイベントの終了後は、例えば画面操作などの比較的高負荷のイベントが発生して、端末状態の判定終了が遅延することが予想される為、boostモジュール202は、中優先クラス用パラメータを使用することで、イベントを確実に処理することを優先する。
以上のように、本実施形態では、携帯情報端末100に発生したイベントが最優先クラスである場合、即ちCPU101の能力不足が許されない特定のイベントである場合、事前に用意された、あらゆるイベントを確実に処理できる制御パラメータ(最優先クラス用パラメータ)を使用して、最優先クラスboostを実行する。このため、CPU101の能力不足に起因するイベント処理の失敗を回避することができる。
又、携帯情報端末100に発生したイベントが最優先クラスでない場合、即ちCPU101の能力不足が許される場合、携帯情報端末100の端末状態に紐付けられた制御パラメータ(標準クラス用パラメータ)を使用して、標準クラス用boostを実行する。このため、携帯情報端末100の端末状態に最適なboostが実行される為、無駄な消費電力を削減することができる。
さらに、携帯情報端末100に発生した特定のイベントに起因する端末状態の変更後の所定期間は、事前に用意された、通常のイベントを確実に処理できる制御パラメータ(中優先クラス用パラメータ)を使用して、中優先クラス用boostを実行する。このため、携帯情報端末100の端末状態の変更直後でも、CPU101の能力不足に起因するイベント処理の失敗を回避することができる。
[第2の実施形態]
以下、図7−図9を参照して、第2の実施形態を説明する。但し、第1の実施形態と同等の構成、機能、作用については、説明を省略することとする。
本実施形態では、携帯情報端末100Aの充電直前、バッテリ107の電池残量の減少に付随して、携帯情報端末100Aが省エネモード(エコモード)に遷移していると想定する。なお、省エネモードとは、CPU101の処理能力を抑制して、電力消費を削減するモードである。
携帯情報端末100Aが省エネモードであるときに、携帯情報端末100Aの充電が開始されると、消費電力を抑制する必要がなくなるが、CPU101の処理能力が抑制されている為、充電直後、端末状態の判定終了が遅延することが予想される。このため、携帯情報端末100Aの端末状態の変更後(「非充電中」⇒「充電中」)、標準クラス用パラメータ格納部202eの制御パラメータが更新されるまで、消費電力を抑制する必要がないにも拘わらず、CPU101の処理能力が抑制され、イベント処理に膨大な時間がかかることがある。
以上の問題を解決する為に、本実施形態では、例えば携帯情報端末100Aの充電開始からの経過時間がしきい値未満である場合、boostモジュール202Aは、携帯情報端末100Aの端末状態に依存しない中優先クラス用パラメータを使用して、中優先クラスboostを実行する。これにより、本実施形態では、携帯情報端末100Aの充電の開始直後に発生したイベントも確実に処理することができる。
(boostモジュール202Aの詳細)
図7は、第2の実施形態にかかる携帯情報端末100Aの機能ブロックの概略図である。
図7に示すように、第2の実施形態にかかる携帯情報端末100Aは、第1の実施形態にかかるboostモジュール202の代わりに、boostモジュール202Aを備える。
boostモジュール202Aは、CPU101がメインメモリ102に制御プログラムを読み込むとともに、該メインメモリ102に読み込んだ制御プログラムを実行することで実現される。
boostモジュール202Aは、イベント通知I/F202hを含む。イベント通知I/F202hは、ミドルウェア・ドライバ204からのイベント情報を受け付ける。さらに、イベント通知I/F202hは、携帯情報端末100Aに特定のイベントが発生した場合、タイマ202dに特定イベントの発生を通知する。特定のイベントとしては、例えば携帯情報端末100Aへの充電開始である。
[boostの処理フロー]
図8は、第2の実施形態にかかるboostのフローチャートである。
図8に示すように、イベント通知I/F202hは、ミドルウェア・ドライバ204からのイベント情報に基づき、特定のイベント、例えば携帯情報端末100Aへの充電が発生したかどうかを判断する(ステップS021)。
ここで、boostの対象となる特定のイベントが発生したと判断された場合(ステップS021のYes)、イベント受付I/F202hは、特定のイベントの発生をタイマ202dに通知して、特定のイベントからの経過時間の計測を開始させる(ステップS022)。
次に、イベント受付部I/F202hは、再度、ミドルウェア・ドライバ204からのイベント情報に基づき、特定のイベントが発生したかどうかを判断する(ステップS021)。
一方、特定のイベントが発生したと判断されない場合(ステップS021のNo)、第1の実施形態と同様、boost受付I/F202cは、ミドルウェア・ドライバ204からのboost依頼に基づき、boostの対象となるイベントが発生したかどうかを判断する(ステップS001)。以降の処理は、第1の実施形態と同等である。
[boostの具体例]
図9は、第2の実施形態にかかるboostの具体例の説明図である。
図中のパート(a)は、boostを実行したときのCPU101の処理能力及び処理負荷(実際の処理量)のグラフである。グラフでは、横軸を時間(sec)、縦軸を処理能力(MHz)としている。実線は、CPU101の処理能力、点線(破線)は、CPU101の処理負荷である。図中のパート(b)は、携帯情報端末100Aの端末状態、端末状態の判定状況、boostに使用するパラメータの関係である。
端末状態の判定状況が「判定済」かつ端末状態が「充電:非充電中、モード:省エネ」である区間R3に画面操作のイベントが発生すると、boostモジュール202Aは、端末状態に紐付けられた標準クラス用パラメータを使用して、標準クラスboostを実施する。即ち、端末状態が「充電:非充電中、モード:省エネ」であれば、消費電力の削減を優先すべきである為、boostモジュール202Aは、端末状態に紐付けられた標準クラス用パラメータを使用することで、CPU101の処理能力を低調に維持したまま、画面操作のイベントを処理する。これにより、イベント処理の為の消費電力の増加を回避する。
一方、携帯情報端末100Aの充電開始のイベント後の経過時間がしきい値未満である区間R4に画面操作のイベントが発生すると、boostモジュール202Aは、イベントの種別に関係なく、中優先クラス用パラメータを使用して、中優先クラスboostを実行する。即ち、充電開始の直後は、携帯情報端末100Aの端末状態の判定が終了していないことが予想される為、boostモジュール202Aは、事前に用意された、中優先クラス用パラメータを使用することで、イベントを確実に処理することを優先する。
以上のように、本実施形態にかかるboostモジュール202Aは、特定のイベントの開始後の経過時間、例えば携帯情報端末100Aの充電開始後の経過時間がしきい値未満であれば、事前に用意しておいた中優先クラス用パラメータを使用して、中優先クラスboostを実行する為、例えば携帯情報端末100Aの充電開始直後の、端末情報を把握できない区間でも、CPU101の能力不足に起因するイベント処理の失敗を回避することができる。
100:携帯端情報末
100A:携帯情報端末
101:CPU
201:CPU動作周波数制御モジュール
202:boostモジュール
202a:boost制御部
202b:パラメータ判定部
202c:boost受付I/F
202d:タイマ
202e:標準クラス用パラメータ格納部
202f:中優先クラス用パラメータ格納部
202g:最優先クラス用パラメータ格納部
202h:イベント通知I/F
T:端末状態パラメータテーブル

Claims (7)

  1. CPUの動作周波数を制御する携帯情報端末に於いて、
    前記携帯情報端末の状態を示す状態情報を取得する状態情報取得部と、
    前記状態情報に基づき前記状態の変更を検知し、前記状態変更が検知されてから所定の時間の経過前に発生するイベントを処理する際、前記CPUの動作周波数の下限値を上昇させる制御部と、
    を備える携帯情報端末。
  2. 請求項1に記載の携帯情報端末に於いて、
    前記制御部は、前記所定の時間の経過後に発生するイベントを処理する際、前記CPUの動作周波数の下限値を、前記状態に対応する値とする、携帯情報端末。
  3. 請求項1又は2に記載の携帯情報端末に於いて、
    前記状態の変更は、前記携帯情報端末のスリープモードからの復帰もしくは前記携帯情報端末の充電に付随するものである、携帯情報端末。
  4. CPUの動作周波数を制御する携帯情報端末の制御方法に於いて、
    前記携帯情報端末の状態を示す状態情報を取得し、
    前記状態情報に基づき前記状態の変更を検知し、
    前記状態変更が検知されてから所定の時間の経過前に発生するイベントを処理する際、前記CPUの動作周波数の下限値を上昇させる、制御方法。
  5. 請求項に記載の制御方法に於いて、
    前記CPUは、前記携帯情報端末に搭載され、前記イベントを処理するCPUである、制御方法。
  6. CPUの動作周波数を制御する携帯情報端末の制御プログラムに於いて、
    前記制御プログラムは、前記携帯情報端末に、
    前記携帯情報端末の状態を示す状態情報を取得させ、
    前記状態情報に基づき前記状態の変更を検知させ、
    前記状態変更が検知されてから所定の時間の経過前に発生するイベントを処理する際、前記CPUの動作周波数の下限値を上昇させる、制御プログラム。
  7. 請求項1乃至3何れかに記載の携帯情報端末に於いて、
    前記動作周波数の制御に関する複数の値を有するパラメータを格納するパラメータ格納部を更に有し、
    前記制御部は、前記パラメータ格納部に格納された前記複数の値を有するパラメータのうち、何れかのパラメータを選択し、選択された前記パラメータに基づいて前記CPUの前記動作周波数を制御することにより、前記CPUの前記動作周波数の前記下限値を上昇させる
    ことを特徴とする携帯情報端末。
JP2013058359A 2013-03-21 2013-03-21 携帯情報端末、制御方法、制御プログラム Active JP6070321B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013058359A JP6070321B2 (ja) 2013-03-21 2013-03-21 携帯情報端末、制御方法、制御プログラム
US14/188,128 US9529404B2 (en) 2013-03-21 2014-02-24 Information processing apparatus and method of controlling information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013058359A JP6070321B2 (ja) 2013-03-21 2013-03-21 携帯情報端末、制御方法、制御プログラム

Publications (2)

Publication Number Publication Date
JP2014182736A JP2014182736A (ja) 2014-09-29
JP6070321B2 true JP6070321B2 (ja) 2017-02-01

Family

ID=51570049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013058359A Active JP6070321B2 (ja) 2013-03-21 2013-03-21 携帯情報端末、制御方法、制御プログラム

Country Status (2)

Country Link
US (1) US9529404B2 (ja)
JP (1) JP6070321B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106200867A (zh) * 2016-06-29 2016-12-07 宇龙计算机通信科技(深圳)有限公司 一种终端节能处理的方法、装置以及终端
US20200098013A1 (en) * 2018-09-22 2020-03-26 The Nielsen Company (Us), Llc Methods and apparatus to collect audience measurement data on computing devices
JP7416198B2 (ja) * 2020-02-27 2024-01-17 日本電信電話株式会社 サーバ内周波数制御装置、制御方法、プログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05289769A (ja) 1992-04-14 1993-11-05 Oki Electric Ind Co Ltd 携帯用情報機器
JP2000222061A (ja) 1999-02-03 2000-08-11 Matsushita Electric Ind Co Ltd クロック制御方法および制御回路
JP2002157042A (ja) * 2000-11-21 2002-05-31 Kenwood Corp クロック制御装置、及びクロック制御方法
JP2002366252A (ja) 2001-06-11 2002-12-20 Kenwood Corp 動作周波数制御システム、携帯情報処理端末、動作周波数制御方法及びプログラム
JP3879565B2 (ja) * 2002-04-03 2007-02-14 株式会社日立製作所 携帯電話機
US7554909B2 (en) * 2005-03-21 2009-06-30 Intel Corporation Dynamic service management for multicore processors
US7882379B2 (en) * 2006-09-22 2011-02-01 Sony Computer Entertainment Inc. Power consumption reduction in a multiprocessor system
KR101335001B1 (ko) * 2007-11-07 2013-12-02 삼성전자주식회사 프로세서 및 인스트럭션 스케줄링 방법
US8090967B2 (en) * 2008-05-23 2012-01-03 Intel Corporation Power state transition initiation control of memory interconnect based on early warning signal, memory response time, and wakeup delay
JP2010039791A (ja) 2008-08-05 2010-02-18 Toshiba Corp 携帯端末装置
JP2010146280A (ja) * 2008-12-18 2010-07-01 Nec Infrontia Corp コンピュータ装置、cpuクロック調整方法
EP2573683A1 (en) * 2010-05-20 2013-03-27 Renesas Electronics Corporation Data processor and electronic control unit

Also Published As

Publication number Publication date
US9529404B2 (en) 2016-12-27
JP2014182736A (ja) 2014-09-29
US20140289545A1 (en) 2014-09-25

Similar Documents

Publication Publication Date Title
JP5410109B2 (ja) 電力制御システム及び電力制御方法
KR101562448B1 (ko) 휴대용 컴퓨팅 디바이스의 멀티코어 프로세서에서 다수의 코어들로의 전력을 동적으로 제어하는 방법 및 시스템
CN107209546B (zh) 抑制功率尖峰
EP2527954B1 (en) Postponing of a suspend power mode
KR101311045B1 (ko) 연결 쉘
TWI480724B (zh) 用以指示電池電力之方法及運算裝置、以及儲存相關指令的儲存媒體
US20160320998A1 (en) Control device, control method, computer program product, and electronic device
JP5915406B2 (ja) 携帯端末装置の制御方法、制御プログラム及び携帯端末装置
CN108292777B (zh) 共享电极电池
US20170308148A1 (en) Adaptive Doze to Hibernate
JP6409240B1 (ja) 情報処理装置、制御方法、及びプログラム
US9529407B2 (en) Method for controlling information processing apparatus and information processing apparatus
JP5764150B2 (ja) パワー・オン状態から省電力状態に移行させる方法およびコンピュータ
WO2017022169A1 (ja) バッテリ制御装置、電子機器、バッテリパック及びバッテリ制御方法
JP2015504277A (ja) 端末機器の電源オフ動作を制御するための方法と装置
JP6070321B2 (ja) 携帯情報端末、制御方法、制御プログラム
JP2014167780A (ja) 情報処理装置、動作状態制御方法及びプログラム
KR102125507B1 (ko) 배터리 충전을 위한 방법 및 그 전자 장치
US9727495B2 (en) Peripheral equipment control device and information processing
EP2798437A1 (en) Middleware power management
JP2002366252A (ja) 動作周波数制御システム、携帯情報処理端末、動作周波数制御方法及びプログラム
JP6164363B2 (ja) 制御装置及び電子機器
TWI575367B (zh) 無人化喚醒技術
JP2013162655A (ja) 電子機器、電子機器の制御方法、電子機器の制御プログラム、電子システム
CN117130455A (zh) 一种功耗控制方法、装置及电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151106

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20160401

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161219

R150 Certificate of patent or registration of utility model

Ref document number: 6070321

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150