(57)【特許請求の範囲】
【請求項１】
情報処理装置のシステムを制御するプロセッサと、
前記システムへの電力供給の制御を実行し、前記プロセッサの電源がオフとされたスタンバイ時に電源がオフとされる電源制御部と、
スタンバイ時に情報を記憶するメモリと、
スタンバイ時に前記メモリへの電力供給を実行する電力供給部と、
を備え、
前記電源制御部は、第１の電源系統で動作する領域と、第２の電源系統で動作する領域とを含み、スタンバイ時に前記第２の電源系統で動作する領域がオフとされることで大部分の機能がオフとされ、
前記電力供給部は、スタンバイ時に前記第１の電源系統で動作する、情報処理装置。
【請求項２】
前記電力供給部は、ＧＰＩＯエキスパンダから構成される、請求項１に記載の情報処理装置。
【請求項３】
前記電力供給部は、ラッチ回路から構成される、請求項１に記載の情報処理装置。
【請求項４】
情報処理装置のシステムへの電力供給の制御を実行する電源制御部の電源を、前記システムを制御するプロセッサの電源がオフとされたスタンバイ時にオフとすることと、
スタンバイ時に、前記電源制御部とは別に設けられた電力供給部が、情報を記憶するメモリへの電力供給を実行すること、
を備え、
前記電源制御部は、第１の電源系統で動作する領域と、第２の電源系統で動作する領域とを含み、スタンバイ時に前記第２の電源系統で動作する領域がオフとされることで大部分の機能がオフとされ、
前記電力供給部は、スタンバイ時に前記第１の電源系統で動作する、情報処理の制御方法。
【請求項５】
情報処理装置のシステムへの電力供給の制御を実行する電源制御部の電源を、前記システムを制御するプロセッサの電源がオフとされたスタンバイ時にオフとする手段、
スタンバイ時に、前記電源制御部とは別に設けられた電力供給部が、情報を記憶するメモリへの電力供給を実行する手段、
としてコンピュータを機能させるためのプログラムであって、
前記電源制御部は、第１の電源系統で動作する領域と、第２の電源系統で動作する領域とを含み、スタンバイ時に前記第２の電源系統で動作する領域がオフとされることで大部分の機能がオフとされ、
前記電力供給部は、スタンバイ時に前記第１の電源系統で動作する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、パーソナルコンピュータ（ＰＣ）等の情報処理装置では、通常の電源投入状態の他に、サスペンド（スタンバイ）、ハイバネーションといった状態が設定されている。例えば下記の特許文献１には、Ｓ４／Ｓ５時にＥＣをオフ（ｏｆｆ）する場合に、タイマーＷａｋｅを可能にする技術が記載されている。【０００３】
また、特許文献２には、ＢＩＯＳが行うハイバネーションにおいて、読み書きデータ量を削減する方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２０４１６８号公報
【特許文献２】特開２００１−９２６２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一般的にスタンバイと称される状態では、ＣＰＵの電源が切られた状態でメモリに電源を投入する必要がある。しかしながら、メモリに電源を投入するためには、システム全体の電源制御を行うＥＣを起動しておく必要がある。このため、消費電力を下げる上でＥＣの消費電力削減が課題となっていた。【０００６】
そこで、スタンバイ時に消費電力を低減することが求められていた。
【課題を解決するための手段】
【０００７】
本開示によれば、情報処理装置のシステムを制御するプロセッサと、前記システムへの電力供給の制御を実行し、前記プロセッサの電源がオフとされたスタンバイ時に電源がオフとされる電源制御部と、スタンバイ時に情報を記憶するメモリと、スタンバイ時に前記メモリへの電力供給を実行する電力供給部と、を備える、情報処理装置が提供される。【０００８】
また、前記電力供給部は、ＧＰＩＯエキスパンダから構成されるものであってもよい。【０００９】
また、前記電源供給部は、ラッチ回路から構成されるものであってもよい。【００１０】
また、前記電源制御部は、第１の電源系統で動作する領域と、第２の電源系統で動作する領域とを含み、スタンバイ時に前記第２の電源系統で動作する領域がオフとされ、前記電力供給部は、スタンバイ時に前記第１の電源系統で動作するものであってもよい。【００１１】
また、本開示によれば、情報処理装置のシステムへの電力供給の制御を実行する電源制御部の電源を、前記システムを制御するプロセッサの電源がオフとされたスタンバイ時にオフとすることと、スタンバイ時に、前記電源制御部とは別に設けられた電力供給部が、情報を記憶するメモリへの電力供給を実行すること、を備える、情報処理の制御方法が提供される。【００１２】
また、本開示によれば、情報処理装置のシステムへの電力供給の制御を実行する電源制御部の電源を、前記システムを制御するプロセッサの電源がオフとされたスタンバイ時にオフとする手段、スタンバイ時に、前記電源制御部とは別に設けられた電力供給部が、情報を記憶するメモリへの電力供給を実行する手段、としてコンピュータを機能させるためのプログラムが提供される。
【発明の効果】
【００１３】
本開示によれば、スタンバイ時に消費電力を低減することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】一般的なＰＣの構成を示す模式図である。
【図２】各実施形態に係る情報処理装置の全体構成を示す模式図である。
【図３】第１の実施形態に係る情報処理装置の具体的な構成を示す模式図である。
【図４】第１の実施形態に係る情報処理装置の具体的な構成の他の例を示す模式図である。
【図５】第１の実施形態の効果を説明するための模式図である。
【図６】ＲＴＣによる電源停止状態復帰の例を示す模式図である。
【図７】ＲＴＣによる電源停止状態復帰の例を示す模式図である。
【図８】ＲＴＣによる電源停止状態復帰の例を示す模式図である。
【図９】ＲＴＣによる電源停止状態復帰の例を示す模式図である。
【図１０】ＲＴＣによる電源停止状態復帰の例を示す模式図である。
【図１１】ＲＴＣによる電源停止状態復帰の例を示す模式図である。
【図１２】ＥＣによるデバイスの電源のオン／オフの管理を示す模式図である。
【図１３】ＥＣによるデバイスの電源のオン／オフの管理を示す模式図である。
【図１４】ＥＣによるデバイスの電源のオン／オフの管理を示す模式図である。
【図１５】プロセッサ、チップセット（ＰＣＨ）、ＥＣ、メモリの構成を示す模式図である。
【図１６】図１５の構成の変形例を示す模式図である。
【図１７】図１６の専用回路の代わりにハードウェア（ＨＷ）スイッチ１５０を設けた例を示す模式図である。
【図１８】図１５において、メモリ１０９の代わりに他のデバイス（Ａｎｙ  Ｄｅｖｉｃｅｓ）１６０を設けた例を示す模式図である。
【図１９】電源制御以外への応用に適用した構成を示す模式図である。
【図２０】第３の実施形態における各ステートの実装仕様を示す模式図である。
【図２１】Ｓ３時とＳ０時の放電特性を示す模式図である。
【図２２】ＬＢＨのしきい値を示す特性図である。
【図２３】タイマーハイバネーションを示す特性図である。
【図２４】ＬＢＨの処理を示すフローチャートである。
【図２５】Ｔｉｍｅｒ Ｈｉｂの処理を示すフローチャートである。
【図２６】一時停止機構を示すタイミングチャートである。
【図２７】一時停止機構を示すタイミングチャートである。
【図２８】Ｈｉｂｅｒｎａｔｉｏｎ負荷を示す模式図である。
【図２９】低容量且つ高パフォーマンスである情報処理装置の負荷−容量特性を示す特性図である。
【図３０】ハイブリッドスリープ機能の処理を示すフローチャートである。
【図３１】バッテリースリープディスエーブルの処理を示すフローチャートである。
【図３２】第３の実施形態の処理を示すブロック図である。
【図３３】第３の実施形態の処理を示すブロック図である。
【図３４】第３の実施形態の処理を示すブロック図である。
【図３５】第３の実施形態の処理を示すブロック図である。
【図３６】第３の実施形態の処理を示すブロック図である。
【図３７】第３の実施形態の処理を示すブロック図である。
【図３８】第４の実施形態の処理を示すフローチャートである。
【図３９】第４の実施形態の処理を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１６】
なお、説明は以下の順序で行うものとする。
１．前提となる技術
２．第１の実施形態
２．１．装置の全体構成例
２．２．装置の具体的構成例
３．第２の実施形態
３．１．第２の実施形態の動作について
３．２．ＥＣによるデバイスの電源のオン／オフの管理について
３．３．第２の実施形態の構成例
４．第３の実施形態
４．１．ＵＳＢ充電の概要
４．２．前提となるデータロスト対策について
４．３．本実施形態に係るデータロスト対策について
４．４．ハイブリッドスリープ機能について
４．５．バッテリースリープディスエーブルについて
４．６．第３の実施形態の処理について
５．第４の実施形態
【００１７】
１．前提となる技術
近時では、メールやウェブをはじめとするインターネットへ接続する端末として、パーソナルコンピュータ（ＰＣ）に加えて、スマートフォンやタブレットと呼ばれるモバイル機器も使われるようになっている。
【００１８】
これらのモバイル機器は、処理能力はＰＣと比べると比較的低いが、ＰＣに比べて軽量であり、バッテリ持続時間も長く、持ち運びに適している。また、モバイル機器は、ユーザが使用しない時には機器を待機状態にしておくことが一般的であり、ユーザが機器を使いたいときには待機状態からすぐに復帰するように構成される。
【００１９】
一方、ＰＣは、機器を使用しないときにはシャットダウン (電源オフ)することが一般的であるが、サスペンド、ハイバネーション、ＩｎｓｔａｎｔＯｎといったソリューションも存在している。図１は、一般的なＰＣ１００の構成を示す模式図である。図１に示すように、ＰＣ２００は、プロセッサ（ＣＰＵ（中央演算処理装置））２０２、チップセット２０４、ＥＣ（Ｅｍｂｅｄｄｅｄ  Ｃｏｎｔｒｏｌｌｅｒ）２０６、メモリ(ＤＲＡＭ)２０９、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置、図１において不図示）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などのストレージデバイス２２０、バッテリー２２２、を有して構成されている。
【００２０】
チップセット２０４は、情報処理装置２００の内部において、ＣＰＵ２０２と、ストレージデバイス２２０やＬＣＤなどの各種デバイスとの間のデータの受け渡しを管理するチップである。図１に示すように、チップセット２０４は、ノースブリッジ２０８及びサウスブリッジ２１０から構成されている。ノースブリッジ２０８は、メモリ２０９を制御するメモリコントローラ２１２を含む。また、サウスブリッジ２１０は、計時専用のチップであるＲＴＣ（Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）２１４を含む。ＲＴＣ２１４は、他のマザーボード上のチップと異なり、電源が切られている間も内蔵電池から電源供給を受けて動作している(電源が入っている間は外部電源から供給を受ける)。ＯＳ（オペレーティングシステム）は、起動時にＲＴＣ２１４から日時を取得し、その後はＯＳ側で独自に計時する。ＥＣ２０６は、ＰＣ２００の電力供給制御を実行するものであり、例えばＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ  Ｃｉｒｃｕｉｔ）で構成されている。
【００２１】
以下、サスペンド、ハイバネーション、ＩｎｓｔａｎｔＯｎ、ＥＣ  ｏｆｆなどの各状態について説明する。
【００２２】
＜サスペンド＞
サスペンドは、ＡＣＰＩ（Ａｄｖａｎｃｅｄ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  ａｎｄ  Ｐｏｗｅｒ  Ｉｎｔｅｒｆａｃｅ）規格ではＳ３（ステート）とも称される。また、サスペンドは、スタンバイまたはスリープとも称される。サスペンドは、メモリ２０９のデータを保持しつつ、
プロセッサ２０２、ストレージデバイス２２０、ＬＣＤ等のデバイスをオフもしくは停止することで、システム全体の消費電力を下げ、かつ動作状態に高速に復帰出来る待機状態のことである。サスペンドでは、ＯＳが起動した状態のデータをメモリ２０９が保持しているため、復帰するときにはＯＳは再起動されず、サスペンド前の状態にそのまま復帰する。
【００２３】
サスペンド状態では、メモリ２０９のデータを保持するために、メモリ２０９への給電が行われる。サスペンド中、メモリ２０９はセルフリフレッシュ（Ｓｅｌｆ
Ｒｅｆｒｅｓｈ）と呼ばれる状態になる。セルフリフレッシュとは、クロックを非活性にしてデバイスの消費電力を低く抑え、内部のリフレッシュカウンタを用いて自動的にリフレッシュ動作を実行するモードである。セルフリフレッシュは、データを保持する必要はあるが、長時間デバイスにアクセスしない場合に有効である。
【００２４】
サスペンドでは、システム全体をオフした状態（ＡＣＰＩ規格のＳ５）と比較すると、消費電力が比較的多くなる。また、サスペンドでは、停電が発生した場合やバッテリ残量が無くなった場合など電源供給が絶たれると、メモリ２０９のデータが消えてしまい、データを復帰できなくなる。
【００２５】
＜ハイバネーション (Ｓ４、休止状態とも呼ばれる)＞
ハイバネーションは、システムの電源を切る直前にメモリ２０９の内容をＨＤＤなどのストレージデバイス２２０に保存（待避）し、次回起動時にストレージデバイス２２０に保存した内容でメモリ２０９の内容を復元し、復帰する機能である。ハイバネーションは、ＡＣＰＩ規格ではＳ４とも称される。
【００２６】
ハイバネーションでは、システムの電源を完全にオフ出来るため、サスペンドに比べ消費電力が少ないのが利点である。一方、ハイバネーションでは、メモリ２０９の内容をストレージデバイス２２０に待避・復元するため、遷移・復帰に比較的時間を要する。
【００２７】
ハイバネーションの遷移・復帰時間を短くするためには、出来る限りストレージデバイス２２０に対する読み書きデータ量を削減することが有効である。前述のように、ＢＩＯＳが行うハイバネーションにおいて読み書きデータ量を削減する方法は、特許文献２に記載されている。
【００２８】
＜ＩｎｓｔａｎｔＯｎ＞
ＩｎｓｔａｎｔＯｎとは、システムの全ての機能を使用できる通常のＯＳとは別に用意された、機能に制限はあるものの短時間で起動するＯＳのことである。ユーザの指示により、起動するＯＳとして通常のＯＳまたはＩｎｓｔａｎｔＯｎが選択される。
【００２９】
ＩｎｓｔａｎｔＯｎは、通常のＯＳとは異なるＯＳを使用するため、ＯＳの切り替えには再起動を要する。また、これらのＯＳを跨いで作業を継続することは出来ない。
【００３０】
＜ＥＣ ｏｆｆ＞
ＥＣ２０６は、システムの電源ステートの管理を担っている。ＥＣ２０６がオフ（ＯＦＦ）となった状態は、ＡＣＰＩ規格のＳ５に対応し、システム全体をオフした状態である。上述のように、サスペンド（Ｓ３、スタンバイ）は、は電源オフ（Ｓ５）とは異なる状態であり、システムのメモリ２０９への電源供給を維持する必要がある。このため、図１に示す一般的なＰＣ２００の場合、サスペンド中にＥＣ２０６をオフ（ＯＦＦ）にすることは出来なかった。
【００３１】
＜Ｈｙｂｒｉｄ  Ｓｌｅｅｐ＞
Ｓ３（スタンバイ）とハイバネーションを組み合わせたもので、スタンバイへの遷移と同時にハイバネーションイメージ（Ｈｉｂ  Ｉｍａｇｅ）をストレージデバイス２２０上に作成する。ハイバネーションイメージを作成するために遷移時間がスタンバイに比べ長くなるが、スタンバイに遷移するのでＳ０への復帰は早い。また、スタンバイと異なり、電源が失われてもストレージデバイス２２０上にあるハイバネーションイメージから復帰出来る。なお、Ｈｙｂｒｉｄ  Ｓｌｅｅｐは、Ｗｉｎｄｏｗｓ（登録商標）  Ｖｉｓｔａの機能として導入されている。
【００３２】
以上のように、ＰＣ２００においては、サスペンド、ハイバネーション、ＩｎｓｔａｎｔＯｎ等のソリューションにより、待機状態からの復帰を実現している。ここで、前述のように、サスペンドにおいては、ＥＣ２０６をオフ（ＯＦＦ）にすることができないため、消費電力が増加してしまう問題がある。また、ハイバネーションにおいては、遷移・復帰時間に比較的時間を要してしまう問題がある。
【００３３】
そこで、以下では、サスペンド中におけるシステム全体の消費電力を低減することに関連した実施形態と、ハイバネーションにおける遷移時間を低減することに関連した実施形態を中心に、各実施形態について説明する。
【００３４】
２．第１の実施形態
［２．１．装置の全体構成例］
第１の実施形態は、サスペンド（スタンバイ（Ｓｔａｎｄｂｙ））時の電力を削減するために、ＥＣ電源をオフ（ＯＦＦ）する技術に関する。ＥＣ電源をオフ（ＯＦＦ）することで、スタンバイ時の電力を大幅に削減することができる。メモリへの電源供給は、ＥＣより制御可能なＧＰＩＯ
Ｅｘｐａｎｄｅｒを使用する。制御が必要な信号をＧＰＩＯ Ｅｘｐａｎｄｅｒに集約し、ＧＰＩＯ Ｅｘｐａｎｄｅｒの電源のみ供給することでサスペンド中のメモリの出力レベルを維持することができる。
【００３５】
まず、図２を参照して、本開示の第１の実施形態に係る情報処理装置１００の概略構成について説明する。図２は、以下で説明する各実施形態に係る情報処理装置１００の全体構成を示す模式図である。情報処理装置１００としては、一例としてノート型のパーソナルコンピュータ（ＰＣ）を挙げることができるが、これに限定されるものではない。図２に示すように、情報処理装置１００は、プロセッサ１０２、チップセット（ＰＣＨ：プラットフォーム・コントローラ・ハブ）１０４、ＥＣ１０６、メモリ１０９、ＧＰＩＯエキスパンダＩＣ（ＧＰＩＯ  Ｅｘｐａｎｄｅｒ）１１０、充電制御ＩＣ１１２、ＵＳＢポート１１４、ストレージデバイス（ＳＳＤまたはＨＤＤ等）１１６、アクセスＬＥＤ１１８、ＢＩＯＳ  ＲＯＭ１１９を有して構成されている。また、情報処理装置１００は、キーボード１２０、バッテリー１２２、電源ボタン１２４、電源ＬＥＤ１２６を有して構成されている。
【００３６】
本実施形態に係る情報処理装置１００は、図１のＰＣ２００とは異なり、チップセット１０４はノースブリッジ２０８とサウスブリッジ２１０とから構成されるものではなく、プロセッサ１０２がノースブリッジ２０８の機能を含んでいる。つまり、図１のノースブリッジ２０８はプロセッサ１０２に統合されている。このため、プロセッサ１０２が、メモリ１０９を制御するメモリコントローラ１１０を含んで構成されている。チップセット１０４は、主として図２のサウスブリッジ２１０から構成される。チップセット１０４は、計時専用のチップであるＲＴＣ（Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）１１４を含んで構成されている。また、ＥＣ１０６は、アラームタイマー１０７を含んで構成されている。
【００３７】
［２．２．装置の具体的構成例］
図３は、第１の実施形態に係る情報処理装置１００の具体的な構成を示す模式図である。図３は、主として、メモリ１０９と、メモリ１０９に電源を供給する構成要素を示している。
【００３８】
ＥＣ１０６は、２つの電源系統（ＶＣＣ１／ＶＣＣ２)により動作する。ＧＰＩＯ  Ｅｘｐａｎｄｅｒ１１０は、ＥＣ１０６の電源ＶＣＣ１に相当する電源を使用する。サスペンド（Ｓ３）では、メモリ１０９のデータを保持するため、メモリ１０９に供給する２つの信号（ＭＥＭＯＲＹ_ＯＮ／ＲＳＴ_ＯＮ）の出力レベルをキープする。ＭＥＭＯＲＹ_ＯＮは、メモリ１０９の電源をコントロールする信号であり、ＲＳＴ_ＯＮ／ＥＣ_ＯＮはメモリ１０９のリセット信号をコントロールする信号である。これらの信号は、ＥＣ１０６のＶＣＣ１動作部もしくはＧＰＩＯ
Ｅｘｐａｎｄｅｒ１１０から供給する。
【００３９】
本実施形態では、サスペンド（Ｓ３）において、ＥＣ１０６の電源ＶＣＣ２がオフにされる。これにより、ＥＣ１０６の大部分の機能がオフとされる。一方、ＥＣ１０６の電源ＶＣＣ１はサスペンドにおいてもオフとされず、ＧＰＩＯ  Ｅｘｐａｎｄｅｒ１１０にはサスペンドにおいても電源が供給される。
【００４０】
これにより、ＥＣ１０６の大部分をオフにした状態で、ＧＰＩＯ  Ｅｘｐａｎｄｅｒ１１０がオンとされ、メモリ１０９への信号を継続して送ることができる。サスペンドにおいて、ＥＣ１０６の大部分の機能をオフにすることで、消費電力の大幅な低減が可能である。
【００４１】
なお、図３に示す例では、電源ＶＣＣ１をＥＣ１０６に設けているが、電源ＶＣＣ１はＥＣ１０６とは別に設けていても良い。これにより、サスペンドにおいてＥＣ１０６を完全にオフすることができる。
【００４２】
また、図３に示す構成において、メモリコントローラ１１０の電源＋ＶＣＯＮＴは、スタンバイ中に電源が切れるため、ＥＣ１０６の電源ＶＣＣ２によるＣＯＮＴ_ＯＮは、出力レベルをキープする必要が無い。
【００４３】
以上のように、本実施形態では、システムへの電力供給の制御を実行するＥＣ１０６の電源を、システムを制御するプロセッサ１０２の電源がオフとされたスタンバイ時にオフとし、スタンバイ時に、ＥＣ１０６とは別に設けられたＧＰＩＯ  Ｅｘｐａｎｄｅｒ１１０が、情報を記憶するメモリ１０９への電力供給を実行する。この処理を実現する構成は、ハードウェア（回路）、またはＣＰＵなどの中央演算処理装置とこれを機能させるためのプログラムから構成することができる。
【００４４】
図４は、第１の実施形態に係る情報処理装置１００の具体的な構成の他の例を示す模式図である。図４に示す例では、ＧＰＩＯ  Ｅｘｐａｎｄｅｒ１１０の代わりに、外部ラッチ回路１３０を設けている。外部ラッチ回路１３０は、サスペンドにおいて、ＥＣ１０６の電源ＶＣＣ１に相当する電源を使用する。図４に示す構成においても、図３に示す構成を同様に、サスペンドにおいてＥＣ１０６の電源ＶＣＣ２をオフすることができるため、サスペンドにおける消費電力を大幅に低減することが可能である。
【００４５】
図５は、第１の実施形態の効果の一例を説明するための模式図である。図５に示すように、図１のＰＣ２００では、サスペンド（Ｓｔａｎｄｂｙ）時のＥＣ２０６の消費電力が２００［ｍＷ］であるのに対し、第１の実施形態の構成によれば、サスペンド時のＥＣ１０６の消費電力を０［ｍＷ］まで低下することができる。従って、情報処理装置１００の全体（（Ｔｏｔａｌ）の消費電力を２００［ｍＷ］まで低下することができ、図１のＰＣ２００の全体の消費電力（３００［ｍＷ］）に対して、１００［ｍＷ］の消費電力の削減が可能となる。これにより、充電後のバッテリー１２２の使用可能期間を１５日間とすることができ、図１のＰＣ２００の１０日間に比べて１．５倍の延長が可能となる。
【００４６】
以上説明したように第１の実施形態によれば、サスペンド時にメモリ１０９を維持するための信号をＧＰＩＯ  Ｅｘｐａｎｄｅｒ１１０に集約し、サスペンド時にＥＣ１０６の電源をオフ（ＯＦＦ）することで、サスペンド時の消費電力を大きく低下させることができる。これにより、バッテリー１２２の保持期間を大幅に伸ばすことができる。
【００４７】
３．第２の実施形態
３．１．第２の実施形態の動作について
次に、本開示の第２の実施形態について説明する。第２の実施形態は、サスペンド時にＥＣとチップセットの電源をオフする場合において、起動時刻を高精度に実現する技術に関する。
【００４８】
チップセット１０４は、ＲＴＣ（Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）１１４を含んで構成されている。チップセット（ＰＣＨ）１０４の電源を切る（Ｒｅｓｕｍｅ電源を遮断する）ことで、チップセット１０４の内部に持つＲＴＣ１１４の機能を使用する事ができなくなる。つまり、チップセット１０４の電源を切ることで、消費電力を低減できるが、ＲＴＣ２１４の機能が犠牲になるデメリットがある。
【００４９】
また、ＥＣ１０６によるデバイスの電源管理が必要な場合、ＥＣ１０６の電源をオン（ＯＮ）にしておく必要があり、ＥＣ１０６の電源をオフにすると、電源管理ができなくなる。しかし、ＥＣ１０６の電源をオンにしておくと消費電力が増加してしまう。
【００５０】
一方、情報処理装置１００は、ＲＴＣ  Ｗａｋｅの機能を有している。ＲＴＣ  Ｗａｋｅは、所定の時刻にチップセット１０４が自ら起動する機能である。ＲＴＣ  Ｗａｋｅの機能は、ユーザの指示またはＯＳによって設定され、ＢＩＯＳによってイネーブルとされる。ＲＴＣ  Ｗａｋｅの機能を使用することにより、必要な期間だけプロセッサ１０２をオンにすることができる。しかしながら、ＲＴＣ  Ｗａｋｅの機能を使用するためには、チップセット１０４の電源をオンにしておく必要がある。なお、ＢＩＯＳとは、プロセッサ１０２、チップセット１０４に接続されたＥＣ１０６やストレージデバイス１１６などの周辺機器を制御するプログラム群であり、これらの機器に対する基本的な入出力部をＯＳやアプリケーションソフトに対して提供する。ＢＩＯＳは、ＢＩＯＳ  ＲＯＭ１１９に格納されている。
【００５１】
第２の実施形態では、ＯＳによってＲＴＣ
ｗａｋｅが設定されている場合、ＢＩＯＳが同じ設定を、ＥＣ１０６に対しても行う。ＥＣ１０６は、ＲＴＣ  ｗａｋｅによって設定された日時よりも所定時間前（例えば数秒前）にチップセット１０４の電源を入れる。チップセット１０４では、設定された日時にＲＴＣ
ｗａｋｅ割込みが発生し、システムが起動する。このような構成によれば、ＥＣ１０６及びチップセット１０４を必要な時だけオンにすることができ、大幅な消費電力の低減が可能である。
【００５２】
以下、図６〜図１１に基づいて、本実施形態に係る、ＲＴＣによる電源停止状態復帰の例について説明する。この処理を実現する構成は、ハードウェア（回路）、またはＣＰＵなどの中央演算処理装置とこれを機能させるためのプログラムから構成することができる。ここでは、Ｓ５（シャットダウン）からの復帰の例について説明するが、他の電源停止状態から復帰する場合にも同様に適用可能である。図６では、プロセッサ（ＣＰＵ）１０２、チップセット１０４、及びＥＣ１０６の間でやり取りされる信号と、電源のオン／オフ状態を示す模式図である。図６〜図１１において、ドットを付した領域は、電源がオフ（ＯＦＦ）の状態を示しており、ドットを付していない領域は、電源がオン（ＯＮ）の状態を示している。
【００５３】
上述したように、チップセット１０４は、ＲＴＣ１１４を有している。また、ＥＣ１０６は、独自のタイマー１０７を有している。
【００５４】
チップセット１０４にＲＴＣ
Ｗａｋｅが設定されている場合、チップセット１０４では、設定された日時にＲＴＣ ｗａｋｅ割込みが発生し、プロセッサ１０２に電源が投入され、システムが起動する。
【００５５】
図６に示すように、ＲＴＣ Ｗａｋｅが設定されている場合、プロセッサ１０２上で動作するＢＩＯＳ１０３がＲＴＣ
Ｗａｋｅによる起動（Ｗａｋｅ）の日時に関する情報をチップセット１０４から取得する。そして、ＢＩＯＳ１０３は、チップセット１０４から取得した情報に基づいて、ＥＣ１０６に対して、起動する日時（ＲＴＣ
ｗａｋｅと同様の日時）を設定する。ＥＣ１０６は、設定された日時よりも所定時間前に起動するように、自身のタイマー１０７（Ａｌａｒｍ Ｔｉｍｅｒ）を設定する。ここで、所定時間は、ＥＣ１０６のタイマー１０７の精度に応じて、またＲＴＣ
ｗａｋｅが起動するまでのマージンに応じて、ＥＣ１０６の起動が確実にＲＴＣ  Ｗａｋｅよりも先行できる時間に設定される。所定時間は、例えば１秒、５秒、１分、５分など、任意の値に設定される。
【００５６】
図７に示すように、ＲＴＣ Ｗａｋｅが設定された状態でシステムがＳ５に遷移すると、プロセッサ１０２、チップセット１０４、ＥＣ１０６の電源がオフ（ＯＦＦ）とされ、ＲＴＣ１１４、およびＥＣ１０６内のタイマー１０７のみに電力が供給される状態となる。
【００５７】
次に、図８に示すように、ＲＴＣ
Ｗａｋｅによりチップセット１０４が復帰すべき日時の数秒前に、タイマー１０７に設定された時刻に基づいてＥＣ１０６が起動する。これは、上述したように、ＲＴＣ Ｗａｋｅの日時が設定された時に、設定された日時よりも少し前に起動するようにＥＣ１０６のタイマー１０７が設定されているためである。
【００５８】
次に、図９に示すように、復帰したＥＣ１０６は、チップセット１０４に電力を供給する。この時点では、ＲＴＣ１１４に設定されたＲＴＣ  Ｗａｋｅの時間に到達しておらず、ＲＴＣ１１４のタイマーはエキスパイア（ｅｘｐｉｒｅ）していない。そして、チップセット１０４に電力が供給されたことにより、電気的に、ＲＴＣ
ｗａｋｅが可能な環境が整う。
【００５９】
次に、図１０に示すように、ＥＣ１０６が起動してから数秒後に、チップセット１０４内部のＲＴＣ１１４
Ｔｉｍｅｒがエキスパイアし、ＲＴＣ ｗａｋｅの割込みが発生する。
【００６０】
その後、図１１に示すように、ＲＴＣ
ｗａｋｅが発生したのち、通常の復帰パスを通じてシステムがＳ０に遷移する。これにより、チップセット１０４、およびプロセッサ１０２に電源が投入される。
【００６１】
ＥＣ１０６は、あくまでもＲＴＣ
ｗａｋｅが実現可能な環境を作るためにのみ動作し、チップセット１０４に電源を投入した後は、ＲＴＣ ｗａｋｅによって自動的にシステムが起動してＳ０に達する。このため、本実施形態では、実際のＲＴＣ
ｗａｋｅの仕組みでシステムがＳ０へ遷移して起動（Ｗａｋｅ）する。従って、特許文献１に記載されているようなＥＣ１０６がＲＴＣ１１４の代替として用いられる場合と比較して、ＲＴＣ１１４の時刻（システム時刻）に対して正確に起動することができる。
【００６２】
これにより、タイマー１０７などの外部タイマーの精度が低く、ＲＴＣ１１４の時刻に対してずれている場合であっても、十分に早くＥＣ１０６が起動することで、ＲＴＣ１１４の時刻に合わせて正確にシステムを起動することができる。従って、例えばＴＶ録画を行う場合などにおいても、ＲＴＣ１１４の時刻に基づいて、ＴＶプログラムの時間に合わせて正確に録画を行うことができる。また、ＯＳやＢＩＯＳ的に、ＲＴＣ１１４で復帰（Ｒｅｓｕｍｅ）したことを通知することが容易となる。従って、ユーザが意図した時刻に意図した動作が可能である。
【００６３】
図６〜図１１に示す例によれば、チップセット１０４の電源を遮断したとしても、ユーザがＲＴＣ
ｗａｋｅを意図すれば、正しくＲＴＣ１１４を用いたＷａｋｅ動作が可能となる。これにより、ＲＴＣ１１４によるＲＴＣ  ｗａｋｅをサポートできるとともに、ＥＣ１０６などＲＴＣ１１４以外のデバイスを用いてＲＴＣ  ｗａｋｅをエミュレートする必要がないため、システムの起動時刻の精度をより高めることができる。
【００６４】
そして、外部デバイスを用いたエミュレートに比べて、ＲＴＣ
ｗａｋｅにより起動が行われるため、ＯＳから見た時の起動時刻の誤差を抑止することができる。また、ＯＳが、ＲＴＣ ｗａｋｅしたことを容易に検知することが可能である。
【００６５】
また、通常のＲＴＣ ｗａｋｅの場合、ＲＴＣ１１４、チップセット１０４、ＥＣ１０６に電源を投入しておくことが前提となる。本実施形態では、ＲＴＣ
ｗａｋｅの直前にＥＣ１０６が起動するため、その直前まではチップセット１０４、ＲＴＣ１１４、ＥＣ１０６の電源を切っておくことができる。従って、消費電力を大幅に低減することが可能となる。
【００６６】
３．２．ＥＣによるデバイスの電源のオン／オフの管理について
次に、図１２〜図１４に基づいて、ＥＣ１０６によるデバイスの電源のオン／オフの管理について説明する。ＥＣ１０６によるデバイスの電源管理が必要な場合、ＥＣ１０６の電源をオン（ＯＮ）にしておく必要があるが、これによって消費電力が増加してしまう。このため、以下に説明する例では、アラームタイマー（Ａｌａｒｍ
Ｔｉｍｅｒ）１０７を利用し、デバイスの電源管理の実動作（監視・電源のＯＮ／ＯＦＦ等）が必要になる瞬間のみＥＣ１０６の電源をオン（ＯＮ）にする。それ以外の期間では、ＥＣ１０６の電源をＯＦＦにする。これにより、消費電力の低減を実現することができる。図１２〜図１４においても、ドットを付した領域は、電源がオフ（ＯＦＦ）の状態を示しており、ドットを付していない領域は、電源がオン（ＯＮ）の状態を示している。
【００６７】
ここでは、メインのメモリ１０９の電源をＥＣ１０６が管理しているとする。図１２に示すように、ＥＣ１０６は、自身のアラームタイマー（Ａｌａｒｍ
Ｔｉｍｅｒ）にメモリ１０９の電源をオフ（ＯＦＦ）にする日時を設定する。この時、次回起動時にメモリ電源をオフ（ＯＦＦ）することを記録する。
【００６８】
そして、図１２に示すように、メモリ１０９の電源がオン（ＯＮ）の状態でプロセッサ１０２、ＥＣ１０６の電源をＯＦＦにする。
【００６９】
その後、図１３に示すように、ＥＣ１０６、プロセッサ１０２の電源がオフ（ＯＦＦ）になっている間に、ＥＣ１０６のアラームタイマー（Ａｌａｒｍ
Ｔｉｍｅｒ）がエキスパイアし、ＥＣ１０６の電源がオン（ＯＮ）となる。
【００７０】
そして、図１４に示すように、ＥＣ１０６がメインメモリの電源管理動作を実施する。ＥＣ１０６には、自身のアラームタイマー（Ａｌａｒｍ
Ｔｉｍｅｒ）にメモリ１０９の電源をオフ（ＯＦＦ）にする日時が設定されているため、ＥＣ１０６は、自身の電源がオンとされた後、メインメモリ１０９の電源をオフ（ＯＦＦ）する。
【００７１】
図１２〜図１４に示す例によれば、デバイスの電源管理のためにＥＣ１０６の電源を常時オン（ＯＮ）にすることが不要となる。これにより、ＥＣ１０６により何らかデバイスの電源の管理が必要なシチュエーションにおいて、ＥＣ１０６の電源を切ることが可能となる。
【００７２】
３．３．第２の実施形態の構成例
次に、上述した第２の実施形態の動作を行うための具体的な構成について説明する。図１５は、プロセッサ１０２、チップセット（ＰＣＨ）１０４、ＥＣ１０６、メモリ１０９の構成を示す模式図である。チップセット１０４とＲＴＣ１１４のそれぞれには、電源が供給されている。チップセット１０４にはＰＣＨ  Ｐｏｗｅｒが供給され、ＲＴＣ１１４にはＲＴＣ  Ｐｏｗｅｒが供給されている。また、ＥＣ１０６とタイマー１０７のそれぞれには、電源が供給されている。ＥＣ１０６にはＥＣ  Ｐｏｗｅｒが供給され、タイマー１０７にはＢＡＴ  Ｐｏｗｅｒが供給されている。また、プロセッサ１０２には、電源（ＣＰＵ  Ｐｏｗｅｒ）が供給されている。
【００７３】
図１５に示すように、タイマー１０７、ＲＴＣ１１４、チップセット１０４、プロセッサ１０２、ＥＣ１０６、メモリ１０９のそれぞれの電源を分離し、それぞれを制御可能な状態にする。そして、ＲＴＣ１１４とタイマー１０７以外の電源については、ＥＣ１０６にてそのＯＮ／ＯＦＦ制御が可能な構成とする。図１５に示す構成によれば、ＥＣ１０６が起動していない状態においても、タイマー１０７を動作させることができる。また、チップセット１０４が起動していない状態においても、ＲＴＣ１１４を動作させることができる。
【００７４】
図１６は、図１５の構成の変形例を示す模式図である。図１５に示す例では、タイマー１０７はＥＣ１０６に内蔵されているものとしたが、図１６に示すように、外部にタイマー１０７と同様の機能を有する専用回路１４０を設けても良い。この場合、専用回路１４０がＥＣ１０６に対して起動リクエスト（Ｗａｋｅ  ＵＰ  Ｒｅｑｕｅｓｔ）の割り込み信号を発生させる。
【００７５】
また、図１７は、図１６の専用回路１４０の代わりにハードウェア（ＨＷ）スイッチ１５０を設けた例を示している。このように、タイマー１０７以外のトリガによってＥＣ１０６を起動することも可能である。図１７に示すように、ＨＷスイッチ１５０によって起動要求の割り込み信号が発生することで、ＥＣ１０６の電源が投入され、デバイスの電源管理を実施することが可能となる。
【００７６】
また、図１８は、図１５において、メモリ１０９の代わりに他のデバイス（Ａｎｙ  Ｄｅｖｉｃｅｓ）１６０を設けた例を示す模式図である。メモリ１０９（ＤＲＡＭ）以外にも、ＥＣ１０６において電源制御が可能なデバイスであれば、同様の構成で電源制御が可能である。
【００７７】
また、図１９は、電源制御以外への応用に適用した構成を示す模式図である。図１９において、デバイス１７０は、ＥＣ１０６によって電源制御以外の制御が行われる。他のデバイス１７０の制御を定期的に行いたい場合などに、デバイス１７０を制御しない間はＥＣ１０６の電源をオフ（ＯＦＦ）にすることが可能である。このように、電源制御以外の他の制御を行う場合においても、必要な場面のみＥＣ１０６の電源を投入することで、消費電力を低減することが可能である。
【００７８】
４．第３の実施形態
４．１．ＵＳＢ充電の概要
次に、本開示の第３の実施形態について説明する。第３の実施形態は、情報処理装置１００と他の装置を接続して、他の装置を充電する技術に関する。本実施形態では、特にＵＳＢ充電（ＵＳＢ Ｃｈａｒｇｅ）を例に挙げて説明する。
【００７９】
ＵＳＢ Ｃｈａｒｇｅとは、ＵＳＢ−ＩＦ策定のＢＵＳ Ｐｏｗｅｒを利用した急速充電規格であるＢａｔｔｅｒｙ  Ｃｈａｒｇｉｎｇ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（以下、ＢＣＳという）にて規定されている。ＢＣＳの最新のバージョンは、Ｖｅｒ.：Ｒｅｖｉｓｉｏｎ １．２(２０１０／１２／７ ｒｅｌｅａｓｅ)である。従来のＵＳＢ ＢＵＳ ｐｏｗｅｒは、５［Ｖ］±５％の電圧で５００［ｍＡ］(９００［ｍＡ］ ｆｏｒ ＵＳＢ ３．０)までしか電力を供給できなかったが、ＢＣＳ対応の場合は５［Ｖ］±５％の電圧で最大１．５［Ａ］まで電力供給が可能である。
【００８０】
ＵＳＢ Ｃｈａｒｇｅのポート（Ｐｏｒｔ）の定義について説明すると、ＢＣＳでは以下の３種類のポートを定義している。
１．ＳＤＰ：Ｓｔａｎｄａｒｄ  Ｄｏｗｎｓｔｒｅａｍ  Ｐｏｒｔ
通常のＵＳＢポートであり、他のデバイスとの通信が可能であり、ＶＢＵＳ ５００［ｍＡ］まで供給可能とされる。
２．ＤＣＰ:Ｄｅｄｉｃａｔｅｄ  Ｃｈａｒｇｉｎｇ  Ｐｏｒｔ
ＶＢＵＳからＭＡＸ  １．５［Ａ］を供給可能である。通信は不可である。
３．ＣＤＰ:Ｃｈａｒｇｉｎｇ  Ｄｏｗｎｓｔｒｅａｍ  Ｐｏｒｔ
ＶＢＵＳからＭＡＸ  １．５［Ａ］を供給可能であり、且つ通信可能である。
【００８１】
基本的にＳ０中のみ 接続したデバイスの充電が可能であったが、各ステートのポート設定を変更することにより、Ｓ３以下のステートでもデバイスの充電が可能となる。ここで、情報処理装置１００に接続されてＵＳＢ充電されるデバイスは、例えばスマートフォン、デジタルカメラ等の機器である。なお、一部のデバイスでは、Ｓ３中も自動的にＶＢＵＳを引くものがある。
【００８２】
さらに、サスペンド状態の場合は２．５［ｍＡ］までしか電力供給ができなかったが、ＤＣＰ／ＣＤＰでは１００［ｍＡ］まで供給が可能であり、充電される機器の電池が完全に空の状態であっても急速に復帰可能である。
【００８３】
図２０は、本実施形態の情報処理装置１００における各ステートの実装仕様の例を示す模式図である。ここでは、デフォルト（Ｄｅｆａｕｌｔ）と２種類のＣｈａｒｇｅ
ｍｏｄｅを想定する。Ｄｅｆａｕｌｔは、出荷時の設定であり、通常のＵＳＢ Ｐｏｒｔと同じ設定であり、Ｓ０とＳ３がＳＤＰとなる。Ｃｈａｒｇｅ ｍｏｄｅの場合は、デフォルトに対してＳ０をＣＤＰとし、Ｓ０以外のステートをＤＣＰとしている。従って、全てのステートで急速充電が可能である。
【００８４】
以上のように、ＤＣＰとＣＤＰでは、情報処理装置１００に接続された機器に対して急速充電を行うことができる。一方、急速充電中は、消費電力が増大するため、情報処理装置１００にＡＣ電源に接続していない場合、バッテリー１２２の残量が空になる可能性がある。特に、ハイバネーションによりデータをストレージデバイス１１６に書き込んでいる最中にバッテリー１２２の残量が空になると、データが失われてしまう可能性がある。
【００８５】
このため、本実施形態では、所定条件下ではＵＳＢチャージを一時停止することにより、データロスト（Ｄａｔａ Ｌｏｓｔ）の発生を抑止する。
【００８６】
４．２．前提となるデータロスト対策について
最初に、前提となるデータロスト対策について説明する。情報処理装置１００にＡＣ電源が接続されている場合は、データロストを生じることなく、接続されているデバイスを確実に充電することができる。一方、情報処理装置１００にＡＣ電源が接続されていない状態（ＤＣ駆動時）でＵＳＢ
Ｃｈａｒｇｅを行うと、バッテリー１２２の残量を使い切り、情報処理装置１００の画面に表示されている情報、メモリ１０９に保存されている情報のデータが失われる可能性がある。
【００８７】
このため、前提となるデータロスト対策として、ローバッテリーハイバネーション（Ｌｏｗ Ｂａｔｔｅｒｙ Ｈｉｂｅｒｎａｔｉｏｎ：以下、ＬＢＨとも称する）とタイマーハイバネーション（Ｔｉｍｅｒ Ｈｉｂｅｒｎａｔｉｏｎ：以下、Ｔｉｍｅｒ
Ｈｉｂとも称する）について説明する。
【００８８】
＜ローバッテリーハイバネーション（ＬＢＨ）＞
ＬＢＨでは、Ｓ０またはＳ３時に、バッテリー１２２の残量がある閾値を下回った場合に、イメージをストレージデバイス１１６に書き込み、Ｓ４に遷移する。Ｓ３時はＳ０に起動してストレージデバイス１１６への書き込みを行う。図２１は、Ｓ３時とＳ０時の放電特性を示す模式図である。また、図２２は、ＬＢＨのしきい値を示す特性図である。図２１に示すように、Ｓ３時の放電特性とＳ０時の放電特性は異なるため、これを考慮してＳ３時とＳ０時で異なるしきい値を設定する。この際、バッテリーの特性上、（Ｓ０でのＬＢＨの閾値）＜（Ｓ３でのＬＢＨの閾値）となるため、ユーザがＳ０からＳ３に入れることができなくなる領域が存在する。例えば、Ｓ０のＬＢＨしきい値をバッテリー残量で５％
、Ｓ３のＬＢＨしきい値を３０％とし、Ｓ０でバッテリー残量が２５％の状態でＳ３に遷移させるとＬＢＨが実行されるため、Ｓ４に遷移する。
【００８９】
ＵＳＢ充電時の消費電力量は通常のＵＳＢ通信に比べて大きく、ＬＢＨでは、Ｈｉｂ  Ｉｍａｇｅの作成途中に、バッテリー１２２が空になってしまう可能性がある。この場合、データのロストが生じる。
【００９０】
＜タイマーハイバネーション＞
図２３は、タイマーハイバネーションを示す特性図であって、縦軸はバッテリー残量を、横軸は時間を示している。タイマーハイバネーションでは、ＤＣ駆動時に、Ｓ３へ遷移した後、１時間経過した場合、Ｓ０に起動（Ｗａｋｅ）してイメージをストレージデバイス１１６に書き込んだ後、Ｓ４に遷移する。
【００９１】
タイマーハイバネーションでは、１時間のタイマー時間中にバッテリー１２２の残量が空になる可能性がある。また、タイマーハイバネーションでは、Ｈｉｂ  Ｉｍａｇｅの作成のために、一旦Ｓ０に起動しなければならない。このため、Ｉｍａｇｅ作成までローバッテリーハイバネーションよりも更に時間がかかり、バッテリーが空になる可能性がより高くなる。
【００９２】
図２４は、ＬＢＨの処理を示すフローチャートである。図２４では、Ｓ０中にＬＢＨが発動する例を示している。ステップＳ１２において、バッテリー残量が５％以下の場合は、ステップＳ１４へ進み、Ｈｉｂ
Ｉｍａｇｅを作成してＳ０からＳ４へ遷移する。上述のようにＵＳＢ Ｃｈａｒｅの消費電力量は大きく、ＵＳＢ充電中はステップＳ１２，Ｓ１４の時でも電力を消費し Ｈｉｂ
Ｉｍａｇｅ 作成途中にバッテリー１１６が空になってしまう可能性がある。
【００９３】
図２５は、Ｔｉｍｅｒ Ｈｉｂの処理を示すフローチャートである。Ｔｉｍｅｒ
Ｈｉｂは、Ｓ３中のみ発動する。ステップＳ２２では、Ｓ０からＳ３へ遷移し、ＲＴＣ１１４のタイマーがスタートする。ステップＳ２４では、タイマーが１時間を超えたか否かを判定し、タイマーが１時間を超えた場合はステップＳ２６でＳ３からＳ０へ遷移する。タイマーが１時間以下の場合はステップＳ２４へ戻る。ステップＳ２８では、Ｈｉｂ
Ｉｍａｇｅを作成し、Ｓ０からＳ４へ遷移する。このように、Ｈｉｂ Ｉｍａｇｅ作成のために、一旦Ｓ０に起動（Ｗａｋｅ）しなければならないため、Ｉｍａｇｅ作成までＬＢＨよりもさらに時間を要し、よりバッテリー１２２が空になり易い。
【００９４】
４．３．本実施形態に係るデータロスト対策について
以上に鑑み、本実施形態に係るデータロスト対策として、ＵＳＢ
Ｃｈａｒｇｅの一時停止機構について説明する。図２６は、一時停止機構を示す特性図であって、縦軸はバッテリー１２２の残容量を、横軸は時間を示している。
【００９５】
一時停止機構では、Ｓ３でのＵＳＢ充電中に、バッテリー残量が例えば３０％となった場合に、ＵＳＢ充電による電源供給を一時停止する（特性１）。電源供給を停止した後、所定時間が経過すると、時刻ｔ２でＴｉｍｅｒ
Ｈｉｂが発動する。
【００９６】
なお、図２６中の特性２は、Ｓ０でＵＳＢ充電を行っていない場合にＳ３へ遷移した後、１時間が経過して時刻ｔ２でＴｉｍｅｒ
Ｈｉｂが発動する場合を示している。
【００９７】
また、特性３は、Ｓ０時でのＵＳＢ充電中にバッテリー１２２の容量が５％以下になった場合を示している。この場合、時刻ｔ１でＬＢＨが発動する。
【００９８】
一時停止条件は、ＤＣ駆動時であり、且つＳ３中であり、且つバッテリー残容量３０％
を下回った時とする。従って、図２６の特性２，３では一時停止は発動しない。
【００９９】
図２７は、一時停止機構を示すフローチャートである。この処理を実現する構成は、ハードウェア（回路）、またはＣＰＵなどの中央演算処理装置とこれを機能させるためのプログラムから構成することができる。先ず、ステップＳ３０では、Ｓ０状態においてＵＳＢチャージが可能とされる。次のステップＳ３２では、ＡＣ駆動であるかＤＣ駆動であるかが判定され、ＡＣ駆動の場合はステップＳ３４へ進み、ＵＳＢ充電が可能な状態でＳ０からＳ３／Ｓ４／Ｓ５へ遷移可能とされる。この場合、Ｓ３／Ｓ４／Ｓ５においてＵＳＢ充電が可能である。
【０１００】
ＤＣ駆動の場合はステップＳ３６へ進み、状態変化を判定する。Ｓ４／Ｓ５へ遷移する場合（ステップＳ３８）は、データロストの可能性がないため、ＵＳＢ充電が可能な状態でＳ０からＳ４／Ｓ５へ遷移する。Ｓ３へ遷移する場合（ステップＳ４０）は、バッテリー残量が３０％を超えているか否かを判定し、バッテリー残量が３０％を超えている場合はステップＳ４０で待機する。一方、バッテリー残量が３０％以下の場合は、ステップＳ４２へ進み、一時停止条件を満たすため、ＵＳＢ充電可能状態からＵＳＢ充電不可状態へ遷移する。これにより、情報処理装置１００に接続された機器へのＵＳＢ充電が停止される。
【０１０１】
その後、ステップＳ４４において、ＡＣ電源に接続されたことが判定されると、ステップＳ４６へ進み、ＵＳＢ充電不可状態からＵＳＢ充電可能状態へ遷移する。
【０１０２】
一方、ステップＳ４４において、ＡＣ電源に接続されていない場合は、以降の処理に遷移し、ＬＢＨの処理（図２４のステップＳ１２〜Ｓ１６）またはＴｉｍｅｒ
Ｈｉｂの処理（図２５のステップＳ２４〜Ｓ２９）を行う。
【０１０３】
ここで、一時停止機構の発動条件としてバッテリー残量３０％（Ｄａｔａ
Ｌｏｓｔが生じないしきい値）を設定した根拠を以下に説明する。この発動条件は、例えば対象となる情報処理装置１００のラインナップが複数機種存在する場合、情報処理装置１００の各機種において、全機種一律の規定値とすることもできる。この場合、機種毎にしきい値を設定する手間を省くことができる。この際、ラインナップ中の高パフォーマンスＰＣから低バッテリー容量のＰＣまでを網羅できるようにしきい値を設定することが好適である。
【０１０４】
先ず、機種のラインナップのうち、バッテリー１２２の容量が低容量であり且つ高パフォーマンスである情報処理装置１００におけるバッテリー１２２の負荷−容量特性（図２９）に基づいて、温度２０℃の環境下で負荷−容量特性からしきい値を算出する。Ｓ３時にＴｉｍｅｒ
ＨｉｂでＳ０が起動（Ｗａｋｅ）するまでに必要とされる電力は、バッテリー１２２の容量の１０％程度である。また、図２８に示すように、ハイバネーションがオン（ＯＮ）となる際の負荷（Ｓ０→Ｓ４遷移時にかかる電力）は、バッテリー容量の１５％程度である。図２８は、異なる複数のＵＳＢ負荷のそれぞれにおいて、ハイバネーションＯＮ時の負荷（ハイバネーション時のバッテリー１２２の容量減少量）を示す模式図である。また、温度特性を考慮したマージンをバッテリー容量の５％に設定する。これにより、１０％＋１５％＋５％の合計でバッテリー容量の３０％程度の残容量をしきい値として設定することが望ましい。
【０１０５】
また、しきい値を[ｍＷｈ]の単位で指定すると、バッテリー容量の少ない機種においては、相対的に高い閾値となってしまう。各機種では、ＰＣのパフォーマンス（負荷電力）に対応できる容量のバッテリーを選択しているため、全機種一律のしきい値とするためには、しきい値の単位を［％］として規定値を決めることが好適である。
【０１０６】
以上のように、本実施形態に係る一時停止機構によれば、ＤＣ駆動時であり、且つＳ３中であり、且つバッテリー残容量が３０％
を下回った場合は、ＵＳＢチャージを一時停止とするため、データのロストが生じてしまうことを確実に抑止できる。
【０１０７】
４．４．ハイブリッドスリープ機能について
次に、他のデータロスト対策として、ハイブリッドスリープ機能についてその概要を説明する。ここでは、ハイブリッドスリープ（Ｈｙｂｒｉｄ  Ｓｌｅｅｐ）またはＢＩＯＳによるハイバネーションでイメージを保存し、Ｓ３ステートでメモリ１０９以外の電源を切ることで、ＤＣ駆動時のバッテリー容量保持を助長する。
【０１０８】
ここで、Ｈｙｂｒｉｄ Ｓｌｅｅｐとは、前述したように、Ｈｉｂ  Ｉｍａｇｅを作成するＳ３ステートのことであり、スタンバイへの遷移と同時にハイバネーションイメージをストレージデバイス２２０上に作成するものである。
【０１０９】
図３０は、ハイブリッドスリープ機能の処理を示すフローチャートである。図３０に示すように、Ｓ０ステートでＡＣ駆動されていない状態において（ステップＳ５０）、Ｓ３への遷移が指示されると（ステップＳ５２）、Ｈｙｂｒｉｄ  Ｓｌｅｅｐに遷移し、Ｈｉｂ
Ｉｍａｇｅを作成する（ステップＳ６０）。
【０１１０】
また、ステップＳ５２において、Ｓ３への遷移が指示されない場合は、ステップＳ５４へ進み、バッテリー残容量が５％を超えているか否かを判定し、バッテリー残容量が５％以下の場合は、Ｓ０からＳ４へ遷移してＨｉｂ
Ｉｍａｇｅを作成する（ステップ５６，Ｓ５８）。
【０１１１】
以上説明したように、ハイブリッドスリープ機能によれば、Ｓ３に入るタイミングでＨｉｂ Ｉｍａｇｅを作成するため、データロストが生じることを確実に抑止することができる。
【０１１２】
４．５．バッテリースリープディスエーブル（Ｂａｔｔ Ｓｌｅｅｐ Ｄｉｓａｂｌｅ）について
バッテリースリープ（Ｂａｔｔ Ｓｌｅｅｐ）がイネーブル（Ｅｎａｂｌｅ）状態であり、且つバッテリー充放電電流が一定の電流値以下、且つＥＣ１０６と通信していない、この状態が一定時間続いた時にバッテリー１２２はスリープモードに入る。この場合、電流量を検知しているバッテリー１２２のＣＰＵ１２３がスリープ状態となる。解除条件は、ＥＣ１０６がプロセッサを起動した時である。
【０１１３】
ＵＳＢ充電中にバッテリースリープ（Ｂａｔｔ ｓｌｅｅｐ）をディスエーブル（Ｄｉｓａｂｌｅ）することで、バッテリーの故障を防ぐ対策をとる。Ｂａｔｔ
ｓｌｅｅｐがＥｎａｂｌｅのままであると、Ｂａｔｔ Ｓｌｅｅｐに入った後にＵＳＢ充電を始めた場合、ＣＰＵ１２３が起動していな状態であるので電流量を検知できず、ＦＥＴが発熱してしまう。
【０１１４】
図３１は、バッテリースリープディスエーブルの処理を示すフローチャートである。図３１では、バッテリースリープディスエーブルの対策を施した場合（ステップＳ９６以降）と、対策を施していない場合（ステップＳ１０６以降）の双方を示している。
【０１１５】
バッテリースリープディスエーブルは、Ｓ３でメモリ以外の電源を切った場合（ステップＳ９２）に、ＡＣ電源への接続の有無に関わらず設定される（ステップＳ９６）。ステップＳ１００ではバッテリーがスリープ状態とならず、バッテリー１２２のＣＰＵ１２３も起動した状態となる。従って、ＵＳＢ充電を行った場合（ステップＳ１０２）に、異常発熱の発生が確実に抑えられる（ステップＳ１０４）。ディスエーブルの条件は、ＵＳＢ充電のオン時は、１ｓｔ／２ｎｄバッテリーともにディスエーブルとする。ＵＳＢ充電のオフは、２ｎｄバッテリーのみディスエーブルとし、１ｓｔバッテリーはイネーブルとする。
【０１１６】
一方、バッテリースリープディスエーブルの対策をとらない場合は、ステップＳ１０８において、バッテリー１２２がスリープ状態となり、ＣＰＵ１２３が起動していない状態となる。このため、ステップＳ１１０でＵＳＢ充電を行った場合に、異常発熱が発生してしまう。
【０１１７】
４．６．第３の実施形態の処理について
次に、図３２〜図３７のブロック図に基づいて、第３の実施形態の処理について説明する。図３２〜図３７は、情報処理装置１００に対して、ＵＳＢ充電がされる被充電装置３００が接続された状態を示している。被充電装置３００は、チップセット３０２、バッテリー３０４、パワースイッチ３０６、ＵＳＢ接続部３０８を有して構成されている。また、情報処理装置１００の構成は、図２と同様であるが、図２では図示していないバッテリー１２２のＣＰＵ１２３と、ＵＳＢ充電のためのパワースイッチ（Ｐｏｗｅｒ
ＳＷ）１３０と、ＵＳＢ接続部１３２を示している。図３２〜図３７において、ドットを付した構成要素には電源が投入されていないことを示している。
【０１１８】
図３２は、Ｓ０でＵＳＢチャージがオフ（ＯＦＦ）の状態を示している。この状態では、プロセッサ１０２、チップセット１０４を含め、全ての構成要素の電源がオン（ＯＮ）となっている。表示画面上のイメージ（Ｉｍａｇｅ）はプロセッサ１０２上に存在し、ＥＣ１０６はバッテリー１２２の残量を監視（モニタ）している。ＥＣ１０６がチャージのためのパワースイッチ１３０のポートモード（Ｐｏｒｔ ｍｏｄｅ）を制御する。図３２では、ポートモードはＳＤＰであり、被充電装置３００に０．５［Ａ］まで供給が可能である。
【０１１９】
図３３は、Ｓ０からＳ３へ状態が遷移し、ＵＳＢ Ｃｈａｒｇｅがオフ（ＯＦＦ）の状態を示している。この状態では、プロセッサ１０２の電源が切られ、Ｉｍａｇｅは
メモリ１０９に書き込まれる。この状態でバッテリー１２２の残量低下により電源が落ちると、メモリ１０９に電源が供給されないため、Ｉｍａｇｅは消失してしまう。ＥＣ１０６はバッテリー１２２の残量を監視している。ポートモードはＳＤＰの状態が維持されており、デバイスに対して０．５［Ａ］まで供給が可能である。
【０１２０】
図３４は、Ｓ０からＳ４／Ｓ５へ遷移し、ＵＳＢ充電がオフ（ＯＦＦ）の状態を示している。この状態では、ほぼ全ての構成要素の電源が切られた状態となる。Ｓ４時は、ＩｍａｇｅをＨＤＤ１１６に保存する。この場合、電源が切られても、ＩｍａｇｅはＨＤＤ１１６に保存されているため、Ｉｍａｇｅが消失してしまうことはない。ＥＣ１０６は、電源が切られているため、バッテリー１２２の残量を監視することはできない。また、バッテリー１２２のＣＰＵ１２３はスリープ状態となり、ポートモードはオフ（ＯＦＦ）となる。従って、被充電装置３００は充電されない。
【０１２１】
図３５は、Ｓ０でＵＳＢ Ｃｈａｒｇｅがオン（ＯＮ）の状態を示している。この状態では、プロセッサ１０２、チップセット１０４を含め、全ての構成要素の電源がオン（ＯＮ）となっている。Ｉｍａｇｅはプロセッサ１０２上に存在し、ＥＣ１０６はバッテリー１２２の残量を監視（モニタ）している。ＥＣ１０６が チャージのためのパワースイッチ（Ｐｏｗｅｒ ＳＷ）１３０のポートモード（Ｐｏｒｔ ｍｏｄｅ）を制御する。ポートモードはＣＤＰであり、充電される被充電装置３００に１．５［Ａ］まで供給が可能である。なお、被充電装置３００がＣＤＰ対応していない場合は、０．５［Ａ］までの供給となる。
【０１２２】
図３６は、Ｓ０からＳ３へ状態が遷移し、ＵＳＢ  Ｃｈａｒｇｅが（ＯＮ）の状態を示している。この状態では、プロセッサ１０２の電源が切られ、Ｉｍａｇｅは
メモリ１０９に書き込まれる。この状態でバッテリー１２２の残量低下により電源が落ちるとＩｍａｇｅは消失してしまう。ＥＣ１０６はバッテリー１２２の残量を監視している。ポートモードはＤＣＰとなり、デバイスに対して１．５［Ａ］まで供給が可能である。
【０１２３】
図３７は、Ｓ０からＳ４／Ｓ５へ遷移し、ＵＳＢ Ｃｈａｒｇｅがオン（ＯＮ）の状態を示している。ＵＳＢ  Ｃｈａｒｇｅがオン（ＯＮ）の状態では、ＥＣ１０６の電源は維持される。Ｓ４時はＩｍａｇｅをＨＤＤ１１６に保存する。この場合、電源が切られても、ＩｍａｇｅはＨＤＤ１１６に保存されているため、Ｉｍａｇｅが消失してしまうことはない。ＥＣ１０６は、バッテリー１２２の残量を監視している。バッテリー１２２のＣＰＵ１２３はスリープ状態とならず、ポートモードはＤＣＰとなる。
【０１２４】
以上説明したように第３の実施形態によれば、バッテリー１２２の容量低下によりデータが失われてしまうことを確実に抑止することが可能となる。
【０１２５】
５．第４の実施形態
次に、本開示の第４の実施形態について説明する。第４の実施形態は、ＢＩＯＳハイバネーション時にユーザの利便性を高めるものである。
【０１２６】
＜ハイバネーションのキャンセルについて＞
上述したように、ハイバネーションでは、システムの電源を切る直前にメモリ１０９の内容をＨＤＤなどのストレージデバイス１１６に保存（待避）する。この際、システムメモリ１０９の使用量やストレージデバイス１１６の性能によって、ＢＩＯＳハイバネーションデータの書き出しに時間がかかる場合があり、処理を中断することができない。データの書き出しには１分以上かかる場合もある。
【０１２７】
このため、本実施形態では、ＢＩＯＳで電源ボタン１２４の割り込みハンドラーを用意し、電源ボタン１２４が押された場合はハイバネーションをキャンセルする。ハイバネーションがキャンセルされた場合は、ハイバネーションデータの書き出しを中断し、システムをＳ０に復帰させる。ＥＣ１０６は、電源ボタン１２４が押されたことを検出し、システムに割り込みを上げる。
【０１２８】
キャンセルは、ＢＩＯＳハイバネーションデータ書き出し中に電源ボタンを押下されたら、書き出しを中止してすぐ復帰する機能である。この機能により、ＢＩＯＳハイバネーションデータ書き出し中に復帰させたくなったときに、ＢＩＯＳハイバネーションデータ書き出しが完了するまで待つ必要がなくなり、ユーザの使い勝手が向上する。
【０１２９】
また、後述するが、ＢＩＯＳハイバネーションデータ書き出し中はアクセスランプが消灯されるため、復帰させたいユーザは自然と電源ボタン１２４に誘導され、意識させることなくキャンセル機能を使用することができる。
【０１３０】
＜ハイバネーション中のランプ消灯＞
また、ＢＩＯＳハイバネーションデータ書き出し中は、システムの状態はＳ０であり、電源ＬＥＤ（パワーランプ）１２６やアクセスＬＥＤ（ディスクアクセスランプ）１１８が点灯するため、ユーザはこれらの点灯が消灯するまで待つ必要がある。この間、ユーザが、点灯によってＨｙｂｒｉｄ  Ｓｌｅｅｐと誤認したり、何らかのシステムエラーでメモリダンプしているかのように誤認することが想定される。
【０１３１】
このため、本実施形態では、ＢＩＯＳ１０３とＥＣ１０６間で電源ＬＥＤ１２６やアクセスＬＥＤ１１８の点灯状態をオーバーライド制御するためのコマンドＩ／Ｆを用意する。ＢＩＯＳ１０３は、ＢＩＯＳハイバネーションデータ書き出しの前にランプを消灯するようＥＣ１０６に指示する。
【０１３２】
このように、本実施形態では、ＢＩＯＳハイバネーションデータ書き出しにかかる時間をユーザに意識させないため、ランプを消灯する。これにより、ＢＩＯＳハイバネーションデータ書き出しが多少長くても、ユーザはシステムがフリーズしているとは誤認しなくなる。また、ユーザにキャンセル機能を意識させずに、電源ボタン１２４を押すことでＳ０に復帰できる状態だとユーザに認識させることができる。すなわち、電源ＬＥＤ１２６が消えているとオフ状態に見えるので、ユーザは、電源をオンにしようとして自然と電源ボタン１２４の押下に誘導されることになる。
【０１３３】
＜ハイバネーションデータ書き出し中にフリーズした場合の対応＞
ＢＩＯＳハイバネーションデータ書き出しが開始されると、電源ＬＥＤ１２６、アクセスＬＥＤ１１８が消灯するため、例えばハイバネーションデータ書き出し中にシステムがフリーズした場合は、ユーザがその状態をランプ点灯によって認識することはできない。
【０１３４】
このため、電源ボタン１２４が押されたときにＥＣ１０６がＢＩＯＳによる消灯の指示を無視する機能を実装することで、ランプを意図的に消灯する処理が行われないようにする。フリーズしていればシステムが復帰しないままランプが点灯するため、ユーザに何らかの異常状態を伝えることができる。
【０１３５】
＜処理フローについて＞
図３８は、本実施形態の処理を示すフローチャートである。先ず、ステップＳ１２０では、ＢＩＯＳ１０３がＥＣ１０６にランプの消灯を指示するコマンドを発行する。次に、ステップＳ１２２では、ＥＣ１０６がランプをオーバーライドして消灯する。次に、ステップＳ１２４では、ハイバネーションによりストレージデバイス１１６へ書き出し処理を行う。次に、ステップＳ１２６では、ＥＣ１０６がランプのオーバーライドを停止する。
【０１３６】
図３９は、書き出し処理を示すフローチャートである。先ず、ステップＳ１３０では、ＢＩＯＳ１０３がハイバネーションデータの一部書き出しを行う。次のステップＳ１３２では、電源ボタン１２４が押されたか否かを判定し、電源ボタン１２４が押された場合はステップＳ１３４へ進む。ステップＳ１３４では、ＥＣ１０６がランプのオーバーライドを停止し、次のステップＳ１３６ではシステムを復帰する。
【０１３７】
ステップＳ１３２で電源ボタン１２４が押されなかった場合は、ステップＳ１３８へ進み、全データの書き出しが完了したか否かを判定し、書き出しが完了した場合は処理を終了する（ＲＥＴＵＲＮ）。書き出しが完了していない場合は、ステップＳ１３０へ戻る。
【０１３８】
以上説明したように第４の実施形態によれば、電源ボタン１２４が押された場合はハイバネーションがキャンセルされるため、ユーザの使い勝手を向上することができる。また、ＢＩＯＳハイバネーションデータ書き出しの前にランプを消灯するようにしたため、ＢＩＯＳハイバネーションデータ書き出しが多少長くても、ユーザはシステムがフリーズしているとは誤認しなくなる。また、ユーザは、電源ボタン１２４でキャンセルして、Ｓ０に復帰できる状態だと認識できる。
【０１３９】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１４０】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）システムを制御するプロセッサと、
システムへの電力供給の制御を実行し、前記プロセッサの電源がオフとされたスタンバイ時に電源がオフとされる電源制御部と、
スタンバイ時に情報を記憶するメモリと、
スタンバイ時に前記メモリへの電力供給を実行する電力供給部と、
を備える、情報処理装置。
（２）前記電力供給部は、ＧＰＩＯエキスパンダから構成される、前記（１）に記載の情報処理装置。
（３）前記電源供給部は、ラッチ回路から構成される、前記（１）に記載の情報処理装置。
（４）前記電源制御部は、第１の電源系統で動作する領域と、第２の電源系統で動作する領域とを含み、スタンバイ時に前記第２の電源系統で動作する領域がオフとされ、
前記電力供給部は、スタンバイ時に前記第１の電源系統で動作する、前記（１）に記載の情報処理装置。
（５）システムへの電力供給の制御を実行する電源制御部の電源を、システムを制御するプロセッサの電源がオフとされたスタンバイ時にオフとすることと、
スタンバイ時に、前記電源制御部とは別に設けられた電力供給部が、情報を記憶するメモリへの電力供給を実行すること、
を備える、情報処理の制御方法。
（６）システムへの電力供給の制御を実行する電源制御部の電源を、システムを制御するプロセッサの電源がオフとされたスタンバイ時にオフとする手段、
スタンバイ時に、前記電源制御部とは別に設けられた電力供給部が、情報を記憶するメモリへの電力供給を実行する手段、
としてコンピュータを機能させるためのプログラム。
【符号の説明】
【０１４１】
１００    情報処理装置
１０２    プロセッサ
１０６    ＥＣ
１０９    メモリ
１１０    ＧＰＩＯ  Ｅｘｐａｎｄｅｒ
１３０    ラッチ回路
【図１】
0005915733.tif 000002
【図２】
0005915733.tif 000003
【図３】
0005915733.tif 000004
【図４】
0005915733.tif 000005
【図５】
0005915733.tif 000006
【図６】
0005915733.tif 000007
【図７】
0005915733.tif 000008
【図８】
0005915733.tif 000009
【図９】
0005915733.tif 000010
【図１０】
0005915733.tif 000011
【図１１】
0005915733.tif 000012
【図１２】
0005915733.tif 000013
【図１３】
0005915733.tif 000014
【図１４】
0005915733.tif 000015
【図１５】
0005915733.tif 000016
【図１６】
0005915733.tif 000017
【図１７】
0005915733.tif 000018
【図１８】
0005915733.tif 000019
【図１９】
0005915733.tif 000020
【図２０】
0005915733.tif 000021
【図２１】
0005915733.tif 000022
【図２２】
0005915733.tif 000023
【図２３】
0005915733.tif 000024
【図２４】
0005915733.tif 000025
【図２５】
0005915733.tif 000026
【図２６】
0005915733.tif 000027
【図２７】
0005915733.tif 000028
【図２８】
0005915733.tif 000029
【図２９】
0005915733.tif 000030
【図３０】
0005915733.tif 000031
【図３１】
0005915733.tif 000032
【図３２】
0005915733.tif 000033
【図３３】
0005915733.tif 000034
【図３４】
0005915733.tif 000035
【図３５】
0005915733.tif 000036
【図３６】
0005915733.tif 000037
【図３７】
0005915733.tif 000038
【図３８】
0005915733.tif 000039
【図３９】
0005915733.tif 000040