(57)【要約】【課題】  メモリ容量の増加、コストアップすることなく、デバイス負担を低減し、カウンタ値の信頼性を高める。【解決手段】  カウンタ２には、初期設定として全ビット「１」が設定される。その後、カウント動作が行われる。カウンタ２では、ビットが、最下位から順にビット０／ビット１／…と、カウントアップされる。すなわち、カウント動作は、１の補数に対して行われる。このとき、ビットがＯＦＦからＯＮ（０→１）となるのは、２回に１回となる（斜線部分）。すなわち、２回に１回、セクタ消去が発生することになる。これは、従来の一般的なカウンタに対して、セクタ消去の回数を半分に減らしたことになる。【選択図】    図２
2006164354.tif 000002
【特許請求の範囲】
【請求項１】
各ビットにおいてローのデータをハイのデータへ変更するのに先立って、一旦、セクタ内のデータを全てハイのデータにするセクタ消去を必要とする不揮発性メモリからなる書換え可能なカウンタと、前記カウンタのデータ書き込みおよびデータ読み出しを制御する制御部とを備えるカウンタ装置において、
前記制御部は、前記カウンタに対して１の補数を元にデータ書き込みおよびデータ読み出しを行ってカウント値を更新することを特徴とするカウンタ装置。
【請求項２】
各ビットにおいてローのデータをハイのデータへ変更するのに先立って、一旦、セクタ内のデータを全てハイのデータにするセクタ消去を必要とする不揮発性メモリからなる書換え可能なカウンタのデータ書き込みおよびデータ読み出しを制御するカウンタ方法において、
前記カウンタに対して１の補数を元にデータ書き込みおよびデータ読み出しを行ってカウント値を更新することを特徴とするカウンタ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリを使用したカウンタ装置およびカウント方法に関する。
【背景技術】
【０００２】
プリンタや複写機は、多くのカウンタを不揮発性メモリ（フラッシュメモリ：登録商標）で管理している。カウンタは、印刷枚数をカウントするもので、課金目的などでも使用されるため、高い信頼性が要求される。ところで、不揮発性メモリは、使用頻度が高いビットほど信頼性が低くなっていく。そこで、メーカは、書き込み保証回数を設定しており、それを超えた場合には不揮発性メモリの信頼性が著しく低下する（メーカ保証されない）。
【０００３】
不揮発性メモリは、そのデバイス特性により、カウンタが更新される度に、カウンタ値を不揮発性メモリ上の同じ箇所に上書きすることはできない。つまり、不揮発性メモリでは、セクタと呼ばれる単位で記憶領域が分けられており、データ更新時に、ＯＦＦとなっているビットをＯＮにするためには、一旦、セクタ内のデータを全てビットＯＮ（０ｘｆｆ）にするセクタ消去を行った後、新たなデータを書き込む必要がある。
【０００４】
一般に、カウンタとしては、図４に示すように、予め全ビットに「０」を書き込んでおき、カウントする際には、下位ビットから１ビットづつカウントアップしていく。上述したように、不揮発性メモリでは、ＯＦＦとなっているビットをＯＮにするためには、一旦、セクタ内のデータを全てビットＯＮ（０ｘｆｆ）にするセクタ消去を行う必要がある。したがって、この場合、図５に示すように、カウンタ値を更新する度に、セクタ消去を行うことになり、カウンタのビット数分の書き込みが発生する。このため、上述したように、不揮発性メモリの信頼性低下が早まることなる。カウンタ値の信頼性を高めるためには、書き換え回数は少ないほうが望ましい。
【０００５】
そこで、カウンタ値の更新時におけるセクタ消去回数を少なくするための技術がいくつか提案されている（例えば特許文献１、特許文献２参照）。この従来技術では、図６に示すように、予め、カウンタの全ビットに「１」を書き込んでおき、ビットＯＦＦ（１→０）によりカウントを行う。ビットをＯＮからＯＦＦにすることで、カウンタのバイト数分はセクタ消去なしでカウントできるようになっている。
【特許文献１】特開２００１−１１８３９１号公報
【特許文献２】特開平１１−１１０９８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術では、ビット数＝最大カウンタ値となってしまうため、最大カウント値分のビット数が必要となる。例えば、数十万単位のカウントを行う場合には、数十万ビットが必要となり、メモリ容量、コストを考えると、現実的には搭載が難しくなるという問題があった。
【０００７】
本発明は、このような事情を考慮してなされたものであり、その目的は、メモリ容量の増加、コストアップすることなく、デバイス負担を低減し、カウンタ値の信頼性を高めることができるカウンタ装置およびカウント方法を提供することにある。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために、本発明は、各ビットにおいてローのデータをハイのデータへ変更するのに先立って、一旦、セクタ内のデータを全てハイのデータにするセクタ消去を必要とする不揮発性メモリからなる書換え可能なカウンタと、前記カウンタのデータ書き込みおよびデータ読み出しを制御する制御部とを備えるカウンタ装置において、前記制御部は、前記カウンタに対して１の補数を元にデータ書き込みおよびデータ読み出しを行ってカウント値を更新することを特徴とする。
【０００９】
また、上述した課題を解決するために、本発明は、各ビットにおいてローのデータをハイのデータへ変更するのに先立って、一旦、セクタ内のデータを全てハイのデータにするセクタ消去を必要とする不揮発性メモリからなる書換え可能なカウンタのデータ書き込みおよびデータ読み出しを制御するカウンタ方法において、前記カウンタに対して１の補数を元にデータ書き込みおよびデータ読み出しを行ってカウント値を更新することを特徴とする。
【発明の効果】
【００１０】
この発明によれば、制御部により、各ビットにおいてローのデータをハイのデータへ変更するのに先立って、一旦、セクタ内のデータを全てハイのデータにするセクタ消去を必要とする不揮発性メモリからなる書換え可能なカウンタに対して１の補数を元にデータ書き込みおよびデータ読み出しを行ってカウント値を更新する。したがって、１の補数を元にカウントすることでセクタ消去の回数が減るため、メモリ容量の増加、コストアップすることなく、デバイス負担を低減し、カウンタ値の信頼性を高めることができるという利点が得られる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の一実施形態を、図面を参照して説明する。
図１は、本発明の実施形態によるカウンタ装置を示すブロック図である。フラッシュメモリ１は、不揮発性メモリであり、カウンタ２を有する。カウンタ２は、所定のビット数で構成されており、書換えの累積回数をカウントする。制御部３は、カウンタ２のデータ書き込みおよびデータ読み出しを制御する。なお、以下では、説明を簡単にするために、カウンタ２のビット数を８ビット（１バイト）として説明するが、これに限定されるものでなく、最大カウント値に応じて適宜必要なビット数を確保すればよい。
【００１２】
次に、図２は、上記カウンタ装置の動作を説明するための概念図である。本実施形態では、カウンタ値を１の補数として管理する。まず、初期設定として、カウンタ２の全ビットを「１」とする。初期設定後、実際のカウントが行われる。すなわち、カウント動作は、１の補数に対して行われる。図２には、カウンタ値を０から１５まで変化させたときのカウンタ２の状態遷移（上から下へ）が示されており、ビットは、最下位から順にビット０／ビット１／…となることが分かる。カウントアップにより、ビットがＯＦＦからＯＮ（０→１）となるのは、２回に１回となる（斜線部分）。
【００１３】
ここで、図３は、本実施形態によるカウンタ装置でのセクタ消去の発生頻度を示す概念図である。前述したように、フラッシュメモリ１では、ビットがＯＦＦからＯＮ（０→１）とする場合に、セクタ消去が発生する。すなわち、本実施形態では、図３に示すように、２回に１回、セクタ消去が発生することになる（太枠部分）。これは、従来の一般的なカウンタに対して、セクタ消去の回数を半分に減らしたことになる。また、特許文献１、２に対しては、ビット単位でカウントしているわけではないので、用意したビット数をｎとすると、２＾ｎだけカウントすることができ、メモリ容量の増加を抑えることが可能となる。
【００１４】
本実施形態によれば、２回に１回、ビットをOFF（１→０）するだけでカウント値を変更できるため、カウンタ更新によるデバイスの書き換え回数を従来の半分にすることができる。つまり、簡単なソフトの変更により、デバイス負担を半分に抑え、カウンタ値の信頼性を高めることができる。
【００１５】
なお、上述した実施形態においては、制御部３は、コンピュータシステム内で実行される。そして、上述した制御部３による一連の処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。すなわち、制御部３における、各処理手段、処理部は、ＣＰＵ等の中央演算処理装置がＲＯＭやＲＡＭ等の主記憶装置に上記プログラムを読み出して、情報の加工・演算処理を実行することにより、実現されるものである。
【００１６】
ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態によるカウンタ装置を示すブロック図である。
【図２】本実施形態によるカウンタ装置の動作を説明するための概念図である。
【図３】本実施形態によるカウンタ装置でのセクタ消去の発生頻度を示す概念図である。
【図４】従来の一般的なカウンタの動作を説明するための概念図である。
【図５】従来の一般的なカウンタでのセクタ消去の発生頻度を示す概念図である。
【図６】従来のセクタ消去発生頻度を低減したカウンタの動作を説明するための概念図である。
【符号の説明】
【００１８】
１  フラッシュメモリ（不揮発性メモリ）
２  カウンタ
３  制御部
【図１】
2006164354.tif 000003
【図２】
2006164354.tif 000004
【図３】
2006164354.tif 000005
【図４】
2006164354.tif 000006
【図５】
2006164354.tif 000007
【図６】
2006164354.tif 000008