JP2004507007A - 不揮発性メモリに対する信頼性の高いデータコピー処理を行うための新規の方法および構造 - Google Patents
不揮発性メモリに対する信頼性の高いデータコピー処理を行うための新規の方法および構造 Download PDFInfo
- Publication number
- JP2004507007A JP2004507007A JP2002521308A JP2002521308A JP2004507007A JP 2004507007 A JP2004507007 A JP 2004507007A JP 2002521308 A JP2002521308 A JP 2002521308A JP 2002521308 A JP2002521308 A JP 2002521308A JP 2004507007 A JP2004507007 A JP 2004507007A
- Authority
- JP
- Japan
- Prior art keywords
- data
- register
- memory
- read
- flash
- 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
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Storage Device Security (AREA)
Abstract
改善されたフラッシュEEPROMメモリベースの記憶サブシステムが1以上のフラッシュメモリアレイを含み、各フラッシュメモリアレイはデータレジスタとコントローラ回路の二重性を備えている。フラッシュアレイからデータレジスタの中へデータを読み出し、このデータを別のレジスタへコピーし、その結果、同じアレイの中へ入る後続のプログラム処理中、上記データの有効性をチェックするための、コントローラへのデータ転送も可能となる。これによって、コピー処理中のデータ転送の待ち時間に苦しまずに、さらに、このような処理時に必要なデータの有効性を保証する改善されたパフォーマンスを持つシステムがつくりだされる。
Description
【0001】
【発明の属する技術分野】
本発明は、半導体不揮発性メモリのアーキテクチャの技術分野およびその処理方法に関し、フラッシュ電気的に消去可能でプログラム可能なリード・オンリー・メモリ(EEPROM)に適用される。
【0002】
【従来の技術】
フラッシュEEPROM装置の一般的応用として、電子デバイス用大容量データ記憶装置のサブシステムとしての応用がある。このようなサブシステムは、複数のホストシステムの中へ挿入可能なリムーバブル・メモリカードとして、または、ホストシステム内の非リムーバブルな組み込み型記憶装置としてのいずれかとして一般に実現される。上記双方の実現時に、サブシステムは、1以上のフラッシュ装置を含み、またサブシステム・コントローラを含む場合も多い。
【0003】
フラッシュEEPROM装置は、トランジスタセルからなる1以上のアレイから構成され、各セルは1以上のビット・データの不揮発性記憶を行う能力を有する。したがって、フラッシュメモリは、その中でプログラムされたデータの保持用電力を必要としない。しかし、一旦プログラムされると、新しいデータ値での再プログラムができるようになる前にセルの消去を行う必要がある。セルからなる上記アレイはグループに分割され、読み出し、プログラム、消去の各機能が効率的に実現される。大容量記憶装置用の典型的なフラッシュメモリ・アーキテクチャは、大きなグループのセルが消去可能ブロックとなるように構成される。各ブロックは、読み出し機能およびプログラム機能を行うための基本単位である1以上のアドレス可能なセクタにさらに分割される。
【0004】
サブシステムの論理ブロックアドレス(LBA)を物理チップ、物理ブロックおよび物理セクタアドレスに翻訳する機能を含むいくつかの機能がサブシステム・コントローラにより実行される。また、上記コントローラは、インタフェースバスを介してフラッシュメモリ装置へ出す一連のコマンドを介して低レベルのフラッシュ回路の動作も管理する。上記コントローラが行う別の機能として、様々な手段により(例えば、誤り訂正符号すなわちECCなどを利用して)上記サブシステムに対して記憶データの完全性を維持する機能がある。
【0005】
消去ブロックの中に複数のセクタを含むこのようなシステムの作動時に、1つのセクタのデータ内容を消去した別のセクタにコピーすることが時折必要となる場合がある。このような必要性は、例えば、ホストがサブシステムへ書き込む新しいデータによりブロックのセクタの一部のデータを取り替える場合などに生じることがあるが、その場合、ブロック内に存在する、影響を受けないその他のセクタのデータへの、原セクタの新しいデータの物理的近接を維持する必要がある。図1は、この近接の維持を可能にする方法を示す図である。影響を受けないこのセクタのデータは原ブロックから読み出され、別のブロック内の消去されたセクタの中へその後プログラムされる。ホストからの新しいデータも新しいブロック内の消去されたセクタの中へ同様にプログラムされる。これらの処理の完了後、取って替わられたデータを持つ原ブロックが消去される。
【0006】
上述のような処理中、従来方式のフラッシュメモリを用いる場合、メモリからの読み出しデータを転送し、そのデータをプログラムするメモリへその後転送する必要がある。上記データ転送処理はセクタ・サイズ÷フラッシュメモリインタフェースバス幅×バスのサイクルタイムに等しい待ち時間を生じる。同じ物理メモリ装置に対して非常に頻繁にこれらの処理が行われる。
【0007】
上記データ転送待ち時間が処理全体に対して持つインパクトをさらに示すために、図1についてさらに詳細に説明する。例示を目的として、図1に示すように、ブロックは16のセクタから成り、各セクタはセクタ0からセクタ15にアドレスが増分して割り当てられるものと仮定する。データ・ブロックのセクタ7からセクタ9まで新しいデータの書き直しを望む例の場合、書き込みシーケンスは以下のようになる。
1.セクタプログラムの処理用として未使用の消去ブロック(消去ブロック1
)を割り当てる。
2.原ブロックのアドレスを選択し、原ブロックのセクタ0を読み出し、フラ
ッシュEEPROMからコントローラへデータを転送する。
3.新しく割り当てたブロックのアドレスを選択し、フラッシュEEPROM
へデータを返送し、新しく割り当てたブロックのセクタ0にプログラムを
行う。
4.セクタ1から6についてステップ2と3を反復する。
5.新しく割り当てたブロックのアドレスを選択し、ページ7用の新しいホス
トデータをフラッシュEEPROMへ転送し、新しく割り当てたブロック
のセクタの中へプログラムを行う。
6.セクタ8と9についてステップ5を反復する。
7.原ブロックのアドレスを選択し、原ブロックのセクタ10を読み出し、フ
ラッシュEEPROMからコントローラへデータを転送する。
8.新しく割り当てたブロックのアドレスを選択し、フラッシュEEPROM
へデータを返送し、新しく割り当てたブロックのセクタ10の中へプログ
ラムを行う。
9.セクタ11から15についてステップ7と8を反復する
10.将来の書き込み処理用として(すでに取り替えられた)原ブロックを消去
する。
【0008】
図2は、典型的な従来技術によるフラッシュEEPROM装置の内部アーキテクチャ4000を示す。主な特徴として含まれるものに、外部コントローラとインタフェースするI/Oバス411と制御信号412、コマンド用、アドレス用および状態用レジスタを備えた内部メモリ処理を制御するメモリ制御回路450、各アレイがそれ自身の行復号器(XDEC)401と列復号器(YDEC)402とを備えた、フラッシュEEPROMセルの1以上のアレイ400と、1グループのセンス・アンプおよびプログラム制御回路構成(SA/PROG)454と、データレジスタ404とがある。
【0009】
所望の場合、例えば、米国特許第5,890,192号(1999年3月30日発行、本願の譲受人であるサンディスク コーポレイションへ譲渡)が教示するような、関連するX復号器、Y復号器、プログラム/検証回路構成、データレジスタ等と共に、複数のアレイ400が提供される。上記特許は、本願明細書に参考文献として取り入れられている。
【0010】
外部インタフェースI/Oバス411と制御信号412とは以下の信号を用いて構成することも可能である。
CS−チップ選択: フラッシュメモリ・インタフェースをアクティブにす
るために使用する。
RS−読み出しストローブ: ADバスがデータ読み出し処理に使われている
ことを示すために使用する。
WS−書き込みストローブ: ADバスがデータ書き込み処理に使われてい
ることを示すために使用する。
AS−アドレス・ストローブ: ADバスがアドレス情報の転送に使われてい
ることを示すために使用する。
AD[7:0]−アドレス/データバス: コントローラとフラッシュメモリ
コマンド間、および、アドレスレ
ジスタとデータレジスタ間でのデ
ータ転送に使用する。
【0011】
上記インタフェースは一例として示すものにすぎず、同じ機能を行う別の信号構成の利用も可能である。この図には関連する構成要素を備えた唯一のフラッシュメモリアレイ400しか示されていないが、同時に読み出し処理およびプログラム処理を可能にするために、共通のインタフェースとメモリ制御回路構成とを共有し、しかも、個々に独立したXDEC、YDEC、SA/PROG、DATA REGを備えた多数のアレイが、単一のフラッシュメモリチップ上に存在することが可能であることは理解できよう。
【0012】
EEPROMシステム4000のデータレジスタ404からのデータは、データレジスタを介してI/OバスAD[7:0]411と接続する外部コントローラと結合される。データレジスタ404はセンス・アンプ/プログラミング回路454とも結合される。各センス・アンプ/プログラミング回路素子と結合されるデータレジスタのエレメント数は、各フラッシュEEPROMセルに記憶されたビット数により決めてもよい。マルチ状態メモリセルを用いる場合、各フラッシュEEPROMセルは2や4のような複数のビットを含むものであってもよい。
【0013】
行復号器401は、アクセスする物理セクタの選択のためにアレイ400用の行アドレスを復号化する。行復号器401は、メモリ制御論理回路450から内部行アドレスライン419を介して行アドレスを受け取る。列復号器402は、メモリ制御論理回路450から内部列アドレスライン429を介して列アドレスを受け取る。
【0014】
記憶データの有効性の判定に利用する誤り検出および訂正符号(ECC)と共に、セクタ内へプログラムしたホストデータの各セクタ値の追加が一般に行われる。このようないくつかのシステムでは、データが新しい記憶位置に正しくプログラムされていることを保証する1つの方法として、読み出しデータの有効性をチェックする機会としての転送時が利用される。これらの記憶装置の忠実度全体に起因して、このような検証中の失敗はめったに生じない。
【0015】
図3は、典型的なフラッシュカード・アーキテクチャを示す図であり、該アーキテクチャはホストおよびメモリの制御機能を実行する単一のコントローラ301、および、1以上のフラッシュメモリ装置から構成されるフラッシュメモリアレイを備えている。上記システム・コントローラとフラッシュメモリとはバス302により接続され、該バスによりコントローラ301は、フラッシュメモリアレイ間を往来するコマンド、アドレスおよび転送データのロードが可能となる。
【0016】
図4は、ソース・アドレス(SRC[N])から宛先アドレス(DST[N])へページコピー処理を行うタイミング図を示す。READ信号は、読み出しがソースセクタから行われていることを示す。XFER信号は、フラッシュデータレジスタとコントローラ間でのデータ転送を示す。R/WB信号は、転送の方向を示す(ハイはフラッシュからコントローラへの読み出しであり、ローはコントローラからフラッシュへの書き込みである)。PROG信号は、プログラム処理が宛先ページに対して行われていることを示す。
一般的なタイミング値:
TRD=25us
TX =26.4us
TPRG =300us
TERA =500−3000us(図示せず)
したがって、(図4に示すように)単一のセクタをコピーする時間の合計は、
TCOPY=TRD+2*TX+TPRG =377us
データ転送時間は、ページコピー処理全体の14%になる。
【0017】
これら装置の書き込みおよび読み出しパフォーマンスの向上を図るために、一度にプログラムし、読み出しが可能なセル数を増やすことが不揮発性メモリ設計における一般的トレンドである。これは、単一ダイ上のメモリセルアレイ数の増大、単一平面内のページサイズの増加、複数チップの同時プログラミング、あるいは上記3つの技法のいずれかの組み合わせにより達成可能である。これらのうちのいずれかの結果として、さらに多数のセルのプログラミングや読み出しを行うために、プログラミング時間と読み出し時間とをほとんどあるいは全く変えることなく、データ転送の長さを増やす必要があることが挙げられる。したがって、このような増加並列要因をかかえるシステムでのデータコピー費用はそれだけずっと高くなる。一例として、上記例で利用するのと同じタイミング値により、4の4倍の増加並列要因を伴うシステムに対するインパクトを以下に示す。
TCOPY=TRD+8*TX+TPRG =536.2us
データ転送時間は、4ページのコピー処理全体の39%になる。
【0018】
米国特許第6,040,997号には、特許権者および他者により周知の技法についての記載がある。該特許では、フラッシュメモリシステムが内部バッファを有し、フラッシュメモリの中から当該データを転送する必要がなく、フラッシュメモリ内の第1の記憶位置からの読出しデータの再書き込みがフラッシュメモリ内の別の記憶位置に対して行われるようになっている。これによりデータ転送時間の向上が図られる。しかし、上記周知の技法は、誤りチェックおよび訂正を行うものではなく、第1のフラッシュメモリの記憶位置からの読出しデータが正確であることを単に仮定するものにすぎない。
【0019】
必要なことは、コピーされたデータの完全性を検証できるように、データ転送待ち時間を伴わないコピー処理の効率的利用を可能とする方法である。
【0020】
(発明の開示)
物理的にアドレス指定した記憶位置内のメモリセルからデータの読み出し(検知)を行った後、物理的にアドレス指定した異なる記憶位置へ当該データをプログラムするための使用回路構成を備えた不揮発性メモリシステムが設計される。これにより、メモリ回路の中からのデータ転送と、メモリ回路の中へのデータ転送との2回のデータ転送により苦しめられる待ち時間を除くことにより、メモリ記憶装置システムのパフォーマンス全体の向上が図られる。プログラム処理中、このデータは制御回路へさらに転送され、それによってデータの有効性が検証される。これにより、システムの低下した信頼性に苦しむことなくプログラム処理と同時にデータの検証を可能とすることによりシステムのパフォーマンス全体がさらに高められる。
【0021】
【発明の実施の形態】
図5は、本発明の1つの実施形態に基づいて構成される半導体不揮発性メモリを表す図である。図示のメモリシステムは、図2との関連で前述したように、2つの別個にアドレス指定したメモリアレイ400−0と400−Nとから成り、各メモリアレイは、特定のワード線をアドレス指定し、当該ワード線に対するセルのしきい値電圧を検知し、後の処理で利用する検知データの記憶を目的とする関連回路構成を有する。また、このメモリシステムは、1以上のワード線により制御される1グループのセルの消去を目的とし、さらに、アドレス指定したワード線のうちの1つに沿ったセルのプログラミングを目的とするプログラミング回路も各アレイと関連して備えている。図5は、関連づけられたアレイの回路構成と、別個のコントローラ回路とを備えた2つの別個のアレイを備えたシステムを示しているが、本発明は、任意の所望の数の不揮発性メモリセルから成るようなアレイを備えたメモリシステムと、コントローラ回路が、複数のメモリアレイのうちの1以上のメモリアレイが存在するのと同じ半導体装置上に含まれるシステムとに適用されるものである。
【0022】
本発明では、検知データを格納し、プログラミング用データを出力する回路構成は、これら双方の処理を行う記憶エレメントが物理的に同じ構成となるように設計される。これにより、一旦データを読み出し、検知データレジスタに記憶すると、さらなるデータ転送を行う必要がなく、該データをプログラム処理の制御に利用することが可能となる。
【0023】
上記アドレス指定メカニズムは、アドレス指定した特定のワード線に対する読み出し動作を行った後、同じアレイで異なるワード線へのアドレス指定を行うアドレス変更が可能となるように設計され、検知したデータレジスタから得た当該データを用いて後者のワード線のプログラミングを行うことが意図されている。したがって、この回路には、メモリ装置の外側へデータを送る必要なく1つのワード線から別のワード線へ効率的なコピー処理を行うのに必要なすべてのものが含まれていることになる。
【0024】
16個のデータ・ブロックのセクタ7からセクタ9に新しいデータの再書き込みを行うことを望む場合の例として、書き込みシーケンスは以下のようになる。
1.セクタ書き込み処理用として未使用ブロック(消去ブロック1)を割り当
てる。
2.原ブロックのアドレスを選択し、原ブロックのページ0を読み出してデー
タレジスタの中へ入れる。
3.新しく割り当てたブロックのアドレスを選択し、新しく割り当てたブロッ
ク内でプログラム処理を開始する。データの有効性をチェックするために
データレジスタからコントローラ回路へデータを同時に転送する。
4.メモリ状態レジスタとデータの有効性状態とをチェックする。誤りがあれ
ば、誤り回復メカニズムを呼び出す。
5.ページ1から6についてステップ2から4を反復する。
6.新しく割り当てたブロックのアドレスを選択し、コントローラからフラッ
シュEEPROMへページ7用の新しいデータを転送し、新しく割り当て
たブロック内でプログラム処理を開始する。
7.メモリ状態レジスタをチェックする。誤りがあれば、誤り回復メカニズム
を呼び出す。
8.ページ8と9についてステップ6と7を反復する。
9.原ブロックのアドレスを選択し、原ブロックのページ10を読み出してデ
ータレジスタの中へ入れる。
10.新しく割り当てたブロックのアドレスを選択し、新しく割り当てたブロッ
クでページ10のプログラム処理を開始する。データの有効性をチェック
するためにデータレジスタからコントローラ回路へデータを同時に転送す
る。
11.メモリ状態レジスタとデータの有効性状態とをチェックする。
12.ページ11から15についてステップ9から11を反復する。誤りがあれ
ば、誤り回復メカニズムを呼び出す。
【0025】
図6は、本発明の1つの実施形態に基づくコピー処理中に生じる一続きのイベントを示す。矢印は、(1)読み出し中、(2)マスタからスレーブへのレジスタ中、(3)プログラム中および(3)データ転送中の各データフローの方向を示す。データ転送処理およびプログラム処理の双方はそれらが並列処理であることを示す矢印(3)を有する。
【0026】
上記メモリは、1以上の別個のメモリセルアレイとして設計されているので、存在する別個のメモリアレイと同数のコピー処理の同時実行が可能となる。これによりさらに処理効率が上昇する。
【0027】
1以上のセル内のデータが、一旦検知された後、当該セルの中へプログラムした原データを時折反映しない場合が確かにある。このような場合、外部の検証回路手段を利用することにより当該データの有効性を検証することが望ましい。1つの実施形態では、原データと同時にプログラムして、1グループのセルの中へ入れたデータの冗長性(例えば、ECCなど)が利用される。当該セルからこのデータの冗長性を読み出し、その冗長性により当該データの有効性を検証することが可能となる。誤りを検出した場合、当該冗長性情報を利用して誤りを含むデータの訂正が可能となる。図5に示す実施形態により、検証を行うために、一旦検知したデータをメモリ回路の外部回路へ転送することが可能となる。オリジナルの検知データレジスタの内容を変更せずに、この転送処理を可能にするような方法で上記転送は実現される。これによって、プログラム処理と同時に転送処理と検証処理とを行うことが可能となる。
【0028】
多くの別個のメモリセルアレイが存在するため、また、プログラム処理の実行時間が転送時間および検証時間よりも大幅に長いため、複数の転送処理と検証処理と同時に複数のプログラム処理の実行が可能となる。このようにして、パフォーマンス・ペナルティを伴うことなくコピー処理中プログラムするデータの有効性の保証が可能となる。さらに、データの有効性を保証することによりシステムの信頼性が高まる。
【0029】
あたかも個々の各文献が参考文献として取り入れられていることが明確にかつ個々に示されているのと同程度まで、本明細書で上述したすべての文献および特許は本明細書に参考文献として取り入れられている。
【0030】
以上本発明について十分に説明したので、添付の請求項の精神または範囲から逸脱することなく、本発明に対する多くの変更と修正が可能であることは当業者には明らかであろう。
【図面の簡単な説明】
【図1】
従来技術によるEEPROM内の論理アドレスへの新しいデータの書き込みに関わるステップを示す。
【図2】
従来技術による一般的EEPROMのブロック図を示す。
【図3】
従来技術によるフラッシュベースの一般的記憶サブシステム・アーキテクチャを示す。
【図4】
従来技術のページコピー処理のタイミング図を示す。
【図5】
本発明の1つの実施形態に基づく半導体不揮発性メモリの概略表示を示す。
【図6】
本発明の1つの実施形態に基づくコピー処理中に生じる一続きのイベントを示す。
【発明の属する技術分野】
本発明は、半導体不揮発性メモリのアーキテクチャの技術分野およびその処理方法に関し、フラッシュ電気的に消去可能でプログラム可能なリード・オンリー・メモリ(EEPROM)に適用される。
【0002】
【従来の技術】
フラッシュEEPROM装置の一般的応用として、電子デバイス用大容量データ記憶装置のサブシステムとしての応用がある。このようなサブシステムは、複数のホストシステムの中へ挿入可能なリムーバブル・メモリカードとして、または、ホストシステム内の非リムーバブルな組み込み型記憶装置としてのいずれかとして一般に実現される。上記双方の実現時に、サブシステムは、1以上のフラッシュ装置を含み、またサブシステム・コントローラを含む場合も多い。
【0003】
フラッシュEEPROM装置は、トランジスタセルからなる1以上のアレイから構成され、各セルは1以上のビット・データの不揮発性記憶を行う能力を有する。したがって、フラッシュメモリは、その中でプログラムされたデータの保持用電力を必要としない。しかし、一旦プログラムされると、新しいデータ値での再プログラムができるようになる前にセルの消去を行う必要がある。セルからなる上記アレイはグループに分割され、読み出し、プログラム、消去の各機能が効率的に実現される。大容量記憶装置用の典型的なフラッシュメモリ・アーキテクチャは、大きなグループのセルが消去可能ブロックとなるように構成される。各ブロックは、読み出し機能およびプログラム機能を行うための基本単位である1以上のアドレス可能なセクタにさらに分割される。
【0004】
サブシステムの論理ブロックアドレス(LBA)を物理チップ、物理ブロックおよび物理セクタアドレスに翻訳する機能を含むいくつかの機能がサブシステム・コントローラにより実行される。また、上記コントローラは、インタフェースバスを介してフラッシュメモリ装置へ出す一連のコマンドを介して低レベルのフラッシュ回路の動作も管理する。上記コントローラが行う別の機能として、様々な手段により(例えば、誤り訂正符号すなわちECCなどを利用して)上記サブシステムに対して記憶データの完全性を維持する機能がある。
【0005】
消去ブロックの中に複数のセクタを含むこのようなシステムの作動時に、1つのセクタのデータ内容を消去した別のセクタにコピーすることが時折必要となる場合がある。このような必要性は、例えば、ホストがサブシステムへ書き込む新しいデータによりブロックのセクタの一部のデータを取り替える場合などに生じることがあるが、その場合、ブロック内に存在する、影響を受けないその他のセクタのデータへの、原セクタの新しいデータの物理的近接を維持する必要がある。図1は、この近接の維持を可能にする方法を示す図である。影響を受けないこのセクタのデータは原ブロックから読み出され、別のブロック内の消去されたセクタの中へその後プログラムされる。ホストからの新しいデータも新しいブロック内の消去されたセクタの中へ同様にプログラムされる。これらの処理の完了後、取って替わられたデータを持つ原ブロックが消去される。
【0006】
上述のような処理中、従来方式のフラッシュメモリを用いる場合、メモリからの読み出しデータを転送し、そのデータをプログラムするメモリへその後転送する必要がある。上記データ転送処理はセクタ・サイズ÷フラッシュメモリインタフェースバス幅×バスのサイクルタイムに等しい待ち時間を生じる。同じ物理メモリ装置に対して非常に頻繁にこれらの処理が行われる。
【0007】
上記データ転送待ち時間が処理全体に対して持つインパクトをさらに示すために、図1についてさらに詳細に説明する。例示を目的として、図1に示すように、ブロックは16のセクタから成り、各セクタはセクタ0からセクタ15にアドレスが増分して割り当てられるものと仮定する。データ・ブロックのセクタ7からセクタ9まで新しいデータの書き直しを望む例の場合、書き込みシーケンスは以下のようになる。
1.セクタプログラムの処理用として未使用の消去ブロック(消去ブロック1
)を割り当てる。
2.原ブロックのアドレスを選択し、原ブロックのセクタ0を読み出し、フラ
ッシュEEPROMからコントローラへデータを転送する。
3.新しく割り当てたブロックのアドレスを選択し、フラッシュEEPROM
へデータを返送し、新しく割り当てたブロックのセクタ0にプログラムを
行う。
4.セクタ1から6についてステップ2と3を反復する。
5.新しく割り当てたブロックのアドレスを選択し、ページ7用の新しいホス
トデータをフラッシュEEPROMへ転送し、新しく割り当てたブロック
のセクタの中へプログラムを行う。
6.セクタ8と9についてステップ5を反復する。
7.原ブロックのアドレスを選択し、原ブロックのセクタ10を読み出し、フ
ラッシュEEPROMからコントローラへデータを転送する。
8.新しく割り当てたブロックのアドレスを選択し、フラッシュEEPROM
へデータを返送し、新しく割り当てたブロックのセクタ10の中へプログ
ラムを行う。
9.セクタ11から15についてステップ7と8を反復する
10.将来の書き込み処理用として(すでに取り替えられた)原ブロックを消去
する。
【0008】
図2は、典型的な従来技術によるフラッシュEEPROM装置の内部アーキテクチャ4000を示す。主な特徴として含まれるものに、外部コントローラとインタフェースするI/Oバス411と制御信号412、コマンド用、アドレス用および状態用レジスタを備えた内部メモリ処理を制御するメモリ制御回路450、各アレイがそれ自身の行復号器(XDEC)401と列復号器(YDEC)402とを備えた、フラッシュEEPROMセルの1以上のアレイ400と、1グループのセンス・アンプおよびプログラム制御回路構成(SA/PROG)454と、データレジスタ404とがある。
【0009】
所望の場合、例えば、米国特許第5,890,192号(1999年3月30日発行、本願の譲受人であるサンディスク コーポレイションへ譲渡)が教示するような、関連するX復号器、Y復号器、プログラム/検証回路構成、データレジスタ等と共に、複数のアレイ400が提供される。上記特許は、本願明細書に参考文献として取り入れられている。
【0010】
外部インタフェースI/Oバス411と制御信号412とは以下の信号を用いて構成することも可能である。
CS−チップ選択: フラッシュメモリ・インタフェースをアクティブにす
るために使用する。
RS−読み出しストローブ: ADバスがデータ読み出し処理に使われている
ことを示すために使用する。
WS−書き込みストローブ: ADバスがデータ書き込み処理に使われてい
ることを示すために使用する。
AS−アドレス・ストローブ: ADバスがアドレス情報の転送に使われてい
ることを示すために使用する。
AD[7:0]−アドレス/データバス: コントローラとフラッシュメモリ
コマンド間、および、アドレスレ
ジスタとデータレジスタ間でのデ
ータ転送に使用する。
【0011】
上記インタフェースは一例として示すものにすぎず、同じ機能を行う別の信号構成の利用も可能である。この図には関連する構成要素を備えた唯一のフラッシュメモリアレイ400しか示されていないが、同時に読み出し処理およびプログラム処理を可能にするために、共通のインタフェースとメモリ制御回路構成とを共有し、しかも、個々に独立したXDEC、YDEC、SA/PROG、DATA REGを備えた多数のアレイが、単一のフラッシュメモリチップ上に存在することが可能であることは理解できよう。
【0012】
EEPROMシステム4000のデータレジスタ404からのデータは、データレジスタを介してI/OバスAD[7:0]411と接続する外部コントローラと結合される。データレジスタ404はセンス・アンプ/プログラミング回路454とも結合される。各センス・アンプ/プログラミング回路素子と結合されるデータレジスタのエレメント数は、各フラッシュEEPROMセルに記憶されたビット数により決めてもよい。マルチ状態メモリセルを用いる場合、各フラッシュEEPROMセルは2や4のような複数のビットを含むものであってもよい。
【0013】
行復号器401は、アクセスする物理セクタの選択のためにアレイ400用の行アドレスを復号化する。行復号器401は、メモリ制御論理回路450から内部行アドレスライン419を介して行アドレスを受け取る。列復号器402は、メモリ制御論理回路450から内部列アドレスライン429を介して列アドレスを受け取る。
【0014】
記憶データの有効性の判定に利用する誤り検出および訂正符号(ECC)と共に、セクタ内へプログラムしたホストデータの各セクタ値の追加が一般に行われる。このようないくつかのシステムでは、データが新しい記憶位置に正しくプログラムされていることを保証する1つの方法として、読み出しデータの有効性をチェックする機会としての転送時が利用される。これらの記憶装置の忠実度全体に起因して、このような検証中の失敗はめったに生じない。
【0015】
図3は、典型的なフラッシュカード・アーキテクチャを示す図であり、該アーキテクチャはホストおよびメモリの制御機能を実行する単一のコントローラ301、および、1以上のフラッシュメモリ装置から構成されるフラッシュメモリアレイを備えている。上記システム・コントローラとフラッシュメモリとはバス302により接続され、該バスによりコントローラ301は、フラッシュメモリアレイ間を往来するコマンド、アドレスおよび転送データのロードが可能となる。
【0016】
図4は、ソース・アドレス(SRC[N])から宛先アドレス(DST[N])へページコピー処理を行うタイミング図を示す。READ信号は、読み出しがソースセクタから行われていることを示す。XFER信号は、フラッシュデータレジスタとコントローラ間でのデータ転送を示す。R/WB信号は、転送の方向を示す(ハイはフラッシュからコントローラへの読み出しであり、ローはコントローラからフラッシュへの書き込みである)。PROG信号は、プログラム処理が宛先ページに対して行われていることを示す。
一般的なタイミング値:
TRD=25us
TX =26.4us
TPRG =300us
TERA =500−3000us(図示せず)
したがって、(図4に示すように)単一のセクタをコピーする時間の合計は、
TCOPY=TRD+2*TX+TPRG =377us
データ転送時間は、ページコピー処理全体の14%になる。
【0017】
これら装置の書き込みおよび読み出しパフォーマンスの向上を図るために、一度にプログラムし、読み出しが可能なセル数を増やすことが不揮発性メモリ設計における一般的トレンドである。これは、単一ダイ上のメモリセルアレイ数の増大、単一平面内のページサイズの増加、複数チップの同時プログラミング、あるいは上記3つの技法のいずれかの組み合わせにより達成可能である。これらのうちのいずれかの結果として、さらに多数のセルのプログラミングや読み出しを行うために、プログラミング時間と読み出し時間とをほとんどあるいは全く変えることなく、データ転送の長さを増やす必要があることが挙げられる。したがって、このような増加並列要因をかかえるシステムでのデータコピー費用はそれだけずっと高くなる。一例として、上記例で利用するのと同じタイミング値により、4の4倍の増加並列要因を伴うシステムに対するインパクトを以下に示す。
TCOPY=TRD+8*TX+TPRG =536.2us
データ転送時間は、4ページのコピー処理全体の39%になる。
【0018】
米国特許第6,040,997号には、特許権者および他者により周知の技法についての記載がある。該特許では、フラッシュメモリシステムが内部バッファを有し、フラッシュメモリの中から当該データを転送する必要がなく、フラッシュメモリ内の第1の記憶位置からの読出しデータの再書き込みがフラッシュメモリ内の別の記憶位置に対して行われるようになっている。これによりデータ転送時間の向上が図られる。しかし、上記周知の技法は、誤りチェックおよび訂正を行うものではなく、第1のフラッシュメモリの記憶位置からの読出しデータが正確であることを単に仮定するものにすぎない。
【0019】
必要なことは、コピーされたデータの完全性を検証できるように、データ転送待ち時間を伴わないコピー処理の効率的利用を可能とする方法である。
【0020】
(発明の開示)
物理的にアドレス指定した記憶位置内のメモリセルからデータの読み出し(検知)を行った後、物理的にアドレス指定した異なる記憶位置へ当該データをプログラムするための使用回路構成を備えた不揮発性メモリシステムが設計される。これにより、メモリ回路の中からのデータ転送と、メモリ回路の中へのデータ転送との2回のデータ転送により苦しめられる待ち時間を除くことにより、メモリ記憶装置システムのパフォーマンス全体の向上が図られる。プログラム処理中、このデータは制御回路へさらに転送され、それによってデータの有効性が検証される。これにより、システムの低下した信頼性に苦しむことなくプログラム処理と同時にデータの検証を可能とすることによりシステムのパフォーマンス全体がさらに高められる。
【0021】
【発明の実施の形態】
図5は、本発明の1つの実施形態に基づいて構成される半導体不揮発性メモリを表す図である。図示のメモリシステムは、図2との関連で前述したように、2つの別個にアドレス指定したメモリアレイ400−0と400−Nとから成り、各メモリアレイは、特定のワード線をアドレス指定し、当該ワード線に対するセルのしきい値電圧を検知し、後の処理で利用する検知データの記憶を目的とする関連回路構成を有する。また、このメモリシステムは、1以上のワード線により制御される1グループのセルの消去を目的とし、さらに、アドレス指定したワード線のうちの1つに沿ったセルのプログラミングを目的とするプログラミング回路も各アレイと関連して備えている。図5は、関連づけられたアレイの回路構成と、別個のコントローラ回路とを備えた2つの別個のアレイを備えたシステムを示しているが、本発明は、任意の所望の数の不揮発性メモリセルから成るようなアレイを備えたメモリシステムと、コントローラ回路が、複数のメモリアレイのうちの1以上のメモリアレイが存在するのと同じ半導体装置上に含まれるシステムとに適用されるものである。
【0022】
本発明では、検知データを格納し、プログラミング用データを出力する回路構成は、これら双方の処理を行う記憶エレメントが物理的に同じ構成となるように設計される。これにより、一旦データを読み出し、検知データレジスタに記憶すると、さらなるデータ転送を行う必要がなく、該データをプログラム処理の制御に利用することが可能となる。
【0023】
上記アドレス指定メカニズムは、アドレス指定した特定のワード線に対する読み出し動作を行った後、同じアレイで異なるワード線へのアドレス指定を行うアドレス変更が可能となるように設計され、検知したデータレジスタから得た当該データを用いて後者のワード線のプログラミングを行うことが意図されている。したがって、この回路には、メモリ装置の外側へデータを送る必要なく1つのワード線から別のワード線へ効率的なコピー処理を行うのに必要なすべてのものが含まれていることになる。
【0024】
16個のデータ・ブロックのセクタ7からセクタ9に新しいデータの再書き込みを行うことを望む場合の例として、書き込みシーケンスは以下のようになる。
1.セクタ書き込み処理用として未使用ブロック(消去ブロック1)を割り当
てる。
2.原ブロックのアドレスを選択し、原ブロックのページ0を読み出してデー
タレジスタの中へ入れる。
3.新しく割り当てたブロックのアドレスを選択し、新しく割り当てたブロッ
ク内でプログラム処理を開始する。データの有効性をチェックするために
データレジスタからコントローラ回路へデータを同時に転送する。
4.メモリ状態レジスタとデータの有効性状態とをチェックする。誤りがあれ
ば、誤り回復メカニズムを呼び出す。
5.ページ1から6についてステップ2から4を反復する。
6.新しく割り当てたブロックのアドレスを選択し、コントローラからフラッ
シュEEPROMへページ7用の新しいデータを転送し、新しく割り当て
たブロック内でプログラム処理を開始する。
7.メモリ状態レジスタをチェックする。誤りがあれば、誤り回復メカニズム
を呼び出す。
8.ページ8と9についてステップ6と7を反復する。
9.原ブロックのアドレスを選択し、原ブロックのページ10を読み出してデ
ータレジスタの中へ入れる。
10.新しく割り当てたブロックのアドレスを選択し、新しく割り当てたブロッ
クでページ10のプログラム処理を開始する。データの有効性をチェック
するためにデータレジスタからコントローラ回路へデータを同時に転送す
る。
11.メモリ状態レジスタとデータの有効性状態とをチェックする。
12.ページ11から15についてステップ9から11を反復する。誤りがあれ
ば、誤り回復メカニズムを呼び出す。
【0025】
図6は、本発明の1つの実施形態に基づくコピー処理中に生じる一続きのイベントを示す。矢印は、(1)読み出し中、(2)マスタからスレーブへのレジスタ中、(3)プログラム中および(3)データ転送中の各データフローの方向を示す。データ転送処理およびプログラム処理の双方はそれらが並列処理であることを示す矢印(3)を有する。
【0026】
上記メモリは、1以上の別個のメモリセルアレイとして設計されているので、存在する別個のメモリアレイと同数のコピー処理の同時実行が可能となる。これによりさらに処理効率が上昇する。
【0027】
1以上のセル内のデータが、一旦検知された後、当該セルの中へプログラムした原データを時折反映しない場合が確かにある。このような場合、外部の検証回路手段を利用することにより当該データの有効性を検証することが望ましい。1つの実施形態では、原データと同時にプログラムして、1グループのセルの中へ入れたデータの冗長性(例えば、ECCなど)が利用される。当該セルからこのデータの冗長性を読み出し、その冗長性により当該データの有効性を検証することが可能となる。誤りを検出した場合、当該冗長性情報を利用して誤りを含むデータの訂正が可能となる。図5に示す実施形態により、検証を行うために、一旦検知したデータをメモリ回路の外部回路へ転送することが可能となる。オリジナルの検知データレジスタの内容を変更せずに、この転送処理を可能にするような方法で上記転送は実現される。これによって、プログラム処理と同時に転送処理と検証処理とを行うことが可能となる。
【0028】
多くの別個のメモリセルアレイが存在するため、また、プログラム処理の実行時間が転送時間および検証時間よりも大幅に長いため、複数の転送処理と検証処理と同時に複数のプログラム処理の実行が可能となる。このようにして、パフォーマンス・ペナルティを伴うことなくコピー処理中プログラムするデータの有効性の保証が可能となる。さらに、データの有効性を保証することによりシステムの信頼性が高まる。
【0029】
あたかも個々の各文献が参考文献として取り入れられていることが明確にかつ個々に示されているのと同程度まで、本明細書で上述したすべての文献および特許は本明細書に参考文献として取り入れられている。
【0030】
以上本発明について十分に説明したので、添付の請求項の精神または範囲から逸脱することなく、本発明に対する多くの変更と修正が可能であることは当業者には明らかであろう。
【図面の簡単な説明】
【図1】
従来技術によるEEPROM内の論理アドレスへの新しいデータの書き込みに関わるステップを示す。
【図2】
従来技術による一般的EEPROMのブロック図を示す。
【図3】
従来技術によるフラッシュベースの一般的記憶サブシステム・アーキテクチャを示す。
【図4】
従来技術のページコピー処理のタイミング図を示す。
【図5】
本発明の1つの実施形態に基づく半導体不揮発性メモリの概略表示を示す。
【図6】
本発明の1つの実施形態に基づくコピー処理中に生じる一続きのイベントを示す。
Claims (5)
- 不揮発性メモリシステムにおいて、
不揮発性メモリセルからなるアレイと、
第1のレジスタと、
第2のレジスタと、
前記アレイからデータを読み出し、読み出したデータを前記第1と第2のレジスタの中へ記憶し、前記第2のレジスタ内のデータの有効性をチェックしながら、前記第1のレジスタからのデータを用いて前記アレイの1以上の記憶位置を同時にプログラムするためのコントローラ回路と、
を備えることを特徴とするシステム。 - 前記プログラミングが行われている間、前記コントローラが、前記メモリシステムから前記第2のレジスタ内の記憶データを読み出させることを特徴とする請求項1記載のシステム。
- 前記メモリセルがフラッシュメモリセルを備えることを特徴とする請求項1記載のシステム。
- 前記第2のレジスタ内の前記データの有効性をチェックするECC回路をさらに備えることを特徴とする請求項1記載のシステム。
- 前記プログラミングが行われている間、前記第2のレジスタが、アドレス指定と読み出しとを行う能力を有する複数の個々のエレメントを備えることを特徴とする請求項1記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/643,151 US6266273B1 (en) | 2000-08-21 | 2000-08-21 | Method and structure for reliable data copy operation for non-volatile memories |
PCT/US2001/025678 WO2002017330A2 (en) | 2000-08-21 | 2001-08-16 | Novel method and structure for reliable data copy operation for non-volatile memories |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004507007A true JP2004507007A (ja) | 2004-03-04 |
Family
ID=24579568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002521308A Pending JP2004507007A (ja) | 2000-08-21 | 2001-08-16 | 不揮発性メモリに対する信頼性の高いデータコピー処理を行うための新規の方法および構造 |
Country Status (10)
Country | Link |
---|---|
US (1) | US6266273B1 (ja) |
EP (1) | EP1312095B1 (ja) |
JP (1) | JP2004507007A (ja) |
KR (1) | KR100897591B1 (ja) |
CN (2) | CN1329924C (ja) |
AT (1) | ATE368926T1 (ja) |
AU (1) | AU2001283409A1 (ja) |
DE (1) | DE60129710T2 (ja) |
TW (1) | TW511087B (ja) |
WO (1) | WO2002017330A2 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004311010A (ja) * | 2003-04-03 | 2004-11-04 | Samsung Electronics Co Ltd | エラー訂正機能を有したフラッシュメモリ装置 |
JP2006073141A (ja) * | 2004-09-03 | 2006-03-16 | Toshiba Corp | 記憶システム及びそのデータコピー方法 |
JP2006079811A (ja) * | 2004-09-06 | 2006-03-23 | Samsung Electronics Co Ltd | エラー検出用パリティー発生器を備えた半導体メモリ装置 |
JP2006079808A (ja) * | 2004-09-09 | 2006-03-23 | Samsung Electronics Co Ltd | Nandフラッシュメモリ装置及びそれのコピーバックプログラム方法 |
US7330372B2 (en) | 2002-02-06 | 2008-02-12 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
JP2011175666A (ja) * | 2010-01-29 | 2011-09-08 | Toshiba Corp | 半導体記憶装置及び半導体記憶装置の制御方法 |
JP2011175632A (ja) * | 2010-01-29 | 2011-09-08 | Toshiba Corp | 半導体記憶装置及び半導体記憶装置の制御方法 |
JP2021526265A (ja) * | 2018-05-30 | 2021-09-30 | マイクロン テクノロジー,インク. | メモリ管理 |
Families Citing this family (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100544175B1 (ko) * | 1999-05-08 | 2006-01-23 | 삼성전자주식회사 | 링킹 타입 정보를 저장하는 기록 매체와 결함 영역 처리 방법 |
JP3921024B2 (ja) | 2000-02-29 | 2007-05-30 | 富士通株式会社 | 半導体記憶装置 |
US6349056B1 (en) * | 2000-12-28 | 2002-02-19 | Sandisk Corporation | Method and structure for efficient data verification operation for non-volatile memories |
US6760805B2 (en) * | 2001-09-05 | 2004-07-06 | M-Systems Flash Disk Pioneers Ltd. | Flash management system for large page size |
JP4034949B2 (ja) * | 2001-09-06 | 2008-01-16 | 株式会社ルネサステクノロジ | 不揮発性半導体記憶装置 |
JP3802411B2 (ja) * | 2001-12-20 | 2006-07-26 | 株式会社東芝 | 不揮発性半導体記憶装置のデータコピー方法 |
US6542407B1 (en) * | 2002-01-18 | 2003-04-01 | Sandisk Corporation | Techniques of recovering data from memory cells affected by field coupling with adjacent memory cells |
US6829167B2 (en) * | 2002-12-12 | 2004-12-07 | Sandisk Corporation | Error recovery for nonvolatile memory |
IL156468A (en) * | 2003-06-16 | 2013-07-31 | Rafael Advanced Defense Sys | A task data stack that is utilized for a computer placed inside a shooting tool |
US7881133B2 (en) * | 2003-11-11 | 2011-02-01 | Samsung Electronics Co., Ltd. | Method of managing a flash memory and the flash memory |
US6944041B1 (en) * | 2004-03-26 | 2005-09-13 | Bae Systems Information And Electronic Systems Integration, Inc. | Circuit for accessing a chalcogenide memory array |
TWI254947B (en) * | 2004-03-28 | 2006-05-11 | Mediatek Inc | Data managing method and data access system for storing all management data in a management bank of a non-volatile memory |
US7490283B2 (en) * | 2004-05-13 | 2009-02-10 | Sandisk Corporation | Pipelined data relocation and improved chip architectures |
US8375146B2 (en) * | 2004-08-09 | 2013-02-12 | SanDisk Technologies, Inc. | Ring bus structure and its use in flash memory systems |
US20060095622A1 (en) * | 2004-10-28 | 2006-05-04 | Spansion, Llc | System and method for improved memory performance in a mobile device |
US7420847B2 (en) * | 2004-12-14 | 2008-09-02 | Sandisk Corporation | Multi-state memory having data recovery after program fail |
US7120051B2 (en) * | 2004-12-14 | 2006-10-10 | Sandisk Corporation | Pipelined programming of non-volatile memories using early data |
US7158421B2 (en) * | 2005-04-01 | 2007-01-02 | Sandisk Corporation | Use of data latches in multi-phase programming of non-volatile memories |
US7409473B2 (en) * | 2004-12-21 | 2008-08-05 | Sandisk Corporation | Off-chip data relocation |
US7849381B2 (en) * | 2004-12-21 | 2010-12-07 | Sandisk Corporation | Method for copying data in reprogrammable non-volatile memory |
US7212440B2 (en) * | 2004-12-30 | 2007-05-01 | Sandisk Corporation | On-chip data grouping and alignment |
US7463521B2 (en) * | 2005-04-01 | 2008-12-09 | Sandisk Corporation | Method for non-volatile memory with managed execution of cached data |
US7206230B2 (en) * | 2005-04-01 | 2007-04-17 | Sandisk Corporation | Use of data latches in cache operations of non-volatile memories |
US7447078B2 (en) | 2005-04-01 | 2008-11-04 | Sandisk Corporation | Method for non-volatile memory with background data latch caching during read operations |
KR100626392B1 (ko) * | 2005-04-01 | 2006-09-20 | 삼성전자주식회사 | 읽기 속도를 향상시킬 수 있는 플래시 메모리 장치 |
US7668017B2 (en) | 2005-08-17 | 2010-02-23 | Saifun Semiconductors Ltd. | Method of erasing non-volatile memory cells |
US7130222B1 (en) * | 2005-09-26 | 2006-10-31 | Macronix International Co., Ltd. | Nonvolatile memory with program while program verify |
US7509471B2 (en) * | 2005-10-27 | 2009-03-24 | Sandisk Corporation | Methods for adaptively handling data writes in non-volatile memories |
US7631162B2 (en) | 2005-10-27 | 2009-12-08 | Sandisck Corporation | Non-volatile memory with adaptive handling of data writes |
KR101197556B1 (ko) * | 2006-01-09 | 2012-11-09 | 삼성전자주식회사 | 불 휘발성 메모리의 프로그램 동작을 검증하는 장치 및방법, 그리고 그 장치를 포함한 메모리 카드 |
US7366028B2 (en) * | 2006-04-24 | 2008-04-29 | Sandisk Corporation | Method of high-performance flash memory data transfer |
US7366029B2 (en) * | 2006-04-24 | 2008-04-29 | Sandisk Corporation | High-performance flash memory data transfer |
US7525855B2 (en) * | 2006-04-24 | 2009-04-28 | Sandisk Corporation | Method of high-performance flash memory data transfer |
US7345926B2 (en) * | 2006-04-24 | 2008-03-18 | Sandisk Corporation | High-performance flash memory data transfer |
US7499339B2 (en) * | 2006-07-19 | 2009-03-03 | Sandisk Corporation | High-performance flash memory data transfer |
US7499369B2 (en) * | 2006-07-19 | 2009-03-03 | Sandisk Corporation | Method of high-performance flash memory data transfer |
EP2016590B1 (en) | 2006-05-05 | 2011-10-26 | SanDisk Corporation | Non-volatile memory with background data latch caching during read operations and methods therefor |
KR100778082B1 (ko) * | 2006-05-18 | 2007-11-21 | 삼성전자주식회사 | 단일의 래치 구조를 갖는 멀티-비트 플래시 메모리 장치,그것의 프로그램 방법, 그리고 그것을 포함하는 메모리카드 |
US7876613B2 (en) | 2006-05-18 | 2011-01-25 | Samsung Electronics Co., Ltd. | Multi-bit flash memory devices having a single latch structure and related programming methods, systems and memory cards |
KR100747759B1 (ko) | 2006-08-16 | 2007-08-08 | 연세대학교 산학협력단 | 플래시 메모리 장치 및 그 인터페이스 장치 |
KR100919156B1 (ko) * | 2006-08-24 | 2009-09-28 | 삼성전자주식회사 | 멀티-비트 플래시 메모리 장치 및 그것의 프로그램 방법 |
US7734861B2 (en) * | 2006-09-08 | 2010-06-08 | Sandisk Corporation | Pseudo random and command driven bit compensation for the cycling effects in flash memory |
US7606966B2 (en) * | 2006-09-08 | 2009-10-20 | Sandisk Corporation | Methods in a pseudo random and command driven bit compensation for the cycling effects in flash memory |
US7885112B2 (en) * | 2007-09-07 | 2011-02-08 | Sandisk Corporation | Nonvolatile memory and method for on-chip pseudo-randomization of data within a page and between pages |
KR100791839B1 (ko) * | 2006-10-31 | 2008-01-07 | 삼성전자주식회사 | 데이터 읽기 시 데이터 스트로브 신호를 발생할 수 있는비휘발성 메모리 장치와 그 방법 |
US8082476B2 (en) | 2006-12-22 | 2011-12-20 | Sidense Corp. | Program verify method for OTP memories |
US7499320B2 (en) * | 2007-03-07 | 2009-03-03 | Sandisk Corporation | Non-volatile memory with cache page copy |
US7502255B2 (en) * | 2007-03-07 | 2009-03-10 | Sandisk Corporation | Method for cache page copy in a non-volatile memory |
US20090106513A1 (en) * | 2007-10-22 | 2009-04-23 | Chuang Cheng | Method for copying data in non-volatile memory system |
JP5183403B2 (ja) * | 2008-09-30 | 2013-04-17 | 株式会社日立製作所 | ストレージシステムおよび制御プログラムならびにストレージシステム制御方法 |
US8762621B2 (en) * | 2008-10-28 | 2014-06-24 | Micron Technology, Inc. | Logical unit operation |
US20100161932A1 (en) * | 2008-12-18 | 2010-06-24 | Ori Moshe Stern | Methods for writing data from a source location to a destination location in a memory device |
US8316201B2 (en) * | 2008-12-18 | 2012-11-20 | Sandisk Il Ltd. | Methods for executing a command to write data from a source location to a destination location in a memory device |
US8832353B2 (en) * | 2009-04-07 | 2014-09-09 | Sandisk Technologies Inc. | Host stop-transmission handling |
US8102705B2 (en) | 2009-06-05 | 2012-01-24 | Sandisk Technologies Inc. | Structure and method for shuffling data within non-volatile memory devices |
US8027195B2 (en) * | 2009-06-05 | 2011-09-27 | SanDisk Technologies, Inc. | Folding data stored in binary format into multi-state format within non-volatile memory devices |
US8307241B2 (en) * | 2009-06-16 | 2012-11-06 | Sandisk Technologies Inc. | Data recovery in multi-level cell nonvolatile memory |
US8132045B2 (en) * | 2009-06-16 | 2012-03-06 | SanDisk Technologies, Inc. | Program failure handling in nonvolatile memory |
US20110002169A1 (en) * | 2009-07-06 | 2011-01-06 | Yan Li | Bad Column Management with Bit Information in Non-Volatile Memory Systems |
US8144512B2 (en) * | 2009-12-18 | 2012-03-27 | Sandisk Technologies Inc. | Data transfer flows for on-chip folding |
US8468294B2 (en) * | 2009-12-18 | 2013-06-18 | Sandisk Technologies Inc. | Non-volatile memory with multi-gear control using on-chip folding of data |
US8725935B2 (en) | 2009-12-18 | 2014-05-13 | Sandisk Technologies Inc. | Balanced performance for on-chip folding of non-volatile memories |
US8443263B2 (en) * | 2009-12-30 | 2013-05-14 | Sandisk Technologies Inc. | Method and controller for performing a copy-back operation |
US8472280B2 (en) | 2010-12-21 | 2013-06-25 | Sandisk Technologies Inc. | Alternate page by page programming scheme |
US9342446B2 (en) | 2011-03-29 | 2016-05-17 | SanDisk Technologies, Inc. | Non-volatile memory system allowing reverse eviction of data updates to non-volatile binary cache |
US8843693B2 (en) | 2011-05-17 | 2014-09-23 | SanDisk Technologies, Inc. | Non-volatile memory and method with improved data scrambling |
KR101893145B1 (ko) * | 2011-12-06 | 2018-10-05 | 삼성전자주식회사 | 메모리 시스템들 및 그것들의 블록 복사 방법들 |
US8799598B2 (en) * | 2012-02-17 | 2014-08-05 | Spansion Llc | Redundancy loading efficiency |
US8842473B2 (en) | 2012-03-15 | 2014-09-23 | Sandisk Technologies Inc. | Techniques for accessing column selecting shift register with skipped entries in non-volatile memories |
US20130254463A1 (en) * | 2012-03-23 | 2013-09-26 | Kabushiki Kaisha Toshiba | Memory system |
US8681548B2 (en) | 2012-05-03 | 2014-03-25 | Sandisk Technologies Inc. | Column redundancy circuitry for non-volatile memory |
US8897080B2 (en) | 2012-09-28 | 2014-11-25 | Sandisk Technologies Inc. | Variable rate serial to parallel shift register |
US9076506B2 (en) | 2012-09-28 | 2015-07-07 | Sandisk Technologies Inc. | Variable rate parallel to serial shift register |
US9490035B2 (en) | 2012-09-28 | 2016-11-08 | SanDisk Technologies, Inc. | Centralized variable rate serializer and deserializer for bad column management |
US9037902B2 (en) | 2013-03-15 | 2015-05-19 | Sandisk Technologies Inc. | Flash memory techniques for recovering from write interrupt resulting from voltage fault |
KR102200489B1 (ko) | 2014-05-30 | 2021-01-11 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것을 포함하는 저장 장치 |
US9934872B2 (en) | 2014-10-30 | 2018-04-03 | Sandisk Technologies Llc | Erase stress and delta erase loop count methods for various fail modes in non-volatile memory |
US9224502B1 (en) | 2015-01-14 | 2015-12-29 | Sandisk Technologies Inc. | Techniques for detection and treating memory hole to local interconnect marginality defects |
US10032524B2 (en) | 2015-02-09 | 2018-07-24 | Sandisk Technologies Llc | Techniques for determining local interconnect defects |
US9269446B1 (en) | 2015-04-08 | 2016-02-23 | Sandisk Technologies Inc. | Methods to improve programming of slow cells |
US9564219B2 (en) | 2015-04-08 | 2017-02-07 | Sandisk Technologies Llc | Current based detection and recording of memory hole-interconnect spacing defects |
CN110175056B (zh) * | 2019-05-30 | 2022-02-11 | 西安微电子技术研究所 | 一种异构平台远程动态加载多目标fpga的控制装置及控制方法 |
US11138071B1 (en) | 2020-06-22 | 2021-10-05 | Western Digital Technologies, Inc. | On-chip parity buffer management for storage block combining in non-volatile memory |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW231343B (ja) * | 1992-03-17 | 1994-10-01 | Hitachi Seisakusyo Kk | |
US5890192A (en) | 1996-11-05 | 1999-03-30 | Sandisk Corporation | Concurrent write of multiple chunks of data into multiple subarrays of flash EEPROM |
US5745418A (en) * | 1996-11-25 | 1998-04-28 | Macronix International Co., Ltd. | Flash memory mass storage system |
US5930167A (en) * | 1997-07-30 | 1999-07-27 | Sandisk Corporation | Multi-state non-volatile flash memory capable of being its own two state write cache |
US6040997A (en) | 1998-03-25 | 2000-03-21 | Lexar Media, Inc. | Flash memory leveling architecture having no external latch |
TW368626B (en) * | 1998-04-17 | 1999-09-01 | Winbond Electronics Corp | Microprocessor with self-programmed embedded flash memory and programming method |
-
2000
- 2000-08-21 US US09/643,151 patent/US6266273B1/en not_active Expired - Lifetime
-
2001
- 2001-08-16 JP JP2002521308A patent/JP2004507007A/ja active Pending
- 2001-08-16 CN CNB018144977A patent/CN1329924C/zh not_active Expired - Fee Related
- 2001-08-16 CN CN2007101100628A patent/CN101067969B/zh not_active Expired - Lifetime
- 2001-08-16 WO PCT/US2001/025678 patent/WO2002017330A2/en active IP Right Grant
- 2001-08-16 AU AU2001283409A patent/AU2001283409A1/en not_active Abandoned
- 2001-08-16 KR KR1020037002478A patent/KR100897591B1/ko not_active IP Right Cessation
- 2001-08-16 DE DE60129710T patent/DE60129710T2/de not_active Expired - Lifetime
- 2001-08-16 EP EP01962213A patent/EP1312095B1/en not_active Expired - Lifetime
- 2001-08-16 AT AT01962213T patent/ATE368926T1/de not_active IP Right Cessation
- 2001-08-21 TW TW090120510A patent/TW511087B/zh not_active IP Right Cessation
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7330372B2 (en) | 2002-02-06 | 2008-02-12 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
US7586785B2 (en) | 2002-02-06 | 2009-09-08 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
JP2004311010A (ja) * | 2003-04-03 | 2004-11-04 | Samsung Electronics Co Ltd | エラー訂正機能を有したフラッシュメモリ装置 |
JP2006073141A (ja) * | 2004-09-03 | 2006-03-16 | Toshiba Corp | 記憶システム及びそのデータコピー方法 |
JP4504138B2 (ja) * | 2004-09-03 | 2010-07-14 | 株式会社東芝 | 記憶システム及びそのデータコピー方法 |
JP2006079811A (ja) * | 2004-09-06 | 2006-03-23 | Samsung Electronics Co Ltd | エラー検出用パリティー発生器を備えた半導体メモリ装置 |
JP2006079808A (ja) * | 2004-09-09 | 2006-03-23 | Samsung Electronics Co Ltd | Nandフラッシュメモリ装置及びそれのコピーバックプログラム方法 |
JP2011175666A (ja) * | 2010-01-29 | 2011-09-08 | Toshiba Corp | 半導体記憶装置及び半導体記憶装置の制御方法 |
JP2011175632A (ja) * | 2010-01-29 | 2011-09-08 | Toshiba Corp | 半導体記憶装置及び半導体記憶装置の制御方法 |
US8185687B2 (en) | 2010-01-29 | 2012-05-22 | Kabushiki Kaisha Toshiba | Semiconductor storage device and method of controlling semiconductor storage device |
JP2021526265A (ja) * | 2018-05-30 | 2021-09-30 | マイクロン テクノロジー,インク. | メモリ管理 |
US11646065B2 (en) | 2018-05-30 | 2023-05-09 | Micron Technology, Inc. | Wear leveling |
Also Published As
Publication number | Publication date |
---|---|
ATE368926T1 (de) | 2007-08-15 |
CN101067969B (zh) | 2010-06-16 |
US6266273B1 (en) | 2001-07-24 |
CN1329924C (zh) | 2007-08-01 |
EP1312095B1 (en) | 2007-08-01 |
EP1312095A2 (en) | 2003-05-21 |
KR20030043934A (ko) | 2003-06-02 |
WO2002017330A3 (en) | 2002-06-27 |
CN1447976A (zh) | 2003-10-08 |
AU2001283409A1 (en) | 2002-03-04 |
DE60129710D1 (de) | 2007-09-13 |
CN101067969A (zh) | 2007-11-07 |
KR100897591B1 (ko) | 2009-05-14 |
DE60129710T2 (de) | 2008-06-05 |
TW511087B (en) | 2002-11-21 |
WO2002017330A2 (en) | 2002-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6266273B1 (en) | Method and structure for reliable data copy operation for non-volatile memories | |
US6349056B1 (en) | Method and structure for efficient data verification operation for non-volatile memories | |
US6871257B2 (en) | Pipelined parallel programming operation in a non-volatile memory system | |
KR100626393B1 (ko) | 불휘발성 메모리 장치 및 그것의 멀티-페이지 카피백 방법 | |
US7409473B2 (en) | Off-chip data relocation | |
US8792277B2 (en) | Split data error correction code circuits | |
US7350044B2 (en) | Data move method and apparatus | |
KR100939146B1 (ko) | 비휘발성 반도체 메모리 시스템 및 그 데이터 기입 방법 | |
US20050015539A1 (en) | Memory system and memory card | |
JP2005292925A (ja) | メモリコントローラ、フラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4304167B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4561110B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |