JP2007520029A - 非揮発性メモリの雑/ファインプログラミングのための可変電流シンキング - Google Patents

非揮発性メモリの雑/ファインプログラミングのための可変電流シンキング Download PDF

Info

Publication number
JP2007520029A
JP2007520029A JP2006551374A JP2006551374A JP2007520029A JP 2007520029 A JP2007520029 A JP 2007520029A JP 2006551374 A JP2006551374 A JP 2006551374A JP 2006551374 A JP2006551374 A JP 2006551374A JP 2007520029 A JP2007520029 A JP 2007520029A
Authority
JP
Japan
Prior art keywords
volatile storage
programming
storage element
current
fine
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.)
Granted
Application number
JP2006551374A
Other languages
English (en)
Other versions
JP4726807B2 (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.)
SanDisk Corp
Original Assignee
SanDisk 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 SanDisk Corp filed Critical SanDisk Corp
Publication of JP2007520029A publication Critical patent/JP2007520029A/ja
Application granted granted Critical
Publication of JP4726807B2 publication Critical patent/JP4726807B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • 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/12Programming voltage switching circuits
    • 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/30Power supply circuits
    • 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/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • 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/3468Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing
    • G11C16/3481Circuits or methods to verify correct programming of nonvolatile memory cells whilst programming is in progress, e.g. by detecting onset or cessation of current flow in cells and using the detector output to terminate programming
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C27/00Electric analogue stores, e.g. for storing instantaneous values
    • G11C27/005Electric analogue stores, e.g. for storing instantaneous values with non-volatile charge storage, e.g. on floating gate or MNOS
    • 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

Abstract

非揮発性メモリ装置は、雑プログラミング工程を実行し、次いでファインプログラミング工程を実行することによってプログラミングされる。雑/ファインプログラミング方法は、雑プログラミング工程についていくつかの非揮発性メモリセルをベリファイする間に、ファインプログラミング工程についてこれら以外の非揮発性メモリセルをベリファイすることを許容する効率的なベリフィケーションスキームを利用することによって促進される。ファインプログラミング工程は、電流シンキング、チャージパケット測定、又はその他の適切な手段を利用して達成される。

Description

本出願は、次の2つの米国特許出願に関連する。即ち、「Charge Packet Metering For Coarse/Fine Programming Of Non-Volatile Memory」, Daniel C. Guterman, Nima Mokhlesi, Yupin Fongと、「Efficient Verification For Coarse/Fine Programming of Non-Volatile Memory」, Daniel C. Guterman, Nima Mokhlesi, Yupin Fongに関連している。これらの出願は、本出願と同日に出願された。上記の両方の関連出願の全体は、本願明細書に組み込まれる。
本発明は、非揮発性メモリのための技術に関する。
半導体メモリ装置は、様々な電子装置に使用されてポピュラーになっている。例えば、非揮発性半導体メモリは、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、モバイルコンピュータ、非モバイルコンピュータ、及びその他の装置に使用されている。最も普及している非揮発性半導体メモリは、電気的消去プログラミングが可能な読み取り専用メモリ(EEPROM)とフラッシュメモリである。
EEPROMとフラッシュメモリの両方は、半導体基板のチャネル領域から絶縁されているとともにチャネル領域の上に配置されているフローティングゲートを利用する。フローティングゲートは、ソース領域とドレイン領域の間に配置されている。制御ゲートは、フローティングゲートの上に設けられているとともに、フローティングゲートから絶縁されている。トランジスタの閾電圧は、フローティングゲートに保持される電荷量によって制御される。即ち、トランジスタがソースとドレインの間を導通してターンオンする前に制御ゲートに付加されるべき最小限の電圧が、フローティングゲートの電荷レベルによって制御される。
いくつかのEEPROMとフラッシュメモリは、2つの電荷範囲を保持するために使用されるフローティングゲートが設けられている。このために、メモリセルを2つの範囲の間でプログラミング/消去することができる。EEPROM又はフラッシュメモリにプログラミングする場合、典型的には、制御ゲートにプログラミング電圧が供給され、ビットラインが接地される。チャネルからの電子がフローティングゲートに注入される。フローティングゲート内に電子が蓄積すると、フローティングゲートが負電荷状態となり、メモリセルの閾電圧が上昇する。
一般的に、制御ゲートに供給されるプログラミング電圧は、一連のパルスとして付加される。パルスの大きさは、連続パルス毎に所定のステップサイズ(例えば0.2v)増加する。
パルスとパルスの間の期間において、ベリファイ動作(証明動作)が実行される。即ち、並列プログラミングされている一群のセルの各セルのプログラミングレベルが、連続したプログラミングパルス間で読み出され、プログラミングされるベリファイレベル以上であるのかが決定される。プログラミングをベリファイする手法の1つでは、特定の比較点でのコンディションをテストする。例えば、NANDセルにおいて十分にプログラムされたことがベリファイされたセルは、ビットライン電圧を0からVdd(例えば2.5ボルト)に上昇させることによってロックアウトされる。これにより、これらのセルについてのプログラミング工程が停止される。いくつかのケースでは、パルス数が制限されている(例えば20個のパルス)。所定のメモリセルが最後のパルスによってもプログラミングが完了していない場合、エラーが推測される。
一実施態様では、メモリセルが、プログラミングの前に(ブロック単位又は他の単位で)消去される。プログラミングに関するさらなる情報は、2003年3月5日出願の米国特許出願10/379608号の「Self Boosting Technique」と、2003年7月29日出願の米国特許出願第10/629068号の「Detecting Over Programmed Memory」から得ることができる。両出願の全体は、本願明細書に組み込まれる。
図1は、フラッシュメモリセルの制御ゲート(あるいはステアリングゲート)に供給されるプログラミング電圧信号Vpgmを示す。プログラミング電圧信号Vpgmは、時間が経過すると上昇する一連のパルス群を含んでいる。プログラムパルスの開始時に、プログラミングされるべき全てのセルのビットライン(例えばドレインに接続されている)が接地される。これにより、ゲートからチャネルまでにVpgm−0vの電圧差が生じる。セルが(プログラミングベリファイを超えて)目標電圧に達すると、それぞれのビットライン電圧がVddまで上昇し、メモリセルがプログラミング禁止モードになる(例えば、そのセルに対するプログラミングが停止する)。
マルチ状態フラッシュメモリセルは、禁止された電圧範囲によって分離された複数の許容された閾電圧範囲を特定することによって実現される。例えば、図2は、3ビットデータに対応する8個の閾範囲(0、1、2、3、4、5、6、7)を示す。メモリセルは、8個より多い又は少ない閾範囲を使用することもできる。それぞれの閾電圧範囲は、データビット群のセットの所定値に対応している。いくつかの実施態様では、これらのデータ値(たとえば論理状態)は、グレーコードアサイメント(gray code assignment)を利用して、閾範囲に割り当てられる。フローティングゲートの閾電圧が誤ってその近くのシジカル状態にシフトしても、1ビットしか影響を受けない。メモリセルにプログラムされるデータとセルの閾電圧範囲の間の関係は、セルに採用されるデータエンコーディングスキーム(data encoding scheme)に依存する。例えば、米国特許第6222762号と、2003年6月13日出願の米国特許出願第10/461244号の「Tracking Cells For A Memory System」は、マルチ状態フラッシュメモリセルのための様々なデータエンコーディングスキームを開示している。これらの全体は、本願明細書に組み込まれる。
上述したように、フラッシュメモリセルにプログラミングする場合、プログラミングパルス間に、メモリセルが目標閾値に達したのか否かがベリファイされる。1つのベリファイ手段は、目標閾値に対応するワードラインにパルスを供給し、メモリセルがオン状態になるのか否かを決定する。オンになれば、メモリセルは目標閾電圧値に達したことになる。
フラッシュメモリセルのアレイでは、多数のセルがパラレルにベリファイされる。マルチ状態フラッシュメモリセルのアレイでは、メモリセル群が各状態のベリフィケーションステップを実行し、そのメモリセルがどの状態にあるのかを決定する。例えば、8つの状態のデータを記憶できるマルチ状態メモリセルは、7つの比較点についてベリファイオペレーションを実行する必要がある。図3は、3つのプログラミングパルス10a,10b,10cを示す(これらは図1にも示されている)。プログラミングパルス間には、7回のベリファイオペレーションを実行するための7つのベリファイパルスが存在する。システムは、7回のベリファイオペレーションに基づいて、メモリセルの状態を決定することができる。
各プログラミングパルスの後に7回のベリファイオペレーションを実行すると、プログラミング工程が遅くなる。ベリファイの時間的負荷を低減するための1つの手段では、より効率的なベリファイプロセスを利用する。例えば、2002年12月5日出願の米国特許出願第10/314055号の「Smart Verify for Multi-State Memories」には、スマートなベリファイプロセスが開示されている。この全体は、本願明細書に組み込まれる。
スマートベリファイプロセスを利用してプログラミング/ベリファイシーケンスの間にマルチ状態メモリに連続的に書き込むための1つの実施形態では、以下が実施される。プロセスの最初においては、選択されたメモリセルのマルチ状態範囲の最も低い状態(例えば図2の状態1)のみが、ベリファイフェーズの間にチェックされる。一又は複数のメモリセルによって第1記憶状態(例えば図2の状態1)に達すると、マルチ状態のシーケンスの次の状態(例えば図2の状態2)がベリファイプロセスに加えられる。この状態は、シーケンス内でこの前の状態に最も早く達したセルにすぐに加えられるか、あるいは、メモリは一般的に状態から状態に移動するためにいくつかのプログラミングステップを有するように設計されているために、数サイクルのディレイの後に加えられる。ディレイの程度は、固定されていてもよいし、パラメータベースの態様を使用することもできる。後者は、装置の特徴に従って設定されるディレイの程度を許容する。
ベリファイフェーズにおいてチェックされるセットに対する状態の追加は、最も高い状態が追加されるまで、上述のように継続する。同様に、これらのレベルに達した全てのメモリセルの目標値がベリファイされ、さらなるプログラミングがロックアウトされた場合には、最も低い状態をベリファイのセットから取り除くことができる。
リーズナブルな速度でプログラミングすることに加えて、マルチ状態セルが適切なデータの記憶を実現するためには、マルチ状態メモリセルの閾電圧レベルの複数の範囲を、充分なマージンで相互に離間させるべきである。これにより、明確なマナーでメモリセルのレベルのプログラミングと読み出しを実行することができる。さらに、タイトな閾電圧分布が推奨される。タイトな閾電圧分布の達成には、一般的に小さなプログラミングステップが使用されるために、セルの閾電圧のプログラミングがさらに遅くなる。所望の閾分布がタイトであるほど、ステップが小さくなり、プログラミングプロセスが遅くなる。
プログラミングプロセスがそれほど遅くならずにタイトな閾分布を達成するための1つの解決法では、2フェーズのプログラミングプロセスが利用される。第1フェーズ、即ち雑プログラミングフェーズは、閾電圧をより高速なマナーで上昇させ、タイトな閾分布の達成をそれほど意識していない。第2フェーズ、即ちファインプログラミングフェーズは、目標の閾電圧に達するように閾電圧をより遅いマナーで上昇させ、よりタイトな閾分布を達成する。雑/ファインプログラミングの例は、2002年1月22日出願の米国特許出願第10/051372号の「Non-Volatile Semiconductor Memory Device Adapted to Store A multi-Valued Data in a Single Memory Cell」、米国特許第6301161号、米国特許第5712815号、米国特許第5220531号、及び、米国特許第5761222号から得られる。これらの全体は、本願明細書に組み込まれる。
プログラミングの間にメモリセルをベリファイする場合、いくつかの上記の解決法は、最初に雑モードについてベリファイプロセスを実行し、その後にファインモードについてベリファイプロセスを実行する。このようなベリフィケーションプロセスでは、ベリフィケーションに要する時間が増加する。雑/ファインプログラミングは、上述したスマートベリファイプロセスと共に利用することができる。
メモリ装置がより小型化かつ高密度化するに従って、よりタイトな閾値分布及び妥当なプログラミング時間の必要性が増加する。雑/ファインプログラミング方法は既存のいくつかの事案を解決するが、望ましいよりタイトな閾値分布及び妥当なプログラミング時間を提供することができるように、雑/ファインプログラミング方法をさらに改善する必要がある。
本発明は、簡単に言うと、非揮発性メモリの技術に関する。より詳細には、ここで記述される技術は、改善された雑/ファインプログラミング技術を提供するために利用される。
本発明の一実施形態は、非揮発性記憶要素にプログラミングするための装置を含む。この装置は、プログラミング回路に接続される非揮発性記憶要素群と、一又は複数のベリフィケーション選択回路に接続される。ベリフィケーション選択回路は、第1サブセットの非揮発性記憶要素群を雑ベリフィケーションの対象とし、それと同時に、第2サブセットの非揮発性記憶要素群をファインベリフィケーションの対象とする。
本発明のいくつかの実施形態は、非揮発性記憶要素に接続されるセンス回路と、センス回路に基づいて、非揮発性揮発要素が雑プログラミングモードにあること又はファインプログラミングモードにあることを示す出力を提供するプログラミングモードインディケーション回路と、プログラミングモードインディケーション回路に接続される第1選択回路を有する。第1選択回路は、非揮発性記憶要素が雑プログラミングモードにある場合に、非揮発性記憶要素に雑ベリフィケーション信号を供給し、非揮発性記憶要素がファインプログラミングモードにある場合に、非揮発性記憶要素にファインベリフィケーション信号を供給する。
一つの実施例では、この装置は、非揮発性記憶要素が雑プログラミングモードにあること又はファインプログラミングモードにあることを決定するステップを有する方法を実行する。非揮発性記憶要素が雑プログラミングモードにあることが決定されると、非揮発性記憶要素にファインベリフィケーションを実行することなく、非揮発性記憶要素には雑ベリフィケーションが実行される。非揮発性記憶要素がファインプログラミングモードにあることが決定されると、非揮発性記憶要素に雑ベリフィケーションを実行することなく、非揮発性記憶要素にはファインベリフィケーションが実行される。
本発明の別の実施形態は、ゲートと制御端末群のセットとを有する非揮発性記憶要素を含む。この装置は、少なくとも1つの制御端末に接続される切換可能電流シンキング装置をさらに含む。切換可能電流シンキング装置は、非揮発性記憶要素が雑プログラミングモードにある場合に、制御端末に雑電流シンクを提供し、非揮発性記憶要素がファインプログラミングモードにある場合に、制御端末にファイン電流シンクを提供する。いくつかの実施形態では、雑プログラミングモードの間ではなくて、ファインプログラミングモードの間に電流シンクが提供される。
本発明の別の実施形態は、非揮発性記憶要素に接続されるセンス回路と、センス回路に基づいて、非揮発性記憶要素が雑プログラミングモードにあること又はファインプログラミングモードにあることを示す出力を提供するプログラミングモードインディケーション回路と、プログラミングモードインディケーション回路と非揮発性記憶要素に接続される切換可能電流シンキング装置とを含む。切換可能電流シンキング装置は、非揮発性記憶要素が雑プログラミングモードにある場合に、非揮発性記憶要素に雑電流シンクを提供し、非揮発性記憶要素がファインプログラミングモードにある場合に、非揮発性記憶要素にファイン電流シンクを提供する。一実施形態では、装置が、非揮発性記憶要素のゲートに共通プログラミング信号を供給し、雑プログラミングの間に非揮発性記憶要素から第1電流をシンクし、非揮発性記憶要素の閾電圧が第1ベリフィケーションレベルに達したことを決定し、非揮発性記憶要素の閾電圧が第1ベリフィケーションレベルに達したのか否かを決定することに応じて第2電流を求めるためにシンキングを切り換える。
本発明の別の実施形態は、非揮発性記憶要素に接続されるセンス回路と、センス回路に基づいて、非揮発性記憶要素が雑プログラミングモードにあること又はファインプログラミングモードにあることを示す出力を提供するプログラミングモードインディケーション回路と、プログラミングモードインディケーション回路と非揮発性記憶要素に接続される切換可能電荷パケット測定回路とを含む。切換可能電荷パケット測定回路は、非揮発性記憶要素がファインプログラミングモードにあることを示すプログラミングモードインディケーション回路に応じて、測定された電荷を非揮発性記憶要素に供給する。
本発明のさらに別の実施形態は、非揮発性記憶要素群のセットと、非揮発性記憶要素群に接続される独立的切換可能電荷パケット測定システムとを含む。独立的切換可能電荷パケット測定システムは、ファインプログラミングモードで非揮発性記憶要素群をプログラミングするための特定の測定された電荷を供給するために、独立的に切り換えられる。この場合、雑プログラミングモードで非揮発性記憶要素群をプログラミングするためには、前記特定の測定された電荷が供給されない。
一実施形態では、非揮発性記憶要素群に雑プログラミング工程を実行し、非揮発性記憶要素群がファインプログラミング工程に切り換えられるべきであることを決定し、これに応答してファインプログラミング工程を実行することを含む。ファインプログラミング工程の一つの形態では、非揮発性記憶要素のための制御ラインをプレチャージし、非揮発性記憶要素にプログラミングするために非揮発性要素を介して制御ラインを放電する。
本発明のこれらの目的とその他の目的と利点は、図面を参照して説明される以下の本発明の好適な実施形態からより明確となるだろう。
I.メモリシステム
本発明の様々な態様を採用したメモリシステムの例が、図4のブロック線図に示されている。本発明では、図4以外の構造を利用することもできる。独立してアドレサブル(addressable)な多数のメモリセル11は、行と列のアレイによって配置されている。アレイ11の列に沿って延びているビットラインは、ライン15を介して、ビットラインデコーダとドライバとセンス増幅器回路13に電気的に接続されている。アレイ11の行に沿って延びているワードラインは、ライン17を介して、ワードラインデコーダとドライバ回路19に電気的に接続されている。アレイ11のメモリセルの列に沿って延びているステアリングゲートは、ライン23を介して、ステアリングゲートデコーダとドライバ回路21に電気的に接続されている。
回路13と19と21のそれぞれは、バス25を介して、コントローラ27からアドレスを受信する。デコーダとドライバ回路13,19,21は、それぞれに対応する制御信号ライン及び状態信号ライン29,31,33を介して、コントローラ27に接続されている。ステアリングゲートとビットラインに供給される電圧は、コントローラとドライバ回路13,21を相互に接続するバス22を介して調整される。1つの実施形態では、コントローラ27は、ここで説明される機能のパフォーマンスを調整する状態機械を含む。別の実施形態では、状態機械は、コントローラとは別に動作する。
コントローラ27は、ライン35を介してホスト装置(図示せず)に接続されることができる。このホストは、パーソナルコンピュータ、ノートブックコンピュータ、ハンドヘルド型装置、デジタルカメラ、オーディオプレーヤ、携帯電話、又は、これら以外の様々な装置である。図4のメモリシステムは、いくつかの既存の物理的及び電気的スタンダードの1つに準拠したカードによって実現することができる。例えば、PCMCIA、CompactFlash(登録商標)Association、MMC(登録商標)Association、スマートメディア、Secure Digital(登録商標)、メモリスティック等を挙げることができる。
カードフォーマットの場合、ライン35は、ホスト装置の補助コネクタにインターフェースするカードのコネクタにターミネートする。また、図4のメモリシステムをホスト装置内に組み込むこともできる。さらに別の代替品では、コントローラ27をホスト装置内に組み込む一方で、メモリシステムの他の構成要素をリムーバブルカードに設けることもできる。別の実施形態では、このメモリシステムをカードではなくパッケージ内に配置することが可能である。例えば、メモリシステムは、一又は複数の集積回路、一又は複数の回路基板、若しくは他のパッケージであってもよい。
デコーダとドライバ回路13,19,21は、それぞれの制御状態ライン29,31,33の制御信号に従って、プログラミング、読み取り、ファンクションの消去を実行するために、バス25を介して指定されたそれぞれに対応するアレイ11のラインに適切な電圧を生成する。電圧レベルと他のアレイパラメータを含む状態信号は、同じ制御状態ライン29,31,33を介してアレイ11によってコントローラ27に供給される。回路13の複数のセンス増幅器は、アレイ11内の指定されたメモリセルの状態を示す電流又は電圧レベルを受け取る。センス増幅器は、読み出し動作の間に、メモリセルの状態に関する情報を、ライン41を介してコントローラ27に供給する。通常、多数のメモリセルの状態を並列的に読み出すためには、多数のセンス増幅器が利用される。
II.メモリセル
図5は、メモリアレイ11の一部の第一実施形態を示す平面図である。図6は、断面A−Aに沿って得られるメモリアレイの部分断面図である。図面を簡略化するために、基板とコンダクティブな要素とその間に挟設された誘電層は、簡単に示されている。しかしながら、コンダクティブ層自体の間、コンダクティブ層と伝導層の間、あるいは、コンダクティブ層と基板の間に適当な酸化層が設けられることが理解されるだろう。
シリコン基板45は、平坦上面47を含む。細長い拡散部49,51,53は、初期イオン注入とその後の拡散によって、表面47を介して基板45内に形成される。細長い拡散部49,51,53は、メモリセルのソースとドレインとして機能する。このために、各拡散部は、第1方向(x方向)に離間し、第2方向(y方向)に延びている。x方向とy方向は、実質的に直交している。行群と列群を含むアレイ内では、基板表面47にまたがって、複数のフローティングゲートが設けられている。フローティングゲート間には、適当なゲート誘電体が配置されている。フローティングゲート55,56,57,58,59,60によって構成される1つの行は、フローティングゲート62,63,64,65,66,67によって構成される別の行の付近に平行に配置されている。フローティングゲート69,55,62,71,73によって構成される列は、フローティングゲート75,56,63,77,79によって構成される列の付近に平行に配置されている。フローティングゲートは、コンダクティブにドープされた多結晶シリコン(ポリシリコン)の第1層から形成されている。この多結晶シリコンは、表面上にデポジットされ、その後に一又は複数のマスキングステップを利用してエッチングすることによって個々のフローティングゲートに分離される。
ビットラインデコーダとドライバ回路13(図4参照)は、図5の拡散部49,51,53を含むアレイの全てのビットラインソース/ドレイン拡散部にライン15を介して接続されている。個々のメモリセルの列のソースとドレインは、バス25を介して供給されるアドレスと、ライン29を介して供給される制御信号とに応じて、読み出し又はプログラミングのための適切な動作電圧に接続されている。
図5と図6の構造は、フローティングゲートの2つの列毎に、1つのステアリングゲートを利用している。ステアリングゲート81,83,85は、y方向に延びている。ステアリングゲート81,83,85は、隣接した2つのフローティングゲート列に亘って延びているx方向の幅と、これらの間に配置されているソース/ドレイン拡散部とを有する。2つのステアリングゲートの間のスペースは、この2つのステアリングゲートが跨っている隣接したフローティングゲートの列間のx方向のスペースと同じかそれ以上である。これにより、ゲートをこのスペースに後に形成することができる。ステアリングゲートは、コンダクティブにドープされたポリシリコンの第2層をエッチングすることによって形成される。この第2層は、第1ポリシリコン層の全面上と適当な内部ポリシリコン層誘電体上にデポジットされたものである。
ステアリングゲートデコーダとドライバ回路21(図4参照)は、ライン23を介して全てのステアリングゲートに接続されており、バス25に供給されたアドレスと、ライン33の制御信号と、ドライバとセンス増幅器13からのデータとに応じて、それらの電圧を個別に制御する。
ワードライン91,92,93,94,95は、x方向に延びているとともに、各ワードラインをフローティングゲートの行に整列するy方向にスペースをおいてステアリングゲート群に跨って延びている。ワードラインは、コンダクティブにドープされたポリシリコンの第3層と、ステアリングゲートの間に露出した領域をエッチングすることにより形成される。第3層は、第2ポリシリコン層上に最初に形成された誘電体の上面全体にデポジットされたものである。ワードラインは、読み出し又は書き込みのために、その行内の全てのメモリセルの選択を許容する。メモリアレイの1つの行を別個に選択するために、選択ゲートデコーダとドライバ回路19(図4参照)が各ワードラインに接続されている。これにより、選択された行内の個々のセルについて、ビットライン、ステアリングゲートデコーダ、ドライバ回路13,21(図4参照)によって読み出し又は書き込みが可能になる。
前述の構造におけるゲートは、ドープされたポリシリコン材料によって構成されることが好ましい。しかしながら、上記の一又は複数の3つのポリシリコン層の代わりに、他の適切な電気伝導性材料を利用することもできる。例えば、ワードラインと選択ゲートが形成される第3層は、ポリサイド材料であってもよい。このポリサイド材料は、伝導性を高めるためにタングステンのような伝導性耐腐食性金属ケイ化物が上面に設けられたポリシリコンである。一般的に、ポリサイドによって構成される内部多結晶シリコン酸化物は適切でないために、ポリサイドは第1又は第2ポリシリコン層の代わりに利用されない。
図5と図6には、金属導体層が示されていない。通常、拡散部とポリシリコン要素は金属よりかなり低い伝導性を有している。このために、ポリシリコン要素と拡散部の長さ方向に沿った周期的な間隔をおいて、任意の中間層を介して各金属ラインに対して作成されたコネクションと共に、金属導電体がセパレート層内に含まれている。図5と図6の実施形態の全ての拡散部とポリシリコン要素は個別に駆動されなければならない。このために、これらの金属ラインの数と拡散部とポリシリコン要素の数との間には、1対1の対応関係が一般的に存在する。
図7は、図6の構造の電気的等価回路を示す。等価な要素には、図5と図6の参照符号と同一の符号にプライム(’)を付加している。図示された構造と、それと隣り合う構造は、ソースとドレイン拡散部を共用する。
隣り合う拡散部49,51の間の基板内チャネルを介した伝導は、3つの異なる領域内の異なるゲート要素によって制御される。左側の第1領域(T1−Left)の直上にはフローティングゲート56が設けられている。左側の第1領域(T1−Left)に静電的(capacitively)に結合されたステアリングゲート81が設けられている。右側の第2領域(T1−Right)は、フローティングゲート57とステアリングゲート83によって、同様のマナーで制御される。T1−LeftとT1−Rightの間の第3領域T2は、ワードライン92の一部である選択ゲート99によって制御される。
拡散部49,51の間のチャネルを通る電子の伝導レベルは、これらの異なるゲート要素からそれぞれに対応するチャネル領域に与えられた電圧に起因する電界によって影響を受ける。フローティングゲートの電圧は、それによってもたらされるネット電荷のレベルに加えて、他のゲートとノードから静電的に結合された全てのディスプレイスメント電荷(displacement charge)に依存する。フローティングゲートの下のチャネル部分の通過を許容する伝導レベルは、そのフローティングゲートの電圧によって制御される。ソース/ドレイン領域のコネクションのために個々のセルを選択するためには、選択ゲート99の電圧が、単純にチャネルをオフし、目標伝導レベルに切り換える。一実施形態では、個々のメモリセルは、チャネルの3つの異なる領域(T1−Left、T2、T1−Right)のそれぞれに設けられている直列接続された3つのトランジスタとして考慮される。別の実施形態では、各フローティングゲートは、メモリセルとして考慮できる。
シングルメモリセルの2つのフローティングゲートの中の1つは、プログラミング又は読み出しのために選択される。この選択は、セルの他の(選択されていない)フローティングゲートによってどのような電荷(その状態に依存する)がキャリーされるのかにかかわらず、その他のフローティングゲートのチャネル領域を適切に伝導させるのに十分な電圧をその他のフローティングゲートのステアリングゲートに供給することによって行なわれる。そのセルの選択トランジスタがそのワードラインに供給された十分な電圧によってターンオンされる場合、そのセルにダイレクトされた読み出し又はプログラミング動作に応答するのは、選択されたフローティングゲートのみである。1つのフローティングゲートの状態の読み出しの間にソースとドレインの間のセルを流れる電流は、他のフローティングゲートの電荷にかかわらず、選択されたフローティングゲートによってキャリーされる電荷に依存する。選択されなかったフローティングゲート下のチャネル部分に伝導性を付与するためにそのフローティングゲート上のステアリングゲートに供給される電圧は、同じステアリングゲートを介して隣り合うセルの隣り合うフローティングゲートにもカップルされる。それにもかかわず、その隣り合うセルのインパクトは、そのセルの他の要素に適切な電圧条件を付加することによって回避される。
図5〜図7の実施形態のフローティングゲートは、そのビットライン(ソースとドレイン拡散部)と、その2つのステアリングゲートとに電圧を供給することによってプログラミングされることが好ましい。この2つのステアリングゲートは、選択されたフローティングゲート内にゲート誘電体に介して注入される、基板チャネル領域内に十分なエネルギを得るために電子を生成させる。このための好ましい技術は、米国特許第5313421号と第5712180号の「Source side injection」に開示されている。これらの両方の全体は、本願明細書に組み込まれる。
図5〜図7の実施形態のメモリセルを消去するためには、選択されたフローティングゲートからワードラインのチャネル又は選択ゲートのいずれかに電子が除去されように、メモリセルがデザインされる。選択ゲートに向けて消去される場合、フローティングゲートエッジ103と選択ゲート99の間の誘電体は、薄い酸化層であることが好ましい。この酸化層は、フローティングゲートエッジ上で成長させたものである。セルの様々な要素に適切な電圧が付加されると電子がこの酸化層をトンネルする。同じものが、フローティングゲートエッジ105と選択ゲート99の間にも設けられる。
選択ゲート99に向けて消去されるようにデザインされている場合、選択ゲートと基板表面47の間のゲート誘電体に結果としてかかる電圧勾配が、その誘電体のブレークダウンレベルより十分に低く維持されるように注意しなければならない。ワードラインは、一般的に10ボルトを超えるレベル、場合によっては20ボルト、さらにはそれ以上に上昇するとともに、セルに付加される他の電圧は、一般的に5ボルト又はそれ未満であるからである。選択ゲート誘電体にかけての電圧勾配は、それを厚くすることによって、あるいは、通常に使用されるものより高い誘電定数を有する選択ゲート誘電体を選択することによって低減することができる。後者は、選択トランジスタの動作に逆方向の影響を及ぼす可能性がある。
セルがチャネルに向けて消去される場合、図5〜図7の実施形態が若干ながら変更される。(1)選択ゲート99と、隣り合うフローティングゲートエッジ103,105との間の誘電体が、選択ゲートに向けたフローティングゲートの消去を防ぐために厚くされる。(2)電子トンネルを促進するために、フローティングゲートの下側と基板表面47との間のゲート誘電体が厚くされる(例えば約100オングストローム)。(3)ブロックとして同時的に消去されるセルが、列に沿って、あるいは、ブロック内でグループ化される。一実施形態では、ブロックは、基板上で他のブロックから隔離される。これは、一般的にトリプルウェルプロセスによって実行される。nウェルがp基板内に形成され、セルのブロックをキャリーするpウェルがnウェル内に配置される。nウェルは、このブロックを他のブロックから隔離する。適切な消去電圧は、消去されるべきブロックのpウェルに供給され、他のブロックは影響されない。
図4〜図7の構造に関するさらなる詳細は、米国特許第6151248号に開示されている。この全体は、本願明細書に組み込まれる。
図4〜図7のメモリ構造は、適切なメモリセルの一例である。本発明は、これ以外の構造を利用して実現することもできる。例えば、一実施形態では、電荷保存型誘電体を含む多層誘電体を利用してもよい。本発明の別の実施形態では、NAND型フラッシュメモリセル又はNOR型フラッシュメモリセルを利用することができる。関連するNAND型フラッシュメモリとその動作例を以下に列挙する;米国特許第5570315号、米国特許第5774397号、米国特許第6046935号、米国特許第5386422号、米国特許第6456528号、及び、米国特許出願番号09/893277(公開番号US2003/0002348)。これらの全体は、本願明細書に組み込まれる。以下に挙げる特許は、NOR型フラッシュメモリについて説明している;米国特許第5095344号、第5172338号、第5890192号、第6151248号。これらの全体は、本願明細書に組み込まれる。これ以外のタイプのフラッシュメモリセルや、これ以外のタイプの非揮発性記憶要素を利用することもできる。
III.メモリアレイ動作
図8の表は、アレイ11のメモリセルのプログラミング、読み出し、及び消去のための動作電圧の例を示す。ライン(2)は、選択ゲート(ワードライン)に向けて消去されるタイプのセルの動作に関連する。ライン(8)は、基板に向けて消去されるタイプのセルの動作に関連する。これらの例では、セルが内部に形成される基板部分はp型ドーピングを含んでおり、ビットライン拡散部はn型である。これらの動作において、基板はグランド電位に維持される。
図8の表のライン(1)では、選択されない行に電圧条件が付与される。選択されない行のワードラインは、ドライバ回路19(図4)によって、グランド電位に配置される。ビットライン(拡散部)の列の「X」と、選択されない行に沿ったセルのステアリングゲートの「X」は、これらの要素上の電圧は無視することができるものであることを示している。この例では、アレイ要素のための回路13,19,21のいずれからも負電圧が生成されていないために、行の選択ゲートのゼロ電圧によって、その行に沿ったセルが使用可能になることはない。電流は、それらのチャネルを流れることはできない。異なる行の同一列における別のセルのプログラミング又は読み出しは、そのワードラインにゼロ電圧を有する行に影響を与えることなく実行することができる。
表の第2ライン(2)は、ワードラインの選択ゲートに向けて消去されるようにデザインされたタイプのセルを消去するための電圧を示す。10〜25ボルト(例えば20ボルト)の高消去電圧Vが、フローティングゲートが消去されるべき全てのワードラインにドライバ回路19によって供給される。一般的に、これは、多数の連続した行にある全てのセルを含む少なくとも1つの定義されたセルブロックである。しかしながら、より少ない又はより多いセルを同時に消去してもよい。あるいは、消去ブロックをセルの単一行に限定することも可能である。
1つ又はそれ以上の選択された行に沿ったセルのステアリングゲート群は、ドライバ回路21によって低電圧(例えばゼロ電圧)に設定される。これにより、ステアリングゲートとフローティングゲートの間の高度の静電結合によって、フローティングゲートの電圧が低レベルに維持される。その結果、フローティングゲート群とそれらに対応する選択ゲート群(ワードライン群)の間の電位差は、中間誘電体を電子がトンネルすることを引き起こす。消去についてのさらなる情報は、米国特許第5270979号に開示されている。この全体は、本願明細書に組み込まれる。
図8の表のライン(3)と(4)は、メモリセルの2つのフローティングゲートの状態を読み出すための電圧の例を示す。ライン(3)は、左フローティングゲートのためのものである。ライン(4)は、右フローティングゲートのためのものである。それぞれにおいて、セルは、そのセルの選択トランジスタをオンして電流がチャネルを流れることを可能とする十分な電圧VSRにまで上昇された選択ゲートによって、使用可能になる。一般的に、この電圧は、選択トランジスタの閾値より1ボルトほど高い。
図8の表のライン(3)と(4)に示すように、1つのフローティングゲートの電圧状態を読み出す場合、読み出されるフローティングゲート上のステアリングゲートは、それに供給された電圧Vを有する。他のフローティングゲート上のステアリングゲートは、VBRまで上昇される。電圧VBRは、非選択フローティングゲート下のチャネル部分が十分にコンダクティブになるように、十分に高くされる(例えば8ボルト)。選択されていないフローティングゲートのプログラム状態に依存しない。選択フローティングゲートの状態を読み出すためには、読み取りステップの間に電圧Vは複数の電圧(以降で説明する)にステップアップされる。定義された閾値をセル電流が通過する際の値が、回路13のセンス増幅器によって検出される。
図8の表のライン(5)と(6)は、デュアルフローティングゲートセルの1つのフローティングゲートにプログラミングするための電圧を示す。動作セルを選択するために、選択ゲートが、セルの選択トランジスタをオンするまで十分に上昇される。ソース側インジェクションプログラミング速度を最適化するために、電圧VSPは、読み出し中に使用される電圧VSRとは異なるものであってよい。一例を挙げると、選択トランジスタの閾値が1ボルトである場合、VSPは2.2ボルトである。プログラミングされるべき選択フローティングゲートと同じ側のセルのビットライン拡散部は、プログラミングの間に最大ビットライン電圧(例えば5ボルト)にまで上昇される。この電圧は、ソース側ホットエレクトロンプログラミングを得るために、フローティングゲートチャネルと選択ゲートチャネルの間のギャップに亘って適切な領域を形成するために十分なところまで上昇される。プログラミングの間に、非選択フローティングゲートと同じ側のセルのビットライン拡散部は、ゼロボルト又はゼロボルトに近いボルトにバイアスされる。
非選択フローティングゲート上のフローティングゲートは、その非選択フローティングゲート下のチャネル領域が十分にコンダクティブになるのに十分な電圧VBPにまで上昇される(例えば、VBP=8ボルト)。これにより、非選択ゲートに存在するフローティングゲート電圧の大きさにかかわらず、フローティングゲート電圧のプログラミングウインドウ範囲内においてターゲットフローティングゲートのプログラミングが干渉されない。
ホットエレクトロンプログラミングのために、選択フローティングゲート上ステアリングゲートに電圧Vが供給される。この電圧Vは、その下のチャネル内に所望の領域条件の作成するのをアシストする電圧まで選択フローティングゲートを駆動するレベルである。例えば、電圧Vは、5〜12ボルトであってもよい。この電圧は、プログラミング動作の間に変化してもよい。一般的に、適切なプログラミング電圧のセットが消去されたセルにまず供給され、適切な読み出し電圧のセットが供給される。さらに、選択フローティングゲートが所望の電圧状態にプログラミングされたことを読み出しステップが示していない場合は、プログラミング電圧が再び供給される。このプログラミング電圧は、先のセットとは一部が異なっていてもよい。上記の所望の電圧状態は、バイナリ記憶素子のプログラミング状態、又は、マルチレベル記憶素子の可変記憶状態の1つのプログラミング状態でもよい。
図8の表のライン(7)は、プログラミングのために選択された行内のセル群に供給される電圧を示すが、これらのセル自体はプログラミングされない。例えば、アレイの区画化された部分の1つの行内で同時にプログラミングされるセル群と、プログラムされないセル群は、交互に配置される。図8の表のライン(7)の電圧が供給されるのは、これらのプログラミングされないセル群である。対向するビットライン拡散部は、電流がチャネル内に流れ込むことを防止するために同じ電圧に維持される(例えば両方がゼロボルト又は両方が5ボルト)。ライン(1)で用いたものと同様に、「x」は、これらのセルのステアリングゲート上の電圧は無視することができるものであることを示す。
基板に消去するようにデザインされたメモリアレイの場合、ライン(2)の消去電圧条件の代わりにライン(8)の消去電圧条件が適用される。消去されるセルのブロックを含んだPウェルと、これを包囲するnウェルとが、例示される10〜25ボルト(例えば20ボルトが好ましい)の範囲内で消去電圧Vまで上昇される。セルの読み出し及びプログラミングの間において、そのウェルはグランド電位に維持される。基板と選択ゲートの間の過剰な電位差は、誘電材料にダメージを与えたり、セルの動作に望ましいものより誘電材料を厚くしたりする。このために、消去の間において選択ゲートに正電圧VSEを付加することによって、選択ゲート誘電体に付加される電圧を低減することが好ましい。このような電圧は、選択ゲートから隣接した選択ゲート(消去されることが求められるもの)に部分的に結合しているために、上昇し過ぎたり、フローティングゲートと基板チャネルの間の電圧差(これは消去のために高くされる)が極端に低減されたりすることはない。VSEの範囲は、Vのレベルに応じて3〜12ボルトであってもよい。Vが20ボルトである場合には、VSEが10ボルトであることが好ましい。
図8に示す各値は例である。当業者は、他の適当な値や方法を使用して、メモリシステムを動作させることができる。
IV.雑/ファインプログラミング
図9Aは、閾電圧(VTH)と時間のグラフ、及び、ビットライン電圧(VBL)と時間のグラフを示す。図9Aは、雑/ファインプログラミング工程の1つの例がどのようにして実行されるのかを示す。雑/ファインプログラミング方法の様々な代替例や実施形態を使用することもできる。図9Aに示した方法では、雑フェーズを実行するプログラミング工程から開始する。メモリセルの閾電圧がVLAに到達すると、メモリセルは、セルのビットライン電圧をVに上昇させてファインプログラミングフェーズにはいる。これにより、メモリセルは、プログラミングが遅くなる。ファインプログラミングフェーズの間は、雑プログラミングフェーズと比較してプログラミングが遅くなる。これにより、ファインプログラミングフェーズ中において、プログラムステップ毎の閾電圧の変化が小さくなる傾向にある。メモリセルは、メモリセルの閾電圧が目標の閾電圧レベルVに達するまで、ファインプログラミングフェーズを継続する。メモリセルの閾電圧がVに達すると、そのセルに対するさらなるプログラミングを禁止するために、メモリセルのビットライン電圧がVddに上昇する。一実施形態では、VLAは、Vよりも1つのVpgmステップサイズだけ低い。別の実施形態では、VLAとVの間の差は、より大きい。
図9Aに示す工程は、1つの雑プログラミングモードと1つのファインモードを示す。別の実施形態では、複数の雑モード及び/又は複数のファインモードが利用される。例えば、図9Bは、3つのモードを示す。別の実施形態では、3つより多いモード数を用いることができる。図9Bの実施形態は、第1モード(最も雑なモード)を示している。この第1モードは、メモリセルの閾電圧がVLA2に達するまで実行される。この場合、メモリセルは、中間プログラミングモード(最も雑なモードよりファインであって最もファインなモードより雑)に移行し、ビットラインはVI1に達する。メモリセルは、その閾電圧がVLA1に達するまで中間モードに残る。メモリセルは、最もファインなプログラムモードに入り、ビットラインがVI2に達する。メモリセルは、その閾電圧がVに達するまで、最もファインなプログラムモードに残る。メモリセル閾電圧がVに達すると、メモリセルに対するそれ以上のプログラミングを禁止するために、ビットラインがVddまで上昇する。別の実施形態では、上述したように、3つより多いモード数を用いることができる(例えば、4モード、5モード、その他)。
図10は、雑/ファインプログラミング工程の一実施形態を説明するためのフローチャートである。ステップ202では、プログラミングされるべきメモリ部分が選択される。一実施形態では、これは、メモリ構造に適した1つ又はそれ以上の書き込みユニットである。書き込みユニットの一例は、ページとして言及される。別の実施形態では、他のユニット及び/又は他の構造を使用することできる。
ステップ204では、プレプログラミング工程が時々利用される。アドレスされたメモリセルは、記憶要素の損傷を安定させて次の消去のためにより均一の開始点を提供するために、非データ依存プログラミング(non-data dependent programming)が与えられる。
ステップ206では、使用する記憶要素のタイプに応じて、消去工程が実行される。適切なスマートな消去工程の一例は、米国特許第5095344号に記載されている。この全体は、本願明細書に組み込まれる。
ステップ208は、実際の書き込みフェーズのためにより均一な開始範囲内に、消去されたメモリセルの閾電圧を位置させるようにデザインされたソフトプログラミング工程を含んでいる。一実施形態では、消去中(あるいははソフトプログラミング中)に任意のメモリセルがベリファイに失敗した場合、これらのセルを論理アドレススペース外にマッピングすることができる。この場合、メモリは、データ条件プログラミングフェーズのために準備された状態になる。
ステップ210では、プログラミング電圧(Vpgm)が初期値に設定される。例えば、いくつかの実施形態では、図1の階段波形が使用される。ステップ210は、初期パルスを設定することを含む。ステップ210では、プログラムカウンタ(PC)がゼロに初期化される。
ステップ220では、プログラムパルスが付加される。例えば、1つの反復のステップ220は、図3のプログラムパルス10Aの付加することを含む。
ステップ222では、雑ベリフィケーションプロセスとファインベリフィケーションプロセスが同時に実行される。ファインプログラミングについてベリファイされている1つ又はそれ以上のメモリセルと時間的にオーバーラップする状態の中で、1つ又はそれ以上のメモリセルが雑プログラミングについてベリファイされる。例えば、バイナリメモリセル(例えば2状態)において、いくつかのメモリセルが雑プログラミングについてベリファイされる間に、他のメモリセルがファインプログラミングについてベリファイされる。マルチ状態メモリセルにおいて、いくつかのメモリセルが特定状態の雑プログラミングについてベリファイされる間に、他のメモリセルはその同じ特定状態のファインプログラミングについてベリファイされる。マルチ状態メモリセルに関する他の実施形態では、他のメモリセルがファインプログラミングについてベリファイされる間に、いくつかのメモリセルが雑プログラミングについてベリファイされる場合、それと同時に異なるメモリセルがプログラミング/ベリファイされてもよい。ステップ222の詳細は後で述べる。
ステップ224では、全てのメモリセルについてそれらの閾電圧が最終目標電圧に達したとベリファイされたのか否かが決定される。最終目標電圧に達している場合、ステップ226においてプログラミング工程が完了する(状態=パス)。全てのメモリセルがベリファイされていない場合、プログラムカウンタ(PC)が20未満であるのか否かが決定される。プログラムカウンタ(PC)が20未満でない場合(ステップ228)、プログラム工程は失敗である(ステップ230)。プログラムカウンタ(PC)が20未満である場合、ステップ230において、プログラムカウンタ(PC)を1つ増加させ、プログラミング電圧が次のパルスにステップアップする。ステップ230を終えると、ステップ220へ戻り、次のプログラムパルスがメモリセルに付加される。
V.ベリフィケーション
図11は、ファインベリフィケーションと同時的に雑ベリフィケーションを実行する工程(図10のステップ222参照)の一実施形態を説明するためのフローチャートを示す。
図11のステップ302では、特定のフラッシュメモリセルが雑プログラミングモードにあるのか、あるいは、ファインプログラミングモードにあるのかを決定するために、システムによってレジスタ(または他の記憶装置)がチェックされる。メモリセルが雑フェーズにある場合(ステップ304)、ステップ306において雑ベリフィケーションが実行される。図9Aの例の場合、メモリセルは、その閾電圧を電圧VLAと比較させることができる。メモリセルの閾電圧がVLAより大きい場合(ステップ308)、メモリセルは雑ベリフィケーションテストをパスする。メモリセルの閾電圧がVLA未満の場合、メモリセルはベリフィケーションテストをパスしない。メモリセルが雑ベリフィケーションテストをパスしなかった場合、メモリセルは、雑プログラミングモードを継続する(ステップ310)。メモリセルが雑ベリフィケーションテストをパスした場合、メモリセルは、プログラミングモードからファインプログラミングモードに移行する(ステップ312)。
ステップ304においてメモリセルがファインプログラミングモードにあると決定された場合、ステップ320においてファインベリフィケーション工程が実行される。図9Aの例の場合、メモリセルの閾電圧は、最終的な目標閾電圧Vと比較されることができる。メモリセルの閾電圧がターゲット電圧Vより大きい場合(ステップ322)、ファインベリフィケーションテストにパスし、このメモリセルに対するさらなるプログラミングが禁止される(ステップ324)。メモリセルのさらなるプログラミングを禁止するための一実施形態では、ビットラインVddを上昇させる。メモリセルをロックアウトする手段を利用してもよい。(例えばメモリセルの閾電圧が目標電圧Vに達しなかったために)ステップ322においてベリフィケーションテストに合格しなかった場合、メモリセルのさらなるプログラミングが禁止されない(ステップ326)。
図11の工程は、個々のセルに対して実施される。多くの実施形態において、複数のセルに同時的にプログラミングが実行される。これにより、図11の工程が複数のセルに同時的に実行される。このプログラミングの間に、いくつかのセルは雑プログラミング工程にあるとともに、これ以外のセルはファインプログラミング工程にある。そのために、セル群の中のいくつかは雑ベリフィケーションステップ306を実行し、他のセル群はファインベリフィケーションステップ320を実行する。例えば、状態2(図2参照)にプログラムされており1セットのセルは、他のセルより高速にプログラミングするいくつかのセルを有する。高速にプログラミングされるセルは、ファインフェーズにより早く移行することができる。雑フェーズにおけるメモリセルがそれらの閾電圧を状態2のVLAと比較させる間に、ファインフェーズにおけるセルはそれらの閾電圧をベリファイされた状態2のVと比較させる。
それぞれのベリフィケーションステップにおいて任意のセルが雑ベリフィケーションのみを実行させるか、あるいはファインベリフィケーションのみを実行させて、両方が実行されることはないために、図11の工程は効率的である。これに対して、従来のシステムは、雑ベリフィケーションとファインベリフィケーションの両方を順に実行する。
本発明の一実施形態では、メモリセルがマルチ状態セルであって、複数の状態のベリフィケーションテストを実行しなければならない場合には、複数の状態について雑ベリフィケーションが実行されるか、複数の状態についてファインベリフィケーションが実行される。しかしながら、特定のメモリセルに対して、複数の状態について雑ベリフィケーションとファインベリフィケーションの両方が実行されることはない。例えば、図3では、7つの証明パルスを示している。8状態メモリセルでは、7つのベリフィケーションパルスが雑ベリフィケーション工程で使用されるか、7つのベリフィケーションパルスがファインベリフィケーション工程で使用される。いくつかの従来技術の装置では、8状態の場合、14のベリフィケーションパルスが必要となり、そのうちの7つのパルスは雑フェーズで使用され、他の7パルスはファインフェーズで使用される。図11の工程は、必要なベリフィケーションパルスの数を減少させることができる。
図12は、図11の工程の一実施形態を実現するために使用される構成要素を示すブロック線図である。図12は、1ビットライン用の回路を示す。一実施形態では、ビットライン毎にこの回路が設けられる。別の実施形態では、1対のビットライン毎にこの回路が設けられる。図12は、スイッチ400とキャパシタ402に接続されたビットラインを示す。キャパシタは、グランドに接続されている。スイッチ400は、マルチプレクサ404からの信号を入力する。マルチプレクサ404からの信号は、プログラミングに使用される。マルチプレクサ404は、2つの信号VpcとVpfを入力し、C/Fレジスタ420からの指示に基づいて、これらの2つの信号の中から1つを選択する。スイッチ400は、センス増幅回路410の入力部に接続されている。信号Vrefも、センス増幅回路410の入力部に接続されている。センス増幅回路410の出力部は、C/Fレジスタ420にデータを提供する。C/Fレジスタ420の出力部は、マルチプレクサ404とロックアウトレジスタ422とマルチプレクサ430にデータを提供する。マルチプレクサ430は、信号TcとTfを入力し、C/Fレジスタ420からのデータに基づいて、これらの2つの信号の中から1つを選択する。マルチプレクサ430の出力部は、センス増幅回路410の別の入力部に接続されている。
図12の構成要素の動作は、ビットライン放電ベリフィケーション工程に基づいている。まず、ビットラインがチャージされる。次に、そのビットラインに接続されるメモリセルの制御ゲート(又はステアリングゲート)にベリフィケーションパルスが供給される。その後に、ビットラインが放電することが許容される。放電のレートに基づいて、メモリセルが特定の閾電圧レベルよりも大きいのか小さいのかが決定される。
図13は、ビットライン電圧(Vb1)と時間のグラフを示す。一実施形態では、ビットラインは、ある時間Tに亘って放電することが許容される。時間Tにおいて、ビットラインの電圧が基準電圧Vrefと比較される。このビットライン電圧がVrefより大きい場合、メモリセルは、より低いドライビングキャパビリティを有し、目標閾電圧を超えてプログラムされる。時間Tにおいてビット電圧がVrefより小さい場合、メモリセルの閾電圧は、目標閾値より小さくなる。別の実施形態では、固定された時間Tの後にビットライン上の電圧を測定する代わりに、ビットラインがVrefに達するまで放電することが許容される。その後に、閾電圧が目標閾値より大きいのか小さいのかを決定するために、この放電時間が1セットの所定時間と比較される。
一実施形態では、雑/ファイン方法を用いてプログラミングされているセルにおいて、雑プログラミングに1つのVrefを持たせて、ファインプログラミングに別のVrefを持たせることによって、雑とファインの間で比較点を変えることができる。他の実施形態では、雑プログラミングに関連した放電について1つの時間T1が設定され、ファインプログラミングに関連した放電について別の時間T2が設定され、時間Tの長さが変えられる。別の実施形態では、1つのプレチャージ値が雑プログラミングに使用され、別のプレチャージ値がファインプログラミングに使用されるように、ビットラインに対するプレチャージが変えられる。なお、上述したことを組み合わせて利用することもできる。
別の実施形態では、電流コンパレータ(current comparators)を利用したスタティックセンシングアプローチ(static sensing approach)が利用される。この実施形態では、固定された基準Vrefが、雑/ファインプログラミングに特化した1セットの基準電流に置き換えられる。与えられたメモリセルについて、基準電流がセル電流を超えると、関連するセンス増幅器が、目標電圧を超えてプログラミングされたセル閾電圧を表示する。さらなる情報は、米国特許第6222762号に記載されている。この全体は、本願明細書に組み込まれる。
図12に示す装置の一実施形態では、C/Fレジスタ420は、特定のメモリセルが雑プログラミングモードにあるのか、あるいは、ファインプログラミングモードにあるのかを示す1ビットレジスタである。メモリセルが雑プログラミングモードにある場合、プログラミングの間に、マルチプレクサ404は、スイッチ400を介して雑モードプログラミング電圧(Vpc)をビットラインに送る。メモリセルがファインプログラミングモードにある場合、マルチプレクサ404は、スイッチ400を介してファインモードプログラミング電圧(Vpf)をビットラインに送る。ベリフィケーションの間において、センス増幅器410は、ビットライン電圧と基準電圧Vrefを比較する回路を含む。ベリフィケーションの間において、メモリセルが雑モードにある場合、マルチプレクサ430は、C/Fレジスタ420に従って、雑時間ストロボ(coarse time strobe)Tcを選択する。
センス増幅器410は、ビットラインがTcで示される時間内に所定の基準値Vrefまで放電したのか否かを決定する。ビットラインがTcで示す時間内に所定の基準値Vrefまで放電したことによって、メモリセルについて雑ベリフィケーションテストにパスしたことをセンス増幅器が決定すると、メモリセルがファインプログラミングモードにあることを示すように変更する旨の信号が、C/Fレジスタ420に送られる。マルチプレクサ404,430は、セレクションを変更する。これにより、次にセルのプログラミングを行う際には、マルチプレクサ404は、電圧Vpfをビットラインに送る。次にベリファイオペレーションのための比較が行われる際には、マルチプレクサ430は、時間ストロボTfをセンス増幅器410に送る。
ファインモードの間にビットラインがTfで示す時間内で所定の基準値Vrefまで放電したことによって、ファインベリフィケーション工程が完了したことをセンス増幅回路410が決定すると、センス増幅器410は、C/Fレジスタ420にその旨を通知する。C/Fレジスタ420は、セルをさらなるプログラミングからロックアウト(禁止)すべきである旨をロックアウトレジスタ422に表示させる。
図14は、ベリフィケーションを実行するための第2実施形態である。1対のセンシング時間と固定基準電圧を使用してビットライン電圧の比較を実行する代わりに、1対の基準電流源が利用される。与えられたメモリセルにおいて、基準電流がそのセル電流を超えると、関連するセンス増幅器が、メモリセルが目標閾値条件を満たすようにプログラムされたことを表示する。これにより、C/Fレジスタ420の出力に基づいて、マルチプレクサ430は、雑フェーズ(Ic)のための電流源を供給するのか、あるいは、ファインフェーズ(If)のための電流源を供給するのかを選択する。
図15は、別の実施形態を示す。図15では、マルチプレクサ448が、雑プログラミングフェーズ(Vrc)のための基準電圧とファインプログラミングフェーズ(Vrf)のための基準電圧のいずれかを、センス増幅器410に供給するために選択する。この実施形態では、センス増幅器410が、C/Fレジスタ420のターンオンに基づいて、固定された時間(T)の後に放電しているビットラインの電圧とマルチプレクサ448からの電圧基準とを比較する。
VI.電流シンキング
上述したように、メモリセルを雑プログラミングモードからファインプログラミングモードに移行させるための1つの方法は、ビットラインの電圧を上昇させるというものである。ビットラインの電圧を上昇させると、プログラミングが遅くなる傾向がある。これにより、ファインプログラミングモードにあるメモリセルの閾電圧の上昇が小さくなり、よりタイトな閾電圧区分が達成される。
メモリセルを雑プログラミングフェーズからファインプログラミングフェーズに移行させる別の手段は、メモリセルのチャネルを流れる電流量を変えるものである。プログラミングの間において、選択ゲートの伝導特性に従って、メモリセルのソースが、グランドより上昇する。電流シンクはソースに接続されることができ、チャネルを流れる電流量をコントロールすることができる。シンキング電流が大きいほど、チャネルを流れる電流も大きくなり、メモリセルのプログラミングも高速になる。電流シンクが低減されると(シンキングする電流が減少すると)、チャネル内の電流が低下し、メモリセルのプログラミングが遅くなる。例えば、雑フェーズの間に電流シンクが1000nAほどシンキングし、その後のファインフェーズの間に100nAほどシンキングした場合、チャネル電流が元の値の1/10まで低下し、メモリセルのプログラミング速度が1/10になる。
図16は、関連する閾電圧の増加(Vt)と階段制御ゲートプログラミングパルスを示すグラフである。これは、1000nAの電流シンキングとともに一連の250mV階段制御ゲートプログラミングパルスに従う。これにより、安定した状態のプログラミングコンディションを設定する。
図16は、異なる電流シンクを利用してプログラミングされるメモリセルについて、5つのプログラミング曲線500,502,504,506,508を示す。グラフ500のメモリセルは、安定した状態のプログラミング動作を継続し、1000nAの電流シンクを有する。曲線502のメモリセルは、562nAまで低下した電流シンクを有する。曲線504のメモリセルは、316nAまで低下した電流シンクを有する。曲線506のメモリセルは、178nAまで低下した電流シンクを有する。曲線508のメモリセルは、100nAまで低下した電流シンクを有する。図16のグラフに見られるように、電流シンクが大きいほど、メモリセルのプログラミングが高速化する。例えば、第1プログラムパルスの後に、曲線508のメモリセルの閾電圧が20mv上昇し、曲線506のメモリセルの閾値電圧が33mv上昇し、曲線504のメモリセルの閾値電圧が68mv上昇し、曲線502のメモリセルの閾値電圧が112mv上昇し、曲線500のメモリセルの閾値電圧が234mv上昇する。これらは、制御ゲートプログラミングステアケース毎に250mvの安定的な状態のリスポンスを反映する。
第2プログラミングパルスの後に、曲線508のメモリセルが47mvの閾電圧を有し、曲線506のメモリセルが90mvの閾電圧を有し、曲線504のメモリセルが159mvの閾電圧を有し、曲線502のメモリセルが270mvの閾電圧を有する。第3プログラミングパルスの後に、曲線508のメモリセル閾電圧が87mvになり、曲線506のメモリセルの閾電圧が159mvになり、曲線504のメモリセルの閾値電圧が271mvになる。第4プログラミングステップの後に、工程508のメモリセルは144mvの閾電圧を有し、曲線506のメモリセルは249mvの閾電圧を有する。第5プログラミングステップでは、曲線508のメモリセルの閾電圧が221mvである。
図16を参照して説明したように、電流シンキングを低下させることにより、プログラミング速度を遅くできる。一実施形態では、2つの電流シンクの変更を利用して、雑モードとファインモードを変更する。例えば、雑モードは大きな電流シンク(例えば1000nA)を有し、ファインモードはこれよりも小さな電流シンク(例えば100nA)を有する。あるいは、雑モードに電流シンクを設けず、ファインモードに電流シンクを設けることによって、プログラミング速度を低減することができる。これ以外の構造も利用することができる。
図17は、右ビット又は制御ライン(BLright、端末51’)に接続された電流シンク600を図7のメモリ要素に追加したものである。図17では、フローティングゲート56’がプログラミングされる。いくつかの実施形態では、制御ライン51’と49’の両方がビットラインであると考えられる。別の実施形態では、端末51’の制御ラインがソースライン又は別の制御ラインであると考えられる。
電流シンク600は、C/Fレジスタ420(上記参照)に接続されている。一実施形態では、電流シンク600は、可変電流シンクである。即ち、電流シンク600は、レベルの異なる電流をシンクすることができる。例えば、電流シンクは、一方がファインモード用であって他方が雑モード用である2つの異なるレベルの電流をシンクすることができる。C/Fレジスタ420からの指示に基づいて、適切な電流シンク値が選択される。例えば、C/Fレジスタ420によってフローティングゲート56’が雑モードにあることが示されると、電流シンク600は、雑モードに適した電流シンクを選択する。C/Fレジスタ420によってフローティングゲート56’がファインモードにあることが示されると、電流シンク600は、ファインモードに適したシンク値を選択する。別の実施形態では、電流シンク600は、電流をファインモード用にシンクするためのみに利用される。この場合、端末51’とグランドサプライの間には、雑モード中に電流シンク600をバイパスするためのスイッチが設けられる。このスイッチは、C/Fレジスタ420に記憶される値に基づいて制御される。図17の実施形態では、左ステアリングゲート81’にプログラミング電圧(例えば上述した階段制御ゲートプログラミング電圧)が供給される。
別の実施形態では、図17の電流シンク600は、マルチ状態メモリセルの各状態について雑な値とファインな値の異なるセットをシンクすることができる。7つのプログラミング状態がある場合、電流シンク600は、14(オーバラップが存在する場合にはこれ未満)の異なる電流レベルをシンクすることができる。あるいは、14(オーバラップが存在する場合にはこれ未満)の異なる電流シンクが存在してもよい。異なる状態のために異なるセットの電流シンク値を採用すると、より効率的なプログラミング工程が可能となる。必要なプログラミングパルスが少なくなり(例えば200mVステップサイズ)、ヘビーにプログラムされた(例えば状態7にプログラムされた)メモリセルのプログラミングが高速化する。この場合、より低い状態にプログラミング(例えば状態1にプログラミング)することが目標とされたセルがオーバープログラムされることがない。
上述したスキームの一例は、上記のスマートベリファイスキームを利用するのではなく、各プログラミングパルスの後に全ての状態に対してベリファイしてもよい。
以下の表1は、電流シンク値のセットの一例を示す。ファインモードには2つのオプションが設けられていることに留意するべきである。ファインモードをデザインする電流デザイナは、ファインモードにおけるプログラミングをどの程度遅くさせたいのかに基づいて、いずれかのオプションを選択することができる。オプション2は、雑モードからファインモードに移行する際にプログラミングがより遅くなるものである。
Figure 2007520029
state−to−stateセパレーションは、state−to−stateマージンを比較される任意の2つのスキームと同一に維持しながら、プログラミング区分をタイトにすることができる程度と同じ程度まで低減することができる。このために、以下の表2は、400mVのstate−to−stateセパレーションによって7つの状態のプログラミングするために必要な一定の電流シンク値の範囲を示す。
Figure 2007520029
上記の電流シンク値のセットは例示されたものであり、特定の実施形態に応じて異なる値を利用することができる点に留意するべきである。ファインモードの電流シンキングに利用される多くの値は、別の状態の雑モードに利用される電流シンク値と同じである。例えば、ファインモード(オプション1)の状態5の電流シンク値と、雑モードの状態4の電流シンク値は、共に117.40nAである。このオーバーラップによってこの特徴を実現するために必要なロジックが減少し、いくつかのケースでは電流シンクの数又は電流シンク(群)の複雑性が減少する。
図18は、スイッチ620を制御するためにC/Fレジスタ420を利用する別の実施形態を示す。スイッチ620は、2つの電流シンク622,624の中から1つを選択する。電流シンク622は雑モードのための電流をシンキングし、電流シンク624はファインモードのための電流をシンキングする。C/Fレジスタ420は、フローティングゲート56’が雑モードでプログラミングされている旨を表示する場合、電流シンク622を選択することを示す信号をスイッチ628に送る。フローティングゲート56’がファインモードでプログラミングされている場合、C/Fレジスタ420は、電流シンク624を選択するようにスイッチ620に指示する。雑プログラミングモードからファインプログラミングモードへの切り換えが、電流シンクの切り換えによって実行される。ファインモードの電流シンク624は、雑モードの電流シンク622よりも少ない電流をシンクすると考えられる。
図19は、ここで述べている電流シンキング技術を利用するプロセスを説明するためのフローチャートである。ステップ650では、メモリセルは、雑プログラミングモードでプログラミングを開始する。雑プログラミングモードは、第1閾電圧ベリフィケーションレベルに達するまで継続する。ステップ652では、雑プログラミングモードを実行するために、電流シンク機構が雑モード電流シンキングセッティングにセットされる。いくつかの実施形態では、雑モードにおいて電流シンキングが利用されない。ステップ652は、図17における電流シンク600の適切な制御、又は、図18における電流シンク622の選択を含むことができる。ステップ650とステップ652は、雑モードが完了するまで継続する(ステップ652の下の矢印が点線状になっているのはこのためである)。
雑ベリフィケーションレベルに達したために雑モードが完了すると、ステップ654においてファインプログラミングモードが開始される。ステップ656では、ファインプログラミングモードの一部として、電流シンクがファインモード電流シンキングセッティングにセットされる。一実施形態では、ステップ656は、図17における電流シンク600の適切な設定を含む。別の実施形態では、ステップ656は、図18における電流シンクの選択624を含む。図19の工程は、1つのメモリセルについてのものである。複数のメモリセルが図19の工程を同時に実行することができる。この場合、いくつかのメモリセルが雑プログラミングモードにあって他のメモリセルがファインプログラミングモードにある状態になる。
この電流シンキング技術と図19の工程は、図17と図18に示すものに加えて、別タイプのメモリセルにおいても使用することができる。例えば、図17と図18は、1つのメモリセルについて複数のデュアルフローティングゲートを備える。この電流シンキング技術は、フローティングゲートを1つしか有していないメモリセルにおいても利用することができる。この場合、電流シンクは、1つのフローティングゲートのソース側に接続されることが好ましい。さらに、電流シンキング技術は、2つより多いフローティングゲートを有するメモリセルにおいて利用することができる。
一般的に、電流シンクは、プログラミングされているフローティングゲートに対してソース側に供給される。しかしながら、別の実施形態では、別の制御ラインに接続され、この制御ラインがプログラミング速度を統治する。例えば、いくつかの構造では、ソースとドレインの指定は任意でもよく、本発明はソース側に限定されるものではない。
上記の雑/ファインプログラミングの電流シンクの利用は、上記の同時的に実行される雑/ファインベリフィケーション工程と組み合わせることができる点に留意するべきである。別のモードでは、雑モードに対してファインモードに移行する電流シンク処理は、上記の同時的に実行される雑/ファインベリフィケーション工程がなくてもよい。さらに、この電流シンク技術(同時的に実行される雑/ファインベリフィケーションと組み合わせてもよいし組み合わせなくてもよい)は、上記のスマートベリフィケーション工程の有無にかかわらず利用することができる。さらに、スマートベリフィケーション工程は、雑/ファイン間を変更するために電流シンキングを利用せず、同時的に実行される雑/ファインベリフィケーション工程と共に利用することができる。
VII.チャージパケット測定
図20〜図25を参照して、メモリセルをファインプログラミングモードに移行させる別の実施形態のセットを説明する。これらの実施形態は、メモリセルのプログラミングのために使用可能である電荷を制限することによって、ファインプログラミングモードを提供する。
例えば、図20は、フローティングゲート56’がプログラミングされている構成の図7のメモリセルを示す。ビットラインライト端末51’には、C/Fレジスタ420によって制御されるスイッチ700が取り付けられている。スイッチ700は2つの入力部を設けている。
第1入力部は参照符号702で示す。フローティングゲート56’が雑モードにあることをC/Fレジスタ420が示している場合、スイッチ700は、雑プログラミングモードの間にビットラインに接続される通常の構成要素である入力部702を選択する。即ち、ある実施形態では、雑プログラミングモードの間にチャージパケット測定が実行されない。
フローティングゲート56’がファインプログラミングモードにあることをC/Fレジスタ420が示している場合、スイッチ700は、端末51’をスイッチ708とキャパシタ710に接続する。キャパシタ710の反対側は、基準電位(例えばグランド)に接続されている。スイッチ708は、プレチャージサプライ(例えば電圧サプライ)712に接続されている。
構成要素708,710,712は、ファインプログラミングモードにおいて2ステップメソッドの一部として利用される。第1ステップでは、コンデンサ710は、スイッチ708を介して電源712に接続され、プレチャージ電圧にチャージされ、プログラミングソースバイアスが実現される。第2ステップでは、キャパシタ710は、電源712から切断され、制御ゲートプログラミング電圧パルスが左ステアリングゲート81’に供給される。キャパシタ710内に蓄積されているプレチャージ電圧は、メモリセルを通る電流を介して放電し、エレクトロンがフローティングゲート56’内に注入される。キャパシタが十分に放電すると、ホットエレクトロン注入がストップし、プログラミングが終了する。これにより、キャパシタ710に蓄積される電荷の相対量は、プログラミングをどの程度実行するのかを制限する。
キャパシタにおいて相対的に電荷量が少ないということは、閾電圧の移動も少なくなることを意味する。例えば、同じ電圧値にプレチャージされた2倍の規模のキャパシタ(例えば2C)は、2倍の電荷を蓄積し、同じ電圧値にプレチャージされた静電容量を有するキャパシタCの2倍をプログラミングする。図20は、1ビットライン用の構成要素420,700〜712を示す。一実施形態では、各ビットラインに類似の構成要素のセットを設けることができる
図21は、2つのグラフを示す。上のグラフは、端末51’における電圧と時間を示す。下のグラフは、選択ゲートにおける電圧と時間を示す。時間tにおいてキャパシタ710がプレチャージされ、端末51’における制御ラインがプレチャージされる。時間tにおいて選択ゲートがオン状態になると、図20のキャパシタ710が電流のシンキングを開始し、その電圧が上昇し、電流の流れが低減する。最終的には、キャパシタが十分に放電すると、チャネル内の電流の流れが停止する。
図22は、上記のチャージ測定を実行するための工程の一実施形態のフローチャートである。ステップ740では、適切なプレチャージ回路が選択される。一実施形態では、ファインモードのみにプレチャージ回路が設けられ、雑モードにはプレチャージ回路は設けられない。さらなる実施形態では、雑モードに第1プレチャージ回路を利用し、ファインモードに第2プレチャージ回路を利用する。ステップ742では、プレチャージを許容するスイッチ(例えばスイッチ708)が、プレチャージを開始するために閉じられる。ステップ744では、スイッチが開かれ、プレチャージを終了する。ステップ746では、ステアリングゲートに供給されるパルスが供給され、選択ゲートがオン状態になることによって、キャパシタが十分に放電するまで、電流がチャネルを流れてエレクトロンがフローティングゲートに注入される。
図23は、別の実施形態のブロック線図を示す。この実施形態では、雑プログラミングモードに1つのプレチャージ回路を利用し、ファインプログラミングモードに別のプレチャージ回路を利用する。
スイッチ780は、端末51’に接続され、C/Fレジスタ420によって制御される。フローティングゲート56’が雑プログラミングモードにあることをC/Fレジスタ420が示している場合、スイッチ780は、構成要素782,784,786を選択する。フローティングゲート56’がファインプログラミングモードにあることをC/Fレジスタ420が示している場合、スイッチ780は、構成要素790,792,794を選択する。
プレチャージサプライ786がスイッチ782に接続され、これがキャパシタ784に接続されている。スイッチ782が閉じられると、プレチャージサプライ786は、雑プログラミングモードのためにキャパシタ784をチャージする。キャパシタ784のチャージの後にスイッチ782が開かれ、フローティングゲート56’をプログラミングするために、メモリセルを介して(スイッチ780経由で)キャパシタ784が放電することが許容される。
プレチャージサプライ794は、スイッチ790が閉じられている場合に、キャパシタ792をプレチャージするために使用される。キャパシタ792のプレチャージの後にスイッチ790が開かれる。これにより、キャパシタ792は、フローティングゲート56’をプログラミングするために、ファインプログラミングモードの間にメモリセルを介して放電することが許容される。
一実施形態では、プレチャージサプライ786はプレチャージサプライ794より低い電圧であるために、雑プログラミングモードのためのキャパシタ784がチャージされる値は、ファインプログラミングモードのためのキャパシタ792がチャージされる値よりも大きくなる。キャパシタのチャージ値が大きいほど、よりプログラミングされることになる。これにより、雑モードについてのプログラミング量が多くなり、ファインモードについてのプログラミング量が減少する。特定の要求、装置の最適化、シミュレーション、及び/又は装置特性、さらに、雑プログラミングとファインプログラミングの区別化のためのターゲットに基づいて、サプライとキャパシタの正確な値(電圧又は別タイプのサプライ)が決定される。
図24は、メモリセル内のチャージを測定するための別の実施形態を示す。図24は、可変プレチャージサプライ800に接続されたC/Fレジスタ420を示す。プレチャージサプライ800は、一方が雑プログラミングモードのためであって他方がファインプログラミングモードのためである少なくとも2つの異なるサプライレベルを供給することができる。C/Fレジスタ420における値に基づいて、スイッチ802に適切なレベルが供給される。スイッチ802は、キャパシタ804と端末51’にも接続されている。このために、雑プログラミングフェーズの間にフローティングゲート56’をプログラミングするために、プレチャージサプライ800は、キャパシタ804に雑チャージレベルを送る。ファインプログラミングモードの間にフローティングゲート56’をプログラミングするために、プレチャージサプライ800は、(雑チャージよりも比較的に小さい)ファインチャージを供給する。
図25は、上記のチャージ測定を実行するための別の実施形態を示す。図25の実施形態では、雑モードとファインモードの両方に共通のプレチャージサプライ848を使用する。しかしながら、2つの異なるキャパシタの中から一方を選択するために、スイッチ840が利用される。雑モードのプログラミングにはキャパシタ842が利用され、ファインモードのプログラミングにはキャパシタ842より静電容量が小さいキャパシタ844が利用される。スイッチ840は、C/Fレジスタ420に記憶されている値に基づいて、キャパシタ842と844の中から一方を選択する。
別の実施形態では、キャパシタを利用して制御ライン(例えば51’)をプレチャージすることによって、制御ラインを接地する。ステアリングゲートにパルスが供給されると、プレチャージがキャパシタに対する電流のシンキングを引き起こし、装置が最終的にシャットダウンするまで電圧が上昇する。キャパシタ内に電流が流れると、プログラミングを効率的に停止するために十分に高い値に達するまで端末51’における電圧が上昇する。このチャージ制限されたオペレーションは、プログラミングの間の各パルスについて実行される。
各パルスが供給された後に、メモリセルがベリファイされる。上記のチャージパケット測定技術は、上記のスマートベリファイ工程及び/又は同時的に実行される雑/ファインベリフィケーション工程と組み合わせて利用されてもよい。
別の実施形態では、同時的に実行される雑/ファインベリフィケーションと、プログラミングの間の電流シンキングと、プログラミングの間のチャージ測定との全ては、複数のメモリセルのワードライン又はステアリングゲート(メモリセル構造に依存する)に供給されている共通の信号(例えばVpgm)を考慮する点に留意するべきである。
上記した本発明の詳細な説明は、例証及び説明を目的として提示されたものである。上記に開示された形態に本発明を制限することを意図するものではない。上記の示唆を考慮した多くの改良及び応用が可能である。上記の実施形態は、当業者が本発明を様々な実施形態において考えられる特定の使用に適した様々な改良を加えて利用できるように、本発明の原理とその実用的な用途を最良に説明するものとして選択された。本発明の技術的範囲は、添付された特許請求の範囲によって定義されるものとする。
非揮発性メモリセルのプログラミングに利用されるプログラミング電圧の一例を示す。 非揮発性メモリ装置の状態スペースの一例を示す。 フラッシュメモリセルのプログラミングに使用されるプログラミング電圧パルスと、プログラミングパルス間のベリフィケーションパルスの一例を示す。 本発明を実現することができるフラッシュメモリシステムの一実施形態のブロック線図を示す。 図4のシステムのメモリセルアレイの一部の一実施形態の平面図を示す。 図5のメモリセルアレイのA−A線部分断面図を示す。 図3の構造と電気的に同等な回路を示す。 メモリセル群を動作させるための電圧例を示す表である。 雑/ファインプログラミングのための時間に対する閾電圧及びビットライン電圧のグラフを示す。 雑/ファインプログラミングのための時間に対する閾電圧及びビットライン電圧の別のグラフを示す。 非揮発性メモリのプログラミング工程の一実施形態を説明するためのフローチャートを示す。 雑/ファインベリフィケーションの一実施形態を説明するためのフローチャートを示す。 非揮発性メモリセルのベリフィケーションに使用される構成要素のブロック線図を示す。 ビットライン電圧とセンス時間のグラフを示す。 非揮発性メモリのベリフィケーションに使用される構成要素の別のブロック線図を示す。 非揮発性メモリセルのベリフィケーションに使用される別のブロック線図を示す。 閾電圧とプログラミングパルスのグラフを示す。 第一実施形態の電流シンキングを利用した非揮発性メモリを示す。 第二実施形態の電流シンキングを利用した非揮発性メモリを示す。 電流シンキングを利用する雑/ファインプログラミング工程の一実施形態を説明するためのフローチャートである。 第一実施形態のチャージパケット測定を利用する非揮発性メモリを簡単に示す。 電圧と時間のグラフを示す。 チャージパケット測定を利用する雑/ファインプログラミング工程の一実施形態のフローチャートを示す。 第二実施形態のチャージパケット測定を利用する非揮発性メモリを簡単に示す。 第三実施形態のチャージパケット測定を利用する非揮発性メモリを簡単に示す。 第四実施形態のチャージパケット測定を利用する非揮発性メモリを簡単に示す。

