JP3412839B2 - 不揮発性半導体メモリ装置 - Google Patents

不揮発性半導体メモリ装置

Info

Publication number
JP3412839B2
JP3412839B2 JP17423292A JP17423292A JP3412839B2 JP 3412839 B2 JP3412839 B2 JP 3412839B2 JP 17423292 A JP17423292 A JP 17423292A JP 17423292 A JP17423292 A JP 17423292A JP 3412839 B2 JP3412839 B2 JP 3412839B2
Authority
JP
Japan
Prior art keywords
data
recorded
block
writing
error
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
JP17423292A
Other languages
English (en)
Other versions
JPH0619778A (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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP17423292A priority Critical patent/JP3412839B2/ja
Priority to US08/084,477 priority patent/US5379262A/en
Priority to KR1019930012262A priority patent/KR960005895B1/ko
Publication of JPH0619778A publication Critical patent/JPH0619778A/ja
Application granted granted Critical
Publication of JP3412839B2 publication Critical patent/JP3412839B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/20Initialising; Data preset; Chip identification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、電気的に書き換え可能
な不揮発性半導体メモリ素子(EEPROM)のうちの
NAND型EEPROMを用いた不揮発性半導体メモリ
装置に関する。
【0002】
【従来の技術】コンピュータの2次記憶装置には、現在
磁気ディスク装置が広く用いられているが、近年、電気
的に書き換え可能な不揮発性半導体メモリ(EEPRO
M)が、その機械的強度に対する信頼性、低消費電力、
可搬性の良さ、高速アクセスといった特徴を生かして、
磁気ディスクを置き換えるような用途に使われだした。
しかし、磁気ディスク装置とEEPROMには機能的な
相違点があるため、従来の磁気ディスク装置をそのまま
置き換えるためには、これを埋めるための制御が必要と
なる。
【0003】EEPROMの一つとして、高集積化が可
能なNAND型EEPROMが知られている。これは、
複数のメモリセルをそれらのソース、ドレインを隣接す
るもの同士で共有する形で直列接続して一単位とし、ビ
ット線に接続するものである。メモリセルは通常、電荷
蓄積層と制御ゲートが積層されたFETMOS構造を有
する。メモリセルアレイは、p型基板、又はn型基板に
形成されたp型ウェル内に集積形成される。NANDセ
ルのドレイン側は選択ゲートを介してビット線に接続さ
れ、ソース側はやはり選択ゲートを介して、ソース線
(基準電位配線に接続される(図21))。メモリセル
の制御ゲートは、行方向に連続的に接続されてワード線
となる。通常同一ワード線につながるメモリセルの集合
を1ページと呼び、一組のドレイン側及びソース側の選
択ゲートに挟まれたページの集合を1NANDブロック
又は単に1ブロックと呼ぶ(図22)。通常1ブロック
は独立に消去可能な最小単位となる。
【0004】NAND型EEPROMの動作は次の通り
である。データの消去は1NANDブロック内のメモリ
セルに対して同時に行われる。即ち選択されたNAND
ブロックの全ての制御ゲートを基準電位VSSとし、p
型ウェル及びn型基板に高電圧VPP(例えば20V)
を印加する。これにより、全てのメモリセルにおいて浮
遊ゲートから基板に電子が放出され、しきい値は負の方
向にシフトする。通常この状態を”1”状態と定義す
る。またチップ消去は全NANDブロックを選択状態に
することによりなされる。
【0005】データの書き込み動作は、ビット線から最
も離れた位置のメモリセルから順に行われる。NAND
ブロック内の選択された制御ゲートには高電圧VPP
(例えば20V)を印加し、他の非選択ゲートには中間
電位VM(例えば10V)を与える。またビット線には
データに応じて、VSS又はVMを与える。ビット線に
VSSが与えられたとき(”0”書き込み)、その電位
は選択メモリセルに伝達され、浮遊ゲートに電子注入が
生ずる。これによりその選択メモリセルのしきい値は正
方向にシフトする。通常この状態を”0”状態と定義す
る。ビット線にVMが与えられた(”1”書き込み)メ
モリセルには電子注入は起らず、従ってしきい値は変化
せず負に留まる。データの読み出し動作はNANDブロ
ック内の選択されたメモリセルの制御ゲートをVSSと
して、それ以外の制御ゲート及び選択ゲートをVCCと
し選択メモリセルで電流が流れるか否かを検出すること
により行われる。
【0006】NAND型EEPROMではデータの書き
込みはソース線に近いページからドレイン側のページに
順に行なわれる必要がある。その必要性を図23を参照
して以下に説明する。”1”書き込みは中間電位VM
(10V程度)を選択メモリセルのドレインに転送し、
電子の注入を起こさせず消去状態(即ち負のしきい値)
を保つ。図23は制御ゲート1が選択状態(VPP)の
ときを示している。よって制御ゲート2は非選択でVM
が与えられている。またドレインにもVM(”1”書き
込み)が与えられている。図23(a)はソース側から
書き込みを行なったときの図、図23(b)はドレイン
側から書き込みを行なった場合のものである。図23
(a)の場合ドレイン側のセルMa2のしきい値は負で
あるので、ドレインの電位VMは確実にソース側セルM
a1に転送される。しかしながら、図23(b)の場合
ドレイン側セルMb2にすでに”0”書き込み動作がな
され、正のしきい値(たとえば3.5V)を持っていた
とすると、ソース側セルMb1に”1”を書き込む際、
セルMb1にはVMからセルMb2のしきい値電圧分差
し引いた電圧しか転送されてこない。よってセルMb1
では制御ゲートと基板間の電位差が大きくなって誤書き
込みが起こる可能性がある。以上のようにソース側から
順に書き込む手段は誤書き込みを防ぐ意味で重要であ
る。
【0007】従来の磁気ディスク装置では、データの読
み出しや書き込みといったアクセスは、セクタを単位と
して行われている。磁気記録媒体上に同心円状に形成さ
れる記憶領域の1本1本はトラックと呼ばれているが、
このトラックがさらに数十個の領域に分割されてセクタ
と呼ばれる記憶単位が形成されている。パーソナルユー
スの携帯型コンピュータに使用されている典型的磁気デ
ィスク装置の1セクタの容量は512バイトである。
【0008】また、コンピュータが磁気ディスク装置に
データを記憶させる場合の一塊のデータをファイルと呼
んでいるが、このファイルが記憶装置上のどの場所に記
憶されているのかを管理するのが、オペレーティングシ
ステム(以下OS)の重要な機能の一つである。
【0009】図24は、パーソナルユースの携帯型コン
ピュータに使用されている典型的なOSの一つであるM
S−DOSがファイル管理をするために磁気ディスク装
置の記憶領域をどの様に使用しているかを示す図であ
る。61のブート領域はコンピュータが起動するときに
必要な情報が納められている領域で、ユーザファイルの
管理には関わらない領域である。64のルートディレク
トリ領域には、ファイルの名前とそれに付随する情報を
記録したファイル管理用テーブルが納められている。ル
ートディレクトリにより他のデータファイルと同様な扱
いで管理されるが、その内容はルートディレクトリと同
一の、サブディレクトリと呼ばれるものがデータ領域に
階層的に存在し得る。これらは、存在する領域と階層中
での順位を除いて機能的には同じものであるので総称し
て単にディレクトリと呼ばれる。ディレクトリ中の1つ
のファイルに関する情報は32バイトの領域を占めてい
てその内容は図25に示すようになっている。磁気ディ
スク装置のデータ記録がセクタを単位としていることは
先に述べたが、ファイルに対してディスク上の領域を割
り当てるにはクラスタという論理的単位を用いる。1ク
ラスタは、2のべき乗倍個のセクタで構成されるように
ディスクの種類によって決められている。図25の66
のスタートクラスタ番号とはファイルの先頭に割り当て
られたクラスタの番号である。図24の62のFAT領
域には、65のデータ領域中のクラスタがどの様な順に
つながって、1つのファイルを構成しているのかを表す
データ領域へのファイル割当情報が納められている。6
3はFAT領域62のバックアップである。以上のよう
に、MS−DOSのファイル管理は、FAT領域とルー
トディレクトリ領域の情報をもとに行われるが、これら
の領域の位置と大きさは、ディスクの種類ごとに決めら
れていて固定である。
【0010】NAND型EEPROMのアクセスの単位
は前述の通りページである。4MビットのNAND型E
EPROMを例に取ると、1ページは512バイトで、
1ブロックは8ページで構成されている。よって、磁気
ディスク装置をNAND型EEPROMで置き換えるよ
うな応用においては、ディスクの1セクタをNAND型
EEPROMの1ページに対応させると変換が容易であ
る。しかしながら磁気ディスク装置をEEPROMで置
き換えようとする場合に問題となる大きな相違点の一つ
に、データの書き換え可能回数がある。磁気ディスク装
置の場合、媒体上に記録されるデータの書き換え回数に
は制限がなく、その寿命はヘッドと磁気記録媒体が接触
することによる損傷といった機械的な要因に支配されて
いる。一方EEPROMの場合は、データの書き換え可
能回数が現状の技術では104 ないし105 回程度しか
ない。
【0011】また、前述のように、磁気ディスク装置の
1セクタに記録される”データ”量は512バイトであ
るが、このデータ量とはユーザが記録再生する情報の量
で、セクタ内にはこの他にも、記録再生制御に必要な情
報が追加して書き込まれてある。そういった情報の一つ
に誤り訂正コード(以下ECCコード)がある。これ
は、媒体の欠陥やノイズの影響等で、ユーザのデータが
正しく読み取れなかった場合に、読み取りデータに誤り
があることを検出したり、さらにその誤りを訂正したり
するための情報で、セクタにデータを書き込むときに、
ECC発生回路が記録されるデータをもとに計算し、デ
ータとともに媒体上に書き込まれる。
【0012】NAND型EEPROMのアクセス単位は
ページであり、多少の相違はあるものの、これを磁気デ
ィスク装置のセクタに相当するものと見なすことができ
る。信頼性を向上させるため、磁気ディスク装置のよう
に、1ページの物理的な容量をユーザデータが記録再生
される情報量より多くして、その冗長分をECCに割り
当てることは有効な施策の一つである。
【0013】従来の磁気ディスク装置では、これを記憶
装置として使用するために、フォーマットと呼ばれる初
期化が必要とされる。フォーマットにより、磁気記録媒
体上には一連の複数セクタが円周上に並んだトラックが
形成され、さらにこのトラックが同心円状に複数(通常
数百〜千数百)本形成される。このとき、各セクタは、
ユーザデータ領域に特定の初期化パターンが書き込まれ
るとともに、記録再生制御に必要な情報が書き込まれ
る。ECCも初期化パターンから計算されたものが書き
込まれる。一方、NAND型EEPROMは、先の説明
からわかるように、一度書き込みを行ったページに対し
ては、磁気ディスク装置で行われるような重ね書きをす
ることは出来ない。例え1ページでもデータを書き換え
るためには、複数のページからなるブロックを単位とし
て消去を行う必要があるから、消去されるブロックの他
のページは、必要によって待避させて消去後に書き戻す
こともしなければならない。よって、消去後のページ
は、有効なユーザデータを書き込むときまで消去状態に
保っていた方が好都合の場合が多い。
【0014】
【発明が解決しようとする課題】磁気ディスク装置の場
合、装置に保証された寿命時間を20000動作時間、
この内の数分の1がデータの書き換えに費やされる時間
であるとすると、ファイル管理領域等の特定の記憶領域
に対して最悪で109 回程度の書き換えが行われると見
積もることができる。これに対してNAND型EEPR
OMは、前述の通り、書き換え可能回数は105 回程度
であるから、磁気ディスク装置と同様の使い方をする
と、1ブロックのみに書き込みが集中するという最悪の
場合に、1万分の1の回数しか書き込みを行うことが出
来ない。実際のデータの書き込み位置は記憶領域内に分
散するので、その分、見かけの書換回数はこれよりは増
加する。ところが、1度書き込まれた後に長期間消去さ
れないデータが存在すると、書き込み可能領域が狭くな
ったのと等価であるから、それだけ書き換えできる回数
が減少する。
【0015】また、OSによるファイル管理のように、
一般に、ファイルはデータ領域の空いた領域であればど
こに記録されてもよく、その場所はディレクトリとFA
Tのようなテーブルで管理されている。よって、書き換
え可能回数に制限があるEEPROMにこのようなファ
イル管理を適用しても、ファイルに関しては、同一場所
への書き換えが集中しないように書き込み位置を分散さ
せるのは容易である。ところが、ファイルを書き込んだ
り書き換えたりした場合には必ずファイル管理テーブル
の内容の書き換えが発生するので、これらのテーブルデ
ータが書き換えられる頻度は、個々のデータファイルが
書き込まれる頻度に比べてかなり多い。しかも、このテ
ーブルはファイルの記録場所を検索するおおもとの情報
であるから、いつも決まった位置に記録されている必要
がある。よって、EEPROMをファイル記憶装置に応
用した場合、この管理テーブル領域に集中した書き換え
によって、短時間で寿命に至ってしまうおそれがあると
いう問題があった。
【0016】さらに、前述の説明から分るように、磁気
ディスク装置では、有効なユーザデータが書き込まれる
前のセクタも、ユーザデータの書き込まれたセクタと同
様にECCによるチェックを行って何等差し支えない。
これに対して、消去後のページが有効なユーザデータを
書き込むときまで消去状態に保たれるように制御された
NAND型EEPROMでは、有効なユーザデータが書
き込まれる前のページを読み出すと、ECCを含めたペ
ージ内の情報は全て”1”になっているから、ECC検
査回路は誤りがあるという判定を下してしまう。
【0017】通常、ホストコンピュータのオペレーティ
ングシステムは、有効なデータの書かれていないページ
のみを読み出そうとすることはないが、複数のページを
ファイル管理の単位としている場合に、既に有効なデー
タの書かれたページと一緒に読み込もうとすることは有
り得る。また、ページの書き換えにともなってブロック
消去をするときに、消去されるブロック内の他のページ
に、既に書き込みがされているのか否かを、データの待
避を制御する手段が知り得ないような制御装置の場合に
は、消去状態のページもバッファに読み込まなくてはな
らない。こうした場合に、消去状態のページのデータに
対してECC検査回路が働いてしまうと、上述のよう
に、本来は正常なページであるにもかかわらず、誤りが
発生したと誤認され、エラー処理に制御が移ってしま
い、処理を正常に進めることが出来なくなってしまう。
【0018】本発明は、上述のような問題に鑑みなされ
たもので、磁気ディスク装置と同等の寿命を実現するこ
とができ、また高信頼性を確保することができる不揮発
性半導体メモリ装置を提供することを目的とする。
【0019】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、第1に、管理の単位となる容量で区切ら
れた複数の記憶領域を備えたメモリ手段と、複数の前記
記憶領域に対するデータの書き込みに際し当該複数の記
憶領域が物理的或いは論理的な配置にしたがって一方向
に循環して使用されるように管理する第1の管理手段
と、複数の前記記憶領域に記録されたデータが所定の時
点から後に変更されたか否かを管理する第2の管理手段
と、データの書き込みにより予め定められた条件が成立
した時点で前記第2の管理手段が初期化された時点より
後にはデータが変更されていない前記記憶領域を選択し
この選択した記憶領域のデータを他の記憶領域に移動さ
せるとともに全ての記憶領域のデータが変更されたと見
なされる場合には当該第2の管理手段を初期化する制御
手段とを有することを要旨とする。
【0020】第2に、上記第1の構成において、前記予
め定められた条件が成立した時点とは、前記第1の管理
手段で管理される循環の1周期をもってその時点とする
ことを要旨とする。
【0021】第3に、ファイル、該ファイルの記録され
た位置を管理する管理テーブル及び該管理テーブルの記
録された位置を複数階に階層的に示すように構成された
ポインタが記録されるメモリ手段と、該メモリ手段内に
おいて前記管理テーブルの記録される位置は固定されず
前記複数階のポインタのうち根源となるルートポインタ
の記録される位置のみが固定されるように制御する制御
手段とを有することを要旨とする。
【0022】第4に、データ及び該データに対応した誤
り検出コードが記録される記憶領域を備えたメモリ手段
と、該メモリ手段から読み出された前記データ及び誤り
検出コードから当該データに誤りがあるか否かを検出す
る誤り検出手段と、前記メモリ手段から読み出されたデ
ータから該データの記録された前記記憶領域が消去状態
であるか否かを検出する消去検出手段と、前記誤り検出
手段で読み出したデータに誤りが検出された場合でも前
記消去検出手段が同時に消去状態を検出した場合には当
該読み出しデータには誤りが無いものとして処理する制
御手段とを有することを要旨とする。
【0023】
【作用】上記構成において、第1に、データの書き込み
が複数の記憶領域に対し一方向に循環して行われるので
書き込みが特定の記憶領域に集中することなく、複数の
記憶領域全体に均一に行われる。また、書き込まれた
後、長期間変更を受けることなく同じ場所に留まってい
るデータは複数の記憶領域全体と比較した書き込み回数
に不均衡が生じないように移動させられるので、見かけ
の書き込み領域が狭まって寿命を縮めてしまうことが防
止される。
【0024】第2に、書き込まれたデータが変更されて
いない記憶領域の選択が、書き込みの1循環周期を以っ
て行われることにより、見かけの書き込み領域を狭める
ことが一層適切に防止される。
【0025】第3に、書き換え頻度の高い管理テーブル
のメモリ手段上での記録位置が固定されず、またこの管
理テーブルの位置を示すポインタを複数階に階層化して
記録することにより、検索のため固定した位置に記録さ
れなければならないポインタの書き換え回数が他の領域
と同等に抑えられて特定の記憶領域に書き込みが集中し
て短時間で寿命に至ってしまうことが防止される。
【0026】第4に、読み出されたデータからその記憶
領域であるページ等が消去状態であるかどうかが検出さ
れて誤り検出手段の検出結果に誤りがでることが防止さ
れる。これにより、消去状態のページ等がデータの書き
込まれたページ等と区別無く読み出されるような制御が
行われる場合にも、読み出しデータの正確な誤り検出が
行われて高い信頼性が確保される。
【0027】
【実施例】以下、本発明の実施例を図面を参照して説明
する。本実施例は、NAND型EEPROMを用いた不
揮発性半導体メモリ装置に適用されている。
【0028】図1ないし図9は、本発明の第1実施例を
示す図である。まず、図2は、メモリ手段であるEEP
ROMにおける記憶領域の構成を示している。同図の3
1〜36は、管理の単位となる容量で区切られた複数の
記憶領域であり、消去単位と同一或いはその整数倍とす
ると扱いが簡単になるが、それに限定されるものではな
い。また、本実施例では以下この単位記憶領域を単にブ
ロックと称するが、これはNAND型EEPROMの消
去単位であるブロックと解釈しても構わないがそれに限
定されるものでもない。各ブロックに付けられた番号
は、各ブロックを順位付けするためのもので、物理的な
アドレス順とするのが分りやすいが、特定の規則に従っ
た論理的な順位であっても構わない。以後簡単のため
に、ここで説明に使用するメモリ手段は6個のブロック
で構成されていることにする。
【0029】図1は、上記ブロック31〜36への書き
込みを管理するためのテーブルである。11〜16の各
項目は、ブロック31〜36の状態を示すもので、21
〜23に図示されるように3つのフラグで構成されてい
る。即ち、ブロックに有意なデータが記録されているか
否かを管理する第3の管理手段としてのフラグ(以下、
有効フラグ又はVフラグ)23と、有効フラグとともに
参照することで、データの書き込みをブロックの順位に
したがって1方向に向かって、かつ循環して使用される
ように管理するための第1の管理手段としてのフラグ
(以下、消去フラグ又はEフラグ)21と、ブロックに
記録されたデータが或る時点から後に変更されたか否か
を管理する第2の管理手段としてのフラグ(以下、変更
フラグ又はCフラグ)22である。
【0030】次に、図面とフローチャートを使用して、
本実施例の書き込み方式を説明する。なお、書き込まれ
たデータを読み出すためには、書き込んだデータのタグ
(例えばファイル名)と書き込んだ位置の対応を管理す
る手段が必要であるが、これは通常のファイルシステム
(OS)で行われている方法を適用可能なので本実施例
では説明を省略する。
【0031】図3及び図4はデータ書き込みの手順を示
すフローチャート、図5はデータ消去の手順を示すフロ
ーチャート、図6はデータの書き換え手順を示すフロー
チャート、図7は書き込み手順中で使用されるサブルー
チンのフローチャートである。図8及び図9はデータの
書き込みによって、図2で示した記憶領域と図1で示し
たそれを管理するテーブルの状態の変化を同時に説明す
るための図である。図8及び図9の記憶領域を示す図中
の斜線のブロックは有効なデータが書き込まれている領
域を示すものとする。
【0032】まずメモリ装置が使用される前には、図8
(a)に示されるように全てのフラグが”0”に初期化
されるものとする。この状態で第1ブロックの書き込み
を行うことを考える。図3のステップ201で必要な容
量が空いていることをチェックする。次に、この方式で
は有意なデータが記録されているか否かを管理するVフ
ラグと一方向に向っての循環使用を管理するEフラグの
両方が”0”のブロックにしか書き込みを行わないの
で、この条件に合うブロック検索を行う(図3ステップ
202,203、図7ステップ301〜304)。条件
に合うことが確認された後、第1ブロックにデータを書
き込んで(図3ステップ204〜206)、Cフラグと
Vフラグを”1”にする(図3ステップ207、図8
(b))。今書き込んだデータを即書き換えると、図5
の手順に従って、第1ブロックのVフラグ”0”に、E
フラグを”1”に変更し、初回の書き込みと同じ手順で
検索される第2ブロックにデータを書き込む(図8
(c))。これで第1ブロックは論理的な消去状態にな
るが、電気的な消去は別に行わなければならない。バッ
クグラウンドで行われるのが処理速度の面で好ましい
が、その方法は本実施例の本質から外れるので説明は省
略する。以下の説明ではデータが書き込まれる前にこれ
らのブロックに電気的な消去は何らかの方法で済んでい
ることと仮定する。
【0033】こうした書き込み処理が続くと、データ
は、ブロック番号順にメモリ全体に一様に書き込まれ、
例えば図8(d)に示すような状態になる。ここで例え
ば1ブロック分のデータの書き込みをしようとすると、
空き領域はあるが、図3のステップ203の検索で失敗
する。検索に失敗したという状態は、ブロックの空き領
域に対する一様な書き込みが一巡したことを示してい
る。よって、次の一巡の単一方向書き込みを制御するた
めに全てのブロックに対するEフラグを”0”にクリア
する(図3ステップ209、図8(e))。
【0034】単一方向循環による一様書き込みとともに
本実施例を特徴づけるのは長期間同じ場所に留まるデー
タを移動させる点である。これを実現するためには、移
動を行うのに適当な、書き込み回数に関連したタイミン
グが必要となるが、その一つとしてEフラグが全てクリ
アされる時点を利用する。図3では、この時点における
ステップ210〜213の処理でCフラグを検査するこ
とにより、移動対象のデータを選択している。図8
(e)では、全てのブロックのCフラグが”1”になっ
ているが、これは、Cフラグが初期化された時点から図
8(e)の状態になるまでに、全てのブロックが最低1
回は書き換えられていることを示している。この場合
は、どのデータがより長く同じブロックを占有している
のか判断できないのでステップ214で初期化し直す
(図8(f))。その後、この一連の処理を起動させた
第1ブロックのデータ書き込みを行う(図4ステップ2
24〜228,206、図9(a))。
【0035】さらに、第5ブロックのデータが消去され
て図9(b)の状態になり、第2ブロックの書き込みと
第1ブロックの消去があって図9(c)の状態になった
とする。書き込みパターンの最後として、この時点で第
1ブロックの書き込みを行う場合を考える。書き換えは
もう一巡したので書き込み可能領域の検索には失敗し、
Eフラグが全てクリアされる(図9(d))。続いてC
フラグの検査が行われるが、今度は、第2ブロックのC
フラグが”0”であるので、このブロックのデータは比
較的長期間書き換えが行われていないと判断し移動の対
象にする。移動先の書き込み可能ブロックは、図3のス
テップ215〜220の手順に従って、移動対象データ
の入ったブロックを起点に書き込みが進行する方向へ循
環して検索される。この例では、第4ブロックが該当す
るので、第2ブロックはここにデータがコピーされた後
消去される(図4ステップ221〜223、図9
(e))。これにより、図8(c)の時点からずっと第
2ブロックを占有していたデータが移動され、このブロ
ックが書き換え可能になる。
【0036】あとは図9(c)の時点で要求された1ブ
ロック分のデータを空きブロックに書き込めばよいので
あるが、通常の書き込みと同様に書き込み可能ブロック
を検索しても失敗してしまう場合が有り得る。即ち図9
(c)の時点で空きブロックが丁度1個しかなかった場
合で、このときは、この空きブロックに移動対象データ
が入り、移動対象データが元々入っていたブロックのE
フラグが”1”となっているので検索に引っかからな
い。よって図4のステップ227で示したようにEフラ
グをクリアする処理が必要である。移動対象のデータが
元々入っていたブロックのEフラグを”0”のままにし
ておくような制御を行えばこの様なことはなくなるが、
そのかわりに、他に空きブロックが有るにもかかわら
ず、移動直後のブロックが書き換え可能ブロックとして
検索され、バックグラウンドの電気的消去が間に合わな
いという様なことが起り得る。
【0037】次いで、図10ないし図14には、本発明
の第2実施例を示す。本実施例では、不揮発性半導体メ
モリとして4MビットNAND型EEPROMを用いる
ことを仮定する。また、実施例の要点を簡略に説明する
ため、MS−DOSのクラスタに相当する記憶領域の論
理的な管理の単位をNAND型EEPROMの消去単位
であるブロックと一致させるものとする。また、本実施
例ではユーザファイル、ファイルの記録位置を管理する
テーブル及びそのテーブルへの階層化されたポインタの
うちその位置が固定されないものは、記憶領域中の特定
の領域に記録される必要がないので、出来得る限り書き
込みが記憶領域全体に分散されるように制御されるべき
である。しかしながら、本実施例は、ファイルの位置を
管理するテーブルが記憶領域中の特定の領域に固定され
ずに済む手法を説明するためのものなので、分散書き込
み制御がされることを前提とするが、その詳細について
は触れない。
【0038】図11は、ファイルの記録された位置を管
理するためのテーブルの一つを構成するブロックの1例
であり、ここでは仮にルート管理テーブルと呼ぶことに
する。図11の38はMS−DOSのFATと同様な構
成で記憶領域全体のブロック割当状況を管理するための
テーブルであるが、本実施例では、ユーザーファイルの
みならず、ファイル管理テーブル自身やそのポインタと
いった管理情報の記録されたブロックの位置も動くの
で、それらの割当も併せて管理されるものとする。図1
1の39はブロックの割当情報がこのブロック内に納ま
らなかった場合に使用される追加ブロックの位置や、M
S−DOSのディレクトリに相当するファイル名とそれ
に付随する情報に関する管理テーブル等の位置を示すポ
インタであるとする。即ち、図11に示す管理テーブル
をアクセスできれば、ファイル管理に関する情報は全て
アクセス可能になるものとする。
【0039】図12は、ルート管理テーブルの記録され
た位置を示すために、記録された位置を階層的に示すよ
うに構成されたポインタが記録されるブロックの1例で
ある。図12(a)の41〜48はNAND型EEPR
OMのページを表していて、48がソース側、41がド
レイン側である。ポインタは1ページに納まる情報量と
し、NAND型EEPROMの書き込みルールに従って
ソース側から順に書き込まれてゆくものとする。図12
(a)の46〜48の斜線のページは、更新されたポイ
ンタが書き込まれていたことを示し、41〜44の”N
ULL”は消去されたままのページであることを示す。
同図(a)の第1のポインタを納めたブロックは、45
のページの情報がルート管理テーブルの位置を示してい
る。同図(b)の第mのポインタを納めたブロックは、
同様の構成で、第(m−1)のポインタの位置を示すも
のとする。ポインタの数(階層数)をnとした場合、第
1〜第(n−1)のポインタは、記憶可能な領域のどこ
に記録されてもよく、複数階のポインタを順に手繰るこ
とでアクセスされる。第nのポインタ(以下、ルートポ
インタ)だけは、記憶領域の固定の位置に記録される。
図10は、この複数階に設定されたポインタのつながり
を示している。
【0040】図13は、本実施例に係るファイル管理方
式に必要なルート管理テーブルの更新に伴なって発生す
る処理の手順を示したフローチャートである。ルート管
理テーブルの内容は、予めRAMに読み込まれて展開さ
れており、更新はRAM上で行われた後に書き戻される
ものとする。まず、ファイルの書き込み等でブロック割
当に変更が生じると、変更されたルート管理テーブルを
書き戻すブロックの位置を自身のブロック割当テーブル
を参照して決定する(ステップ401)。次に、この位
置をポインタに設定し、割当テーブルを更新してから書
き込みを行う(ステップ402〜405)。図14のフ
ローチャートのステップ501〜510は、階層化され
たポインタにブロック位置を設定する手順を示してい
る。この手順は、階層化されたポインタの設定を変更す
るために再帰的に呼び出される。
【0041】次に、ポインタの階層数nの大きさの決め
方を具体的に説明する。ファイルの書き込みによりブロ
ックの割当に変更が起きると、その都度、ルート管理テ
ーブルの内容が更新される。書き込みが特定ブロックに
集中しないように、更新されたテーブル自体も別のブロ
ックに書き込まれる。ルート管理テーブルの位置が変わ
ったので第1のポインタの記録位置も更新される。ポイ
ンタの更新は同一ブロック内で8回(8ページ分)可能
であるから、第1ポインタを納めたブロックは、ファイ
ルの書き込みによるブロックの変更8回で一通りの書き
込みが行われ、9回目の更新で位置が変わる。第2のポ
インタを納めたブロックは同様に、ファイルの書き込み
64回に1回の割で書き換えが起きると見積もることが
出来る。ここで仮に、不揮発性半導体メモリ装置の総容
量を20Mバイトとすると、総ブロック数は1ブロック
の容量が4kバイトであるから5120ブロックにな
る。EEPROMの書き換え可能回数をC回とし、これ
らのブロックに均一に書き込みが行われたとすると、延
べ 5120×Cブロック の書き換えが発生し得る。ファイル1ブロック分の書き
換えに対して管理テーブル1ブロックの書き換えが発生
するとすると、1回に付き2ブロックの書き換えが起き
るからブロック割当の変更の発生回数は最高で 5120×C÷2=2560×C回 である。
【0042】第nポインタを記録した固定ブロックの書
き換えは、ブロック割当の変更8n回に1回の割合で起
きる。また、このブロックも最高C回の書き換えが可能
であるから、 8n ×C=23n×C回 までのブロック割当の変更なら、この固定ブロックの書
き換え回数が他のブロックより先に限界に達することは
ない。よって、必要な階層数nは、 23n×C=2560×C n=log2 2560÷3 ≒4 となる。
【0043】図15ないし図20には、本発明の第3実
施例を示す。図15は本実施例に係る不揮発性半導体メ
モリ装置の全体構成を示すブロック図である。同図にお
いて115はメモリ手段としてのNAND型EEPRO
Mモジュールであり、複数個のページからなるブロック
に分割されたメモリセルアレイで構成されている。EE
PROMモジュール115はデータ線で結ばれたホスト
インターフェイス101を介して図示省略のホストシス
テムに接続されている。データ線上には、マルチプレク
サ113及びデータバッファ107が設けられている。
また、ホストインターフェイス101内には、データレ
ジスタ102、アドレスレジスタ103、カウントレジ
スタ104、コマンドレジスタ105、ステータレジス
タ106及びエラーレジスタ116が設けられている。
108はコントロールロジック、109は誤り制御ロジ
ック、114はアドレスジェネレータ、110は制御手
段としての機能を有するCPU、111は作業用RA
M、112は制御プログラムROMである。制御プログ
ラムROM112には、データ書き込み等のための一連
の制御プログラムが格納されている。
【0044】図16は、誤り制御ロジック109の内部
構成を示す図である。誤り検出手段としてのECC検査
回路150、誤り検出/訂正コード発生手段としてのE
CC発生回路151及び消去検出手段としての消去検出
回路152が備えられている。
【0045】本実施例のメモリ装置は、不揮発性メモリ
領域であるEEPROMモジュール115に記録される
データに関し、必要に応じてメモリ領域の使用状況を管
理するテーブルを使用する。このテーブルは、他のユー
ザ・データとともにEEPROMモジュール115に記
録されるが、この装置が起動するときに自動的に作業用
RAM111に読み込まれる。また、このテーブルは、
更新される都度、或いは装置の使用が終了する時点でE
EPROMモジュール115に書き戻されることとす
る。
【0046】次に、この装置の動作をフローチャートを
用いて説明する。ホストシステムは、図15のホストイ
ンターフェイス101内のアドレスレジスタ103にア
クセス開始アドレスを、カウントレジスタ104にアク
セスしたいデータのセクタ長をセットし、最後にコマン
ドレジスタ105に読み出し/書き込み等の命令をセッ
トする。ホストインターフェイス101のコマンドレジ
スタ105にアクセス命令が書き込まれると、コントロ
ーラ内のCPU110は、コマンドレジスタ105内の
命令を読み込み、制御プログラムROM112に納めら
れたコマンド実行のための一連の制御プログラムを実行
する。
【0047】図17は、EEPROMモジュール115
からデータを読み出す手順を示すフローチャートであ
る。まず、図15のCPU110は、ホストインターフ
ェイス101にセットされた開始アドレスから、読み出
しを行うべきEEPROMモジュール115の物理的な
アドレスを決定する(ステップ601)。次に、EEP
ROMモジュール115からデータバッファ107にデ
ータを読み出す(ステップ602)。次いで、エラー処
理及びデータバッファ107からホストシステムへのデ
ータ転送等を実行する(ステップ603〜605)。
【0048】図18及び図19は、EEPROMモジュ
ール115からデータバッファ107にデータを読み出
す手順を示すフローチャートである。CPU110は、
EEPROMモジュール115をマルチプレクサ113
を通してアクセスし読み出しモードに設定し、データバ
ッファ107を読み出しモードに設定する(ステップ7
01,702)。アドレスジェネレータ114には、読
み出しを行うべきEEPROMモジュール115の物理
的なアドレスを設定する(ステップ703)。そして、
データバッファ107に、読み出したデータを蓄えるべ
き領域を決定してその先頭番地をデータバッファ107
への書き込みアドレスとして設定する(ステップ70
4)。その後、コントロールロジック108に対してデ
ータ読み出しのための定められたシーケンスを実行する
ように指令を送る。
【0049】コントロールロジック108は、マルチプ
レクサ113をEEPROMモジュール115からの読
み出しデータがデータバッファ107に流れるように設
定し、アドレスジェネレータ114の内容をインクリメ
ントしながら、1セクタ分のデータを読み出す(ステッ
プ705)。また、図16のECC検査回路150をこ
れらのデータ及びこれに付随して読み出されるECCコ
ードを使って誤りを検出するように制御すると同時に、
読み出されたデータが消去状態であるかどうかを検出す
るように消去検出回路152を制御する。消去検出回路
152は、1セクタ分のデータ及びECCコードが全て
消去後の状態である”1”であった場合に、CPU11
0からアクセス可能なレジスタに、消去状態を検出した
ことを示すコードをセットする。1セクタ分のデータが
読み出されると、CPU110は、ECC検査回路15
0をチェックしデータの誤りを検査する(ステップ70
6)。誤りが検出されなかった場合は、データバッファ
からホストシステムにデータを転送する。誤りが検出さ
れると、CPU110は次に消去検出回路152をアク
セスし、消去状態が検出されていたならば、ECC検査
回路150の結果を誤検出とみなしバッファ内のデータ
をホストシステムに転送する。ECC検査回路150が
誤りを検出し、消去検出回路152も消去状態を検出し
なかった場合で、検出された誤りが訂正可能な場合は、
データバッファ107をアクセスして誤ったデータを訂
正してからホストシステムにデータを転送する。
【0050】もし、訂正不可能な誤りが検出された場合
には、ホストシステムに対するデータ転送は行わずに、
CPU110は、ホストインターフェイス101内のス
テータスレジスタ106にエラーが起きたことを示すコ
ードを、エラーレジスタ116にエラーの内容を示すコ
ードを設定し、ホストシステムに命令の実行が異常終了
したことを通知して処理を終了する(ステップ707〜
712)。
【0051】図20は、データバッファからホストシス
テムにデータを転送する手順を示すフローチャートであ
る。CPU110は、データバッファ107に読み出し
たデータが蓄えられた領域の先頭番地を同バッファから
の読み出しアドレスとして設定し(ステップ801,8
02)、コントロールロジック108に対して、ホスト
システムに1セクタ分のデータの転送を行うように指令
する。コントロールロジック108は、データバッファ
107とホストインターフェイス101を制御してホス
トシステムに対して1セクタ分のデータを転送し(ステ
ップ803)、これが終了するとアドレスレジスタ10
3を1セクタ分進め、カウントレジスタ104から1を
減じ、CPU108に転送が終了したことを通知する。
ホストシステムに転送すべきデータが残っている限り、
CPU110はこの制御を繰り返す。読み出しデータが
全て転送されたら、CPU110は、ホストインターフ
ェイス101内のステータスレジスタ106にエラーの
無かったことを示すコードを設定し、ホストシステムに
命令の実行が終了したことを通知して処理を終了する。
【0052】
【発明の効果】以上説明したように、本発明によれば、
第1に、データの書き込みを複数の記憶領域に対して単
一方向に循環して行うようにしたため、特定の記憶領域
に集中することなく、書き込みを複数の記憶領域全体に
均一に行うことができる。また、書き込まれた後、長期
間変更を受けることなく同じ場所に留まっているデータ
は複数の記憶領域全体と比較した書きかえ回数に不均衡
が生じないように移動させるようにしたため、見かけの
書き込み領域が狭まって寿命を縮めてしまうことを防止
することができる。したがって同一記憶場所の書き換え
回数に制限があるにもかかわらず、磁気ディスク装置と
同等の寿命を実現することができて用途を拡大すること
ができる。
【0053】第2に、書き込まれたデータが変更されて
いない記憶領域の選択を、書き込みの1循環周期を以っ
て行うようにしたため、見かけの書き込み領域を狭めて
しまうことを一層適切に防止することができる。
【0054】第3に、書き換え頻度の高い管理テーブル
の記憶領域上での配置は固定されず、またこの管理テー
ブルの位置を示すポインタは複数階に階層化して記録す
るようにしたため、検索のため固定した位置に記録され
なければならないポインタの書き換え回数が他の領域と
同等に抑えられて特定の記憶領域に書き込みが集中して
短時間で寿命に至ってしまうことを防ぐことができる。
したがって、上記第1の発明と同様に、同一記憶場所の
書き換え回数に制限があるにもかかわらず、磁気ディス
ク装置と同等の寿命を実現することができる。
【0055】第4に、読み出されたデータからその記憶
領域であるページ等が消去状態であるか否かを検出し、
読み出しデータに誤りが検出された場合でも同時に消去
状態が検出されたときには、その読み出しデータには誤
りが無いものとして処理するようにしたため、消去状態
のページ等がデータの書き込まれたページ等と区別無く
読み出されるような制御が行われる場合にも、読み出し
データの正確な誤り検出を行うことができて高い信頼性
を確保することができる。
【図面の簡単な説明】
【図1】本発明に係る不揮発性半導体メモリ装置の第1
実施例においてブロックへの書き込みを管理するための
テーブルの構成を示す図である。
【図2】第1実施例においてEEPROMにおける記憶
領域の構成を示す図である。
【図3】第1実施例において記憶領域へのデータの書き
込みの手順を示すフローチャートである。
【図4】第1実施例において記憶領域へのデータの書き
込みの手順を示すフローチャートである。
【図5】第1実施例においてデータ消去の手順を示すフ
ローチャートである。
【図6】第1実施例においてデータの書き換えの手順を
示すフローチャートである。
【図7】図4のデータの書き込みの手順中で使用される
サブルーチンのフローチャートである。
【図8】第1実施例においてデータの書き込みによる記
憶領域及びこれを管理するテーブルの状態の変化を説明
するための図である。
【図9】第1実施例においてデータの書き込みによる記
憶領域及びこれを管理するテーブルの状態の変化を説明
するための図である。
【図10】本発明の第2実施例においてポインタとルー
ト管理テーブルのつながり関係を示す図である。
【図11】第2実施例におけるルート管理テーブルの構
成を示す図である。
【図12】第2実施例においてポインタが記録されたブ
ロックを示す図である。
【図13】第2実施例においてルート管理テーブルの更
新に伴なって発生する処理の手順を示すフローチャート
である。
【図14】第2実施例においてポインタにブロック位置
を設定する手順を示すフローチャートである。
【図15】本発明の第3実施例に係る不揮発性半導体メ
モリ装置の構成を示すブロック図である。
【図16】図15における誤り制御ロジックの内部構成
を示す図である。
【図17】第3実施例においてEEPROMモジュール
からデータの読み出しの手順を示すフローチャートであ
る。
【図18】第3実施例においてEEPROMモジュール
からデータバッファにデータを読み出す手順を示すフロ
ーチャートである。
【図19】第3実施例においてEEPROMモジュール
からデータバッファにデータを読み出す手順を示すフロ
ーチャートである。
【図20】図17におけるデータバッファからホストシ
ステムに読み出したデータを転送する手順を示すフロー
チャートである。
【図21】EEPROMの一つのNANDセルを示す等
価回路図である。
【図22】EEPROMのメモリセルアレイを示す等価
回路図である。
【図23】NAND型EEPROMの書き込み動作を説
明するための図である。
【図24】オペレーティングシステムの一つであるMS
−DOSのファイル管理方法を説明するための図であ
る。
【図25】ディレクトリの構成例を説明するための図で
ある。
【符号の説明】
21 第1の管理手段となるもので、有効フラグととも
に参照しデータの書き込みをブロックの順位にしたがっ
て1方向に向かって、かつ循環して使用されるように制
御するためのフラグ 22 第2の管理手段となるもので、ブロックに記録さ
れたデータが或る時点から後に変更されたか否かを管理
するフラグ 23 ブロックに有意なデータが記録されているか否か
を管理するフラグ 31〜36 管理単位となる容量で区切られた複数の記
憶領域 38 ブロックの割当を管理するテーブル 41〜48,51〜58 ポインタ情報が記録されるペ
ージ 109 誤り制御ロジック 110 CPU(制御手段) 115 EEPROMモジュール(メモリ手段) 150 ECC検査回路(誤り検出手段) 151 ECC発生回路 152 消去検出回路(消去検出手段)
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭62−283496(JP,A) 特開 平4−165547(JP,A) 特開 昭52−22834(JP,A) 特開 昭56−29899(JP,A) 特開 平4−163966(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 12/00 - 12/06 G06F 12/16 G11C 16/02

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 管理の単位となる容量で区切られた複数
    の記憶領域を備えたメモリ手段と、 複数の記憶領域に対するデータの書き込みに際し当該複
    数の記憶領域が物理的或いは論理的な配置にしたがって
    一方向に循環して使用されるように管理する第1の管理
    手段と、複数の前記記憶領域に記録された前記データが所定の時
    点から後に 変更されたか否かを管理する第2の管理手段
    と、データの書き込みにより予め定められた条件が成立した
    時点で前記第2の管理手段が初期化された時点より後に
    はデータが変更されていない前記記憶領域を選択し、こ
    の選択した記憶領域のデータを他の記憶領域に移動させ
    るとともに全ての記憶領域のデータが変更されたと見な
    される場合には当該 第2の管理手段を初期化する制御手
    段とを有することを特徴とする不揮発性半導体メモリ装
    置。
  2. 【請求項2】 前記予め定められた条件が成立した時点
    は、前記第1の管理手段で管理される循環の周期をも
    ってその時点とすることを特徴とする請求項1に記載の
    不揮発性半導体メモリ装置。
  3. 【請求項3】 前記メモリ手段は、ファイル、該ファイ
    ルの記録された位置を管理する管理テーブル及び該管理
    テーブルの記録された位置を複数階に階層的に示すよう
    に構成されたポインタが記録され前記管理テーブルの
    記録される位置は固定されず前記複数のポインタのう
    ち根源となるルートポインタの記録される位置のみが固
    定されるように制御されることを特徴とする請求項1に
    記載の不揮発性半導体メモリ装置。
  4. 【請求項4】 前記メモリ手段は、データ及び該データ
    に対応した誤り検出コードが記録される記憶領域を備
    え、 前記メモリ手段から読み出された前記データ及び誤り検
    出コードから当該 データに誤りがあるか否かを検出する
    誤り検出手段と、前記メモリ手段から読み出されたデータから該データの
    記録された前記記憶領域 が消去状態であるか否かを検出
    する消去検出手段とを更に備え、 前記誤り検出手段で読み出したデータに誤りが検出され
    た場合でも前記消去検出手段が同時に消去状態を検出し
    た場合には当該読み出しデータには誤りが無いものとし
    て処理することを特徴とする請求項1に記載の不揮発性
    半導体メモリ装置。
JP17423292A 1992-07-01 1992-07-01 不揮発性半導体メモリ装置 Expired - Fee Related JP3412839B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP17423292A JP3412839B2 (ja) 1992-07-01 1992-07-01 不揮発性半導体メモリ装置
US08/084,477 US5379262A (en) 1992-07-01 1993-07-01 Nonvolatile semiconductor memory device
KR1019930012262A KR960005895B1 (ko) 1992-07-01 1993-07-01 불휘발성 반도체 메모리장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17423292A JP3412839B2 (ja) 1992-07-01 1992-07-01 不揮発性半導体メモリ装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2003026478A Division JP3822171B2 (ja) 2003-02-03 2003-02-03 不揮発性半導体メモリ装置及びその制御方法、不揮発性半導体メモリ装置システム及びその制御方法

Publications (2)

Publication Number Publication Date
JPH0619778A JPH0619778A (ja) 1994-01-28
JP3412839B2 true JP3412839B2 (ja) 2003-06-03

Family

ID=15975035

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17423292A Expired - Fee Related JP3412839B2 (ja) 1992-07-01 1992-07-01 不揮発性半導体メモリ装置

Country Status (3)

Country Link
US (1) US5379262A (ja)
JP (1) JP3412839B2 (ja)
KR (1) KR960005895B1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3471842B2 (ja) * 1993-03-29 2003-12-02 株式会社東芝 データ管理装置、データ記憶装置およびデータ管理方法
JP3662946B2 (ja) * 1993-09-22 2005-06-22 株式会社東芝 ファイル管理方式および携帯可能電子装置
US5781756A (en) * 1994-04-01 1998-07-14 Xilinx, Inc. Programmable logic device with partially configurable memory cells and a method for configuration
JP2669365B2 (ja) * 1994-11-24 1997-10-27 日本電気株式会社 書換え可能なromファイル装置
IT1278980B1 (it) * 1995-03-07 1997-12-02 Olivetti Canon Ind Spa Stampante a colori a getto di inchiostro
KR100486132B1 (ko) * 1996-12-03 2005-09-02 소니 가부시끼 가이샤 Ecc를이용한신속한데이터프로그래밍및소거기능을가지는불휘발성반도체기억장치
US6551857B2 (en) * 1997-04-04 2003-04-22 Elm Technology Corporation Three dimensional structure integrated circuits
GB9801373D0 (en) 1998-01-22 1998-03-18 Memory Corp Plc Memory system
MY122279A (en) 1999-03-03 2006-04-29 Sony Corp Nonvolatile memory and nonvolatile memory reproducing apparatus
KR100586031B1 (ko) * 1999-12-23 2006-06-01 브이케이 주식회사 비휘발성 메모리를 이용한 실시간 데이터베이스 운용방법
JP4016610B2 (ja) * 2001-05-11 2007-12-05 ティアック株式会社 階層ディレクトリ構造を有する記録媒体、検索装置、検索プログラム、及び検索方法
JP3816788B2 (ja) * 2001-11-22 2006-08-30 株式会社東芝 不揮発性半導体記憶装置
ATE381061T1 (de) * 2005-03-08 2007-12-15 Bosch Gmbh Robert Verfahren und vorrichtung zum wiederbeschreiben eines sektors mit bootloader-software in einem sektor-löschbaren nichtflüchtigen halbleiterspeicher
US8452929B2 (en) * 2005-04-21 2013-05-28 Violin Memory Inc. Method and system for storage of data in non-volatile media
US9384818B2 (en) 2005-04-21 2016-07-05 Violin Memory Memory power management
US9286198B2 (en) 2005-04-21 2016-03-15 Violin Memory Method and system for storage of data in non-volatile media
US8200887B2 (en) 2007-03-29 2012-06-12 Violin Memory, Inc. Memory management system and method
JP4991131B2 (ja) * 2005-08-12 2012-08-01 株式会社東芝 半導体記憶装置
US7523381B2 (en) * 2005-09-01 2009-04-21 Micron Technology, Inc. Non-volatile memory with error detection
US8028186B2 (en) * 2006-10-23 2011-09-27 Violin Memory, Inc. Skew management in an interconnection system
US11010076B2 (en) 2007-03-29 2021-05-18 Violin Systems Llc Memory system with multiple striping of raid groups and method for performing the same
US9632870B2 (en) 2007-03-29 2017-04-25 Violin Memory, Inc. Memory system with multiple striping of raid groups and method for performing the same
JP4461170B2 (ja) 2007-12-28 2010-05-12 株式会社東芝 メモリシステム
JP4439569B2 (ja) * 2008-04-24 2010-03-24 株式会社東芝 メモリシステム
US20100325351A1 (en) 2009-06-12 2010-12-23 Bennett Jon C R Memory system having persistent garbage collection
JP6167646B2 (ja) * 2013-04-30 2017-07-26 富士通株式会社 情報処理装置、制御回路、制御プログラム、および制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0617363B1 (en) * 1989-04-13 2000-01-26 SanDisk Corporation Defective cell substitution in EEprom array
US5200959A (en) * 1989-10-17 1993-04-06 Sundisk Corporation Device and method for defect handling in semi-conductor memory
JPH05109292A (ja) * 1991-10-14 1993-04-30 Toshiba Corp 不揮発性半導体記憶装置

Also Published As

Publication number Publication date
US5379262A (en) 1995-01-03
KR940006143A (ko) 1994-03-23
JPH0619778A (ja) 1994-01-28
KR960005895B1 (ko) 1996-05-03

Similar Documents

Publication Publication Date Title
JP3412839B2 (ja) 不揮発性半導体メモリ装置
JP3485938B2 (ja) 不揮発性半導体メモリ装置
US5509018A (en) Flash-erase-type nonvolatile semiconductor storage device
US6295619B1 (en) Method and apparatus for error management in a solid state disk drive
JP4933269B2 (ja) 不揮発性メモリおよびメモリプレーン配列を伴う方法
US8285954B2 (en) Memory system managing a plurality of logs
US11386005B2 (en) Memory system, memory controller, and method of operating memory system for caching journal information for zone in the journal cache
CN114253465A (zh) 存储器系统及其操作方法
CN112306387A (zh) 存储器系统、存储器控制器以及操作存储器系统的方法
US20040255076A1 (en) Flash memory controller, memory control circuit, flash memory system, and method for controlling data exchange between host computer and flash memory
US11467903B2 (en) Memory system and operating method thereof
JP3672576B2 (ja) 不揮発性半導体メモリ装置
JP3974149B2 (ja) 不揮発性半導体メモリ装置及び不揮発性半導体メモリの制御方法
JP3822171B2 (ja) 不揮発性半導体メモリ装置及びその制御方法、不揮発性半導体メモリ装置システム及びその制御方法
JP3267320B2 (ja) 不揮発性半導体メモリ装置及び不揮発性半導体メモリ装置の制御方法
US11704050B2 (en) Memory system for determining a memory area in which a journal is stored according to a number of free memory blocks
JP2003263894A (ja) 不揮発性半導体メモリ装置の制御方法
JP3908238B2 (ja) 不揮発性半導体メモリ装置のデータ書き込み方法
JP4050250B2 (ja) 不揮発性半導体メモリ装置
JP2003242788A (ja) 不揮発性半導体メモリ装置及びその制御方法
KR20230094565A (ko) 복수의 서브 회로들의 상태를 기초로 활성화 모드 또는 저전력 모드로 동작하는 컨트롤러 및 그 방법
CN116301569A (zh) 存储器系统及其操作方法
KR20220046221A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20220025401A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080328

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090328

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees