JP3219699B2 - 半導体メモリ装置 - Google Patents

半導体メモリ装置

Info

Publication number
JP3219699B2
JP3219699B2 JP24483296A JP24483296A JP3219699B2 JP 3219699 B2 JP3219699 B2 JP 3219699B2 JP 24483296 A JP24483296 A JP 24483296A JP 24483296 A JP24483296 A JP 24483296A JP 3219699 B2 JP3219699 B2 JP 3219699B2
Authority
JP
Japan
Prior art keywords
block
data
erasures
area
flash memory
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.)
Expired - Fee Related
Application number
JP24483296A
Other languages
English (en)
Other versions
JPH1091535A (ja
Inventor
春明 神原
成美 花原
隆弘 山下
真哉 網崎
功 梅沢
文隆 浦川
浩司 前田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Tottori Sanyo Electric Co Ltd
Sanyo Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tottori Sanyo Electric Co Ltd, Sanyo Electric Co Ltd filed Critical Tottori Sanyo Electric Co Ltd
Priority to JP24483296A priority Critical patent/JP3219699B2/ja
Publication of JPH1091535A publication Critical patent/JPH1091535A/ja
Application granted granted Critical
Publication of JP3219699B2 publication Critical patent/JP3219699B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ブロック単位での
消去しか行なえないフラッシュメモリを利用した半導体
メモリ装置に関する。
【0002】
【従来の技術】フラッシュメモリは、電気的に書替が可
能であり、かつ、電源電圧をオフとしても記憶は保持さ
れる(バッテリバックアップ不要)という極めて優れた
特性を有することからFD(フロッピィディスク)やH
D(ハードディスク)等のディスク型メモリ装置に替わ
るものとして期待され、一部カード型メモリ装置等とし
て実用化されている。
【0003】然るに、フラッシュメモリは、NAND型
で数百バイト、NOR型で数十Kバイトのブロック単位
でしか消去できず、その消去可能回数も現在最高でも1
00万回迄に制限され、それ以上となるとデータの保持
特性が劣化し、その後のデータ書き換えが保証されなく
なる。
【0004】従って、複数のブロックのうち、1つのブ
ロックだけが頻繁に書替えられ、消去回数が限界を超え
てしまうと、そのブロックだけではなく、フラッシュメ
モリ全体が使用不可となるという問題がある。
【0005】そこで、特開平7−182879号公報
(G11C16/06)には、論理アドレスに対応する
ブロック構成の標準メモリ領域とこの標準メモリ領域と
置換可能なブロック構成の予備メモリ領域とをフラッシ
ュメモリ内に形成し、標準メモリ領域内のブロックが消
去回数の限界に達した場合、予備メモリ領域の未使用ブ
ロックを同一論理アドレスに割り当てることによりフラ
ッシュメモリ全体としての寿命を長くするようにした装
置が提案されている。
【0006】
【発明が解決しようとする課題】しかし、上記従来技術
では、標準メモリ領域の他に通常は使用されない予備メ
モリ領域を確保しなければならないため、実用上のメモ
リ容量が減少するという問題がある。また、頻繁に書替
が行われるブロックは、予備メモリ領域に割り当て直さ
れたとしても、書替頻度は変わらないため、予備メモリ
領域に割り当て直されたブロックの消去回数もすぐに限
度を超える可能性が高く、このような場合、従来同様に
フラッシュメモリ全体が使用不可となる。
【0007】このように、従来方法では、単に論理アド
レスに対して予め複数個のブロックを準備することによ
り、単純に各論理アドレスに対する消去回数を準備ブロ
ックの数の整数倍としているだけであり、メモリの利用
効率が低いと共に各論理アドレスに対する書替頻度にバ
ラツキがある場合には、多くのブロックにおいて消去回
数が限度に達していない場合でもメモリ自身が使用限界
となるため、実質的な寿命の低下を招くこととなる。
【0008】
【課題を解決するための手段】本発明は上述の課題に鑑
みてなされたもので、その特徴は、ブロック単位で消去
可能なフラッシュメモリを有する半導体メモリ装置であ
って、各ブロックの消去回数を管理し、その消去回数に
基づいてブロック同士のデータの入れ替えを行なうこと
にある。
【0009】
【発明の実施の形態】図1は本発明を適用した半導体メ
モリ装置の一実施例の主要回路構成を示すブロック図で
ある。
【0010】主制御部1は例えばマイクロコンピュータ
を備え、内蔵の制御プログラムに従って入力等に応答し
て以下で説明する各部の制御を司る。
【0011】フラッシュメモリ2は、図2に示す如く複
数のブロックに分けられると共に各ブロックにはデータ
を格納するブロックエリア3の他に各ブロック毎の論理
アドレスを格納するアロケーションエリア4及び各ブロ
ック毎の消去回数を格納するカウンタエリア5が設けら
れている。
【0012】また、図1に戻ってRAM6は例えばSR
AM又はDRAM等の半導体ランダムアクセスメモリか
らなり、上記主制御部1の制御動作に必要な各種変数等
の格納手段として利用される。
【0013】次に本実施例装置の動作について説明する
に、まず、主制御部1に対してフラッシュメモリ2中の
論理アドレスaと対応するデータの書替要求がなされる
と、主制御部1はフラッシュメモリ2の各ブロックのア
ロケーションエリア4をサーチし、上記入力論理アドレ
スaと同一の論理アドレスが格納されているブロックを
検出する。
【0014】この検出の結果、論理アドレスaと同一の
アドレスを発見できなかった時には、フラッシュメモリ
2中の空きブロックのアロケーションエリア4に上記論
理アドレスaを書込むと共にデータエリア3に書替える
べきデータを書込む。
【0015】一方、論理アドレスaと同一のアドレスを
発見した際には、この同一アドレスが格納されているブ
ロック中の全エリアのデータを一旦RAM6にコピーし
た後、上記ブロック中の全データを一括消去する。そし
て、RAM6に待避されたデータのうち、消去回数デー
タを「1」だけインクリメントすると共にデータエリア
3に書き替えられるデータの変更を行った後、上記RA
M6に待避された全データを元のブロックに書込む。
【0016】このブロック中のデータの変更には、ブロ
ックに対する消去処理が伴なっているので、主制御部1
はこのデータ変更処理終了後、図3に示すフローチャー
トに従った処理を実行する。
【0017】即ち、S1ステップでは、主制御部1は、
フラッシュメモリ2の各ブロックのカウンタエリア5を
順次比較サーチすることにより最大消去回数及び最小消
去回数を有するブロックを検出し、その最大消去回数及
び最小消去回数を夫々変数E−MAX及びE−MINに
セットすると共に最大消去回数を有するブロックのブロ
ック番号及び最小消去回数を有するブロックのブロック
番号を夫々変数A−MAX及びA−MINにセットす
る。
【0018】尚、上記各変数領域はRAM6に形成され
る。また、最小消去回数を有するブロックは複数存在す
る可能性があるが、この場合には、若いブロック番号を
優先させる等の任意の方法で1つのブロックを選択すれ
ば良い。
【0019】続くS2ステップでは、変数E−MAXの
値が第1の所定値(本実施例では「10」)の整数倍か
否かを判定し、整数倍でない時には処理を終了する。
【0020】一方、S2ステップにおいて整数倍と判定
すると、S3ステップにおいて変数E−MAXとE−M
INとの差が第2の所定値(本実施例では「1000
0」)以上か否かを判定する。この判定において、上記
差が第2の所定値未満と判定すると処理を終了し、第2
の所定値以上と判定すると、主制御部1はS4〜S9ス
テップを順次処理する。
【0021】S4ステップでは、変数A−MAX中の値
と同一のブロック番号を有するフラッシュメモリ2中の
ブロック(以下、最大消去ブロックという)中の全デー
タをRAM6にコピーし、続くS5ステップにおいて上
記最大消去ブロック中の全データを消去する。
【0022】その後S6ステップにおいて、変数A−M
IN中の値と同一のブロック番号を有するフラッシュメ
モリ2中のブロック(以下、最小消去ブロックという)
のうちカウンタエリア5中の消去回数データを除くデー
タを上記最大消去ブロックにコピーし、続くS7ステッ
プにおいて上記最小消去ブロック中の全データを消去す
る。
【0023】次のS8ステップでは、RAM6に待避コ
ピーされている上記最大消去ブロックのうち消去回数デ
ータを除くデータを上記最小消去ブロックに書込む。
【0024】続くS9ステップでは、変数E−MAX及
びE−MIN中の値を共に「1」だけインクリメントす
ると共に、インクリメントされた値を夫々最大消去ブロ
ック及び最小消去ブロックのカウンタエリア5に書込み
処理を終了する。尚、このカウンタエリア5への書込み
は、このエリアがS5及びS7ステップの消去処理によ
りクリアされている状態であるのでフラッシュメモリの
特性上他のエリアに影響を及ぼすことなく行なえること
は周知であるのでその原理的な詳細な説明は省略する。
【0025】次に一具体例に基づいて本実施例の動作を
説明する。
【0026】今、図4に示す如く、フラッシュメモリ2
のブロック0〜2のデータエリア3には夫々データA、
B、Cが格納され、アロケーションエリア4には夫々論
理アドレスa1、a2、a3が格納され、更にカウンタ
エリア5には夫々消去回数として「0」、「999
9」、「0」が格納されている際に、ブロック1に対す
る書替処理が行われると、図5に示す如くブロック1の
データは「データB’」に変更されると共に書替には上
述した如くブロックの消去処理を伴なうため、カウンタ
エリア5中の消去回数データもインクリメントされ、
「10000」となる。
【0027】また、上記消去処理に対応して図3に示す
フローが実行される。図5に示す状態では、S1ステッ
プを処理することによりE−MAX、E−MIN、A−
MAX、A−MINとして夫々「10000」、
「0」、「1」、「0」がセットされる。
【0028】この結果、S2及びS3ステップの判定は
いずれも「YES」と判定されるのでS4〜S7ステッ
プが順次処理され、図6に示す如くブロック0とブロッ
ク1のデータエリア3及びアロケーションエリア4のデ
ータが入れ替わると共に両ブロックのカウンタエリア5
の消去回数データはインクリメントされることとなる。
【0029】このように、本実施例によれば、消去回数
の差が1万回以上となった場合にはブロックの入れ替え
が行われるので、フラッシュメモリの消去限度が100
万回である場合に各ブロックの消去回数のバラツキは1
%程度となり、消去回数の均等化を図れる。
【0030】また、例えば図6に示す様にブロック0以
外にもブロック1との消去回数差が1万回以上となるブ
ロックが存在する場合、上記消去回数差のみをブロック
入替の条件としてしまうと、消去動作が生じるたびにブ
ロックの入替処理を行わなければならない状態となる
が、本実施例の如く最大消去回数が所定値(本実施例で
は「10」の整数倍)となったことを条件とすることに
より、実質的な処理速度の向上を図れる。
【0031】尚、本実施例では、S2ステップの条件を
最大消去回数が「10」の整数倍としたが、本発明はこ
れに限られるものではなく、他の整数(但し、「1」は
除く)の整数倍としても、又はアットランダムな数とし
ても良い。また、S3ステップの条件とし、本実施例で
は1万回としたが、フラッシュメモリの消去限度と所望
するブロック間の消去回数のバラツキ度合に応じて任意
に設定すれば良い。
【0032】更に、本実施例ではブロック内にこのブロ
ックの論理アドレスも書込むようにしたので、ブロック
を入れ替えた際でも、アロケーションエリア4をサーチ
することにより所望のアドレスをアクセスできるが、こ
のようなアロケーションエリアは別途設けても良い。
【0033】
【発明の効果】本発明によれば、従来の如き予備メモリ
領域を別途設けることなく、各ブロックの消去回数の均
等化が図れるため実質的な寿命及び使用効率の向上を図
れ、また、処理速度の向上を図れる。
【図面の簡単な説明】
【図1】本発明を適用した一実施例の主要回路構成を示
すブロック回路図である。
【図2】本発明の一実施例のフラッシュメモリを示す模
式図である。
【図3】本実施例の動作を示すフローチャートである。
【図4】本実施例の動作を説明するための模式図であ
る。
【図5】同上
【図6】同上
【符号の説明】
1 主制御部 2 フラッシュメモリ 3 データエリア 4 アロケーションエリア 5 カウンタエリア 6 RAM
───────────────────────────────────────────────────── フロントページの続き (72)発明者 山下 隆弘 鳥取県鳥取市南吉方3丁目201番地 鳥 取三洋電機株式会社内 (72)発明者 網崎 真哉 鳥取県鳥取市南吉方3丁目201番地 鳥 取三洋電機株式会社内 (72)発明者 梅沢 功 鳥取県鳥取市南吉方3丁目201番地 鳥 取三洋電機株式会社内 (72)発明者 浦川 文隆 鳥取県鳥取市南吉方3丁目201番地 鳥 取三洋電機株式会社内 (72)発明者 前田 浩司 鳥取県鳥取市南吉方3丁目201番地 鳥 取三洋電機株式会社内 (56)参考文献 特開 平6−338195(JP,A) 特開 平7−153285(JP,A) 特開 平5−151097(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 12/16 G06F 12/00 G11C 16/02

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 ブロック単位で消去可能なフラッシュメ
    モリを有する半導体メモリ装置であって、 各ブロックの消去回数を管理し、最大消去回数のブロッ
    クの消去回数が第1の所定値の整数倍となり、かつ、最
    小消去回数のブロックとの消去回数差が第2の所定値以
    上となった時、上記最大消去回数を有するブロックのデ
    ータと上記最小消去回数を有するブロックのデータとを
    入れ替えることを特徴とする半導体メモリ装置。
  2. 【請求項2】 請求項のフラッシュメモリの各ブロッ
    クには論理アドレスもデータとして書込まれることを特
    徴とする半導体メモリ装置。
JP24483296A 1996-09-17 1996-09-17 半導体メモリ装置 Expired - Fee Related JP3219699B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24483296A JP3219699B2 (ja) 1996-09-17 1996-09-17 半導体メモリ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24483296A JP3219699B2 (ja) 1996-09-17 1996-09-17 半導体メモリ装置

Publications (2)

Publication Number Publication Date
JPH1091535A JPH1091535A (ja) 1998-04-10
JP3219699B2 true JP3219699B2 (ja) 2001-10-15

Family

ID=17124631

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24483296A Expired - Fee Related JP3219699B2 (ja) 1996-09-17 1996-09-17 半導体メモリ装置

Country Status (1)

Country Link
JP (1) JP3219699B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003282544A1 (en) * 2002-10-28 2004-05-25 Sandisk Corporation Automated wear leveling in non-volatile storage systems
US7224604B2 (en) * 2005-03-14 2007-05-29 Sandisk Il Ltd. Method of achieving wear leveling in flash memory using relative grades
US7804718B2 (en) * 2007-03-07 2010-09-28 Mosaid Technologies Incorporated Partial block erase architecture for flash memory
JP5368993B2 (ja) * 2007-11-14 2013-12-18 パナソニック株式会社 メモリコントローラ、不揮発性記憶モジュール、及び不揮発性記憶システム
JP4666081B2 (ja) * 2009-02-09 2011-04-06 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP4952742B2 (ja) * 2009-04-15 2012-06-13 Tdk株式会社 メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP6429196B2 (ja) * 2015-05-12 2018-11-28 東芝情報システム株式会社 Nand型フラッシュメモリを用いた記憶装置及びnand型フラッシュメモリの使用方法

Also Published As

Publication number Publication date
JPH1091535A (ja) 1998-04-10

Similar Documents

Publication Publication Date Title
US8312248B2 (en) Methods and apparatus for reallocating addressable spaces within memory devices
EP1228510B1 (en) Space management for managing high capacity nonvolatile memory
EP1739683B1 (en) Space management for managing high capacity nonvolatile memory
US5530827A (en) Data management system for programming-limited type semiconductor memory and IC memory card employing data save/erase process with flag assignment
US5485595A (en) Flash memory mass storage architecture incorporating wear leveling technique without using cam cells
KR101110901B1 (ko) 비-휘발성 저장 시스템의 소모 레벨링
US7287118B2 (en) Maintaining an average erase count in a non-volatile storage system
EP0691008B1 (en) Flash memory mass storage architecture
US5802551A (en) Method and apparatus for controlling the writing and erasing of information in a memory device
JP4772214B2 (ja) 不揮発性記憶装置及びその書き換え制御方法
US7418436B2 (en) Information processing apparatus, memory management apparatus, memory management method, and information processing method
JP3812933B2 (ja) ファイルシステムおよびその制御方法
KR20050059314A (ko) 비휘발성 저장 시스템들에서 가장 자주 소거되는 블록들의추적
JP3122222B2 (ja) メモリカード装置
JP3219699B2 (ja) 半導体メモリ装置
EP2264602A1 (en) Memory device for managing the recovery of a non volatile memory
JP2003058417A (ja) 記憶装置
JP4636005B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
CN114005476A (zh) 闪存器、闪存擦写计数方法、电子设备及计算机存储介质
JPH05274219A (ja) 記憶装置
JPH05258585A (ja) ファイル装置
JPH1091490A (ja) フラッシュメモリを利用した記憶装置
JP2000122909A (ja) 不揮発性メモリを使用した外部記憶装置
JP3741535B2 (ja) 不揮発性記憶装置
JP2023045035A (ja) メモリシステム

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees