(57)【特許請求の範囲】
【請求項１】
揮発性のメモリと、
前記メモリと情報授受可能に接続されたメモリコントローラと、
セルフリフレッシュ制御の代替を依頼されて、代替の解除が依頼されるまでの間、前記メモリコントローラから前記メモリへ送信されるＣＫＥ信号をローに維持するよう制御するＣＫＥ制御部とを有し、
前記メモリコントローラは、省電力モードへの移行の際にＣＰＵが保持する情報を前記メモリへ格納するとともに、前記メモリをセルフリフレッシュモードに移行させ、
省電力モードからの復帰の際に前記ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を依頼してから前記メモリをセルフリフレッシュモードから解除させるとともに、前記ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を依頼する前に、前記メモリを初期化するコマンド及び前記メモリがセルフリフレッシュに移行するコマンドを前記メモリに送信する情報処理装置。
【請求項２】
揮発性のメモリと、
前記メモリと情報授受可能に接続されたメモリコントローラと、
セルフリフレッシュ制御の代替を依頼されて、代替の解除が依頼されるまでの間、前記メモリコントローラから前記メモリへ送信されるＣＫＥ信号をローに維持するよう制御するＣＫＥ制御部とを有するコンピュータを、
省電力モードへの移行の際にＣＰＵが保持する情報を前記メモリへ格納するとともに、前記メモリをセルフリフレッシュモードに移行させる第１の手段と、
省電力モードからの復帰の際に前記ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を依頼してから前記メモリをセルフリフレッシュモードから解除させるとともに、前記省電力モードからの復帰の際、前記ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を依頼する前に、前記メモリを初期化するコマンド及び前記メモリがセルフリフレッシュに移行するコマンドを前記メモリに送信する第２の手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
従来の技術として、省電力モードからの復帰か否かを判別して揮発性メモリを動作させる情報処理装置が提案されている（例えば、特許文献１参照）。
【０００３】
特許文献１に開示された情報処理装置は、揮発性メモリを制御するコントローラを有し、省電力モードに移行する際にはコントローラ内に設定されている情報をメモリに記憶した後に、メモリ内部で自動的にリフレッシュを行うセルフリフレッシュモードに移行させるとともに、レジスタに省電力モードを示す情報を記憶して電力を遮断し、その後電力が供給された場合に、レジスタに記憶された情報に基づいて省電力モードからの復帰か否かを判別して、省電力モードからの復帰ではなく情報処理装置全体に対する電力供給である場合はメモリを初期化し、省電力モードからの復帰である場合はメモリを初期化せずにメモリのセルフリフレッシュモードを解除した後にメモリに記憶されている情報に基づいて復帰処理を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３５０８５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、ＣＰＵの仕様に関わらず、揮発性のメモリに記憶されている情報を利用して省電力モードから復帰する情報処理装置及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
発明の一態様は、上記目的を達成するため、以下の情報処理装置及びプログラムを提供する。
【０００７】
［１］揮発性のメモリと、
前記メモリと情報授受可能に接続されたメモリコントローラと、
セルフリフレッシュ制御の代替を依頼されて、代替の解除が依頼されるまでの間、前記メモリコントローラから前記メモリへ送信されるＣＫＥ信号をローに維持するよう制御するＣＫＥ制御部とを有し、
前記メモリコントローラは、省電力モードへの移行の際にＣＰＵが保持する情報を前記メモリへ格納するとともに、前記メモリをセルフリフレッシュモードに移行させ、
省電力モードからの復帰の際に前記ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を依頼してから前記メモリをセルフリフレッシュモードから解除させるとともに、前記ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を依頼する前に、前記メモリを初期化するコマンド及び前記メモリがセルフリフレッシュに移行するコマンドを前記メモリに送信する情報処理装置。
［２］揮発性のメモリと、
前記メモリと情報授受可能に接続されたメモリコントローラと、
セルフリフレッシュ制御の代替を依頼されて、代替の解除が依頼されるまでの間、前記メモリコントローラから前記メモリへ送信されるＣＫＥ信号をローに維持するよう制御するＣＫＥ制御部とを有するコンピュータを、
省電力モードへの移行の際にＣＰＵが保持する情報を前記メモリへ格納するとともに、前記メモリをセルフリフレッシュモードに移行させる第１の手段と、
省電力モードからの復帰の際に前記ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を依頼してから前記メモリをセルフリフレッシュモードから解除させるとともに、前記省電力モードからの復帰の際、前記ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を依頼する前に、前記メモリを初期化するコマンド及び前記メモリがセルフリフレッシュに移行するコマンドを前記メモリに送信する第２の手段、
として機能させるためのプログラム。
【発明の効果】
【０００９】
請求項１、２に係る発明によれば、省電力モードからの復帰時において、ＣＫＥ制御部にセルフリフレッシュ制御の代替の解除を行わせる前に、メモリを初期化するコマンド及びメモリがセルフリフレッシュに移行するコマンドをメモリに送信する仕様のＣＰＵであっても、揮発性メモリに記憶されている情報を利用して省電力モードから復帰することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態に係る情報処理装置の構成例を示すブロック図である。
【図２】図２は、情報処理装置の電源投入及び省電力モード移行動作を示すフローチャートである。
【図３】図３は、情報処理装置の省電力モードからの復帰動作を示すフローチャートである。
【発明を実施するための形態】
【００１１】
［実施の形態］
（情報処理装置の構成）
図１は、実施の形態に係る情報処理装置の構成例を示すブロック図である。
【００１２】
情報処理装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２と、ＣＫＥ制御部３と、レジスタ４と、ＤＲＡＭ５と、論理回路６と、電源供給回路７０、７１と、ＡＳＩＣ８０及びＩ／Ｆ８１と、ＵＩ９０とを有する。
【００１３】
ＣＰＵ２は、ＤＲＡＭコントローラ２０を有し、論理回路６にデータや信号を授受可能に接続されると共に、論理回路６を介して電源供給回路７０及び電源供給回路７１各々にデータや信号授受可能に接続され、ＤＲＡＭコントローラ２０を介してＤＲＡＭ５にデータや信号授受可能に接続されている。なお、ＤＲＡＭコントローラ２０とＤＲＡＭ５とは、クロック信号を送信するＣＬＫ信号線と、ＣＫＥ信号を送信するＣＫＥ信号線と、データを送受信する専用バスとによってデータ授受可能に接続されている。また、ＣＰＵ２は、情報処理装置１全体を制御する。
【００１４】
ＣＫＥ制御部３は、ＤＲＡＭコントローラ２０とＤＲＡＭ５との間のＣＫＥ信号線上に設けられ、ＤＲＡＭコントローラ２０から送信されるＣＫＥ信号をスルーしてＤＲＡＭ５に送信するか、ＤＲＡＭコントローラ２０から送信される信号に関わらずＣＫＥ信号をローレベルに維持してＤＲＡＭ５に送信するかのいずれかに制御する。なお、ＣＫＥ信号がローレベルに保たれている間、ＤＲＡＭ５ではメモリ内部で自動的にリフレッシュを行うセルフリフレッシュ動作が継続され、ＣＫＥ信号がハイレベルになると、セルフリフレッシュモードは解除されてＤＲＡＭコントローラ２０から送信されるクロック信号に基づいてリフレッシュする。
【００１５】
レジスタ４は、ＣＰＵ２が省電力モードであることを示す情報を記憶するための回路であって、ＤＲＡＭコントローラ２０とデータ授受可能に接続されている。
【００１６】
なお、ＣＫＥ制御部３及びレジスタ４は、一例として、ＣＰＬＤによって構成される。
【００１７】
ＤＲＡＭ５は、メインメモリとして使用され、ＣＰＵ２が行う様々な処理に必要なデータが記憶される。ＤＲＡＭ５は、揮発性メモリであり、ＤＲＡＭコントローラ２０の制御により、適切なリフレッシュ間隔をあけながら内部で自動的にリフレッシュを実行するセルフリフレッシュモードと、ＤＲＡＭコントローラ２０の制御によってリフレッシュを行う通常動作モードと、の何れかに切替えられる。
【００１８】
セルフリフレッシュモードとなると、ＤＲＡＭ５では、適切なリフレッシュ間隔をあけながら、メモリ内部で自動的にリフレッシュが実行される。すなわち、ＣＫＥ信号がハイレベルである状態は、セルフリフレッシュモードを解除するための解除信号が出力されている状態を示し、ＣＫＥ信号がローレベルである状態は、セルフリフレッシュモードへの移行を指示するセルフリフレッシュ指示信号が出力されている状態を示している。
【００１９】
なお、本実施の形態では、メインメモリとして使用される揮発性メモリは、ＤＲＡＭである場合を説明するが、その他の形式の揮発性メモリであってもよい。
【００２０】
論理回路６には、省エネモードからの復帰を指示するときにユーザによって操作指示される指示ボタンを含むユーザ・インターフェース（以下、ＵＩという）９０が信号授受可能に接続されている。更に、論理回路６は、省エネ復帰制御可能なＡＳＩＣ８０及びネットワークを介して外部装置とデータや信号を授受するためのインターフェイス（以下、Ｉ／Ｆという）８１に接続されている。
【００２１】
電源供給回路７０は、ＣＰＵ２及びＤＲＡＭコントローラ２０を含む情報処理装置１の装置各部に電力を供給し、論理回路６と信号授受可能に接続されている。電源供給回路７０は、論理回路６によってＣＰＵ２及びＤＲＡＭコントローラ２０を含む装置各部への電力供給または電力遮断が制御される。
【００２２】
電源供給回路７１は、ＤＲＡＭ５に電力を供給し、論理回路６と信号授受可能に接続されている。電源供給回路７１は、論理回路６によって、ＤＲＡＭ５への電力供給または電力遮断が制御される。
【００２３】
（情報処理装置の動作）
次に、本実施の形態の作用を、（１）電源投入動作及び省電力モード移行動作、（２）復帰動作に分けて説明する。
【００２４】
（１）電源投入及び省電力モード移行動作
図２は、情報処理装置１の電源投入及び省電力モード移行動作を示すフローチャートである。なお、図中において、ＣＰＵ２及びＤＲＡＭコントローラ２０の動作をまとめてＣＰＵ２と表記している。
【００２５】
まず、ＣＰＵ２は、論理回路６の制御により電源供給回路７０から電力が供給されて情報処理装置１の主電源がＯＮになったと判別すると（Ｓ２００；Ｙｅｓ）、ＤＲＡＭコントローラ２０にＤＲＡＭ５を初期化するコマンドを送信するよう指示する（Ｓ２０１）。ＤＲＡＭコントローラ２０は、専用バスを介してＤＲＡＭ５に初期化コマンドを送信する。
【００２６】
ＤＲＡＭ５は、初期化コマンドを受信すると（Ｓ５００）、初期化を実行し（Ｓ５０１）、ＣＰＵ２からの信号を待機する（Ｓ５０２）。
【００２７】
ＣＰＵ２は、ＤＲＡＭ５が初期化されてＤＲＡＭ５が待機状態になると、様々な処理を実行し、必要に応じてＤＲＡＭ５にアクセスする（Ｓ２０２）。
【００２８】
また、ＤＲＡＭ５は、ＣＰＵ２のアクセスに応答して動作する（Ｓ５０３）。
【００２９】
次に、ＣＰＵ２が省電力モードへの移行を判別した場合（Ｓ２０３；Ｙｅｓ）、ＣＰＵ２は省電力モードへの切替指示を示す省電力指示信号を論理回路６及びＤＲＡＭコントローラ２０各々へ出力するとともに、ＤＲＡＭコントローラ２０内に設定されている情報をＤＲＡＭ５に書き込んで、ＤＲＡＭコントローラ２０はセルフリフレッシュ移行コマンドをＤＲＡＭ５に送信する（Ｓ２０４）。
【００３０】
なお、ＣＰＵ２による省電力モードへの移行の判別は、例えば、アプリケーションによるもの、ＵＩ９０及びネットワークを介した外部装置からの省電力モードへの切替指示を示す省電力指示信号の入力等が挙げられる。
【００３１】
セルフリフレッシュ移行コマンドには、現在ＤＲＡＭコントローラ２０に設定されているリフレッシュ間隔時間を、専用バスを介してＤＲＡＭ５へ書き込む動作も含まれるものとする。
【００３２】
セルフリフレッシュ移行コマンドは、ＤＲＡＭコントローラ２０がＣＫＥ信号線を介してＣＫＥ信号をアサート（ＣＫＥ信号がローレベルになるように制御）することで実現される。ＤＲＡＭ５は、セルフリフレッシュ移行コマンドを受信すると（Ｓ５０４）、つまり、入力されるＣＫＥ信号がローレベルとなると、ＤＲＡＭ５はセルフリフレッシュモードへ移行し（Ｓ５０５）、ＤＲＡＭ５内部で自動的にリフレッシュを実行するセルフリフレッシュを行う。
【００３３】
ＣＰＵ２は、ステップＳ２０４の後、ＣＫＥ制御部３にセルフリフレッシュ制御の代替を依頼する（Ｓ２０５）。また、レジスタ４へ、省電力モードを示す情報を記憶する。
【００３４】
ＣＫＥ制御部３は、セルフリフレッシュ制御の代替を受け付けると（Ｓ３００）、ＤＲＡＭ５に入力されるＣＫＥ信号をローレベルに維持する（Ｓ３０１）。つまり、ＣＫＥ制御部３は、セルフリフレッシュ制御の代替中はＤＲＡＭコントローラ２０のＣＫＥ信号が仮にハイレベルとなってもＤＲＡＭ５に入力されるＣＫＥ信号をローレベルに維持する。
【００３５】
なお、上記ステップＳ２０４の実行前にＣＰＵ２からＤＲＡＭコントローラ２０へ出力される省電力指示信号は、論理回路６へも出力される。論理回路６は、ＣＰＵ２から省電力モードへの切替指示を示す省電力指示信号が入力されてから所定時間後に、電源供給回路７０によって電力が供給されるＣＰＵ２及びＤＲＡＭコントローラ２０を含む装置各部への電力供給を遮断するようにこの電源供給回路７０を制御する。この所定時間としては、ＤＲＡＭコントローラ２０における図２に示すステップＳ２０５の処理の実行に要する予め計測された時間、またはこの時間より長い時間が定められる。
【００３６】
このため、ＤＲＡＭコントローラ２０によって上記ステップＳ２０４及びＳ２０６の処理が実行された後に、論理回路６による電源供給回路７０の制御によって、ＣＰＵ２及びＤＲＡＭコントローラ２０を含む情報処理装置１の装置各部への電力供給が遮断される（Ｓ２０６）。すなわち、電源供給回路７１によって電力が供給されるＤＲＡＭ５及びレジスタ４以外の情報処理装置１の装置各部への電力供給が遮断されて、情報処理装置１が省電力モードへと移行する。
【００３７】
（２）復帰動作
次に、省電力モードから復帰する場合の動作について説明する。
【００３８】
図３は、情報処理装置１の省電力モードからの復帰動作を示すフローチャートである。なお、図中において、ＣＰＵ２及びＤＲＡＭコントローラ２０の動作をまとめてＣＰＵ２と表記している。
【００３９】
電源供給回路７０からＣＰＵ２及びＤＲＡＭコントローラ２０への電力供給は、省電力モードからの復帰指示を示す復帰指示信号が論理回路６に入力されたときに（Ｓ２０８；Ｙｅｓ）、論理回路６による電源供給回路７０の制御によって行われる（Ｓ２０９）。また、図示を省略した電源スイッチのユーザによるＯＮ操作によって情報処理装置１の装置各部へ電力が供給されたときに行われるものであってもよい。なお、省電力モードからの復帰指示を示す復帰指示信号は、ＵＩ９０に含まれる図示を省略した省エネ復帰指示ボタンのユーザによる操作指示により、または外部装置からネットワークを介して入力される。
【００４０】
なお、ステップＳ２０８において、ＣＰＵ２は、レジスタ４に省電力モードを示す情報が記憶されているか否かを判別することによって、ＣＰＵ２及びＤＲＡＭコントローラ２０への電力供給開始が、省電力モードからの復帰であるのか、図示を省略した電源スイッチがユーザによってオフされることによって情報処理装置１装置各部全体への電力供給が停止された状態から復帰したのかを判断する。
【００４１】
ＣＰＵ２は、電力供給が開始されるとＤＲＡＭコントローラ２０を制御して、ＤＲＡＭ初期化コマンドを、専用バスを介してＤＲＡＭ５に送信する（Ｓ２１０）。
【００４２】
また、ＤＲＡＭコントローラ２０はセルフリフレッシュ移行コマンドをＤＲＡＭ５に送信する（Ｓ２１１）。
【００４３】
ここで、ＣＫＥ制御部３によってＤＲＡＭ５に入力されるＣＫＥ信号はローレベルに維持されているため（Ｓ３０２）、上記ステップＳ２１０のＤＲＡＭ初期化コマンドはＤＲＡＭ５に無視され（Ｓ５０７）、ステップＳ２１１のセルフリフレッシュ移行コマンドはＣＫＥ信号がローレベルであるためＣＫＥ制御部３の出力するＣＫＥ信号のローレベルと整合がとられる（Ｓ５０８）。つまり、ＤＲＡＭ５の状態（セルフリフレッシュモード）とＤＲＡＭコントローラ２０が出力するＣＫＥ信号との整合がとられる。
【００４４】
なお、ステップＳ２１０及びＳ２１１の動作は、省電力モードからの復帰に対応しないＣＰＵで行われるものであり、当該動作を行わないよう設計された省電力モードからの復帰に対応したＣＰＵも存在するが、当該動作を行わないとしても本構成において省電力モードからの復帰が可能である。
【００４５】
次に、ＣＰＵ２のＤＲＡＭコントローラ２０は、ＣＫＥ制御部３にセルフリフレッシュ制御代替の解除を依頼する（Ｓ２１２）。
【００４６】
ＣＫＥ制御部３は、ＤＲＡＭコントローラ２０からセルフリフレッシュ制御代替の解除を受け付けて（Ｓ３０３）、ＣＫＥ信号をＣＰＵ２の制御に変更する（Ｓ３０４）。つまり、ＤＲＡＭコントローラ２０から出力されるＣＫＥ信号をＤＲＡＭ５にスルーする。
【００４７】
次に、ＤＲＡＭコントローラ２０は、ＣＫＥ信号線を介してＣＫＥ信号をネゲート（ＣＫＥ信号がハイレベルになるように制御）することによって、セルフリフレッシュモードを解除するための解除信号をＤＲＡＭ５へ出力し、ＤＲＡＭ５をセルフリフレッシュモードから解除する（Ｓ２１３）。入力されるＣＫＥ信号がハイレベルとなると、ＤＲＡＭ５はセルフリフレッシュモードを解除し（Ｓ５０９）、ＤＲＡＭコントローラ２０により情報の読み書き可能な状態となる（Ｓ５１０）。
【００４８】
また、ＤＲＡＭコントローラ２０は、レジスタ４をクリアする。
【００４９】
ＣＰＵ２は、電源供給回路７０からの電力供給が開始されると、ＤＲＡＭコントローラ２０を介してＤＲＡＭ５に記憶されているデータを取得して、省電力モードからの復帰処理等を実行する（Ｓ２１４、Ｓ５１１）。
【００５０】
以上説明したように、本発明の情報処理装置１のＤＲＡＭコントローラ２０は、省電力モードに移行するときには、ＤＲＡＭコントローラ２０内に設定されている情報をＤＲＡＭ５に記憶した後にＤＲＡＭ５をセルフリフレッシュモードに移行するように制御すると共に、レジスタ４に省電力モードを示す情報を記憶した後に電力が遮断される。
【００５１】
ＤＲＡＭコントローラ２０は、ＤＲＡＭコントローラ２０への電力供給が開始されたときに、省電力モードからの復帰か否かに関わらず、ＤＲＡＭ５を初期化し、ＣＫＥの初期値が不定で、ＤＲＡＭ５のセルフリフレッシュモードへ移行及び解除した後にＤＲＡＭ５に記憶されている情報に基づいて省電力モードからの復帰処理を行う。
【００５２】
ＣＫＥ制御部３は、省電力モードからの復帰時には、ＤＲＡＭ５の初期化及びセルフリフレッシュモードへの移行を無視させるためにＣＫＥ信号をローレベルに維持し、その後ＣＫＥ信号をスルーにしてＤＲＡＭ５のセルフリフレッシュモードを解除して、ＤＲＡＭ５に記憶されている情報に基づいて省電力モードからの復帰処理を行うようにしたため、省電力モードからの復帰である場合にＤＲＡＭ５を初期化せず、ＣＫＥの初期値がローレベルに設計されたＣＰＵでなくとも、省電力モードからの復帰時にＤＲＡＭ５に記憶されている情報を確実に使用することができる。
【００５３】
また、省電力モード移行前の状況を表す情報をＤＲＡＭ５に記憶して、省電力モードからの復帰時にＤＲＡＭ５に記憶されている情報を読取ることによって省電力モード移行前の状態に復帰するので、省電力モードへ移行する前の状況を表す情報を不揮発性メモリに記憶して、省電力モードからの復帰時に不揮発性メモリから情報を読取って省電力モード移行前の状態に復帰する場合に比べて、省電力モードからの復帰時に、高速に省電力モード移行前の状態に復帰することができる。
【００５４】
［他の実施の形態］
なお、本発明は、上記実施の形態に限定されず、本発明の趣旨を逸脱しない範囲で種々な変形が可能である。
【００５５】
上記実施の形態で説明した上記ステップの入れ替え、削除、追加等は本発明の要旨を変更しない範囲内で可能である。
【符号の説明】
【００５６】
１     情報処理装置
２     ＣＰＵ
３     ＣＫＥ制御部
４     レジスタ
５     ＤＲＡＭ
６     論理回路
２０   ＤＲＡＭコントローラ
７０   電源供給回路
７１   電源供給回路
８０   ＡＳＩＣ
８１   Ｉ／Ｆ
９０   ＵＩ
【図１】
0006409590.tif 000002
【図２】
0006409590.tif 000003
【図３】
0006409590.tif 000004