(57)【要約】【課題】電力モードの移行時間を短くしつつ、不正なプログラムの実行を防止することができる情報処理装置を提供することを課題とする。【解決手段】第１の電力モードから第２の電力モードへの移行条件を満たす場合には、不揮発性記憶手段から第１の揮発性記憶手段に第２のプログラムをロードし、ロードされた第２のプログラムが真正であるか否かを検査し、第２のプログラムが真正である場合には、第１の揮発性記憶手段への電源電圧の供給を維持し、第２の揮発性記憶手段への電源電圧の供給を停止し、第２の電力モードから第１の電力モードへの移行条件を満たす場合には、第１の揮発性記憶手段への電源電圧の供給を維持し、第２の揮発性記憶手段への電源電圧の供給を開始し、第１の揮発性記憶手段から第２の揮発性記憶手段に第２のプログラムを転送し、第２の処理手段は、第２の揮発性記憶手段に記憶されている第２のプログラムを実行する。【選択図】図６
2019018459.tif 000002
【特許請求の範囲】
【請求項１】
第１のプログラムと第２のプログラムを記憶する不揮発性記憶手段と、
前記不揮発性記憶手段からロードされた前記第１のプログラムを記憶する第１の揮発性記憶手段と、
前記第１の揮発性記憶手段に記憶されている前記第１のプログラムを実行する第１の処理手段と、
前記不揮発性記憶手段からロードされた前記第２のプログラムを記憶する第２の揮発性記憶手段と、
前記第２の揮発性記憶手段に記憶されている前記第２のプログラムを実行する第２の処理手段と、
第１の電力モードでは、前記第１の揮発性記憶手段と前記第２の揮発性記憶手段に電源電圧を供給し、第２の電力モードでは、前記第１の揮発性記憶手段に電源電圧を供給し、前記第２の揮発性記憶手段に電源電圧を供給しない電源制御手段と、
前記第２のプログラムを検査する検査手段とを有し、
前記第１の電力モードから前記第２の電力モードへの移行条件を満たす場合には、前記第１の処理手段は、前記不揮発性記憶手段から前記第１の揮発性記憶手段に前記第２のプログラムをロードし、前記検査手段は、前記ロードされた第２のプログラムが真正であるか否かを検査し、前記電源制御手段は、前記第２のプログラムが真正である場合には、前記第１の揮発性記憶手段への電源電圧の供給を維持し、前記第２の揮発性記憶手段への電源電圧の供給を停止し、
前記第２の電力モードから前記第１の電力モードへの移行条件を満たす場合には、前記電源制御手段は、前記第１の揮発性記憶手段への電源電圧の供給を維持し、前記第２の揮発性記憶手段への電源電圧の供給を開始し、前記第１の処理手段は、前記第１の揮発性記憶手段から前記第２の揮発性記憶手段に前記第２のプログラムを転送し、前記第２の処理手段は、前記第２の揮発性記憶手段に記憶されている前記第２のプログラムを実行することを特徴とする情報処理装置。
【請求項２】
前記検査手段は、電子署名またはハッシュ値を基に前記第２のプログラムが真正であるか否かを検査することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１の処理手段は、前記不揮発性記憶手段から前記第１の揮発性記憶手段に前記第１のプログラムをロードし、
前記検査手段は、前記ロードされた第１のプログラムが真正であるか否かを検査し、
前記第１の処理手段は、前記第１のプログラムが真正である場合には、前記第１の揮発性記憶手段に記憶されている前記第１のプログラムを実行することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第１の揮発性記憶手段は、第１の領域と第２の領域を有し、
前記第１の処理手段は、前記不揮発性記憶手段から前記第１の揮発性記憶手段の前記第１の領域に前記第１のプログラムをロードし、前記不揮発性記憶手段から前記第１の揮発性記憶手段の前記第２の領域に前記第２のプログラムをロードし、画像データを前記第２の領域に格納することを特徴とする請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第１の処理手段は、前記第２のプログラムが真正でない場合には、前記第２のプログラムが真正でない旨を報知することを特徴とする請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第１の処理手段は、前記第１のプログラムが真正でない場合には、前記第１のプログラムが真正でない旨を報知し、前記第２のプログラムが真正でない場合には、前記第２のプログラムが真正でない旨を報知することを特徴とする請求項３に記載の情報処理装置。
【請求項７】
前記電源制御手段は、前記第１の電力モードでは、前記不揮発性記憶手段、前記第１の揮発性記憶手段、前記第１の処理手段、前記第２の揮発性記憶手段および前記第２の処理手段に電源電圧を供給し、前記第２の電力モードでは、前記第１の揮発性記憶手段に電源電圧を供給し、前記不揮発性記憶手段、前記第１の処理手段、前記第２の揮発性記憶手段および前記第２の処理手段に電源電圧を供給しないことを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記第２の処理手段は、プリンタ装置またはスキャナ装置を制御することを特徴とする請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項９】
前記第１の電力モードから前記第２の電力モードへの移行条件は、前記情報処理装置が所定の時間以上の間、ジョブを実行しないことであることを特徴とする請求項１〜８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記第２の電力モードから前記第１の電力モードへの移行条件は、操作手段が操作されたこと、またはインターフェースが信号を受信したことであることを特徴とする請求項１〜９のいずれか１項に記載の情報処理装置。
【請求項１１】
第１のプログラムと第２のプログラムを記憶する不揮発性記憶手段と、
前記不揮発性記憶手段からロードされた前記第１のプログラムを記憶する第１の揮発性記憶手段と、
前記第１の揮発性記憶手段に記憶されている前記第１のプログラムを実行する第１の処理手段と、
前記不揮発性記憶手段からロードされた前記第２のプログラムを記憶する第２の揮発性記憶手段と、
前記第２の揮発性記憶手段に記憶されている前記第２のプログラムを実行する第２の処理手段と、
第１の電力モードでは、前記第１の揮発性記憶手段と前記第２の揮発性記憶手段に電源電圧を供給し、第２の電力モードでは、前記第１の揮発性記憶手段に電源電圧を供給し、前記第２の揮発性記憶手段に電源電圧を供給しない電源制御手段と、
前記第２のプログラムを検査する検査手段とを有する情報処理装置の制御方法であって、
前記第１の電力モードから前記第２の電力モードへの移行条件を満たす場合には、前記第１の処理手段が、前記不揮発性記憶手段から前記第１の揮発性記憶手段に前記第２のプログラムをロードするステップと、
前記検査手段が、前記ロードされた第２のプログラムが真正であるか否かを検査するステップと、
前記電源制御手段が、前記第２のプログラムが真正である場合には、前記第１の揮発性記憶手段への電源電圧の供給を維持し、前記第２の揮発性記憶手段への電源電圧の供給を停止するステップと、
前記第２の電力モードから前記第１の電力モードへの移行条件を満たす場合には、前記電源制御手段が、前記第１の揮発性記憶手段への電源電圧の供給を維持し、前記第２の揮発性記憶手段への電源電圧の供給を開始するステップと、
前記第１の処理手段が、前記第１の揮発性記憶手段から前記第２の揮発性記憶手段に前記第２のプログラムを転送するステップと、
前記第２の処理手段が、前記第２の揮発性記憶手段に記憶されている前記第２のプログラムを実行するステップと
を有することを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理装置の制御方法に関する。
【背景技術】
【０００２】
特許文献１には、第１の電力モードと第１の電力モードより消費電力が少ない第２の電力モードとを備える情報処理装置が開示されている。不揮発性のプログラム記憶手段は、第１のプログラム及び第２のプログラムを記憶する。第１の演算手段は、プログラム記憶手段から第１の記憶手段にロードされた第１のプログラムを実行する。第２の演算手段は、プログラム記憶手段から揮発性の第２の記憶手段にロードされた第２のプログラムを実行する。転送手段は、第２の電力モードへ移行するための条件が成立した場合に、第２のプログラムをプログラム記憶手段から第１の記憶手段に転送する。制御手段は、第２の電力モードへ移行するための条件が成立した場合に、第２の記憶手段への電力供給を停止して情報処理装置を第２の電力モードへ移行させる。制御手段は、第１の電力モードへ復帰するための条件が成立した場合に、第２の記憶手段への電力の供給を再開して情報処理装置を第１の電力モードへ移行させる。転送手段は、第１の電力モードへ復帰するための条件が成立した場合に、第１の記憶手段に記憶された第２のプログラムを第２の記憶手段に転送する。第２の演算手段は、第１の電力モードへ復帰するための条件が成立した場合に、第２のプログラムが第２の記憶手段に転送されたことに応じて、第２のプログラムを実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５２０７７９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１の情報処理装置には、以下の課題がある。第２の電力モードの間に、悪意のある第三者が、不揮発性のプログラム記憶手段を情報処理装置から抜き出し、改ざんされた第２のプログラムを不揮発性のプログラム記憶手段に書き込んだ状態で再度、情報処理装置に装着する可能性がある。この場合、第２の電力モードから第１の電力モードに移行し、さらに、第１の電力モードから第２の電力モードに移行すると、転送手段は、改ざんされた第２のプログラムをプログラム記憶手段から第１の記憶手段に転送する。その後、第２の電力モードから第１の電力モードに移行すると、転送手段は、第１の記憶手段に記憶された改ざんされた第２のプログラムを第２の記憶手段に転送し、第２の演算手段は、第２の記憶手段に記憶された改ざんされた第２のプログラムを実行してしまう。
【０００５】
本発明の目的は、第２の電力モードから第１の電力モードへの移行時間を短くしつつ、不正なプログラムの実行を防止することができる情報処理装置及び情報処理装置の制御方法を提供することである。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、第１のプログラムと第２のプログラムを記憶する不揮発性記憶手段と、前記不揮発性記憶手段からロードされた前記第１のプログラムを記憶する第１の揮発性記憶手段と、前記第１の揮発性記憶手段に記憶されている前記第１のプログラムを実行する第１の処理手段と、前記不揮発性記憶手段からロードされた前記第２のプログラムを記憶する第２の揮発性記憶手段と、前記第２の揮発性記憶手段に記憶されている前記第２のプログラムを実行する第２の処理手段と、第１の電力モードでは、前記第１の揮発性記憶手段と前記第２の揮発性記憶手段に電源電圧を供給し、第２の電力モードでは、前記第１の揮発性記憶手段に電源電圧を供給し、前記第２の揮発性記憶手段に電源電圧を供給しない電源制御手段と、前記第２のプログラムを検査する検査手段とを有し、前記第１の電力モードから前記第２の電力モードへの移行条件を満たす場合には、前記第１の処理手段は、前記不揮発性記憶手段から前記第１の揮発性記憶手段に前記第２のプログラムをロードし、前記検査手段は、前記ロードされた第２のプログラムが真正であるか否かを検査し、前記電源制御手段は、前記第２のプログラムが真正である場合には、前記第１の揮発性記憶手段への電源電圧の供給を維持し、前記第２の揮発性記憶手段への電源電圧の供給を停止し、前記第２の電力モードから前記第１の電力モードへの移行条件を満たす場合には、前記電源制御手段は、前記第１の揮発性記憶手段への電源電圧の供給を維持し、前記第２の揮発性記憶手段への電源電圧の供給を開始し、前記第１の処理手段は、前記第１の揮発性記憶手段から前記第２の揮発性記憶手段に前記第２のプログラムを転送し、前記第２の処理手段は、前記第２の揮発性記憶手段に記憶されている前記第２のプログラムを実行する。
【発明の効果】
【０００７】
本発明によれば、第２の電力モードから第１の電力モードへの移行時間を短くしつつ、不正な第２のプログラムの実行を防止することができる。
【図面の簡単な説明】
【０００８】
【図１】画像形成システムの構成例を示すブロック図である。
【図２】コントローラの構成例を示すブロック図である。
【図３】画像形成装置のファームウェアの配置を示す図である。
【図４】画像形成装置のメモリの構成例を示す図である。
【図５】画像形成装置の起動動作を示すフローチャートである。
【図６】画像形成装置の省電力状態への移行動作を示すフローチャートである。
【図７】画像形成装置の通常状態への復帰動作を示すフローチャートである。
【図８】ファームウェア異常検知時の画面例を示す図である。
【図９】省電力状態における画像形成装置の通電状態を示す図である。
【発明を実施するための形態】
【０００９】
図１は、本発明の実施形態による画像形成システム１０の構成例を示すブロック図である。画像形成システム１０は、情報処理システムであり、画像形成装置１と、ＬＡＮ７と、コンピュータ８とを有する。画像形成装置１は、情報処理装置であり、スキャナ装置２と、コントローラ３と、プリンタ装置４と、操作部５と、ハードディスク装置６とを有する。スキャナ装置２は、原稿から光学的に画像を読み取り、原稿をデジタル画像に変換する。プリンタ装置４は、デジタル画像を紙デバイスに印刷する。操作部５は、画像形成装置１の操作を行うための操作部である。ハードディスク装置６は、デジタル画像や制御プログラム等を記憶する不揮発性記憶装置である。コントローラ３は、スキャナ装置２、プリンタ装置４、操作部５及びハードディスク装置６を制御することにより、画像形成装置１上でジョブを実行する制御装置である。画像形成装置１は、ＬＡＮ７経由の外部のコンピュータ８に対して、デジタル画像を入出力し、ジョブの発行や機器の指示等を行うことができる。
【００１０】
スキャナ装置２は、原稿給紙ユニット２１と、スキャナユニット２２とを有する。原稿給紙ユニット２１は、複数の原稿を自動的に一枚ずつスキャナユニット２２に逐次給紙するＤＦユニットである。スキャナユニット２２は、原稿を光学スキャンし、原稿をデジタル画像に変換し、変換したデジタル画像をコントローラ３に出力する。
【００１１】
プリンタ装置４は、マーキングユニット４１と、給紙ユニット４２と、排紙ユニット４３とを有する。給紙ユニット４２は、複数の紙を一枚ずつマーキングユニット４１に逐次給紙する。マーキングユニット４１は、給紙された紙にデジタル画像を印刷する。排紙ユニット４３は、印刷後の紙を排紙する。
【００１２】
操作部５は、ユーザが画像形成装置１に画像複写等の動作を指示したり、画像形成装置１の各種情報をユーザに提示したりするための、操作ボタン及び液晶画面等の表示パネルを有する。
【００１３】
図２は、図１のコントローラ３の構成例を示すブロック図である。コントローラ３は、メインコントローラ３１０と、サブコントローラ３２０と、バスブリッジ３３０と、電源制御回路３３１と、電源ユニット３４０と、ＳＳＤ（ソリッドステートドライブ）３１４とを有する。
【００１４】
メインコントローラ３１０は、メインＣＰＵ３１１、内部バス３１２、メインＣＰＵメモリ３１３、ＲＯＭ３１５、ディスクコントローラ３１６、ネットワークインターフェース３１７、操作部インターフェース３１８及びセキュリティチップ３１９を有する。メインコントローラ３１０は、汎用的なＣＰＵシステムである。メインＣＰＵ３１１は、メインコントローラ３１０の全体を制御する処理手段である。メインＣＰＵメモリ３１３は、メインＣＰＵ３１１が使用する揮発性記憶手段である。ＲＯＭ３１５は、読み取り専用メモリである。ディスクコントローラ３１６は、ハードディスク装置６及びＳＳＤ３１４を制御する。ネットワークインターフェース３１７は、ＬＡＮ７に接続される。操作部インターフェース３１８は、操作部５に接続される。セキュリティチップ３１９は、電子署名を検査するための鍵情報を内部に保持し、画像形成装置１のファームウェアの電子署名を検査する機能を有する検査手段である。
【００１５】
サブコントローラ３２０は、サブＣＰＵ３２１、内部バス３２２、サブＣＰＵメモリ３２３、スキャナインターフェース３２４、プリンタインターフェース３２５及び画像処理プロセッサ３２６を有する。サブＣＰＵ３２１は、サブコントローラ３２０の全体を制御する処理手段である。サブＣＰＵメモリ３２３は、サブＣＰＵ３２１が使用する揮発性記憶手段である。スキャナインターフェース３２４は、スキャナ装置２に接続される。プリンタインターフェース３２５は、プリンタ装置４に接続される。画像処理プロセッサ３２６は、リアルタイムデジタル画像処理を行う。バスブリッジ３３０は、メインコントローラ３１０の内部バス３１２と、サブコントローラ３２０の内部バス３２２とを接続する。
【００１６】
図３は、図２のＳＳＤ３１４及びＲＯＭ３１５の記憶内容を示す図である。ＳＳＤ３１４及びＲＯＭ３１５は、不揮発性記憶手段である。ＳＳＤ３１４は、メインＣＰＵファームウェア３５１と、電子署名３５３と、サブＣＰＵファームウェア３５２と、電子署名３５４とを記憶する。メインＣＰＵファームウェア３５１は、メインコントローラ３１０を動作させるためのプログラムである。メインＣＰＵ３１１は、ＳＳＤ３１４に記憶されているメインＣＰＵファームウェア３５１をメインＣＰＵメモリ３１３に展開し、メインＣＰＵメモリ３１３に記憶されたメインＣＰＵファームウェア３５１を実行する。サブＣＰＵファームウェア３５２は、サブコントローラ３２０を動作させるためのプログラムであり、サブＣＰＵメモリ３２３に展開される。サブＣＰＵ３２１は、サブＣＰＵメモリ３２３に記憶されたサブＣＰＵファームウェア３５２を実行する。
【００１７】
電子署名３５３は、メインＣＰＵファームウェア３５１が正常（真正）であることを検査するための情報である。電子署名３５４は、サブＣＰＵファームウェア３５２が正常であることを検査するための情報である。セキュリティチップ３１９は、電子著名３５３を基にメインＣＰＵファームウェア３５１が正常であることを検査し、電子著名３５４を基にサブＣＰＵファームウェア３５２が正常であることを検査する。
【００１８】
ＲＯＭ３１５は、ＢＩＯＳ３６１を記憶する。ＢＩＯＳ３６１は、画像形成装置１の電源がオンされた直後に、最初にメインＣＰＵ３１１により実行される初期プログラムである。ＳＳＤ３１４に記憶されているファームウェア３５１，３５２及び電子署名３５３，３５４は、ファームウェアアップデート等により書き換えることが可能である。これに対し、ＲＯＭ３１５に記憶されているＢＩＯＳ３６１は、書き換えることができない。
【００１９】
図２のメインＣＰＵメモリ３１３及びサブＣＰＵメモリ３２３は、揮発性のＤＲＡＭであり、画像形成装置１の電源がオフになっている間は記憶内容を保持できない。このため、メインＣＰＵファームウェア３５１とサブＣＰＵファームウェア３５２は、不揮発性のＳＳＤ３１４に記憶されている。画像形成装置１の電源がオンになった際に、メインＣＰＵファームウェア３５１は、ＳＳＤ３１４からメインＣＰＵメモリ３１３にロードされ、サブＣＰＵファームウェア３５２は、ＳＳＤ３１４からサブＣＰＵメモリ３２３にロードされる。メインＣＰＵ３１１は、メインＣＰＵメモリ３１３にロードされたメインＣＰＵファームウェア３５１を実行する。サブＣＰＵ３２１は、サブＣＰＵメモリ３２３にロードされたサブＣＰＵファームウェア３５２を実行する。
【００２０】
図４（ａ）は、メインＣＰＵメモリ３１３の領域を示す図である。メインＣＰＵメモリ３１３は、メインＣＰＵファームウェア領域３７１と、画像メモリ領域３７２とを有する。メインＣＰＵファームウェア領域３７１は、ＳＳＤ３１４からロードされたメインＣＰＵファームウェア３５１を記憶するための領域である。メインＣＰＵ３１１は、メインＣＰＵファームウェア領域３７１のメインＣＰＵファームウェア３５１を実行する。画像メモリ領域３７２は、ジョブ実行中に画像データを一時的に記憶するための領域である。
【００２１】
図４（ｂ）は、サブＣＰＵメモリ３２３の領域を示す図である。サブＣＰＵメモリ３２３は、サブＣＰＵファームウェア領域３７３と、画像メモリ領域３７４とを有する。サブＣＰＵファームウェア領域３７３は、ＳＳＤ３１４からロードされたサブＣＰＵファームウェア３５２を記憶するための領域である。サブＣＰＵ３２１は、サブＣＰＵファームウェア領域３７３のサブＣＰＵファームウェア３５２を実行する。画像メモリ領域３７４は、ジョブ実行中に画像データを一時的に記憶するための領域である。
【００２２】
図２において、電源制御回路３３１は、画像形成装置１の電力状態を制御するための電気回路である。電源ユニット３４０は、ＡＣ電源電圧３４１を基に画像形成装置１の各部のためのスキャナ・プリンタ装置電源電圧３４２、省電力状態用電源電圧３４３及び通常状態用電源電圧３４４を生成する。スキャナ・プリンタ装置電源電圧３４２は、電源制御回路３３１のスイッチ制御により、スキャナ装置２及びプリンタ装置４に供給される。省電力状態用電源電圧３４３は、電源制御回路３３１のスイッチ制御により、メインＣＰＵメモリ３１３、ネットワークインターフェース３１７及び操作部５に供給される。通常状態用電源電圧３４４は、電源制御回路３３１のスイッチ制御により、メインコントローラ３１０、サブコントローラ３２０、ＳＳＤ３１４及びハードディスク装置６に供給される。図２中の電源制御回路３３１から伸びる矢印付きのラインは、信号ラインを表し、電源ユニット３４０から伸びる矢印付きのラインは、電源ラインを表している。図２において、電源ラインと信号ラインの区別は、矢印の形によって示されている。
【００２３】
スキャナ・プリンタ装置電源電圧３４２は、スキャナ装置２及びプリンタ装置４に供給される電源電圧である。省電力状態用電源電圧３４３は、画像形成装置１が省電力状態にある間、通電が維持される箇所に供給される電源電圧である。通常状態用電源電圧３４４は、画像形成装置１が通常状態にある場合に通電される箇所に供給される電源電圧である。通常状態用電源電圧３４４は、画像形成装置１が省電力状態にある場合には通電されない。これらの電源電圧の通電／非通電の状態は、電源制御回路３３１によって個別に制御される。
【００２４】
電源オン信号３３２は、画像形成装置１の電源がオフである時に、電源制御回路３３１に対して電源オンを指示するための信号である。電源オン信号３３２は、操作部５内の電源スイッチをユーザが操作した際に入力される。メインＣＰＵリセット信号３３３は、メインＣＰＵ３１１のリセット状態を制御する信号である。画像形成装置１が電源オンされた際、電源制御回路３３１がメインＣＰＵリセット信号３３３の出力を停止することによりリセット解除となり、メインＣＰＵ３１１が動作を開始する。メインＣＰＵ省電力解除信号３３４は、メインＣＰＵ３１１が省電力状態にある場合に、電源制御回路３３１がメインＣＰＵ３１１の省電力状態を解除するために出力する信号である。
【００２５】
サブＣＰＵリセット信号３３５は、サブＣＰＵ３２１のリセット状態を制御する信号である。電源制御回路３３１がサブＣＰＵリセット信号３３５の出力を停止することによりリセット解除となり、サブＣＰＵ３２１が動作を開始する。電源制御回路３３１は、メインコントローラ３１０の内部バス３１２に接続されており、メインＣＰＵ３１１は電源制御回路３３１に指示してサブＣＰＵリセット信号３３５の状態を制御することができる。
【００２６】
省電力解除信号３３６は、画像形成装置１が省電力状態にある際に、省電力状態を解除するよう通知する信号である。省電力解除信号３３６が電源制御回路３３１に入力されると、コントローラ３は省電力状態から通常状態への復帰動作を開始する。省電力解除信号３３６は、操作部５の操作又はネットワークインターフェース３１７のパケット受信をきっかけとして、電源制御回路３３１に入力される。具体的には、ユーザが操作部５内のスイッチを操作した場合に、操作部５が省電力解除信号３３６を出力する。また、ネットワークインターフェース３１７は、ＬＡＮ７からのネットワークパケット受信を検知した場合に、省電力解除信号３３６を出力する。
【００２７】
次に、コントローラ３の動作について、紙メディアへの印刷動作を例に説明する。ネットワークインターフェース３１７がＬＡＮ７から印刷ジョブを受信すると、メインＣＰＵ３１１は、ネットワークインターフェース３１７を介して受信したデジタル画像データをメインＣＰＵメモリ３１３内の画像メモリ領域３７２に格納する。メインＣＰＵ３１１は、デジタル画像データが画像メモリ領域３７２に一定量もしくは全て格納されたことが確認できると、デジタル画像データをサブＣＰＵメモリ３２３内の画像メモリ領域３７４へ転送する。そして、メインＣＰＵ３１１は、サブＣＰＵ３２１に指示して印刷動作を開始させる。
【００２８】
サブＣＰＵ３２１は、プリンタインターフェース３２５を介して、プリンタ装置４に画像出力指示を出力して制御する。サブＣＰＵ３２１は、画像処理プロセッサ３２６に画像メモリ領域３７４の画像データの位置を教え、プリンタ装置４からの同期信号に従って画像データを画像処理プロセッサ３２６とプリンタインターフェース３２５を介してプリンタ装置４に出力する。それにより、プリンタ装置４は、紙デバイスにデジタル画像データを印刷する。同様に、サブＣＰＵ３２１は、スキャナ装置２を制御する。
【００２９】
図５（ａ）及び（ｂ）は、画像形成装置１の起動処理の制御方法を示すフローチャートである。図５（ａ）は、画像形成装置１の起動時にメインＣＰＵ３１１が実行する処理を示すフローチャートである。電源制御回路３３１は、電源オン信号３３２が入力された時、画像形成装置１の各部への電源電圧の供給を開始する。具体的には、電源制御回路３３１は、スキャナ・プリンタ装置電源電圧３４２、省電力状態用電源電圧３４３及び通常状態用電源電圧３４４の全ての電源電圧を通電状態とする。そして、電源制御回路３３１がメインＣＰＵリセット信号３３３を制御してメインＣＰＵ３１１をリセット解除すると、メインＣＰＵ３１１が動作を開始し、メインＣＰＵ３１１は図５（ａ）の処理を実行する。ただし、この時、電源制御回路３３１は、サブＣＰＵ３２１についてはリセットしたままとしており、まだ動作を開始させないよう制御している。
【００３０】
ステップＳ５０１において、メインＣＰＵ３１１は、ＲＯＭ３１５内に格納された初期プログラムであるＢＩＯＳ３６１の実行を開始する。ＢＩＯＳ３６１は、書き換え不能なＲＯＭ３１５に格納されているため、不正なプログラムに書き換えられる危険はない。
【００３１】
次に、ステップＳ５０２において、メインＣＰＵ３１１は、ＢＩＯＳ３６１を実行することにより、ディスクコントローラ３１６を初期化する。そして、メインＣＰＵ３１１は、ＳＳＤ３１４を制御して、メインＣＰＵファームウェア３５１をＳＳＤ３１４からメインＣＰＵメモリ３１３内のメインＣＰＵファームウェア領域３７１にロードする。メインＣＰＵメモリ３１３は、メインＣＰＵファームウェア領域３７１にメインＣＰＵファームウェア３５１を記憶する。
【００３２】
ロードが完了すると、ステップＳ５０３において、メインＣＰＵ３１１は、メインＣＰＵファームウェア領域３７１内のメインＣＰＵファームウェア３５１が正常（真正）であるか否かを検査する。具体的には、メインＣＰＵ３１１は、セキュリティチップ３１９の電子署名検査機能を用いて、電子署名３５３を基にメインＣＰＵファームウェア３５１を検査する。
【００３３】
次に、ステップＳ５０４において、メインＣＰＵ３１１は、メインＣＰＵファームウェア３５１の電子署名検査の結果に基づいて、メインＣＰＵファームウェア３５１が正常であるか否かを判定する。メインＣＰＵ３１１は、正常であると判定した場合には、ステップＳ５０５に処理を進め、正常でないと判定した場合は、ステップＳ５１３に処理を進める。
【００３４】
ステップＳ５０５において、メインＣＰＵ３１１は、メインＣＰＵファームウェア領域３７１に記憶されているメインＣＰＵファームウェア３５１の実行を開始する。次に、ステップＳ５０６において、メインＣＰＵ３１１は、メインＣＰＵファームウェア３５１を実行することにより、メインコントローラ３１０の各周辺デバイスを初期化する。具体的には、メインＣＰＵ３１１は、ネットワークインターフェース３１７及び操作部インターフェース３１８の初期化を実行する。
【００３５】
次に、ステップＳ５０７において、メインＣＰＵ３１１は、ディスクコントローラ３１６を介してＳＳＤ３１４を制御し、サブＣＰＵファームウェア３５２をＳＳＤ３１４からメインＣＰＵメモリ３１３内の画像メモリ領域３７２へロードする。画像形成装置１がジョブ実行中である場合を除いて、画像メモリ領域３７２は、利用されていないので、サブＣＰＵファームウェア３５２の一時的な格納場所として利用される。
【００３６】
ロードが完了すると、ステップＳ５０８において、メインＣＰＵ３１１は、画像メモリ領域３７２内のサブＣＰＵファームウェア３５２が正常であるか否かを検査する。具体的には、メインＣＰＵ３１１は、セキュリティチップ３１９の電子署名検査機能を用いて、電子署名３５４を基にサブＣＰＵファームウェア３５２を検査する。
【００３７】
次に、ステップＳ５０９において、メインＣＰＵ３１１は、サブＣＰＵファームウェア３５２の電子署名検査の結果に基づいて、サブＣＰＵファームウェア３５２が正常であるか否かを判定する。メインＣＰＵ３１１は、正常であると判定した場合には、ステップＳ５１０に処理を進め、正常でないと判定した場合には、ステップＳ５１２に処理を進める。
【００３８】
ステップＳ５１０において、メインＣＰＵ３１１は、サブＣＰＵファームウェア３５２をメインＣＰＵメモリ３１３内の画像メモリ領域３７２からサブＣＰＵメモリ３２３内のサブＣＰＵファームウェア領域３７３へ転送する。サブＣＰＵメモリ３２３は、サブＣＰＵファームウェア領域３７３にサブＣＰＵファームウェア３５２を記憶する。次に、ステップＳ５１１において、メインＣＰＵ３１１は、電源制御回路３３１を介してサブＣＰＵリセット信号３３５を制御し、サブＣＰＵ３２１をリセット解除する。これにより、サブＣＰＵ３２１は、図５（ｂ）の処理を開始する。
【００３９】
ステップＳ５１３において、メインＣＰＵ３１１は、操作部５にメインＣＰＵファームウェア３５１が正常でない旨を報知する画面を表示する。より具体的には、メインＣＰＵ３１１は、図８（ａ）のように、メインＣＰＵファームウェア３５１が異常であることを示すエラーコードなどを操作部画面に表示する。図８（ａ）は、異常を報知する画面例である。そして、メインＣＰＵ３１１は、画像形成装置１の起動処理を中断する。
【００４０】
ステップＳ５１２において、メインＣＰＵ３１１は、操作部５にサブＣＰＵファームウェア３５２が正常でない旨を報知する画面を表示する。より具体的には、メインＣＰＵ３１１は、図８（ｂ）のように、サブＣＰＵファームウェア３５２が異常であることを示すエラーコードなどを操作部画面に表示する。図８（ｂ）は、異常を報知する画面例である。そして、メインＣＰＵ３１１は、画像形成装置１の起動処理を中断する。
【００４１】
図５（ｂ）は、画像形成装置１の起動時にサブＣＰＵ３２１が実行する処理を示すフローチャートである。図５（ａ）のステップＳ５１１によりサブＣＰＵ３２１のリセットが解除されると、サブＣＰＵ３２１は、図５（ｂ）の処理の実行を開始する。
【００４２】
ステップＳ５２１において、サブＣＰＵ３２１は、サブＣＰＵファームウェア領域３７３に記憶されているサブＣＰＵファームウェア３５２の実行を開始する。このサブＣＰＵファームウェア３５２は、上記のように、メインＣＰＵ３１１によって事前に正常であることが検査されている。
【００４３】
次に、ステップＳ５２２において、サブＣＰＵ３２１は、サブコントローラ３２０内の各周辺デバイスを初期化する。具体的には、サブＣＰＵ３２１は、スキャナインターフェース３２４、プリンタインターフェース３２５及び画像処理プロセッサ３２６の初期化を実行する。
【００４４】
次に、ステップＳ５２３において、サブＣＰＵ３２１は、プリンタインターフェース３２５を介して、プリンタ装置４とのネゴシエーションを実行する。次に、ステップＳ５２４において、サブＣＰＵ３２１は、スキャナインターフェース３２４を介して、スキャナ装置２とのネゴシエーションを実行する。
【００４５】
次に、ステップＳ５２５において、サブＣＰＵ３２１は、プリンタ装置４がジョブ実行可能となるための準備が完了したかどうかを判定する。ステップＳ５２３でのネゴシエーションの後、プリンタ装置４は、各種の調整動作を実行しており、サブＣＰＵ３２１は、ジョブ実行のためにはこの調整動作の完了を待つ必要がある。サブＣＰＵ３２１は、プリンタ装置４の準備が完了したかどうかをプリンタインターフェース３２５を介して知ることができるので、プリンタ装置４の準備が完了するまでステップＳ５２５の処理を繰り返す。サブＣＰＵ３２１は、プリンタ装置４の準備が完了したと判定した場合には、ステップＳ５２６に処理を進める。
【００４６】
ステップＳ５２６において、サブＣＰＵ３２１は、同様に、スキャナ装置２についてもジョブ実行可能となる準備が完了したかどうかを判定する。サブＣＰＵ３２１は、スキャナ装置２の準備が完了するまでステップＳ５２６の処理を繰り返す。サブＣＰＵ３２１がスキャナ装置２の準備が完了したと判定した場合には、画像形成装置１の起動処理は完了である。
【００４７】
画像形成装置１の起動時に、メインＣＰＵ３１１は、メインＣＰＵファームウェア３５１の電子署名３５３及びサブＣＰＵファームウェア３５２の電子署名３５４を検査し、正常であると判定した場合のみ、サブＣＰＵ３２１が図５（ｂ）の起動処理を実行する。これにより、画像形成装置１の起動時に、メインＣＰＵ３１１及びサブＣＰＵ３２１が不正なファームウェアを実行しないことを保証でき、安全性を確保することができる。
【００４８】
なお、本実施形態では、メインＣＰＵファームウェア３５１及びサブＣＰＵファームウェア３５２が不正でないことを電子署名技術により検査しているが、この構成は一例である。事前にメインＣＰＵファームウェア３５１及びサブＣＰＵファームウェア３５２のハッシュ値を書き換え困難な不揮発性記憶媒体に保存しておいてもよい。その場合、起動時に計算したメインＣＰＵファームウェア３５１及びサブＣＰＵファームウェア３５２のハッシュ値と比較する方法などによる検査でもよい。
【００４９】
図６は、画像形成装置１が通常状態（第１の電力モード）から省電力状態（第２の電力モード）への移行時にメインＣＰＵ３１１が実行する処理を示すフローチャートである。画像形成装置１は、通常状態から省電力状態への移行条件を満たす場合に、図６の処理を実行する。例えば、画像形成装置１は、所定の時間以上の間、ジョブを実行しなかった場合、図６の処理を実行し、通常状態から省電力状態へ移行し、電力を節減する。
【００５０】
まず、ステップＳ６０１において、メインＣＰＵ３１１は、ディスクコントローラ３１６を介してＳＳＤ３１４を制御し、サブＣＰＵファームウェア３５２をＳＳＤ３１４からメインＣＰＵメモリ３１３内の画像メモリ領域３７２へロードする。このサブＣＰＵファームウェア３５２は、後で画像形成装置１を省電力状態から通常状態へ復帰させる際に利用される。メインＣＰＵ３１１の省電力状態への移行処理実行時、画像形成装置１はジョブを実行していないため、画像メモリ領域３７２は利用されておらず、サブＣＰＵファームウェア３５２の一時的な格納場所として利用される。
【００５１】
ロードが完了すると、ステップＳ６０２において、メインＣＰＵ３１１は、画像メモリ領域３７２内のサブＣＰＵファームウェア３５２が正常（真正）であるか否かを検査する。具体的には、メインＣＰＵ３１１は、セキュリティチップ３１９の電子署名検査機能を用いて、電子署名３５４を基にサブＣＰＵファームウェア３５２を検査する。
【００５２】
次に、ステップＳ６０３において、メインＣＰＵ３１１は、サブＣＰＵファームウェア３５２の電子署名検査の結果に基づいて、サブＣＰＵファームウェア３５２が正常であるか否かを判定する。メインＣＰＵ３１１は、正常であると判定した場合には、ステップＳ６０４に処理を進め、正常でないと判定した場合には、ステップＳ６０５に処理を進める。
【００５３】
ステップＳ６０４において、メインＣＰＵ３１１は、電源制御回路３３１を制御して画像形成装置１を省電力状態へ移行させる。電源制御回路３３１は、スキャナ・プリンタ装置電源電圧３４２及び通常状態用電源電圧３４４の通電を停止し、省電力状態用電源電圧３４３の通電を維持する。これにより、画像形成装置１は、省電力状態へ移行する。
【００５４】
図９は、省電力状態における画像形成装置１の各部の通電状態を示す図である。電源制御回路３３１は、省電力状態用電源電圧３４３をメインＣＰＵメモリ３１３、ネットワークインターフェース３１７及び操作部５に供給する。そして、電源制御回路３３１は、省電力状態用電源電圧３４３をメインＣＰＵ３１１、サブＣＰＵ３２１、サブＣＰＵメモリ３２３及びＳＳＤ３１４等に供給しない。メインＣＰＵメモリ３１３、ネットワークインターフェース３１７、操作部５、電源制御回路３３１及び電源ユニット３４０が通電状態である。その他は、非通電状態である。画像形成装置１が省電力状態である間、メインＣＰＵメモリ３１３は、通電が維持されており、画像メモリ領域３７２内のサブＣＰＵファームウェア３５２を保持する。
【００５５】
図６のステップＳ６０５において、メインＣＰＵ３１１は、図８（ｂ）のように、操作部５にサブＣＰＵファームウェア３５２が正常でない旨を報知する画面を表示する。そして、メインＣＰＵ３１１は、画像形成装置１の省電力状態への移行処理を中断する。
【００５６】
画像形成装置１は、図６の処理により、通常状態から省電力状態へ移行する。メインＣＰＵ３１１は、ＳＳＤ３１４のサブＣＰＵファームウェア３５２が正常でない場合には、省電力状態への移行をとりやめる。これにより、画像形成装置１の省電力状態から通常状態への復帰時に、不正なサブＣＰＵファームウェア３５２がサブＣＰＵ３２１により実行されることを防止できる。
【００５７】
図７（ａ）及び（ｂ）は、画像形成装置１の省電力状態から通常状態への復帰時の処理を示すフローチャートである。図７（ａ）は、メインＣＰＵ３１１の通常状態への復帰処理を示すフローチャートである。画像形成装置１は、省電力状態から通常状態への移行条件を満たす場合には、図７（ａ）及び（ｂ）の処理を実行する。例えば、ユーザが操作部５を操作した場合、又はネットワークインターフェース３１７がパケット（信号）を受信した場合、電源制御回路３３１は、省電力解除信号３３６を入力する。すると、電源制御回路３３１は、画像形成装置１の各部にスキャナ・プリンタ装置電源電圧３４２及び通常状態用電源電圧３４４を供給し、メインＣＰＵ３１１へメインＣＰＵ省電力解除信号３３４を出力し、メインＣＰＵ３１１の動作を再開させる。具体的には、電源制御回路３３１は、メインＣＰＵ３１１、メインＣＰＵメモリ３１３、サブＣＰＵ３２１、サブＣＰＵメモリ３２３及びＳＳＤ３１４等に通常状態用電源電圧３４４を供給する。動作を再開したＣＰＵ３１１は、図７（ａ）の処理を実行する。
【００５８】
ステップＳ７０１において、メインＣＰＵ３１１は、メインＣＰＵファームウェア領域３７１内のメインＣＰＵファームウェア３５１の実行を再開する。画像形成装置１が省電力状態である間も、メインＣＰＵメモリ３１３は通電されており、記憶内容を保持している。メインＣＰＵ３１１が実行を再開するメインＣＰＵファームウェア３５１は、画像形成装置１の起動時に図５（ａ）のステップＳ５０３において検査されたものである。
【００５９】
次に、ステップＳ７０２において、メインＣＰＵ３１１は、画像メモリ領域３７２内のサブＣＰＵファームウェア３５２をサブＣＰＵメモリ３２３内のサブＣＰＵファームウェア領域３７３へ転送する。画像形成装置１が省電力状態である間、サブＣＰＵメモリ３２３は、通電が切られているので、記憶内容を失っている。このため、再度、サブコントローラ３２０を動作状態にするため、メインＣＰＵ３１１は、サブＣＰＵメモリ３２３にサブＣＰＵファームウェア３５２を転送する必要がある。転送するサブＣＰＵファームウェア３５２は、省電力状態への移行時に図６のステップＳ６０２で検査されたものである。
【００６０】
仮に、メインＣＰＵ３１１が、通常状態への復帰時に、ＳＳＤ３１４からメインＣＰＵメモリ３１３にサブＣＰＵファームウェア３５２をロードし、メインＣＰＵメモリ３１３からサブＣＰＵメモリ３２３にサブＣＰＵファームウェア３５２を転送することができる。しかし、その場合、画像形成装置１は、省電力状態から通常状態への復帰時間が長くなってしまう。
【００６１】
本実施形態によれば、メインＣＰＵ３１１は、図６の省電力状態への移行時に、サブＣＰＵファームウェア３５２をＳＳＤ３１４からメインＣＰＵメモリ３１３へロードする。そして、図７（ａ）の通常状態への復帰時には、メインＣＰＵ３１１は、サブＣＰＵファームウェア３５２をメインＣＰＵメモリ３１３からサブＣＰＵメモリ３２３へ転送を行う。これにより、画像処理装置１は、省電力状態から通常状態への復帰時間を短縮することができる。
【００６２】
次に、ステップＳ７０３において、メインＣＰＵ３１１は、電源制御回路３３１を介してサブＣＰＵリセット信号３３５を制御し、サブＣＰＵ３２１をリセット解除する。これにより、サブＣＰＵ３２１は、図７（ｂ）の処理を開始する。
【００６３】
図７（ｂ）は、省電力状態から通常状態への復帰時にサブＣＰＵ３２１が実行する処理を示すフローチャートである。図７（ａ）のステップＳ７０３においてリセット解除されたサブＣＰＵ３２１は、図７（ｂ）の処理の実行を開始する。サブＣＰＵ３２１は、ステップＳ７１１〜Ｓ７１６の処理を行う。ステップＳ７１１〜Ｓ７１６の処理は、図５（ｂ）のステップＳ５２１〜Ｓ５２６の処理と同じであるので、その説明を省略する。図７（ａ）及び（ｂ）の処理により、画像形成装置１は、省電力状態から通常状態へ復帰する。
【００６４】
以上のように、画像形成装置１の省電力状態から通常状態への復帰時に、サブＣＰＵ３２１が、検査により不正でないことが確認済みのサブＣＰＵファームウェア３５２を実行することができる。これにより、画像形成装置１の起動時だけでなく、省電力状態から通常状態への復帰時においても、サブＣＰＵ３２１が不正なサブＣＰＵファームウェア３５２を実行することを防止でき、画像形成装置１のセキュリティを向上させることができる。
【００６５】
また、メインＣＰＵ３１１が、省電力状態への移行時に事前に、サブＣＰＵファームウェア３５２の検査を行っておくことにより、不正なサブＣＰＵファームウェア３５２の実行を防止でき、省電力状態から通常状態への復帰に要する時間を短縮することができる。これにより、画像形成装置１が省電力状態から通常状態への復帰の利便性が低下しないので、画像形成装置１のセキュリティと利便性とを両立することができる。また、電源制御回路３３１は、省電力状態では、サブコントローラ３２０への電源電圧の供給を停止し、消費電力を低減する。
【００６６】
なお、本実施形態では、メインＣＰＵファームウェア３５１及びサブＣＰＵファームウェア３５２は、ＳＳＤ３１４に格納する場合を例に説明したが、これに限定されず、ハードディスク装置６など他の不揮発性記憶媒体に格納してもよい。また、メインＣＰＵファームウェア３５１とサブＣＰＵファームウェア３５２は、別々の不揮発性記憶媒体に格納してもよい。
【００６７】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００６８】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００６９】
３１１  メインＣＰＵ、３１３  メインＣＰＵメモリ、３１４  ＳＳＤ、３１９  セキュリティチップ、３２１  サブＣＰＵ、３２３  サブＣＰＵメモリ、３３１  電源制御回路
【図１】
2019018459.tif 000003
【図２】
2019018459.tif 000004
【図３】
2019018459.tif 000005
【図４】
2019018459.tif 000006
【図５】
2019018459.tif 000007
【図６】
2019018459.tif 000008
【図７】
2019018459.tif 000009
【図８】
2019018459.tif 000010
【図９】
2019018459.tif 000011