(57)【要約】【課題】制御手段及び揮発性記憶手段を内蔵する集積回路と不揮発性記憶手段がシリアルインターフェースを介して接続されている場合において、低電力の状態への遷移中、あるいは低電力の状態が解除される通常の状態への遷移中に、シリアルインターフェースを介して接続されている不揮発性記憶手段に情報を常時記録する場合に比して、情報を記録する際の制約が少ない状態で不揮発性記憶手段に記録できるようにする。【解決手段】スタンバイモードから省電力モードへの移行時、ＣＰＵ１１は、ログの記録先をＳＲＡＭ１２に切り替え、ＷＤＴ１３におけるタイマカウントをスタートする。続いて、各デバイスに対する省電力モードの移行処理及びログの書き込みを順番に行う。その処理の過程においてＣＰＵ１１がハングすると、ＣＰＵ１１は、ＷＤＴ１３によるリセット後、ＳＲＡＭ１２に記録されたログを、ＳＰＩバス２１を介してＮＶＲＡＭ６へ書込保存する。【選択図】図２
2018181247.tif 000002
【特許請求の範囲】
【請求項１】
制御手段及び揮発性記憶手段を内蔵する集積回路と、
通常の状態での動作時に情報を前記集積回路とシリアルインターフェースを介して接続されている不揮発性記憶手段に記録する記録手段と、
通常の状態から通常の状態と比べて消費される電力の量が抑制された状態である低電力状態への遷移中、前記記録手段による情報の記録先を前記揮発性記憶手段に切り替える切替手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記揮発性記憶手段に記録されている情報を、低電力状態に完全に移行する直前に前記不揮発性記憶手段に転送する転送手段を有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記記録手段は、低電力の状態から通常の状態への遷移中において、前記不揮発性記憶手段に情報が記録できる状態になるまで情報を前記揮発性記憶手段に記録し、
前記不揮発性記憶手段に情報が記録できる状態になると前記揮発性記憶手段に記録されている情報を前記不揮発性記憶手段に転送する転送手段を有することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
監視手段が、前記制御手段が処理を停止もしくは長い時間応答しない状態になったことを検知した場合、前記揮発性記憶手段に記録されている情報を前記不揮発性記憶手段に転送する転送手段を有することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
制御手段及び揮発性記憶手段を内蔵する集積回路と、不揮発性記憶手段を有するコンピュータを、
通常の状態での動作時に情報を前記不揮発性記憶手段に記録する記録手段、
通常の状態から低電力の状態への遷移中、前記記録手段による情報の記録先を前記揮発性記憶手段に切り替える切替手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
近年、集積回路のインターフェースとして、相対的に低速とはなるもののデバイスの接続端子数削減のため、例えばＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）などのシリアルインターフェースを採用するのが主流となってきている。ＳＰＩは、シリアルインターフェースであるため、集積回路に内蔵されているＣＰＵからは、ＳＰＩコントローラに対する複数回のＲｅａｄ／Ｗｒｉｔｅ命令による不揮発性記憶装置へのデータの書き込みが必要になる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１０１１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
シリアルインターフェースを用いた場合、特に通常の状態から低電力の状態へ遷移するときに情報を記録するための制約が多いという課題があった。
【０００５】
本発明は、制御手段及び揮発性記憶手段を内蔵する集積回路と不揮発性記憶手段がシリアルインターフェースを介して接続されている場合において、通常の状態から通常の状態に比べて消費する電力の量が抑制された低電力の状態への遷移中にシリアルインターフェースを介して接続されている不揮発性記憶手段に情報を常時記録する場合に比して、情報を記録する際の制約が少ない状態で不揮発性記憶手段に記録できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理装置は、制御手段及び揮発性記憶手段を内蔵する集積回路と、通常の状態での動作時に情報を前記集積回路とシリアルインターフェースを介して接続されている不揮発性記憶手段に記録する記録手段と、通常の状態から通常の状態と比べて消費される電力の量が抑制された状態である低電力状態への遷移中、前記記録手段による情報の記録先を前記揮発性記憶手段に切り替える切替手段と、を有することを特徴とする。
【０００７】
また、前記揮発性記憶手段に記録されている情報を、低電力状態に完全に移行する直前に前記不揮発性記憶手段に転送する転送手段を有することを特徴とする。
【０００８】
また、前記記録手段は、低電力の状態から通常の状態への遷移中において、前記不揮発性記憶手段に情報が記録できる状態になるまで情報を前記揮発性記憶手段に記録し、前記不揮発性記憶手段に情報が記録できる状態になると前記揮発性記憶手段に記録されている情報を前記不揮発性記憶手段に転送する転送手段を有することを特徴とする。
【０００９】
また、監視手段が、前記制御手段が処理を停止もしくは長い時間応答しない状態になったことを検知した場合、前記揮発性記憶手段に記録されている情報を前記不揮発性記憶手段に転送する転送手段を有することを特徴とする。
【００１０】
本発明に係るプログラムは、制御手段及び揮発性記憶手段を内蔵する集積回路と、不揮発性記憶手段を有するコンピュータを、通常の状態での動作時に情報を前記不揮発性記憶手段に記録する記録手段、通常の状態から低電力の状態への遷移中、前記記録手段による情報の記録先を前記揮発性記憶手段に切り替える切替手段、として機能させる。
【発明の効果】
【００１１】
請求項１に記載の発明によれば、制御手段及び揮発性記憶手段を内蔵する集積回路と不揮発性記憶手段がシリアルインターフェースを介して接続されている場合において、通常の状態から低電力の状態への遷移中に、シリアルインターフェースを介して接続されている不揮発性記憶手段に情報を常時記録する場合に比して、情報を記録する際の制約が少ない状態で不揮発性記憶手段に記録することができる。
【００１２】
請求項２に記載の発明によれば、電源がオフされることにより揮発性記憶手段に記録した情報が消失してしまう事態から回避することができる。
【００１３】
請求項３に記載の発明によれば、低電力の状態が解除される通常の状態への遷移中に、シリアルインターフェースを介して接続されている不揮発性記憶手段に情報を常時記録する場合に比して、情報を記録する際の制約が少ない状態で不揮発性記憶手段に記録することができる。
【００１４】
請求項４に記載の発明によれば、制御手段が処理に応答しない状態になった（ハングする）ことにより揮発性記憶手段に記録した情報が消失してしまう事態から回避することができる。
【００１５】
請求項５に記載の発明によれば、制御手段及び揮発性記憶手段を内蔵する集積回路と不揮発性記憶手段がシリアルインターフェースを介して接続されている場合において、低電力の状態への遷移中に、シリアルインターフェースを介して接続されている不揮発性記憶手段に情報を常時記録する場合に比して、情報を記録する際の制約が少ない状態で不揮発性記憶手段に記録することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明に係る情報処理装置の一実施の形態の構成の要部を示すブロック構成図である。
【図２】本実施の形態におけるＳｏＣの概略的な内部構成図である。
【図３】本実施の形態における省電力モード移行時処理を示すフローチャートである。
【図４】本実施の形態における省電力モードからの復帰処理を示すフローチャートである。
【図５】本実施の形態における省電力モード移行時処理の途中でＣＰＵがハングした場合におけるフローチャートである。
【図６】本実施の形態においてＣＰＵのリセット後に実行される処理を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【００１８】
図１は、本発明に係る情報処理装置の一実施の形態の構成の要部を示すブロック構成図である。図１には、電源１、電源スイッチ２及び基板３が示されている。電源１は、ＡＣ／ＤＣコンバータを内蔵しており、商用電源（交流電源）を直流電源に変換する機能を有し、基板３に電力を供給する電源となる。電源スイッチ２は、本装置の電源スイッチであり、オフされると電源１及び基板３を含む装置全体への電力の供給が停止される。
【００１９】
基板３には、電源４、システムメモリ５、ＮＶＲＡＭ（Ｎｏｎ−Ｖｏｌａｔｉｌｅ  ＲＡＭ）６、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）７、各種インターフェース（Ｉ／Ｆ）８及びＳｏＣ（Ｓｙｓｔｅｍ−ｏｎ−ａ−Ｃｈｉｐ）１０が搭載されている。電源４は、ＤＣ／ＤＣコンバータを内蔵しており、電源１からの直流電圧を降圧する機能を有し、ＳｏＣ１０に電力を供給する電源となる。システムメモリ５は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が利用するメモリ領域である。本実施の形態では、ＯＳとしてＬｉｎｕｘ（登録商標）が搭載されている場合を例にして説明するが、これに限定されるものではない。
【００２０】
ＮＶＲＡＭ６は、自由に読み書きが可能なＲＡＭのうち、電源スイッチ２をオフにしても内容が失われない不揮発性メモリである。本実施の形態では、ＮＶＲＡＭ６を、一般的なＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）に電池(バックアップバッテリ)を組み合わせ、常に通電しておくようにして形成する。ＲＯＭ７は、読み出し専用の記憶手段である。ところで、本実施の形態における情報処理装置（コンピュータ）は、複合機等の画像形成装置に搭載されている場合を想定している。従って、ＳｏＣ１０には、フューザーユニットやスキャナ等のデバイスも接続されているが、これらを接続するインターフェースは、本実施の形態の説明に用いないので、図１では各種インターフェース（Ｉ／Ｆ）８とまとめて図示している。
【００２１】
図２は、本実施の形態におけるＳｏＣ１０の概略的な内部構成図である。ＳｏＣ１０は、プロセッサコアをはじめ一般的なマイクロコントローラが持つような機能の他、応用目的の機能なども集積し、連携してシステムとして機能するよう設計されている集積回路製品である。本実施の形態では、集積回路としてＳｏＣ１０を例にして説明するが、これに限定するものではなく、例えばＡＳＳＰ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｓｔａｎｄａｒｄ  Ｐｒｏｄｕｃｅ）などの集積回路を用いてもよい。
【００２２】
ＳｏＣ１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、ＳＲＡＭ１２、ＷＤＴ（ＷａｔｃｈＤｏｇ  Ｔｉｍｅｒ）１３、ＳＰＩコントローラ１４及び内部バス１５を内蔵している。内部バス１５は、相対的に高速なパラレルインターフェースバスであり、内蔵する構成要素１１〜１４に加え、システムメモリ５及び各種インターフェース８が接続される。ＣＰＵ１１は、各種プログラムを実行する。ＳＲＡＭ１２は、読み書きが可能なＲＡＭの一種で、一時的にデータを保持するための揮発性メモリである。ＳｏＣ１０に内蔵されるＳＲＡＭ１２は、ＮＶＲＡＭ６と比べて情報を記録するための制御が容易である。ＷＤＴ１３は、ＣＰＵ１１で動作しているプログラムが異常動作していないかを監視するハードウェアである。ＷＤＴ１３におけるタイマがタイムアップすると、ＣＰＵ１１はリセットされる。ＣＰＵ１１がリセットされると、プログラムは再スタートされる。リセットされてもＣＰＵ１１及びＳＲＡＭ１２には、電力が継続して供給される。なお、ＣＰＵ１１でプログラムが正常に動作している間、ＷＤＴ１３におけるタイマは、タイムアップする前にクリアされるのでタイムアップしない。
【００２３】
ＳＰＩコントローラ１４は、本実施の形態の場合、ＮＶＲＡＭ６及びＲＯＭ７を接続するＳＰＩバス２１のコントローラである。ＳＰＩバス２１は、コンピュータ内部で使われるデバイス同士を接続するバスであり、パラレルインターフェース（パラレルバス）に比べて接続端子数が少なくてすむシリアルバスの一種であるが、シリアルインターフェースであることから相対的に低速である。
【００２４】
ところで、従来においては、情報処理装置に搭載されるＳｏＣ１０とＮＶＲＡＭ６とは、パラレルインターフェースで接続されるのが一般的であった。従って、ＳｏＣ１０に内蔵されているＣＰＵ１１からは、アドレスを指定したデータのただ１回の書込命令で不揮発性メモリにデータの書き込みができていた。
【００２５】
近年では、ＳｏＣ１０のインターフェースとしてパラレルインターフェースを採用する場合が減少し、相対的に低速とはなるもののデバイスの接続端子数削減のためＳＰＩを採用するのが主流となってきている。ＳＰＩは、シリアルインターフェースであるため、ＣＰＵ１１からは、ＳＰＩコントローラ１４に対する複数回のＲｅａｄ／Ｗｒｉｔｅ命令による不揮発性メモリへのデータの書き込みが必要になる。
【００２６】
従って、情報のＮＶＲＡＭ６への保存は、パラレルインターフェースの場合は一命令で実現できたが、ＳＰＩの場合は、複数の命令を組み合わせる必要があるため情報の書込制御が複雑にならざるを得なかった。特に、通常の状態から低電力の状態への遷移中、あるいは低電力の状態から通常の状態への遷移中には、障害が発生した場合の解析用として画像形成装置に搭載されているデバイスに関するログをＮＶＲＡＭ６に書込保存する必要があるが、その書込制御が複雑になってしまう。
【００２７】
そこで、本実施の形態においては、パラレルバスである内部バス１５を介してＣＰＵ１１と接続されているＳＲＡＭ１２を有効利用することで情報のＮＶＲＡＭ６への書き込みを簡単に行えるようにしたことを特徴とする。
【００２８】
次に、本実施の形態におけるＳｏＣ１０の動作について説明する。
【００２９】
ＳｏＣ１０は、通常の状態としてユーザ操作を待機しているスタンバイモードで動作している。ユーザによる操作指示があると、そのユーザ操作指示に応じてコピーやスキャンなどの処理を実行する。そして、処理が終了すると指示の待機状態に戻る。なお、ＣＰＵ１１は、スタンバイモードにおいてプログラムを実行することで取り扱うデータを、ＮＶＲＡＭ６に書き込むことで記録する。
【００３０】
スタンバイモードでの動作中に所定時間何も操作されなった場合、ＳｏＣ１０は、低電力の状態である省電力モードに移行する。省電力モードでは、ＳｏＣ１０等への電力の供給を停止して電力消費を軽減するが、ＳｏＣ１０には電力が供給されなくなるので、ＣＰＵ１１は動作を停止し、ＳＲＡＭ１２はデータを保持できなくなる。つまり、ＳＲＡＭ１２に保持されているデータは消失する。また、通常時（スタンバイモードでの動作中）では、Ｌｉｎｕｘに搭載される機能を使用できるが、省電力モードに移行するタイミングでは、使用できる機能に制約があるので、情報を記録するための制御（マルチコアの場合は排他制御）が複雑になる。この省電力モードへの移行時（遷移中）に実行される処理について図３に示すフローチャートを用いて説明する。
【００３１】
省電力モードへの移行時に実行される処理では、どの段階まで移行処理が済んだのかを把握しやすいように、１つの移行処理が終了する度に履歴（ログ）を記録する。そのために、ＣＰＵ１１は、省電力モードへ移行するための所定のプログラムの実行を開始すると、ログの記録先をＮＶＲＡＭ６からＳＲＡＭ１２に切り替えると共にＷＤＴ１３におけるタイマカウントをスタートする（ステップ１０１）。そして、以上の処理が終了すると、その処理内容が記述されたログをＳＲＡＭ１２に書き込む（ステップ１０２）。
【００３２】
その後、デバイス毎に当該デバイスの現在の状態等を収集し、その収集した情報をログとしてＳＲＡＭ１２に書き込む。すなわち、ＣＰＵ１１は、一のデバイスに関する情報を取得し、当該デバイスへの電力供給を停止する処理を含む移行処理を実施すると（ステップ１０３−１〜ｎ）、その実施した移行処理に関するログをＳＲＡＭ１２に書き込む（ステップ１０４−１〜ｎ）。ログとして記録される情報には、当該デバイスの電源オフの正常完了の旨や次に移行処理が実行されるデバイスを特定する情報等が含まれる。
【００３３】
全てのデバイスに対し、上記移行処理とログの書き込みが終了すると、ＣＰＵ１１は、ＳＲＡＭ１２に書き込まれたログを一括して、ＳＰＩバス２１を介してＮＶＲＡＭ６に転送することで書き込み保存する（ステップ１０５）。パラレルインターフェースと異なり、ＳＰＩバス２１を介するデータ転送の場合は、複数回のＲｅａｄ／Ｗｒｉｔｅ命令が必要になるかもしれない。ただ、本実施の形態では、全てのデバイスを電源オフの状態にしており、マルチコアの場合、他のＣＰＵも停止している状態である。したがって、排他制御を考慮する必要がないのでＮＶＲＡＭ６への書込制御を単純化できる。
【００３４】
続いて、省電力モードからスタンバイモードに復帰する際に実行される復帰処理について図４に示すフローチャートを用いて説明する。
【００３５】
復帰処理では、基本的には省電力モードへの移行時処理とは逆の順序で処理を行うことで復帰させればよい。すなわち、ＣＰＵ１１は、スタンバイモードへ復帰するための所定のプログラムの実行を開始すると、復帰処理の実行が開始された旨のログをＳＲＡＭ１２に書き込む（ステップ１１１）。
【００３６】
その後、ＣＰＵ１１は、デバイス毎に当該デバイスの電源をオンにしていくことで電力の供給を開始させるなどの復帰処理を実施すると（ステップ１１２−１〜ｎ）、その実施した復帰処理に関するログをＳＲＡＭ１２に書き込む（ステップ１１３−１〜ｎ）。
【００３７】
全てのデバイスに対して上記復帰処理とログの書き込みが終了し、ＮＶＲＡＭ６に電力が供給されることでログが記録できる状態になると、ＣＰＵ１１は、ＳＲＡＭ１２に書き込まれたログを一括して、ＳＰＩバス２１を介してＮＶＲＡＭ６に転送することで書き込み保存する（ステップ１１４）。そして、ＣＰＵ１１は、ログの記録先をＳＲＡＭ１２からＮＶＲＡＭ６に切り替えると共にＷＤＴ１３におけるタイマカウントをストップする（ステップ１１５）。
【００３８】
以上が省電力モードへの移行及び省電力モードからの復帰が正常に終了した場合であるが、ここで、省電力モードへの遷移中に不具合が発生した場合における処理について図５及び図６に示すフローチャートを用いて説明する。なお、図３と同じ処理には同じ符号を付け、説明を適宜省略する。
【００３９】
まず、ログの記録先をＳＲＡＭ１２に切り替え、ＷＤＴ１３におけるタイマカウントをスタートし（ステップ１０１）、その内容のログをＳＲＡＭ１２に書込保存する（ステップ１０２）。そして、各デバイスに対する省電力モードの移行処理及びログの書き込みを順番に行う（ステップ１０３−１〜，１０４−１〜）。その処理の過程において移行処理ｘ（１≦ｘ≦ｎ）の実行時に何らかの不具合が発生したことでＣＰＵ１１がハング（フリーズ）したとする（ステップ１０３−ｘ）。「ハング」とは、ＣＰＵ１１が処理を停止もしくは長い時間応答しない状態になったことをいう。
【００４０】
ＣＰＵ１１がハングすると、ＷＤＴ１３におけるタイマをリセットできなくなるため、タイマは、いずれタイムアップし、これによりＣＰＵ１１がリセットされる（ステップ１０６）。ＣＰＵ１１は、リセットされると即座に復帰する。ところで、コンピュータでは、ＣＰＵ１１がリセットされた理由を特定することが可能である。よって、図６に示すように、ＣＰＵ１１がリセットされたのがＷＤＴ１３のタイムアップによるものである場合（ステップ１２１でＹ）、ＣＰＵ１１は、ＳＲＡＭ１２に書き込まれたログを一括して、ＳＰＩバス２１を介してＮＶＲＡＭ６に転送することで書込保存する（ステップ１０５）。前述したように、ＣＰＵ１１がリセットされても、ＳＲＡＭ１２はリセットされずに継続して電力が供給されるため、ＳＲＡＭ１２に保持されているデータは消失しない。このため、ＮＶＲＡＭ６へデータ転送は可能である。
【００４１】
ここでは、図３に示した最後の移行処理（ステップ１０３−ｎ）に対応するログの書き込み処理（ステップ１０４−ｎ）まで実行できておらず、移行処理ｘ−１までのログがＮＶＲＡＭ６に書き込まれることになる。これにより、ＮＶＲＡＭ６に書き込まれたログを解析することで、移行処理ｘの実行時に不具合が発生したことが特定でき、ログの内容を解析することによって不具合発生の原因を特定できる場合もある。なお、ＣＰＵ１１は、ログのＮＶＲＡＭ６へ書き込みに続けて所定のエラー処理等を実行するが、本実施の形態の要旨ではないので説明を省略する。
【００４２】
一方、ＣＰＵ１１がリセットされたのがＷＤＴ１３のタイムアップによるものでない場合（ステップ１２１でＮ）、ＣＰＵ１１は、通常の起動処理を実行する（ステップ１２２）。
【００４３】
本実施の形態によれば、以上説明したようにＳｏＣ１０に内蔵されているＳＲＡＭ１２を有効利用することによってＮＶＲＡＭ６へのログの書込制御を単純化でき、またログを確実に残すことが可能となる。
【００４４】
なお、本実施の形態においては、ＮＶＲＡＭ６に書き込む情報としてログを例にしたが、ログに限定する必要はない。
【００４５】
また、本実施の形態においては、画像形成装置に内蔵されているコンピュータを例にして説明したが、これに限らず、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）をはじめ、様々な装置に内蔵されるコンピュータに適用することは可能である。
【符号の説明】
【００４６】
１，４  電源、２  電源スイッチ、３  基板、５  システムメモリ、６  ＮＶＲＡＭ、７  ＲＯＭ、８  各種インターフェース（Ｉ／Ｆ）、１０  ＳｏＣ、１１  ＣＰＵ、１２  ＳＲＡＭ、１３  ＷＤＴ、１４  ＳＰＩコントローラ、１５  内部バス、２１  ＳＰＩバス。
【図１】
2018181247.tif 000003
【図２】
2018181247.tif 000004
【図３】
2018181247.tif 000005
【図４】
2018181247.tif 000006
【図５】
2018181247.tif 000007
【図６】
2018181247.tif 000008