(57)【要約】【課題】フラッシュメモリの再構成を、データを消去せずに行い、フラッシュメモリの有効化を図る。【解決手段】データの書換えの回数が所定の値に達した場合に、記憶領域３３に記憶されているデータＸのうちの所定の大きさ分のデータを記憶領域３２に移動させる。記憶領域３４に記憶されているデータＹのうちの所定の大きさ分のデータを、記憶領域３３のうち、データＸのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきたデータＹの一部または全部が記憶されていない領域に、移動させる。記憶領域３２に記憶されている、データＸの一部または全部を、記憶領域３４のうち、データＹのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた第１のデータの一部または全部が記憶されていない領域に、移動させる。そして、記憶領域３３および記憶領域３４に記憶されている残りのデータＸ、Ｙについても、同様に移動させる。【選択図】図７
2009025990.tif 000002
【特許請求の範囲】
【請求項１】
記憶されているデータを書き換えることが可能な第１の記憶領域、第２の記憶領域、および第３の記憶領域を有する記憶装置において、
前記第１の記憶領域には第１のデータが記憶されており、前記第２の記憶領域には第２のデータが記憶されており、かつ、前記第１の記憶領域におけるデータの書換えの回数または前記第２の記憶領域におけるデータの書換えの回数が所定の値に達した場合に、
前記第１の記憶領域に記憶されている前記第１のデータのうちの所定の大きさ分のデータを、前記第３の記憶領域に移動させる、第１のステップと、
前記第２の記憶領域に記憶されている前記第２のデータのうちの前記所定の大きさ分のデータを、前記第１の記憶領域のうち、前記第１のデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記第２のデータの一部または全部が記憶されていない領域に、移動させる、第２のステップと、
前記第３の記憶領域に記憶されている、前記第１のデータの一部または全部を、前記第２の記憶領域のうち、前記第２のデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記第１のデータの一部または全部が記憶されていない領域に、移動させる、第３のステップと、を実行し、
前記第１の記憶領域に記憶されている前記第１のデータのうちの未だ移動されていないデータおよび前記第２の記憶領域に記憶されている前記第２のデータのうちの未だ移動されていないデータについても、前記第１のステップないし前記第３のステップを実行する、
ことを特徴とする記憶装置の管理方法。
【請求項２】
前記第２の記憶領域に移動された前記第１のデータの一部または全部のデータの、前記第２の記憶領域における新たなアドレスと、前記第１の記憶領域における元のアドレスとを、対応付けて記憶しておき、前記元のアドレスを参照するアクセスの要求があった場合に、当該元のアドレスをそれに対応付けて記憶されている新たなアドレスに読み替えて、当該アクセスを受け付ける、
請求項１記載の記憶装置の管理方法。
【請求項３】
記憶されているデータを書き換えることが可能な第１の記憶領域、第２の記憶領域、および第３の記憶領域を有する記憶装置と画像形成装置に使用される消耗品を格納する消耗品格納部とによって構成される消耗品供給装置の制御方法であって、
前記第１の記憶領域には前記消耗品の使用に関するログデータが記憶されており、前記第２の記憶領域にはプログラムのデータが記憶されており、かつ、前記第１の記憶領域におけるデータの書換えの回数または前記第２の記憶領域におけるデータの書換えの回数が所定の値に達した場合に、
前記消耗品供給装置に、
前記第１の記憶領域に記憶されている前記ログデータのうちの所定の大きさ分のデータを、前記第３の記憶領域に移動させる、第１の処理と、
前記第２の記憶領域に記憶されている前記プログラムのデータのうちの前記所定の大きさ分のデータを、前記第１の記憶領域のうち、前記ログデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記プログラムのデータの一部または全部が記憶されていない領域に、移動させる、第２の処理と、
前記第３の記憶領域に記憶されている、前記ログデータの一部または全部を、前記第２の記憶領域のうち、前記プログラムのデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記ログデータの一部または全部が記憶されていない領域に、移動させる、第３の処理と、を実行させ、
さらに、前記第１の記憶領域に記憶されている前記ログデータのうちの未だ移動されていないデータおよび前記第２の記憶領域に記憶されている前記プログラムのデータのうちの未だ移動されていないデータについても、前記第１の処理ないし前記第３の処理を実行させる、
ことを特徴とする消耗品供給装置の制御方法。
【請求項４】
記憶されているデータを書き換えることが可能な第１の記憶領域、第２の記憶領域、および第３の記憶領域を有する記憶装置と、
画像形成装置に使用される消耗品を格納する消耗品格納部と、
演算装置と、を有し、
前記演算装置は、
前記第１の記憶領域には前記消耗品の使用に関するログデータが記憶されており、前記第２の記憶領域には前記ログデータを取得するためのプログラムのデータが記憶されており、かつ、前記第１の記憶領域におけるデータの書換えの回数または前記第２の記憶領域におけるデータの書換えの回数が所定の値に達した場合に、
前記第１の記憶領域に記憶されている前記ログデータのうちの所定の大きさ分のデータを、前記第３の記憶領域に移動させる、第１の処理と、
前記第２の記憶領域に記憶されている前記プログラムのデータのうちの前記所定の大きさ分のデータを、前記第１の記憶領域のうち、前記ログデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記プログラムのデータの一部または全部が記憶されていない領域に、移動させる、第２の処理と、
前記第３の記憶領域に記憶されている、前記ログデータの一部または全部を、前記第２の記憶領域のうち、前記プログラムのデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記ログデータの一部または全部が記憶されていない領域に、移動させる、第３の処理と、を実行し、
さらに、前記第１の記憶領域に記憶されている前記ログデータのうちの未だ移動されていないデータおよび前記第２の記憶領域に記憶されている前記プログラムのデータのうちの未だ移動されていないデータについても、前記第１の処理ないし前記第３の処理を実行する、
ことを特徴とする消耗品供給装置。
【請求項５】
記憶されているデータを書き換えることが可能な第１の記憶領域、第２の記憶領域、および第３の記憶領域を有する記憶装置を管理するコンピュータに用いられるコンピュータプログラムであって、
前記第１の記憶領域には第１のデータが記憶されており、前記第２の記憶領域には第２のデータが記憶されており、かつ、前記第１の記憶領域におけるデータの書換えの回数または前記第２の記憶領域におけるデータの書換えの回数が所定の値に達した場合に、前記コンピュータに、
前記第１の記憶領域に記憶されている前記第１のデータのうちの所定の大きさ分のデータを、前記第３の記憶領域に移動させる、第１の処理と、
前記第２の記憶領域に記憶されている前記第２のデータのうちの前記所定の大きさ分のデータを、前記第１の記憶領域のうち、前記第１のデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記第２のデータの一部または全部が記憶されていない領域に、移動させる、第２の処理と、
前記第３の記憶領域に記憶されている、前記第１のデータの一部または全部を、前記第２の記憶領域のうち、前記第２のデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記第１のデータの一部または全部が記憶されていない領域に、移動させる、第３の処理と、を実行させ、
前記第１の記憶領域に記憶されている前記第１のデータのうちの未だ移動されていないデータおよび前記第２の記憶領域に記憶されている前記第２のデータのうちの未だ移動されていないデータについても、前記第１の処理ないし前記第３の処理を実行させる、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フラッシュメモリなどの記憶装置の管理方法などに関する。
【背景技術】
【０００２】
近年、フラッシュメモリが、携帯電話やデジタルカメラなどの記憶装置として広く普及している。ＮＡＮＤ型のフラッシュメモリは、高集積化および大容量化が可能であり、ハードディスクに代わり、パーソナルコンピュータの外部記憶装置として利用され始めている。ＮＯＲ型のフラッシュメモリは、ランダムアクセス性に優れており、従来のＲＯＭに代わり、各種電子機器のプログラムの記憶のために用いられている。
【０００３】
しかし、いずれのタイプのフラッシュメモリにも、その構造上、データの書換えを行う回数に限界がある。データの書換えが一定の回数を超えた領域は、使用することができなくなってしまう。
【０００４】
そこで、データの書換え回数の限界を考慮してフラッシュメモリの使用の効率を高める方法が、提案されている。特許文献１に開示される方法によると、ファクシミリ装置に用いられるフラッシュメモリを、頻繁に読み書きされる画情報記憶エリアと、一旦制御プログラムが記憶されると書換えは行われないプログラム記憶エリアとに分ける。書換えを繰り返すことによって寿命が近づいた画情報記憶エリアのデータを消去し、プログラム記憶エリアに記憶されていた制御プログラムを画情報記憶エリアにコピーする。プログラム記憶エリアのデータも消去する。そして、元の画情報記憶エリアをプログラム記憶エリアとして使用し、元のプログラム記憶エリアを画情報記憶エリアとして使用する。つまり、画情報記憶エリアとプログラム記憶エリアとを、入れ替えて使用することができる。したがって、元の画情報記憶エリアが寿命に近づいた場合であっても、ほとんどデータの書換えが行われていない元のプログラム記憶エリアを新たに画情報記憶エリアとし、同じフラッシュメモリを引き続き使用することができる。
【特許文献１】特開２０００−２０４０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところが、ユーザは、フラッシュメモリに記憶されているデータを、記憶領域の再構成時にできるだけ消去することなく残しておきたい場合がある。
【０００６】
しかし、このような場合には、特許文献１に開示される方法を適用することができない。なぜならば、特許文献１に開示される方法によると、フラッシュメモリの一部の領域が寿命に近づいた際に、制御プログラム以外のデータが、記憶エリアの入替えに伴って、消去されてしまうからである。
【０００７】
本発明は、このような問題点に鑑み、フラッシュメモリを、それに記憶されているデータを記憶領域の再構成時に消去することなく、できるだけ無駄なく有効的に使用することを、目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る記憶装置の管理方法は、記憶されているデータを書き換えることが可能な第１の記憶領域、第２の記憶領域、および第３の記憶領域を有する記憶装置において、前記第１の記憶領域には第１のデータが記憶されており、前記第２の記憶領域には第２のデータが記憶されており、かつ、前記第１の記憶領域におけるデータの書換えの回数または前記第２の記憶領域におけるデータの書換えの回数が所定の値に達した場合に、前記第１の記憶領域に記憶されている前記第１のデータのうちの所定の大きさ分のデータを、前記第３の記憶領域に移動させる、第１のステップと、前記第２の記憶領域に記憶されている前記第２のデータのうちの前記所定の大きさ分のデータを、前記第１の記憶領域のうち、前記第１のデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記第２のデータの一部または全部が記憶されていない領域に、移動させる、第２のステップと、前記第３の記憶領域に記憶されている、前記第１のデータの一部または全部を、前記第２の記憶領域のうち、前記第２のデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記第１のデータの一部または全部が記憶されていない領域に、移動させる、第３のステップと、を実行し、前記第１の記憶領域に記憶されている前記第１のデータのうちの未だ移動されていないデータおよび前記第２の記憶領域に記憶されている前記第２のデータのうちの未だ移動されていないデータについても、前記第１のステップないし前記第３のステップを実行する、ことを特徴とする。
【０００９】
好ましくは、前記第２の記憶領域に移動された前記第１のデータの一部または全部のデータの、前記第２の記憶領域における新たなアドレスと、前記第１の記憶領域における元のアドレスとを、対応付けて記憶しておき、前記元のアドレスを参照するアクセスの要求があった場合に、当該元のアドレスをそれに対応付けて記憶されている新たなアドレスに読み替えて、当該アクセスを受け付ける。
【００１０】
本発明に係る消耗品供給装置の制御方法は、記憶されているデータを書き換えることが可能な第１の記憶領域、第２の記憶領域、および第３の記憶領域を有する記憶装置と画像形成装置に使用される消耗品を格納する消耗品格納部とによって構成される消耗品供給装置の制御方法であって、前記第１の記憶領域には前記消耗品の使用に関するログデータが記憶されており、前記第２の記憶領域にはプログラムのデータが記憶されており、かつ、前記第１の記憶領域におけるデータの書換えの回数または前記第２の記憶領域におけるデータの書換えの回数が所定の値に達した場合に、前記消耗品供給装置に、前記第１の記憶領域に記憶されている前記ログデータのうちの所定の大きさ分のデータを、前記第３の記憶領域に移動させる、第１の処理と、前記第２の記憶領域に記憶されている前記プログラムのデータのうちの前記所定の大きさ分のデータを、前記第１の記憶領域のうち、前記ログデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記プログラムのデータの一部または全部が記憶されていない領域に、移動させる、第２の処理と、前記第３の記憶領域に記憶されている、前記ログデータの一部または全部を、前記第２の記憶領域のうち、前記プログラムのデータのうちの未だ移動されていないデータが記憶されておらずかつ移動されてきた前記ログデータの一部または全部が記憶されていない領域に、移動させる、第３の処理と、を実行させ、さらに、前記第１の記憶領域に記憶されている前記ログデータのうちの未だ移動されていないデータおよび前記第２の記憶領域に記憶されている前記プログラムのデータのうちの未だ移動されていないデータについても、前記第１の処理ないし前記第３の処理を実行させる、ことを特徴とする。
【発明の効果】
【００１１】
フラッシュメモリが記憶するデータを記憶領域の再構成時に消去することなく、フラッシュメモリを有効的に使用することができる。
【発明を実施するための最良の形態】
【００１２】
〔レーザプリンタ１の基本構成〕
図１は本発明の実施形態に係る４サイクル方式のレーザプリンタ１の内部構成を示す断面図、図２は各色のメモリ基板Ｍと制御部２０との接続構成を示す図である。
である。
【００１３】
図１において、レーザプリンタ１は、イエロ（Ｙ）、シアン（Ｃ）、マゼンタ（Ｍ）、ブラック（Ｋ）の４色のトナーによってフルカラー画像を形成する。また、ブラック（Ｋ）のトナーのみを用いてモノクロ画像を形成することもある。
【００１４】
レーザプリンタ１は、プリントヘッド（書込み部）１１、トナーカートリッジ部１２、ドラムカートリッジ部１３、転写ベルト部１４、二次転写部１５、定着部１６、給紙部１７、排紙トレー１８、および制御部２０などから構成されている。
【００１５】
プリントヘッド１１は、レーザダイオード、ポリゴンモータ、ＳＯＳセンサ、ミラー、レンズ類などからなり、ドラムカートリッジ部１３の感光体の表面にレーザ光を照射して静電潜像を形成する。
【００１６】
ドラムカートリッジ部１３は、感光体および帯電チャージャなどからなり、静電潜像が形成された感光体の表面に、トナーカートリッジ部１２からのマイナス帯電されたトナーを付着させ、可視のトナー像を形成する。感光体に形成されたトナー像は、転写ベルト部１４に転写される。
【００１７】
トナーカートリッジ部１２は、Ｙ、Ｍ、Ｃ、Ｋの各色用の４つのトナーカートリッジ１２２Ｙ、１２２Ｍ、１２２Ｃ、１２２Ｋ、およびこれら各色のトナーカートリッジ１２２を収納して回転可能なトナーカートリッジラックによって構成され、各色のトナーを供給する。
【００１８】
なお、トナーカートリッジ１２２Ｙ、１２２Ｍ、１２２Ｃ、１２２Ｋの全部または一部を「トナーカートリッジ１２２」と記載することがある。後述するメモリ基板Ｍ、ＣＰＵ１１１、フラッシュメモリ１１２などついても同様である。
【００１９】
トナーカートリッジラックにおける各色のトナーカートリッジ１２２の設置場所は、物理的な機構によって決められており、所定の位置に所定の色のトナーカートリッジ１２２が搭載されるようになっている。したがって、トナーカートリッジラックの回転角度位置によって、またはトナーカートリッジラックを回転駆動するモータの制御回路によって、各トナーカートリッジ１２２の現在位置や、現像のために必要な位置に所定のトナーカートリッジ１２２が位置決めされたかどうかが検出可能である。
【００２０】
トナーカートリッジラックは、後に説明する制御部２０からの指令に応じて回転し、トナーカートリッジ１２２Ｙ、１２２Ｍ、１２２Ｃ、１２２Ｋのうちの１つのトナーカートリッジ１２２が感光体との対面位置に移動する。対面したトナーカートリッジ１２２によるトナー像の形成が終わると、トナーカートリッジラックが回転して次の色のトナーカートリッジ１２２が感光体と対面するように位置決めされる。これが繰り返されて、各色のトナー像が、順次、感光体の表面に形成され、転写ベルト部１４に転写される。
【００２１】
なお、トナーカートリッジ１２２の回転方向の停止位置が十分な精度となるよう、トナーカートリッジラックに物理的なガイト機構などが設けられている。
【００２２】
転写ベルト部１４は、転写ベルト、転写ローラ、駆動ローラ、クリーニング機構、およびセンサなどによって構成されており、感光体に形成されたＹ、Ｍ、Ｃ、Ｋの各色のトナー像を順に転写ベルトに転写し、フルカラーのトナー画像を形成する。
【００２３】
二次転写部１５は、転写ベルト部１４に形成されたトナー画像を、給紙部１７から給紙搬送される用紙に転写する。
【００２４】
定着部１６は、加熱ローラ、加圧ローラ、ヒータランプ、およびサーミスタなどによって構成されており、二次転写部１５により用紙に転写されたトナー像を熱によって用紙に固着させ、排紙トレー１８上に排出する。
【００２５】
制御部２０は、ＣＰＵおよびＲＯＭまたはＲＡＭなどのメモリから構成される。メモリには、レーザプリンタ１における種々の処理および各部の制御を行うためのプログラムおよびデータが記憶されており、ＣＰＵによってそれらのプログラムが実行され、種々の機能が実現される。
【００２６】
〔メモリ基板Ｍの基本構成〕
次に、各色のトナーカートリッジ１２２に搭載されているメモリ基板Ｍについて説明する。
【００２７】
図２において、各色のトナーカートリッジ１２２Ｙ、１２２Ｍ、１２２Ｃ、１２２Ｋに対応して、メモリ基板ＭＹ、ＭＭ、ＭＣ、ＭＫがそれぞれ１つずつ装着されている。
【００２８】
メモリ基板Ｍは、それぞれ、ＣＰＵ１１１およびフラッシュメモリ１１２などから構成される。なお、メモリ基板Ｍとして、メモリを内蔵した１チップＣＰＵから構成されるものを用いてもよい。
【００２９】
メモリ基板Ｍのフラッシュメモリ１１２には、そのメモリ基板Ｍに対応する色のトナーに関するデータおよび制御用のプログラムのデータ（例えば、機械語で記述されたコード）が記憶されている。これについては、後に詳細に説明する。
【００３０】
メモリ基板ＭのＣＰＵ１１１は、制御部２０からの指示に従ってプログラムを実行することによって、そのメモリ基板Ｍのフラッシュメモリ１１２に記憶されているデータを制御する。
【００３１】
図３はフラッシュメモリ１１２内のアドレスマップを示す図、図４はフラッシュメモリ１１２内の入替処理前の第３の記憶領域３３に記憶される情報のアドレスマップの例を示す図である。
【００３２】
フラッシュメモリ１１２は、図３に示すように、第１の記憶領域３１、第２の記憶領域３２、第３の記憶領域３３、および第４の記憶領域３４の４つの記憶領域に分割されている。さらに、第３の記憶領域３３は所定のサイズ（本実施形態では、２ｋｂｉｔ）の複数のブロックＢＣに分割されており、第４の記憶領域３４はブロックＢＣと同じサイズの複数のブロックＢＤに分割されている。
【００３３】
トナーカートリッジ１２２の出荷時、第３の記憶領域３３には、図４に示すように、そのトナーカートリッジ１２２自身のＩＤの情報、色、現像出力値、およびレーザ光量など特性に関する情報、作像数、使用期間、トータル印字枚数、およびトナー消費率など使用に関する情報、入替フラグおよび入替完了フラグなど後述するデータの入替処理のための情報などを示すデータが格納（記憶）されている。さらに、１つのブロックＢＣごとに、書換え回数カウンタが記憶されている。このように、第３の記憶領域３３は、出荷時、主にトナーカートリッジ１２２自身の属性に関するデータが記憶される「属性データ領域」として用いられる。
【００３４】
なお、入替完了フラグは、後述するデータの入替処理がそのフラッシュメモリ１１２において既に行われたことがあるか否かを示す。初期値は、行われたことがないことを意味する「０」である。入替フラグは、後述するデータの入替処理を開始すべきか否かを示す。初期値は、入替処理を開始すべきでないことを意味する「０」である。
【００３５】
一方、第４の記憶領域３４には、印字の処理の制御および制御部２０との通信などを行うためのプログラムのデータが記憶されている。つまり、第４の記憶領域３４は、出荷時、プログラムのデータが記憶される「プログラムデータ領域」として用いられる。１つのプログラムが１つのブロックＢＤのみに記憶されている場合もあれば、複数のブロックＢＤに分割されて記憶されている場合もある。
【００３６】
一般に、プログラムのデータは、バグの修正またはアップグレードなどの必要が生じない限り更新されない。一方、属性のデータ、特に、使用に関するデータは、頻繁に更新される。したがって、属性データ領域はプログラムデータ領域に比べて相当高い頻度でデータの書換えが行われると、言える。
【００３７】
第１の記憶領域３１には、第３の記憶領域３３に記憶されているデータと第４の記憶領域３４に記憶されているデータとを入れ替える処理を実行するためのプログラム（以下、「データ入替プログラム」と記載する。）およびデータの入替え後にアドレスを読み替える処理を実行するためのプログラム（以下、「アドレス読替プログラム」と記載する。）などのプログラムのデータが記憶されている。これらのプログラムは書き換えられない。また、第１の記憶領域３１には、予め決められたプログラムのデータ以外は追記されない。つまり、第１の記憶領域３１は、ＲＯＭのように用いられる。
【００３８】
第２の記憶領域３２には、第３の記憶領域３３に記憶されているデータと第４の記憶領域３４に記憶されているデータとを入れ替える際に用いられる。通常は、空である。または不要なデータが記憶されている。第２の記憶領域３２のサイズは、１つのブロックＢＣ分つまり２ｋｂｉｔあれば足りる。
【００３９】
前に述べたように、一般に、フラッシュメモリは、その構造上、データの書換えを行う回数に限界がある。データの書換えが一定の回数を超えた領域は、使用することができなくなってしまう。ただし、この一定の回数は、完全に同一の構造を有するフラッシュメモリ同士であっても多少の違いがあり、一意には決まらない。
【００４０】
そこで、本実施形態では、フラッシュメモリ１１２の製造元によって保証されている書換え回数から所定の回数（例えば、そのトナーカートリッジ１２２が使えなくなるまでに行われるプログラムの更新の予想回数）を引いた値を、書換えの限界の回数として用いる。そして、第３の記憶領域３３における書換え回数がその限界の回数に達したら、その第３の記憶領域３３に寿命が来たとみなす。以下、その限界の回数を「書換え寿命回数」と記載する。
【００４１】
〔データ書換え時の動作〕
図５はフラッシュメモリ１１２のデータの書換えの処理の流れの例を説明するフローチャートである。
【００４２】
ＣＰＵ１１１は、トナーが使用されまたは制御部２０から所定の指令を受けるごとに、第１の記憶領域３１に記憶されているプログラムによって、図５に示す処理を実行する。ここで、トナーカートリッジ１２２ＫのＣＰＵ１１１Ｋがその処理を実行する場合を例に、その処理の手順を説明する。
【００４３】
トナーが使用されまたは制御部２０から所定の指令を受けると、ＣＰＵ１１１Ｋは、フラッシュメモリ１１２Ｋの第３の記憶領域３３のデータの書換えが必要な場合は（図５の＃１０１でＹｅｓ）、トナーの使用状況に応じてまたは制御部２０からの指令に従ってブロックＢＣに記憶されているデータの書換えを行う（＃１０２）。
【００４４】
今回のデータの書換えに伴って、書換えが行われるブロックＢＣに記憶されている書換え回数カウンタを１つカウントアップする（＃１０３）。
【００４５】
そのブロックＢＣの書換え回数カウンタが書換え寿命回数に達したか否かをチェックする（＃１０４）。
【００４６】
書換え寿命回数に達していない場合は（＃１０４でＮｏ）、今回のデータの書換えの処理を終了する。
【００４７】
書換え寿命回数に達した場合は（＃１０４でＹｅｓ）、入替完了フラグをチェックすることによって、過去にフラッシュメモリ１１２Ｋにおいてデータの入替処理が行われたことがあるか否かをチェックする（＃１０５）。入替完了フラグが「０」である場合つまり行われたことがない場合は（＃１０５でＮｏ）、入替フラグを立てて「１」に更新し（＃１０６）、今回のデータの書換えの処理を終了する。そして、後述するデータの入替処理が実行される。
【００４８】
一方、入替完了フラグが「１」である場合つまりデータの入替処理が既に行われたことがある場合は（＃１０５でＹｅｓ）、フラッシュメモリ１１２Ｋ自体の寿命であると判断し、それをレーザプリンタ１の本体に通知し（＃１０７）、今回のデータの書換えの処理を終了する。
【００４９】
〔データの入替処理〕
図６は第３の記憶領域３３および第４の記憶領域３４にそれぞれ記憶されているデータの入替処理の流れの例を説明するフローチャート、図７はブロックＢＣのデータとブロックＢＤのデータとの入替えの方法の例を説明するための図である。
【００５０】
次に、第３の記憶領域３３のデータと第４の記憶領域３４のデータとを入れ替える処理を、図６および図７を参照しながら説明する。
【００５１】
メモリ基板Ｍでは、入替フラグの状態をチェックするプログラムが常時起動している。入替フラグが立ったことを検知すると（図６の＃２０１でＹｅｓ）、データ入替プログラムを起動し（＃２０２）、入替処理を次のように実行する。
【００５２】
図７（ａ）のように、第３の記憶領域３３の１番目のブロックＢＣつまりブロックＢＣ１に記憶されているデータつまりデータＸ１を、第２の記憶領域３２にコピーすることによって退避する（＃２０３）。正常にコピーできなかった場合は（＃２０４でＮｏ）、第２の記憶領域３２のデータを消去して（＃２１４）、コピーをやり直す（＃２０３）。
【００５３】
コピーが正常にできたら（＃２０４でＹｅｓ）、図７（ｂ）のように、コピー元のブロックＢＣつまりブロックＢＣ１に記憶されているデータを消去することによって空きブロックにし（＃２０５）、第４の記憶領域３４の１番目のブロックＢＤつまりブロックＢＤ１に記憶されているデータつまりデータＹ１を、空きブロックつまりブロックＢＣ１にコピーする（＃２０６）。
【００５４】
コピーが正常にできたら（＃２０７でＹｅｓ）、図７（ｃ）のように、コピー元のブロックＢＤつまりブロックＢＤ１に記憶されているデータを消去することによって空きブロックにし（＃２０８）、第２の記憶領域３２に退避しているデータつまりデータＸ１を、空きブロックつまりブロックＢＤ１にコピーする（＃２０９）。
【００５５】
これにより、第３の記憶領域３３の１番目のブロックＢＣのデータと第４の記憶領域３４の１番目のデータとの入替えが完了する。
【００５６】
コピーが正常にできたら（＃２１０でＹｅｓ）、図７（ｄ）のように、第２の記憶領域３２に退避されているデータを消去し（＃２１１）、１番目のブロックＢＣ、ＢＤのデータの入替えの場合と同様に、第２の記憶領域３２にデータを退避させながら、２番目以降のブロックＢＣ、ＢＤのデータの入替えを行う。
【００５７】
すべてのブロックＢＣ、ＢＤのデータの入替えが完了したら（＃２１２でＹｅｓ）、入替完了フラグを立てて「１」に更新し（＃２１３）、入替フラグを「０」にして下げる（＃２１４）。
【００５８】
以上の処理によって、第３の記憶領域３３のデータと第４の記憶領域３４のデータとの入替えが完了する。その後、第３の記憶領域３３は属性データ領域として用いられ、第４の記憶領域３４はプログラムデータ領域として用いられる。
【００５９】
〔アドレスの読替処理〕
図８はアドレスの読替えの処理の流れの例を説明するフローチャートである。
【００６０】
第３の記憶領域３３のデータと第４の記憶領域３４のデータとの入替え後、両記憶領域にアクセスするには、アドレスを読み替えなければならない。そこで、メモリ基板Ｍでは、図８のような処理が行われる。
【００６１】
第３の記憶領域３３または第４の記憶領域３４に記憶されているデータの読取りを行いまたはこれらの記憶領域のデータの書換えを行うプログラムには、読取りおよび書換えを行う前に入替完了フラグをチェックしそれが「１」であればアドレス読替プログラムを起動するコードが記述されている。
【００６２】
したがって、読取りおよび書換えの必要が生じると、ＣＰＵ１１１は、このコードに従って、入替完了フラグをチェックし（＃３０１）、「１」であれば（＃３０１でＹｅｓ）、アドレス読替プログラムを起動する（＃３０２）。
【００６３】
ただし、データの入替えの前後で、入替完了フラグが記憶されるブロックが異なる。そこで、出荷時に入替完了フラグが記憶されているブロック（図３および図４の例ではブロックＢＣ１３）と、予め分かっている、入替え後に入替完了フラグが記憶されるブロック（図７の入替処理の例では、ブロックＢＤ１３）とを、両方チェックする。そして、入替完了フラグの存在をチェックし、その値をチェックする。または、入替完了フラグを、入替えが行われない記憶領域、例えば第１の記憶領域３１に記憶させておいてもよい。
【００６４】
フローチャートに戻って、ＣＰＵ１１１は、アドレス読替プログラムに従って、今回の読取りまたは書換えのアドレスを、入替え前後のアドレス同士の差分に基づいて読み替える（＃３０３）。例えば、第３の記憶領域３３のブロックＢＣ１、ＢＣ２、…、ＢＣｘ、…のデータと第４の記憶領域３４のブロックＢＤ１、ＢＤ２、…、ＢＤｘ、…のデータとが入れ替えられた場合において、読取りまたは書換えの対象としていずれかのブロックＢＣのアドレスが指定されたのであれば、そのアドレスを、「２０００Ｈ」加算することによって読み替える。一方、いずれかのブロックＢＤのアドレスが指定されたのであれば、そのアドレスを、「２０００Ｈ」減算することによって読み替える。
【００６５】
そして、読み替えたアドレスで、ブロックにアクセスしデータの読取りまたは書換えを開始する（＃３０４）。
【００６６】
入替完了フラグが「０」である場合は（＃３０２でＮｏ）、アドレスの読替えは行わない。
【００６７】
本実施形態によると、１ブロック分の記憶領域を入替え専用に確保しておけば、書換え寿命に近づいた第３の記憶領域３３のデータと、書換え回数の少ない第４の記憶領域３４のデータとを、入れ替えることができる。よって、フラッシュメモリ１１２の寿命を約２倍に延ばし、かつ、入替え専用の記憶領域を小さく抑えることができるので、フラッシュメモリ１１２を有効的に使用することができる。
【００６８】
本実施形態では、プリンタのトナーカートリッジが有するフラッシュメモリを例に説明したが、他の用途のフラッシュメモリに本発明を用いてもよい。例えば、携帯電話に内蔵されるフラッシュメモリなどに、本発明を用いてもよい。
【００６９】
本実施形態では、予め決められたブロックＢＣ、ＢＤのそれぞれに記憶されているデータ同士を入れ替えたが、入替えの必要が生じた際にどのブロックＢＣ、ＢＤのデータ同士を入れ替えるのかを決めてもよい。そして、アドレスの読替えを行うために、入替え後に、ペアになったブロックＢＣ、ＢＤそれぞれのアドレスを第１の記憶領域３１ないし第４の記憶領域３４のいずれかの所定の記憶領域に記憶させておけばよい。
【００７０】
その他、レーザプリンタ１、トナーカートリッジ１２２、メモリ基板Ｍ、フラッシュメモリ１１２の全体または各部の構成、処理内容、処理順序、フラッシュメモリ１１２内の記憶領域の構成などは、本発明の趣旨に沿って適宜変更することができる。
【図面の簡単な説明】
【００７１】
【図１】本発明の実施形態に係る４サイクル方式のレーザプリンタ１の内部構成を示す断面図である。
【図２】各色のメモリ基板と制御部との接続構成を示す図である。
【図３】フラッシュメモリ内のアドレスマップを示す図である。
【図４】フラッシュメモリ内の入替処理前の第３の記憶領域に記憶される情報のアドレスマップの例を示す図である。
【図５】フラッシュメモリのデータの書換えの処理の流れの例を説明するフローチャートである。
【図６】第３の記憶領域および第４の記憶領域にそれぞれ記憶されているデータの入替処理の流れの例を説明するフローチャートである。
【図７】２つのブロックのデータの入替えの方法の例を説明するための図である。
【図８】アドレスの読替えの処理の流れの例を説明するフローチャートである。
【符号の説明】
【００７２】
１  レーザプリンタ（画像形成装置）
１２  トナーカートリッジ部（消耗品供給装置）
３２  第２の記憶領域（第３の記憶領域）
３３  第３の記憶領域（第１の記憶領域）
３４  第４の記憶領域（第２の記憶領域）
１１２  フラッシュメモリ（記憶装置）
１２２  トナーカートリッジ（消耗品格納部）
【図１】
2009025990.tif 000003
【図２】
2009025990.tif 000004
【図３】
2009025990.tif 000005
【図４】
2009025990.tif 000006
【図５】
2009025990.tif 000007
【図６】
2009025990.tif 000008
【図７】
2009025990.tif 000009
【図８】
2009025990.tif 000010