(57)【要約】【課題】ＣＰＵが含まれるシステムにおいて、省電力化を図る。【解決手段】電力制御装置１００は電力消費モードを通常モードと省電力モードとの間で切替えることが可能である。Ｈ／Ｗ装置への電力供給開始後の初期化処理時及び電力供給停止前の終了処理時の少なくともいずれかにおいて、Ｈ／Ｗ装置に対する設定処理の実行を指示する設定処理指示をＣＰＵ２００から受信するまでは、電力制御装置１００は省電力モードを維持する。設定処理指示を受信した後は、電力制御装置１００は、通常モードに移行し、ＣＰＵ２００に代わって、Ｈ／Ｗ装置の初期化処理時の設定処理及び終了処理時の設定処理の少なくともいずれかを実行し、設定処理の実行が完了すると、省電力モードに移行する。【選択図】図１
2015031967.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ装置と、前記プロセッサ装置により制御されるハードウェア装置とに接続され、電力消費モードを通常モードと省電力モードとの間で切替えることが可能な設定処理実行装置であって、
前記ハードウェア装置への電力供給開始後の初期化処理時及び電力供給停止前の終了処理時の少なくともいずれかにおいて、前記ハードウェア装置に対する設定処理の実行を指示する設定処理指示を前記プロセッサ装置から受信する指示受信部と、
前記指示受信部により前記設定処理指示が受信された場合に、前記プロセッサ装置に代わって、前記ハードウェア装置の初期化処理時の設定処理及び終了処理時の設定処理の少なくともいずれかを実行する設定処理実行部とを有し、
前記指示受信部により前記設定処理指示が受信されるまでは省電力モードを維持し、前記指示受信部により前記設定処理指示が受信された後は通常モードに移行し、前記設定処理実行部により設定処理の実行が完了すると省電力モードに移行することを特徴とする設定処理実行装置。
【請求項２】
前記設定処理実行装置は、
電力消費モードを通常モードと省電力モードとの間で切替えることが可能なプロセッサ装置に接続され、
前記設定処理実行部が前記プロセッサ装置に代わって、前記ハードウェア装置の初期化処理時の設定処理及び終了処理時の設定処理の少なくともいずれかを実行することで、前記ハードウェア装置の初期化処理時及び終了処理時の少なくともいずれかにおいて、前記プロセッサ装置を通常モードから省電力モードに移行させる又は前記プロセッサ装置を省電力モードのまま維持させることを特徴とする請求項１に記載の設定処理実行装置。
【請求項３】
前記設定処理実行装置は、更に、
前記設定処理実行部による設定処理の実行が完了したことを通知する設定処理実行完了通知を前記プロセッサ装置に送信する通知送信部を有することを特徴とする請求項１又は２に記載の設定処理実行装置。
【請求項４】
前記設定処理実行装置は、
電力消費モードを切替えることが可能なハードウェア装置に接続され、
前記指示受信部は、
前記ハードウェア装置の電力消費モードの切替え時に、前記ハードウェア装置に対する設定処理の実行を指示する設定処理指示を前記プロセッサ装置から受信し、
前記設定処理実行部は、
前記指示受信部により前記設定処理指示が受信された場合に、前記プロセッサ装置に代わって、前記ハードウェア装置の電力消費モードの切替え時の設定処理を実行することを特徴とする請求項１〜３のいずれかに記載の設定処理実行装置。
【請求項５】
前記設定処理実行装置は、
前記プロセッサ装置に接続された複数のハードウェア装置に接続され、
ハードウェア装置ごとに、設定処理実行部を有し、
各設定処理実行部は、
電力消費モードを通常モードと省電力モードとの間で切替えることが可能であり、対応するハードウェア装置に対する設定処理指示が前記指示受信部により受信されるまでは省電力モードを維持し、対応するハードウェア装置に対する設定処理指示が前記指示受信部により受信された後は通常モードに移行し、前記プロセッサ装置に代わって、対応するハードウェア装置に対する設定処理を実行し、設定処理の実行が完了した際に省電力モードに移行することを特徴とする請求項１〜４のいずれかに記載の設定処理実行装置。
【請求項６】
前記設定処理実行装置は、
前記プロセッサ装置に接続された複数のハードウェア装置に接続され、
ハードウェア装置ごと、設定処理の種類ごとに、設定処理実行部を有し、
各設定処理実行部は、
電力消費モードを通常モードと省電力モードとの間で切替えることが可能であり、対応するハードウェア装置の対応する設定処理に対する設定処理指示が前記指示受信部により受信されるまでは省電力モードを維持し、対応するハードウェア装置の対応する設定処理に対する設定処理指示が前記指示受信部により受信された後は通常モードに移行し、前記プロセッサ装置に代わって、対応するハードウェア装置の対応する設定処理を実行し、設定処理の実行が完了した際に省電力モードに移行することを特徴とする請求項１〜４のいずれかに記載の設定処理実行装置。
【請求項７】
前記設定処理実行装置は、更に、
電力消費モードを通常モードと省電力モードとの間で切替えることが可能であり、前記指示受信部により前記設定処理指示が受信されるまでは省電力モードを維持し、前記指示受信部により前記設定処理指示が受信された後は通常モードに移行し、前記ハードウェア装置に対する設定処理を実行するための複数のイベントを生成し、前記複数のイベントの実行順序のスケジューリングを行い、スケジューリングが完了した後は省電力モードに移行するスケジューリング部を有し、
前記設定処理実行部は、
前記スケジューリング部によるイベントのスケジューリングに従って、前記ハードウェア装置に対する設定処理を実行することを特徴とする請求項１〜６のいずれかに記載の設定処理実行装置。
【請求項８】
前記設定処理実行装置は、
前記プロセッサ装置に接続された複数のハードウェア装置に接続され、
ハードウェア装置ごとに、設定処理実行部を有し、
前記スケジューリング部は、
２つ以上の設定処理実行部が設定処理を実行する２つ以上の設定処理指示が前記指示受信部により同時期に入力された場合に、前記２つ以上の設定処理実行部における設定処理の実行が同時期に完了するようにイベントの実行順序のスケジューリングを行うことを特徴とする請求項７に記載の設定処理実行装置。
【請求項９】
前記設定処理実行装置は、
前記プロセッサ装置に接続された複数のハードウェア装置に接続され、
ハードウェア装置ごと、設定処理の種類ごとに、設定処理実行部を有し、
前記スケジューリング部は、
２つ以上の設定処理実行部が設定処理を実行する２つ以上の設定処理指示が前記指示受信部により同時期に入力された場合に、前記２つ以上の設定処理実行部における設定処理の実行が同時期に完了するようにイベントの実行順序のスケジューリングを行うことを特徴とする請求項７に記載の設定処理実行装置。
【請求項１０】
前記設定処理実行部は、
前記スケジューリング部により生成されたイベントを入力するイベント入力部と、
前記イベント入力部により入力されたイベントを変換するイベント変換部と、
前記イベント変換部により変換された後のイベントを実行するイベント実行部とを有することを特徴とする請求項７〜９のいずれかに記載の設定処理実行装置。
【請求項１１】
前記設定処理実行装置は、
前記プロセッサ装置を補完するサブプロセッサ装置であることを特徴とする請求項１に記載の設定処理実行装置。
【請求項１２】
前記設定処理実行装置は、
ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）及びＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）のうちの少なくともいずれかであることを特徴とする請求項１に記載の設定処理実行装置。
【請求項１３】
前記プロセッサ装置は、複数のハードウェア装置を制御対象としており、
前記設定処理実行装置は、
前記複数のハードウェア装置のうちのいずれかのハードウェア装置であることを特徴とする請求項１に記載の設定処理実行装置。
【請求項１４】
プロセッサ装置と、前記プロセッサ装置により制御されるハードウェア装置とに接続され、電力消費モードを通常モードと省電力モードとの間で切替えることが可能な設定処理実行装置が行う設定処理実行方法であって、
前記ハードウェア装置への電力供給開始後の初期化処理時及び電力供給停止前の終了処理時の少なくともいずれかにおいて、前記ハードウェア装置に対する設定処理の実行を指示する設定処理指示を前記プロセッサ装置から受信するまでは、前記設定処理実行装置は省電力モードを維持し、
前記設定処理指示を受信した後は、前記設定処理実行装置は、通常モードに移行し、前記プロセッサ装置に代わって、前記ハードウェア装置の初期化処理時の設定処理及び終了処理時の設定処理の少なくともいずれかを実行し、
設定処理の実行が完了すると、前記設定処理実行装置が、省電力モードに移行することを特徴とする設定処理実行方法。
【請求項１５】
前記プロセッサ装置を補完するサブプロセッサ装置を、請求項１に記載された設定処理実行装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロセッサ装置が含まれるシステムにおいて電力制御を行う技術に関する。
【背景技術】
【０００２】
現在の電力制御では、電力制御以外の処理を行うメインのプロセッサ装置が、当該プロセッサ装置に接続された各種ハードウェア装置（以下、Ｈ／Ｗ装置ともいう）の消費電力が必要最小限になるようモード設定を実行する。
メインのプロセッサ装置は、電力制御処理以外の本来の機能処理を行うため高性能にする必要があり、このため、プロセッサ装置の消費電力が大きい場合が多い。
Ｈ／Ｗ装置の電力制御だけが行われる場合でも、電力制御のためにメインのプロセッサ装置を動作させる必要があり、結果として、消費電力を余分に使用してしまうという課題がある。
【０００３】
また、電力制御のための専用の電力制御部を追加して電力制御を行う構成も開示されているが、下記の課題がある。
【０００４】
例えば、特許文献１の技術では、Ｈ／Ｗ装置の初期化処理、終了処理を、プロセッサ装置が行う必要がある。
このため、Ｈ／Ｗ装置の初期化処理や終了処理が複雑で時間がかかる場合には、実際には待ち処理しかない場合でもプロセッサ装置を動作させる必要があり、結局プロセッサ装置を稼動させている時間が長くなり、初期化処理や終了処理時の消費電力を増大させる。
【０００５】
また、特許文献２の技術では、プロセッサ装置とは別に設けられた電力制御処理を行う電力制御部が開示されているが、Ｈ／Ｗ装置の初期化処理が複雑な場合は、電力制御部の規模を大きくする必要がある。
また、電力制御部は常にＨ／Ｗ装置を監視するため、電力制御部が常に稼動している必要があり、電力制御部の消費電力が大きくなる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１７２０５９号公報
【特許文献２】特開２０００−１１２５８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
以上のように、これまでの技術では、一つの専用の電力制御部やメインのプロセッサ装置にて電力制御を実施していた。
そのため、Ｈ／Ｗ装置の初期化処理や終了処理やモード変更処理が複雑な場合や待ち処理が長くなる場合等には、初期化処理等のためだけに電力制御部が稼動する時間が長くなり、あるいは、初期化処理等のためだけにプロセッサ装置が稼動する時間が長くなり、消費電力を大きくしてしまう。
【０００８】
本発明は、このような課題を解決することを主な目的としており、プロセッサ装置が含まれるシステムにおいて、省電力化を図ることを主な目的とする。
【課題を解決するための手段】
【０００９】
本発明に係る設定処理実行装置は、
プロセッサ装置と、前記プロセッサ装置により制御されるハードウェア装置とに接続され、電力消費モードを通常モードと省電力モードとの間で切替えることが可能な設定処理実行装置であって、
前記ハードウェア装置への電力供給開始後の初期化処理時及び電力供給停止前の終了処理時の少なくともいずれかにおいて、前記ハードウェア装置に対する設定処理の実行を指示する設定処理指示を前記プロセッサ装置から受信する指示受信部と、
前記指示受信部により前記設定処理指示が受信された場合に、前記プロセッサ装置に代わって、前記ハードウェア装置の初期化処理時の設定処理及び終了処理時の設定処理の少なくともいずれかを実行する設定処理実行部とを有し、
前記指示受信部により前記設定処理指示が受信されるまでは省電力モードを維持し、前記指示受信部により前記設定処理指示が受信された後は通常モードに移行し、前記設定処理実行部により設定処理の実行が完了すると省電力モードに移行することを特徴とする。
【発明の効果】
【００１０】
本発明では、ハードウェア装置の初期化処理時又は終了処理時に、設定処理実行装置が省電力モードから通常モードに移行して、プロセッサ装置に代わってハードウェア装置の初期化処理時の設定処理又は終了処理時の設定処理を実行し、設定処理の実行が完了すると省電力モードに移行する。
このため、ハードウェア装置の初期化処理時又は終了処理時に、プロセッサ装置を省電力モードにすることができ、プロセッサ装置の省電力化を図ることができ、また、ハードウェア装置の初期化処理時又は終了処理時のみ設定処理実行装置を通常モードにするので、設定処理実行装置の省電力化も図ることができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係るシステム構成例を示す図。
【図２】実施の形態１に係る電力制御装置の構成例を示す図。
【図３】実施の形態２に係る電力制御装置の構成例を示す図。
【図４】実施の形態３に係る設定処理実行部の構成例を示す図。
【図５】実施の形態１に係る電力制御装置をサブＣＰＵで実現する場合のシステム構成例を示す図。
【図６】実施の形態４に係るシステム構成例を示す図。
【図７】実施の形態１に係るＣＰＵの動作例を示すフローチャート図。
【図８】実施の形態１に係る電力制御装置の動作例を示すフローチャート図。
【発明を実施するための形態】
【００１２】
以下の実施の形態では、システムの消費電力を最小限に保つ必要のある電池駆動の電子回路や携帯端末、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などにおいて低消費電力化制御を行う構成を説明する。
つまり、製品（システム）内に電力制御を行うプロセッサあるいは回路を設け、さらに電力制御の対象となる機能や回路に加え、電力制御を行うプロセッサや回路も含めてシステム全体として消費電力が低い状態をより長く保ち、システム全体としての低消費電力化を図る構成を説明する。
【００１３】
より具体的な構成としては、例えば、電力制御を行う簡易プロセッサ装置かＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）内の一部のブロック内に必要最小限の部分と時間だけ電源ＯＮに設定される機構（以下、電力制御装置という）を設け、この簡易プロセッサ装置又はＦＰＧＡ内の回路がＨ／Ｗ装置に対する処理を行う。  
電力制御装置はメインのプロセッサ装置より小型で消費電力が小さいものとする。
【００１４】
メインのプロセッサ装置は、電力消費モードを通常モードと省電力モードとの間で切替えることができる。
また、電力制御装置も、電力消費モードを通常モードと省電力モードとの間で切替えることができる。
通常モードは、メインのプロセッサ装置又は電力制御装置が通常の機能を発揮するように動作する際の動作モードである。
省電力モードは、例えばスリープモードであり、メインのプロセッサ装置又は電力制御装置が制限された機能で動作する際の動作モードであり、通常モードよりも消費電力が低い。
メインのプロセッサ装置の処理を必要としている場合は、電力制御装置の電源をＯＦＦにして（電力制御装置を省電力モードにして）、メインのプロセッサ装置がＨ／Ｗ装置に対する処理を行う。
メインのプロセッサ装置の処理が必要無い場合はメインのプロセッサ装置の電源をＯＦＦにして（プロセッサ装置を省電力モードにして）、電力制御装置の電源をＯＮにして（電力制御装置を通常モードにして）、電力制御装置がＨ／Ｗに対する処理を行う。
【００１５】
以上の方法により、システム全体の消費電力を削減して、電力制御を行うことができる。
また、待ち時間を伴わない設定処理は直列化して実行する必要があるが、イベント発生や時間を待つ設定処理は同一時間に多重化（並列化）しても問題ないため、多重化（並列化）を行うことにより設定処理の時間を短縮化することが可能になる。
以下の実施の形態では、設定処理の多重化（並列化）により、設定時間を短縮する電力制御装置を説明する。
このようにして設定時間を短縮することにより、消費電力をより小さくすることが可能である。
【００１６】
実施の形態１．
図１は、本実施の形態に係るシステム構成例を示す。
本実施の形態に係るシステムは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２００、電力制御装置１００、複数のハードウェア装置３０１〜３０３がバス４００で接続された構成を有する。
ハードウェア装置３０１〜３０３は、Ｈ／Ｗ装置３０１〜３０３とも表記する。
【００１７】
図１において、ＣＰＵ２００は、メインのプロセッサ装置である。
ＣＰＵ２００は、電力消費モードを省電力モードと通常モードとの間で切り替え可能である。
以下では、ＣＰＵ２００は、Ｈ／Ｗ装置３０１〜３０３への電力供給開始後の初期化処理時、Ｈ／Ｗ装置３０１〜３０３への電力供給停止前の終了処理時、Ｈ／Ｗ装置３０１〜３０３のモード変更処理時に、ＣＰＵ２００が通常モードであれば、省電力モードへ移行し、省電力モードであれば、省電力モードを維持することとする。
なお、Ｈ／Ｗ装置３０１〜３０３のモード変更処理とは、Ｈ／Ｗ装置３０１〜３０３における電力消費モードを切り替える処理である。
【００１８】
電力制御装置１００も、電力消費モードを省電力モードと通常モードとの間で切り替え可能である。
電力制御装置１００は、Ｈ／Ｗ装置３０１〜３０３の初期化処理時、終了処理時、モード変更処理時以外は省電力モードを維持し、初期化処理時、終了処理時、モード変更処理時において省電力モードから通常モードに移行する。
そして、電力制御装置１００は、初期化処理時の設定処理、終了処理時の設定処理、モード変更処理の設定処理の完了後に省電力モードに移行する。
電力制御装置１００は設定処理実行装置の例に相当する。
【００１９】
Ｈ／Ｗ装置３０１〜３０３は、それぞれＣＰＵ２００又は電力制御装置１００の制御の対象となるハードウェアである。
【００２０】
図２は、本実施の形態に係る電力制御装置１００の内部構成例を示す。
【００２１】
図２において、イベント蓄積管理部１０４は、イベントとして、ＣＰＵ２００から設定処理指示を受信する。
設定処理指示は、Ｈ／Ｗ装置３０１〜３０３の初期化処理時の設定処理、終了処理時の設定処理、モード変更処理時の設定処理の実行を指示するメッセージである。
イベント蓄積管理部１０４は、ＣＰＵ２００からの設定処理指示を蓄積する。
また、イベント蓄積管理部１０４は、Ｈ／Ｗ装置３０１〜３０３に対する設定処理の実行が完了した際に、設定処理の実行が完了したことを通知する設定処理実行完了通知をＣＰＵ２００に送信する。
イベント蓄積管理部１０４は、指示受信部及び通知送信部の例である。
【００２２】
イベント処理部１０５は、電力消費モードを通常モードと省電力モードとの間で切替えることが可能であり、設定処理指示が受信されるまでは省電力モードを維持し、設定処理指示が受信された後は通常モードに移行する。
また、後述するようにイベント処理部１０５がプログラムで実現されている場合は、イベント処理部１０５は、Ｈ／Ｗ装置に対する設定処理を実行するための複数のイベントを生成する。
イベント処理部１０５が生成するイベントは、Ｈ／Ｗ装置に対する設定処理の手順を具体化するイベントである。
イベント処理部１０５は、１つの設定処理指示に対して複数のイベントを生成する場合がある。
また、イベント処理部１０５は、複数のイベントの実行順序のスケジューリングを行い、スケジューリングが完了した後に省電力モードに移行する。
イベント間で順序制約がある場合とない場合がある。
順序制約がない場合は、イベント処理部１０５は、イベントの実行順序（イベントの蓄積順序）を変更することができる。
以下では、イベントとは、初期化・終了・モード変更の処理要求、処理完了通知、時間待ちの時間切れ、レジスタ設定処理の実行要求、実行完了通知、割り込み等である。
なお、イベント処理部１０５は、スケジューリング部の例に相当する。
【００２３】
設定処理実行部１０１は、電力消費モードを通常モードと省電力モードとの間で切替えることが可能であり、イベント蓄積管理部１０４により設定処理指示が受信されるまでは省電力モードを維持し、イベント蓄積管理部１０４により設定処理指示が受信された後は通常モードに移行する。
そして、設定処理実行部１０１は、ＣＰＵ２００に代わって、Ｈ／Ｗ装置３０１の初期化処理時の設定処理、終了処理時の設定処理、Ｈ／Ｗ装置３０１のモード変更処理時の設定処理を実行し、設定処理の実行が完了した際に省電力モードに移行する。
【００２４】
設定処理実行部１０２は、Ｈ／Ｗ装置３０２を対象とし、設定処理実行部１０３は、Ｈ／Ｗ装置３０３を対象とする。
設定処理実行部１０２及び設定処理実行部１０３は、それぞれが対象としているＨ／Ｗ装置に対して設定処理実行部１０１と同様の動作を行う。
【００２５】
図７は、本実施の形態に係るＣＰＵ２００の動作例を示す。
また、図８は、本実施の形態に係る電力制御装置１００の動作例を示す。
図７及び図８を参照して、本実施の形態に係る動作例を説明する。
【００２６】
まず、ＣＰＵ２００において、Ｈ／Ｗ装置の初期化処理、終了処理、モード変更処理のいずれかかが必要であるかを判断する（Ｓ７０１）。
これらの処理のうちのいずれかが必要な場合（Ｓ７０１でＹＥＳ）は、ＣＰＵ２００は、電力制御装置１００に設定処理指示を送信する（Ｓ７０２）。
そして、ＣＰＵ２００は、現在通常モードである場合は、省電力モードに移行する（Ｓ７０３）。
また、ＣＰＵ２００が既に省電力モードである場合は、ＣＰＵ２００は省電力モードを維持する。
なお、Ｓ７０２で送信する設定処理指示には、電力制御装置１００で実行させる設定処理の種類として、初期化処理時の設定処理、終了処理時の設定処理、モード変更処理時の設定処理のいずれかが記述され、また、Ｈ／Ｗ装置３０１〜３０３のうちのいずれが設定処理の対象となるかが記述されている。
【００２７】
電力制御装置１００では、ＣＰＵ２００からの設定処理指示をイベント蓄積管理部１０４が受信すると（Ｓ８０１でＹＥＳ）、イベント蓄積管理部１０４はＣＰＵ２００からの設定処理指示をイベント処理部１０５に出力して、イベント処理部１０５を省電力モードから通常モードに移行させる（Ｓ８０２）。
また、イベント処理部１０５は、入力した設定処理指示を解析して設定処理の対象となるＨ／Ｗ装置を特定し、また、設定処理の内容（初期化処理時の設定処理、終了処理時の設定処理、モード変更処理時の設定処理のいずれであるか）を特定する（Ｓ８０３）。
また、並行してイベント処理部１０５は、設定処理を実行するために必要な複数のイベントを発生させ、また、各イベントの順序制約に基づき、イベントの処理順序のスケジューリングを行う。
【００２８】
イベント処理部１０５は、設定処理の対象となるＨ／Ｗ装置に対応する設定処理実行部を省電力モードから通常モードに移行させる（Ｓ８０４）。
なお、以降の説明では、設定処理の対象となるＨ／Ｗ装置がＨ／Ｗ装置３０１であり、このため、設定処理を実行する設定処理実行部が設定処理実行部１０１であるとして説明を進める。
従って、Ｓ８０４では、イベント処理部１０５は設定処理実行部１０１を省電力モードから通常モードに移行させる。
【００２９】
次に、イベント処理部１０５のスケジューリングに従って、設定処理実行部１０１が、Ｈ／Ｗ装置３０１に対して、Ｓ８０３で特定された設定処理（初期化処理時の設定処理、終了処理時の設定処理、モード変更処理時の設定処理のいずれか）を実行する（Ｓ８０５）。
設定処理が完了した場合（Ｓ８０６でＹＥＳ）は、設定処理実行部１０１及びイベント処理部１０５は、それぞれ省電力モードに移行する（Ｓ８０７）。
次に、イベント蓄積管理部１０４がＨ／Ｗ装置３０１に対する設定処理が完了したことを通知する設定処理実行完了通知を生成し、生成した設定処理実行完了通知をＣＰＵ２００に送信する（Ｓ８０８）。
【００３０】
ＣＰＵ２００は、電力制御装置１００からの設定処理実行完了通知を受信すると（Ｓ７０４でＹＥＳ）、必要であれば、通常モードに移行し、また通常モードへの移行が必要でなければ、省電力モードを維持する（Ｓ７０５）。
【００３１】
以上のように、電力制御装置１００がＣＰＵ２００に代わってＨ／Ｗ装置に対する設定処理を実行するので、ＣＰＵ２００を省電力モードにすることができる。
電力制御装置１００は、ＣＰＵ２００よりも消費電力が低いため、ＣＰＵ２００が通常モードにてＨ／Ｗ装置に対する設定処理を行うよりもシステム全体としての消費電力を抑えることができる。
また、電力制御装置１００は、Ｈ／Ｗ装置に対する設定処理を実行するための必要最小限の要素と時間のみ通常モードに移行するため、電力制御装置１００自体の消費電力が必要最小限に抑えることができる。
【００３２】
電力制御装置１００は、例えば、図５に示すように、ＣＰＵ２００を補完するサブＣＰＵ５００（サブプロセッサ装置）によって実現される。
つまり、図２に示したイベント蓄積管理部１０４、イベント処理部１０５、設定処理実行部１０１〜１０３をプログラムとし、サブＣＰＵ５００がこれらプログラムを実行することで、各要素の機能を実現する。
サブＣＰＵ５００は、メインのＣＰＵ２００よりも電力消費量が少ない。
サブＣＰＵ５００は、例えば、図５には図示していないメモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）にアクセスすることが可能であり、サブＣＰＵ５００は、当該メモリにロードされたプログラムを実行して、実施の形態１〜３に示した動作を実現することができる。
サブＣＰＵ５００が、イベント蓄積管理部１０４として機能するブロック、イベント処理部１０５として機能するブロック、設定処理実行部１０１として機能するブロック、設定処理実行部１０２として機能するブロック、設定処理実行部１０３として機能するブロックに分かれている場合は、図８に示す手順にて、各ブロックの電力消費モードを通常モード又は省電力モードに移行させることで、省電力化を図ることができる。
このような制御ができない場合は、サブＣＰＵ５００は、ＣＰＵ２００から設定処理指示を受信すると起動して通常モードに移行し、設定処理実行完了通知をＣＰＵ２００に送信すると省電力モードに戻ることで、省電力化を図る。
【００３３】
また、電力制御装置１００を、部分的に電源をＯＮ／ＯＦＦに設定することが可能（ブロック単位で電力消費モードを通常モードと省電力モードにすることが可能）な１つあるいは複数のＡＳＩＣあるいはＦＰＧＡ内で実現するようにしてもよい。
電力制御装置１００がＡＳＩＣ又はＦＰＧＡで実現されている場合は、図８に示す手順にて、ブロックごとに電力消費モードを通常モード又は省電力モードに移行させることで、省電力化を図ることができる。
【００３４】
電力制御装置１００がサブＣＰＵ５００とプログラムで実現される場合は、イベント処理部１０５は、複数のタスク（設定処理実行部１０１〜１０３）をスケジュールする動作としてシミュレートされる。
サブＣＰＵ５００は、このシミュレートする動作が記述されたプログラムをＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）から読み出し、ＲＡＭをワークエリアとして使用して実行することによりイベント処理部１０５を実現する。
また、サブＣＰＵ５００は、イベント処理部１０５の動作として、依存関係のない独立した複数のタスクのイベント待ちを同一時間に集中させるスケジュールを行うことにより、ＣＰＵ２００およびサブＣＰＵ５００が実質的に何もすることがない待ち状態になっている時間が長くなり、それゆえスリープモードや電源ＯＦＦにすることが可能となり、消費電力をより小さくすることが可能になる。
つまり、２つ以上の設定実行処理部が設定処理を実行する２つ以上の設定処理指示がイベント蓄積管理部１０４により同時期に入力された場合に、イベント処理部１０５は、２つ以上の設定実行処理部における設定処理の実行が同時期に完了するようにイベントの実行順序のスケジューリングを行うことにより、消費電力を小さくすることができる。
【００３５】
以上、本実施の形態では、
電力制御の対象となる各機能や各回路の電源ＯＮ後の初期化処理あるいは電源ＯＦＦ前の終了処理あるいは電力モード変更処理の設定処理を行い、設定処理が不要あるいは完了すると自身を電源ＯＦＦに設定する、複数の設定処理実行部と、
電力制御装置内で発生した割込みや時間経過などのイベントを受信し、必要に応じて設定処理実行部で必要となるイベントに変換して実行すべき順番にイベントを蓄積するイベント蓄積管理部と、
イベントに対応する設定処理実行部を起動し、イベント蓄積管理部に処理すべきイベントがなければ自身を電源ＯＦＦに設定する、イベント処理部と、
を備える電力制御装置を説明した。
【００３６】
実施の形態２．
実施の形態１では、Ｈ／Ｗ装置ごとに設定処理実行部が設けられている構成を示したが、本実施の形態では、Ｈ／Ｗ装置ごと及び設定処理の種類ごとに、設定処理実行部が設けられている構成を示す。
以下では、実施の形態１との差異を説明する。
以下にて説明していない点は、実施の形態１と同じである。
【００３７】
図３は、本実施の形態に係る電力制御装置１００の内部構成例を示す。
図３において、イベント蓄積管理部１０４とイベント処理部１０５は、実施の形態１で示したものと同様であるため、説明を省略する。
設定処理実行部１０１１は、Ｈ／Ｗ装置３０１に対して、初期化処理時の設定処理を行う。
設定処理実行部１０１２は、Ｈ／Ｗ装置３０１に対して、終了処理時の設定処理を行う。
設定処理実行部１０１３は、Ｈ／Ｗ装置３０１に対して、モード変更処理時の設定処理を行う。
設定処理実行部１０２１は、Ｈ／Ｗ装置３０２に対して、初期化処理時の設定処理を行う。
設定処理実行部１０２２は、Ｈ／Ｗ装置３０２に対して、終了処理時の設定処理を行う。
設定処理実行部１０２３は、Ｈ／Ｗ装置３０２に対して、モード変更処理時の設定処理を行う。
設定処理実行部１０３１は、Ｈ／Ｗ装置３０３に対して、初期化処理時の設定処理を行う。
設定処理実行部１０３２は、Ｈ／Ｗ装置３０３に対して、終了処理時の設定処理を行う。
設定処理実行部１０３３は、Ｈ／Ｗ装置３０３に対して、モード変更処理時の設定処理を行う。
このように、本実施の形態に係る電力制御装置１００では、Ｈ／Ｗ装置ごと及び設定処理の種類ごとに、設定処理実行部が分類されている。
【００３８】
本実施の形態においてもＣＰＵ２００の動作は図７に示したものと同じである。
また、電力制御装置１００の動作は、図８のＳ８０４において、設定処理実行部１０１１〜１０３３のうちの対応する設定処理実行部のみを通常モードにし、Ｓ８０７において、当該設定処理実行部を省電力モードにする点を除けば、図８に示したものと同様である。
【００３９】
なお、本実施の形態でも、２つ以上の設定実行処理部が設定処理を実行する２つ以上の設定処理指示がイベント蓄積管理部１０４により同時期に入力された場合に、イベント処理部１０５は、２つ以上の設定実行処理部における設定処理の実行が同時期に完了するようにイベントの実行順序のスケジューリングを行うことにより、消費電力を小さくすることができる。
【００４０】
本実施の形態では、Ｈ／Ｗ装置ごと及び設定処理の種類ごとに、設定処理実行部が設けられているので、個々の設定処理実行部の規模を実施の形態１に比べて小さくすることができ、電力制御装置１００の消費電力を実施の形態１に比べて抑えることができる。
【００４１】
以上、本実施の形態では、
電力制御の対象となる各機能や各回路の電源ＯＮ後の初期化処理あるいは電源ＯＦＦ前の終了処理あるいは電力モード変更処理の設定処理を行う部分を処理毎に別々にもち、設定処理が不要あるいは完了すると自身を電源ＯＦＦに設定する、複数の設定処理実行部と、
電力制御装置内で発生した割込みや時間経過などのイベントを受信し、必要に応じて設定処理実行部で必要となるイベントに変換して実行すべき順番にイベントを蓄積するイベント蓄積管理部と、
イベントに対応する設定処理実行部を起動し、イベント蓄積管理部に処理すべきイベントがなければ自身を電源ＯＦＦに設定する、イベント処理部と、
を備える電力制御装置を説明した。
【００４２】
実施の形態３．
本実施の形態に係る設定処理実行部は、図４に示すように、イベント蓄積管理部１１１、イベント処理部１１２、複数のイベント実行部（イベント実行部１１３、イベント実行部１１４、イベント実行部１１５）で構成される。
図４では、一例として、実施の形態１で示した設定処理実行部１０１、実施の形態２で示した設定処理実行部１０１１の内部構成を示しているが、実施の形態１で示した設定処理実行部１０２、１０３、実施の形態２で示した設定処理実行部１０１２、１０１３でも同様の内部構成をとることができる。
また、図４では、３つのイベント実行部が含まれる例を示しているが、イベント実行部の数は任意である。
以下では、実施の形態１、２との差異を説明する。
以下にて説明していない点は、実施の形態１、２と同じである。
【００４３】
図４において、イベント蓄積管理部１１１は、実施の形態１又は実施の形態２で示したイベント処理部１０５により生成されたイベントを入力する。
例えば、イベント蓄積管理部１１１は、Ｈ／Ｗ装置３０１に対する設定処理を実行するためのイベントを入力する。
イベント蓄積管理部１１１は、設定処理実行部１０１、１０１１内で、図２及び図３のイベント蓄積管理部１０４に相当する動作を行う。
なお、イベント蓄積管理部１１１は、イベント入力部の例である。
【００４４】
イベント処理部１１２は、イベント処理部１０５からのイベントをイベント蓄積管理部１１１から入力し、入力したイベントを変換する。
イベント処理部１１２が変換するイベントは、イベント処理部１０５からのイベントの実行手順を具体化するイベントであり、イベント実行部１１３、イベント実行部１１４、イベント実行部１１５で解釈可能なイベントである。
イベント処理部１１２は、イベント処理部１０５からの１つのイベントに対して複数のイベントを生成する場合がある。
イベント処理部１１２は、イベント間に順序制約がない場合はイベントの実行順序を変更することができる。
イベント処理部１１２は、設定処理実行部１０１、１０１１内で、図２及び図３のイベント処理部１０５に相当する動作を行う。
なお、イベント処理部１１２は、イベント変換部の例である。
【００４５】
イベント実行部１１３、イベント実行部１１４、イベント実行部１１５は、それぞれ、イベント処理部１１２からイベントを取得し、取得したイベントの意味に従った処理を実行する。
イベント実行部１１３、イベント実行部１１４、イベント実行部１１５が協動して、Ｈ／Ｗ装置３０１に対する設定処理を実行する。
イベント実行部１１３、イベント実行部１１４、イベント実行部１１５は、設定処理実行部１０１、１０１１内で、図２及び図３の設定処理実行部１０１〜１０３、１０１１〜１０３３に相当する動作を行う。
なお、イベント実行部１１３、イベント実行部１１４、イベント実行部１１５は、イベント実行部の例である。
【００４６】
イベント蓄積管理部１１１にイベントが残っておらず、また、イベント実行部１１３、イベント実行部１１４、イベント実行部１１５に未実行の処理がない場合に、設定処理実行部１０１、１０１１は省電力モードに移行する。
設定処理実行部１０１、１０１１における他の動作は、実施の形態１及び実施の形態２で説明した通りである。
【００４７】
以上、本実施の形態では、
設定処理実行部の内部が実施の形態１又は実施の形態２の電力制御装置と同様な要素を備えて再帰的に構成されている電力制御装置を説明した。
【００４８】
実施の形態４．
図６に示すように、実施の形態１〜３の電力制御装置１００を、Ｈ／Ｗ装置３０１〜３０３内で実現し、設定処理の対象になっていないＨ／Ｗ装置が、設定処理の対象になっているＨ／Ｗ装置の設定処理を行うようにしてもよい。
例えば、Ｈ／Ｗ装置３０１の初期化処理が必要な場合に、Ｈ／Ｗ装置３０２が実施の形態１〜３の電力制御装置１００として動作して、ＣＰＵ２００に代わって、Ｈ／Ｗ装置３０１の初期化処理の設定処理を行うようにする。
なお、Ｈ／Ｗ装置３０１〜３０３の消費電力はＣＰＵ２００よりも低いものとする。
また、Ｈ／Ｗ装置３０１〜３０３は、部分的に電源をＯＮ／ＯＦＦに設定することが可能（ブロック単位で電力消費モードを通常モードと省電力モードにすることが可能）であることが望ましい。
Ｈ／Ｗ装置３０１〜３０３においてブロック単位で電力消費モードを制御することが可能であれば、図８に示す手順にて、ブロックごとに電力消費モードを通常モード又は省電力モードに移行させることで、省電力化を図ることができる。
【符号の説明】
【００４９】
１００  電力制御装置、１０１  設定処理実行部、１０２  設定処理実行部、１０３  設定処理実行部、１０４  イベント蓄積管理部、１０５  イベント処理部、１１１  イベント蓄積管理部、１１２  イベント処理部、１１３  イベント実行部、１１４  イベント実行部、１１５  イベント実行部、２００  ＣＰＵ、３０１  Ｈ／Ｗ装置、３０２  Ｈ／Ｗ装置、３０３  Ｈ／Ｗ装置、４００  バス、５００  サブＣＰＵ、１０１１  設定処理実行部、１０１２  設定処理実行部、１０１３  設定処理実行部、１０２１  設定処理実行部、１０２２  設定処理実行部、１０２３  設定処理実行部、１０３１  設定処理実行部、１０３２  設定処理実行部、１０３３  設定処理実行部。
【図１】
2015031967.tif 000003
【図２】
2015031967.tif 000004
【図３】
2015031967.tif 000005
【図４】
2015031967.tif 000006
【図５】
2015031967.tif 000007
【図６】
2015031967.tif 000008
【図７】
2015031967.tif 000009
【図８】
2015031967.tif 000010