特許第6953211号(P6953211)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許6953211情報処理装置及び情報処理装置の制御方法
<>
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000002
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000003
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000004
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000005
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000006
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000007
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000008
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000009
  • 特許6953211-情報処理装置及び情報処理装置の制御方法 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6953211
(24)【登録日】2021年10月1日
(45)【発行日】2021年10月27日
(54)【発明の名称】情報処理装置及び情報処理装置の制御方法
(51)【国際特許分類】
   B41J 29/38 20060101AFI20211018BHJP
   B41J 29/46 20060101ALI20211018BHJP
   H04N 1/00 20060101ALI20211018BHJP
   G06F 1/32 20190101ALI20211018BHJP
   G06F 1/26 20060101ALI20211018BHJP
   G06F 21/64 20130101ALI20211018BHJP
【FI】
   B41J29/38 104
   B41J29/38 501
   B41J29/46 Z
   H04N1/00 C
   G06F1/32
   G06F1/26
   G06F21/64
【請求項の数】23
【全頁数】16
(21)【出願番号】特願2017-139143(P2017-139143)
(22)【出願日】2017年7月18日
(65)【公開番号】特開2019-18459(P2019-18459A)
(43)【公開日】2019年2月7日
【審査請求日】2020年7月9日
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【弁理士】
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】合田 圭吾
【審査官】 佐藤 孝幸
(56)【参考文献】
【文献】 特許第5207792(JP,B2)
【文献】 特開2015−152998(JP,A)
【文献】 特開2016−212545(JP,A)
【文献】 特開2012−078952(JP,A)
【文献】 特開2016−126544(JP,A)
【文献】 特開平10−333902(JP,A)
【文献】 特開2005−340879(JP,A)
【文献】 米国特許出願公開第2009/0313487(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B41J 29/38
B41J 29/46
H04N 1/00
G06F 1/32
G06F 1/26
G06F 21/64
(57)【特許請求の範囲】
【請求項1】
プログラムが正常かどうかを判断する第1制御手段と、プログラムを記憶する不揮発性記憶手段と、前記第1制御手段によって正常だと判断されたプログラムを記憶可能な第1揮発性記憶手段と、を含む第1コントローラと、
プログラムを記憶可能な第2揮発性記憶手段と、前記第2揮発性記憶手段に記憶されたプログラムを実行する第2制御手段と、を含む第2コントローラと、を有し、
少なくとも前記第2揮発性記憶手段への電力が停止され、前記第1揮発性記憶手段へ電力が供給される省電力状態と、少なくとも前記第1揮発性記憶手段および前記第2揮発性記憶手段に電力が供給される通常電力状態とを有する、情報処理装置において、
前記通常電力状態から前記省電力状態に移行する際に、前記第1制御手段によって正常と判断された前記第2制御手段によって実行可能なプログラムを、前記第1揮発性記憶手段が記憶してから前記省電力状態に移行することを特徴とする情報処理装置。
【請求項2】
前記省電力状態から前記通常電力状態に復帰する際に、前記第2揮発性記憶手段に電力が供給され、前記第1制御手段は、前記第1揮発性記憶手段に記憶された前記正常と判断された前記第2制御手段によって実行可能な前記プログラムを、前記第2揮発性記憶手段に記憶させることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記通常電力状態から前記省電力状態に移行する際に、前記第1制御手段は、前記不揮発性記憶手段から前記第1揮発性記憶手段に前記第2制御手段によって実行可能な前記プログラムを記憶させてから、該プログラムが正常かどうかを判断することを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
情報を通知する通知手段を有し、
前記第2制御手段によって実行可能な前記プログラムが正常ではないと前記第1制御手段によって判断されることによって、前記通知手段は、該プログラムが正常ではない旨の情報を通知することを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
【請求項5】
ユーザ操作を受け付け可能で且つ情報を表示する表示部を有する操作部をさらに有し
前記操作部が受け付けた前記ユーザ操作に従って、前記省電力状態から前記通常電力状態に移行することを特徴とする請求項1乃至の何れか1項に記載の情報処理装置。
【請求項6】
外部装置からネットワークを介してデータを受信する受信手段をさらに有し
前記受信手段によって所定のデータを受信したことに従って、前記省電力状態から前記通常電力状態に移行することを特徴とする請求項1乃至の何れか1項に記載の情報処理装置。
【請求項7】
前記不揮発性記憶手段は、前記プログラムとは異なるプログラムを記憶し、
前記情報処理装置の起動時に前記第1制御手段は、前記不揮発性記憶手段から前記異なるプログラムを読みだして、前記第1揮発性記憶手段に記憶し、さらに、
前記第1制御手段は、前記異なるプログラムが正常かどうかを判断し、前記異なるプログラムが正常であることによって、前記異なるプログラムを実行することを特徴とする請求項1乃至の何れか1項に記載の情報処理装置。
【請求項8】
前記第1制御手段は、前記通常電力状態から前記省電力状態に移行するに、前記プログラムが正常かどうかを判断するが、前記異なるプログラムが正常かどうかを判断しないことを特徴とする請求項7に記載の情報処理装置。
【請求項9】
前記異なるプログラムは、前記第1コントローラを動作させるためのファームウェアであることを特徴とする請求項7または8に記載の情報処理装置。
【請求項10】
前記プログラムは、前記第2コントローラを動作させるためのファームウェアであることを特徴とする請求項1乃至9の何れか1項に記載の情報処理装置。
【請求項11】
プリンタ装置またはスキャナ装置をさらに有し
前記第2制御手段は、前記プログラムを実行して、前記プリンタ装置または前記スキャナ装置がジョブを実行できる状態にする処理を行うことを特徴とする請求項1乃至10の何れか1項に記載の情報処理装置。
【請求項12】
前記第1制御手段は、電子署名またはハッシュ値を使って前記プログラムが正常かどうかを判断することを特徴とする請求項1乃至11の何れか1項に記載の情報処理装置。
【請求項13】
プログラムが正常かどうかを判断する第1制御手段と、プログラムを記憶する不揮発性記憶手段と、前記第1制御手段によって正常だと判断されたプログラムを記憶可能な第1揮発性記憶手段と、を含む第1コントローラと、
プログラムを記憶可能な第2揮発性記憶手段と、前記第2揮発性記憶手段に記憶されたプログラムを実行する第2制御手段と、を含む第2コントローラと、を有し、
少なくとも前記第2揮発性記憶手段への電力が停止され、前記第1揮発性記憶手段へ電力が供給される省電力状態と、少なくとも前記第1揮発性記憶手段および前記第2揮発性記憶手段に電力が供給される通常電力状態とを有する、情報処理装置の制御方法において、
前記通常電力状態から前記省電力状態に移行する際に、前記第1制御手段によって正常と判断された前記第2制御手段によって実行可能なプログラムを、前記第1揮発性記憶手段が記憶してから前記省電力状態に移行することを特徴とする情報処理装置の制御方法。
【請求項14】
前記省電力状態から前記通常電力状態に復帰する際に、前記第2揮発性記憶手段に電力が供給され、前記第1制御手段は、前記第1揮発性記憶手段に記憶された前記正常と判断された前記第2制御手段によって実行可能な前記プログラムを、前記第2揮発性記憶手段に記憶させることを特徴とする請求項13に記載の情報処理装置の制御方法。
【請求項15】
前記通常電力状態から前記省電力状態に移行する際に、前記第1制御手段は、前記不揮発性記憶手段から前記第1揮発性記憶手段に前記第2制御手段によって実行可能な前記プログラムを記憶させてから、該プログラムが正常かどうかを判断することを特徴とする請求項13または14に記載の情報処理装置の制御方法。
【請求項16】
情報を通知する通知工程を有し、
前記第2制御手段によって実行可能な前記プログラムが正常ではないと前記第1制御手段によって判断されることによって、前記通知工程は、該プログラムが正常ではない旨の情報を通知することを特徴とする請求項13乃至15の何れか1項に記載の情報処理装置の制御方法。
【請求項17】
前記情報処理装置は、ユーザ操作を受け付け可能で且つ情報を表示する表示部を有する操作部をさらに有し
前記操作部が受け付けた前記ユーザ操作に従って、前記省電力状態から前記通常電力状態に移行することを特徴とする請求項13乃至16の何れか1項に記載の情報処理装置の制御方法。
【請求項18】
外部装置からネットワークを介してデータを受信する受信工程を有し
前記受信工程によって所定のデータを受信したことに従って、前記省電力状態から前記通常電力状態に移行することを特徴とする請求項13乃至17の何れか1項に記載の情報処理装置の制御方法。
【請求項19】
前記不揮発性記憶手段は、前記プログラムとは異なるプログラムを記憶し、
前記情報処理装置の起動時に前記第1制御手段は、前記不揮発性記憶手段から前記異なるプログラムを読みだして、前記第1揮発性記憶手段に記憶し、さらに、
前記第1制御手段は、前記異なるプログラムが正常かどうかを判断し、前記異なるプログラムが正常であることによって、前記異なるプログラムを実行することを特徴とする請求項13乃至18の何れか1項に記載の情報処理装置の制御方法。
【請求項20】
前記異なるプログラムは、前記第1コントローラを動作させるためのファームウェアであることを特徴とする請求項19に記載の情報処理装置の制御方法。
【請求項21】
前記プログラムは、前記第2コントローラを動作させるためのファームウェアであることを特徴とする請求項13乃至20の何れか1項に記載の情報処理装置の制御方法。
【請求項22】
前記情報処理装置は、プリンタ装置またはスキャナ装置をさらに有し
前記第2制御手段は、前記プログラムを実行して、前記プリンタ装置または前記スキャナ装置がジョブを実行できる状態にする処理を行うことを特徴とする請求項13乃至21の何れか1項に記載の情報処理装置の制御方法。
【請求項23】
前記第1制御手段は、電子署名またはハッシュ値を使って前記プログラムが正常かどうかを判断することを特徴とする請求項13乃至22の何れか1項に記載の情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置及び情報処理装置の制御方法に関する。
【背景技術】
【0002】
特許文献1には、第1の電力モードと第1の電力モードより消費電力が少ない第2の電力モードとを備える情報処理装置が開示されている。不揮発性のプログラム記憶手段は、第1のプログラム及び第2のプログラムを記憶する。第1の演算手段は、プログラム記憶手段から第1の記憶手段にロードされた第1のプログラムを実行する。第2の演算手段は、プログラム記憶手段から揮発性の第2の記憶手段にロードされた第2のプログラムを実行する。転送手段は、第2の電力モードへ移行するための条件が成立した場合に、第2のプログラムをプログラム記憶手段から第1の記憶手段に転送する。制御手段は、第2の電力モードへ移行するための条件が成立した場合に、第2の記憶手段への電力供給を停止して情報処理装置を第2の電力モードへ移行させる。制御手段は、第1の電力モードへ復帰するための条件が成立した場合に、第2の記憶手段への電力の供給を再開して情報処理装置を第1の電力モードへ移行させる。転送手段は、第1の電力モードへ復帰するための条件が成立した場合に、第1の記憶手段に記憶された第2のプログラムを第2の記憶手段に転送する。第2の演算手段は、第1の電力モードへ復帰するための条件が成立した場合に、第2のプログラムが第2の記憶手段に転送されたことに応じて、第2のプログラムを実行する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第5207792号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、特許文献1の情報処理装置には、以下の課題がある。第2の電力モードの間に、悪意のある第三者が、不揮発性のプログラム記憶手段を情報処理装置から抜き出し、改ざんされた第2のプログラムを不揮発性のプログラム記憶手段に書き込んだ状態で再度、情報処理装置に装着する可能性がある。この場合、第2の電力モードから第1の電力モードに移行し、さらに、第1の電力モードから第2の電力モードに移行すると、転送手段は、改ざんされた第2のプログラムをプログラム記憶手段から第1の記憶手段に転送する。その後、第2の電力モードから第1の電力モードに移行すると、転送手段は、第1の記憶手段に記憶された改ざんされた第2のプログラムを第2の記憶手段に転送し、第2の演算手段は、第2の記憶手段に記憶された改ざんされた第2のプログラムを実行してしまう。
【0005】
本発明の目的は、電力状態から通常電力状態に移行するときに、不正なプログラムの実行を防止することができる情報処理装置及び情報処理装置の制御方法を提供することである。
【課題を解決するための手段】
【0006】
本発明の情報処理装置は、プログラムが正常かどうかを判断する第1制御手段と、プログラムを記憶する不揮発性記憶手段と、前記第1制御手段によって正常だと判断されたプログラムを記憶可能な前記第1揮発性記憶手段と、を含む第1コントローラと、プログラムを記憶可能な第2揮発性記憶手段と、前記第2揮発性記憶手段に記憶されたプログラムを実行する第2制御手段と、を含む第2コントローラと、を有し、少なくとも前記第2揮発性記憶手段への電力が停止され、前記第1揮発性記憶手段へ電力が供給される省電力状態と、少なくとも前記第1揮発性記憶手段および前記第2揮発性記憶手段に電力が供給される通常電力状態とを有する、情報処理装置において、前記通常電力状態から前記省電力状態に移行する際に、前記第1制御手段によって正常と判断された前記第2制御手段によって実行可能なプログラムを、前記第1揮発性記憶手段が記憶してから前記省電力状態に移行する
【発明の効果】
【0007】
本発明によれば、電力状態から通常電力状態に移行するときに、不正なプログラムの実行を防止することができる。
【図面の簡単な説明】
【0008】
図1】画像形成システムの構成例を示すブロック図である。
図2】コントローラの構成例を示すブロック図である。
図3】画像形成装置のファームウェアの配置を示す図である。
図4】画像形成装置のメモリの構成例を示す図である。
図5】画像形成装置の起動動作を示すフローチャートである。
図6】画像形成装置の省電力状態への移行動作を示すフローチャートである。
図7】画像形成装置の通常状態への復帰動作を示すフローチャートである。
図8】ファームウェア異常検知時の画面例を示す図である。
図9】省電力状態における画像形成装置の通電状態を示す図である。
【発明を実施するための形態】
【0009】
図1は、本発明の実施形態による画像形成システム10の構成例を示すブロック図である。画像形成システム10は、情報処理システムであり、画像形成装置1と、LAN7と、コンピュータ8とを有する。画像形成装置1は、情報処理装置であり、スキャナ装置2と、コントローラ3と、プリンタ装置4と、操作部5と、ハードディスク装置6とを有する。スキャナ装置2は、原稿から光学的に画像を読み取り、原稿をデジタル画像に変換する。プリンタ装置4は、デジタル画像を紙デバイスに印刷する。操作部5は、画像形成装置1の操作を行うための操作部である。ハードディスク装置6は、デジタル画像や制御プログラム等を記憶する不揮発性記憶装置である。コントローラ3は、スキャナ装置2、プリンタ装置4、操作部5及びハードディスク装置6を制御することにより、画像形成装置1上でジョブを実行する制御装置である。画像形成装置1は、LAN7経由の外部のコンピュータ8に対して、デジタル画像を入出力し、ジョブの発行や機器の指示等を行うことができる。
【0010】
スキャナ装置2は、原稿給紙ユニット21と、スキャナユニット22とを有する。原稿給紙ユニット21は、複数の原稿を自動的に一枚ずつスキャナユニット22に逐次給紙するDFユニットである。スキャナユニット22は、原稿を光学スキャンし、原稿をデジタル画像に変換し、変換したデジタル画像をコントローラ3に出力する。
【0011】
プリンタ装置4は、マーキングユニット41と、給紙ユニット42と、排紙ユニット43とを有する。給紙ユニット42は、複数の紙を一枚ずつマーキングユニット41に逐次給紙する。マーキングユニット41は、給紙された紙にデジタル画像を印刷する。排紙ユニット43は、印刷後の紙を排紙する。
【0012】
操作部5は、ユーザが画像形成装置1に画像複写等の動作を指示したり、画像形成装置1の各種情報をユーザに提示したりするための、操作ボタン及び液晶画面等の表示パネルを有する。
【0013】
図2は、図1のコントローラ3の構成例を示すブロック図である。コントローラ3は、メインコントローラ310と、サブコントローラ320と、バスブリッジ330と、電源制御回路331と、電源ユニット340と、SSD(ソリッドステートドライブ)314とを有する。
【0014】
メインコントローラ310は、メインCPU311、内部バス312、メインCPUメモリ313、ROM315、ディスクコントローラ316、ネットワークインターフェース317、操作部インターフェース318及びセキュリティチップ319を有する。メインコントローラ310は、汎用的なCPUシステムである。メインCPU311は、メインコントローラ310の全体を制御する処理手段である。メインCPUメモリ313は、メインCPU311が使用する揮発性記憶手段である。ROM315は、読み取り専用メモリである。ディスクコントローラ316は、ハードディスク装置6及びSSD314を制御する。ネットワークインターフェース317は、LAN7に接続される。操作部インターフェース318は、操作部5に接続される。セキュリティチップ319は、電子署名を検査するための鍵情報を内部に保持し、画像形成装置1のファームウェアの電子署名を検査する機能を有する検査手段である。
【0015】
サブコントローラ320は、サブCPU321、内部バス322、サブCPUメモリ323、スキャナインターフェース324、プリンタインターフェース325及び画像処理プロセッサ326を有する。サブCPU321は、サブコントローラ320の全体を制御する処理手段である。サブCPUメモリ323は、サブCPU321が使用する揮発性記憶手段である。スキャナインターフェース324は、スキャナ装置2に接続される。プリンタインターフェース325は、プリンタ装置4に接続される。画像処理プロセッサ326は、リアルタイムデジタル画像処理を行う。バスブリッジ330は、メインコントローラ310の内部バス312と、サブコントローラ320の内部バス322とを接続する。
【0016】
図3は、図2のSSD314及びROM315の記憶内容を示す図である。SSD314及びROM315は、不揮発性記憶手段である。SSD314は、メインCPUファームウェア351と、電子署名353と、サブCPUファームウェア352と、電子署名354とを記憶する。メインCPUファームウェア351は、メインコントローラ310を動作させるためのプログラムである。メインCPU311は、SSD314に記憶されているメインCPUファームウェア351をメインCPUメモリ313に展開し、メインCPUメモリ313に記憶されたメインCPUファームウェア351を実行する。サブCPUファームウェア352は、サブコントローラ320を動作させるためのプログラムであり、サブCPUメモリ323に展開される。サブCPU321は、サブCPUメモリ323に記憶されたサブCPUファームウェア352を実行する。
【0017】
電子署名353は、メインCPUファームウェア351が正常(真正)であることを検査するための情報である。電子署名354は、サブCPUファームウェア352が正常であることを検査するための情報である。セキュリティチップ319は、電子著名353を基にメインCPUファームウェア351が正常であることを検査し、電子著名354を基にサブCPUファームウェア352が正常であることを検査する。
【0018】
ROM315は、BIOS361を記憶する。BIOS361は、画像形成装置1の電源がオンされた直後に、最初にメインCPU311により実行される初期プログラムである。SSD314に記憶されているファームウェア351,352及び電子署名353,354は、ファームウェアアップデート等により書き換えることが可能である。これに対し、ROM315に記憶されているBIOS361は、書き換えることができない。
【0019】
図2のメインCPUメモリ313及びサブCPUメモリ323は、揮発性のDRAMであり、画像形成装置1の電源がオフになっている間は記憶内容を保持できない。このため、メインCPUファームウェア351とサブCPUファームウェア352は、不揮発性のSSD314に記憶されている。画像形成装置1の電源がオンになった際に、メインCPUファームウェア351は、SSD314からメインCPUメモリ313にロードされ、サブCPUファームウェア352は、SSD314からサブCPUメモリ323にロードされる。メインCPU311は、メインCPUメモリ313にロードされたメインCPUファームウェア351を実行する。サブCPU321は、サブCPUメモリ323にロードされたサブCPUファームウェア352を実行する。
【0020】
図4(a)は、メインCPUメモリ313の領域を示す図である。メインCPUメモリ313は、メインCPUファームウェア領域371と、画像メモリ領域372とを有する。メインCPUファームウェア領域371は、SSD314からロードされたメインCPUファームウェア351を記憶するための領域である。メインCPU311は、メインCPUファームウェア領域371のメインCPUファームウェア351を実行する。画像メモリ領域372は、ジョブ実行中に画像データを一時的に記憶するための領域である。
【0021】
図4(b)は、サブCPUメモリ323の領域を示す図である。サブCPUメモリ323は、サブCPUファームウェア領域373と、画像メモリ領域374とを有する。サブCPUファームウェア領域373は、SSD314からロードされたサブCPUファームウェア352を記憶するための領域である。サブCPU321は、サブCPUファームウェア領域373のサブCPUファームウェア352を実行する。画像メモリ領域374は、ジョブ実行中に画像データを一時的に記憶するための領域である。
【0022】
図2において、電源制御回路331は、画像形成装置1の電力状態を制御するための電気回路である。電源ユニット340は、AC電源電圧341を基に画像形成装置1の各部のためのスキャナ・プリンタ装置電源電圧342、省電力状態用電源電圧343及び通常状態用電源電圧344を生成する。スキャナ・プリンタ装置電源電圧342は、電源制御回路331のスイッチ制御により、スキャナ装置2及びプリンタ装置4に供給される。省電力状態用電源電圧343は、電源制御回路331のスイッチ制御により、メインCPUメモリ313、ネットワークインターフェース317及び操作部5に供給される。通常状態用電源電圧344は、電源制御回路331のスイッチ制御により、メインコントローラ310、サブコントローラ320、SSD314及びハードディスク装置6に供給される。図2中の電源制御回路331から伸びる矢印付きのラインは、信号ラインを表し、電源ユニット340から伸びる矢印付きのラインは、電源ラインを表している。図2において、電源ラインと信号ラインの区別は、矢印の形によって示されている。
【0023】
スキャナ・プリンタ装置電源電圧342は、スキャナ装置2及びプリンタ装置4に供給される電源電圧である。省電力状態用電源電圧343は、画像形成装置1が省電力状態にある間、通電が維持される箇所に供給される電源電圧である。通常状態用電源電圧344は、画像形成装置1が通常状態にある場合に通電される箇所に供給される電源電圧である。通常状態用電源電圧344は、画像形成装置1が省電力状態にある場合には通電されない。これらの電源電圧の通電/非通電の状態は、電源制御回路331によって個別に制御される。
【0024】
電源オン信号332は、画像形成装置1の電源がオフである時に、電源制御回路331に対して電源オンを指示するための信号である。電源オン信号332は、操作部5内の電源スイッチをユーザが操作した際に入力される。メインCPUリセット信号333は、メインCPU311のリセット状態を制御する信号である。画像形成装置1が電源オンされた際、電源制御回路331がメインCPUリセット信号333の出力を停止することによりリセット解除となり、メインCPU311が動作を開始する。メインCPU省電力解除信号334は、メインCPU311が省電力状態にある場合に、電源制御回路331がメインCPU311の省電力状態を解除するために出力する信号である。
【0025】
サブCPUリセット信号335は、サブCPU321のリセット状態を制御する信号である。電源制御回路331がサブCPUリセット信号335の出力を停止することによりリセット解除となり、サブCPU321が動作を開始する。電源制御回路331は、メインコントローラ310の内部バス312に接続されており、メインCPU311は電源制御回路331に指示してサブCPUリセット信号335の状態を制御することができる。
【0026】
省電力解除信号336は、画像形成装置1が省電力状態にある際に、省電力状態を解除するよう通知する信号である。省電力解除信号336が電源制御回路331に入力されると、コントローラ3は省電力状態から通常状態への復帰動作を開始する。省電力解除信号336は、操作部5の操作又はネットワークインターフェース317のパケット受信をきっかけとして、電源制御回路331に入力される。具体的には、ユーザが操作部5内のスイッチを操作した場合に、操作部5が省電力解除信号336を出力する。また、ネットワークインターフェース317は、LAN7からのネットワークパケット受信を検知した場合に、省電力解除信号336を出力する。
【0027】
次に、コントローラ3の動作について、紙メディアへの印刷動作を例に説明する。ネットワークインターフェース317がLAN7から印刷ジョブを受信すると、メインCPU311は、ネットワークインターフェース317を介して受信したデジタル画像データをメインCPUメモリ313内の画像メモリ領域372に格納する。メインCPU311は、デジタル画像データが画像メモリ領域372に一定量もしくは全て格納されたことが確認できると、デジタル画像データをサブCPUメモリ323内の画像メモリ領域374へ転送する。そして、メインCPU311は、サブCPU321に指示して印刷動作を開始させる。
【0028】
サブCPU321は、プリンタインターフェース325を介して、プリンタ装置4に画像出力指示を出力して制御する。サブCPU321は、画像処理プロセッサ326に画像メモリ領域374の画像データの位置を教え、プリンタ装置4からの同期信号に従って画像データを画像処理プロセッサ326とプリンタインターフェース325を介してプリンタ装置4に出力する。それにより、プリンタ装置4は、紙デバイスにデジタル画像データを印刷する。同様に、サブCPU321は、スキャナ装置2を制御する。
【0029】
図5(a)及び(b)は、画像形成装置1の起動処理の制御方法を示すフローチャートである。図5(a)は、画像形成装置1の起動時にメインCPU311が実行する処理を示すフローチャートである。電源制御回路331は、電源オン信号332が入力された時、画像形成装置1の各部への電源電圧の供給を開始する。具体的には、電源制御回路331は、スキャナ・プリンタ装置電源電圧342、省電力状態用電源電圧343及び通常状態用電源電圧344の全ての電源電圧を通電状態とする。そして、電源制御回路331がメインCPUリセット信号333を制御してメインCPU311をリセット解除すると、メインCPU311が動作を開始し、メインCPU311は図5(a)の処理を実行する。ただし、この時、電源制御回路331は、サブCPU321についてはリセットしたままとしており、まだ動作を開始させないよう制御している。
【0030】
ステップS501において、メインCPU311は、ROM315内に格納された初期プログラムであるBIOS361の実行を開始する。BIOS361は、書き換え不能なROM315に格納されているため、不正なプログラムに書き換えられる危険はない。
【0031】
次に、ステップS502において、メインCPU311は、BIOS361を実行することにより、ディスクコントローラ316を初期化する。そして、メインCPU311は、SSD314を制御して、メインCPUファームウェア351をSSD314からメインCPUメモリ313内のメインCPUファームウェア領域371にロードする。メインCPUメモリ313は、メインCPUファームウェア領域371にメインCPUファームウェア351を記憶する。
【0032】
ロードが完了すると、ステップS503において、メインCPU311は、メインCPUファームウェア領域371内のメインCPUファームウェア351が正常(真正)であるか否かを検査する。具体的には、メインCPU311は、セキュリティチップ319の電子署名検査機能を用いて、電子署名353を基にメインCPUファームウェア351を検査する。
【0033】
次に、ステップS504において、メインCPU311は、メインCPUファームウェア351の電子署名検査の結果に基づいて、メインCPUファームウェア351が正常であるか否かを判定する。メインCPU311は、正常であると判定した場合には、ステップS505に処理を進め、正常でないと判定した場合は、ステップS513に処理を進める。
【0034】
ステップS505において、メインCPU311は、メインCPUファームウェア領域371に記憶されているメインCPUファームウェア351の実行を開始する。次に、ステップS506において、メインCPU311は、メインCPUファームウェア351を実行することにより、メインコントローラ310の各周辺デバイスを初期化する。具体的には、メインCPU311は、ネットワークインターフェース317及び操作部インターフェース318の初期化を実行する。
【0035】
次に、ステップS507において、メインCPU311は、ディスクコントローラ316を介してSSD314を制御し、サブCPUファームウェア352をSSD314からメインCPUメモリ313内の画像メモリ領域372へロードする。画像形成装置1がジョブ実行中である場合を除いて、画像メモリ領域372は、利用されていないので、サブCPUファームウェア352の一時的な格納場所として利用される。
【0036】
ロードが完了すると、ステップS508において、メインCPU311は、画像メモリ領域372内のサブCPUファームウェア352が正常であるか否かを検査する。具体的には、メインCPU311は、セキュリティチップ319の電子署名検査機能を用いて、電子署名354を基にサブCPUファームウェア352を検査する。
【0037】
次に、ステップS509において、メインCPU311は、サブCPUファームウェア352の電子署名検査の結果に基づいて、サブCPUファームウェア352が正常であるか否かを判定する。メインCPU311は、正常であると判定した場合には、ステップS510に処理を進め、正常でないと判定した場合には、ステップS512に処理を進める。
【0038】
ステップS510において、メインCPU311は、サブCPUファームウェア352をメインCPUメモリ313内の画像メモリ領域372からサブCPUメモリ323内のサブCPUファームウェア領域373へ転送する。サブCPUメモリ323は、サブCPUファームウェア領域373にサブCPUファームウェア352を記憶する。次に、ステップS511において、メインCPU311は、電源制御回路331を介してサブCPUリセット信号335を制御し、サブCPU321をリセット解除する。これにより、サブCPU321は、図5(b)の処理を開始する。
【0039】
ステップS513において、メインCPU311は、操作部5にメインCPUファームウェア351が正常でない旨を報知する画面を表示する。より具体的には、メインCPU311は、図8(a)のように、メインCPUファームウェア351が異常であることを示すエラーコードなどを操作部画面に表示する。図8(a)は、異常を報知する画面例である。そして、メインCPU311は、画像形成装置1の起動処理を中断する。
【0040】
ステップS512において、メインCPU311は、操作部5にサブCPUファームウェア352が正常でない旨を報知する画面を表示する。より具体的には、メインCPU311は、図8(b)のように、サブCPUファームウェア352が異常であることを示すエラーコードなどを操作部画面に表示する。図8(b)は、異常を報知する画面例である。そして、メインCPU311は、画像形成装置1の起動処理を中断する。
【0041】
図5(b)は、画像形成装置1の起動時にサブCPU321が実行する処理を示すフローチャートである。図5(a)のステップS511によりサブCPU321のリセットが解除されると、サブCPU321は、図5(b)の処理の実行を開始する。
【0042】
ステップS521において、サブCPU321は、サブCPUファームウェア領域373に記憶されているサブCPUファームウェア352の実行を開始する。このサブCPUファームウェア352は、上記のように、メインCPU311によって事前に正常であることが検査されている。
【0043】
次に、ステップS522において、サブCPU321は、サブコントローラ320内の各周辺デバイスを初期化する。具体的には、サブCPU321は、スキャナインターフェース324、プリンタインターフェース325及び画像処理プロセッサ326の初期化を実行する。
【0044】
次に、ステップS523において、サブCPU321は、プリンタインターフェース325を介して、プリンタ装置4とのネゴシエーションを実行する。次に、ステップS524において、サブCPU321は、スキャナインターフェース324を介して、スキャナ装置2とのネゴシエーションを実行する。
【0045】
次に、ステップS525において、サブCPU321は、プリンタ装置4がジョブ実行可能となるための準備が完了したかどうかを判定する。ステップS523でのネゴシエーションの後、プリンタ装置4は、各種の調整動作を実行しており、サブCPU321は、ジョブ実行のためにはこの調整動作の完了を待つ必要がある。サブCPU321は、プリンタ装置4の準備が完了したかどうかをプリンタインターフェース325を介して知ることができるので、プリンタ装置4の準備が完了するまでステップS525の処理を繰り返す。サブCPU321は、プリンタ装置4の準備が完了したと判定した場合には、ステップS526に処理を進める。
【0046】
ステップS526において、サブCPU321は、同様に、スキャナ装置2についてもジョブ実行可能となる準備が完了したかどうかを判定する。サブCPU321は、スキャナ装置2の準備が完了するまでステップS526の処理を繰り返す。サブCPU321がスキャナ装置2の準備が完了したと判定した場合には、画像形成装置1の起動処理は完了である。
【0047】
画像形成装置1の起動時に、メインCPU311は、メインCPUファームウェア351の電子署名353及びサブCPUファームウェア352の電子署名354を検査し、正常であると判定した場合のみ、サブCPU321が図5(b)の起動処理を実行する。これにより、画像形成装置1の起動時に、メインCPU311及びサブCPU321が不正なファームウェアを実行しないことを保証でき、安全性を確保することができる。
【0048】
なお、本実施形態では、メインCPUファームウェア351及びサブCPUファームウェア352が不正でないことを電子署名技術により検査しているが、この構成は一例である。事前にメインCPUファームウェア351及びサブCPUファームウェア352のハッシュ値を書き換え困難な不揮発性記憶媒体に保存しておいてもよい。その場合、起動時に計算したメインCPUファームウェア351及びサブCPUファームウェア352のハッシュ値と比較する方法などによる検査でもよい。
【0049】
図6は、画像形成装置1が通常状態(第1の電力モード)から省電力状態(第2の電力モード)への移行時にメインCPU311が実行する処理を示すフローチャートである。画像形成装置1は、通常状態から省電力状態への移行条件を満たす場合に、図6の処理を実行する。例えば、画像形成装置1は、所定の時間以上の間、ジョブを実行しなかった場合、図6の処理を実行し、通常状態から省電力状態へ移行し、電力を節減する。
【0050】
まず、ステップS601において、メインCPU311は、ディスクコントローラ316を介してSSD314を制御し、サブCPUファームウェア352をSSD314からメインCPUメモリ313内の画像メモリ領域372へロードする。このサブCPUファームウェア352は、後で画像形成装置1を省電力状態から通常状態へ復帰させる際に利用される。メインCPU311の省電力状態への移行処理実行時、画像形成装置1はジョブを実行していないため、画像メモリ領域372は利用されておらず、サブCPUファームウェア352の一時的な格納場所として利用される。
【0051】
ロードが完了すると、ステップS602において、メインCPU311は、画像メモリ領域372内のサブCPUファームウェア352が正常(真正)であるか否かを検査する。具体的には、メインCPU311は、セキュリティチップ319の電子署名検査機能を用いて、電子署名354を基にサブCPUファームウェア352を検査する。
【0052】
次に、ステップS603において、メインCPU311は、サブCPUファームウェア352の電子署名検査の結果に基づいて、サブCPUファームウェア352が正常であるか否かを判定する。メインCPU311は、正常であると判定した場合には、ステップS604に処理を進め、正常でないと判定した場合には、ステップS605に処理を進める。
【0053】
ステップS604において、メインCPU311は、電源制御回路331を制御して画像形成装置1を省電力状態へ移行させる。電源制御回路331は、スキャナ・プリンタ装置電源電圧342及び通常状態用電源電圧344の通電を停止し、省電力状態用電源電圧343の通電を維持する。これにより、画像形成装置1は、省電力状態へ移行する。
【0054】
図9は、省電力状態における画像形成装置1の各部の通電状態を示す図である。電源制御回路331は、省電力状態用電源電圧343をメインCPUメモリ313、ネットワークインターフェース317及び操作部5に供給する。そして、電源制御回路331は、省電力状態用電源電圧343をメインCPU311、サブCPU321、サブCPUメモリ323及びSSD314等に供給しない。メインCPUメモリ313、ネットワークインターフェース317、操作部5、電源制御回路331及び電源ユニット340が通電状態である。その他は、非通電状態である。画像形成装置1が省電力状態である間、メインCPUメモリ313は、通電が維持されており、画像メモリ領域372内のサブCPUファームウェア352を保持する。
【0055】
図6のステップS605において、メインCPU311は、図8(b)のように、操作部5にサブCPUファームウェア352が正常でない旨を報知する画面を表示する。そして、メインCPU311は、画像形成装置1の省電力状態への移行処理を中断する。
【0056】
画像形成装置1は、図6の処理により、通常状態から省電力状態へ移行する。メインCPU311は、SSD314のサブCPUファームウェア352が正常でない場合には、省電力状態への移行をとりやめる。これにより、画像形成装置1の省電力状態から通常状態への復帰時に、不正なサブCPUファームウェア352がサブCPU321により実行されることを防止できる。
【0057】
図7(a)及び(b)は、画像形成装置1の省電力状態から通常状態への復帰時の処理を示すフローチャートである。図7(a)は、メインCPU311の通常状態への復帰処理を示すフローチャートである。画像形成装置1は、省電力状態から通常状態への移行条件を満たす場合には、図7(a)及び(b)の処理を実行する。例えば、ユーザが操作部5を操作した場合、又はネットワークインターフェース317がパケット(信号)を受信した場合、電源制御回路331は、省電力解除信号336を入力する。すると、電源制御回路331は、画像形成装置1の各部にスキャナ・プリンタ装置電源電圧342及び通常状態用電源電圧344を供給し、メインCPU311へメインCPU省電力解除信号334を出力し、メインCPU311の動作を再開させる。具体的には、電源制御回路331は、メインCPU311、メインCPUメモリ313、サブCPU321、サブCPUメモリ323及びSSD314等に通常状態用電源電圧344を供給する。動作を再開したCPU311は、図7(a)の処理を実行する。
【0058】
ステップS701において、メインCPU311は、メインCPUファームウェア領域371内のメインCPUファームウェア351の実行を再開する。画像形成装置1が省電力状態である間も、メインCPUメモリ313は通電されており、記憶内容を保持している。メインCPU311が実行を再開するメインCPUファームウェア351は、画像形成装置1の起動時に図5(a)のステップS503において検査されたものである。
【0059】
次に、ステップS702において、メインCPU311は、画像メモリ領域372内のサブCPUファームウェア352をサブCPUメモリ323内のサブCPUファームウェア領域373へ転送する。画像形成装置1が省電力状態である間、サブCPUメモリ323は、通電が切られているので、記憶内容を失っている。このため、再度、サブコントローラ320を動作状態にするため、メインCPU311は、サブCPUメモリ323にサブCPUファームウェア352を転送する必要がある。転送するサブCPUファームウェア352は、省電力状態への移行時に図6のステップS602で検査されたものである。
【0060】
仮に、メインCPU311が、通常状態への復帰時に、SSD314からメインCPUメモリ313にサブCPUファームウェア352をロードし、メインCPUメモリ313からサブCPUメモリ323にサブCPUファームウェア352を転送することができる。しかし、その場合、画像形成装置1は、省電力状態から通常状態への復帰時間が長くなってしまう。
【0061】
本実施形態によれば、メインCPU311は、図6の省電力状態への移行時に、サブCPUファームウェア352をSSD314からメインCPUメモリ313へロードする。そして、図7(a)の通常状態への復帰時には、メインCPU311は、サブCPUファームウェア352をメインCPUメモリ313からサブCPUメモリ323へ転送を行う。これにより、画像処理装置1は、省電力状態から通常状態への復帰時間を短縮することができる。
【0062】
次に、ステップS703において、メインCPU311は、電源制御回路331を介してサブCPUリセット信号335を制御し、サブCPU321をリセット解除する。これにより、サブCPU321は、図7(b)の処理を開始する。
【0063】
図7(b)は、省電力状態から通常状態への復帰時にサブCPU321が実行する処理を示すフローチャートである。図7(a)のステップS703においてリセット解除されたサブCPU321は、図7(b)の処理の実行を開始する。サブCPU321は、ステップS711〜S716の処理を行う。ステップS711〜S716の処理は、図5(b)のステップS521〜S526の処理と同じであるので、その説明を省略する。図7(a)及び(b)の処理により、画像形成装置1は、省電力状態から通常状態へ復帰する。
【0064】
以上のように、画像形成装置1の省電力状態から通常状態への復帰時に、サブCPU321が、検査により不正でないことが確認済みのサブCPUファームウェア352を実行することができる。これにより、画像形成装置1の起動時だけでなく、省電力状態から通常状態への復帰時においても、サブCPU321が不正なサブCPUファームウェア352を実行することを防止でき、画像形成装置1のセキュリティを向上させることができる。
【0065】
また、メインCPU311が、省電力状態への移行時に事前に、サブCPUファームウェア352の検査を行っておくことにより、不正なサブCPUファームウェア352の実行を防止でき、省電力状態から通常状態への復帰に要する時間を短縮することができる。これにより、画像形成装置1が省電力状態から通常状態への復帰の利便性が低下しないので、画像形成装置1のセキュリティと利便性とを両立することができる。また、電源制御回路331は、省電力状態では、サブコントローラ320への電源電圧の供給を停止し、消費電力を低減する。
【0066】
なお、本実施形態では、メインCPUファームウェア351及びサブCPUファームウェア352は、SSD314に格納する場合を例に説明したが、これに限定されず、ハードディスク装置6など他の不揮発性記憶媒体に格納してもよい。また、メインCPUファームウェア351とサブCPUファームウェア352は、別々の不揮発性記憶媒体に格納してもよい。
【0067】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0068】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0069】
311 メインCPU、313 メインCPUメモリ、314 SSD、319 セキュリティチップ、321 サブCPU、323 サブCPUメモリ、331 電源制御回路
図1
図2
図3
図4
図5
図6
図7
図8
図9