JPH11110983A - フラッシュメモリの消去回数管理方法及びそれを用いたデータ処理装置 - Google Patents
フラッシュメモリの消去回数管理方法及びそれを用いたデータ処理装置Info
- Publication number
- JPH11110983A JPH11110983A JP27243997A JP27243997A JPH11110983A JP H11110983 A JPH11110983 A JP H11110983A JP 27243997 A JP27243997 A JP 27243997A JP 27243997 A JP27243997 A JP 27243997A JP H11110983 A JPH11110983 A JP H11110983A
- Authority
- JP
- Japan
- Prior art keywords
- sector
- management
- data
- flash memory
- erasures
- 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.)
- Pending
Links
Landscapes
- Read Only Memory (AREA)
Abstract
(57)【要約】
【課題】データ書き換え中の停電発生時でも管理情報領
域が保存され、管理情報領域を縮小することができ管理
セクタが早く規定消去回数に達するという事態を回避可
能なフラッシュメモリの消去回数管理方法を実現する。 【解決手段】管理対象データセクタが未消去のときは管
理セクタの第1〜nバイトのデータは全て$FFで対象デー
タセクタの1度目の消去で管理セクタの第1バイトB1に$
7Fを書きD7ビットを“0"にする。対象データセクタの2
〜7度目の消去毎に第1バイトB1のD6〜D1ビットを“0"
とし、対象データセクタに8度目消去で第1バイトB1に$
00を書き第1バイトB1のD0ビットを“0"にする。管理セ
クタが全部でnバイトなら対象データセクタの(8×n-1)
度目の消去で第nバイトBnに$01を書き第nバイトBnのD1
ビットを“0"にする。データセクタの8×n度目の消去で
第nバイトBnに$00を書き第nバイトBnのD0ビットを“0"
にする。
域が保存され、管理情報領域を縮小することができ管理
セクタが早く規定消去回数に達するという事態を回避可
能なフラッシュメモリの消去回数管理方法を実現する。 【解決手段】管理対象データセクタが未消去のときは管
理セクタの第1〜nバイトのデータは全て$FFで対象デー
タセクタの1度目の消去で管理セクタの第1バイトB1に$
7Fを書きD7ビットを“0"にする。対象データセクタの2
〜7度目の消去毎に第1バイトB1のD6〜D1ビットを“0"
とし、対象データセクタに8度目消去で第1バイトB1に$
00を書き第1バイトB1のD0ビットを“0"にする。管理セ
クタが全部でnバイトなら対象データセクタの(8×n-1)
度目の消去で第nバイトBnに$01を書き第nバイトBnのD1
ビットを“0"にする。データセクタの8×n度目の消去で
第nバイトBnに$00を書き第nバイトBnのD0ビットを“0"
にする。
Description
【0001】
【発明の属する技術分野】本発明は、消去回数に制限が
あるフラッシュメモリの消去回数管理方法に関する。
あるフラッシュメモリの消去回数管理方法に関する。
【0002】
【従来の技術】フラッシュメモリは、不揮発性メモリで
あり、消去回数に制限があり、特定単位バイト(以降
「セクタ」)毎に消去が行われる。そして、消去される
ことによりセクタ内のデータはビット単位で値がすべて
“1”となり、書き込み動作はビットの値に対し“1”
から“0”、または、“1”から“1”、または、
“0”から“0”が許される。或いは、 消去されるこ
とによりセクタ内のデータはビット単位で値がすべて
“0”となり、書き込み動作はビットの値に対し“0”
から“1”、または、“1”から“1”、または、
“0”から“0”が許される。
あり、消去回数に制限があり、特定単位バイト(以降
「セクタ」)毎に消去が行われる。そして、消去される
ことによりセクタ内のデータはビット単位で値がすべて
“1”となり、書き込み動作はビットの値に対し“1”
から“0”、または、“1”から“1”、または、
“0”から“0”が許される。或いは、 消去されるこ
とによりセクタ内のデータはビット単位で値がすべて
“0”となり、書き込み動作はビットの値に対し“0”
から“1”、または、“1”から“1”、または、
“0”から“0”が許される。
【0003】上述したフラッシュメモリを用いたコンピ
ュータシステムにおいて、信頼性を重視したシステムで
はフラッシュメモリの消去回数の管理を行う。従来にお
いては、図6、図7、図8に示すような消去回数の管理
方法をフラッシュメモリについて行っていた。
ュータシステムにおいて、信頼性を重視したシステムで
はフラッシュメモリの消去回数の管理を行う。従来にお
いては、図6、図7、図8に示すような消去回数の管理
方法をフラッシュメモリについて行っていた。
【0004】図6は、同一セクタA内にデータ領域と管
理情報領域とを混在させる方法を示す図である。この図
6に示した方法においては、セクタAの消去後に管理情
報領域にインクリメントした消去回数情報を記録する。
理情報領域とを混在させる方法を示す図である。この図
6に示した方法においては、セクタAの消去後に管理情
報領域にインクリメントした消去回数情報を記録する。
【0005】図7は、1つのデータセクタAに1つの管
理セクタBを付加する方法を示す図である。データセク
タAはデータ領域と管理情報領域とを有し、セクタBは
管理情報領域のみを有する。セクタAの消去を行う場
合、まず、セクタBを消去し、セクタBの管理情報領域
にインクリメントした消去回数情報を記録する。その
後、セクタAの消去後に管理情報領域にセクタBに記録
した消去回数情報を記録する。
理セクタBを付加する方法を示す図である。データセク
タAはデータ領域と管理情報領域とを有し、セクタBは
管理情報領域のみを有する。セクタAの消去を行う場
合、まず、セクタBを消去し、セクタBの管理情報領域
にインクリメントした消去回数情報を記録する。その
後、セクタAの消去後に管理情報領域にセクタBに記録
した消去回数情報を記録する。
【0006】図8は、複数のデータセクタに1つの管理
セクタを付加する方法を示す図である。セクタA、セク
タB、セクタCは、それぞれデータ領域と管理情報領域
とを有し、セクタDは、セクタA、セクタB、セクタC
の管理情報領域、および、セクタDの管理情報領域を有
する。
セクタを付加する方法を示す図である。セクタA、セク
タB、セクタCは、それぞれデータ領域と管理情報領域
とを有し、セクタDは、セクタA、セクタB、セクタC
の管理情報領域、および、セクタDの管理情報領域を有
する。
【0007】図8において、セクタAの消去を行う場
合、まず、セクタDを消去し、セクタDの管理情報領域
Aにインクリメントした消去回数情報を記録する。そし
て、セクタDの管理情報領域Dにインクリメントした消
去回数情報を記録する。
合、まず、セクタDを消去し、セクタDの管理情報領域
Aにインクリメントした消去回数情報を記録する。そし
て、セクタDの管理情報領域Dにインクリメントした消
去回数情報を記録する。
【0008】その後、セクタAの消去後に管理情報領域
にセクタDに記録した管理情報領域Aの消去回数情報を
記録する。この方法では、セクタDの消去後、または、
管理情報領域にインクリメントした消去回数情報を記録
する前に停電が起こり消去回数情報を記録できなかった
場合、および、セクタAの消去後、または、管理情報領
域にインクリメントした消去回数情報を記録する前に停
電が起こり消去回数情報を記録できなかった場合でも、
セクタA、セクタDの消去回数情報は保存される。な
お、図8に示した方法であれば、データ領域に対する管
理情報領域が大きくなり過ぎるという問題も緩和され
る。
にセクタDに記録した管理情報領域Aの消去回数情報を
記録する。この方法では、セクタDの消去後、または、
管理情報領域にインクリメントした消去回数情報を記録
する前に停電が起こり消去回数情報を記録できなかった
場合、および、セクタAの消去後、または、管理情報領
域にインクリメントした消去回数情報を記録する前に停
電が起こり消去回数情報を記録できなかった場合でも、
セクタA、セクタDの消去回数情報は保存される。な
お、図8に示した方法であれば、データ領域に対する管
理情報領域が大きくなり過ぎるという問題も緩和され
る。
【0009】この他に、図7において、セクタAに管理
情報領域を形成せず、セクタBのみに管理情報領域を形
成する方式や、図8においてセクタA、セクタB、セク
タCの管理情報領域を形成せず、セクタDのみに管理情
報領域を形成する方式等がある。
情報領域を形成せず、セクタBのみに管理情報領域を形
成する方式や、図8においてセクタA、セクタB、セク
タCの管理情報領域を形成せず、セクタDのみに管理情
報領域を形成する方式等がある。
【0010】
【発明が解決しようとする課題】しかしながら、上述し
た、図6、図7、図8に示すような消去回数の管理方法
には以下の問題がある。図6に示した方法は、同一セク
タ内にデータ領域と管理情報領域とを混在させる方法で
あり、セクタAの消去後に管理情報領域にインクリメン
トした消去回数情報を記録する。この方法だと、セクタ
Aの消去後、または、管理情報領域にインクリメントし
た消去回数情報を記録する前に停電が起こり消去回数情
報を記録できなかった場合、セクタAに関する消去回数
が不明になってしまうという問題がある。
た、図6、図7、図8に示すような消去回数の管理方法
には以下の問題がある。図6に示した方法は、同一セク
タ内にデータ領域と管理情報領域とを混在させる方法で
あり、セクタAの消去後に管理情報領域にインクリメン
トした消去回数情報を記録する。この方法だと、セクタ
Aの消去後、または、管理情報領域にインクリメントし
た消去回数情報を記録する前に停電が起こり消去回数情
報を記録できなかった場合、セクタAに関する消去回数
が不明になってしまうという問題がある。
【0011】また、図7に示した方法は、1つのデータ
セクタに1つの管理セクタを付加する方法であり、セク
タAはデータ領域と管理情報領域を有し、セクタBは管
理情報領域のみを有する。セクタAの消去を行う場合、
まず、セクタBを消去し、セクタBの管理情報領域にイ
ンクリメントした消去回数情報を記録する。その後、セ
クタAの消去後に管理情報領域にセクタBに記録した消
去回数情報を記録する。
セクタに1つの管理セクタを付加する方法であり、セク
タAはデータ領域と管理情報領域を有し、セクタBは管
理情報領域のみを有する。セクタAの消去を行う場合、
まず、セクタBを消去し、セクタBの管理情報領域にイ
ンクリメントした消去回数情報を記録する。その後、セ
クタAの消去後に管理情報領域にセクタBに記録した消
去回数情報を記録する。
【0012】この方法だと、セクタBの消去後、また
は、管理情報領域にインクリメントした消去回数情報を
記録する前に停電が起こり消去回数情報を記録できなか
った場合、および、セクタAの消去後、または、管理情
報領域にインクリメントした消去回数情報を記録する前
に停電が起こり消去回数情報を記録できなかった場合で
も、セクタA、セクタBの消去回数情報は保存される
が、データ領域に対する管理情報領域が大きくなり過ぎ
るという問題がある。
は、管理情報領域にインクリメントした消去回数情報を
記録する前に停電が起こり消去回数情報を記録できなか
った場合、および、セクタAの消去後、または、管理情
報領域にインクリメントした消去回数情報を記録する前
に停電が起こり消去回数情報を記録できなかった場合で
も、セクタA、セクタBの消去回数情報は保存される
が、データ領域に対する管理情報領域が大きくなり過ぎ
るという問題がある。
【0013】また、図8に示した方法は、複数のデータ
セクタに1つの管理セクタを付加する方法であり、セク
タA、セクタB、セクタCはデータ領域と管理情報領域
とを有し、セクタDはセクタA、セクタB、セクタCの
管理情報領域及びセクタDの管理情報領域を有する。
セクタに1つの管理セクタを付加する方法であり、セク
タA、セクタB、セクタCはデータ領域と管理情報領域
とを有し、セクタDはセクタA、セクタB、セクタCの
管理情報領域及びセクタDの管理情報領域を有する。
【0014】セクタAの消去を行う場合、まず、セクタ
Dを消去し、セクタDの管理情報領域Aにインクリメン
トした消去回数情報を記録し、セクタDの管理情報領域
Dにインクリメントした消去回数情報を記録する。その
後、セクタAの消去後に管理情報領域にセクタDに記録
した管理情報領域Aの消去回数情報を記録する。
Dを消去し、セクタDの管理情報領域Aにインクリメン
トした消去回数情報を記録し、セクタDの管理情報領域
Dにインクリメントした消去回数情報を記録する。その
後、セクタAの消去後に管理情報領域にセクタDに記録
した管理情報領域Aの消去回数情報を記録する。
【0015】この方法では、セクタDの消去後、また
は、管理情報領域にインクリメントした消去回数情報を
記録する前に停電が起こり消去回数情報を記録できなか
った場合、および、セクタAの消去後、または、管理情
報領域にインクリメントした消去回数情報を記録する前
に停電が起こり消去回数情報を記録できなかった場合で
も、セクタA、セクタDの消去回数情報は保存される。
なお、データ領域に対する管理情報領域が大きくなり過
ぎるという問題も緩和される。
は、管理情報領域にインクリメントした消去回数情報を
記録する前に停電が起こり消去回数情報を記録できなか
った場合、および、セクタAの消去後、または、管理情
報領域にインクリメントした消去回数情報を記録する前
に停電が起こり消去回数情報を記録できなかった場合で
も、セクタA、セクタDの消去回数情報は保存される。
なお、データ領域に対する管理情報領域が大きくなり過
ぎるという問題も緩和される。
【0016】しかし、この方法をとると、セクタA、セ
クタB、セクタCに比べ、セクタDは早く規定消去回数
に達してしまうという問題がある。
クタB、セクタCに比べ、セクタDは早く規定消去回数
に達してしまうという問題がある。
【0017】また、図7において、セクタAに管理情報
領域を形成せず、セクタBのみに管理情報領域を有する
方式、図8においてセクタA、セクタB、セクタCに管
理情報を形成せず、セクタDのみに管理情報を持つ方式
等については、図6、図7、図8に示した例で問題とな
ったデータ書き換え中の停電発生時に管理情報領域が保
存されないという問題や、データ領域に対して管理情報
領域が巨大化してしまうという問題、データセクタに比
べ管理セクタが早く規定消去回数に達してしまうという
問題が同様に発生する。
領域を形成せず、セクタBのみに管理情報領域を有する
方式、図8においてセクタA、セクタB、セクタCに管
理情報を形成せず、セクタDのみに管理情報を持つ方式
等については、図6、図7、図8に示した例で問題とな
ったデータ書き換え中の停電発生時に管理情報領域が保
存されないという問題や、データ領域に対して管理情報
領域が巨大化してしまうという問題、データセクタに比
べ管理セクタが早く規定消去回数に達してしまうという
問題が同様に発生する。
【0018】以上のように従来方式では、データ書き換
え中の停電発生時に管理情報領域が保存されないという
問題や、データ領域に対して管理情報領域が巨大化して
しまう問題、データセクタに比べ管理セクタが早く規定
消去回数に達してしまうという問題があった。
え中の停電発生時に管理情報領域が保存されないという
問題や、データ領域に対して管理情報領域が巨大化して
しまう問題、データセクタに比べ管理セクタが早く規定
消去回数に達してしまうという問題があった。
【0019】本発明の目的は、データ書き換え中の停電
発生時でも管理情報領域が保存され、データ領域に対し
て管理情報領域を縮小することができ、データセクタに
比べ管理セクタが早く規定消去回数に達してしまうとい
う事態を回避可能なフラッシュメモリの消去回数管理方
法及びそれを用いたデータ処理装置を実現することであ
る。
発生時でも管理情報領域が保存され、データ領域に対し
て管理情報領域を縮小することができ、データセクタに
比べ管理セクタが早く規定消去回数に達してしまうとい
う事態を回避可能なフラッシュメモリの消去回数管理方
法及びそれを用いたデータ処理装置を実現することであ
る。
【0020】
(1)上記目的を達成するため、本発明は、次のように
構成される。すなわち、消去回数に制限があり、特定単
位バイトであるセクタ毎に消去を行い、消去されること
によりセクタ内のデータはビット単位で値がすべて
“1”になり、書き込み動作はビットの値に対し“1”
から“0”、“1”から“1”、“0”から“0”が許
される不揮発性メモリであるフラッシュメモリの消去回
数管理方法において、複数のセクタに対して、単一のセ
クタを管理セクタとして割り当て、この管理セクタを、
管理する複数のセクタのそれぞれに対応した領域に分割
し、管理対象セクタが消去される毎に、管理セクタ内の
上記管理対象セクタに対応する領域の複数バイトの中の
連続するビットに順次“0”を書き込んで消去回数をカ
ウントしていくことにより、消去回数に制限があるフラ
ッシュメモリの寿命を管理する。
構成される。すなわち、消去回数に制限があり、特定単
位バイトであるセクタ毎に消去を行い、消去されること
によりセクタ内のデータはビット単位で値がすべて
“1”になり、書き込み動作はビットの値に対し“1”
から“0”、“1”から“1”、“0”から“0”が許
される不揮発性メモリであるフラッシュメモリの消去回
数管理方法において、複数のセクタに対して、単一のセ
クタを管理セクタとして割り当て、この管理セクタを、
管理する複数のセクタのそれぞれに対応した領域に分割
し、管理対象セクタが消去される毎に、管理セクタ内の
上記管理対象セクタに対応する領域の複数バイトの中の
連続するビットに順次“0”を書き込んで消去回数をカ
ウントしていくことにより、消去回数に制限があるフラ
ッシュメモリの寿命を管理する。
【0021】(2)また、消去回数に制限があり、特定
単位バイトであるセクタ毎に消去を行い、消去されるこ
とによりセクタ内のデータはビット単位で値がすべて
“0”になり、書き込み動作はビットの値に対し“0”
から“1”、“1”から“1”、“0”から“0”が許
される不揮発性メモリであるフラッシュメモリの消去回
数管理方法において、複数のセクタに対して、単一のセ
クタを管理セクタとして割り当て、この管理セクタを、
管理する複数のセクタのそれぞれに対応した領域に分割
し、管理対象セクタが消去される毎に、管理セクタ内の
上記管理対象セクタに対応する領域の複数バイトの中の
連続するビットに順次“0”を書き込んで消去回数をカ
ウントしていくことにより、消去回数に制限があるフラ
ッシュメモリの寿命を管理する。
単位バイトであるセクタ毎に消去を行い、消去されるこ
とによりセクタ内のデータはビット単位で値がすべて
“0”になり、書き込み動作はビットの値に対し“0”
から“1”、“1”から“1”、“0”から“0”が許
される不揮発性メモリであるフラッシュメモリの消去回
数管理方法において、複数のセクタに対して、単一のセ
クタを管理セクタとして割り当て、この管理セクタを、
管理する複数のセクタのそれぞれに対応した領域に分割
し、管理対象セクタが消去される毎に、管理セクタ内の
上記管理対象セクタに対応する領域の複数バイトの中の
連続するビットに順次“0”を書き込んで消去回数をカ
ウントしていくことにより、消去回数に制限があるフラ
ッシュメモリの寿命を管理する。
【0022】(3)好ましくは、上記(1)又は(2)
において、複数のセクタの集まりであるクラスタに対し
て、上記管理セクタを1つ割り当て、この管理セクタ内
に設けられた消去回数を管理するセクタの個数分の消去
回数カウンタの特定のアドレスを定期的に読み出し、そ
のアドレスにおけるデータを所定の特定データと比較
し、消去回数が規定消去回数に達したかどうかを判断す
ることにより、消去回数に制限があるフラッシュメモリ
の寿命を管理する。
において、複数のセクタの集まりであるクラスタに対し
て、上記管理セクタを1つ割り当て、この管理セクタ内
に設けられた消去回数を管理するセクタの個数分の消去
回数カウンタの特定のアドレスを定期的に読み出し、そ
のアドレスにおけるデータを所定の特定データと比較
し、消去回数が規定消去回数に達したかどうかを判断す
ることにより、消去回数に制限があるフラッシュメモリ
の寿命を管理する。
【0023】(4)また、好ましくは、上記(3)にお
いて、上記クラスタの状態を示すクラスタ情報エリアを
備え、このクラスタ情報エリアにクラスタ内の各セクタ
の消去情報と、クラスタ全体に関する情報を記録してお
くことにより、クラスタ情報エリアの読み出し動作のみ
によりクラスタ内の情報を取得する。
いて、上記クラスタの状態を示すクラスタ情報エリアを
備え、このクラスタ情報エリアにクラスタ内の各セクタ
の消去情報と、クラスタ全体に関する情報を記録してお
くことにより、クラスタ情報エリアの読み出し動作のみ
によりクラスタ内の情報を取得する。
【0024】(5)また、好ましくは、上記(1)、
(2)又は(3)において、管理セクタの特定のアドレ
スに特定のデータパターンを書込んでおくことにより、
その特定データパターンが書き換えられたことを検出す
ることにより、上記管理セクタが初期化されたことを検
出する。
(2)又は(3)において、管理セクタの特定のアドレ
スに特定のデータパターンを書込んでおくことにより、
その特定データパターンが書き換えられたことを検出す
ることにより、上記管理セクタが初期化されたことを検
出する。
【0025】(6)また、MPUと、主記憶手段と、消
去回数に制限があり、特定単位バイトであるセクタ毎に
消去を行い、消去されることによりセクタ内のデータは
ビット単位で値がすべて“1”になり、書き込み動作は
ビットの値に対し“1”から“0”、“1”から
“1”、“0”から“0”が許される不揮発性メモリで
あるフラッシュメモリとを有するデータ処理装置におい
て、上記フラッシュメモリは、上記複数のセクタに対し
て、割り当てられる単一のセクタである管理セクタを有
し、この管理セクタは、管理する複数のセクタのそれぞ
れに対応した領域に分割し、管理対象セクタが消去され
る毎に、管理セクタ内の上記管理対象セクタに対応する
領域の複数バイトの中の連続するビットに順次“0”を
書き込んで消去回数をカウントしていくことにより、消
去回数に制限があるフラッシュメモリの寿命を管理す
る。
去回数に制限があり、特定単位バイトであるセクタ毎に
消去を行い、消去されることによりセクタ内のデータは
ビット単位で値がすべて“1”になり、書き込み動作は
ビットの値に対し“1”から“0”、“1”から
“1”、“0”から“0”が許される不揮発性メモリで
あるフラッシュメモリとを有するデータ処理装置におい
て、上記フラッシュメモリは、上記複数のセクタに対し
て、割り当てられる単一のセクタである管理セクタを有
し、この管理セクタは、管理する複数のセクタのそれぞ
れに対応した領域に分割し、管理対象セクタが消去され
る毎に、管理セクタ内の上記管理対象セクタに対応する
領域の複数バイトの中の連続するビットに順次“0”を
書き込んで消去回数をカウントしていくことにより、消
去回数に制限があるフラッシュメモリの寿命を管理す
る。
【0026】(7)また、MPUと、主記憶手段と、消
去回数に制限があり、特定単位バイトであるセクタ毎に
消去を行い、消去されることによりセクタ内のデータは
ビット単位で値がすべて“0”になり、書き込み動作は
ビットの値に対し“0”から“1”、“1”から
“1”、“0”から“0”が許される不揮発性メモリで
あるフラッシュメモリとを有するデータ処理装置におい
て、上記フラッシュメモリは、上記複数のセクタに対し
て、割り当てられる単一のセクタである管理セクタを有
し、この管理セクタは、管理する複数のセクタのそれぞ
れに対応した領域に分割し、管理対象セクタが消去され
る毎に、管理セクタ内の上記管理対象セクタに対応する
領域の複数バイトの中の連続するビットに順次“0”を
書き込んで消去回数をカウントしていくことにより、消
去回数に制限があるフラッシュメモリの寿命を管理す
る。
去回数に制限があり、特定単位バイトであるセクタ毎に
消去を行い、消去されることによりセクタ内のデータは
ビット単位で値がすべて“0”になり、書き込み動作は
ビットの値に対し“0”から“1”、“1”から
“1”、“0”から“0”が許される不揮発性メモリで
あるフラッシュメモリとを有するデータ処理装置におい
て、上記フラッシュメモリは、上記複数のセクタに対し
て、割り当てられる単一のセクタである管理セクタを有
し、この管理セクタは、管理する複数のセクタのそれぞ
れに対応した領域に分割し、管理対象セクタが消去され
る毎に、管理セクタ内の上記管理対象セクタに対応する
領域の複数バイトの中の連続するビットに順次“0”を
書き込んで消去回数をカウントしていくことにより、消
去回数に制限があるフラッシュメモリの寿命を管理す
る。
【0027】(8)好ましくは、上記(6)又は(7)
において、上記フラッシュメモリは、複数のセクタの集
まりであるクラスタに対して、上記管理セクタを1つ割
り当て、この管理セクタ内に消去回数を管理するセクタ
の個数分の消去回数カウンタを有し、この消去カウンタ
の特定のアドレスを定期的に読み出し、そのアドレスに
おけるデータを所定の特定データと比較し、消去回数が
規定消去回数に達したかどうかを判断することにより、
消去回数に制限があるフラッシュメモリの寿命を管理す
る。
において、上記フラッシュメモリは、複数のセクタの集
まりであるクラスタに対して、上記管理セクタを1つ割
り当て、この管理セクタ内に消去回数を管理するセクタ
の個数分の消去回数カウンタを有し、この消去カウンタ
の特定のアドレスを定期的に読み出し、そのアドレスに
おけるデータを所定の特定データと比較し、消去回数が
規定消去回数に達したかどうかを判断することにより、
消去回数に制限があるフラッシュメモリの寿命を管理す
る。
【0028】(9)また、好ましくは、上記(8)にお
いて、上記フラッシュメモリは、上記クラスタの状態を
示すクラスタ情報エリアを備え、このクラスタ情報エリ
アにクラスタ内の各セクタの消去情報と、クラスタ全体
に関する情報を記録しておくことにより、クラスタ情報
エリアの読み出し動作のみによりクラスタ内の情報を取
得する。
いて、上記フラッシュメモリは、上記クラスタの状態を
示すクラスタ情報エリアを備え、このクラスタ情報エリ
アにクラスタ内の各セクタの消去情報と、クラスタ全体
に関する情報を記録しておくことにより、クラスタ情報
エリアの読み出し動作のみによりクラスタ内の情報を取
得する。
【0029】(10)また、好ましくは、上記(6)、
(7)又は(8)において、管理セクタの特定のアドレ
スに特定のデータパターンを書込んでおくことにより、
その特定データパターンが書き換えられたことを検出す
ることにより、上記管理セクタが初期化されたことを検
出する。
(7)又は(8)において、管理セクタの特定のアドレ
スに特定のデータパターンを書込んでおくことにより、
その特定データパターンが書き換えられたことを検出す
ることにより、上記管理セクタが初期化されたことを検
出する。
【0030】本発明のフラッシュメモリの消去回数管理
方法及びそれを用いたデータ処理装置では、フラッシュ
メモリの書き込み動作がビットの値に対し“1”から
“0”、または、“1”から“1”、または、“0”か
ら“0”が可能であるということに着目し、管理セクタ
内の管理対象セクタに割り当てた複数バイトの中の最下
位バイトから最上位バイトへ、バイトデータ内では最下
位ビット(以降「LSB」)から最上位ビット(以降
「MSB」)、または、MSBからLSBに向かって管
理対象セクタの消去に対し“0”が書き込まれている次
のビットに“0”を書き込んで消去回数をカウントして
いく。
方法及びそれを用いたデータ処理装置では、フラッシュ
メモリの書き込み動作がビットの値に対し“1”から
“0”、または、“1”から“1”、または、“0”か
ら“0”が可能であるということに着目し、管理セクタ
内の管理対象セクタに割り当てた複数バイトの中の最下
位バイトから最上位バイトへ、バイトデータ内では最下
位ビット(以降「LSB」)から最上位ビット(以降
「MSB」)、または、MSBからLSBに向かって管
理対象セクタの消去に対し“0”が書き込まれている次
のビットに“0”を書き込んで消去回数をカウントして
いく。
【0031】これにより、データ書き換え中の停電発生
時でも管理情報領域が保存され、データ領域に対する管
理情報領域を最少にし、かつ、データセクタに比べ管理
セクタが早く規定消去回数に達してしまうことのないフ
ラッシュメモリの消去回数管理方法の実現が可能とな
る。
時でも管理情報領域が保存され、データ領域に対する管
理情報領域を最少にし、かつ、データセクタに比べ管理
セクタが早く規定消去回数に達してしまうことのないフ
ラッシュメモリの消去回数管理方法の実現が可能とな
る。
【0032】
【発明の実施の形態】次に、本発明の実施形態について
添付図面を参照して説明する。図1は、本発明の一実施
形態であるフラッシュメモリの消去回数管理方法を示す
図である。この図1は、フラッシュメモリ内の各セクタ
(特定単位バイト)は、通常のデータを格納するデータ
セクタと、複数のデータセクタの消去回数を管理する1
つの管理セクタとに分けられており、その場合における
消去回数増加による管理セクタ内データの変化を示した
ものである。
添付図面を参照して説明する。図1は、本発明の一実施
形態であるフラッシュメモリの消去回数管理方法を示す
図である。この図1は、フラッシュメモリ内の各セクタ
(特定単位バイト)は、通常のデータを格納するデータ
セクタと、複数のデータセクタの消去回数を管理する1
つの管理セクタとに分けられており、その場合における
消去回数増加による管理セクタ内データの変化を示した
ものである。
【0033】また、管理セクタは、管理する複数のデー
タセクタのそれぞれに対応した領域、つまり、第1バイ
トB1〜第nバイトBnに分割されている。このフラッ
シュメモリは、消去されることによりセクタ内1のデー
タはビット単位で値がすべて“1”になり、書き込み動
作はビットの値に対し“1”から“0”、または、
“1”から“1”、または、“0”から“0”が許され
るものである。
タセクタのそれぞれに対応した領域、つまり、第1バイ
トB1〜第nバイトBnに分割されている。このフラッ
シュメモリは、消去されることによりセクタ内1のデー
タはビット単位で値がすべて“1”になり、書き込み動
作はビットの値に対し“1”から“0”、または、
“1”から“1”、または、“0”から“0”が許され
るものである。
【0034】消去回数管理開始後、管理対象のデータセ
クタの消去が1度もないときは、管理セクタの第1バイ
トから第nバイトまでのデータは、すべて$FFであ
る。管理対象のデータセクタに1度目の消去を行った場
合、管理セクタの第1バイトB1のD7ビットを“0”
にするため、第1バイトB1に$7Fを書き込む。
クタの消去が1度もないときは、管理セクタの第1バイ
トから第nバイトまでのデータは、すべて$FFであ
る。管理対象のデータセクタに1度目の消去を行った場
合、管理セクタの第1バイトB1のD7ビットを“0”
にするため、第1バイトB1に$7Fを書き込む。
【0035】次に、管理対象のデータセクタに2度目の
消去を行った場合、管理セクタの第1バイトB1のD6
ビットを“0”にするため、第1バイトB1に$3Fを
書き込む。管理対象のデータセクタに3度目〜7度目の
消去を行う毎に、管理セクタの第1バイトB1のD5〜
D1ビットを“0”とする。そして、管理対象のデータ
セクタに8度目の消去を行った場合、管理セクタの第1
バイトB1のD0ビットを“0”にするため第1バイト
B1に$00を書き込む。
消去を行った場合、管理セクタの第1バイトB1のD6
ビットを“0”にするため、第1バイトB1に$3Fを
書き込む。管理対象のデータセクタに3度目〜7度目の
消去を行う毎に、管理セクタの第1バイトB1のD5〜
D1ビットを“0”とする。そして、管理対象のデータ
セクタに8度目の消去を行った場合、管理セクタの第1
バイトB1のD0ビットを“0”にするため第1バイト
B1に$00を書き込む。
【0036】次に、管理対象のデータセクタに9度目の
消去を行った場合、管理セクタの第2バイトB2のD7
ビットを“0”にするため第2バイトB2に$7Fを書
き込む。
消去を行った場合、管理セクタの第2バイトB2のD7
ビットを“0”にするため第2バイトB2に$7Fを書
き込む。
【0037】そして、管理セクタが全部でnバイトであ
れば、管理対象のデータセクタに(8×n−1)度目の
消去を行った場合、管理セクタの第nバイトBnのD1
ビットを“0”にするため第nバイトBnに$01を書
き込む。また、管理対象のデータセクタに8×n度目の
消去を行った場合、管理セクタの第nバイトBnのD0
ビットを“0”にするため第nバイトBnに$00を書
き込む。このように、管理対象のデータセクタの消去が
行われる毎に管理セクタ内のデータの“0”を増やす方
法でカウントする。
れば、管理対象のデータセクタに(8×n−1)度目の
消去を行った場合、管理セクタの第nバイトBnのD1
ビットを“0”にするため第nバイトBnに$01を書
き込む。また、管理対象のデータセクタに8×n度目の
消去を行った場合、管理セクタの第nバイトBnのD0
ビットを“0”にするため第nバイトBnに$00を書
き込む。このように、管理対象のデータセクタの消去が
行われる毎に管理セクタ内のデータの“0”を増やす方
法でカウントする。
【0038】つまり、管理セクタ内の管理対象セクタに
割り当てた複数バイトの中の最下位バイトから最上位バ
イトへ、バイトデータ内では最下位ビット(LSB)か
ら最上位ビット(MSB)、または、MSBからLSB
に向かって管理対象セクタの消去に対し“0”が書き込
まれている次のビットに“0”を書き込んで消去回数を
カウントしていく。
割り当てた複数バイトの中の最下位バイトから最上位バ
イトへ、バイトデータ内では最下位ビット(LSB)か
ら最上位ビット(MSB)、または、MSBからLSB
に向かって管理対象セクタの消去に対し“0”が書き込
まれている次のビットに“0”を書き込んで消去回数を
カウントしていく。
【0039】これにより、データ書き換え中の停電発生
時でも管理情報領域が保存され、データ領域に対して管
理情報領域を縮小することができ、データセクタに比べ
管理セクタが早く規定消去回数に達してしまうという事
態を回避可能なフラッシュメモリの消去回数管理方法を
実現することができる。
時でも管理情報領域が保存され、データ領域に対して管
理情報領域を縮小することができ、データセクタに比べ
管理セクタが早く規定消去回数に達してしまうという事
態を回避可能なフラッシュメモリの消去回数管理方法を
実現することができる。
【0040】つまり、本発明の一実施形態によれば、管
理対象セクタが消去される毎に、管理セクタ内の管理対
象セクタに対応する領域の複数バイトの中の連続するビ
ットに順次“0”を書き込んで消去回数をカウントす
る。管理セクタでのデータ更新は1バイトのデータ書き
込みであり、従来のように管理セクタでのデータ更新に
管理セクタの消去動作が必要ない。したがって、停電が
起こり消去回数情報を記録できずデータセクタに関する
消去回数が不明になってしまうという問題は発生しな
い。
理対象セクタが消去される毎に、管理セクタ内の管理対
象セクタに対応する領域の複数バイトの中の連続するビ
ットに順次“0”を書き込んで消去回数をカウントす
る。管理セクタでのデータ更新は1バイトのデータ書き
込みであり、従来のように管理セクタでのデータ更新に
管理セクタの消去動作が必要ない。したがって、停電が
起こり消去回数情報を記録できずデータセクタに関する
消去回数が不明になってしまうという問題は発生しな
い。
【0041】また、管理セクタは複数のデータセクタの
管理情報をもつことが可能であるため、データ領域に対
する管理情報領域が大きくなり過ぎるという問題も発生
しない。また、管理セクタは消去動作を必要としないた
め、管理セクタがデータセクタより早く規定消去回数に
達してしまうという問題も発生しない。
管理情報をもつことが可能であるため、データ領域に対
する管理情報領域が大きくなり過ぎるという問題も発生
しない。また、管理セクタは消去動作を必要としないた
め、管理セクタがデータセクタより早く規定消去回数に
達してしまうという問題も発生しない。
【0042】図2は、本発明を、32セクタ、16Mビ
ットのデータ容量をもつフラッシュメモリに適用した場
合の構成を示したものである。図2において、1セクタ
当たりのデータ容量は64kバイトであり、10万回が
規定消去回数とする。セクタSA0からセクタSA6
(クラスタ)を命令コードやデータの格納を行うデータ
セクタとし、セクタSA7を、図1に示した、データセ
クタの消去回数等の管理情報を格納する管理セクタとす
る。
ットのデータ容量をもつフラッシュメモリに適用した場
合の構成を示したものである。図2において、1セクタ
当たりのデータ容量は64kバイトであり、10万回が
規定消去回数とする。セクタSA0からセクタSA6
(クラスタ)を命令コードやデータの格納を行うデータ
セクタとし、セクタSA7を、図1に示した、データセ
クタの消去回数等の管理情報を格納する管理セクタとす
る。
【0043】同様に、セクタSA8からセクタSA14
(クラスタ)を命令コードやデータの格納を行うデータ
セクタとし、セクタSA15を、上記データセクタの消
去回数等の管理情報を格納する管理セクタとする。
(クラスタ)を命令コードやデータの格納を行うデータ
セクタとし、セクタSA15を、上記データセクタの消
去回数等の管理情報を格納する管理セクタとする。
【0044】また、セクタSA16からセクタSA22
(クラスタ)を命令コードやデータの格納を行うデータ
セクタとし、セクタSA23を、上記データセクタの消
去回数等の管理情報を格納する管理セクタとする。さら
に、セクタSA24からセクタSA30(クラスタ)を
命令コードやデータの格納を行うデータセクタとし、セ
クタSA31を、上記データセクタの消去回数等の管理
情報を格納する管理セクタとする。
(クラスタ)を命令コードやデータの格納を行うデータ
セクタとし、セクタSA23を、上記データセクタの消
去回数等の管理情報を格納する管理セクタとする。さら
に、セクタSA24からセクタSA30(クラスタ)を
命令コードやデータの格納を行うデータセクタとし、セ
クタSA31を、上記データセクタの消去回数等の管理
情報を格納する管理セクタとする。
【0045】図3は、図2に示した管理セクタSA7内
の構成を示したものであり、相対アドレス$0000か
ら$1FFFのSA0消去回数情報エリア(消去回数カ
ウンタ)は、データセクタSA0の消去回数情報を格納
する。同様に、相対アドレス$2000から$3FFF
のSA1消去回数情報エリアは、データセクタSA1の
消去回数情報を格納する。
の構成を示したものであり、相対アドレス$0000か
ら$1FFFのSA0消去回数情報エリア(消去回数カ
ウンタ)は、データセクタSA0の消去回数情報を格納
する。同様に、相対アドレス$2000から$3FFF
のSA1消去回数情報エリアは、データセクタSA1の
消去回数情報を格納する。
【0046】また、相対アドレス$4000から$5F
FFのSA2消去回数情報エリアは、データセクタSA
2の消去回数情報を格納する。そして、相対アドレス$
6000から$7FFFのSA3消去回数情報エリア
は、データセクタSA3の消去回数情報を格納する。ま
た、相対アドレス$8000から$9FFFのSA4消
去回数情報エリアは、データセクタSA4の消去回数情
報を格納する。そして、相対アドレス$A000から$
BFFFのSA5消去回数情報エリアは、データセクタ
SA5の消去回数情報を格納する。
FFのSA2消去回数情報エリアは、データセクタSA
2の消去回数情報を格納する。そして、相対アドレス$
6000から$7FFFのSA3消去回数情報エリア
は、データセクタSA3の消去回数情報を格納する。ま
た、相対アドレス$8000から$9FFFのSA4消
去回数情報エリアは、データセクタSA4の消去回数情
報を格納する。そして、相対アドレス$A000から$
BFFFのSA5消去回数情報エリアは、データセクタ
SA5の消去回数情報を格納する。
【0047】また、相対アドレス$C000から$DF
FFのSA6消去回数情報エリアは、データセクタSA
6の消去回数情報を格納する。相対アドレス$E000
から$FFFFの空きエリアSAE(クラスタ情報エリ
ア)は、特定のデータパターンを書き込んでおき、この
管理セクタが消去されていないことを示す。つまり、こ
の管理セクタが消去された場合には、先に書き込まれた
特定のデータパターンでは無くなるので、上記特定デー
タパターンが書き込まれているか否かにより、この管理
セクタが消去されたか否かを判断することができる。そ
れぞれの消去回数情報エリアは、それぞれ8kバイトの
容量をもち、図1に示す消去回数管理方法により消去回
数を管理する。
FFのSA6消去回数情報エリアは、データセクタSA
6の消去回数情報を格納する。相対アドレス$E000
から$FFFFの空きエリアSAE(クラスタ情報エリ
ア)は、特定のデータパターンを書き込んでおき、この
管理セクタが消去されていないことを示す。つまり、こ
の管理セクタが消去された場合には、先に書き込まれた
特定のデータパターンでは無くなるので、上記特定デー
タパターンが書き込まれているか否かにより、この管理
セクタが消去されたか否かを判断することができる。そ
れぞれの消去回数情報エリアは、それぞれ8kバイトの
容量をもち、図1に示す消去回数管理方法により消去回
数を管理する。
【0048】図1に示す消去回数管理方法では、8kバ
イトの容量があると、8×1024×8=65536回
のカウントが可能となる。フラッシュメモリのデバイス
で規定されている消去回数が10万回であるが、信頼性
確保のためマージンを持たせ消去回数を5万回とするな
ら、65536回は、十分なカウント量である。
イトの容量があると、8×1024×8=65536回
のカウントが可能となる。フラッシュメモリのデバイス
で規定されている消去回数が10万回であるが、信頼性
確保のためマージンを持たせ消去回数を5万回とするな
ら、65536回は、十分なカウント量である。
【0049】このように、図1に示した消去回数管理方
法を、図2、図3に示すフラッシュメモリの使用構成に
適用することにより、フラッシュメモリの容量の87.
5%をデータエリアにすることが可能となる(例えば、
データセクタSA0〜SA6に対して、一つの管理セク
タSA7となっているので、(SA0〜7)/(SA0
〜SA8)=0.875)。したがって、図7に示した
従来例のように、1つのデータセクタに1つの管理セク
タをもつ構成(フラッシュメモリ容量の50%がデータ
セクタ)に比べ、管理セクタの容量を低減することが可
能であり、コストが安いシステムの構築が可能となる。
法を、図2、図3に示すフラッシュメモリの使用構成に
適用することにより、フラッシュメモリの容量の87.
5%をデータエリアにすることが可能となる(例えば、
データセクタSA0〜SA6に対して、一つの管理セク
タSA7となっているので、(SA0〜7)/(SA0
〜SA8)=0.875)。したがって、図7に示した
従来例のように、1つのデータセクタに1つの管理セク
タをもつ構成(フラッシュメモリ容量の50%がデータ
セクタ)に比べ、管理セクタの容量を低減することが可
能であり、コストが安いシステムの構築が可能となる。
【0050】図4は、本発明の一実施形態において、消
去回数情報エリアSAに記憶された消去回数が規定消去
回数に達したか否かを調べる方法を示す図である。消去
回数情報エリアSAの容量は64kバイトであり、規定
消去回数を5万回とする。図1に示す消去回数管理方法
を用いると、消去回数が5万回を超えるのは相対アドレ
ス$186Bのデータが、$7Fになった場合である。
去回数情報エリアSAに記憶された消去回数が規定消去
回数に達したか否かを調べる方法を示す図である。消去
回数情報エリアSAの容量は64kバイトであり、規定
消去回数を5万回とする。図1に示す消去回数管理方法
を用いると、消去回数が5万回を超えるのは相対アドレ
ス$186Bのデータが、$7Fになった場合である。
【0051】つまり、相対アドレス$186Bのデータ
が$FFの場合、消去回数が5万回に達していない。相
対アドレス$186Bのデータが$FF以外の場合、消
去回数が5万回に達したと判断できる。
が$FFの場合、消去回数が5万回に達していない。相
対アドレス$186Bのデータが$FF以外の場合、消
去回数が5万回に達したと判断できる。
【0052】よって、監視タスクにより、ある特定の周
期でこのアドレスのデータを読み込み、読み込んだデー
タが$FFかそれ以外かを調べることにより、管理対象
セクタの消去回数が規定消去回数に達したかを確認する
ことができる。これにより、管理対象セクタの消去回数
が規定消去回数に達した場合、交代セクタへのデータの
移動等の処理をすることが可能となる。
期でこのアドレスのデータを読み込み、読み込んだデー
タが$FFかそれ以外かを調べることにより、管理対象
セクタの消去回数が規定消去回数に達したかを確認する
ことができる。これにより、管理対象セクタの消去回数
が規定消去回数に達した場合、交代セクタへのデータの
移動等の処理をすることが可能となる。
【0053】図5は、本発明の一実施形態と従来技術と
の、停電時におけるデータ消失の可能性について比較す
る図である。図5において、データセクタの消去に2m
s、データの書き込みに1バイトあたり2μs、1セク
タ分は131ms必要とするものとする。
の、停電時におけるデータ消失の可能性について比較す
る図である。図5において、データセクタの消去に2m
s、データの書き込みに1バイトあたり2μs、1セク
タ分は131ms必要とするものとする。
【0054】データセクタの消去回数を管理しているの
で、従来技術において、データセクタの書き換えを行う
場合は、データセクタの消去に2μs、データセクタの
書き込みに131ms、管理セクタの消去に2μs、管
理セクタへの管理情報の書き込みに131ms必要とな
る。
で、従来技術において、データセクタの書き換えを行う
場合は、データセクタの消去に2μs、データセクタの
書き込みに131ms、管理セクタの消去に2μs、管
理セクタへの管理情報の書き込みに131ms必要とな
る。
【0055】これに対し、本発明による消去回数管理方
法では、データセクタの消去に2μs、データセクタの
書き込みに131ms、管理セクタへの書き込みに2μ
s必要である。本発明の場合は、管理セクタの消去が不
要であるとともに、データセクタの消去回数を、管理セ
クタ内のデータの“0”を増加していく方法であるの
で、管理セクタへの書き込みが、従来技術に比較して、
大幅に短縮されている。
法では、データセクタの消去に2μs、データセクタの
書き込みに131ms、管理セクタへの書き込みに2μ
s必要である。本発明の場合は、管理セクタの消去が不
要であるとともに、データセクタの消去回数を、管理セ
クタ内のデータの“0”を増加していく方法であるの
で、管理セクタへの書き込みが、従来技術に比較して、
大幅に短縮されている。
【0056】従来技術においては、管理情報の更新に1
33ms必要であり、この間に停電が発生した場合、管
理セクタの情報は消滅、または、不完全な情報になり使
用できない。
33ms必要であり、この間に停電が発生した場合、管
理セクタの情報は消滅、または、不完全な情報になり使
用できない。
【0057】これに対して、本発明による消去回数管理
方法では、管理情報の更新には2μsの時間ですむた
め、この間に停電が発生しても、停電予告割り込みから
電源が落ちるまで数百μs必要であるため、管理セクタ
の情報が不完全な情報になることはない。
方法では、管理情報の更新には2μsの時間ですむた
め、この間に停電が発生しても、停電予告割り込みから
電源が落ちるまで数百μs必要であるため、管理セクタ
の情報が不完全な情報になることはない。
【0058】本発明の他の実施形態としては、MPU
と、主記憶装置とを有し、上述した消去回数管理方法に
より管理されるフラッシュメモリを使用するデータ処理
装置がある。このデータ処理装置によれば、データ書き
換え中の停電発生時でも管理情報領域が保存され、デー
タ領域に対して管理情報領域を縮小することができ、デ
ータセクタに比べ管理セクタが早く規定消去回数に達し
てしまうという事態を回避可能であるので、処理したデ
ータ等の信頼性の高いデータ処理装置を実現することが
できる。
と、主記憶装置とを有し、上述した消去回数管理方法に
より管理されるフラッシュメモリを使用するデータ処理
装置がある。このデータ処理装置によれば、データ書き
換え中の停電発生時でも管理情報領域が保存され、デー
タ領域に対して管理情報領域を縮小することができ、デ
ータセクタに比べ管理セクタが早く規定消去回数に達し
てしまうという事態を回避可能であるので、処理したデ
ータ等の信頼性の高いデータ処理装置を実現することが
できる。
【0059】なお、上述した例におけるフラッシュメモ
リは、消去されることによりセクタ内のデータはビット
単位で値がすべて“1”になり、書き込み動作はビット
の値に対し“1”から“0”、または、“1”から
“1”、または、“0”から“0”が許されるものであ
るが、他の例のフラッシュメモリでも適用可能である。
リは、消去されることによりセクタ内のデータはビット
単位で値がすべて“1”になり、書き込み動作はビット
の値に対し“1”から“0”、または、“1”から
“1”、または、“0”から“0”が許されるものであ
るが、他の例のフラッシュメモリでも適用可能である。
【0060】つまり、消去されることによりセクタ内の
データはビット単位で値がすべて“0”になり、書き込
み動作はビットの値に対し“0”から“1”、または、
“1”から“1”、または、“0”から“0”が許され
るフラッシュメモリにも適用可能である。
データはビット単位で値がすべて“0”になり、書き込
み動作はビットの値に対し“0”から“1”、または、
“1”から“1”、または、“0”から“0”が許され
るフラッシュメモリにも適用可能である。
【0061】
【発明の効果】本発明は、以上説明したように構成され
ているため、次のような効果がある。消去回数に制限が
あるフラッシュメモリの消去回数管理方法及びそれを用
いたデータ処理装置において、管理セクタ内の管理対象
セクタに割り当てた複数バイトの中の最下位バイトから
最上位バイトへ、バイトデータ内では最下位ビット(L
SB)から最上位ビット(MSB)、または、MSBか
らLSBに向かって管理対象セクタの消去に対し“0”
が書き込まれている次のビットに“0”を書き込んで消
去回数をカウントして、フラッシュメモリの消去回数を
管理する。したがって、データ書き換え中の停電発生時
でも管理情報領域が保存され、データ領域に対する管理
情報領域を最少にし、かつ、データセクタに比べ管理セ
クタが早く規定消去回数に達してしまうことのないフラ
ッシュメモリの消去回数管理方方法及びそれを用いたデ
ータ処理装置を実現することができる。
ているため、次のような効果がある。消去回数に制限が
あるフラッシュメモリの消去回数管理方法及びそれを用
いたデータ処理装置において、管理セクタ内の管理対象
セクタに割り当てた複数バイトの中の最下位バイトから
最上位バイトへ、バイトデータ内では最下位ビット(L
SB)から最上位ビット(MSB)、または、MSBか
らLSBに向かって管理対象セクタの消去に対し“0”
が書き込まれている次のビットに“0”を書き込んで消
去回数をカウントして、フラッシュメモリの消去回数を
管理する。したがって、データ書き換え中の停電発生時
でも管理情報領域が保存され、データ領域に対する管理
情報領域を最少にし、かつ、データセクタに比べ管理セ
クタが早く規定消去回数に達してしまうことのないフラ
ッシュメモリの消去回数管理方方法及びそれを用いたデ
ータ処理装置を実現することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態であるフラッシュメモリの
消去回数管理方法を示す図である。
消去回数管理方法を示す図である。
【図2】本発明を32セクタ、16Mビットのフラッシ
ュメモリに適用した場合の説明図である。
ュメモリに適用した場合の説明図である。
【図3】図2の管理セクタSA7内の概略構成図であ
る。
る。
【図4】消去回数情報エリアSAに記憶された消去回数
が規定回数に達したか否かを調べる方法に説明図であ
る。
が規定回数に達したか否かを調べる方法に説明図であ
る。
【図5】本発明の一実施形態と従来技術との、停電時に
おけるデータ消失の可能性について比較する図である。
おけるデータ消失の可能性について比較する図である。
【図6】従来技術の一例を示す図である。
【図7】従来技術の他の例を示す図である。
【図8】従来技術のさらに他の例を示す図である。
B1〜Bn 第1バイト〜第nバイト SA 消去回数情報エリア SA0〜SA6、SA8〜SA14 データセクタ SA16〜SA22、SA24〜SA30 データセク
タ SA7、SA15、SA23、SA31 管理セクタ
タ SA7、SA15、SA23、SA31 管理セクタ
Claims (10)
- 【請求項1】消去回数に制限があり、特定単位バイトで
あるセクタ毎に消去を行い、消去されることによりセク
タ内のデータはビット単位で値がすべて“1”になり、
書き込み動作はビットの値に対し“1”から“0”、
“1”から“1”、“0”から“0”が許される不揮発
性メモリであるフラッシュメモリの消去回数管理方法に
おいて、 複数のセクタに対して、単一のセクタを管理セクタとし
て割り当て、この管理セクタを、管理する複数のセクタ
のそれぞれに対応した領域に分割し、管理対象セクタが
消去される毎に、管理セクタ内の上記管理対象セクタに
対応する領域の複数バイトの中の連続するビットに順次
“0”を書き込んで消去回数をカウントしていくことに
より、消去回数に制限があるフラッシュメモリの寿命を
管理することを特徴とするフラッシュメモリの消去回数
管理方法。 - 【請求項2】消去回数に制限があり、特定単位バイトで
あるセクタ毎に消去を行い、消去されることによりセク
タ内のデータはビット単位で値がすべて“0”になり、
書き込み動作はビットの値に対し“0”から“1”、
“1”から“1”、“0”から“0”が許される不揮発
性メモリであるフラッシュメモリの消去回数管理方法に
おいて、 複数のセクタに対して、単一のセクタを管理セクタとし
て割り当て、この管理セクタを、管理する複数のセクタ
のそれぞれに対応した領域に分割し、管理対象セクタが
消去される毎に、管理セクタ内の上記管理対象セクタに
対応する領域の複数バイトの中の連続するビットに順次
“0”を書き込んで消去回数をカウントしていくことに
より、消去回数に制限があるフラッシュメモリの寿命を
管理することを特徴とするフラッシュメモリの消去回数
管理方法。 - 【請求項3】請求項1又は2記載のフラッシュメモリの
消去回数管理方法において、複数のセクタの集まりであ
るクラスタに対して、上記管理セクタを1つ割り当て、
この管理セクタ内に設けられた消去回数を管理するセク
タの個数分の消去回数カウンタの特定のアドレスを定期
的に読み出し、そのアドレスにおけるデータを所定の特
定データと比較し、消去回数が規定消去回数に達したか
どうかを判断することにより、消去回数に制限があるフ
ラッシュメモリの寿命を管理することを特徴とするフラ
ッシュメモリの消去回数管理方法。 - 【請求項4】請求項3記載のフラッシュメモリの消去回
数管理方法において、上記クラスタの状態を示すクラス
タ情報エリアを備え、このクラスタ情報エリアにクラス
タ内の各セクタの消去情報と、クラスタ全体に関する情
報を記録しておくことにより、クラスタ情報エリアの読
み出し動作のみによりクラスタ内の情報を取得すること
を特徴とするフラッシュメモリの消去回数管理方法。 - 【請求項5】請求項1、2又は3記載のフラッシュメモ
リの消去回数管理方法において、管理セクタの特定のア
ドレスに特定のデータパターンを書込んでおくことによ
り、その特定データパターンが書き換えられたことを検
出すうことにより、上記管理セクタが初期化されたこと
を検出することを特徴とするフラッシュメモリの消去回
数管理方法。 - 【請求項6】MPUと、主記憶手段と、消去回数に制限
があり、特定単位バイトであるセクタ毎に消去を行い、
消去されることによりセクタ内のデータはビット単位で
値がすべて“1”になり、書き込み動作はビットの値に
対し“1”から“0”、“1”から“1”、“0”から
“0”が許される不揮発性メモリであるフラッシュメモ
リとを有するデータ処理装置において、 上記フラッシュメモリは、上記複数のセクタに対して、
割り当てられる単一のセクタである管理セクタを有し、
この管理セクタは、管理する複数のセクタのそれぞれに
対応した領域に分割し、管理対象セクタが消去される毎
に、管理セクタ内の上記管理対象セクタに対応する領域
の複数バイトの中の連続するビットに順次“0”を書き
込んで消去回数をカウントしていくことにより、消去回
数に制限があるフラッシュメモリの寿命を管理すること
を特徴とするデータ処理装置。 - 【請求項7】MPUと、主記憶手段と、消去回数に制限
があり、特定単位バイトであるセクタ毎に消去を行い、
消去されることによりセクタ内のデータはビット単位で
値がすべて“0”になり、書き込み動作はビットの値に
対し“0”から“1”、“1”から“1”、“0”から
“0”が許される不揮発性メモリであるフラッシュメモ
リとを有するデータ処理装置において、 上記フラッシュメモリは、上記複数のセクタに対して、
割り当てられる単一のセクタである管理セクタを有し、
この管理セクタは、管理する複数のセクタのそれぞれに
対応した領域に分割し、管理対象セクタが消去される毎
に、管理セクタ内の上記管理対象セクタに対応する領域
の複数バイトの中の連続するビットに順次“0”を書き
込んで消去回数をカウントしていくことにより、消去回
数に制限があるフラッシュメモリの寿命を管理すること
を特徴とするデータ処理装置。 - 【請求項8】請求項6又は7記載のデータ処理装置にお
いて、上記フラッシュメモリは、複数のセクタの集まり
であるクラスタに対して、上記管理セクタを1つ割り当
て、この管理セクタ内に消去回数を管理するセクタの個
数分の消去回数カウンタを有し、この消去カウンタの特
定のアドレスを定期的に読み出し、そのアドレスにおけ
るデータを所定の特定データと比較し、消去回数が規定
消去回数に達したかどうかを判断することにより、消去
回数に制限があるフラッシュメモリの寿命を管理するこ
とを特徴とするデータ処理装置。 - 【請求項9】請求項8記載のデータ処理装置において、
上記フラッシュメモリは、上記クラスタの状態を示すク
ラスタ情報エリアを備え、このクラスタ情報エリアにク
ラスタ内の各セクタの消去情報と、クラスタ全体に関す
る情報を記録しておくことにより、クラスタ情報エリア
の読み出し動作のみによりクラスタ内の情報を取得する
ことを特徴とするデータ処理装置。 - 【請求項10】請求項6、7又は8記載のデータ処理装
置において、管理セクタの特定のアドレスに特定のデー
タパターンを書込んでおくことにより、その特定データ
パターンが書き換えられたことを検出することにより、
上記管理セクタが初期化されたことを検出することを特
徴とするデータ処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27243997A JPH11110983A (ja) | 1997-10-06 | 1997-10-06 | フラッシュメモリの消去回数管理方法及びそれを用いたデータ処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27243997A JPH11110983A (ja) | 1997-10-06 | 1997-10-06 | フラッシュメモリの消去回数管理方法及びそれを用いたデータ処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11110983A true JPH11110983A (ja) | 1999-04-23 |
Family
ID=17513938
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP27243997A Pending JPH11110983A (ja) | 1997-10-06 | 1997-10-06 | フラッシュメモリの消去回数管理方法及びそれを用いたデータ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH11110983A (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7551706B2 (en) | 2004-12-03 | 2009-06-23 | Kyocera Mita Corporation | Counter device and counting method |
| CN104361907A (zh) * | 2014-10-10 | 2015-02-18 | 宁波三星电气股份有限公司 | 一种flash存储器的计数方法 |
| JP2016133874A (ja) * | 2015-01-16 | 2016-07-25 | ルネサスエレクトロニクス株式会社 | 情報処理装置及びフラッシュメモリ制御方法 |
| CN110659218A (zh) * | 2019-08-30 | 2020-01-07 | 珠海泰芯半导体有限公司 | 一种适用于小数据量Flash的磨损均衡方法 |
| CN116311580A (zh) * | 2023-03-20 | 2023-06-23 | 广东好太太智能家居有限公司 | 智能锁存储记数方法、装置、存储介质和智能锁 |
-
1997
- 1997-10-06 JP JP27243997A patent/JPH11110983A/ja active Pending
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7551706B2 (en) | 2004-12-03 | 2009-06-23 | Kyocera Mita Corporation | Counter device and counting method |
| CN104361907A (zh) * | 2014-10-10 | 2015-02-18 | 宁波三星电气股份有限公司 | 一种flash存储器的计数方法 |
| CN104361907B (zh) * | 2014-10-10 | 2019-11-22 | 宁波三星智能电气有限公司 | 一种flash存储器的计数方法 |
| JP2016133874A (ja) * | 2015-01-16 | 2016-07-25 | ルネサスエレクトロニクス株式会社 | 情報処理装置及びフラッシュメモリ制御方法 |
| CN110659218A (zh) * | 2019-08-30 | 2020-01-07 | 珠海泰芯半导体有限公司 | 一种适用于小数据量Flash的磨损均衡方法 |
| CN110659218B (zh) * | 2019-08-30 | 2024-01-19 | 珠海泰芯半导体有限公司 | 一种适用于小数据量Flash的磨损均衡方法 |
| CN116311580A (zh) * | 2023-03-20 | 2023-06-23 | 广东好太太智能家居有限公司 | 智能锁存储记数方法、装置、存储介质和智能锁 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6154808A (en) | Method and apparatus for controlling data erase operations of a non-volatile memory device | |
| EP1548602B1 (en) | Non-volatile storage device control method | |
| US5530827A (en) | Data management system for programming-limited type semiconductor memory and IC memory card employing data save/erase process with flag assignment | |
| US5963970A (en) | Method and apparatus for tracking erase cycles utilizing active and inactive wear bar blocks having first and second count fields | |
| JP3544610B2 (ja) | メモリ装置 | |
| US6977847B2 (en) | Detecting partially erased units in flash devices | |
| JP3942807B2 (ja) | ブロックアラインメント機能付き半導体記憶装置 | |
| EP1739565A1 (en) | Storage system using flash memory | |
| US5619452A (en) | Semiconductor disk device with a constant data-writing time period | |
| JPH05282889A (ja) | 不揮発性半導体メモリ装置 | |
| KR20040014971A (ko) | 비휘발성 메모리의 제어방법 | |
| KR19990029196A (ko) | 반도체 기억 장치 및 그 데이터 관리 방법 | |
| JP5024042B2 (ja) | 半導体記憶装置 | |
| JP3421581B2 (ja) | 不揮発性半導体メモリを用いた記憶装置 | |
| US8041880B2 (en) | Flash memory, memory control circuit, microcomputer and memory control method | |
| US6442068B1 (en) | Non-volatile memory with functional capability of burst mode read and page mode read during suspension of an operation of electrical alteration | |
| JPH07114500A (ja) | 不揮発性メモリ記憶装置 | |
| JP3924568B2 (ja) | フラッシュメモリにおけるデータアクセス制御方法、データアクセス制御プログラム | |
| JP2002288999A (ja) | 半導体メモリ | |
| JPH10124403A (ja) | ブロック消去型フラッシュメモリの書込み方法 | |
| JP3826115B2 (ja) | 記憶装置、メモリ管理方法及びプログラム | |
| JP4710274B2 (ja) | メモリ装置、メモリ装置の制御方法およびデータ処理システム | |
| JPH11259357A (ja) | 半導体集積装置及び不揮発性メモリ書き込み方式 | |
| JPH06162786A (ja) | フラッシュメモリを用いた情報処理装置 | |
| JP2003263894A (ja) | 不揮発性半導体メモリ装置の制御方法 |