(57)【特許請求の範囲】
【請求項１】
装置の制御を行うためのデータを記憶するための記憶領域が、複数のブロックに分割されることで複数のデータ記憶領域が形成されるとともに、データ更新時に各前記データ記憶領域に書き込まれる各データのあらかじめ計算されたチェックサム値が書き込まれるチェックサム記憶領域とが設けられる記憶部と、
装置の有する機能単位で分割された各データを各前記データ記憶領域に書き込み、各データのチェックサム値を前記チェックサム記憶領域に書き込みを行う書込部と、
装置の電源投入時に、各前記データ記憶領域のデータに対しチェックサムの演算を行って、演算されたチェックサム値と前記チェックサム記憶領域に記憶されるチェックサム値との比較を行って、各前記データ記憶領域に記憶されるデータが正常であるか否かの判定を行う演算部と、
異常のある前記データ記憶領域に記憶される機能を使用不可とする制御部を有し、
前記書込部は、データ更新後、装置の最初の電源投入時にデータの異常が発見された場合、異常のあった前記データ記憶領域に対応する前記チェックサム記憶領域に対して異常のあることを示す一定の値を書き込み、
前記演算部は、データ更新後、チェックサムの比較演算後は、前記チェックサム記憶領域での異常のあることを示す一定の値の書き込みの有無により、各前記データ記憶領域のデータの異常の有無を判定し、
前記制御部は実行中のプログラムでの異常発生を検知し、異常が確認されたプログラムを含む前記データ記憶領域に対応する前記チェックサム記憶領域に、前記データ記憶領域に異常のあることを示す一定の値の書き込むことを特徴とする画像形成装置。
【請求項２】
分割される前記記憶部の記憶領域のうち、１つのブロックを装置本体の動作を制御するためのデータを記憶する基本領域とし、その他のブロックをオプション機器の動作を制御するためのデータを記憶する１又は複数の拡張領域とすることを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記制御部は、前記基本領域に記憶されたデータに異常がある場合は装置自体をエラーとして停止させ、前記拡張領域に記憶されたデータに異常がある場合はその前記オプション機器を使用不可として扱うことを特徴とする請求項２記載の画像形成装置。
【請求項４】
装置に接続される前記オプション機器は、シートの供給を行うフィーダ及び／又は両面印刷ユニットであることを特徴とする請求項２又は３記載の画像形成装置。
【請求項５】
機器の制御を行うためのデータを記憶し、機器に組み込まれる記憶装置において、
機器の制御を行うためのデータを記憶するための記憶領域が、複数のブロックに分割されることで複数のデータ記憶領域が形成されるとともに、データ更新時に各前記データ記憶領域に書き込まれる各データのあらかじめ計算されたチェックサム値が書き込まれるチェックサム記憶領域とが設けられる記憶部と、
機器の有する機能単位で分割された各データを各前記データ記憶領域に、各前記データ記憶領域のチェックサム値を前記チェックサム記憶領域に書き込みを行う書込部と、
機器の電源投入時に、各前記データ記憶領域に対しチェックサムの演算を行い、演算されたチェックサム値と前記チェックサム記憶領域に記憶されるチェックサム値との比較を行って、各前記データ記憶領域に記憶されるデータが正常であるか否かの判定を行う演算部と、
異常のある前記データ記憶領域に記憶される機能を使用不可とする制御部を有し、
前記書込部は、データ更新後、装置の最初の電源投入時にデータの異常が発見された場合、異常のあった前記データ記憶領域に対応する前記チェックサム記憶領域に対して異常のあることを示す一定の値を書き込み、
前記演算部は、データ更新後、チェックサムの比較演算後は、前記チェックサム記憶領域での異常のあることを示す一定の値の書き込みの有無により、各前記データ記憶領域のデータの異常の有無を判定し、
前記制御部は実行中のプログラムでの異常発生を検知し、異常が確認されたプログラムを含む前記データ記憶領域に対応する前記チェックサム記憶領域に、前記データ記憶領域に異常のあることを示す一定の値の書き込むことを特徴とする記憶装置。
【請求項６】
データ更新時に、機器の制御を行うためのデータを、複数のブロックに分割される記憶部のデータ記憶領域に、機器の有する機能単位で各データ記憶領域に記憶させるステップと、
データ更新時に、前記記憶部に設けられるチェックサム記憶領域に、各データ記憶領域に記憶される各データのあらかじめ計算されたチェックサム値を記憶させるステップと、
装置の電源投入時に、演算部により各データ記憶領域のデータに対しチェックサムの演算を行い、演算されたチェックサム値と前記チェックサム記憶領域に記憶されるチェックサム値との比較を行って、各データ記憶領域に記憶されたデータが正常であるかどうかの判定を行うステップと、
機器を制御するための制御部により、前記異常のある前記データ記憶領域の機能の使用を制限するステップと、
データ更新後、装置の最初の電源投入時にデータの異常が発見された場合、異常のあった前記データ記憶領域に対応する前記チェックサム記憶領域に対して異常のあることを示す一定の値を書き込むステップと、
データ更新後、チェックサムの比較演算後は、前記チェックサム記憶領域での異常のあることを示す一定の値の書き込みの有無により、各前記データ記憶領域のデータの異常の有無を判定するステップと、
実行中のプログラムでの異常発生を検知し、異常が確認されたプログラムを含む前記データ記憶領域に対応する前記チェックサム記憶領域に、前記データ記憶領域に異常のあることを示す一定の値の書き込むステップと、を有することを特徴とするデータ検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，チェックサムによりメモリ等に記憶されたデータが正常であるかを確認する記憶装置、データ検査方法に関する。又、この記憶装置を備えた画像形成装置に関する。
【背景技術】
【０００２】
今日、例えば、プリンタや複写機等の画像形成装置や携帯電話やデジタルカメラ等の様々な機器において、機器を制御し、動作させるためのプログラムや制御用データ等、各種のデータを記憶する記憶装置が各機器内に設けられる。即ち、プログラム等の各種データを記憶する記憶装置は、各機器に組み込まれる。そして、各種データを記憶する素子には、例えば、フラッシュＲＯＭ等の不揮発性メモリが用いられる。
【０００３】
そして、フラッシュＲＯＭのように、複数回にわたりデータ更新を行うことができる記憶装置においては、データ更新中の高電圧や静電気などのノイズ等による外的要因や、電源が停電等により切断されるなど、正常にデータ更新されないことがある。又、正常にデータ更新されても、その後、静電気、高電圧等のノイズなどにより、データが破壊されることもある。そして、記憶装置に記憶されたデータに異常があると、機器の制御、動作等にエラーが発生する。そのため、記憶されたデータの誤りの有無を判定する必要がある。従来から、このような判定に用いられる方法として、チェックサムによる誤り検知が知られている。この方法では、記憶されたデータを順に加算し、その加算結果とあらかじめ記憶される参照用のチェックサム値を比較し、記憶されているデータが正常かを判断する。
【０００４】
このような、フラッシュＲＯＭ等の記憶内容の誤り検知を行う方法として、チェックサムを利用する発明が特許文献１に記載されている。具体的に、特許文献１には、装置の経時変化を記憶する不揮発メモリを備え、不揮発メモリヘのデータの書込みの中断を予測して、データの書込が中断前に終了するように制御する制御手段を有し、例えば、制御手段は書込むデータ量を制限する制御を行う画像形成装置や、前記不揮発メモリを複数の領域に分け、該領域ごとに種類の異なるデータを記憶する画像形成装置が記載され、データの誤り検知のためチェックサムを用いることが記載されている（特許文献１：請求項１、３、５、段落００５５等参照）。
【特許文献１】特開２０００−０７１５６６
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ここで、フラッシュＲＯＭ等を備える記憶装置では、従来、記憶するデータ全体に対しチェックサムを行い、１ビットでもチェックサムの演算結果が異なれば、異常があるものと判定されていた。従って、フラッシュＲＯＭ等が記憶するデータに、例えば、記憶装置が組み込まれる機器を制御するプログラムが記憶されている場合などは、異常があると判定されれば、その機器の全機能を停止する措置が採られていた。
【０００６】
しかし、フラッシュＲＯＭ等が記憶するプログラムのうち、例えば、機器の機能を拡張するためのプログラムの部分でデータの異常があり、機器を制御するための基本的なプログラムには異常がない場合でも機器の全機能が停止され、機器全体が使用不可とされるという問題がある。言い換えると、フラッシュＲＯＭ等が記憶する制御プログラムのうちで拡張機能に相当する部分に異常があっても機器全体が使用できず、使用者の利便性が損なわれているという問題がある。
【０００７】
ここで、特許文献１記載の発明をみると、フラッシュＲＯＭ等のメモリの記憶領域を複数の領域に分割し、領域ごとに異なるデータを記憶することが記載され、各領域についてチェックサムが保持される構成（特許文献１：段落００５５〜００５８等参照）が示されている。しかし、特許文献１記載の発明は、領域ごとに異なるデータを記憶して電源遮断時における緊急書込でのデータ量を制限し、書込異常を無くすことで、フラッシュＲＯＭが書き込まれるデータの異常発生防止を図るものであり、実際にプログラム等のデータに異常がある場合の対処を示唆したものではない。
【０００８】
又、特許文献１記載の発明において、記憶の対象とされるデータは、感光体ドラムの使用時間や高圧印加の履歴時間等の使用履歴に関するデータを示すに過ぎず（請求項１、段落００７６等参照）、制御プログラムを対象とするものではなく、上記に示した制御プログラムのうちで本質的でない部分に異常があっても機器全体が使用できなくなるという課題を解決することはできない。
【０００９】
本発明は、上記従来技術の問題点に鑑みてなされたものであり、記憶装置に記憶されるプログラム等の内、本質的でない部分に異常がある場合、その異常のある部分の機能を切り離し、機器全体が使用できなくなることを防止可能な画像形成装置、記憶装置、データ検査方法を提供することを課題とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するため請求項１に係る発明は、装置の制御を行うためのデータを記憶するための記憶領域が、複数のブロックに分割されることで複数のデータ記憶領域が形成されるとともに、データ更新時に各前記データ記憶領域に書き込まれる各データのあらかじめ計算されたチェックサム値が書き込まれるチェックサム記憶領域とが設けられる記憶部と、装置の有する機能単位で分割された各データを各前記データ記憶領域に書き込み、各データのチェックサム値を前記チェックサム記憶領域に書き込みを行う書込部と、装置の電源投入時に、各前記データ記憶領域のデータに対しチェックサムの演算を行って、演算されたチェックサム値と前記チェックサム記憶領域に記憶されるチェックサム値との比較を行って、各前記データ記憶領域に記憶されるデータが正常であるか否かの判定を行う演算部と、異常のある前記データ記憶領域に記憶される機能を使用不可とする制御部を有し、前記書込部は、データ更新後、装置の最初の電源投入時にデータの異常が発見された場合、異常のあった前記データ記憶領域に対応する前記チェックサム記憶領域に対して異常のあることを示す一定の値を書き込み、前記演算部は、データ更新後、チェックサムの比較演算後は、前記チェックサム記憶領域での異常のあることを示す一定の値の書き込みの有無により、各前記データ記憶領域のデータの異常の有無を判定し、前記制御部は実行中のプログラムでの異常発生を検知し、異常が確認されたプログラムを含む前記データ記憶領域に対応する前記チェックサム記憶領域に、前記データ記憶領域に異常のあることを示す一定の値の書き込むこととした。
【００１１】
この構成によれば、制御部が異常のあるブロックに記憶される機能を使用不可として制御対象外にすることで、その機能が画像形成装置の本質的、基本的な動作に関するものでない場合には、記憶部のデータの一部が、書換時の電源遮断、高電圧、静電気等により破壊されても、画像形成装置自体は動作可能な状態を維持することができる。又、画像形成装置の電源投入時ごとに、チェックサムを行わず、記憶部に記憶される更新結果に基づき、各ブロックの正常、異常を判断するから、画像形成装置やオプション機器が使用可能であるかが迅速に判断され、画像形成装置の起動処理を高速化することができる。
【００１２】
又、請求項２に係る発明は、請求項１記載の発明において、分割される前記記憶部の記憶領域のうち、１つのブロックを装置本体の動作を制御するためのデータを記憶する基本領域とし、その他のブロックをオプション機器の動作を制御するためのデータを記憶する１又は複数の拡張領域とすることとした。
【００１３】
この構成によれば、記憶領域のうち１つを、装置本体の動作を制御するプログラム等を記憶する基本領域とし、その他の記憶領域をオプション機器の動作を制御するプログラム等を記憶する拡張領域として分割することにより、オプション機器の数は限られたものであるから、記憶部の記憶領域が必要以上のブロックに分割せず、処理の複雑化を防ぐことができる。即ち、記憶領域の分割の好適な一例を示す。
【００１４】
又、請求項３に係る発明は、請求項２記載の発明において、前記制御部は、前記基本領域に記憶されたデータに異常がある場合は装置自体をエラーとして停止させ、前記拡張領域に記憶されたデータに異常がある場合はその前記オプション機器を使用不可として扱うこととした。
【００１５】
この構成によれば、拡張領域に異常がある場合は、その拡張領域に記憶されるデータに対応するオプション機器を使用不可として制御部が扱うことで、そのオプション機器は使用不可となるものの、画像形成装置やその他のオプション機器の使用は確保される。従って、使用者の利便性を向上させることができる。一方、基本領域に異常があると画像形成装置本体の制御・動作にいずれ異常が生じてしまうため、画像形成装置をエラーとして停止させることで、画像形成装置の使用中でのエラー停止を防ぐことができる。
【００１６】
又、請求項４に係る発明は、請求項２又は３記載の発明において、装置に接続される前記オプション機器は、シートの供給を行うフィーダ及び／又は両面印刷ユニットであることとした。
【００１７】
この構成は、オプション機器の好適な一例を示すものであって、これらのオプション機器を制御するためのプログラムに異常がある場合でも、オプション機器が装着された画像形成装置全体が動作不能状態となることはなく、該当するオプション機器の制御を切り離すことで画像形成装置自体は、動作可能な状態を維持することができる。
【００２０】
又、請求項５に係る記憶装置は、機器の制御を行うためのデータを記憶し、機器に組み込まれる記憶装置において、機器の制御を行うためのデータを記憶するための記憶領域が、複数のブロックに分割されることで複数のデータ記憶領域が形成されるとともに、データ更新時に各前記データ記憶領域に書き込まれる各データのあらかじめ計算されたチェックサム値が書き込まれるチェックサム記憶領域とが設けられる記憶部と、機器の有する機能単位で分割された各データを各前記データ記憶領域に、各前記データ記憶領域のチェックサム値を前記チェックサム記憶領域に書き込みを行う書込部と、機器の電源投入時に、各前記データ記憶領域に対しチェックサムの演算を行い、演算されたチェックサム値と前記チェックサム記憶領域に記憶されるチェックサム値との比較を行って、各前記データ記憶領域に記憶されるデータが正常であるか否かの判定を行う演算部と、異常のある前記データ記憶領域に記憶される機能を使用不可とする制御部を有し、前記書込部は、データ更新後、装置の最初の電源投入時にデータの異常が発見された場合、異常のあった前記データ記憶領域に対応する前記チェックサム記憶領域に対して異常のあることを示す一定の値を書き込み、前記演算部は、データ更新後、チェックサムの比較演算後は、前記チェックサム記憶領域での異常のあることを示す一定の値の書き込みの有無により、各前記データ記憶領域のデータの異常の有無を判定し、前記制御部は実行中のプログラムでの異常発生を検知し、異常が確認されたプログラムを含む前記データ記憶領域に対応する前記チェックサム記憶領域に、前記データ記憶領域に異常のあることを示す一定の値の書き込むこととした。
【００２１】
この構成によれば、制御部が異常のあるブロックに記憶される機能を使用不可として、そのブロックにアクセスを行わないので、その機能が機器の制御において、本質的、基本的な動作に関するものでない場合には、記憶部のデータの一部が破壊された状態でも、機器自体は動作可能な状態を維持できる記憶装置を提供することができる。
【００２２】
又、請求項６に係るデータ検査方法は、データ更新時に、機器の制御を行うためのデータを、複数のブロックに分割される記憶部のデータ記憶領域に、機器の有する機能単位で各データ記憶領域に記憶させるステップと、データ更新時に、前記記憶部に設けられるチェックサム記憶領域に、各データ記憶領域に記憶される各データのあらかじめ計算されたチェックサム値を記憶させるステップと、装置の電源投入時に、演算部により各データ記憶領域のデータに対しチェックサムの演算を行い、演算されたチェックサム値と前記チェックサム記憶領域に記憶されるチェックサム値との比較を行って、各データ記憶領域に記憶されたデータが正常であるかどうかの判定を行うステップと、機器を制御するための制御部により、前記異常のある前記データ記憶領域の機能の使用を制限するステップと、データ更新後、装置の最初の電源投入時にデータの異常が発見された場合、異常のあった前記データ記憶領域に対応する前記チェックサム記憶領域に対して異常のあることを示す一定の値を書き込むステップと、データ更新後、チェックサムの比較演算後は、前記チェックサム記憶領域での異常のあることを示す一定の値の書き込みの有無により、各前記データ記憶領域のデータの異常の有無を判定するステップと、実行中のプログラムでの異常発生を検知し、異常が確認されたプログラムを含む前記データ記憶領域に対応する前記チェックサム記憶領域に、前記データ記憶領域に異常のあることを示す一定の値の書き込むステップと、を有することとした。
【００２３】
この方法によれば、制御部が異常のあるブロックに記憶される機能を使用不可として制御対象外にすることで、その機能が機器の本質的、基本的な動作に関するものでない場合には、記憶部のデータの一部が破壊された状態でも、機器自体は動作可能な状態を維持することができるデータ検査方法を提供することができる。
【発明の効果】
【００２４】
上述したように、本発明によれば、データ記憶領域の一部に異常があっても、その異常のある部分が、例えばオプション機器のような、拡張機能に関する部分の異常であれば、その機能を使用しないこととして、基本的な画像形成装置や機器の動作を保証することで全体が完全に停止してしまうことを防ぐことができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施形態について図１〜７を参照しつつ説明する。但し、本実施の形態に記載されている構成、配置等の各要素は、発明の範囲を限定するものではなく単なる説明例にすぎない。
【００２６】
最初に、本発明に係る記憶装置は、各種装置に適用可能であるが、代表例として画像形成装置としてのプリンタ１に組み込む場合を説明する。そこで、まず、本実施形態のプリンタ１について説明する。図１は、本発明の実施形態に係るプリンタ１の概略構造の一例を示す模型的正面断面図である。尚、図１では、シートの搬送方向を破線矢印で示す。
【００２７】
まず、本実施形態のプリンタ１には、オプション機器として、フィーダ２と両面印刷ユニット３が接続される。前記両面印刷ユニット３は、プリンタ１の本体の左側面及び下面を覆うように、プリンタ１の本体に取り付けられる。又、フィーダ２は、プリンタ１にシートを供給するためのものであり、本実施形態では、両面印刷ユニット３の下方に重ねて設けられる。尚、フィーダ２は更に複数段重ねることができる。
【００２８】
次に、プリンタ１の本体を詳細に説明する。
【００２９】
図１に示すように、本実施形態のプリンタ１は、タンデム型であり、中間転写ベルト９１を用いてフルカラーの画像をシートに形成する。そのため、カセット４、シート搬送部５、２次転写部６、定着部７、画像形成部８、中間転写部９を主な構成として有する。
【００３０】
前記カセット４は、本体部内下方に引き出し可能に配置され、その内部にプリンタ用紙等の各種、各サイズのシートが収容される。カセット４は、画像形成を行う旨がプリンタ１に入力されると、１枚ずつシートをシート搬送部５に送り出す。前記シート搬送部５は、本体部内でのシート搬送を行う。シート搬送部５は、モータ、ギア等からなる駆動機構（不図示）に接続され回転駆動する搬送ローラ対５１や、シートを２次転写部６にタイミングを合わせて進入させるレジストローラ対５２、シートを破線矢印の方向に案内するためのガイド板（不図示）等が設けられる。
【００３１】
前記２次転写部６は、本体部内のほぼ中央位置に設けられ、画像形成部８で形成されトナー像が重畳して転写（１次転写）された中間転写ベルト９１上のトナー像をシートに転写する。２次転写部６は、主として２次転写ローラ６１と、２次転写ローラ６１に対向して配され中間転写ベルト９１を張架し、モータ、ギア等の駆動機構（不図示）と接続され回転駆動する駆動ローラ９２で構成される。
【００３２】
前記定着部７は、２次転写部６の左方に配され、シート上のトナー像に接する加熱ローラ７１と、加熱ローラ７１に圧接して配置される加圧ローラ７２とを有し、ニップに進入したシートに２次転写されたトナー像をシートに定着させる。定着後のシートは、両面印刷を行わない場合、本体部上方の排出部５３に搬送され、排出トレイ５４に排出される。一方、両面印刷を行う場合、定着後のシートは、両面印刷ユニット３方向に搬送される。尚、定着部７の出口近傍に設けられる第１切替ガイド５５が、搬送方向の切替を行う。
【００３３】
画像形成部８は、中間転写ベルト９１上方に設けられる。画像形成部８は、シアン用の画像形成ユニット８１Ｃ、マゼンタ用の画像形成ユニット８１Ｍ、イエロー用の画像形成ユニット８１Ｙ、及びブラック用の画像形成ユニット８１Ｂで構成される。具体的に、画像形成ユニット８１Ｃ〜８１Ｂは、中間転写ベルト９１の上方かつ近接して並列配置される。尚、各画像形成ユニット８１Ｃ〜８１Ｂの構成については後述する。
【００３４】
前記中間転写部９は、中間転写ベルト９１、駆動ローラ９２、中間転写ベルト９１を張架し周回させるための２本の従動ローラ９３、９４、４本の１次転写ローラ９５、ベルトクリーニング装置９６等で構成され、ユニット化可能である。中間転写体としての中間転写ベルト９１は、例えば誘電体樹脂で無端状に形成され、複数のローラに周回可能に張架される。駆動ローラ９２は、２次転写ローラ６１に対向して配されるローラであり、中間転写部９のうち、最下方に配される。この駆動ローラ９２には、モータ・ギア等から構成される駆動機構（不図示）が接続され、駆動ローラ９２が回転駆動することで、中間転写ベルト９１は、図１では時計回りに周回する。
【００３５】
１次転写ローラ９５は、中間転写ベルト９１に感光体ドラム８２が接する部分で感光体ドラム８２に対向して回転可能に支持される。そして、１次転写ローラ９５は、電源（不図示）によりトナーの帯電極性と逆極性の電圧（電流）を印加される。このバイアス印加で、感光体ドラム８２から中間転写ベルト９１にトナーが引き付けられ、各画像形成ユニット８１Ｃ〜８１Ｂで形成されたトナー像が中間転写ベルト９１表面にシアン、マゼンタ、イエロー、ブラックの４色のトナー像が重ね合わされたフルカラーのトナー像が形成される。尚、ベルトクリーニング装置９６は、画像形成ユニット８１Ｂのベルト周回方向上流側に設けられ、中間転写ベルト９１表面に残留するトナー等を除去し、回収する。
【００３６】
次に、図２に基づき、各画像形成ユニット８１の構成、動作について説明する。図２は本発明の実施形態に係る１つの画像形成ユニット８１の一例を示す部分拡大図である。尚、４色の各画像形成ユニット８１Ｃ〜８１Ｂは構造が共通するので、「Ｃ」「Ｍ」「Ｙ」「Ｂ」の記号は省略し、１つの画像形成ユニット８１を抽出して説明する。又、図２中の実線矢印は、各回転部材の回転方向を示す。
【００３７】
画像形成ユニット８１は、像担持体としての感光体ドラム８２と、帯電装置８３、露光装置８４、現像装置８５、ドラムクリーニング装置８６等で構成される。
【００３８】
前記感光体ドラム８２は、アルミニウム等の導電性基体の外周面に、アモルファスシリコンの感光層を設けた円筒状の部材であり、その表面に帯電したトナーのトナー像を担持する。前記帯電装置８３は、感光体ドラム８２の表面を均一に帯電させる。帯電装置８３は、コロナ放電によるものや、ローラ、ブラシによるものでも良い。
【００３９】
露光装置８４は、帯電装置８３の感光体ドラム８２の回転方向下流側に配される。露光装置８４はアレイ状等のＬＥＤを有し、帯電した感光体ドラム８２表面に画像データに応じた光を照射して、照射部分の電位を光減衰させて感光体ドラム８２表面に静電潜像を形成する。尚、ＬＥＤに代えて、ＬＳＵ（Laser Scan Unit）等を用いることもできる。現像装置８５は、トナーを帯電させて感光体ドラム８２の静電潜像にトナーを供給する。そのため、感光体ドラム８２に正対しトナーを担持して回転する現像ローラ８５ａを備える。この現像ローラ８５ａからのトナーの供給により、静電潜像がトナー像に現像される。尚、トナー補給のためのコンテナ８５ｂが、現像装置８５に接続される。前記ドラムクリーニング装置８６は、感光体ドラム８２から中間転写ベルト９１に転写されずに残留した現像剤を清掃する。
【００４０】
次に、図１に戻り、両面印刷ユニット３について説明する。
【００４１】
上述のように、両面印刷ユニット３は、両面印刷のためのオプション機器としてプリンタ１本体に取り付けられる。まず、両面印刷を行う場合、定着部７を通過した片面印刷済のシートが、定着部７の下流の搬送路上に設けられ回動駆動する第１切替ガイド５５により、両面印刷ユニット３内に導かれる。更に、シートは、両面排出トレイ３１近傍に設けられ回動駆動する第２切替ガイド３２により、両面印刷ユニット３の下方に導かれる。尚、シート搬送経路上に、シートの搬送を行うため適宜搬送ローラ対３３が設けられる。
【００４２】
そして、両面印刷を行うシートは、両面印刷ユニット３の下方に設けられる第３切替ガイド３４により、両面印刷ユニット３内最下方の反転部分Ｒ１に導かれる。（この部分を図１中で２点鎖線で図示）。この反転部分Ｒ１への入口には、回動駆動する第３切替ガイド３４と、モータ、ギア等の駆動装置（不図示）に接続されるスイッチバックローラ３５が設けられる。このスイッチバックローラ３５は、シートの反転部分Ｒ１への進入後、最初は、図１において反時計方向に回転して、シートを反転部分Ｒ１の奥の方へ送り込む。
【００４３】
その後、スイッチバックローラ３５は、反転部分Ｒ１にシートを完全に送り込む前に、回転方向が逆転し、第３切替ガイド３４の回動により搬送方向が切り替えられる。シートは、スイッチバックローラ３５からプリンタ本体の右下面に設けられる再合流点Ｐまでの再合流搬送路Ｒ２（再合流搬送路Ｒ２を図１において一点鎖線で図示）を、スイッチバックローラ３５上方を迂回しつつ搬送される。この両面印刷ユニット３の動作により、シートは表裏逆転され、再合流点Ｐから裏面に再度画像形成を行ってシートの両面に画像が形成される。尚、シートの両面に画像形成されたシートは、最終的に両面排出トレイ３１に排出される。
【００４４】
次に、図１に基づき、フィーダ２について説明する。
【００４５】
本実施形態のプリンタ１におけるフィーダ２は、例えば、５００〜１０００枚単位で各種、各サイズ（例えばＡ４、Ｂ４等）のシートを収容可能な大容量の給紙装置である。尚、図１では１段のみであるが、フィーダ２を複数段重ねることが可能である。フィーダ２内にはシートを積載しピックアップローラ２２に最上位のシートを当接させる載置板２１や、モータ、ギア等の駆動装置に接続され本体部からの給紙指示を受けシートを搬送路に向けて送り出すピックアップローラ２２、シートを上方へ向けて搬送する搬送ローラ対２３等が設けられる。そして、フィーダ２内のシート搬送部分は、図１の右方に位置し、両面印刷ユニット３の再合流搬送路Ｒ２と接続され、フィーダ２からもシートが２次転写部６、定着部７方向に向けて搬送される。
【００４６】
次に、図３に基づき、本実施形態のプリンタ１のハードウェア構成及びその制御について説明する。図３は、本発明の実施形態に係るプリンタ１のブロック図である。
【００４７】
まず、図３に示す外部コンピュータ１００は、ネットワーク等を介し画像データ等を送信できるようにプリンタ１に接続される。そして、本実施形態におけるプリンタ１は、外部コンピュータ１００から送信される画像データに基づき画像形成を行うことができる。
【００４８】
そして、図３に示すように、本実施形態のプリンタ１は、プリンタ１全体の動作の制御のため、プリンタ１内部の制御基板上に設けられ、ＣＰＵ１１、記憶部１２（ＲＡＭ１３、ＨＤＤ１４、フラッシュＲＯＭ１５等で構成）、書込部１６等から構成される制御部１０を有する。前記ＣＰＵ１１は、中央演算処理装置として機能し、ＨＤＤ１４、フラッシュＲＯＭ１５に格納されているデータ（制御のためのプログラムやデータ等）に基づき、プリンタ１の各部を制御する。尚、ＣＰＵ１１は、プリンタ１の電源投入時に記憶部１２に記憶されるデータが正常かの確認を行うチェックサムの演算を行う演算部でもある。
【００４９】
記憶部１２は、例えば、ＲＡＭ１３、ＨＤＤ１４、フラッシュＲＯＭ１５等のメモリで構成される。ＲＡＭ１３は、揮発性のメモリであり制御用プログラムや制御用データを一時的に展開する場合や、画像データを一時的に保存しておく場合などに用いられる。ＨＤＤ１４は、大容量の不揮発性の記憶装置であって、制御用プログラムや、画像データの保存や、使用者によるプリンタ１の設定情報を保存する場合などに使用される。
【００５０】
フラッシュＲＯＭ１５は、プリンタ１本体及びオプション機器の制御用プログラムや制御用データ等を記憶し、ＣＰＵ１１は、プリンタ１の各部やオプション機器の制御のためフラッシュＲＯＭ１５からデータを読み出す。例えば、フラッシュＲＯＭ１５は、プリンタ１の電源投入時の起動に関する制御プログラム等を格納する。
【００５１】
ここで、特許請求の範囲の記載の「データ」の文言について述べておくと、特許請求の範囲記載の「データ」の文言には、狭義のデータだけではなく、プリンタ１本体やオプション機器を制御するためのプログラムも含まれる。言い換えると、フラッシュＲＯＭ１５に記憶される内容を「データ」として総称するものである。
【００５２】
書込部１６は、インストール時やバージョンアップ時等にフラッシュＲＯＭ１５の更新を行い、新たなプログラム等をフラッシュＲＯＭ１５に記憶させるため、フラッシュＲＯＭ１５の書込を行う部分であり、フラッシュＲＯＭ１５は、例えば、複数回にわたり（例えば、１０万回）更新可能である。又、詳細は後述するが、書込部１６は、プリンタ１の機能単位で分割された各プログラム等を各データ記憶領域Ｄ１、Ｄ２、Ｄ３に、又、各データ記憶領域Ｄ１、Ｄ２、Ｄ３に記憶される各データのチェックサム値をチェックサム記憶領域Ｅ１、Ｅ２、Ｅ３に書き込みを行う。
【００５３】
このように、本実施形態のプリンタ１は、制御部１０、記憶部１２、書込部１６、演算部としてのＣＰＵ１１を有するから、記憶装置が組み込まれているといえるものである。
【００５４】
そして、この制御部１０には、プリンタ１を構成するカセット４、シート搬送部５、２次転写部６、定着部７、画像形成部８、中間転写部９、電源装置１７、操作パネル１８等が接続され、各部の動作を、記憶部１２に記憶されたプログラム等に基づき、的確にプリンタ１が機能するように制御する。
【００５５】
ここで、図３に示す電源装置１７は、プリンタ１内に適宜設けられ、プリンタ１本体だけでなく、フィーダ２や両面印刷ユニット３に対しても電力供給を行う。具体的に、電源装置１７は、例えば、商用電源に接続され、交流を直流に整流し、電子部品駆動のため制御基板（制御部１０）やオプション機器に５Ｖや３．３Ｖの直流電圧を供給し、プリンタ１本体内や、フィーダ２、両面印刷ユニット３内におけるローラやドラム等の回転体を回転させるためモータに、例えば、２４Ｖ程度の電力供給等を行う。
【００５６】
一方、操作パネル１８は、例えば、プリンタ１の上面に設けられ（図１参照）、各種ボタンや、液晶表示部等を有し、使用者は、プリンタ１の操作を行う場合、各種ボタンを押下し、又、例えば、液晶表示部には、プリンタ１にエラーが発生した場合に、エラーが発生したこと、及び、その種類の表示を行う等、プリンタ１の状態情報を表示可能である。
【００５７】
一方、両面印刷ユニット３や、フィーダ２のオプション機器側にも、ＣＰＵ２５、３６が搭載される。オプション機器側のＣＰＵ２５、３６は、本体側のＣＰＵ１１と通信可能とされる。例えば、プリンタ１の電源投入時の起動処理時、本体側のＣＰＵ１１の接続確認信号に対し、オプション機器側が応答信号を返信して、本体側のＣＰＵ１１は、オプション機器が接続されていることを認識する。又、本体側のＣＰＵ１１は、そのオプション機器側のＣＰＵ２５、３６に、動作指示を与える等の処理を行う。例えば、本体側のＣＰＵ１１は、ＣＰＵ２５にフィーダ２内のピックアップローラ２２や搬送ローラ対２３を回転させるためのモータや、ＣＰＵ３６に両面印刷ユニット３内のスイッチバックローラ３５や切替ガイド３２、３４や搬送ローラ対３３を回転させるためのモータを回転させるタイミング等の指示を行いオプション機器の制御を行う。尚、図３では簡略化して、各オプション機器には、ＣＰＵ２５、３６のみを図示する。
【００５８】
次に、図４に基づき、本発明の実施形態に係るフラッシュＲＯＭ１５の記憶領域について説明する。図４は、本発明の実施形態に係るフラッシュＲＯＭ１５の記憶領域の一例を示した説明図である。尚、ここでは、プリンタ本体及びオプション機器の制御のためのプログラム等が格納されている領域について説明するが、他の領域には、異なるプログラム等を記憶することは可能である。
【００５９】
ここで、図４に示すアドレスは、１６進数での表記であり（以下、０ｘは、１６進数での表記であることを示す。）、本説明での記憶領域のアドレス範囲は、０ｘ０００１００００〜０ｘ０００１ｆｆｆｆとする。又、本実施形態のフラッシュＲＯＭ１５は、１アドレスあたり、８ビット（１バイト）のデータを格納できるものとする。尚、記憶領域の範囲や１アドレスあたりのビット長は、一例を示しているに過ぎず、これに限られない。
【００６０】
図４に示すように、フラッシュＲＯＭ１５の記憶領域は、本実施形態では、大きく分けて３つのブロックに分割される。ここで、記憶領域は、プリンタ本体の制御を行うためのプログラム等を記憶する基本領域Ｔ１（０ｘ０００１００００〜０ｘ０００１７ｆｆｆ）と、フィーダ２の制御を行うためのプログラム等を記憶するための拡張領域Ｔ２（０ｘ０００１８０００〜０ｘ０００１ｂｆｆｆ）と、両面印刷ユニット３の制御を行うためのプログラム等を記憶するための拡張領域Ｔ３（０ｘ０００１ｃ０００〜０ｘ０００１ｆｆｆｆ）として３つの領域に、ブロックとして分割される。即ち、拡張領域Ｔ２、Ｔ３はオプション機器の動作を制御するための拡張機能に係るプログラム等が記憶される。
【００６１】
各ブロックについて説明すると、まず、基本領域Ｔ１には、実際にプリンタ本体の動作の制御を行うためのプログラム等を記憶するための領域であるデータ記憶領域Ｄ１（０ｘ０００１００００〜０ｘ０００１７ｆｆｄ）と、データ記憶領域Ｄ１に書き込まれるプログラム等のあらかじめ計算されたチェックサム値等が書込部１６により書き込まれるチェックサム記憶領域Ｅ１（０ｘ０００１７ｆｆｅ〜０ｘ０００１７ｆｆｆ）が設けられる。
【００６２】
そして、拡張領域Ｔ２には、実際にフィーダ２の動作の制御を行うためのプログラム等を記憶するための領域であるデータ記憶領域Ｄ２（０ｘ０００１８０００〜０ｘ０００１ｂｆｆｄ）と、データ記憶領域Ｄ２に書き込まれるプログラム等のあらかじめ計算されたチェックサム値等が書込部１６により書き込まれるチェックサム記憶領域Ｅ２（０ｘ０００１ｂｆｆｅ〜０ｘ０００１ｂｆｆｆ）が設けられる。
【００６３】
更に、拡張領域Ｔ３は、実際に両面印刷ユニット３の動作の制御を行うためのプログラム等を記憶するための領域であるデータ記憶領域Ｄ３（０ｘ０００１ｃ０００〜０ｘ０００１ｆｆｆｄ）と、データ記憶領域Ｄ３に書き込まれるプログラム等のあらかじめ計算したチェックサム値等が書込部１６により書き込まれるチェックサム記憶領域Ｅ３（０ｘ０００１ｆｆｆｅ〜０ｘ０００１ｆｆｆｆ）が設けられる。
【００６４】
このように、フラッシュＲＯＭ１５は、制御を行うためのプログラム等のデータを記憶し、その記憶領域が、複数のブロックに分割されることで複数のデータ記憶領域Ｄ１、Ｄ２、Ｄ３が形成される。又、記憶領域には、データ更新時に各データ記憶領域Ｄ１、Ｄ２、Ｄ３に書き込まれるデータのあらかじめ計算されたチェックサム値が書き込まれるチェックサム記憶領域Ｅ１、Ｅ２、Ｅ３も設けられる。
【００６５】
尚、記憶領域の分割は、この例に限られるものではなく、更に複数に分割するようにしても良い。例えば、基本領域Ｔ１に記憶させるデータを更に細分化して、プリンタ１が印刷だけは最低限行えるプログラム等の部分と、その他の部分に分け、その他の部分を別の拡張領域に記憶させるブロック分け等、適宜設定可能である。
【００６６】
次に、図５に基づき、本発明の実施形態に係るフラッシュＲＯＭ１５のデータの更新について説明する。図５は、本発明の実施形態に係るフラッシュＲＯＭ１５のデータの更新の一例を説明するためのフローチャートである。
【００６７】
まず、ＣＰＵ１１は、フラッシュＲＯＭ１５へ書込を行うデータを、各ブロックごとにＲＡＭ１３等に準備する（ステップ♯１）。即ち、プリンタ１を本体を制御するプログラム等と、フィーダ２を制御するプログラム等と、両面印刷ユニット３を制御するプログラム等というように、機能ごとに分割して、フラッシュＲＯＭ１５に記憶させる各プログラム等を用意する。そして、ＣＰＵ１１は、フラッシュＲＯＭ１５に書込を行う各プログラム等について、あらかじめ、それぞれ１行毎に加算、即ち、チェックサムを行う（ステップ♯２）。この場合、例えば、加算には２バイト使用し、桁あふれは無視するようにして加算を行うことができる（以下のチェックサムでも同様）。
【００６８】
そして、各ブロックで全行の加算が完了すると、ＣＰＵ１１は、データ記憶領域Ｄ１、Ｄ２、Ｄ３に機能単位で分けられたプログラム等を、フラッシュＲＯＭ１５のチェックサム記憶領域Ｅ１、Ｅ２、Ｅ３には、それぞれのチェックサムの結果が書き込まれるように設定を行う（ステップ♯３）。尚、例えば、加算結果が０ｘ００００（即ち、２バイトの領域において０が１６個）となった場合、この値は、詳細は後述するが、特有の意味を満たせるので、０ｘａａａａに変換する設定を行う。
【００６９】
そして、ＣＰＵ１１は、書込部１６をステップ♯３までの処理、演算により生成されたデータをフラッシュＲＯＭ１５に書き込みを行うように制御し、書込部１６は、フラッシュＲＯＭ１５のデータ更新を開始する（ステップ♯４）。フラッシュＲＯＭ１５のデータ更新が開始されると、まず、書込部１６は、フラッシュＲＯＭ１５のデータを一旦全て消去する(ステップ♯５)。その後、０ｘ０００１００００〜０ｘ０００１ｆｆｆｆまで一気に書込を行う（ステップ♯６）。そして、フラッシュＲＯＭ１５の更新処理が終了する。
【００７０】
次に、図６に基づき、フラッシュＲＯＭ１５のデータ更新が正常に行われたかどうかの確認処理について説明する。図６は、本発明の実施形態に係るフラッシュＲＯＭ１５のデータの更新確認処理の一例を示すフローチャートである。
【００７１】
まず、図６に示すスタートは、データ更新後、最初のプリンタ１の電源ＯＮ時、即ち、フラッシュＲＯＭ１５のデータ更新後、フラッシュＲＯＭ１５に始めて電源が供給された時点である。まず、フラッシュＲＯＭ１５の更新後、最初の電源投入時か否かの確認をＣＰＵ１１は行う（ステップ♯１１）。この確認方法としてはフラッシュＲＯＭ１５内の基本領域Ｔ１、拡張領域Ｔ２、Ｔ３以外の領域に、一定の値（例えば０ｘｆｆｆｆ）を書き込んでおき、データ検査終了後、その値を消去するようにして、この一定の値の有無により判定する等、適宜確認を行えばよい。
【００７２】
次に、フラッシュＲＯＭ１５の更新後、最初にプリンタ１の電源が投入され、起動処理が開始されると、制御部１０のＣＰＵ１１は、基本領域Ｔ１のデータ記憶領域Ｄ１の１行毎の加算、即ち、チェックサムの演算を行う（ステップ♯１２）。このデータ記憶領域Ｄ１のチェックサムの演算結果とチェックサム記憶領域Ｅ１に記憶されるあらかじめ計算されたチェックサム値の比較を行う（ステップ♯１３）。比較の結果、両方の値が同一であれば（ステップ♯１４のＹｅｓ）、データ記憶領域Ｄ１は正常として、処理を継続する。
【００７３】
一方で、両方の値が同一でなければ（ステップ♯１４のＮｏ）、プリンタ１本体の制御を行うためのプログラム等に異常があると判断し、使用を続けてもエラーが発生する可能性が極めて高いため、起動処理を中断し、チェックサム記憶領域Ｅ１に異常が存在することを示す一定の値（例えば、０ｘ００００）をＣＰＵ１１は、書込部１６に書き込ませ（ステップ♯１５）、プリンタ１はエラー停止し（ステップ♯１６）、確認処理を終了する（エンド）。尚、以下の説明では、記憶されるプログラム等に異常があることを示す一定の値として、各チェックサム記憶領域Ｅ１、Ｅ２、Ｅ３に０ｘ００００を統一して書き込むものとする。尚、他の一定の値を書き込んでも良い。
【００７４】
次に、制御部１０は、フィーダ２の制御に関する拡張領域Ｔ２のデータ記憶領域Ｄ２に対する異常の有無の検査を実行する。具体的には、データ記憶領域Ｄ２について、チェックサムの演算をＣＰＵ１１が行う（ステップ♯１７）。このデータ記憶領域Ｄ２のチェックサムの演算結果とチェックサム記憶領域Ｅ２に記憶されるあらかじめ計算されたチェックサム値の比較を行う（ステップ♯１８）。比較の結果、両方の値が同一であれば（ステップ♯１９のＹｅｓ）、データ記憶領域Ｄ２は正常として、処理を継続する。一方で、両方の値が同一でなければ（ステップ♯１９のＮｏ）、ＣＰＵ１１は、フィーダ２の制御を行うためのプログラム等に異常があると判断し、ＣＰＵ１１は、チェックサム記憶領域Ｅ２に０ｘ００００を書き込むように書込部１６に指示する（ステップ♯２０）。
【００７５】
その次に、制御部１０は、両面印刷ユニット３の制御に関する拡張領域Ｔ３のデータ記憶領域Ｄ３に対する異常の有無の検査を実行する。具体的には、データ記憶領域Ｄ３のチェックサムの演算をＣＰＵ１１が行う（ステップ♯２１）。演算後、このデータ記憶領域Ｄ３のチェックサムの演算結果とチェックサム記憶領域Ｅ３に記憶されるあらかじめ計算されたチェックサム値の比較を行う（ステップ♯２２）。比較の結果、両方の値が同一であれば（ステップ♯２３のＹｅｓ）、データ記憶領域Ｄ２は正常として、更新直後の異常の有無の検査は終了する（エンド）。一方で、両方の値が同一でなければ（ステップ♯２３のＮｏ）、ＣＰＵ１１は、両面印刷ユニット３の制御を行うためのプログラム等に異常があると判断する。そこでＣＰＵ１１は、チェックサム記憶領域Ｅ３に０ｘ００００を書き込むように書込部１６に指示する（ステップ♯２４）。
【００７６】
次に、図７に基づき、データ更新後における各データ記憶領域Ｄ１、Ｄ２、Ｄ３の検査完了後のオプション機器関連の起動処理について説明する。図７は、本発明の実施形態に係るプリンタ１の起動処理の一例を示すフローチャートである。
【００７７】
まず、スタートは、プリンタ１の主電源投入後であり、フラッシュＲＯＭ１５の更新後、最初の電源投入時では、チェックサムによる各データ記憶領域Ｄ１、Ｄ２、Ｄ３へのデータ検査終了後の時点である。尚、２回目以降の電源投入時では、最初の電源投入時のデータの検査において、異常があれば、各チェックサム記憶領域Ｅ１、Ｅ２、Ｅ３に０ｘ００００が書き込まれているので、チェックサムの演算は原則不要である。
【００７８】
まず、制御部１０のＣＰＵ１１は、基本領域Ｔ１に関するチェックサム記憶領域Ｅ１の内容を確認する（ステップ♯３１）。もし、０ｘ００００が書き込まれていれば（ステップ♯３２のＮｏ）、処理を中断し、エラー停止する（ステップ♯３３）。この時、操作パネル１８にエラー表示してもよい。一方、チェックサム記憶領域Ｅ１に異常を示す一定の値が書き込まれていなければ（ステップ♯３２のＹｅｓ）、データ記憶領域Ｄ１の内容をＲＡＭ１３等に展開し、制御部１０は、プリンタ１本体の機能を実行可能状態に移行させる（ステップ♯３４）。
【００７９】
そして、ＣＰＵ１１は、フィーダ２に備えられるＣＰＵ２５に向けて信号を送信し、ＣＰＵ２５から返信があるかどうかを確認する。即ち、フィーダ２の装着の有無を確認する（ステップ♯３５）。返信がなければ（ステップ♯３６のＮｏ）、フィーダ２は、物理的に接続されていないとＣＰＵ１１は判断し、両面印刷ユニット３の接続の有無に関するステップ♯４１に移行する。返信があれば（ステップ♯３６のＹｅｓ）、次に、フィーダ２に関するチェックサム記憶領域Ｅ２に異常を示す０ｘ００００が書き込まれているか確認を行う（ステップ♯３７）。
【００８０】
もし、０ｘ００００が書き込まれていれば（ステップ♯３８のＮｏ）、制御部１０は、フィーダ２を未装着として切り離す（ステップ♯３９）。言い換えると、制御部１０は、異常のあるデータ記憶領域Ｄ２に記憶されるフィーダ２の給紙機能のプログラム等を使用不可とする。この制御部１０による切り離しは、例えば、制御部１０が電源装置１７を制御して、フィーダ２への電力供給をＯＦＦすることや、ＣＰＵ２５への指示をＣＰＵ１１が行わない等の方法で実現すればよい。
【００８１】
一方、０ｘ００００が書き込まれていなければ（ステップ♯３８のＹｅｓ）、ＣＰＵ１１は、ＲＡＭ１３内にフィーダ２有りの旨のフラグを立てる（ステップ♯４０）。このフラグが立って始めて、制御部１０は、フィーダ２を制御の対象とし、通信可能なだけでは制御対象としない。
【００８２】
次に、両面印刷ユニット３に関する確認処理が開始される。まず、ＣＰＵ１１は、両面印刷ユニット３に備えられるＣＰＵ３６に向けて確認信号を送信し、ＣＰＵ３６から返信があるかどうかを確認する。即ち、両面印刷ユニット３の装着の有無を確認する（ステップ♯４１）。返信がなければ（ステップ♯４２のＮｏ）、両面印刷ユニット３は、物理的に接続されていないとＣＰＵ１１は判断し、オプション機器に関する起動処理を終了し（エンド）、次の処理に移行する。返信があれば（ステップ♯４２のＹｅｓ）、次に、両面印刷ユニット３の制御プログラム等に関するチェックサム記憶領域Ｅ３に異常を示す０ｘ００００が書き込まれているか確認を行う（ステップ♯４３）。
【００８３】
もし、０ｘ００００が書き込まれていれば（ステップ♯４４のＮｏ）、制御部１０は、両面印刷ユニット３を未装着として切り離す（ステップ♯４５）。言い換えると、制御部１０は、異常のあるデータ記憶領域Ｄ３に記憶される両面印刷機能を使用不可とする。この制御部１０による切り離しはフィーダ２と同様、フィーダ２への電源装置１７からの電力供給をＯＦＦすることや、ＣＰＵ２５への指示信号をＣＰＵ１１が発信しない等の方法で実現すればよい。その後、オプション機器の確認処理は終了する（エンド）
【００８４】
一方、０ｘ００００が書き込まれていなければ（ステップ♯４４のＹｅｓ）、ＣＰＵ１１は、ＲＡＭ１３内に両面印刷ユニット３有りの旨のフラグを立てる（ステップ♯４６）。このフラグが立って始めて、制御部１０は、両面印刷ユニット３を制御の対象とするのであり、通信可能なだけでは、制御対象としない。
【００８５】
即ち、フィーダ２及び両面印刷ユニット３が接続され、かつ、制御するためのプログラム等が正常である旨のフラグが立たない限り、フィーダ２及び両面印刷ユニット３の制御を行わない（＝不可とする）のである。言い換えると、物理的にフィーダ２及び両面印刷ユニット３が接続されていないだけではなく、フラッシュＲＯＭ１５に記憶されるプログラム等に異常がある場合にも、そのままではオプション機器を適切に制御できないので、制御対象から切り離す。これにより、制御プログラム等の一部に異常があっても、プリンタ１本体を適切に制御できる限り、少なくともプリンタ１本体の機能は使用することができる。従って、従来のように、制御プログラムのオプション機器に関する部分に異常があっても、プリンタ１全体がエラー停止してしまうことを防ぐことができる。
【００８６】
次に、図８に基づき、本発明の実施形態に係るフラッシュＲＯＭ１５のデータの更新が正常に行われた後に、プログラム等の破壊があった場合の制御について説明する。図８は本発明の実施形態に係るフラッシュＲＯＭ１５にデータの破壊があった場合の制御の一例を説明するためのフローチャートである。
【００８７】
まず、データの更新が正常に行われても、静電気や高電圧等の外的要因により、フラッシュＲＯＭ１５内のプログラム等が破壊されてしまうことがある。しかし、上記実施形態では、チェックサム記憶領域Ｅ１、Ｅ２、Ｅ３に、０ｘ００００が書き込まれていないと、制御部１０は、プリンタ１の起動時、異常がないと判断してしまう。
【００８８】
しかし、プログラム等の破壊は生じているから、制御部１０のＣＰＵ１１がフラッシュＲＯＭ１５から読み出したプログラムやデータに基づいて、プリンタ１の制御を行っていると、不当命令（不正で受け付けられない命令）やバスエラー（物理的に割り当てられないメモリへのアクセス）等のエラーが発生する。
【００８９】
そして、このような、不当命令やバスエラーが発生すると、例外処理（なんらかの異常が発生した場合、実行中のプログラムの処理を中断・中止する）の割り込みを、ＣＰＵ１１は受け付ける。即ち、ＣＰＵ１１は、データ記憶領域Ｄ１、Ｄ２、Ｄ３のプログラム等に異常があることを検知する検知部として機能する。
【００９０】
ここで、図８におけるスタートは、ＣＰＵ１１が例外処理の割り込みを受けた時点を示している。この割り込みを検知すると、制御部１０のＣＰＵ１１は、現在処理中のプログラム等を確認する（ステップ♯５１）。そして、書込部１６を制御して、制御部１０は、異常が確認されたプログラム等のデータ記憶領域Ｄ１、Ｄ２、Ｄ３に対応するチェックサム記憶領域Ｅ１、Ｅ２、Ｅ３に異常を示す一定の値として０ｘ００００を書き込む（ステップ♯５２）。
【００９１】
その後、制御部１０は、基本領域Ｔ１に異常があればエラーの発生のためプリンタ１の動作を停止（休止）し、一方、拡張領域Ｔ２、Ｔ３に異常があれば、該当するオプション機器の制御を切り離すようにしてもよい。これにより、基本領域Ｔ１（＝データ記憶領域Ｄ１）に異常がなければ、プリンタ１本体については、少なくとも使用し続けることが可能になる。尚、この際、制御部１０は、操作パネル１８にエラー表示をしても良いし、再起動を促す表示を行っても良い。又、プリンタ１の電源が再投入されれば、起動処理が始まると、図７で説明した制御が行われることになる。
【００９２】
このようにして、本実施形態の構成によれば、制御部１０が異常のあるデータ記憶領域Ｄ１、Ｄ２、Ｄ３に記憶される機能を使用不可として制御対象外にすることで、その機能が画像形成装置（プリンタ１）の本質的、基本的な動作に関するものでない場合には、記憶部１２のデータの一部が、書換時の電源遮断、高電圧、静電気等により破壊されても、画像形成装置自体は動作可能な状態を維持することができる。
【００９３】
又、記憶領域のブロックのうち１つを、装置本体の動作を制御するプログラム等を記憶する基本領域Ｔ１とし、その他のブロックをオプション機器（フィーダ２、両面印刷ユニット３）の動作を制御するプログラム等を記憶する拡張領域Ｔ２、Ｔ３として、記憶領域をブロック単位に分割するが、オプション機器の数は限られたものであるから、記憶部１２の記憶領域が必要以上のブロックに分割されず、処理の複雑化を防ぐことができる。
【００９４】
又、拡張領域Ｔ２、Ｔ３に異常がある場合、その拡張領域Ｔ２、Ｔ３に記憶されるデータに対応するオプション機器を使用不可として制御部１０が扱うことで、そのオプション機器は使用不可となるものの、画像形成装置やその他のオプション機器の使用は確保される。従って、使用者の利便性を向上させることができる。一方、基本領域Ｔ１に異常があると画像形成装置本体の制御・動作にいずれ異常が生じてしまうため、画像形成装置をエラーとして停止させて、画像形成装置の使用中でのエラー停止を防ぐことができる。
【００９５】
又、これらのオプション機器を制御するためのプログラムに異常がある場合でも、オプション機器が装着された画像形成装置全体が動作不能状態となることはなく、該当するオプション機器の制御を切り離すことで画像形成装置自体は、動作可能な状態を維持することができる。
【００９６】
又、画像形成装置の電源投入時ごとに、チェックサムを行わず、チェックサム記憶領域Ｅ１、Ｅ２、Ｅ３に異常であることを示す値の有無により、各ブロックの正常、異常を判断するから、画像形成装置やオプション機器が使用可能であるかが迅速に判断され、画像形成装置の起動処理を高速化することができる。
【００９７】
以下、別実施形態について説明する。
【００９８】
上述の実施形態では、プリンタ１（画像形成装置）に本発明に係る記憶装置を用いた態様を示したが、これに限られるものではなく、プログラム等の各種データが組み込まれる複合機、複写機、携帯電話等、各種機器に適用可能である。
【００９９】
又、データ更新後、最初の電源投入時に、チェックサム値の比較を行い、異常があった場合は、チェックサム記憶領域Ｅ１、Ｅ２、Ｅ３に、異常を示す一定の値（例えば、０ｘ００００）の書込を行ったが、この書き込みを行わないようにしても良い。即ち、起動処理に要する時間は若干長くなるが、より信頼性を向上させるため、プリンタ１の電源が投入されるたびに、チェックサムの演算が行われるようにしても良い。
【０１００】
又、プリンタ１に接続されるオプション機器として、フィーダ２、両面印刷ユニット３を例として説明を行ったが、その他のオプション機器としては、画像形成後のシートに対しステープル等の各種処理を行うフィニッシャ（後処理装置）や、穿孔処理を行うパンチユニット等、多様なオプション機器を本発明は対象に含めることができる。
【０１０１】
又、本発明の実施形態を説明したが、本発明の範囲はこれに限定されるものではなく、発明の主旨を逸脱しない範囲で種々の変更を加えて実施することができる。
【産業上の利用可能性】
【０１０２】
本発明は、記憶装置及び例えば、記憶装置を備えた画像形成装置等に利用可能である。
【図面の簡単な説明】
【０１０３】
【図１】本発明の実施形態に係るプリンタの概略構造を示す模型的正面断面図である。
【図２】本発明の実施形態に係る１つの画像形成ユニットを示す部分拡大図である。
【図３】本発明の実施形態に係るプリンタのブロック図である。
【図４】本発明の実施形態に係るフラッシュＲＯＭの記憶領域を示した説明図である。
【図５】本発明の実施形態に係るフラッシュＲＯＭのデータの更新の一例を示すフローチャートである。
【図６】本発明の実施形態に係るフラッシュＲＯＭのデータの更新確認処理の一例を示すフローチャートである。
【図７】本発明の実施形態に係るプリンタ起動処理の一例を示すフローチャートである。
【図８】本発明の実施形態に係るフラッシュＲＯＭにデータの破壊があった場合の制御の一例を説明するためのフローチャートである。
【符号の説明】
【０１０４】
１      プリンタ（画像形成装置）        １６  書込部
１０    制御部                          ２    フィーダ（オプション機器）
１１    ＣＰＵ（演算部）                ３    両面印刷ユニット（オプション機器）
１５    フラッシュＲＯＭ（記憶部１２）
Ｄ１、Ｄ２、Ｄ３    データ記憶領域
Ｅ１、Ｅ２、Ｅ３    チェックサム記憶領域
Ｔ１                基本領域
Ｔ２、Ｔ３          拡張領域
【図１】
0005094316.tif 000002
【図２】
0005094316.tif 000003
【図３】
0005094316.tif 000004
【図４】
0005094316.tif 000005
【図５】
0005094316.tif 000006
【図６】
0005094316.tif 000007
【図７】
0005094316.tif 000008
【図８】
0005094316.tif 000009