JP2012173909A - 情報処理装置におけるデータ記憶処理方法及び情報処理装置 - Google Patents
情報処理装置におけるデータ記憶処理方法及び情報処理装置 Download PDFInfo
- Publication number
- JP2012173909A JP2012173909A JP2011034268A JP2011034268A JP2012173909A JP 2012173909 A JP2012173909 A JP 2012173909A JP 2011034268 A JP2011034268 A JP 2011034268A JP 2011034268 A JP2011034268 A JP 2011034268A JP 2012173909 A JP2012173909 A JP 2012173909A
- Authority
- JP
- Japan
- Prior art keywords
- power
- data
- writing
- control means
- interruption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【課題】意図しない電源遮断時に、一の制御手段がデータを不揮発性メモリーに書き込む際に、他の制御手段が不揮発性メモリーに対する処理中であっても、保証データを不揮発性メモリーに保存することができる情報処理装置及情報処理装置におけるデータ管理方法を提供する。
【解決手段】意図しない電源遮断が検出されると、第1システムは第2システムを停止させる(S1)。フラッシュメモリーがビジー状態であれば(S4で肯定判定)、サスペンドコマンドを発行して、第2システムの処理を中断させる(S6)。フラッシュメモリーが動作中でなくなり処理の中断が確認されると(S7で否定判定)、第1システムは保証データを書き込む(S8)。
【選択図】図3
【解決手段】意図しない電源遮断が検出されると、第1システムは第2システムを停止させる(S1)。フラッシュメモリーがビジー状態であれば(S4で肯定判定)、サスペンドコマンドを発行して、第2システムの処理を中断させる(S6)。フラッシュメモリーが動作中でなくなり処理の中断が確認されると(S7で否定判定)、第1システムは保証データを書き込む(S8)。
【選択図】図3
Description
本発明は、複数の制御手段が同一の不揮発性メモリーにデータを書き込む構成であり、特に電源遮断時に一の制御手段が次回起動したときに使用するためのデータ(保証データ)を、不揮発性メモリーに書き込む処理を行う情報処理装置におけるデータ記憶処理方法及び情報処理装置に関する。
例えばフラッシュメモリー等の不揮発性メモリーを備えた情報処理装置では、前回の電源オフ(電源遮断)時に不揮発性メモリーに書き込んだデータを、次の電源オン(電源投入)時に不揮発性メモリーから読み出して使用する。そして、情報処理装置の稼動中に更新などされたデータを、電源オフ時に不揮発性メモリーに書き込む。例えば特許文献1、2には、電源オフ時に不揮発性メモリーにこの種の更新データの1つとしてインクカートリッジの消耗情報(インク残量データ)を書き込む印刷装置(プリンター)などの情報処理装置が開示されている。
ところで、フラッシュメモリーなどの不揮発性メモリーの記憶領域は、所定記憶容量を有する複数のブロックに分割されており、ブロック1つ分がデータ消去の最小単位となっている。また、フラッシュメモリーを構成する記憶素子の構成上、ブロックをデータ消去により初期状態にした後でないと、任意データを書き込むことができない。このため、更新データを同じブロックに書き込むときには、旧いデータを消去する必要がある。しかし、消去処理は、書込処理や読出処理に比べ長時間を要する(例えば特許文献3)。
また、複合機などの情報処理装置では、複数(例えば2個)のCPUを備えるものが知られている(例えば特許文献4)。さらに特許文献5には、複数のCPUが不揮発性メモリーを共有する構成が開示されている。例えば情報処理装置において、複数のCPU(制御手段)が、消去処理が必要なフラッシュメモリー等の不揮発性メモリーにアクセスする情報処理装置において、電源遮断時に、一つ(メイン)のCPUが更新データを不揮発性メモリーに書き込む構成が考えられる。
しかしながら、複数のCPUがフラッシュメモリー等の不揮発性メモリーにアクセスして書込処理や消去処理を行う情報処理装置では、電源遮断時に一のCPUが次回電源オン時に保証されるべきデータ(保証データ)を不揮発性メモリーに書き込もうとした際に、他のCPUが不揮発性メモリーに対して処理中の場合がある。この場合、一のCPUはデータを書き込む処理を行うことができず、他のCPUが処理を終えるまで待たなければならない。しかし、停電やコンセント抜け等の意図しない電源遮断が発生した場合、二次電池の電力が極短時間(例えば100ミリ秒〜1秒未満の範囲内の値)しか保持されないので、一のCPUがデータを保存できずに情報処理装置の電源が遮断されてしまうという問題があった。この場合、次の電源オン時に情報処理装置は、最新のデータを使用することができず、旧いデータを使用することになる。例えばプリンターの場合、次の電源オン以降のインク残量のデータが間違ったものとなり、インク残量がデータ上はあると認識しているため、印刷が開始されるが、その印刷途中でインク切れが発生するなどの問題が発生する。
本発明は、上記課題に鑑みてなされたものであり、その目的の一つは、意図しない電源遮断時に、一の制御手段が保証データを不揮発性メモリーに書き込む際に、他の制御手段が不揮発性メモリーに対する処理中であっても、保証データを不揮発性メモリーに保存することができる情報処理装置におけるデータ記憶処理方法及び情報処理装置を提供することにある。
上記目的の一つを達成するために、本発明の態様の一つは、不揮発性メモリーと、前記不揮発性メモリーに対するデータの書込みと消去の処理を行う複数の制御手段と、を備え、前記複数の制御手段のうち一の制御手段が電源遮断検出時に当該電源遮断後の次の電源投入時に使用するための保証データを不揮発性メモリーに書き込む処理を行うとともに、電源遮断検出時に他の制御手段による保証データの不揮発性メモリーへの書き込み処理が行われない情報処理装置におけるデータ記憶制御方法であって、情報処理装置の電源が遮断されたことを検出する電源遮断検出ステップと、前記電源遮断検出時に、前記不揮発性メモリーに対する前記他の制御手段の処理を停止させる停止ステップと、前記他の制御手段の処理により指示された前記不揮発性メモリーの動作を中断させる中断ステップと、前記中断ステップの後に前記一の制御手段が前記保証データを前記不揮発性メモリーに書き込む書込みステップと、を備えたことを要旨とする。
本発明の一実施態様によれば、電源遮断検出ステップで情報処理装置の電源の遮断が検出されると、この電源遮断検出時には停止ステップが開始され、不揮発性メモリーに対する他の制御手段の処理中の処理が停止される。さらに中断ステップにおいて、他の制御手段の処理により指示された不揮発性メモリーの動作が中断される。書込みステップでは、一の制御手段が、他の制御手段による処理の停止及び不揮発性メモリーの動作の中断後、保証データを不揮発性メモリーに書き込む。よって、情報処理装置の電源遮断時に、他の制御手段が不揮発性メモリーに対する処理中であっても、その処理を停止させるとともにその処理により指示された不揮発性メモリーの動作を中断させて、一の制御手段が保証データを不揮発性メモリーに書き込むことができる。従って、情報処理装置の停電やコンセント抜け等の意図しない電源遮断時に、保証データが不揮発性メモリーに保存されない保存ミスの頻度を低減することができる。
本発明の態様の一つである情報処理装置におけるデータ記憶処理方法では、前記停止ステップと前記中断ステップとの間に、前記不揮発性メモリーが動作中であるか否かを判定する動作判定ステップを更に備え、前記動作判定ステップで動作中と判定された場合に、前記待機ステップを開始し、一方、動作中でないと判定された場合は前記中断ステップを行うことなく、前記書込みステップを行うことが好ましい。
本発明の一実施態様によれば、動作判定ステップで、不揮発性メモリーが動作中であるか否かが判定される。動作中と判定された場合、中断ステップが行われ、その後、書込みステップが行われる。一方、動作中でないと判定された場合は、中断ステップが行われることなく、書込みステップが行われる。よって、不揮発性メモリーが動作中であって必要な場合に限り、中断ステップを行えばよく、無駄な中断ステップの実施を回避できる。
本発明の態様の一つである情報処理装置におけるデータ記憶処理方法では、前記動作判定ステップと前記中断ステップとの間に、前記他の制御手段による前記不揮発性メモリーに対する書込み処理を終えるまで待機する待機ステップを、更に備え、前記待機ステップの後に前記中断ステップを開始することが好ましい。
本発明の一実施態様によれば、電源遮断検出(電源遮断検出ステップ)により、停止ステップが行われた後、動作判定ステップで、不揮発性メモリーが動作中であると判定された場合、待機ステップにおいて、他の制御手段による不揮発性メモリーに対する書込み処理を終えるまで待機する。この待機の後、中断ステップが行われる。このため、不揮発性メモリーによるデータの書き込みを終えてから、保証データの書込みを開始することができる。よって、他の制御手段の処理で指示されたデータの書込みができ、かつ保証データも保存できる。あるいは、処理中の書込み処理を中断させると、その後、書込みが禁止される構成の不揮発性メモリーであっても、書込み処理が中断されないので、その後、保証データを不揮発性メモリーに書き込むことができる。さらに、不揮発性メモリーが動作中であって必要な場合に限り、待機ステップ及び中断ステップを行えばよいので、無駄に待機ステップ及び中断ステップを行うことを回避できる。
本発明の態様の一つである情報処理装置におけるデータ記憶処理方法では、前記停止ステップと前記中断ステップとの間に、前記他の制御手段による前記不揮発性メモリーに対する書込み処理を終えるまで待機する待機ステップを、更に備え、前記待機ステップの後に前記中断ステップを開始することが好ましい。
本発明の一実施態様によれば、電源遮断検出(電源遮断検出ステップ)により、停止ステップが行われた後、待機ステップにおいて、他の制御手段による不揮発性メモリーに対する書込み処理を終えるまで待機する。この待機の後、中断ステップが行われる。このため、不揮発性メモリーによるデータの書き込みを終えてから、保証データの書込みを開始することができる。よって、他の制御手段の処理で指示されたデータの書込みができ、かつ保証データも保存できる。あるいは、処理中の書込み処理を中断させると、その後、書込みが禁止される構成の不揮発性メモリーであっても、書込み処理が中断されないので、その後、保証データを不揮発性メモリーに書き込むことができる。
本発明の態様の一つである情報処理装置におけるデータ記憶処理方法では、前記停止ステップと前記書込みステップとの間に、前記不揮発性メモリーのチップセレクトを解除する解除ステップを、更に備えていることが好ましい。
本発明の一実施態様によれば、停止ステップの後、解除ステップにおいて、不揮発性メモリーのチップセレクトが解除される。よって、他の制御手段の処理が書込み処理であってこの書込み処理が停止された場合でも、書込みステップにおいて、一の制御手段が保証データの書込み処理を行ったときのコマンドが、データとして不揮発性メモリーに書き込まれる事態を回避できる。
本発明の態様の一つである情報処理装置におけるデータ記憶処理方法では、前記中断ステップの後に、前記不揮発性メモリーの動作が中断されたか否かを判断する中断確認ステップを更に備え、前記中断確認ステップで中断されたと判断されると、前記書込みステップを開始することが好ましい。
本発明の一実施態様によれば、中断ステップの後、中断確認ステップで、不揮発性メモリーの動作が中断されたか否かが判断される。中断されたと判断されると、書込みステップが開始される。よって、不揮発性メモリーの動作が中断処理途中の段階で書込みステップで出した書込みの指示が中断される不都合を回避できる。従って、書込みステップにおける保証データの書込みミスを低減できる。
本発明の態様の一つである情報処理装置におけるデータ記憶処理方法では、前記電源遮断検出ステップは、前記一の制御手段が電源遮断を検出することにより行われ、前記停止ステップは、前記一の制御手段が前記他の制御手段に処理の停止を指示することにより行われることが好ましい。
本発明の一実施態様によれば、電源遮断検出ステップにおいて、電源遮断を検出した一の制御手段は、停止ステップにおいて、他の制御手段に処理の停止を指示する。よって、一の制御手段は、他の制御手段に処理の停止を指示した後に、中断ステップで不揮発性メモリーに動作の中断を指示できる。例えば、他の制御手段が電源遮断を検出して自身の処理を停止させる構成の場合、その停止タイミングと、一の制御手段による不揮発性メモリーの動作の中断タイミングとが逆転するなど双方のタイミングが不適切になる心配がある。しかし、この一実施態様では、一の制御手段が、停止ステップと中断ステップとを行うので、両ステップを適切なタイミングで行って、他の制御手段の処理の停止及び不揮発性メモリーの動作の中断を適切に行うことができる。
本発明の態様の一つである情報処理装置におけるデータ記憶処理方法では、前記書込みステップの後に、前記中断ステップで中断した処理の続きを開始する再開ステップを、更に備えていることが好ましい。
本発明の一実施態様によれば、書込みステップの後に行われる再開ステップでは、中断ステップで中断した処理の続きが開始される。よって、保証データの書込みを優先しつつ、中断した処理も行うことができる。
本発明の態様の一つは、不揮発性メモリーと、前記不揮発性メモリーに対するデータの書込みと消去の処理を行う複数の制御手段と、を備え、前記複数の制御手段のうち一の制御手段が電源遮断検出時に当該電源遮断後の次の電源投入時に使用するための保証データを不揮発性メモリーに書き込む処理を行うとともに、電源遮断検出時に他の制御手段による保証データの不揮発性メモリーへの書き込み処理が行われない情報処理装置であって、情報処理装置の電源が遮断されたことを検出する電源遮断検出手段と、前記電源遮断検出時に、前記不揮発性メモリーに対する前記他の制御手段の処理を停止させる停止手段と、前記他の制御手段の処理により指示された前記不揮発性メモリーの動作を中断させる中断手段と、前記中断手段による前記動作の中断の後、前記一の制御手段が前記保証データを前記不揮発性メモリーに書き込む書込手段と、を備えたことを要旨とする。本発明の一実施態様によれば、上記情報処理装置におけるデータ記憶処理方法に係る発明と同様の作用効果を得ることができる。
(第1実施形態)
以下、本発明を情報処理装置の一例である複合機に具体化した第1実施形態を、図1〜図4に基づいて説明する。図1に示すように、複合機11は、装置全体の制御を司るコントローラー12、装置内の各部に電力を供給する電源回路13、操作部14、表示部15、スキャンエンジン16、印刷エンジン17、ファクシミリ通信部(以下、「FAX通信部18」という)及びネットワーク通信部19などを備える。
以下、本発明を情報処理装置の一例である複合機に具体化した第1実施形態を、図1〜図4に基づいて説明する。図1に示すように、複合機11は、装置全体の制御を司るコントローラー12、装置内の各部に電力を供給する電源回路13、操作部14、表示部15、スキャンエンジン16、印刷エンジン17、ファクシミリ通信部(以下、「FAX通信部18」という)及びネットワーク通信部19などを備える。
複合機11は、インクジェット式複合型プリンターであって、一台で、スキャン、プリント、コピーの3つの機能を備える。
スキャンエンジン16は、複合機本体に設けられた原稿台(図示省略)にセットされた原稿の画像を読み取る光学式(CCD方式又はCMOS方式)のラインセンサー、ライセンサーを有する読取ヘッドを走査させる動力源のスキャンモーター及びその駆動回路等により構成される。スキャンエンジン16は、コントローラー12からのコマンドに従って駆動し、読取ヘッドの走査中にラインセンサーが読み取った画像信号をコントローラー12へ出力する。コントローラー12はスキャンエンジン16から入力した画像信号を基に画像データを生成する。
スキャンエンジン16は、複合機本体に設けられた原稿台(図示省略)にセットされた原稿の画像を読み取る光学式(CCD方式又はCMOS方式)のラインセンサー、ライセンサーを有する読取ヘッドを走査させる動力源のスキャンモーター及びその駆動回路等により構成される。スキャンエンジン16は、コントローラー12からのコマンドに従って駆動し、読取ヘッドの走査中にラインセンサーが読み取った画像信号をコントローラー12へ出力する。コントローラー12はスキャンエンジン16から入力した画像信号を基に画像データを生成する。
印刷エンジン17は、図示しない用紙(記録媒体)を搬送する搬送機構、搬送機構を駆動する動力源のモーター、搬送される用紙にインク滴を噴射して用紙に文書や画像等の印刷を施すインクジェット式の記録ヘッドなどにより構成される。プリンター部が例えばシリアルプリンターであれば、記録ヘッドを走査させる動力源のモーターも印刷エンジン17に備えられる。印刷エンジン17は、コントローラー12から入力する画像データ及び印刷コマンドに基づいて駆動される。このとき記録ヘッドは画像データのドット(画素)に応じてインク滴を噴射する。なお、記録ヘッドは、インクジェット記録方式以外に、ドットインパクト記録方式や、トナーを用紙に定着させて印刷するレーザー記録方式でもよい。
複合機11には、印刷エンジン17を構成する記録ヘッドへインク(トナーを含む)(流体)を供給するインク供給源であるインクカートリッジ20が装着される。インクカートリッジ20の本体には、インク種やインク残量などの情報を記憶する記憶素子21(メモリー付き集積回路)が実装されている。コントローラー12は、記憶素子21に対してデータの読み出し及び書き込みが可能になっており、例えば電源オフ時に記憶素子21に更新されたインク残量等を含むデータを書き込む。
コピーの場合、コントローラー12は、スキャンエンジン16からの画像信号を基に生成した原稿の画像データを印刷コマンドと共に印刷エンジン17に送る。そして、印刷エンジン17を構成する記録ヘッドが原稿の画像データを基にインク滴を噴射し、用紙に原稿の画像を印刷(コピー印刷)する。つまり、複合機11は、コントローラー12がスキャンエンジン16及び印刷エンジン17を駆動制御し、スキャンエンジン16で読み取った原稿の画像データを基に印刷エンジン17に原稿の画像を印刷させることにより、原稿の「コピー」を行う。
スキャンの場合、複合機11は、コントローラー12がスキャンエンジン16を駆動して取得した原稿のスキャンデータを、ホスト装置へ転送する。また、複合機11は、不図示のホスト装置から受信した印刷データ、あるいはメモリーカード等の外部記憶媒体から読み込んだ画像データを基に、コントローラー12が印刷エンジン17を駆動制御することにより、用紙に文書や画像を印刷する。
また、FAX通信部18は不図示の電話回線に接続され、電話回線を介した着信を検出可能なリング検出部を備える。コントローラー12は、リング検出部からのリング検出信号の入力により電話回線を介したファックスの着信があることを認知すると、FAX通信部18を接続状態とし、電話回線を介して送られてきたファックスデータを、FAX通信部18を介して受信する。このFAX通信部18は、複合機11からファックスデータを送信する際にも使用される。
ネットワーク通信部19は、家庭内LANや社内LANを構築するため、あるいはインターネットに接続するためのものであり、所定の通信プロトコルに従って通信制御を行う公知の通信インターフェイスである。複合機11は、ネットワーク通信部19を介してネットワーク上の他の通信機器、端末やサーバーとの通信が可能になる。
また、図1に示すように、複合機11には、操作部14の1つとして電源スイッチ14Aが設けられている。ユーザーは電源スイッチ14Aを操作することにより、複合機11の電源をオン/オフする。電源スイッチ14Aは電源回路13に接続されており、電源スイッチ14Aがオン操作された際の電源オン信号と、オフ操作された際の電源オフ信号とが電源回路13に入力される。電源回路13は、電源オフ状態で電源スイッチ14Aが操作された際の電源オン信号を入力すると、複合機11の電源をオンして装置内の各部に所定電圧の電力を供給し、この電源オン状態で電源スイッチ14Aが操作された際の電源オフ信号を入力すると、複合機11の電源をオフして装置内の各部への電力の供給を停止する。
また、図1に示すように、コントローラー12は、コンピューター25及びリセットIC26を備えている。コンピューター25は、コントローラー12が行う各種制御等を司る。リセットIC26は、電源回路13に接続されている。リセットIC26は、電源回路13を監視し、停電やコンセント抜け(電源プラグのコンセントからの抜け)等が原因で、電源回路13に意図しない電源遮断が発生したことを検出する。リセットIC26は、意図しない電源遮断を検出したときには、コンピューター25にリセット信号を出力する。また、コントローラー12には電源回路13と共に二次電池13Aが接続されており、意図しない電源遮断が発生したときには、二次電池13Aの電力により所定時間(例えば10ミリ秒〜1秒未満の所定値)の間だけコンピューター25は動作状態を維持でき、必要なデータを保存する処理などを行うことが可能である。
コンピューター25は、第1CPU31(中央処理装置)、第2CPU32、ASIC33(Application Specific IC(特定用途向けIC))、RAM34及び不揮発性メモリーの一例であるフラッシュメモリー装置35を備えている。各部31〜35はバス36を介して互いに接続されている。第1CPU31は、フラッシュメモリー装置35に記憶されたプログラムを実行することにより、スキャンエンジン16及び印刷エンジン17の駆動制御、ユーザーが操作部14を操作した際の操作信号の受付け、表示部15に複合機11の動作状態や操作信号などに応じた所定の表示内容を表示させる表示制御などを司る。第2CPU32は、フラッシュメモリー装置35に記憶されたプログラムを実行することにより、FAX通信部18及びネットワーク通信部19の制御などを司る。すなわち、本実施形態の複合機11では、スキャン、印刷、コピーなどのメイン動作の制御は第1CPU31が司り、FAX通信及びネットワーク通信などの通信系の制御は第2CPU32が司る。もちろん、各CPU31,32が担当する制御内容等は適宜変更することができる。
ASIC33は、複合機11が入力した画像データ(スキャンデータを含む)を基に、記録ヘッド内のヘッド駆動回路(図示省略)が使用可能なデータ形式であるヘッド制御データを生成する画像処理を行う。ASIC33が生成したヘッド制御データは1回の印刷動作分ずつ記録ヘッドへ転送される。なお、ASIC33を廃止し、第1CPU31が画像処理を行う構成としてもよい。
フラッシュメモリー装置35には、各CPU31,32が実行するためのプログラム(例えばファームウェア)や各種の設定データなどが記憶されている。また、フラッシュメモリー装置35には、電源オフ時に保存されない非保証データNDと、電源オフ時に次回の電源オン時に使用するために保存される保証データADとが記憶される。
ここで、保証データADには、複合機11が印刷を行うことにより更新されるインク残量などの更新情報が含まれる。この更新情報には、インク残量の他、記録ヘッドのクリーニング回数(メンテナンス回数)、リアルタイムクロックの時刻情報などが含まれる。また、本実施形態の保証データADには、更新情報以外に、メカ設定情報も含まれる。このメカ設定情報には、走査型の記録ヘッドの場合にその記録ヘッドを搭載するキャリッジの走査上の基準位置や走査速度に関する情報、搬送機構が用紙を搬送する際の基準位置や搬送速度に関する情報などが含まれる。さらに保証データADには、複合機11が印刷したテストパターンの中から最適な印刷結果であるとユーザーが判断して入力した1つのテストパターンに対応する番号を基に設定された噴射タイミング調整値なども含まれる。なお、保証データADには、搬送系、ヘッド走査系、クリーニング系の各種モーター等の駆動時間や駆動回転数などの稼働履歴情報が含まれてもよい。
本実施形態では、フラッシュメモリー装置35への保証データADの書込みは、第1CPU31が行う。フラッシュメモリー装置35に記憶されたプログラムには、図3にフローチャートで示す電源遮断検出処理ルーチンのプログラムが含まれており、第1CPU31は、停電やコンセント抜け等の意図しない電源遮断検出時にこのプログラムを実行することにより、保証データADのフラッシュメモリー装置35への書込みを行う。
一方、非保証データNDは、複合機11の電源オンから電源オフまでの1回の稼動中においてのみ使用されるデータである。非保証データNDには、各CPU31,32が、制御あるいは処理を行ううえで一時的に取得した各種情報や演算結果等のデータが含まれる。このため、非保証データNDは、次回の電源オン時に使用されることがないので、意図しない電源遮断検出時を除き電源オフの度、あるいは電源オンの度に消去される。
各CPU31,32はフラッシュメモリー装置35にアクセスしてプログラム及び各種設定データを読み出す。例えば所定のプログラムには、各CPU31,32が共通に使用する共通プログラムと、第1CPU31専用の第1専用プログラムと、第2CPU32専用の第2専用プログラムとがある。すなわち、プログラムPRは、第1CPU31が実行すべき共通プログラムと第1専用プログラムとを併せた第1プログラムPR1と、第2CPU32が実行すべき共通プログラムと第2専用のプログラムとを併せた第2プログラムPR2とを含む。なお、プログラムPR1には、第1CPU31を起動させるためのブートプログラム、OS(オペレイティング・システム)用のプログラム、第1CPU31が制御を担当するスキャン、印刷、コピー等の所定動作を行わせるためのファームウェアプログラムなどが含まれる。また、プログラムPR2には、第2CPU32を起動させるためのブートプログラム、OS(オペレイティング・システム)用のプログラム、第2CPU32が制御を担当するFAX、ネットワーク通信等の所定動作を行わせるためのファームウェアプログラムが含まれる。
各CPU31,32は、複合機11の電源オン時にフラッシュメモリー装置35からプログラムPR及びデータを読み出してRAM34に展開する。各CPU31,32は複合機11の稼動中に逐次更新されるデータ(非保証データNDに属するデータ)をRAM34に書き込む。また、第1CPU31は、複合機11の電源オフ時にRAM34の最新の保証データADを読み出してその保証データADをフラッシュメモリー装置35に書き込むことにより、最新の保証データADを電源オフ中においても保存する。
次に、各CPU31,32の機能構成及びフラッシュメモリー装置35の構成を、図2を用いて説明する。
図2では、各CPU31,32が例えばフラッシュメモリー装置35から読み出した所定のプログラムを実行することにより、その内部に構築される機能部分を示している。すなわち、図2に示すように、第1プログラムPR1を実行する第1CPU31により第1システム40が構築され、第2プログラムPR2を実行する第2CPU32により第2システム50が構築される。
図2では、各CPU31,32が例えばフラッシュメモリー装置35から読み出した所定のプログラムを実行することにより、その内部に構築される機能部分を示している。すなわち、図2に示すように、第1プログラムPR1を実行する第1CPU31により第1システム40が構築され、第2プログラムPR2を実行する第2CPU32により第2システム50が構築される。
第1プログラムPR1は、スキャン系、印刷系、コピー系、表示系(ユーザーインターフェイスを含む)のプログラムを含む。さらに第1プログラムPR1は、電源遮断検出処理用のプログラム(図3参照)を含む。共通プログラムには、フラッシュメモリー装置35に対して読出し、書込み、消去などの基本的なメモリー制御を指示するためのメモリー制御プログラムが含まれている。よって、上記の第1プログラムPR1を第1CPU31が実行することにより構築される第1システム40は、第1制御部41、スキャン制御部42、印刷制御部43、表示制御部44、電源遮断検出部45、停止指令部46、第1判定部47、第2判定部48及びメモリー制御部49を備えている。
一方の第2プログラムPR2は、FAX系、通信系のプログラムを含む。よって、上記の第2プログラムPR2を第2CPU32が実行することにより構築される第2システム50は、第2制御部51、FAX処理部52、通信処理部53、第1システム40のものと同様の電源遮断検出部45及びメモリー制御部54を備えている。メモリー制御部54は第1システム40のメモリー制御部49と基本構成は同じであるが、第1システム40には、図3にフローチャートに示す電源遮断検出時に実行される部分の機能が追加されている。
メモリー制御部49は、読出部61、書込部62、消去部63、チップセレクト処理部64(図2では「CS処理部64」と記す)、状態確認部65、中断指令部66及び再開指令部67を備えている。第1システム40と第2システム50は、これらの各部61〜67をそれぞれの基本的な機能構成として備えるが、第1システム40のメモリー制御部49は、各部62、64〜66を用いて、図3のフローチャートで示される所定の処理を行う。
まず第1システム40の構成を説明する。図2に示す第1制御部41は、第1システム40の制御を司る。スキャン制御部42は、スキャン時及びコピー時にスキャンエンジン16(図1参照)を制御する。印刷制御部43は、コピー時及び印刷時に印刷エンジン17(図1参照)を制御する。表示制御部44は、各種画面等を表示するために表示部15(図1参照)の表示制御を行う。
電源遮断検出部45は、リセットIC26(図1参照)からリセット信号を入力したことをもって、停電やコンセント抜け等の意図しない電源遮断を検出する。詳しくは、電源遮断時にリセットIC26からのリセット信号に基づく割込要求(NMI(Non-Maskable Interrupt)(マスク不可割込))を受け付けることをもって、電源遮断を検出する。
停止指令部46は、電源遮断検出部45が意図しない電源遮断を検出すると、第2システム50がフラッシュメモリー装置35に対して現在行っている処理を停止させるべく第2システム50に停止指令を出力する。詳しくは、割込要求(NMI)を受け付けると、第1判定部47は、フラッシュメモリー35がビジー状態であるか否かを判定する。この判定は、フラッシュメモリー35の状態レジスター74からその値を読み出し、その読み出した値がビジーの旨の値であれば、ビジー状態であると判定する。なお、状態レジスター74は、メモリー制御回路71が読出処理中及び書込処理中等の処理中にある場合のビジー状態の値と、これらの処理を行っていないときのレディ状態の値とをとる。
第2判定部48は、メモリー制御部49がフラッシュメモリー35の動作を中断させるためのサスペンドコマンドを発行した後、フラッシュメモリー35が動作中であるか否かを判定する。この判定は、フラッシュメモリー35の現在のステイタスを示すフラグ値が格納される状態レジスター74の値に基づき判定する。
メモリー制御部49は、フラッシュメモリー装置35に対して、データの読出処理、データの書込処理、データの消去処理、及びこれらの処理以外の所定のコマンドを出力するコマンド出力処理を行う。メモリー制御部49の書込部62は、非保証データNDの書込みの他、保証データADの書込みも担当する。
次に第2システム50の構成を説明する。第2制御部51は、第2システム50の制御を司る。FAX処理部52は、FAXの受信及び送信時にFAX通信部18(図1参照)を制御する。通信処理部53は、ネットワークを介した通信時にネットワーク通信部19(図1参照)を制御する。
電源遮断検出部45は、第1システム40のものと同様の構成であり、リセットIC26(図1参照)からリセット信号に基づく割込要求(NMI)を入力したことをもって、停電やコンセント抜け等の意図しない電源遮断を検出する。
メモリー制御部54は、第1システム40側のメモリー制御部49と同様の機能構成を有しており、フラッシュメモリー装置35に対して、データの読出処理、データの書込処理、データの消去処理、及びこれらの処理以外の所定のコマンドを出力するコマンド出力処理を行う。但し、メモリー制御部54の書込部62は、非保証データNDの書込みは行うが、保証データADの書込みは担当しない。
本例の第2制御部51は、第1システム40の停止指令部46から停止指令を受け付けると、メモリー制御部54に対して現在処理中の処理の停止を指示する。メモリー制御部54は、第2制御部51から停止の指示を受け付けると、そのとき処理中の処理を停止(中断)する。例えばデータの書込み処理中であれば、データの書込み処理を中断する。このとき、データの転送開始前であって、かつ書込コマンドが既に出力された後であれば、その書込コマンドはフラッシュメモリー装置35に入力される。そのときチップセレクトされているので、メモリー制御回路71は、データの入力を待つ。このとき、第2システム50が処理を停止(中断)し、その停止(中断)後に第1システム40が書込コマンドを出力した場合、メモリー制御回路71は、第1システム40からの書込コマンドをデータとみなしてフラッシュメモリーセル77に書き込んでしまう。これを防ぐために、CS処理部64は、CS信号をハイレベルにし、チップセレクトを解除する。
次にメモリー制御部を構成する各部の詳細な構成を説明する。
読出部61は、フラッシュメモリー装置35から各種のデータを読み出す読出処理を行う。特に複合機11の電源オン時には、読出部61は、前回の電源オフ時に書き込まれた保証データADをRAM34上に読み出す読出処理を行う。また、読出部61は、複合機11の稼動中に必要な非保証データNDを読み出す読出処理も行う。
読出部61は、フラッシュメモリー装置35から各種のデータを読み出す読出処理を行う。特に複合機11の電源オン時には、読出部61は、前回の電源オフ時に書き込まれた保証データADをRAM34上に読み出す読出処理を行う。また、読出部61は、複合機11の稼動中に必要な非保証データNDを読み出す読出処理も行う。
書込部62は、フラッシュメモリー装置35に各種データを書き込む書込処理を行う。特に複合機11の電源オフ時に、複合機11の稼動中に更新されたRAM34上の保証データADを、フラッシュメモリー35に書き込む書込処理を行う。なお、本実施形態では、書込部62により書込手段の一例が構成される。また、書込部62は、非保証データNDのフラッシュメモリー35への書込処理を行う。なお、本実施形態では、書込部62により書込手段の一例が構成される。
消去部63は、フラッシュメモリー装置35のデータを消去する消去処理を行う。本例のフラッシュメモリー装置35では、ブロックBLが消去の最小単位なので、消去部63はブロック単位でデータの消去を行う。なお、本実施形態では、消去部63により消去手段の一例が構成される。
CS処理部64は、フラッシュメモリー装置35に対してチップセレクトの指示と、チップセレクトの解除とを行う。ここで、読出部61及び書込部62はそれぞれのコマンド(読出コマンド又は書込コマンド)を出力するときにチップセレクトし、コマンドの出力を終えてデータの転送を開始する前にチップセレクトを解除する。本例では、チップセレクトは、各部61,62がチップセレクト信号(CS信号)をローレベルにすることにより行われ、チップセレクトの解除は、各部61,62がチップセレクト信号(CS信号)をハイレベルにすることにより行われる。CS処理部64は、各部61,62が読出コマンド又は書込コマンドの出力のときに行ったチップセレクトを強制的に解除する処理を行う。
状態確認部65は、フラッシュメモリー装置35の状態レジスター74の値を取得し、その取得した値に基づいてフラッシュメモリー装置35(詳しくはメモリー制御回路71)の処理状態(ステイタス)を確認する。状態確認部65は、状態レジスター74の値に基づいて、メモリー制御回路71が、レディ状態、ビジー状態(読出中又は書込中等)のうちいずれの状態であるかを確認する。
中断指令部66は、フラッシュメモリー装置35のメモリー制御回路71に現在処理中の処理を中断させるためのサスペンドコマンドを、フラッシュメモリー装置35に対して発行する。
再開指令部67は、フラッシュメモリー装置35のメモリー制御回路71にサスペンドコマンドの発行により中断させていた処理を再開させるためのレジュームコマンドを、フラッシュメモリー装置35に対して発行する。
一方、第2システム50内のメモリー制御部54は、第1システム40内のメモリー制御部49と基本的に同様の機能構成を有している。すなわち、メモリー制御部54は、読出部61、書込部62、消去部63、チップセレクト処理部64)、状態確認部65、中断指令部66及び再開指令部67を同様に有している。
但し、第1制御部41がメモリー制御部49に出す指示と、第2制御部51がメモリー制御部54に出す指示が、それぞれ第1プログラムPR1と第2プログラムPR2の各内容に応じて異なっているので、各メモリー制御部49,54が行う制御処理内容は異なる。例えば第1システム40内のメモリー制御部49は、第1制御部41の指示により、図3のフローチャートに基づき意図しない電源遮断検出時に保証データADをフラッシュメモリー装置35に書き込む電源遮断検出処理を行うが、第2システム50内のメモリー制御部54は、このような電源遮断検出処理は行わない。
なお、本実施形態では、第1システム40及び第2システム50は、CPU31,32がプログラムを実行して構築されるソフトウェアにより構成されるが、各システム40,50を、集積回路等のハードウェアにより構築したり、ソフトウェアとハードウェアの協働により構築したりしてもよい。
次に、フラッシュメモリー装置35の構成を詳細に説明する。図2に示すように、フラッシュメモリー装置35(以下、単に「フラッシュメモリー35」ともいう)は、メモリー制御回路71及びフラッシュメモリー部72を備えている。メモリー制御回路71は、バス36(図1参照)を介して第1CPU31及び第2CPU32と通信可能に接続されている。メモリー制御回路71は、各CPU31,32から、読出し、書込み、消去などの処理を命令する各種のコマンドと、そのコマンドに従って処理する際のデータの読出し元、書込み先、消去先のアドレスとを入力する。
メモリー制御回路71は、CPU31,32から入力したコマンドに応じて、データの読出し、データの書込み、ブロックBL単位でのデータの消去などをフラッシュメモリー部72に指示する。これにより、読出し元のアドレスからのデータの読出し、書込み先のアドレスへのデータの書込み、消去先のアドレスにあるデータの消去が行われる。
メモリー制御回路71は、書込コマンドを入力したときには、このコマンド入力に続いてCPU31,32から転送されてきたデータを、フラッシュメモリーセル77内の指定されたアドレスに書き込む。また、メモリー制御回路71は、読出コマンドを入力すると、フラッシュメモリーセル77内の指定されたアドレスからデータを読出し、そのデータをCPU31,32のうちコマンド出力元の一方へ転送する。さらに、メモリー制御回路71は、消去コマンドを入力すると、フラッシュメモリーセル77内の指定されたアドレスのデータをブロックBL単位で消去する。
メモリー制御回路71は、CPU31,32からの読出し、書込み、消去などのコマンドに応じた制御信号、アドレスを指定するアドレス信号をフラッシュメモリー部72へ出力する。また、メモリー制御回路71とフラッシュメモリー部72はデータ線で接続され、メモリー制御回路71からフラッシュメモリー部72への書込みデータの転送と、フラッシュメモリー部72からメモリー制御回路71への読出しデータの転送は、データ線を介して行われる。
ここで、保証データは、インクやトナー等の印刷用材料の残量など、所定動作の実施と共に変化する可変情報と、モーターの駆動開始位置(原点)などの工場出荷時に設定された不変情報(固定情報)とから構成される。印刷媒体の残量を検出するセンサーを備えたプリンター部を有する複合機11であれば、可変情報の一情報として印刷媒体の残量を含めてもよい。また、複合機11の使用料金をユーザーから徴収する構成の場合、所定動作の回数(例えば印刷枚数)などと共に変化する課金情報を、データの一情報として含めてもよい。なお、可変情報には時間情報(経過時間計測情報や時刻情報)も含めてよい。
図2に示すように、メモリー制御回路71はレジスター群73を内蔵する。レジスター群73のうちの状態レジスター74(ステイタスレジスター)は、フラッシュメモリー35がCPU31,32から受け付けたコマンドに基づいて、メモリー制御回路71が行うデータの読出し、データの書込み、データの消去などの処理の処理中であるかどうかその状態(ステイタス)を管理する。状態レジスター74には、メモリー制御回路71が指示されたコマンドに基づく処理中はビジー状態の値が格納され、コマンドに基づく処理を終えるとレディー状態の値が格納される。このため、各CPU31,32は状態レジスター74に格納されたフラグ値に基づいて、指示したコマンドに基づく処理を終えたか否かを判定できるようになっている。
CPU31,32は、メモリー制御回路71へ消去コマンドを送った後、状態レジスター74のフラグ値が、ビジー状態の値であるうちはデータの消去処理中であると判断する。そして、CPU31,32は、状態レジスター74のフラグ値が、ビジー状態の値からレディー状態の値に切り換わったことをもって、消去処理が終了したと判断する。もちろん、状態レジスター74に替えてもしくは追加して、消去処理専用の消去レジスターを設け、CPU31,32が消去レジスターの値に基づき消去処理の終了を把握する構成を採用してもよい。
フラッシュメモリー部72には、フラッシュメモリーセル77、ロウデコーダー78、カラムデコーダー79などを備えている。なお、フラッシュメモリー部72は、その他に、公知のコマンドデコーダー、制御論理回路、ロウアドレスバッファー、カラムアドレスバッファー、データ制御回路、及び入出力バッファー(いずれも図示せず)を備えている。
フラッシュメモリーセル77は、複数のメモリーセル(メモリー素子)(図示省略)がマトリクス配列されて構成されている。各メモリーセルは互いに交差する複数本のワード線と複数本のビット線の交差部に配置されている。ロウデコーダー78はワード線の選択駆動等を行い、一方のカラムデコーダー79はビット線の選択駆動等を行う。
メモリー制御回路71から転送されるアドレス信号のうちロウアドレスがロウデコーダー78に転送され、カラムアドレスがカラムデコーダー79に転送される。これにより、指定のロウアドレスとカラムアドレスとで特定されるメモリーセルが選択される。
第1CPU31は電源オン時にフラッシュメモリー装置35に読出コマンドを送ることにより、保証データADを読み出す読出処理を行い、メモリー制御回路71から送られてきた保証データADをRAM34に書き込む。そして、複合機11の稼働中(電源オン状態)は、RAM34にアクセスすることによりデータの読出し及び書込みを行い、書込みを行う度にデータは更新される。また、第1CPU31は電源オフ時にフラッシュメモリー35に書込コマンドを送ることにより、RAM34のデータをフラッシュメモリー装置35へ書き込む書込処理を行う。
図4(a)に示すように、フラッシュメモリーセル77は、ブロック0,1,…,Nの合計(N+1)個のブロックBLに分割されている。本例では、ブロックBLは全て同じ記憶容量を有し、データを消去する際の最小単位(消去単位)となる。1つのブロックBLの記憶容量は、例えば0.5〜20キロバイトの範囲内の所定値(一例として4キロバイト)である。
図4(b)は、フラッシュメモリーセル77に記憶された各種データを、図4(a)における各ブロックと対応させて示したものである。図4(a),(b)に示すように、(N+1)個のブロック0〜Nのうち、保証データADを保存するための格納領域として、1つのブロックBL(図4(a)例ではN番目のブロックN)を使用する。例えばプログラムPR(第1プログラムPR1及び第2プログラムPR2)は、ブロック0〜ブロック(J−1)に記憶されている。非保証データNDは、ブロックJ〜ブロックNのうち1つ又は複数のブロックBLを使用して記憶される。図4の例では、非保証データNDは、ブロックJ〜ブロック(N−1)を使用して書き込まれる。
フラッシュメモリー装置35では、ブロックのデータが消去されると、ブロック中の各1バイトは「FF」(16進数)の値(「11111111」)をとる。そして、ビットは「1」→「0」への変更は可能であるが、その逆は不可能である。このため、データを書き込むと、その書き込んだ記憶領域を再び使用するためには、その記憶領域の属するブロックBLのデータを消去する消去処理が必要になる。
次に、複合機11の作用を、図3に示すフローチャートに基づいて説明する。複合機11の稼動中において、停電やコンセント抜け等の意図しない電源遮断が発生したときには、この意図しない電源遮断がリセットIC26により検出され、リセットIC26からリセット信号RSが出力される。第1システム40内の電源遮断検出部45は、リセットIC26からリセット信号RSに基づく割込要求(NMI)の入力があったことをもって、意図しない電源遮断の発生を検出する。この電源遮断検出部45が意図しない電源遮断を検出すると、第1CPU31は、図3にフローチャートで示す電源遮断検出処理ルーチンを実行する。
まずステップS1では、第2システムの停止処理を行う。
ステップS2では、フラッシュメモリー35のチップセレクトを解除する。例えば第2システム50の処理中の処理を停止させたものの、第2システム50が既に書込コマンドを出力していた場合、第1システム40がその後の処理で書込コマンドを出力しても、その書込コマンドがフラッシュメモリー35にデータとして書き込まれてしまう。これを回避するためにチップセレクトを解除する。
ステップS2では、フラッシュメモリー35のチップセレクトを解除する。例えば第2システム50の処理中の処理を停止させたものの、第2システム50が既に書込コマンドを出力していた場合、第1システム40がその後の処理で書込コマンドを出力しても、その書込コマンドがフラッシュメモリー35にデータとして書き込まれてしまう。これを回避するためにチップセレクトを解除する。
ステップS3では、フラッシュメモリー35のステイタスを確認する。すなわち、状態確認部65がフラッシュメモリー35にアクセスして状態レジスター74の値を取得し、その取得した値からステイタスを把握する。例えばフラッシュメモリー35が第2システム50から入力したコマンド(例えば書込コマンド、読出コマンド、消去コマンド)の処理中である場合、状態レジスター74はビジー状態(処理中)の値になっている。一方、フラッシュメモリー35が処理中でないときには、状態レジスター74はレディー状態の値になっている。
ステップS4では、フラッシュメモリー35がビジー状態であるか否かを判断する。ここで、ビジー状態には、書込処理中の場合と、読出処理中の場合と、消去処理中の場合とがあるが、状態レジスター74の値からはどの処理中であるかは判別できない。このため、第1判定部47は、フラッシュメモリー35がビジー状態であるか否かを判断することにより、フラッシュメモリー35が書込処理中であるか否かを判断する。判定の結果、ビジー状態であればステップS5に進み、ビジー状態でなければ(例えばレディー状態であれば)ステップS8に進む。
ステップS5では、フラッシュメモリー35が書込処理を終了するまでの書込み時間を待つ。例えば複合機11で扱うデータの容量から、書込み時間の最大値は想定でき、その想定される最大値に僅かのマージンを加えて書込み時間を設定する。書込み時間は、消去処理に要する消去時間に比べ相当短いので、この書込み時間を待っても、二次電池13Aの電力によりCPUを動作状態に保持できる保持時間からみて、保証データADの書込み時間は十分足りる。但し、消去時間は相当長いので、保持時間内で消去処理が終わらず、その後の保証データADの書込みができなくなる。また、本例では、第1システム40がフラッシュメモリー35に対して書込処理を強制停止(強制終了)させることも可能であるが、書込処理を一旦停止させる処理を行うと、その後の書込コマンドが受け付けられなくなる。そのため、第1システム40からこれから出力する書込コマンドが受け付けられるように、書込処理中の場合でもその書込処理が強制停止されないように、書込み時間が経過するまでは待機する。そして、この書込み時間を待つことによって、処理中の書込処理は強制停止されることなく終了する。但し、処理中の処理が消去処理であった場合、書込み時間を待った後も、消去処理中である場合が多い。
ステップS6では、サスペンドコマンドを発行する。すなわち、中断指令部66がフラッシュメモリー35に対してサスペンドコマンドを発行する。フラッシュメモリー35内のメモリー制御回路71はサスペンドコマンドを受け付けると、中断処理部75に中断処理を指示する。中断処理部75は、処理中の処理を中断させるとともに、フラッシュメモリー35が動作中でなくなり処理の中断を終えると、状態レジスター74をレディー状態の値に変更する。例えば処理中の処理が消去処理であった場合、その消去処理は中断され、その中断が完了すると、状態レジスター74がレディー状態の値になる。
ステップS7では、フラッシュメモリー35が動作中であるか否かを判断する。すなわち、第2判定部48が、状態レジスター74の値を取得し、その取得した値に基づくステイタスがビジー状態であれば、フラッシュメモリー35が動作中であると判断する。フラッシュメモリー35が動作中であるうちはそのまま待機し、動作中でなければステップS8に進む。つまり、サスペンドコマンドの発行から、そのサスペンドコマンドによって実際にフラッシュメモリー35が動作を終了させるまで待機する。
ステップS8では、保証データADを書き込む。すなわち、第1システム40の書込部62は、RAM34から保証データADを読み出し、その読み出した保証データADを、フラッシュメモリーセル77内のブロックNの先頭アドレスを指定してフラッシュメモリー35に書き込む。こうして、二次電池13Aの電力でCPU31を動作状態に保持しうる保持時間内に、保証データADのフラッシュメモリー35への書込処理を終了できる。
以上詳述したように、本実施形態では、以下に示す効果を得ることができる。
(1)第1システム40と第2システム50とが同一のフラッシュメモリー35にアクセスできる構成において、意図しない電源遮断が検出されると、第2システム50の処理中の処理を中断させるので、保証データADをフラッシュメモリー35に書き込むことができる。
(1)第1システム40と第2システム50とが同一のフラッシュメモリー35にアクセスできる構成において、意図しない電源遮断が検出されると、第2システム50の処理中の処理を中断させるので、保証データADをフラッシュメモリー35に書き込むことができる。
(2)第2システム50の停止処理後、チップセレクトを解除する(S2)ので、第1システム40が保証データADを書き込むために発行した書込コマンドが、データとしてフラッシュメモリーセル77に書き込まれてしまう事態を回避できる。
(3)フラッシュメモリー35がビジー状態であるか否かを判定し(S4)、ビジー状態であれば、フラッシュメモリー35の書込処理が終わるまでの書込み時間を待つ。このため、フラッシュメモリー35が書込処理を中断すると、その後の書込コマンドを受け付けない構成であっても、第1システム40による保証データADの書込みを行うことができる。
(4)書込み時間を待った後に、サスペンドコマンドを発行するので、書込処理を中断させることなく、消去処理を中断させることができる。よって、第1システム40による保証データADの書込みを行うことができる。
(5)サスペンドコマンド発行後にフラッシュメモリー35が動作中であるか否かを判定し、フラッシュメモリー35が動作中でなくなったことを確認した後、保証データADをフラッシュメモリー35に書き込む。よって、保証データADの書込処理をより確実に行うことができる。例えばフラッシュメモリー35の動作中(つまり消去処理中又は消去処理の中断処理中)に保証データADの書込コマンドを出力した場合、保証データが消去されてしまう虞がある。しかし、フラッシュメモリー35の動作中でないことを確認した後、保証データADの書込みを行うので、保証データADをその一部も消去されることなくフラッシュメモリー35に書き込むことができる。
(6)意図しない電源遮断が発生しても、保証データADをフラッシュメモリー35に書き込むことができるので、複合機11の次回電源オン時に最新の保証データADを読み出して使用することができる。この結果、正しいインク残量の情報を取得できる。例えば、データ上はインク残量がインクエンドよりも多く残っているため、印刷を開始したものの、その印刷の途中でインク切れとなって印刷画像が途中までしか形成されない事態を極力防止することができる。
(第2実施形態)
次に第2実施形態を図5に基づいて説明する。前記第1実施形態では、書込処理を中断すると、その後の書込コマンドを受け付けない構成のフラッシュメモリー35であったが、本実施形態のフラッシュメモリー35は、書込処理を中断しても、その後の書込コマンドが受け付けられる構成である。そのため、電源遮断検出処理ルーチンが前記第1実施形態と異なる。なお、この第2実施形態では、フラッシュメモリー35が書込処理の中断後も書込コマンドを受付け可能な構成であることと、電源遮断検出処理ルーチンの内容が一部異なること以外は、前記第1実施形態と同様の構成なので、共通な構成部分については説明を省略し、同一の符号を用いて説明する。
次に第2実施形態を図5に基づいて説明する。前記第1実施形態では、書込処理を中断すると、その後の書込コマンドを受け付けない構成のフラッシュメモリー35であったが、本実施形態のフラッシュメモリー35は、書込処理を中断しても、その後の書込コマンドが受け付けられる構成である。そのため、電源遮断検出処理ルーチンが前記第1実施形態と異なる。なお、この第2実施形態では、フラッシュメモリー35が書込処理の中断後も書込コマンドを受付け可能な構成であることと、電源遮断検出処理ルーチンの内容が一部異なること以外は、前記第1実施形態と同様の構成なので、共通な構成部分については説明を省略し、同一の符号を用いて説明する。
以下、本実施形態の複合機11における電源遮断検出処理ルーチンを、図5に基づいて説明する。なお、ステップS1〜S4の処理は、前記第1実施形態のステップS1〜4と同様の処理内容なので、図5ではステップS1〜S3の処理は省略している。電源遮断検出時に第1CPU31は、図5に示す電源遮断検出処理ルーチンを開始する。
まずステップS1〜S4は、前記第1実施形態におけるステップS1〜S4と同様の処理を行う。すなわち、ステップS1において、第1システム40の停止指令部46は、第2システム50に対して処理中の処理を停止させるための停止指令を送ることにより、第2システム50の停止処理を行う。停止指令を受け付けた第2制御部51は、メモリー制御部54に対して処理中の処理を停止させる。この結果、第2システム50はフラッシュメモリー35に対する処理中の処理を停止する。
ステップS2では、フラッシュメモリー35のチップセレクトを解除する。ステップS3では、フラッシュメモリー35のステイタスを確認する。ステップS4では、フラッシュメモリー35がビジー状態であるか否かを判断する。ビジー状態であればステップS15に進み、ビジー状態でなければ(例えばレディー状態であれば)ステップS17に進む。
次のステップS15では、サスペンドコマンドを発行する。すなわち、中断指令部66がフラッシュメモリー35に対してサスペンドコマンドを発行する。フラッシュメモリー35内の中断処理部75は、サスペンドコマンドを受け付けると、処理中の処理を中断させるとともに、その中断が完了すると、状態レジスター74をレディー状態の値に変更する。すなわち、フラッシュメモリー35が書込処理中であれば書込処理が中断され、消去処理中であれば消去処理が中断される。この中断によってフラッシュメモリー35は動作中でなくなり、状態レジスター74がレディー状態の値になる。
ステップS16では、フラッシュメモリー35が動作中であるか否かを判断する。すなわち、第2判定部48は状態レジスター74の値がビジー状態であればフラッシュメモリー35が動作中であると判断する。フラッシュメモリー35が動作中であるうちはそのまま待機し、動作中でなければステップS17に進む。つまり、サスペンドコマンドの発行から、そのサスペンドコマンドによって実際にフラッシュメモリー35が動作を終了させるまで待機する。
ステップS17では、保証データADを書き込む。すなわち、第1システム40の書込部62は、RAM34から保証データADを読み出し、フラッシュメモリー35のブロックNのアドレスを指定してブロックNに書き込む。こうして、二次電池13Aの電力でCPU31を動作状態に保持しうる保持時間内に、フラッシュメモリー35への保証データADの書込処理を終了できる。本実施形態では、書込み時間を待つ処理(S5)がないので、二次電池13Aによる保持時間に時間的余裕ができる。
ステップS18では、レジュームコマンド(Resume command)を発行する。すなわち、再開指令部67がフラッシュメモリー35に対してレジュームコマンドを発行する。フラッシュメモリー35内のメモリー制御回路71はレジュームコマンドを受け付けると、再開処理部76に再開処理を指示する。再開処理部76は中断していた処理を再開する。すなわち、書込処理を中断していた場合はその書込処理を再開する。このため、二次電池13Aの電力が切れるまでに、中断されていたデータの書込みが完了する。なお、消去処理を中断していた場合はその消去処理が再開する。但し、消去処理は時間を要するため、その処理時間を経過し終わる前に、二次電池13Aの電力が切れてしまう。このため、大抵の場合、消去処理は結局中断される。
以上詳述した第2実施形態によれば、以下の効果を得ることができる。
(7)第2システム50の停止処理(S1)後、フラッシュメモリー35がビジー状態であれば(S4で肯定判定)、直ちにサスペンドコマンドを発行してフラッシュメモリー35の処理を中断させたうえで(S15)、保証データADを書き込む(S17)。前記第1実施形態のような書込み時間を待つ(図3におけるS5)処理がないので、時間的余裕ができ、保証データADをフラッシュメモリー35に一層確実に保存することができる。
(7)第2システム50の停止処理(S1)後、フラッシュメモリー35がビジー状態であれば(S4で肯定判定)、直ちにサスペンドコマンドを発行してフラッシュメモリー35の処理を中断させたうえで(S15)、保証データADを書き込む(S17)。前記第1実施形態のような書込み時間を待つ(図3におけるS5)処理がないので、時間的余裕ができ、保証データADをフラッシュメモリー35に一層確実に保存することができる。
(8)保証データADをフラッシュメモリー35に書き込んだ後、中断した処理を再開する。よって、保証データADを保存するために中断した第2システム50の処理を再開できる。例えば中断していた書込処理を再開し、第2システム50からの非保証データNDをフラッシュメモリー35に書き込むことができる。また、消去処理を中断したときには、場合によっては二次電池13Aの保持時間内に消去処理を終えることができる。なお、非保証データNDは、基本的に次回の電源投入後において複合機11で使用されるものではないが、電源遮断時の最終の更新情報はエラー原因の特定などに使用できる。
なお、上記実施形態は以下のような形態に変更することもできる。
・前記各実施形態において、電源遮断時には第2システム50が保証データADを書き込む構成を採用してもよい。つまり、一の制御手段が第2システム50で、他の制御手段が第1システム40である構成でもよい。
・前記各実施形態において、電源遮断時には第2システム50が保証データADを書き込む構成を採用してもよい。つまり、一の制御手段が第2システム50で、他の制御手段が第1システム40である構成でもよい。
・第1実施形態において、第2システム50からのデータをフラッシュメモリー35に書き終えるまでの書込み時間を待つ処理(S5)を廃止してもよい。フラッシュメモリー35が例えば書込処理の中断後も書込みを開始可能な機能を有する構成であれば、何ら問題はない。
・第1システム40から第2システム50へ停止指令を送る構成に替え、第2システム50が電源遮断時にリセットIC26からのリセット信号に基づく割込要求(NMI)を受け付けると、フラッシュメモリー35に対する処理中の処理を中断する構成でもよい。
・フラッシュメモリー35のチップセレクトの解除を行わない構成も採用できる。
・フラッシュメモリー35のステイタスを確認する処理(S3)を廃止してもよい。
・フラッシュメモリー35がビジー状態であるか否かを判断する処理(S4)を廃止してもよい。例えばチップセレクト解除処理(S3)の後、書込み時間を待った(S5)後、サスペンドコマンドを発行すればよい。
・フラッシュメモリー35のステイタスを確認する処理(S3)を廃止してもよい。
・フラッシュメモリー35がビジー状態であるか否かを判断する処理(S4)を廃止してもよい。例えばチップセレクト解除処理(S3)の後、書込み時間を待った(S5)後、サスペンドコマンドを発行すればよい。
・ステップS7の処理は、状態レジスター74がサスペンド状態の値であるか否かを判断する処理に限定されない。サスペンドコマンド発行から中断(サスペンド)の処理を終えるまでに要する中断処理時間Tsusを経過したか否かを判断する処理に替えてもよい。また、状態レジスター74の値がビジー状態(例えば消去処理中)でなくなったか否かを判断してもよい。この場合、状態レジスター74がビジー状態の値でなくなったことをもって、フラッシュメモリー35の動作が停止されたと判断する。
・情報処理装置は、複合機11などの印刷機能を有する印刷装置に限定されるものではなく、前回の電源オフ時に記憶したデータを電源オン時に使用するために、電源オフ時に最新のデータをフラッシュメモリー35に書き込む装置に広く適用できる。また、情報処理装置は、インク等の消費材の消費を伴う動作を行うものに限定されず、例えばスキャナー、プロジェクター、デジタルフォトフレーム、デジタルカメラなどであってもよい。
11…情報処理装置の一例である複合機、12…コントローラー、13…電源回路、13A…二次電池、14…操作部、14A…電源スイッチ、16…スキャンエンジン、17…印刷エンジン、18…FAX通信部、19…ネットワーク通信部、20…インクカートリッジ、25…コンピューター、26…電源遮断検出手段の一例を構成するリセットIC、31…一の制御手段の一例である第1CPU、32…他の制御手段の一例である第2CPU、33…ASIC、34…RAM、35…不揮発性メモリーの一例であるフラッシュメモリー装置(フラッシュメモリー)、40…一の制御手段の一例である第1システム、41…第1制御部、42…スキャン制御部、43…印刷制御部、44…表示制御部、45…電源遮断検出手段の一例を構成する電源遮断検出部、46…停止手段の一例である停止指令部、47…第1判定部、48…第2判定部、49…メモリー制御部、50…他の制御手段の一例である第2システム、51…第2制御部、52…FAX処理部、53…通信処理部、54…メモリー制御部、61…読出部、62…書込部、63…消去部、64…チップセレクト処理部、65…状態確認部、66…中断手段の一例である中断指令部、67…再開指令部、71…メモリー制御回路、72…フラッシュメモリー部、74…状態レジスター、75…中断処理部、76…再開処理部、77…フラッシュメモリーセル、AD…保証データ、ND…非保証データ、PR…プログラム、PR1…第1プログラム、PR2…第2プログラム、BL…ブロック。
Claims (9)
- 不揮発性メモリーと、
前記不揮発性メモリーに対するデータの書込みと消去の処理を行う複数の制御手段と、を備え、前記複数の制御手段のうち一の制御手段が電源遮断検出時に当該電源遮断後の次の電源投入時に使用するための保証データを不揮発性メモリーに書き込む処理を行うとともに、電源遮断検出時に他の制御手段による保証データの不揮発性メモリーへの書き込み処理が行われない情報処理装置におけるデータ記憶制御方法であって、
情報処理装置の電源が遮断されたことを検出する電源遮断検出ステップと、
前記電源遮断検出時に、前記不揮発性メモリーに対する前記他の制御手段の処理を停止させる停止ステップと、
前記他の制御手段の処理により指示された前記不揮発性メモリーの動作を中断させる中断ステップと、
前記中断ステップの後に前記一の制御手段が前記保証データを前記不揮発性メモリーに書き込む書込みステップと、
を備えたことを特徴とする情報処理装置におけるデータ記憶処理方法。 - 前記停止ステップと前記中断ステップとの間に、前記不揮発性メモリーが動作中であるか否かを判定する動作判定ステップを更に備え、
前記動作判定ステップで動作中と判定された場合に、前記待機ステップを開始し、一方、動作中でないと判定された場合は前記中断ステップを行うことなく、前記書込みステップを行うことを特徴とする請求項1に記載の情報処理装置におけるデータ記憶処理方法。 - 前記動作判定ステップと前記中断ステップとの間に、前記他の制御手段による前記不揮発性メモリーに対する書込み処理を終えるまで待機する待機ステップを、更に備え、前記待機ステップの後に前記中断ステップを開始することを特徴とする請求項2に記載の情報処理装置におけるデータ記憶処理方法。
- 前記停止ステップと前記中断ステップとの間に、前記他の制御手段による前記不揮発性メモリーに対する書込み処理を終えるまで待機する待機ステップを、更に備え、前記待機ステップの後に前記中断ステップを開始することを特徴とする請求項1に記載の情報処理装置におけるデータ記憶処理方法。
- 前記停止ステップと前記書込みステップとの間に、前記不揮発性メモリーのチップセレクトを解除する解除ステップを、更に備えたことを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置におけるデータ記憶処理方法。
- 前記中断ステップの後に、前記不揮発性メモリーの動作が中断されたか否かを判断する中断確認ステップを更に備え、
前記中断確認ステップで中断されたと判断されると、前記書込みステップを開始することを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置におけるデータ記憶処理方法。 - 前記電源遮断検出ステップは、前記一の制御手段が電源遮断を検出することにより行われ、前記停止ステップは、前記一の制御手段が前記他の制御手段に処理の停止を指示することにより行われることを特徴とする請求項1乃至5のいずれか一項に記載の情報処理装置におけるデータ記憶処理方法。
- 前記書込みステップの後に、前記中断ステップで中断した処理の続きを開始する再開ステップを、更に備えたことを特徴とする請求項1乃至6のいずれか一項に記載の情報処理装置におけるデータ記憶処理方法。
- 不揮発性メモリーと、
前記不揮発性メモリーに対するデータの書込みと消去の処理を行う複数の制御手段と、を備え、前記複数の制御手段のうち一の制御手段が電源遮断検出時に当該電源遮断後の次の電源投入時に使用するための保証データを不揮発性メモリーに書き込む処理を行うとともに、電源遮断検出時に他の制御手段による保証データの不揮発性メモリーへの書き込み処理が行われない情報処理装置であって、
情報処理装置の電源が遮断されたことを検出する電源遮断検出手段と、
前記電源遮断検出時に、前記不揮発性メモリーに対する前記他の制御手段の処理を停止させる停止手段と、
前記他の制御手段の処理により指示された前記不揮発性メモリーの動作を中断させる中断手段と、
前記中断手段による前記動作の中断の後、前記一の制御手段が前記保証データを前記不揮発性メモリーに書き込む書込手段と、
を備えたことを特徴とする情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011034268A JP2012173909A (ja) | 2011-02-21 | 2011-02-21 | 情報処理装置におけるデータ記憶処理方法及び情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011034268A JP2012173909A (ja) | 2011-02-21 | 2011-02-21 | 情報処理装置におけるデータ記憶処理方法及び情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012173909A true JP2012173909A (ja) | 2012-09-10 |
Family
ID=46976779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011034268A Withdrawn JP2012173909A (ja) | 2011-02-21 | 2011-02-21 | 情報処理装置におけるデータ記憶処理方法及び情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012173909A (ja) |
-
2011
- 2011-02-21 JP JP2011034268A patent/JP2012173909A/ja not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11067932B2 (en) | Information processing apparatus capable of appropriately executing shutdown processing, method of controlling the information processing apparatus, and storage medium | |
US10484563B2 (en) | Image forming apparatus, and method for controlling image forming apparatus | |
US10447878B2 (en) | Image forming apparatus, method for controlling image forming apparatus, and storage medium | |
JP6218510B2 (ja) | 画像処理装置、画像処理装置の制御方法、及びプログラム | |
JP2013218371A (ja) | 情報処理装置及び情報処理装置におけるデータ記憶処理方法 | |
US9143645B2 (en) | Image processing apparatus for remotely managing a power source, method for controlling the same, and a storage medium | |
JP2011161774A (ja) | 印刷装置および印刷装置の制御方法 | |
JP5699435B2 (ja) | 画像処理装置 | |
KR101596095B1 (ko) | 인쇄 장치 및 기록 매체 | |
WO2018025485A1 (ja) | 情報処理装置及びその制御方法、並びにプログラム | |
JP2013041458A (ja) | データ処理装置及びその制御方法 | |
JP5701043B2 (ja) | 情報処理装置、情報処理装置の制御方法、及び、プログラム | |
JP6758873B2 (ja) | 画像形成装置の電力制御方法 | |
JP6226243B2 (ja) | 画像形成装置及び動作制御方法並びに動作制御プログラム | |
JP2006239973A (ja) | 印刷装置 | |
JP5967945B2 (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP2013035153A (ja) | 画像形成装置、画像形成方法、画像形成プログラム | |
JP2012173909A (ja) | 情報処理装置におけるデータ記憶処理方法及び情報処理装置 | |
JP6459543B2 (ja) | 画像形成装置及びジョブ処理制御方法並びにジョブ処理制御プログラム | |
US11539851B2 (en) | Apparatus for switching a power state among a plurality of power states and method thereof | |
JP6459570B2 (ja) | 画像形成装置及び起動制御方法並びに起動制御プログラム | |
JP2021010141A (ja) | 動作管理装置、動作管理方法、動作管理プログラム及び画像形成装置 | |
JP2007088780A (ja) | 複合機 | |
JP2006215830A (ja) | データ処理装置およびその動作プログラム | |
JP2014201031A (ja) | 画像形成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140513 |