Claims (46)

  1. プログラミングするための装置であり、
    ゲートと2つの制御端末とを有する非揮発性記憶要素と、
    一方の制御端末に接続される切換可能電流シンキング装置とを備え、
    切換可能電流シンキング装置は、非揮発性記憶要素が雑プログラミングモードにある場合に、前記一方の制御端末に雑電流シンクを提供し、非揮発性記憶要素がファインプログラミングモードにある場合に、前記一方の制御端末にファイン電流シンクを提供する装置。
  2. 雑電流シンクは、ファイン電流シンクより大きい電流シンクであることを特徴とする請求項1の装置。
  3. 切換可能電流シンキング装置は、2つの電流シンクモードにおいて動作することができるシングル電流シンクを含んでいることを特徴とする請求項1の装置。
  4. 非揮発性記憶要素に接続されるセンス回路と、
    センス回路に基づいて、非揮発性記憶要素が雑プログラミングモードにあること又はファインプログラミングモードにあることを示す出力を提供するプログラミングモードインディケーション回路とをさらに備え、
    切換可能電流シンキング装置は、プログラミングモードインディケーション回路に接続されるとともに、プログラミングモードインディケーション回路からの出力に基づいて、雑電流シンクとファイン電流シンクを切り換えることを特徴とする請求項1の装置。
  5. 切換可能電流シンキング装置は、雑電流シンクを提供する第1電流シンクユニットと、ファイン電流シンクを提供する第2電流シンクユニットと、第1電流シンクユニットと第2電流シンクユニットのいずれかを選択するスイッチとを含んでいることを特徴とする請求項1の装置。
  6. 非揮発性記憶要素に接続されるセンス回路と、
    センス回路に基づいて、非揮発性記憶要素が雑プログラミングモードにあること又はファインプログラミングモードにあることを示す出力を提供するプログラミングモードインディケーション回路とをさらに備え、
    前記スイッチは、プログラミングモードインディケーション回路に接続されるとともに、プログラミングモードインディケーション回路からの情報に基づいて、第1電流シンクユニットと第2電流シンクユニットを切り換えることを特徴とする請求項5の装置。
  7. 非揮発性記憶要素に接続されるセンス回路と、
    センス回路に基づいて、非揮発性記憶要素が雑プログラミングモードにあること又はファインプログラミングモードにあることを示す出力を提供するプログラミングモードインディケーション回路と、
    プログラミングモードインディケーション回路とセンス回路に接続される選択回路とをさらに備え、
    切換可能電流シンキング装置は、プログラミングモードインディケーション回路に接続され、
    選択回路は、非揮発性記憶要素が雑プログラミングモードにある場合に、センス回路に雑リファレンス信号を供給し、非揮発性記憶要素がファインプログラミングモードにある場合に、センス回路にファインリファレンス信号を供給することを特徴とする請求項1の装置。
  8. センス回路は、非揮発性記憶要素が特定のベリフィケーションレベルに達したのか否かを決定するために、プログラミングモードインディケーション回路からの出力に基づいて、雑リファレンス信号又はファインリファレンス信号と非揮発性記憶要素のためのデータとを比較することを特徴とする請求項7の装置。
  9. プログラミングモードインディケーション回路は、記憶ユニットを含んでおり、
    その記憶ユニットは、非揮発性記憶要素が雑プログラミングモードとファインプログラミングのいずれにあるのかを示すデータを記憶することを特徴とする請求項8の装置。
  10. センス回路は、非揮発性記憶要素がベリフィケーション要求を満たしているか否かを決定するためにビットライン放電分析を実行する電子回路を含んでいることを特徴とする請求項7の装置。
  11. 前記2つの制御端末は、ビットラインであることを特徴とする請求項1の装置。
  12. 前記一方の制御端末は、ソース端末であることを特徴とする請求項1の装置。
  13. 非揮発性記憶要素は、フラッシュメモリ要素であることを特徴とする請求項1の装置。
  14. 非揮発性記憶要素は、マルチ状態フラッシュメモリ要素であることを特徴とする請求項1の装置。
  15. 非揮発性記憶要素は、マルチ状態記憶要素であり、
    切換可能電流シンキング装置は、異なる状態のための異なる雑電流シンクを前記一方の制御端末に提供するとともに、異なる状態のための異なるファイン電流シンクを前記一方の制御端末に提供することを特徴とする請求項1の装置。
  16. 非揮発性記憶要素にプログラミングするための装置であり、
    非揮発性記憶要素に接続されるセンス回路と、
    センス回路に基づいて、非揮発性記憶要素が雑プログラミングモードにあること又はファインプログラミングモードにあることを示す出力を提供するプログラミングモードインディケーション回路と、
    プログラミングモードインディケーション回路と非揮発性記憶要素に接続される切換可能電流シンキング装置とを備え、
    切換可能電流シンキング装置は、非揮発性記憶要素が雑プログラミングモードにある場合に、非揮発性記憶要素に雑電流シンクを提供し、非揮発性記憶要素がファインプログラミングモードにある場合に、非揮発性記憶要素にファイン電流シンクを提供することを特徴とする装置。
  17. 雑電流シンクは、ファイン電流シンクより大きい電流シンクであることを特徴とする請求項16の装置。
  18. 切換可能電流シンキング装置は、2つの電流シンクモードにおいて動作することができるシングル電流シンクを含んでいることを特徴とする請求項16の装置。
  19. 切換可能電流シンキング装置は、雑電流シンクを提供する第1電流シンクユニットと、ファイン電流シンクを提供する第2電流シンクユニットと、第1電流シンクユニットと第2電流シンクユニットのいずれかを選択するスイッチとを有し、
    そのスイッチは、プログラミングモードインディケーション回路に接続されるとともに、プログラミングモードインディケーション回路の情報に基づいて、第1電流シンクユニットと第2電流シンクユニットを切り換えることを特徴とする請求項16の装置。
  20. 切換可能電流シンキング装置は、非揮発性記憶要素のソース端末に接続されることを特徴とする請求項16の装置。
  21. 切換可能電流シンキング装置は、非揮発性記憶要素のビットラインに接続されることを特徴とする請求項16の装置。
  22. 切換可能電流シンキング装置は、非揮発性記憶要素の制御ラインに接続されることを特徴とする請求項16の装置。
  23. 非揮発性記憶要素は、フラッシュメモリ要素であることを特徴とする請求項16の装置。
  24. 非揮発性記憶要素は、マルチ状態フラッシュメモリ要素であることを特徴とする請求項16の装置。
  25. 切換可能電流シンキング装置は、異なる状態のための異なる雑電流シンクを提供するとともに、異なる状態のための異なるファイン電流シンクを提供することを特徴とする請求項16の装置。
  26. 非揮発性記憶要素群にプログラミングするための装置であり、
    非揮発性記憶要素群に接続されるプログラミング回路と、
    非揮発性記憶要素群に接続される一又は複数の切換可能電流シンク回路とを備え、
    その一又は複数の電流シンク回路は、雑プログラミングフェーズにある「非揮発性記憶要素群の第1サブセット」を第1電流シンクの対象とし、それと同時に、ファインプログラミングフェーズにある「非揮発性記憶要素群の第2サブセット」を第2電流シンクの対象とすることを特徴とする装置。
  27. プログラミング回路は、非揮発性記憶要素群に共通ステアリング信号を供給することを特徴とする請求項26の装置。
  28. 特定の非揮発性記憶要素について、1つの切換可能電流シンク回路は、
    前記特定の非揮発性記憶要素に接続されるセンス回路と、
    センス回路に基づいて、前記特定の非揮発性記憶要素が雑プログラミングフェーズにあること又はファインプログラミングフェーズにあることを示す出力を提供するプログラミングモードインディケーション回路と、
    プログラミングモードインディケーション回路と前記特定の非揮発性記憶要素に接続される切換可能電流シンキング装置とを有し、
    その切換可能電流シンキング装置は、前記特定の非揮発性記憶要素が雑プログラミングフェーズにある場合に、前記特定の非揮発性記憶要素に前記第1電流シンクを提供し、前記特定の非揮発性記憶要素がファインプログラミングフェーズにある場合に、前記特定の非揮発性記憶要素に前記第2電流シンクを提供することを特徴とする請求項26の装置。
  29. 前記第1電流シンクは、前記第2電流シンクより大きい電流シンクであることを特徴とする請求項28の装置。
  30. 切換可能電流シンキング装置は、2つの電流シンクモードにおいて動作することができるシングル電流シンクを有することを特徴とする請求項28の装置。
  31. 非揮発性記憶要素群は、フラッシュメモリ要素群であることを特徴とする請求項28の装置。
  32. 非揮発性記憶要素群は、マルチ状態フラッシュメモリ要素群であることを特徴とする請求項28の装置。
  33. プログラミングするための装置であり、
    非揮発性記憶要素群のために雑プログラミングフェーズを実行する手段と、
    雑プログラミングフェーズの間に第1電流をシンキングする手段と、
    前記シンキングを第2電流に切り換えることによって、非揮発性記憶要素群のためのファインプログラミングに切り換える手段とを備える装置。
  34. 一又は複数の切換可能電流シンク回路は、非揮発性記憶要素毎に1つの切換可能電流シンク回路を含んでいることを特徴とする請求項26の装置。
  35. プログラミングするための方法であり、
    非揮発性記憶要素のための雑プログラミングフェーズを実行し、
    雑プログラミングフェーズは第1電流をシンキングすることを含んでおり、
    前記シンキングを第2電流に切り換えることによって、非揮発性記憶要素のためのファインプログラミングフェーズに切り換えることを特徴とする方法。
  36. 非揮発性記憶要素の閾電圧が第1ベリファイレベルに達したのか否かを決定し、
    前記切換ステップは、非揮発性記憶要素の閾電圧が第1ベリファイレベルに達すると開始され、
    非揮発性記憶要素の閾電圧が第2ベリファイレベルに達したのか否かを決定し、
    ファインプログラミングフェーズは、非揮発性記憶要素の閾電圧が第2ベリファイレベルに達すると終了されることを特徴とする請求項35の方法。
  37. 第1電流は、第2電流より大きいことを特徴とする請求項35の方法。
  38. 非揮発性記憶要素は、フラッシュメモリ要素であることを特徴とする請求項35の方法。
  39. 非揮発性記憶要素は、マルチ状態フラッシュメモリ要素であることを特徴とする請求項35の方法。
  40. ファインプログラミングフェーズの間における非揮発性記憶要素の閾電圧の変化は、雑プログラミングフェーズと比べて小さいことを特徴とする請求項35の方法。
  41. プログラミングするための方法であり、
    非揮発性記憶要素にプログラミング電圧信号を供給し、
    雑プログラミングを実行するために、非揮発性記憶要素から第1電流をシンキングし、
    非揮発性記憶要素の閾電圧が第1ベリファイレベルに達したことを決定し、
    非揮発性記憶要素の閾電圧が第1ベリファイレベルに達したことを決定することに応答して、第2電流をシンキングするために前記シンキングを切り換え、
    その切換ステップは、非揮発性記憶要素にファインプログラミングを実行させることを特徴とする方法。
  42. 第1電流は、第2電流より大きいことを特徴とする請求項41の方法。
  43. 非揮発性記憶要素は、フラッシュメモリ要素であることを特徴とする請求項41の方法。
  44. 非揮発性記憶要素は、マルチ状態フラッシュメモリ要素であることを特徴とする請求項41の方法。
  45. 前記プログラミング電圧は、非揮発性記憶要素の制御ゲートに供給されることを特徴とする請求項41の方法。
  46. プログラミングするための方法であり、
    マルチ状態非揮発性記憶要素群のための雑プログラミングフェーズを実行し、
    雑プログラミングフェーズは、別の状態にプログラミングされる非揮発性記憶要素群が第1セットの電流の異なる電流をシンキングするように、その第1セットの電流をシンキングすることを含んでおり、
    別の状態にプログラミングされる非揮発性記憶要素群が第2セットの電流の異なる電流をシンキングするように、その第2セットの電流に対してシンキングを切り換えることによって、非揮発性記憶要素群をファインプログラミングフェーズに切り換えることを特徴とする方法。
JP2006551374A 2004-01-27 2005-01-25 非揮発性メモリの雑/ファインプログラミングのための可変電流シンキング Expired - Fee Related JP4726807B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/766,786 US7002843B2 (en) 2004-01-27 2004-01-27 Variable current sinking for coarse/fine programming of non-volatile memory
US10/766,786 2004-01-27
PCT/US2005/002208 WO2005073977A2 (en) 2004-01-27 2005-01-25 Variable current sinking for coarse/fine programming of non-volatile memory

Publications (2)

Publication Number Publication Date
JP2007520029A true JP2007520029A (ja) 2007-07-19
JP4726807B2 JP4726807B2 (ja) 2011-07-20

Family

ID=34795742

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006551374A Expired - Fee Related JP4726807B2 (ja) 2004-01-27 2005-01-25 非揮発性メモリの雑/ファインプログラミングのための可変電流シンキング

Country Status (8)

Country Link
US (2) US7002843B2 (ja)
EP (1) EP1711948B1 (ja)
JP (1) JP4726807B2 (ja)
KR (1) KR100861422B1 (ja)
CN (1) CN1930631B (ja)
AT (1) ATE527661T1 (ja)
TW (1) TWI266325B (ja)
WO (1) WO2005073977A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011248873A (ja) * 2010-05-25 2011-12-08 Samsung Electronics Co Ltd 半導体メモリ装置のブロック併合方法
JP2021517706A (ja) * 2018-03-14 2021-07-26 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリをプログラミングするための方法及び装置

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7139198B2 (en) * 2004-01-27 2006-11-21 Sandisk Corporation Efficient verification for coarse/fine programming of non-volatile memory
US7002843B2 (en) * 2004-01-27 2006-02-21 Sandisk Corporation Variable current sinking for coarse/fine programming of non-volatile memory
US7068539B2 (en) * 2004-01-27 2006-06-27 Sandisk Corporation Charge packet metering for coarse/fine programming of non-volatile memory
US7020026B2 (en) * 2004-05-05 2006-03-28 Sandisk Corporation Bitline governed approach for program control of non-volatile memory
US7352618B2 (en) * 2004-12-15 2008-04-01 Samsung Electronics Co., Ltd. Multi-level cell memory device and associated read method
US7251167B2 (en) * 2004-12-29 2007-07-31 Macronix International Co., Ltd. Method for programming multi-level nitride read-only memory cells
US7130210B2 (en) * 2005-01-13 2006-10-31 Spansion Llc Multi-level ONO flash program algorithm for threshold width control
US7301817B2 (en) * 2005-10-27 2007-11-27 Sandisk Corporation Method for programming of multi-state non-volatile memory using smart verify
US7366022B2 (en) * 2005-10-27 2008-04-29 Sandisk Corporation Apparatus for programming of multi-state non-volatile memory using smart verify
EP1946323B1 (en) * 2005-10-27 2011-07-27 SanDisk Corporation Method for programming of multi-state non-volatile memory using smart verify
WO2007132452A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Reducing programming error in memory devices
US8239735B2 (en) * 2006-05-12 2012-08-07 Apple Inc. Memory Device with adaptive capacity
KR101375955B1 (ko) 2006-05-12 2014-03-18 애플 인크. 메모리 디바이스 내의 왜곡 추정 및 상쇄
KR101202537B1 (ko) * 2006-05-12 2012-11-19 애플 인크. 메모리 디바이스를 위한 결합된 왜곡 추정 및 에러 보정 코딩
WO2008026203A2 (en) 2006-08-27 2008-03-06 Anobit Technologies Estimation of non-linear distortion in memory devices
KR100809333B1 (ko) * 2006-09-04 2008-03-05 삼성전자주식회사 상변화 메모리 장치의 기입 검증 방법 및 그 방법을사용하는 상변화 메모리 장치
US7961511B2 (en) * 2006-09-26 2011-06-14 Sandisk Corporation Hybrid programming methods and systems for non-volatile memory storage elements
CN101601094B (zh) 2006-10-30 2013-03-27 苹果公司 使用多个门限读取存储单元的方法
US7975192B2 (en) 2006-10-30 2011-07-05 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US8151163B2 (en) * 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
US7593263B2 (en) * 2006-12-17 2009-09-22 Anobit Technologies Ltd. Memory device with reduced reading latency
US7900102B2 (en) * 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
US7623389B2 (en) * 2006-12-21 2009-11-24 Sandisk Corporation System for low voltage programming of non-volatile memory cells
EP2102868B1 (en) * 2006-12-21 2016-02-24 SanDisk Technologies Inc. Method and system of low voltage programming of non-volatile memory cells
US7944749B2 (en) * 2006-12-21 2011-05-17 Sandisk Corporation Method of low voltage programming of non-volatile memory cells
US7751240B2 (en) * 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) * 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
US8369141B2 (en) * 2007-03-12 2013-02-05 Apple Inc. Adaptive estimation of memory cell read thresholds
US7643348B2 (en) * 2007-04-10 2010-01-05 Sandisk Corporation Predictive programming in non-volatile memory
US8001320B2 (en) * 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8429493B2 (en) 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
US8234545B2 (en) * 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
ITRM20070273A1 (it) * 2007-05-16 2008-11-17 Micron Technology Inc Lettura di celle di memoria non volatile a livello mutiplo.
KR100888847B1 (ko) * 2007-06-28 2009-03-17 삼성전자주식회사 불휘발성 반도체 메모리 장치 및 그것의 프로그램 방법
US7599224B2 (en) * 2007-07-03 2009-10-06 Sandisk Corporation Systems for coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
US7508715B2 (en) * 2007-07-03 2009-03-24 Sandisk Corporation Coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US7489543B1 (en) * 2007-07-25 2009-02-10 Micron Technology, Inc. Programming multilevel cell memory arrays
US8259497B2 (en) * 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8174905B2 (en) * 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US8068360B2 (en) * 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
WO2009050703A2 (en) * 2007-10-19 2009-04-23 Anobit Technologies Data storage in analog memory cell arrays having erase failures
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
WO2009063450A2 (en) * 2007-11-13 2009-05-22 Anobit Technologies Optimized selection of memory units in multi-unit memory devices
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) * 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8085586B2 (en) * 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US7916544B2 (en) 2008-01-25 2011-03-29 Micron Technology, Inc. Random telegraph signal noise reduction scheme for semiconductor memories
US8156398B2 (en) * 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) * 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) * 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8059457B2 (en) * 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US7800945B2 (en) * 2008-06-12 2010-09-21 Sandisk Corporation Method for index programming and reduced verify in nonvolatile memory
US7796435B2 (en) * 2008-06-12 2010-09-14 Sandisk Corporation Method for correlated multiple pass programming in nonvolatile memory
US7826271B2 (en) * 2008-06-12 2010-11-02 Sandisk Corporation Nonvolatile memory with index programming and reduced verify
US7813172B2 (en) * 2008-06-12 2010-10-12 Sandisk Corporation Nonvolatile memory with correlated multiple pass programming
EP2311041A1 (en) * 2008-07-22 2011-04-20 LSI Corporation Methods and apparatus for programming multiple program values per signal level in flash memories
US8498151B1 (en) 2008-08-05 2013-07-30 Apple Inc. Data storage in analog memory cells using modified pass voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US7715235B2 (en) * 2008-08-25 2010-05-11 Sandisk Corporation Non-volatile memory and method for ramp-down programming
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in memory devices
US8208304B2 (en) * 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US7821840B2 (en) * 2008-11-24 2010-10-26 Spansion Llc Multi-phase programming of multi-level memory
US8174857B1 (en) 2008-12-31 2012-05-08 Anobit Technologies Ltd. Efficient readout schemes for analog memory cell devices using multiple read threshold sets
US8248831B2 (en) * 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8832354B2 (en) * 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US7978498B2 (en) * 2009-04-03 2011-07-12 Sandisk 3D, Llc Programming non-volatile storage element using current from other element
US8270199B2 (en) 2009-04-03 2012-09-18 Sandisk 3D Llc Cross point non-volatile memory cell
US8139391B2 (en) 2009-04-03 2012-03-20 Sandisk 3D Llc Multi-bit resistance-switching memory cell
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
CN102054070B (zh) * 2009-10-30 2014-11-26 新思科技(上海)有限公司 非线性电路直流工作点的支路电流计算方法与装置
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8677203B1 (en) 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems
KR101620025B1 (ko) 2010-02-19 2016-05-24 삼성전자주식회사 데이터 저장 시스템 및 그것의 오픈 블록 관리 방법
US8233324B2 (en) 2010-03-25 2012-07-31 Sandisk Il Ltd. Simultaneous multi-state read or verify in non-volatile storage
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8645794B1 (en) 2010-07-31 2014-02-04 Apple Inc. Data storage in analog memory cells using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US9036415B2 (en) 2011-12-21 2015-05-19 Sandisk Technologies Inc. Mitigating variations arising from simultaneous multi-state sensing
US8582381B2 (en) 2012-02-23 2013-11-12 SanDisk Technologies, Inc. Temperature based compensation during verify operations for non-volatile storage
US8885416B2 (en) 2013-01-30 2014-11-11 Sandisk Technologies Inc. Bit line current trip point modulation for reading nonvolatile storage elements
US9947682B2 (en) 2014-11-18 2018-04-17 Sandisk Technologies Llc Three dimensional non-volatile memory with separate source lines
US9548130B2 (en) 2015-04-08 2017-01-17 Sandisk Technologies Llc Non-volatile memory with prior state sensing
US9922719B2 (en) * 2015-06-07 2018-03-20 Sandisk Technologies Llc Multi-VT sensing method by varying bit line voltage
US9911488B2 (en) 2015-10-22 2018-03-06 Sandisk Technologies Llc Three dimensional non-volatile memory with shorting source line/bit line pairs
US9715924B2 (en) 2015-10-22 2017-07-25 Sandisk Technologies Llc Three dimensional non-volatile memory with current sensing programming status
US9711211B2 (en) 2015-10-29 2017-07-18 Sandisk Technologies Llc Dynamic threshold voltage compaction for non-volatile memory
US11430491B2 (en) 2020-04-30 2022-08-30 Taiwan Semiconductor Manufacturing Company, Ltd. Device and method for reading data in memory
CN112201293B (zh) * 2020-10-18 2023-12-15 本征信息技术(苏州)有限公司 多层单元非易失性存储器的一种编程方法
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10275482A (ja) * 1997-03-28 1998-10-13 Sanyo Electric Co Ltd 不揮発性半導体メモリ装置
JPH11219593A (ja) * 1998-02-03 1999-08-10 Sony Corp 不揮発性半導体記憶装置
JPH11265587A (ja) * 1998-03-17 1999-09-28 Sanyo Electric Co Ltd 不揮発性半導体メモリ装置
JP2001357693A (ja) * 2000-04-25 2001-12-26 Winbond Electronics Corp コアースアンドファイン・シーケンスを使用したフラッシュ・メモリ・アナログ記憶装置のプログラミング

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US57598A (en) * 1866-08-28 Improvement in ladies fans
US5220531A (en) * 1991-01-02 1993-06-15 Information Storage Devices, Inc. Source follower storage cell and improved method and apparatus for iterative write for integrated circuit analog signal recording and playback
US6222762B1 (en) * 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5712180A (en) * 1992-01-14 1998-01-27 Sundisk Corporation EEPROM with split gate source side injection
US5313421A (en) * 1992-01-14 1994-05-17 Sundisk Corporation EEPROM with split gate source side injection
KR950000273B1 (ko) * 1992-02-21 1995-01-12 삼성전자 주식회사 불휘발성 반도체 메모리장치 및 그 최적화 기입방법
US5412601A (en) * 1992-08-31 1995-05-02 Nippon Steel Corporation Non-volatile semiconductor memory device capable of storing multi-value data in each memory cell
KR0169267B1 (ko) * 1993-09-21 1999-02-01 사토 후미오 불휘발성 반도체 기억장치
JP3476952B2 (ja) * 1994-03-15 2003-12-10 株式会社東芝 不揮発性半導体記憶装置
JP3730272B2 (ja) * 1994-09-17 2005-12-21 株式会社東芝 不揮発性半導体記憶装置
EP0704854B1 (en) * 1994-09-30 1999-12-01 STMicroelectronics S.r.l. Memory device having error detection and correction function, and methods for writing and erasing the memory device
JPH09251782A (ja) * 1996-03-14 1997-09-22 Fujitsu Ltd 半導体記憶装置
US5712815A (en) * 1996-04-22 1998-01-27 Advanced Micro Devices, Inc. Multiple bits per-cell flash EEPROM capable of concurrently programming and verifying memory cells and reference cells
US6134148A (en) * 1997-09-30 2000-10-17 Hitachi, Ltd. Semiconductor integrated circuit and data processing system
JP3481817B2 (ja) * 1997-04-07 2003-12-22 株式会社東芝 半導体記憶装置
US5926409A (en) * 1997-09-05 1999-07-20 Information Storage Devices, Inc. Method and apparatus for an adaptive ramp amplitude controller in nonvolatile memory application
JP2000040382A (ja) * 1998-07-23 2000-02-08 Sony Corp 不揮発性半導体記憶装置およびそのデータ書き込み方法
US6151248A (en) * 1999-06-30 2000-11-21 Sandisk Corporation Dual floating gate EEPROM cell array with steering gates shared by adjacent cells
JP2001067884A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd 不揮発性半導体記憶装置
JP3922516B2 (ja) 2000-09-28 2007-05-30 株式会社ルネサステクノロジ 不揮発性メモリと不揮発性メモリの書き込み方法
JP3631463B2 (ja) * 2001-12-27 2005-03-23 株式会社東芝 不揮発性半導体記憶装置
US6424566B1 (en) * 2001-02-08 2002-07-23 Advanced Micro Devices, Inc. Program reconnaissance to eliminate variations in vt distributions of multi-level cell flash memory designs
US6738289B2 (en) * 2001-02-26 2004-05-18 Sandisk Corporation Non-volatile memory with improved programming and method therefor
DE60139670D1 (de) 2001-04-10 2009-10-08 St Microelectronics Srl Verfahren zur Programmierung nichtflüchtiger Speicherzellen mit Programmier- und Prüfalgorithmus unter Verwendung treppenförmiger Spannungsimpulse mit variablem Stufenabstand
US6532172B2 (en) * 2001-05-31 2003-03-11 Sandisk Corporation Steering gate and bit line segmentation in non-volatile memories
US6522580B2 (en) * 2001-06-27 2003-02-18 Sandisk Corporation Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states
US6597603B2 (en) 2001-11-06 2003-07-22 Atmel Corporation Dual mode high voltage power supply for providing increased speed in programming during testing of low voltage non-volatile memories
US6529412B1 (en) * 2002-01-16 2003-03-04 Advanced Micro Devices, Inc. Source side sensing scheme for virtual ground read of flash eprom array with adjacent bit precharge
US6856551B2 (en) * 2003-02-06 2005-02-15 Sandisk Corporation System and method for programming cells in non-volatile integrated memory devices
US7002843B2 (en) 2004-01-27 2006-02-21 Sandisk Corporation Variable current sinking for coarse/fine programming of non-volatile memory

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10275482A (ja) * 1997-03-28 1998-10-13 Sanyo Electric Co Ltd 不揮発性半導体メモリ装置
JPH11219593A (ja) * 1998-02-03 1999-08-10 Sony Corp 不揮発性半導体記憶装置
JPH11265587A (ja) * 1998-03-17 1999-09-28 Sanyo Electric Co Ltd 不揮発性半導体メモリ装置
JP2001357693A (ja) * 2000-04-25 2001-12-26 Winbond Electronics Corp コアースアンドファイン・シーケンスを使用したフラッシュ・メモリ・アナログ記憶装置のプログラミング

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011248873A (ja) * 2010-05-25 2011-12-08 Samsung Electronics Co Ltd 半導体メモリ装置のブロック併合方法
JP2021517706A (ja) * 2018-03-14 2021-07-26 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリをプログラミングするための方法及び装置
JP7217753B2 (ja) 2018-03-14 2023-02-03 シリコン ストーリッジ テクノロージー インコーポレイテッド 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリをプログラミングするための方法及び装置

