(57)【要約】【課題】追加的な部品を必要とせずに、再書き込み可能な不揮発性メモリヘの動作プログラムの書き換え中に電源ＯＦＦになっても電源再投入時に正常立ち上げを行い、再度、動作プログラム書き換えを促す。【解決手段】フラッシュメモリは、ブート領域２１と動作プログラム領域とを有する。動作プログラム領域には、ユーザ書き換え可能な第１の動作プログラム領域２２とユーザ書き換えが抑止された第２の動作プログラム領域２４を設定し、少なくとも第１の動作プログラム領域２２には、動作プログラムとともにそのチェックサム値２２１およびデータサイズ値２２３が記憶される。チェックサム値２２１およびデータサイズ値２２３のチェックにより第１の動作プログラム領域２２内の動作プログラム２２２の更新時に異常があると判断された場合には第２の動作プログラム領域２４内の動作プログラム２４２を使用する。【選択図】図２
2005128613.tif 000002
【特許請求の範囲】
【請求項１】
動作プログラムに従って動作する画像形成装置において、
前記動作プログラムおよび電源投入時のブート処理プログラムを記憶する再書き込み可能な不揮発性メモリと、
この不揮発性メモリに記憶された動作プログラムに基づいて装置の制御を行うＣＰＵとを備え、
前記不揮発性メモリは、ブート処理プログラム領域と動作プログラム領域とを有し、前記動作プログラム領域には、ユーザ書き換え可能な第１の動作プログラム領域とユーザ書き換えが抑止された第２の動作プログラム領域の２つの領域が設定され、少なくとも第１の動作プログラム領域には、動作プログラムとともにそのチェックサム値およびデータサイズ値が記憶されることを特徴とする画像形成装置。
【請求項２】
前記ＣＰＵは前記ブート処理プログラムに従って、電源投入時にユーザ書き換え可能な動作プログラム領域内に記憶されたチェックサム値およびデータサイズに基づいて前記第２の動作プログラム領域全体のチェックサム値およびデータサイズのチェックを行い、チェックサム値が異なるかプログラムサイズが異なる場合に、前記第２の動作プログラム領域内の動作プログラムを起動することを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記ＣＰＵは、前記ユーザ書き換え可能な動作プログラム領域が異常であると判断されたときにユーザに再度、動作プログラムの書き換えを促すことを特徴とする請求項１記載の画像形成装置。
【請求項４】
前記ＣＰＵが制御を行う際に用いる、一時的にデータを保存するメモリをさらに備え、前記２つの動作プログラム領域の動作プログラムは圧縮形式で記憶され、前記ＣＰＵは圧縮された動作プログラムを解凍して前記メモリに展開し、前記ＣＰＵは前記メモリ上に展開された動作プログラムを参照して動作することを特徴とする請求項１記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作プログラムに従ってプログラム制御される画像形成装置に係り、特に再書き込み可能な不揮発性メモリに動作プログラムを記憶させる画像形成装置に関するものである。
【背景技術】
【０００２】
装置の動作プログラムの書き換えを容易に行えるものとして不揮発性の再書き込み可能なメモリであるフラッシュメモリを備え、このフラッシュメモリは、書き換え手順を記述した書き換えプログラム領域（ブート領域）と動作プログラム領域の２分割に設定されており、動作プログラムの書き換えを書き換えプログラムに従って書き換え可能になっているものが知られている（例えば特許文献１参照）。
【０００３】
しかしながら、フラッシュメモリヘの書き込みは、その構造上、一旦書き込まれている情報のイレース処理を行った後、書き込み動作をおこなわなければならない。このため、プログラムメモリをフラッシュメモリに使用し新たなプログラムの書き換えを行う際は、一時的にプログラムがイレースされた状態となる。この時に、停電が発生したり誤って電源がＯＦＦされたりした場合、再度電源を投入してもプログラムがイレースされた状態であるため正常動作ができない。
【特許文献１】特開２０００−２９６８０号公報
【特許文献２】特開２００２−２６４４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記のような問題に関連して、動作プログラムを記憶しているフラッシュメモリの第１の領域に対して、フラッシュメモリの書き換え状態を示す信号を保持する不揮発性ラッチの状態により、フラッシュメモリの第２の領域の書換プログラムをＳＲＡＭにコピーしてフラッシュメモリの書き換えを開始するか、フラッシュメモリの第３の領域の書換プログラムをＳＲＡＭへコピーしてフラッシュメモリの書き換えを開始するかを切り換える技術がある（特許文献２参照）。
【０００５】
しかし、この従来技術では、フラッシュメモリの書き換え状態を保持する不揮発性ラッチ回路が必要となり、コストが高くなるという問題がある。
【０００６】
本発明は、上述のような従来の問題点に鑑みてなされたものであり、その目的は、再書き込み可能な不揮発性メモリヘの動作プログラムの書き換え中に電源ＯＦＦになっても電源再投入時に正常立ち上げを行い、再度、動作プログラム書き換えを促すことができ、さらに追加的な部品を必要とせずに低コストで信頼性を高めることができる画像形成装置を提供することにある。
【課題を解決するための手段】
【０００７】
本発明による画像形成装置は、動作プログラムに従って動作する画像形成装置において、前記動作プログラムおよび電源投入時のブート処理プログラムを記憶する再書き込み可能な不揮発性メモリと、この不揮発性メモリに記憶された動作プログラムに基づいて装置の制御を行うＣＰＵと、このＣＰＵが制御を行う際に一時的にデータを保存するメモリとを備え、前記不揮発性メモリは、ブート処理プログラム領域と動作プログラム領域とを有し、前記動作プログラム領域には、ユーザ書き換え可能な第１の動作プログラム領域とユーザ書き換えが抑止された第２の動作プログラム領域の２つの領域が設定され、少なくとも第１の動作プログラム領域には、動作プログラムとともにそのチェックサム値およびデータサイズ値が記憶されることを特徴とする。
【０００８】
本発明では、不揮発性メモリにはそれぞれ動作プログラムが記憶される２つの領域を設定し、一方の動作プログラム領域のみをユーザ書き換え可能とする。ユーザによる動作プログラムの更新時にはユーザ書き換え可能な動作プログラム領域の動作プログラムを書き換える。ユーザ書き換えが抑止された第２の動作プログラム領域は何ら変化しない。したがって、動作プログラムの更新動作中に電源ＯＦＦ等の異常事態が発生しても、その異常を検出した場合には前記第２の動作プログラム領域内の動作プログラムを利用して、画像形成装置を動作を立ち上げることができる。本発明のために特別な追加部品は不要である。
【０００９】
異常の検出には、前記ＣＰＵが、前記ブート処理プログラムに従って、電源投入時にユーザ書き換え可能な動作プログラム領域内に記憶されたチェックサム値およびデータサイズに基づいて前記第２の動作プログラム領域全体のチェックサム値およびデータサイズのチェックを行い、チェックサム値が異なるかプログラムサイズが異なる場合に、前記第２の動作プログラム領域内の動作プログラムを起動することができる。
【００１０】
前記ＣＰＵは、前記ユーザ書き換え可能な動作プログラム領域が異常であると判断されたときにユーザに再度、動作プログラムの書き換えを促すことが好ましい。
【００１１】
前記２つの動作プログラム領域の動作プログラムは、圧縮形式で記憶されることが望ましい。これによって、必要な動作プログラム領域の記憶容量を低減することができる。前記ＣＰＵが制御を行う際に用いる、一時的にデータを保存するメモリをさらに備え、前記ＣＰＵは圧縮された動作プログラムを解凍し前記メモリ上に展開された動作プログラムを参照して動作する。
【発明の効果】
【００１２】
本発明によれば、動作プログラムの更新をユーザに行う場合に、誤って更新途中で電源を落としてしまっても装置の動作プログラムが立ち上がらなくなるような事態に陥ることなく正常に動作が再開できる。また、そのために特別なハードウェア部品の追加は必要ないので低コストで装置の信頼性を高めることができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００１４】
図１は本発明による画像形成装置の構成を示すブロック図である。図１中、ＣＰＵ１１、ＲＡＭ１２、フラッシュメモリ１３（再書き込み可能な不揮発性メモリ）、入出力インタフェース（Ｉ／Ｆ）１４、ＬＣＤ（表示部）１５、ＫＥＹ（キー操作部）１６および印字部１７が、バス１８を介して相互に接続されている。
【００１５】
ＣＰＵ１１は装置全体の動作を制御する中央処理装置である。ＲＡＭ１２はＣＰＵ１１の作業領域およびデータの一時記憶領域として利用される通常揮発性のメモリ（例えばＳＲＡＭ）である。フラッシュメモリ１３は、ＣＰＵ１１が画像形成装置を制御するための動作プログラムとこの動作プログラムの書き換え手順等を記述したブート処理プログラムとを記憶する再書き込み可能な不揮発性メモリである。入出力インタフェース部１４は、外部のコンピュータ端末装置等と接続され、これを介して画像データが転送されてくる。ＬＣＤ１５はマンマシンインタフェースのための表示を行う表示部である。ＫＥＹ１６はユーザが画像形成装置の各種設定を選択するためのキー操作部である。印字部１７は画像形成のための記録ヘッドを備え、ＣＰＵ１１の制御の下で印字動作を行う部位である。
【００１６】
図２は、本実施の形態におけるフラッシュメモリのメモリマップの一例を示している。この例では、ブート領域１３１、ユーザ書き換え可能領域１３２、リザーブ領域１３３、ユーザ書き換え抑止領域１３４およびリザーブ領域１３５が設けられている。
【００１７】
ブート領域１３１には、電源投入時の初期処理を実行するブート処理プログラムと、動作プログラム書き換えプログラムを記述したものと、動作プログラムをユーザ書き換え可能領域２２から使用するのかユーザ書き換え抑止領域２４から使用するのかの判断プログラムと、圧縮された動作プログラムをＲＡＭ上に解凍しながら展開するプログラムとが存在する。
【００１８】
ユーザ書き換え可能領域２２には、動作プログラム２２２とともに、この誤り検出符号の一種としてのチェックサム値２２１および動作プログラムのデータサイズ２２３が記憶される。本実施の形態では動作プログラム２２２はその記憶容量を低減するために圧縮形式で記憶している。データサイズ値２２３は圧縮後の動作プログラムのサイズである。
【００１９】
ユーザ書き換え抑止領域２４には、動作プログラム２４２と、この誤り検出符号としてのチェックサム値２４１および動作プログラムのデータサイズ２４３とが記憶される。動作プログラム２４２は更新前の初期的な動作プログラムである。本実施の形態では動作プログラム２４２も圧縮形式で記憶している。圧縮されたフォーマットにて記憶することで必要なフラッシュメモリ容量を小さくすることができる。ただし、ユーザ書き換え抑止領域２４内のチェックサム値２４１およびデータサイズ値２４３は必須の要素ではない。
【００２０】
図３に本実施の形態における画像形成装置の電源ＯＮ時にＣＰＵにより初期的に実行されるブート処理プログラムの処理内容を表したフローチャートを示す。
【００２１】
まず、ユーザ書き換え可能領域内のデータを読み取ってチェックサム値の算出および動作プログラムのデータサイズの確認を行う（Ｓ３１）。算出されたチェックサム値を、記憶されているチェックサム値２２１と比較して一致しなければユーザ書き換え可能領域において何らかの異常があると判断する。すなわち、直前に行われたユーザ書き換え可能領域における動作プログラムの更新（バージョンアップ）が正常に完了しなかったことにより動作プログラム２２２が正常な状態にないと推定される。そこで、ステップＳ３５において、ユーザ書き換え抑止領域の動作プログラム２４２の使用を決定する。データが異常であっても、算出されたチェックサム値は正規のチェックサム値と偶然一致する場合もあるので、チェックサム値の異常がなければ、確認されたデータサイズ値がデータサイズ値２２３を、記憶されているデータサイズ値２２３と比較する。データサイズが一致しなければ何らかの異常があると判断し、ステップＳ３５へ進み、ユーザ書き換え抑止領域の動作プログラム２４２の使用を決定する。また、ユーザに対して、ＬＣＤ１５におけるメッセージ表示等により動作プログラムの更新が正常に完了しなかった旨を報知し、再度の更新操作の実行を促す。
【００２２】
ステップＳ３６では、ユーザ書き換え可能領域２２またはユーザ書き換え抑止領域２４から動作プログラムを読み出し、解凍しながらＲＡＭ１２上に展開する。その後、動作プログラムの立ち上げを行う。
【００２３】
以上、本発明の好適な実施の形態について説明したが、上記で言及した以外にも種々の変形、変更を行うことが可能である。例えば、チェックサム値とデータサイズ値はそれぞれプログラム領域のヘッダ部とフッタ部に記憶するようにしたが、その記憶位置はそれらに限るものではない。
【図面の簡単な説明】
【００２４】
【図１】本発明による画像形成装置の構成を示すブロック図である。
【図２】本発明の実施の形態におけるフラッシュメモリのメモリマップの一例を示す図である。
【図３】本発明の実施の形態における画像形成装置の電源ＯＮ時にＣＰＵにより初期的に実行されるブートプログラムの処理内容を表したフローチャートである。
【符号の説明】
【００２５】
１１…ＣＰＵ、１２…ＲＡＭ、１３…フラッシュメモリ（再書き込み可能な不揮発性メモリ）、１４…入出力インタフェース（Ｉ／Ｆ）、１５…ＬＣＤ（表示部）、１６…ＫＥＹ（キー操作部）、１７…印字部
【図１】
2005128613.tif 000003
【図２】
2005128613.tif 000004
【図３】
2005128613.tif 000005