Also Published As

Publication number Publication date
KR100861422B1 (ko) 2008-10-02
CN1930631B (zh) 2012-09-05
ATE527661T1 (de) 2011-10-15
US7002843B2 (en) 2006-02-21
WO2005073977A3 (en) 2006-03-23
US7414887B2 (en) 2008-08-19
CN1930631A (zh) 2007-03-14
TW200605084A (en) 2006-02-01
JP4726807B2 (ja) 2011-07-20
WO2005073977A2 (en) 2005-08-11
EP1711948B1 (en) 2011-10-05
TWI266325B (en) 2006-11-11
US20060067121A1 (en) 2006-03-30
EP1711948A2 (en) 2006-10-18
KR20070042495A (ko) 2007-04-23
US20050162924A1 (en) 2005-07-28

Similar Documents

Publication Publication Date Title
JP4510031B2 (ja) 非揮発性メモリの雑/ファインプログラミングのための効率的ベリフィケーション
JP4726807B2 (ja) 非揮発性メモリの雑/ファインプログラミングのための可変電流シンキング
JP2007520028A (ja) 非揮発性メモリの雑/ファインプログラミングのためのチャージパケット測定
US7616481B2 (en) Memories with alternate sensing techniques
US7349264B2 (en) Alternate sensing techniques for non-volatile memories
US8406052B2 (en) High voltage generation and control in source-side injection programming of non-volatile memory
US20040174748A1 (en) Self boosting technique
KR101357068B1 (ko) 비휘발성 메모리들에 대한 바디 효과 감지 방법
JP3145981B2 (ja) 半導体不揮発性記憶装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090818

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091116

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20091124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100903

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110405

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110412

R150 Certificate of patent or registration of utility model

Ref document number: 4726807

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees