(57)【要約】  交互に、プログラミングパルスを加え、プログラミングをベリファイすることを含む不揮発性メモリのプログラミングにおいて、メモリセルの状態に依存してベリファイ操作の一部が不必要であると認識されて省かれるとき、プログラムベリファイ部分で時間が節約される。好ましくは、２つのメモリ状態を区別するための境界しきい値レベルに関してのプログラムベリファイ操作に関して、このベリファイ操作は一連の２つのベリファイサブサイクルを含み、第１のサブサイクルは、その境界しきい値レベルから所定のマージン下の第１のしきい値レベルに関してのベリファイを実行し、第２のサブサイクルは、その境界しきい値レベルと同一である第２のしきい値レベルに関してのベリファイを実行する。従来の場合とは違って、そのグループのいずれか１つのメモリセルが第１のしきい値を通過したとベリファイされるまでは第２のサブサイクルは実行されない。
2009522707.tif 000002
【特許請求の範囲】
【請求項１】
境界しきい値電圧に関して１グループのメモリセルを並行してプログラムする方法であって、
（ａ）前記グループのメモリセルにプログラミングパルスを加えるステップと、
（ｂ）前記グループのメモリセルを、前記境界しきい値電圧のものから所定のマージン下の第１の基準しきい値電圧に関してベリファイするステップと、
（ｃ）前記セルのうちの１つが前記第１基準しきい値電圧に関してベリファイされるまで（ａ）から（ｂ）までを反復するステップと、
（ｄ）ベリファイされたメモリセルのためのプログラミングセットアップを、これらのセルのためのその後のプログラミングを低速化するために前記第１の基準しきい値電圧に変更するステップと、
（ｅ）前記グループのメモリセルにプログラミングパルスを加えるステップと、
（ｆ）前記グループのメモリセルを、前記境界しきい値電圧のものから所定のマージン下の前記第１の基準しきい値電圧に関してベリファイするステップと、
（ｇ）ベリファイされたメモリセルのための前記プログラミングセットアップを、これらのセルのためのその後のプログラミングを低速化するために前記第１の基準しきい値電圧に変更するステップと、
（ｈ）前記グループのメモリセルを前記境界しきい値電圧に関してベリファイするステップと、
（ｉ）前記境界しきい値電圧に関してベリファイされたメモリセルがさらにプログラムされるのを妨げるステップと、
（ｊ）前記グループ中の全てのセルが前記境界しきい値電圧に関してプログラムベリファイされるまで（ｅ）から（ｉ）までを反復するステップと、
を含む方法。
【請求項２】
請求項１記載の方法において、
関連するビット線により前記グループのメモリセルにアクセスするステップをさらに含み、
前記プログラミングセットアップを変更するステップは、ベリファイされた前記セルのビット線の電圧を、前記プログラミングを低速化するために前記第１の基準しきい値電圧に高めるステップを含む方法。
【請求項３】
請求項１記載の方法において、
関連するビット線により前記グループのメモリセルにアクセスするステップと、
供給電圧を提供するステップと、をさらに含み、
前記メモリセルがさらにプログラムされるのを妨げるステップは、妨げられないセルのビット線が実質的にゼロ電圧である間に前記メモリセルと関連する前記ビット線を実質的に前記供給電圧に高めるステップを含む方法。
【請求項４】
請求項１記載の方法において、
前記プログラミングパルスは、全てのパルスで単調に増大する方法。
【請求項５】
請求項１記載の方法において、
前記グループのメモリセルは、フラッシュＥＥＰＲＯＭの一部分である方法。
【請求項６】
請求項１記載の方法において、
前記グループのメモリセルは、メモリカードにおいて具体化される方法。
【請求項７】
境界しきい値電圧に関して１グループのメモリセルを並行してプログラムする方法であって、
交互にプログラミングパルスを加え、前記グループのメモリセルについてのプログラムされた結果を並行してベリファイするステップを含み、
前記ベリファイするステップは、
前記境界しきい値電圧のものから所定のマージン下の第１の基準しきい値電圧に関しての第１のベリファイと、
前記第１の基準しきい値電圧に関してベリファイされた前記セルのプログラミングを低速化するステップと、
前記境界しきい値電圧に関しての第２のベリファイと、
前記境界しきい値電圧に関してベリファイされた前記メモリセルがさらにプログラムされるのを妨げるステップと、をさらに含み、
前記グループのメモリセルのうちの少なくとも１つが前記第１のしきい値電圧に関してベリファイされるまで前記第２のベリファイは省かれる方法。
【請求項８】
請求項７記載の方法において、
関連するビット線により前記グループのメモリセルにアクセスするステップをさらに含み、
前記プログラミングセットアップを変更するステップは、ベリファイされた前記セルのビット線の電圧を、前記プログラミングを低速化するために前記第１の基準しきい値電圧に高めるステップを含む方法。
【請求項９】
請求項７記載の方法において、
関連するビット線により前記グループのメモリセルにアクセスするステップと、
供給電圧を提供するステップと、をさらに含み、
前記メモリセルがさらにプログラムされるのを妨げるステップは、妨げられないセルのビット線が実質的にゼロ電圧である間に前記メモリセルと関連する前記ビット線を実質的に前記供給電圧に高めるステップを含む方法。
【請求項１０】
請求項７記載の方法において、
前記プログラミングパルスは、全てのパルスで単調に増大する方法。
【請求項１１】
請求項７記載の方法において、
前記グループのメモリセルは、フラッシュＥＥＰＲＯＭの一部分である方法。
【請求項１２】
請求項７記載の方法において、
前記グループのメモリセルは、メモリカードにおいて具体化される方法。
【請求項１３】
請求項１〜１２のいずれか記載の方法において、
個々のメモリセルは各々２つの状態のうちの一方にプログラム可能であり、前記境界しきい値電圧は前記２つの状態を区別するためのものである方法。
【請求項１４】
請求項１〜１２のいずれか記載の方法において、
個々のメモリセルは各々３つ以上の状態のうちの１つにプログラム可能であり、前記境界しきい値電圧は前記３つ以上の状態を区別するための複数の境界しきい値電圧のうちの１つである方法。
【請求項１５】
請求項１４記載の方法において、
前記複数の境界しきい値電圧の各々に関して前記ステップを反復するステップをさらに含む方法。
【請求項１６】
不揮発性メモリであって、
境界しきい値電圧に関してプログラムされるべきメモリセルアレイと、
グループのメモリセルにプログラミングパルスを加えるためのプログラミング回路と、
前記境界しきい値電圧のものから所定のマージン下の第１の基準しきい値電圧に関して前記グループのメモリセルをベリファイする第１の構成を有する感知回路と、
メモリコントローラであって、
前記セルのうちの１つが前記第１の基準しきい値電圧に関してベリファイされるまで前記プログラミング回路と前記第１の構成を有する前記感知回路とを前記コントローラが交互に制御するメモリコントローラと、
前記第１の基準しきい値電圧に関してベリファイされたメモリセルのその後のプログラミングを低速化するためのプログラミング遅延回路と、
前記境界しきい値電圧に関してベリファイされたメモリセルがそれ以上プログラムされることを妨げるためのプログラミング禁止回路と、を含み、
前記グループ中の全てのセルが前記境界しきい値電圧に関してプログラムベリファイされるまで、前記プログラミング回路の操作と、前記境界しきい値電圧に関してのベリファイが次に行われる、前記第１の基準しきい値電圧に関して前記グループのメモリセルをベリファイする前記感知回路の操作とを前記コントローラが交互に制御する不揮発性メモリ。
【請求項１７】
請求項１６記載の不揮発性メモリにおいて、
関連するビット線により前記グループのメモリセルにアクセスすることをさらに含み、
前記プログラミングセットアップを変更することは、ベリファイされた前記セルのビット線の電圧を、前記プログラミングを低速化するために前記第１の基準しきい値電圧に高めることを含む不揮発性メモリ。
【請求項１８】
請求項１６記載の不揮発性メモリにおいて、
関連するビット線により前記グループのメモリセルにアクセスすることをさらに含み、
前記プログラミング禁止回路は、妨げられないセルのビット線が実質的にゼロ電圧である間に、妨げられるべき前記メモリセルと関連する前記ビット線を実質的に供給電圧に高めることを含む不揮発性メモリ。
【請求項１９】
請求項１６記載の不揮発性メモリにおいて、
前記プログラミングパルスは、全てのパルスで単調に増大する不揮発性メモリ。
【請求項２０】
請求項１６記載の不揮発性メモリにおいて、
前記グループのメモリセルは、フラッシュＥＥＰＲＯＭの一部分である不揮発性メモリ。
【請求項２１】
請求項１６記載の不揮発性メモリにおいて、
前記グループのメモリセルは、メモリカードにおいて具体化される不揮発性メモリ。
【請求項２２】
境界しきい値電圧に関してプログラムされるべきメモリセルアレイと、
グループのメモリセルにプログラミングパルスを加えるためのプログラミング回路と、
前記境界しきい値電圧のものから所定のマージン下の第１の基準しきい値電圧に関して前記グループのメモリセルをベリファイする第１の構成を有する感知回路と、
交互にプログラミングパルスを加え、前記グループのメモリセルについてのプログラムされた結果を並行してベリファイするメモリコントローラと、を含む不揮発性メモリであって、
前記ベリファイすることは、
前記境界しきい値電圧のものから所定のマージン下の第１の基準しきい値電圧に関しての第１のベリファイと、
前記第１の基準しきい値電圧に関してベリファイされた前記セルのプログラミングを低速化するステップと、
前記境界しきい値電圧に関しての第２のベリファイと、
前記境界しきい値電圧に関してベリファイされた前記メモリセルがさらにプログラムされるのを妨げることと、をさらに含み、
前記グループのメモリセルのうちの少なくとも１つが前記第１のしきい値電圧に関してベリファイされるまで前記第２のベリファイは省かれる不揮発性メモリ。
【請求項２３】
請求項２２記載の不揮発性メモリにおいて、
関連するビット線により前記グループのメモリセルにアクセスすることをさらに含み、
前記プログラミングセットアップを変更することは、ベリファイされた前記セルのビット線の電圧を、前記プログラミングを低速化するために前記第１の基準しきい値電圧に高めることを含む不揮発性メモリ。
【請求項２４】
請求項２２記載の不揮発性メモリにおいて、
関連するビット線により前記グループのメモリセルにアクセスすることをさらに含み、
前記プログラミング禁止回路は、妨げられないセルのビット線が実質的にゼロ電圧である間に、妨げられるべき前記メモリセルと関連する前記ビット線を実質的に供給電圧に高めることを含む不揮発性メモリ。
【請求項２５】
請求項２２記載の不揮発性メモリにおいて、
前記プログラミングパルスは、全てのパルスで単調に増大する不揮発性メモリ。
【請求項２６】
請求項２２記載の不揮発性メモリにおいて、
前記グループのメモリセルは、フラッシュＥＥＰＲＯＭの一部分である不揮発性メモリ。
【請求項２７】
請求項２２記載の不揮発性メモリにおいて、
前記グループのメモリセルは、メモリカードにおいて具体化される不揮発性メモリ。
【請求項２８】
境界しきい値電圧に関してプログラムされるべきメモリセルアレイと、
グループのメモリセルにプログラミングパルスを加えるためのプログラミング回路と、
前記境界しきい値電圧のものから所定のマージン下の第１の基準しきい値電圧に関して前記グループのメモリセルをベリファイする第１の構成を有する感知回路と、
交互にプログラミングパルスを加え、前記グループのメモリセルについてのプログラムされた結果を並行してベリファイするための手段と、を含む不揮発性メモリであって、
前記ベリファイすることは、
前記境界しきい値電圧のものから所定のマージン下の第１の基準しきい値電圧に関しての第１のベリファイと、
前記第１の基準しきい値電圧に関してベリファイされた前記セルのプログラミングを低速化するステップと、
前記境界しきい値電圧に関しての第２のベリファイと、
前記境界しきい値電圧に関してベリファイされた前記メモリセルがさらにプログラムされるのを妨げることと、をさらに含み、
前記グループのメモリセルのうちの少なくとも１つが前記第１のしきい値電圧に関してベリファイされるまで前記第２のベリファイは省かれる不揮発性メモリ。
【請求項２９】
請求項１６〜２８のいずれか記載の不揮発性メモリにおいて、
個々のメモリセルは各々２つの状態のうちの一方にプログラム可能であり、前記境界しきい値電圧は前記２つの状態を区別するためのものである不揮発性メモリ。
【請求項３０】
請求項１６〜２８のいずれか記載の不揮発性メモリにおいて、
個々のメモリセルは各々３つ以上の状態のうちの１つにプログラム可能であり、前記境界しきい値電圧は前記３つ以上の状態を区別するための複数の境界しきい値電圧のうちの１つである不揮発性メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気的に消去可能でプログラム可能な読み出し専用メモリ（ＥＥＰＲＯＭ）およびフラッシュＥＥＰＲＯＭのような不揮発性半導体メモリに関し、特にプログラムベリファイ操作中に時間節約特徴を実現するものに関する。
【背景技術】
【０００２】
特に小形形状のファクタカードとしてパッケージ化されたＥＥＰＲＯＭおよびフラッシュＥＥＰＲＯＭの形の、電荷を不揮発性に蓄積することのできる固体メモリは、近ごろ、いろいろなモバイル装置およびハンドヘルド装置において、特に情報装置および民生用電子機器において、一般的に好まれる記憶装置となっている。同じく個体メモリであるＲＡＭ（ランダムアクセスメモリ）とは異なって、フラッシュメモリは不揮発性であって、電源がオフに切り替えられた後にもその蓄積されているデータを維持する。コストが高いにもかかわらず、フラッシュメモリは大容量記憶アプリケーションでますます使われるようになっている。ハードディスクおよびフロッピーディスクのような回転する磁性媒体に基づく在来の大容量記憶装置は、モバイルおよびハンドヘルド環境には適さない。なぜならば、ディスクドライブがかさばりがちで、機械的故障を起こしやすく、長い待ち時間と大電力要件とを有するからである。これら望ましくない属性があるためにディスクをベースとする記憶装置は大抵のモバイルおよび携帯アプリケーションにおいて実用的でない。一方、フラッシュメモリは、埋め込み形でも取り外し可能なカードの形でも、サイズが小さく、電力消費量が少なく、高速で信頼性が高いので、モバイルおよびハンドヘルド環境に理想的に適している。
【０００３】
ＥＥＰＲＯＭおよび電気的にプログラム可能な読み出し専用メモリ（ＥＰＲＯＭ）は、消去することができるとともに新しいデータをそのメモリセルに書き込むすなわち「プログラム」することができる不揮発性メモリである。両方が、ソース領域およびドレイン領域の間で半導体基板のチャネル領域の上に配置された、電界効果トランジスタ構造におけるフローティング（非結合）導電性ゲートを利用する。フローティングゲート上にコントロールゲートが設けられる。トランジスタのしきい値電圧特性は、フローティングゲートに保持されている電荷の量によって制御される。すなわち、フローティングゲート上の所与のレベルの電荷について、そのソース領域とドレイン領域との間の導通を許容するようにトランジスタが「オン」に転換される前にコントロールゲートに印加されなければならない対応する電圧（しきい値）がある。
【０００４】
フローティングゲートは、ある範囲の電荷を保持することができ、従って１つのしきい値電圧ウィンドウの中の任意のしきい値電圧レベルにプログラムされ得る。しきい値電圧ウィンドウのサイズはデバイスの最高しきい値レベルと最低しきい値レベルとにより画定され、それはフローティングゲートにプログラムされ得る電荷の範囲に対応する。しきい値ウィンドウは、一般に、メモリ素子の特性、動作条件および履歴に依存する。ウィンドウ内の各々の識別可能な、分解可能なしきい値電圧レベル範囲は、原則として、セルの一定のメモリ状態を指定するために使用され得る。
【０００５】
メモリセルとして作用するトランジスタは、通常、２つのメカニズムの一方によって「プログラムされた」状態にプログラムされる。「ホットエレクトロン注入」では、ドレインに印加された高電圧が基板チャネル領域を横断させて電子を加速する。同時に、コントロールゲートに印加された高電圧が薄いゲート誘電体を通してホットエレクトロンをフローティングゲートへ引っ張る。「トンネリング注入」では、基板に関して高い電圧がコントロールゲートに印加される。このようにして、電子が基板から、介在するフローティングゲートへ引っ張られる。
【０００６】
メモリ素子は、数個のメカニズムによって消去され得る。ＥＰＲＯＭに関して、メモリは、紫外線照射によってフローティングゲートから電荷を除去することによりバルク消去可能である。ＥＥＰＲＯＭに関して、薄い酸化物を通って基板チャネル領域へトンネリングするようにフローティングゲート内の電子を誘導するために（すなわち、ファウラー−ノルトハイムのトンネリング）コントロールゲートに関して高い電圧を基板に印加することにより、メモリセルは電気的に消去可能である。通常、ＥＥＰＲＯＭは１バイトずつ消去可能である。フラッシュＥＥＰＲＯＭに関して、メモリは一度に全体がまたは一度に１ブロックまたは数ブロックずつ電気的に消去可能であり、ここで１ブロックは５１２バイト以上のメモリから成る。
【０００７】
不揮発性メモリセルの例
メモリ素子は、通常、カードに搭載され得る１つ以上のメモリチップを含む。各メモリチップは、デコーダおよび消去回路、書き込み回路および読み出し回路のような周辺回路により支援されるメモリセルのアレイを含む。精巧なメモリ素子は、インテリジェントで高レベルのメモリ操作およびインターフェイス操作を実行するコントローラをも伴う。多くの商業的に成功した不揮発性個体メモリ素子が今日使用されている。これらのメモリ素子はいろいろなタイプのメモリセルを採用することができ、その各々のタイプが１つ以上の電荷蓄積素子を有する。
【０００８】
図１Ａ〜１Ｅは、不揮発性メモリセルのいろいろな例を概略的に示す。
【０００９】
図１Ａは、電荷を蓄積するためのフローティングゲートを有するＥＥＰＲＯＭセルの形の不揮発性メモリを概略的に示す。電気的に消去可能でプログラム可能な読み出し専用メモリ（ＥＥＰＲＯＭ）は、ＥＰＲＯＭに似ている構造を有するけれども、ＵＶ照射への露出を必要とせずに適切な電圧の印加時にそのフローティングゲートに電荷を電気的にロードし除去するためのメカニズムを付加的に提供する。このようなセルとその製造方法との例が、米国特許第５，５９５，９２４号（特許文献１）で見受けられる。
【００１０】
図１Ｂは、選択ゲートとコントロールまたはステアリングゲートとの両方を有するフラッシュＥＥＰＲＯＭセルを概略的に示す。メモリセル１０はソース拡散１４とドレイン拡散１６との間に「分割チャネル」１２を有する。セルは実際上２つの直列のトランジスタＴ１およびＴ２で形成される。Ｔ１は、フローティングゲート２０とコントロールゲート３０とを有するメモリトランジスタとして作用する。フローティングゲートは、選択可能な量の電荷を蓄積することができる。チャネルのＴ１の部分を流れることのできる電流の量は、コントロールゲート３０の電圧と、介在するフローティングゲート２０に存在する電荷の量とに依存する。Ｔ２は、選択ゲート４０を有する選択トランジスタとして作用する。Ｔ２は、選択ゲート４０の電圧によってオンに転換されたとき、チャネルのＴ１の部分に存する電流がソースとドレインとの間を通ることを可能にする。選択トランジスタは、コントロールゲートの電圧から独立した、ソース−ドレインチャネルに沿ったスイッチを提供する。一利点は、そのフローティングゲートでの電荷空乏（正）に起因してゼロコントロールゲート電圧において依然として導通しているセルをオフに転換させるために使用され得ることである。他方の利点は、ソース側注入プログラミングをより実行しやすくすることである。
【００１１】
分割チャネルメモリセルの一つの簡単な実施形態では、図１Ｂに示す点線で概略的に示されているように、選択ゲートとコントロールゲートとは同じワード線に接続される。これは、電荷蓄積素子（フローティングゲート）をチャネルの一部分の上に配置し、コントロールゲート構造（ワード線の一部である）を他方のチャネル部分の上にかつ電荷蓄積素子の上に配置することによって達成される。これは実際上直列の２つのトランジスタを有するセルを形成し、一方（メモリトランジスタ）は、電荷蓄積素子に存する電荷の量と、チャネルのその部分を通って流れることのできる電流の量を制御するワード線上の電圧との組み合わせを有し、他方（選択トランジスタ）は、そのゲートとして作用するワード線だけを有する。このようなセルの例と、メモリシステムにおけるその使用と、これを製造する方法との例が、米国特許第５，０７０，０３２号（特許文献２）、第５，０９５，３４４号（特許文献３）、第５，３１５，５４１号（特許文献４）、第５，３４３，０６３号（特許文献５）、および第５，６６１，０５３号（特許文献６）で見受けられる。
【００１２】
図１Ｂに示されている分割チャネルセルのより洗練された実施形態では、選択ゲートとコントロールゲートとは独立であって、それらの間の点線で接続されない。１つの実施例では、セルのアレイ内の一列のコントロールゲートがワード線に垂直な制御（あるいはステアリング）線に接続される。その効果は、選択されたセルを読み出しあるいはプログラムするときに同時に２つの機能を果たさなければならないというワード線の負担を軽減することである。この２つの機能とは、（１）選択トランジスタのゲートとして作用し、従って選択トランジスタをオンとオフに転換するために適切な電圧を要求すること、および（２）ワード線と電荷蓄積素子との電界（容量）結合を通して電荷蓄積素子の電圧を所望のレベルへ駆動させることである。これらの機能の両方を単一の電圧で最適に実行することはしばしば難しい。コントロールゲートと選択ゲートとを別々に制御する場合には、ワード線は機能（１）を実行するだけでよく、付加された制御線は機能（２）を実行する。この能力は、プログラミング電圧が目標とするデータに適合させられる高性能プログラミングの設計に配慮している。フラッシュＥＥＰＲＯＭアレイにおける独立のコントロール（またはステアリング）ゲートの使用が、例えば米国特許第５，３１３，４２１号（特許文献７）および第６，２２２，７６２号（特許文献８）に記載されている。
【００１３】
図１Ｃは、二重のフローティングゲートと独立の選択ゲートおよびコントロールゲートを有する他のフラッシュＥＥＰＲＯＭセルを概略的に示す。メモリセル１０は、実際上３つの直列のトランジスタを有することを除いて、図１Ｂのものと同様である。このタイプのセルでは、２つの記憶素子（すなわち、Ｔ１−左のものとＴ１−右のもの）がソース拡散とドレイン拡散との間でそのチャネルの上に含まれ、それらの間に選択トランジスタＴ１がある。メモリトランジスタはフローティングゲート２０’および２０”と、コントロールゲート３０’および３０”とをそれぞれ有する。選択トランジスタＴ２は選択ゲート４０’により制御される。任意の時点で、メモリトランジスタの対のうちの一方だけが読み出しまたは書き込みのためにアクセスされる。記憶ユニットＴ１−左がアクセスされているとき、チャネルのＴ１−左の部分の電流がソースとドレインとの間を通過できるようにＴ２およびＴ１−右の両方がオンに転換されている。同様に、記憶ユニットＴ１−右がアクセスされているときには、Ｔ２およびＴ１−左はオンに転換されている。消去は、選択ゲートのポリシリコンの一部分をフローティングゲートの近傍に持ち、またフローティングゲート内に蓄積されている電子が選択ゲートのポリシリコンへトンネリングできるように相当の正の電圧（例えば、２０Ｖ）を選択ゲートに印加することによって、行われる。
【００１４】
図１Ｄは、ＮＡＮＤセルに組織されたメモリセルのストリングを概略的に示す。ＮＡＮＤセル５０は、そのソースおよびドレインによってデイジーチェーン接続された一連のメモリトランジスタＭ１，Ｍ２．．．Ｍｎ（ｎ＝４，８，１６またはそれ以上）から成る。１対の選択トランジスタＳ１，Ｓ２は、このメモリトランジスタチェーンの、ＮＡＮＤセルのソース端子５４およびドレイン端子５６を介しての外部との接続を制御する。メモリアレイでは、ソース選択トランジスタＳ１がオンに転換されると、ソース端子がソース線に結合される。同様に、ドレイン選択トランジスタＳ２がオンに転換されると、ＮＡＮＤセルのドレイン端子がメモリアレイのビット線に結合される。チェーン内の各メモリトランジスタは、意図されたメモリ状態を表すように所与の量の電荷を蓄積する電荷蓄積素子を有する。各メモリトランジスタのコントロールゲートは、読み出し操作および書き込み操作を制御する。選択トランジスタＳ１，Ｓ２の各々のコントロールゲートは、ＮＡＮＤセルへの制御アクセスを、それぞれそのソース端子５４およびドレイン端子５６を介して、提供する。
【００１５】
ＮＡＮＤセル内のアドレス指定されたメモリトランジスタがプログラミング中に読み出されてベリファイされるとき、そのコントロールゲートに適切な電圧が供給される。同時に、ＮＡＮＤセル５０内のアドレス指定されていないメモリトランジスタの残りは、そのコントロールゲートに充分な電圧を印加することにより完全にオンに転換される。このようにして、個々のメモリトランジスタのソースからＮＡＮＤセルのソース端子５４への伝導経路が実際上作られ、また同様に個々のメモリトランジスタのドレインのためにセルのドレイン端子５６への伝導経路が実際上作られる。このようなＮＡＮＤセル構造を有するメモリ素子が、米国特許第５，５７０，３１５号（特許文献９）、第５，９０３，４９５号（特許文献１０）および第６，０４６，９３５号（特許文献１１）に記載されている。
【００１６】
図１Ｅは、電荷を蓄積するための誘電体層を有する不揮発性メモリを概略的に示す。前述した導電性フローティングゲート素子の代わりに、誘電体層が用いられている。誘電体記憶素子を利用するこのようなメモリ素子が、エイタンらによる「ＮＲＯＭ：新しい局所トラッピング、２ビット不揮発性メモリセル」，ＩＥＥＥ電子デバイスレターズ，第２１巻，第１１号，２０００年１１月，５４３〜５４５ページ(Eitan et al, "NROM: A Novel Localized Trapping, 2-Bit Nonvolatile Memory Cell," IEEE Electron Device Letters, vol. 21, no. 11, November 2000, pp. 543-545) （非特許文献１）に記載されている。ＯＮＯ誘電体層が、ソース拡散およびドレイン拡散の間のチャネルを横断して広がる。１つのデータビットのための電荷はドレインに隣接して誘電体層内に局所化され、他方のデータビットのための電荷はソースに隣接して誘電体層内に局所化される。例えば、米国特許第５，７６８，１９２号（特許文献１２）および第６，０１１，７２５号（特許文献１３）は、２つの二酸化ケイ素層の間に挟まれたトラッピング誘電体を有する不揮発性メモリセルを開示している。多状態データ記憶が、誘電体内の空間的に離れている複数の電荷蓄積領域のバイナリ状態を別々に読み出すことにより、実現される。
【００１７】
メモリアレイ
メモリ素子は、通常、行および列を成すように配列されてワード線およびビット線によりアドレス指定できるメモリセルの２次元アレイから構成される。このアレイは、ＮＯＲタイプまたはＮＡＮＤタイプのアーキテクチャに従って形成され得る。
【００１８】
ＮＯＲアレイ
図２は、メモリセルのＮＯＲアレイの例を示す。ＮＯＲタイプのアーキテクチャを有するメモリ素子は、図１Ｂまたは図１Ｃに示されているタイプのセルで実現されている。メモリセルの各行は、そのソースおよびドレインによりデイジーチェーン式に接続される。この設計は、時には仮想接地設計と称される。各メモリセル１０は、ソース１４と、ドレイン１６と、コントロールゲート３０と、選択ゲート４０とを有する。１つの行内のセルの選択ゲートはワード線４２に接続される。１つの列内のセルのソースおよびドレインは、選択されたビット線３４および３６にそれぞれ接続される。メモリセルのコントロールゲートと選択ゲートとが独立して制御される実施形態では、１つのステアリング線３６も１つの列内のセルのコントロールゲート同士を接続する。
【００１９】
多くのフラッシュＥＥＰＲＯＭデバイスは、各メモリセルのコントロールゲートと選択ゲートとが互いに接続されているメモリセルで実現される。この場合、ステアリング線の必要はなくて、１つのワード線が各行に沿うセルの全てのコントロールゲートと選択ゲートとを単に接続させる。これら設計の例が、米国特許第５，１７２，３３８号（特許文献１４）および第５，４１８，７５２号（特許文献１５）において開示されている。これら設計では、ワード線は本質的に２つの機能、すなわち、行選択と、その行内の全セルに読み出しまたはプログラミングのためにコントロールゲート電圧を供給することとを実行する。
【００２０】
ＮＡＮＤアレイ
図３は、図１Ｄに示されているもののようなメモリセルのＮＡＮＤアレイの例を示す。ＮＡＮＤチェーンの各列に沿って、ビット線が各ＮＡＮＤチェーンのドレイン端子５６に結合されている。ＮＡＮＤチェーンの各行に沿って、ソース線がその全てのソース端子５４を接続することができる。また、１つの行に沿うＮＡＮＤチェーンのコントロールゲートが一連の対応するワード線に接続されている。ＮＡＮＤチェーンの１つの行全体が、選択トランジスタの対（図１Ｄを参照）を、接続されているワード線を介してそのコントロールゲートに加わる適切な電圧でオンに転換することによって、アドレス指定され得る。ＮＡＮＤチェーンの中の１つのメモリセルを代表するメモリトランジスタが読み出されるとき、そのチェーンを通って流れる電流がその読み出されているセルに蓄積されている電荷のレベルに本質的に依存するように、そのチェーンの中の残りのメモリトランジスタはそれに関連付けられているワード線を介してしっかりオンに転換される。ＮＡＮＤアーキテクチャアレイおよびメモリシステムの一部としてのその動作の例が、米国特許第５，５７０，３１５号（特許文献９）、第５，７７４，３９７号（特許文献１６）および第６，０４６，９３５号（特許文献１１）において見出される。
【００２１】
プログラミングおよびプログラミング禁止
ＮＡＮＤメモリをプログラムする場合、選択されたメモリセルのページに接続するワード線にプログラミング電圧パルスが印加される。そのページの中で、プログラムされるべきメモリセルのビット線電圧は０Ｖにセットされ、プログラムされるべきでない他のメモリセルのビット線電圧はプログラミングを禁止するためにシステム供給電圧Ｖｄｄにセットされる。ビット線をＶｄｄにセットすると、実際上、ＮＡＮＤチェーンのドレイン側の選択トランジスタがオフに転換され、チャネルが浮遊されるという結果がもたらされる。プログラミング中、浮遊されたチャネルの電圧は高いワード線電圧によって昇圧される。これは、実際上、チャネルと電荷蓄積ユニットとの間の電位差を減少させ、これによりプログラミングを行うチャネルから電荷蓄積ユニットへの電子の引っ張り作用を抑制する。
【００２２】
ブロック消去
電荷蓄積メモリ素子のプログラミングは、より多くの電荷をその電荷蓄積素子に付け加えるという結果をもたらし得るにすぎない。従って、プログラミング操作の前に、電荷蓄積素子内に存在する電荷が除去（あるいは消去）されなければならない。メモリセルの１つ以上のブロックを消去するために消去回路（図示せず）が設けられる。ＥＥＰＲＯＭのような不揮発性メモリは、セルのアレイ全体、あるいはアレイに属するセルのかなりのグループが一緒に電気的に（すなわち、一瞬のうちに(in a flash)）消去されるとき、「フラッシュ」ＥＥＰＲＯＭと称される。消去後、そのセルのグループは再プログラムされ得る。一緒に消去可能なセルのグループは、１つ以上のアドレス指定可能な消去ユニットから成り得る。消去ユニットまたはブロックは通常１ページ以上のデータを記憶し、ページはプログラミングおよび読み出しの単位であるが、１操作で２ページ以上がプログラムされるかあるいは読み出され得る。各ページは通常１セクタ以上のデータを記憶し、セクタのサイズはホストシステムにより定められる。一例は、磁気ディスクドライブに対して確立された標準規格に従う５１２バイトのユーザデータと、そのユーザデータおよび／またはそれが格納されているブロックに関する数バイトのオーバーヘッド情報とから成るセクタである。
【００２３】
読み出し／書き込み回路
普通の２状態ＥＥＰＲＯＭセルでは、伝導ウィンドウを２つの領域に分割するために少なくとも１つの電流ブレークポイントレベルが確立される。所定の固定された電圧を印加することによってセルが読み出されるとき、そのソース／ドレイン電流は、ブレークポイントレベル（あるいは基準電流ＩREF ）との比較によって１つのメモリ状態に分解される。読み出された電流がブレークポイントレベルのものより大きければ、そのセルは１つの論理状態（例えば、「ゼロ」状態）にあると判定される。一方、電流がブレークポイントレベルのものより少なければ、そのセルは他方の論理状態（例えば、「１」状態）にあると判定される。従って、このよう２状態セルは１ビットのデジタル情報を記憶する。ブレークポイントレベル電流を生成するために、外部からプログラム可能であり得る基準電流源がメモリシステムの一部としてしばしば設けられる。
【００２４】
メモリ容量を増やすために、フラッシュＥＥＰＲＯＭデバイスは、半導体技術が進歩するに連れてますます高まる密度で製造されている。記憶容量を増やす他の方法は、各メモリセルに３以上の状態を記憶させることである。
【００２５】
多状態あるいはマルチレベルのＥＥＰＲＯＭメモリセルの場合には、各セルが１ビットより多いデータを記憶できるように伝導ウィンドウは２つ以上のブレークポイントによって３つ以上の領域に分割される。従って、所与のＥＥＰＲＯＭアレイが記憶できる情報は、各セルが記憶できる状態の数とともに増える。多状態あるいはマルチレベルのメモリセルを有するＥＥＰＲＯＭあるいはフラッシュＥＥＰＲＯＭが、米国特許第５，１７２，３３８号（特許文献１４）に記載されている。
【００２６】
実際には、セルのメモリ状態は、普通、コントロールゲートに基準電圧が印加されたときにセルのソース電極とドレイン電極とを横断する伝導電流を感知することによって読み出される。従って、セルのフローティングゲート上の各々の所与の電荷について、固定された基準コントロールゲート電圧に関して対応する伝導電流が検出され得る。同様に、フローティングゲートにプログラムすることのできる電荷の範囲は、対応するしきい値電圧ウィンドウあるいは対応する伝導電流ウィンドウを画定する。
【００２７】
あるいは、分割された電流ウィンドウの中の伝導電流を検出する代わりに、試験される所与のメモリ状態についてコントロールゲートでしきい値電圧をセットして伝導電流がしきい値電流より少ないかあるいは多いかを検出することが可能である。１つの実施例では、しきい値電流に関しての伝導電流の検出は、ビット線容量を通して伝導電流が放電する速度を調べることにより達成される。
【００２８】
図４は、任意の時点でフローティングゲートが選択的に蓄積することができる４つの異なる電荷Ｑ１〜Ｑ４についてソース−ドレイン電流ＩD とコントロールゲート電圧ＶCGとの間の関係を示す。４つの実線のＩD 対ＶCG曲線は、メモリセルのフローティングゲートにプログラムされ得る、４つの可能なメモリ状態にそれぞれ対応する４つの可能な電荷レベルを表す。一例として、セルの１群のしきい値電圧ウィンドウは０．５Ｖから３．５Ｖに及び得る。しきい値ウィンドウをそれぞれ０．５Ｖの間隔で５つの領域に分割することによって６つのメモリ状態が画定され得る。例えば、図に示されているように２μＡの基準電流ＩREF が用いられたならば、Ｑ１でプログラムされているセルは、その曲線がＶCG＝０．５Ｖおよび１．０Ｖにより画定されるしきい値ウィンドウの領域でＩREF と交差するので、メモリ状態「１」にあると考えられ得る。同様に、Ｑ４はメモリ状態「５」にある。
【００２９】
前の記述から分かるように、メモリセルがより多くの状態を記憶させられるほど、そのしきい値ウィンドウはより細かく分割される。これは、必要とされる分解能を達成し得るためにプログラミング操作および読み出し操作により高い精度を必要とする。
【００３０】
米国特許第４，３５７，６８５号（特許文献１７）には２状態ＥＰＲＯＭをプログラムする方法が開示され、その方法では、セルが所与の状態にプログラムされるとき、連続するプログラミング電圧パルスにさらされ、そのたびに増分電荷をフローティングゲートに付け加える。パルスとパルスの間に、ブレークポイントレベルに関してそのソース−ドレイン電流を判定するためにこのセルは読み返される、すなわち、ベリファイされる。プログラミングは、電流状態が所望の状態に達したとベリファイされたときに、終わる。使用されるプログラミングパルス列は、増大する期間または振幅を持つことができる。
【００３１】
従来技術のプログラミング回路は、消去済みの状態あるいは接地状態からターゲット状態に達するまでしきい値ウィンドウを通って進むように単にプログラミングパルスを加える。実際には、充分な分解能を考慮して、各々の分割あるいは画定された領域は、横断するために少なくとも約５個のプログラミングステップを必要とする。その性能は、２状態メモリセルのためには容認できる。しかし、多状態セルについて、必要とされるステップの数はパーティションの数とともに増えるので、プログラミングの精度あるいは分解能が高められなければならない。例えば、１６状態セルは、ターゲット状態までプログラムするために平均で少なくとも約４０個のプログラミングパルスをおそらく必要とする。
【００３２】
図５は、行デコーダ１３０および列デコーダ１６０を介して読み出し／書き込み回路１７０によりアクセス可能なメモリアレイ１００の代表的な配置を有するメモリ素子を概略的に示す。図２および３に関して説明したように、メモリアレイ１００内のメモリセルのメモリトランジスタは、選択されたワード線およびビット線のセットを介してアドレス指定可能である。アドレス指定されたメモリトランジスタのそれぞれのゲートに適切な電圧を印加するために、行デコーダ１３０は１つ以上のワード線を選択し、列デコーダ１６０は１つ以上のビット線を選択する。読み出し／書き込み回路１７０は、アドレス指定されたメモリトランジスタのメモリ状態を読み出しあるいは書き込む（プログラムする）ために設けられる。読み出し／書き込み回路１７０は、ビット線を介してアレイ内のメモリ素子に接続可能な幾つかの読み出し／書き込みモジュールを含む。
【００３３】
読み出し／書き込み性能および精度に影響を及ぼす因子
読み出しおよびプログラミングの性能を改善するために、アレイ内の複数の電荷蓄積素子またはメモリトランジスタが並行して読み出されるかまたはプログラムされる。従って、メモリ素子の１つの論理「ページ」が一緒に読み出されるかまたはプログラムされる。現存するメモリアーキテクチャでは、１つの行は通常数個のインターリーブされたページを含む。１ページのメモリ素子の全てが一緒に読み出されるかまたはプログラムされる。列デコーダは、インターリーブされたページの各々を対応する数の読み出し／書き込みモジュールに選択的に接続する。例えば、１つの実施例では、メモリアレイは５３２バイト（５１２バイトと、２０バイトのオーバーヘッド）のページサイズを持つように設計される。各列が１つのドレインビット線を含み、行あたりに２つのインターリーブされたページがあるならば、８，５１２列があり、各ページが４，２５６列と関連付けられることになる。全ての偶数ビット線または奇数ビット線を並行して読み出しまたは書き込むために接続可能な４，２５６個のセンスモジュールがある。このようにして、並列の、１ページの４，２５６ビット（すなわち、５３２バイト）のデータが、メモリ素子のページから読み出されるかまたはそれにプログラムされる。読み出し／書き込み回路１７０を形成する読み出し／書き込みモジュールは、種々のアーキテクチャに配列され得る。
【００３４】
前述したように、在来のメモリ素子は、一度に全ての偶数ビット線または全ての奇数ビット線に大規模並列に作用することによって読み出し／書き込み操作を改善する。インターリーブされた２ページから成る行のこの「交互ビット線」アーキテクチャは、読み出し／書き込み回路のブロックを取り付けるという問題を緩和するのに役立つ。それは、ビット線同士の容量結合を制御するという考慮事項によっても要求される。読み出し／書き込みモジュールのセットを偶数ページまたは奇数ページに多重化するためにブロックデコーダが使用される。このようにして、１セットのビット線が読み出されるかあるいはプログラムされるたびに、直ぐ隣のもの同士の結合を最小化するために、インターリービングなセットが接地され得る。
【００３５】
しかし、このインターリービングなページアーキテクチャは、少なくとも３つの点で不利である。第１に、追加の多重化回路を必要とする。第２に、動作が低速である。１つのワード線により接続されているあるいは１つの行の中のメモリセルの読み出しまたはプログラミングを終えるために、２つの読み出し操作あるいは２つのプログラミング操作が必要である。第３に、隣接する２つが例えば奇数ページおよび偶数ページで別々に、異なる時点でプログラムされるときのフローティングゲートレベルでの隣接する電荷蓄積素子の間の電界結合のような、他のかく乱効果に対処する上でも、最適ではない。
【００３６】
米国公開特許出願第２００４−００５７３１８号（特許文献１８）は、複数の連続するメモリセルを並行して感知することを可能にするメモリ素子とその方法とを開示している。例えば、同じワード線を共有する１つの行に沿う全てのメモリセルが１ページとして一緒に読み出されるかあるいはプログラムされる。この「全ビット線」アーキテクチャは、隣接するかく乱効果に起因するエラーを最小化し、同時に「交互ビット線」アーキテクチャの性能を２倍にする。しかし、全ビット線感知は、隣接するビット線同士の間の、それらの相互容量から誘導される電流に起因するクロストークの問題を引き起こす。これは、各々の隣接する対を成すビット線の間の電圧差を、それらの伝導電流が感知されている間、実質的に時間とは無関係であるように保つことによって、対処される。この条件が課されたとき、種々のビット線容量に起因する全ての変位電流は、全て時間変化する電圧差に依存するので、消える。接続されているビット線のどの隣接する対における電圧差も時間と無関係であるように、各ビット線に結合されている感知回路はビット線上に電圧クランプを有する。ビット線電圧がクランプされるので、ビット線容量に起因する放電を感知する在来の方法は適用され得ない。その代わりに、感知回路および方法は、メモリセルの伝導電流の判定を、ビット線から独立した所与のコンデンサを放電または充電するレートに留意することによって、可能にする。これは、感知回路がメモリアレイのアーキテクチャから独立していること（すなわち、ビット線容量から独立していること）を可能にする。特に、ビット線クロストークを避けるために、ビット線電圧が感知中クランプされることを可能にする。
【００３７】
不揮発性メモリの性能における１つの重要な態様はプログラミング速度である。プログラミング操作は、通常、１つのプログラミングパルスを加え、その後にメモリセルが意図された状態にプログラムされているか否かをプログラムベリファイするために感知を行うという交互のサイクルを含む。
【００３８】
従って、改善された性能を有する高性能で大容量の不揮発性メモリに対する一般的ニーズが存在する。特に、プログラムベリファイ操作を改善することを含む、プログラミング性能を改善する必要がある。
【特許文献１】米国特許第５，５９５，９２４号
【特許文献２】米国特許第５，０７０，０３２号
【特許文献３】米国特許第５，０９５，３４４号
【特許文献４】米国特許第５，３１５，５４１号
【特許文献５】米国特許第５，３４３，０６３号
【特許文献６】米国特許第５，６６１，０５３号
【特許文献７】米国特許第５，３１３，４２１号
【特許文献８】米国特許第６，２２２，７６２号
【特許文献９】米国特許第５，５７０，３１５号
【特許文献１０】米国特許第５，９０３，４９５号
【特許文献１１】米国特許第６，０４６，９３５号
【特許文献１２】米国特許第５，７６８，１９２号
【特許文献１３】米国特許第６，０１１，７２５号
【特許文献１４】米国特許第５，１７２，３３８号
【特許文献１５】米国特許第５，４１８，７５２号
【特許文献１６】米国特許第５，７７４，３９７号
【特許文献１７】米国特許第４，３５７，６８５号
【特許文献１８】米国公開特許出願第２００４−００５７３１８号
【特許文献１９】米国特許出願第１１／０２６，５３６号
【特許文献２０】米国公開特許出願第２００４−０１０９３５７号
【特許文献２１】米国特許第６，６５７，８９１号
【特許文献２２】米国公開特許出願第２００５−０２３７８１４号
【特許文献２３】米国公開特許出願第２００５−０１６９０８２号
【特許文献２４】米国特許第６，６４３，１８８号
【特許文献２５】米国特許第６，７３８，２８９号
【特許文献２６】米国公開特許出願第２００４−０１０９３６２号
【非特許文献１】エイタンらによる「ＮＲＯＭ：新しい局所トラッピング、２ビット不揮発性メモリセル」，ＩＥＥＥ電子デバイスレターズ，第２１巻，第１１号，２０００年１１月，５４３〜５４５ページ
【発明の開示】
【００３９】
本発明に従って、プログラムベリファイ操作中に感知されているメモリセルの状態に依存して、ベリファイ操作の一部が不必要であると認識されて時間節約のために省かれる。１つの好ましい実施形態では、並行してプログラムされているメモリセルのグループに対する、２つのメモリ状態を区別するための所与のしきい値レベルに関してのベリファイを含むプログラムベリファイ操作に関して、このベリファイ操作は一連の２つのベリファイサブサイクルを含み、第１のサブサイクルは、その所与のしきい値レベルから所定のマージン下の第１のしきい値レベルに関してのベリファイを実行し、第２のサブサイクルは、その所与のしきい値レベルと同一である第２のしきい値レベルに関してのベリファイを実行する。しかし、従来の場合とは違って、そのグループのいずれか１つのメモリセルが第１のしきい値を通過したとベリファイされるまでは第２のサブサイクルは実行されない。
【００４０】
１つの好ましい実施形態では、グループ中のいずれか１つのメモリセルが第１のしきい値レベルを通過してプログラムされているというイベントが発生したか否かを調べるために「１ビット通過(One-bit-Pass)」（「ＯＢＰ」）と称される操作が第１のサブサイクルの終わりに実行される。その場合には、その後のベリファイサイクルは最早ＯＢＰを必要としないが、第２のサブサイクルを含む。
【００４１】
本発明の付加的な特徴および利点は、添付図面と関連して検討されるべきであるその好ましい実施形態についての以下の記述から理解されるであろう。
【発明を実施するための最良の形態】
【００４２】
図６Ａは、本発明がその中で実現される環境を提供する、読み出し／書き込み回路のバンクを有するコンパクトなメモリ素子を概略的に示す。このメモリ素子は、メモリセルの２次元アレイ３００と、制御回路３１０と、読み出し／書き込み回路３７０とを含む。メモリアレイ３００は、行デコーダ３３０を介してワード線により、また列デコーダ３６０を介してビット線により、アドレス指定可能である。読み出し／書き込み回路３７０は、センスモジュール４８０のバンクとして実現され、メモリセルのブロック（「ページ」とも称される）が並行して読み出されるかまたはプログラムされることを可能にする。１つの好ましい実施形態では、１ページはメモリセルの連続する１つの行から構成される。メモリセルの１行が複数のブロックまたはページに分割される他の１つの実施形態では、読み出し／書き込み回路３７０を個々のブロックに多重化するためにブロックマルチプレクサ３５０が設けられる。
【００４３】
制御回路３１０は、読み出し／書き込み回路３７０と協働してメモリアレイ３００に対してメモリ操作を行う。制御回路３１０は、状態マシン３１２と、オンチップアドレスデコーダ３１４と、電源制御モジュール３１６とを含む。状態マシン３１２は、メモリ操作のチップレベル制御を提供する。オンチップアドレスデコーダ３１４は、ホストまたはメモリコントローラにより使用されるものと、デコーダ３３０および３７０により使用されるハードウェアアドレスとの間のアドレスインターフェイスを提供する。電源制御モジュール３１６は、メモリ操作中にワード線およびビット線に供給される電力および電圧を制御する。
【００４４】
図６Ｂは、図６Ａに示されているコンパクトなメモリ素子の好ましい配置を示す。種々の周辺回路によるメモリアレイ３００へのアクセスは、各々の側におけるアクセス線および回路が半分に減るように、アレイの両側で対称的に実行される。従って、行デコーダは行デコーダ３３０Ａおよび３３０Ｂに分割され、列デコーダは列デコーダ３６０Ａおよび３６０Ｂに分割されている。メモリセルの１つの行が複数のブロックに分割される実施形態では、ブロックマルチプレクサ３５０はブロックマルチプレクサ３５０Ａおよび３５０Ｂに分割される。同様に、読み出し／書き込み回路は、下からビット線と接続する読み出し／書き込み回路３７０Ａとアレイ３００の上からビット線と接続する読み出し／書き込み回路３７０Ｂとに分割される。このようにして、読み出し／書き込みモジュールの密度、従ってセンスモジュール４８０のバンクの密度は、本質的に半分減らされる。
【００４５】
並行して動作するｐ個のセンスモジュール４８０のバンク全体は、１行に沿うｐ個のセルのブロック（またはページ）が並行して読み出されるかまたはプログラムされることを可能にする。一例としてのメモリアレイはｐ＝５１２バイト（５１２×８ビット）を持つことができる。好ましい実施形態では、ブロックはセルの行全体の１つのランである。他の１つの実施形態では、ブロックは行の中のセルの部分集合である。例えば、セルの部分集合は行全体の二分の一または行全体の四分の一であり得る。セルの部分集合は、連続するセルの１つのラン、または一つ置きのセルのラン、または所定数ごとに１つのセルのランであり得る。各センスモジュールは、メモリセルの伝導電流を感知するための１つのセンス増幅器を含む。
【００４６】
図６Ｃは、数個のセンスモジュールの、１つの読み出し／書き込みスタックへの好ましいグループ化を示す。読み出し／書き込みスタック４９０は、センスモジュール同士の間の共通コンポーネントを除いて図６Ａに示されているセンスモジュールのグループを空間効率的に実現することを可能にする。
【００４７】
図６Ｄは、図６Ｃに示されている読み出し／書き込みスタックにおける基本的コンポーネントの一般的配置を概略的に示す。読み出し／書き込みスタック４９０は、ｋ個のビット線を感知するためのセンス増幅器のスタック２１２と、Ｉ／Ｏバス２３１を介してのデータの入力または出力のためのＩ／Ｏモジュール４４０と、入力データまたは出力データを記憶するデータラッチのスタック４３０と、読み出し／書き込みスタック４００の中でデータを処理して格納する共通プロセッサ５００と、スタックコンポーネント間の通信のためのスタックバス４２１とを含む。読み出し／書き込み回路３７０間のスタックバスコントローラは、読み出し／書き込みスタック間の種々のコンポーネントを制御するために線４１１を介して制御信号およびタイミング信号を提供する。共通プロセッサは、処理中データを一時的に格納するための１つ以上のレジスタまたはラッチ５２０を含む。
【００４８】
好ましい読み出し／書き込みスタックが、２００４年１２月２９日に出願された米国特許出願第１１／０２６，５３６号（特許文献１９）に開示されている。好ましいセンス増幅器が、米国公開特許出願第２００４−０１０９３５７号（特許文献２０）に開示されている。これら特許出願は、本願明細書において参照により援用されている。
【００４９】
多状態メモリのための読み出しおよびプログラミングの例
図７Ａ〜７Ｅ、図８Ａ〜８Ｅ、図９Ａ〜９Ｅは、それぞれ４状態メモリのためのマルチビット符号化の３つの例を示す。４状態メモリセルでは、４つの状態が２ビットで表され得る。１つの現存する技術は、そのようなメモリをプログラムするために２パスプログラミングを使用する。第１のビット（下側ページビット）は第１のパスによりプログラムされる。その後、所望の第２のビット（上側ページビット）を表すために第２のパスで同じセルがプログラムされる。第２のパスにおいて第１のビットの値を変化させないために、第２のビットのメモリ状態表示は第１のビットの値に依存させられる。
【００５０】
図７Ａ〜７Ｅは、普通の２ビットグレイコードで符号化される４状態メモリのプログラミングと読み出しとを示す。メモリセルのプログラム可能なしきい値電圧の範囲（しきい値ウィンドウ）はプログラムされていない「Ｕ」状態と、だんだんプログラムされてゆく他の３つの状態「Ａ」、「Ｂ」および「Ｃ」とを表す４つの領域に分割される。４つの領域は境界しきい値電圧ＤA ，ＤB およびＤC によりそれぞれ画定されている。
【００５１】
図７Ａは、各メモリセルが普通のグレイコードを用いて２ビットのデータを記憶するときの４状態メモリアレイのしきい値電圧分布を示す。４つの分布は、４つのメモリ状態「Ｕ」、「Ａ」、「Ｂ」および「Ｃ」の個数を表す。メモリセルがプログラムされる前に、初めに消去されてその「Ｕ」すなわち「プログラムされていない」状態とされる。メモリセルがだんだんプログラムされてゆくとき、前進的にメモリ状態「Ａ」、「Ｂ」および「Ｃ」に到達する。グレイコードは（上位ビット、下位ビット）を用いて「Ｕ」を（１，１）として、「Ａ」を（１，０）として、「Ｂ」を（０，０）として、「Ｃ」を（０，１）として示す。
【００５２】
図７Ｂは、グレイコードを用いる現存する２パスプログラミング方式における下側ページプログラミングを示す。並行してプログラムされるべき１ページのセルについて、上位ビットと下位ビットとは２つの論理ページ、すなわち下位ビットから成る論理下側ページと、上位ビットから成る論理上側ページと、を生じさせる。第１のプログラミングパスは、論理下側ページビットをプログラムするだけである。適切な符号化により、セルの同じページに対する第２のプログラミングパスは、論理下側ページビットをリセットせずに論理上側ページビットをプログラムする。グレイコードは、隣接する状態に遷移するときに１つのビットだけが変化する一般的に使われるコードである。従って、このコードは、１ビットだけが関係するので、エラー訂正に余り負担を課さないという利点を有する。
【００５３】
グレイコードを用いる１つの一般的な方式は、「１」に「プログラムされない」状態を表させる。従って、消去されたメモリ状態「Ｕ」は（上側ページビット、下側ページビット）＝（１，１）により表される。従って、論理下側ページをプログラムする第１のパスにおいて、ビット「０」を記憶するセルは、その論理状態を（ｘ，１）から（ｘ，０）へ遷移させ、ここで「ｘ」は上位ビットの「かまわない(don't care)」値を表す。しかし、上位ビットはまだプログラムされていないので、「ｘ」は一貫性を目的として「１」で分類されてもよい。（１，０）論理状態は、セルをメモリ状態「Ａ」にプログラムすることによって表される。すなわち、第２のプログラミングパスより前に、「０」という下位ビット値がメモリ状態「Ａ」により表される。
【００５４】
図７Ｃは、グレイコードを用いる現存する２パスプログラミング方式における上側ページプログラミングを示す。論理上側ページのビットを記憶させるために第２のパスプログラミングが実行される。「０」という上側ページビット値を必要とするセルだけがプログラムされる。第１のパス後、そのページの中のセルは論理状態（１，１）または（１，０）にある。第２のパスにおいて下側ページの値を維持するために、「０」または「１」という下位ビット値は区別されなければならない。（１，０）から（０，０）への遷移のために、問題のメモリセルはメモリ状態「Ｂ」にプログラムされる。（１，１）から（０，１）への遷移のために、問題のメモリセルはメモリ状態「Ｃ」にプログラムされる。このようにして、読み出し中、セルにプログラムされたメモリ状態を判定することによって、下側ページビットと上側ページビットとの両方が復号化され得る。
【００５５】
プログラミングは、交互に、１ページのメモリセルに並列にプログラミングパルスを加え、その後に各セルに対して感知またはプログラムベリファイを行ってそれらのうちのいずれかがそのターゲット状態にプログラムされているか否かを判定することにより、成し遂げられる。１つのセルがプログラムベリファイされると、それは、そのグループ中の他のセルのプログラミングを完了するためにプログラミングパルスが加えられ続けていても、それ以上プログラミングされないように締め出されるかあるいはプログラミング禁止される。下側ページプログラミング中、プログラムベリファイが境界しきい値電圧ＤA で状態「Ａ」に関して行われなければならない（「ベリファイＡ」により表示される）ということが図７Ｂおよび７Ｃから分かる。しかし、上側ページプログラミングに関して、プログラムベリファイは状態「Ｂ」および「Ｃ」に関して実行されなければならない。従って、上側ページベリファイは、それぞれ境界しきい値電圧ＤB およびＤC に関する「ベリファイＢ」および「ベリファイＣ」という２パスベリファイを必要とする。
【００５６】
図７Ｄは、グレイコードで符号化された４状態メモリの下位ビットを識別するために必要とされる読み出し操作を示す。（１，０）により符号化されたメモリ状態「Ａ」と（０，０）により符号化されたメモリ状態「Ｂ」との両方がその下位ビットとして「０」を有するので、メモリセルが状態「Ａ」あるいは「Ｂ」にプログラムされるときには下位ビット「０」が検出される。逆に、下位ビット「１」は、メモリセルが状態「Ｕ」でプログラムされないかあるいは状態「Ｃ」にプログラムされるときに検出される。従って、下側ページ読み出しは、それぞれ境界しきい値電圧ＤA およびＤC に関しての読み出しＡおよび読み出しＣの２パス読み出しを必要とする。
【００５７】
図７Ｅは、グレイコードで符号化された４状態メモリの上位ビットを識別するために必要とされる読み出し操作を示す。境界しきい値電圧ＤB に関しての読み出しＢという１つの読み出しパスを必要とする。このように、ＤB より低いプログラムされたしきい値電圧を有するセルはメモリ状態「１」にあると検出され、逆もまた同様である。
【００５８】
グレイコード２パスプログラミング方式は、第２のパスプログラミングが誤っているときには問題となり得る。例えば、下位ビットが「１」である間に上側ページビットを「０」にプログラムする操作は（１，１）から（０，１）への遷移を引き起こす。これは、メモリセルが「Ｕ」から前進的に「Ａ」および「Ｂ」を通って「Ｃ」にプログラムされることを必要とする。プログラミング完了の前に停電があれば、メモリセルは例えば「Ａ」などの中間メモリ状態のうちの１つで終了し得る。メモリセルが読み出されるとき、「Ａ」は論理状態（１，０）として復号化される。これは上位ビットおよび下位ビットの両方に関して誤った結果を与える。なぜならば、それは（０，１）であるべきだったからである。同様に、「Ｂ」に達したときにプログラミングが中断されたならば、それは（０，０）に対応する。この場合、上位ビットは正しいけれども、下位ビットは依然として間違っている。さらに、プログラムされていない状態「Ｕ」から最もプログラムされた状態「Ｃ」への大幅な遷移があり得るので、このコード方式は、異なる時にプログラムされた隣接するセル同士の電荷レベル間の潜在的な差異を悪化させるという効果を有する。また、隣接するフローティングゲート間の電界効果結合（ユーピン効果(Yupin Effect)）を悪化させる。
【００５９】
図８Ａ〜８Ｅは、他の論理コード（「ＬＭ」コード）で符号化された４状態メモリのプログラミングおよび読み出しを示す。このコードは、より大きなフォールトトレランスを提供し、ユーピン効果に起因する隣接するセル結合を緩和する。図８Ａは、各メモリセルがＬＭコードを用いて２ビットのデータを記憶するときの４状態メモリアレイのしきい値電圧分布を示す。ＬＭ符号化は、状態「Ａ」および「Ｃ」について上位ビットと下位ビットとが逆転されているという点で、図７Ａに示されている普通のグレイコードと異なる。「ＬＭ」コードが、米国特許第６，６５７，８９１号（特許文献２１）に開示され、電荷に大きな変化を必要とするプログラミング操作を避けることによって隣接するフローティングゲート間の電界効果結合を減らすことにおいて有利である。
【００６０】
図８Ｂは、ＬＭコードを用いる現存する２ラウンドプログラミング方式における下側ページプログラミングを示す。フォールトトレラントのＬＭコードは、中間の状態を通過するために上側ページプログラミングを本質的に回避する。第１のラウンド下側ページプログラミングは、論理状態（１，１）を、「プログラムされていない」メモリ状態「Ｕ」をＤA よりは高いけれどもＤC よりは低い広い分布の中のプログラムされたしきい値電圧を有する（ｘ，０）により指定される「中間」状態にプログラムすることによって表されるある中間状態（ｘ，０）に移行させる。図８Ｃは、ＬＭコードを用いる現存する２ラウンドプログラミング方式における上側ページプログラミングを示す。上側ページビットを「０」にプログラムする第２のランドにおいて、下側ページビットが「１」ならば、論理状態（１，１）は、「プログラムされていない」メモリ状態「Ｕ」を「Ａ」にプログラムすることによって表される（０，１）に移行する。下側ページビットが「０」ならば、論理状態（０，０）は、「中間」状態から「Ｂ」へプログラムすることによって得られる。同様に、下側ページが「０」にプログラムされたのに対して上側ページが「１」に留まるべきであるならば、「中間」状態から、「中間」状態を「Ｃ」にプログラムすることにより表される（１，０）への移行を必要とする。上側ページプログラミングは直ぐ隣のメモリ状態へのプログラミングを必要とするに過ぎないので、１つのラウンドから次のラウンドへの過程で大量の電荷が変更されることはない。「Ｕ」から大雑把な「中間」状態への下側ページプログラミングは、時間を節約するように設計されている。しかし、これは、「ＬＭ」コードが同様に上側ページプログラミングエラーを起こしやすいか、あるいは上側ページプログラミング中の停電に弱いという結果をもたらす。例えば、状態「Ａ」は、「中間」状態から区別され得ないしきい値電圧の方へ移動することがある。
【００６１】
図８Ｄは、ＬＭコードで符号化された４状態メモリの下位ビットを識別するために必要とされる読み出し操作を示す。復号化は、上側ページがプログラムされているか否かによる。上側ページがプログラムされているならば、下側ページの読み出しは、境界しきい値電圧ＤB に関しての読み出しＢという１つの読み出しパスを必要とする。一方、上側ページがまだプログラムされていなければ、下側ページは「中間」状態（図８Ｂ）にプログラムされ、読み出しＢはエラーを引き起こす。むしろ、下側ページの読み出しは、境界しきい値電圧ＤAに関しての読み出しＡという１つの読み出しパスを必要とする。これら２つの場合を識別するために、上側ページがプログラムされているときに上側ページにフラグ（「ＬＭ」フラグ）が書き込まれる。読み出し時に、初めに上側ページがプログラムされていると仮定され、従って読み出しＢ操作が実行される。ＬＭフラグが読み出されたならば、その仮定は正しくて、その読み出し操作は終了する。一方、第１の読み出しがフラグをもたらさなければ、上側ページがプログラムされていないことを示し、従って下側ページは読み出しＡ操作によって読み出されなければならない。
【００６２】
図８Ｅは、ＬＭコードで符号化された４状態メモリの上側ビットを識別するために必要とされる読み出し操作を示す。図から明らかであるように、上側ページ読み出しは、それぞれ境界しきい値電圧ＤA およびＤC に関しての読み出しＡおよび読み出しＣの２パス読み出しを必要とする。同様に、上側ページがまだプログラムされていなければ、上側ページの復号化も「中間」状態により混乱し得る。再び、上側ページがプログラムされているか否かをＬＭフラグが示す。上側ページがプログラムされていなければ、読み出されたデータは、上側ページデータがプログラムされていないことを示す「１」にリセットされる。
【００６３】
ＬＭコードも、部分的ページプログラミングをサポートするメモリにおいては問題になり得る。１ページのメモリセルが並行してプログラムされるかあるいは読み出されるとき、部分的ページプログラミングは、そのページの一部が１パスでプログラムされ、プログラムされていない残りの部分がその後のパスでプログラムされることを可能にする。ＬＭコードは、上側ページがデータで部分的に満たされるに過ぎないプログラミング操作において問題を生じさせる。部分的に満たされていないページを完成させるための後の上側ページプログラミングにおいて、データは間違った状態にプログラムされ得る。慣習によって「１」ビットは「プログラムされていない」状態を表し、従って上位ビットおよび下位ビットの両方が初めにプログラムされていない「Ｕ」状態において「１」に戻る。上側ページビットは、満たされていない部分においてセルを表す「１」であるべきである。満たされていない部分に存するセルについての下側ページビットが偶然「１」であったならば、その結果としての論理状態（１，１）は、そのセルを「Ｕ」に留まらせる。しかし、下側ページビットが「０」であるならば、そのセルを最もプログラムされた（最高しきい値電圧）「Ｃ」状態にプログラムさせる論理状態（１，０）をもたらす。満たされていない部分を完成させる後のプログラミングパスは、最早（０，０）すなわち「Ｂ」状態に到達する可能性を含むことはできない。なぜならば、「Ｃ」から、プログラミングの程度がより浅い状態に戻ることは不可能だからである。
【００６４】
図９Ａ〜９Ｅは、好ましい論理コード（「ＬＭニュー」コード）で符号化された４状態メモリのプログラミングと読み出しとを示す。ＬＭニューコードは、ＬＭコードに似ているけれども、前述した欠点を持っていない。図９Ａは、各メモリセルがＬＭニューコードを用いて２ビットのデータを記憶するときの４状態メモリアレイのしきい値電圧分布を示す。ＬＭニューコードは、２００５年１０月２７日に公開されたリーら(Li et al.) による「改善された部分的ページプログラム能力を有する不揮発性メモリおよび制御 (NON-VOLATILE MEMORY AND CONTROL WITH IMPROVED PARTIAL PAGE PROGRAM CAPABILITY)」という米国公開特許出願第２００５−０２３７８１４号（特許文献２２）に開示されている。このコードは、状態「Ｂ」および「Ｃ」についての論理的符号化が交換されている点で、図８Ａに示されているＬＭコードと異なる。（上位ビット、下位ビット）は、「Ｕ」については（１，１）であり、「Ａ」については（０，１）であり、「Ｂ」については（１，０）であり、「Ｃ」については（０，０）である。この符号化は、前述したＬＭコードにおける部分的ページプログラミングの問題を回避する。なぜならば、この場合には部分的に満たされていない上側ページは、下位ビットが「０」であるときには「Ｂ」状態にプログラムされるからである。部分的に満たされていない部分のその後のプログラミングは（１，０）から（０，０）論理状態へのプログラミングを可能にし、それは「Ｂ」から「Ｃ」状態へのプログラミングに対応する。
【００６５】
図９Ｂは、ＬＭニューコードを用いる現存する２パスプログラミング方式における下側ページプログラミングを示す。フォールトトレラントのＬＭニューコードは、本質的に、中間状態を通過するために上側ページプログラミングを回避する。第１のパス下側ページプログラミングは、論理状態（１，１）を、「プログラムされていない」メモリ状態「Ｕ」をＤA よりは高いけれどもＤC よりは低いプログラムされたしきい値電圧を有する（ｘ，０）により指定される「中間」状態にプログラムすることによって表されるある中間状態（ｘ，０）に移行させる。
【００６６】
図９Ｃは、ＬＭニューコードを用いる現存する２パスプログラミング方式における上側ページプログラミングを示す。上側ページビットを「０」にプログラムする第２のパスにおいて、下側ページビットが「１」であるならば、論理状態（１，１）は、「プログラムされていない」メモリ状態「Ｕ」を「Ａ」にプログラムすることによって表される（０，１）に移行する。下側ページビットが「０」ならば、論理状態（０，０）は「中間」状態から「Ｃ」へのプログラミングにより得られる。同様に、下側ページが「０」にプログラムされたのに対して上側ページが「１」に留まるべきであるならば、「中間」状態から、「中間」状態を「Ｂ」にプログラムすることにより表される（１，０）への移行を必要とする。
【００６７】
図９Ｄは、ＬＭニューコードで符号化された４状態メモリの下位ビットを識別するために必要とされる読み出し操作を示す。ここでも、ＬＭコードの場合と同じ考慮事項が当てはまる。ＬＭフラグが読め出せるか否かを判定するために読み出しＢ操作が初めに実行される。読み出せるならば、上側ページはプログラムされていて、読み出しＢ操作は下側ページデータを正しくもたらす。一方、上側ページがまだプログラムされていなければ、下側ページデータは読み出しＡ操作によって読み出される。
【００６８】
図９Ｅは、ＬＭニューコードで符号化された４状態メモリの上位ビットを識別するために必要とされる読み出し操作を示す。図から明らかであるように、上側ページ読み出しは、それぞれ境界しきい値電圧ＤA ，ＤB およびＤC に関しての読み出しＡ、読み出しＢおよび読み出しＣの３パス読み出しを必要とする。上側ページの復号化は、前述したＬＭコードのためのＬＭフラグに関して説明されたのと同じ考慮事項を有する。
【００６９】
例としての４状態メモリについての前の種々のコードについての検討は、プログラムされたしきい値電圧を境界しきい値電圧ＤB に関して比較する「読み出しＢ」の場合のような単一の感知パスを読み出し操作が必要とし得ることを示している。読み出しＢ操作は、普通のグレイコードのもとでの上側ページ、あるいはＬＭコードのもとでの下側ページ、またはＬＭニューコードのもとでの下側ページを読み出すために適用できる。
【００７０】
読み出し操作は、また、普通のグレイコードのもとでの下側ページ、あるいはＬＭコードのもとでの上側ページを読み出すとき、読み出しＡおよび読み出しＣの場合のような２パス読み出しを必要とし得る。
【００７１】
読み出し操作は、また、ＬＭニューコードのもとでの上側ページを読み出すときに読み出しＡ、読み出しＢおよび読み出しＣの場合のような３パス読み出しを必要とし得る。
【００７２】
図１０は、前述したメモリを感知するために適する図６Ａに示されているセンスモジュールをより詳しく概略的に示す。センスモジュール４８０は、結合されたビット線３６を介してＮＡＮＤチェーン５０内のメモリセルの伝導電流を感知する。ビット線、センス増幅器６００または読み出しバス４９９に選択的に結合され得る感知ノード４８１を有する。初め、絶縁トランジスタ４８２は、信号ＢＬＳによってイネーブルされたときにビット線３６を感知ノード４８１に接続する。センス増幅器６００は、感知ノード４８１を感知する。センス増幅器は、プリチャージ／クランプ回路６４０と、セル電流識別器６５０とラッチ６６０とを含む。
【００７３】
センスモジュール４８０は、ＮＡＮＤチェーン内の選択されたメモリセルの伝導電流が感知されることを可能にする。感知の前に、選択されたメモリセルのゲートへの電圧が、適切なワード線およびビット線を介してセットされなければならない。後により詳しく説明されるように、プリチャージ操作は、選択されていないワード線が電圧Ｖｒｅａｄに充電されることから始まり、その後に、選択されたワード線を考慮中の所与のメモリ状態についての所定しきい値電圧ＶT （ｉ）に充電する。プリチャージ回路６４０は、その後、ビット線電圧を感知に適する所定のドレイン電圧にする。これはＮＡＮＤチェーン５０内の選択されたメモリセルにおいてソース−ドレイン伝導電流を流れさせ、結合されたビット線３６を介してＮＡＮＤチェーンのチャネルから検出される。伝導電流は、メモリセルのソースとドレインとの間に公称電圧差が存在するとき、メモリセル内にプログラムされている電荷と印加されたＶT （ｉ）との関数である。
【００７４】
ＶT （ｉ）電圧が安定しているとき、選択されたメモリセルの伝導電流あるいはプログラムされたしきい値電圧が、信号ＸＸＬによりゲート制御されるトランジスタ６３０を介し、結合されたビット線３６を介して感知され得る。セル電流識別器６５０は、電流レベルの識別器または比較器として役立つ。これは、メモリセルの伝導電流を感知するために感知ノードに結合される。感知は、信号ＨＨＬによって制御されるトランジスタ６３２によってプリチャージが止められたときに、始まる。その後、伝導電流はセル電流識別器６５０内の基準容量を放電させる。トランジスタ６３０をオフに転換する信号ＸＸＬでセルが減結合されたときに所定の放電期間が終了する。感知される伝導電流の大きさはこの期間の終了時の基準コンデンサの電圧放電量により表され、この結果は、ストローブ信号ＳＴＢにより制御されたときにラッチ６６０にラッチされる。セル電流識別器６５０は、実際上、セルの伝導電流が所与の境界電流値Ｉ0 （ｊ）より大きいかあるいは小さいかを判定する。大きければ、ラッチ６６０は、信号ＩＮＶ＝１（ＨＩＧＨ）を伴う所定の状態にセットされる。
【００７５】
プルダウン回路４８６は、信号ＩＮＶをＨＩＧＨにセットするラッチ６６０に応答して活性化される。これは、感知ノード４８１を、従って接続されているビット線３６を接地電圧に引き下げる。これはメモリセル１０における伝導電流の流れをコントロールゲート電圧に関わらず抑制する。なぜならば、そのソースとドレインとの間に電圧差がないからである。
【００７６】
一般に、対応する数のマルチパスセンスモジュール４８０の作用を受ける１ページのメモリセルがある。ページコントローラ４９８は、センスモジュールの各々に制御信号およびタイミング信号を供給する。ページコントローラ４９８は、マルチパスセンスモジュール４８０の各々を所定数のパス（ｊ＝１からＮまで）を通して循環させ、各パスのために所定の境界電流値Ｉ0 （ｊ）を供給する。当該技術分野で周知されているように、境界電流値は、境界しきい値電圧あるいは感知のための期間としても実現され得る。最後のパスの後、ページコントローラ４９８は、読み出しバス４９９への感知されたデータとしての感知ノード４８１の状態を転送ゲート４８８が読み出すことを信号ＮＣＯで可能にする。全体で、１ページの感知データが全てのマルチパスモジュール４８０から読み出される。同様のセンスモジュールが、２００５年８月４日に公開されたセルニアら(Cernea et al.,)による「低電圧動作のための改善されたメモリ感知回路および方法(IMPROVED MEMORY SENSING CIRCUIT AND METHOD FOR LOW VOLTAGE OPERATION)」という米国公開特許出願第２００５−０１６９０８２号（特許文献２３）に開示されている。この特許出願は、本願明細書において参照により援用されている。
【００７７】
スマートな時間節約プログラムベリファイ
不揮発性メモリの性能における１つの重要な態様はプログラミング速度である。このセクションは、多状態不揮発性メモリのプログラミング性能を改善する方法を論じる。特に、１つの改善されたプログラミング操作が時間節約プログラムベリファイで実現される。
【００７８】
クイックパス書き込み（「ＱＰＷ」）
１つの好ましいプログラミング操作は「クイックパス書き込み(Quick Pass Write)」（あるいは「ＱＰＷ」）と称され、その全体が本願明細書において参照により援用されている、米国特許第６，６４３，１８８号（特許文献２４）に開示されている。
【００７９】
メモリをプログラムすることの目標はデータを速く、ただし正確に、書き込むことである。バイナリメモリでは、２つのメモリ状態を識別するために１つの境界しきい値レベルを使用するだけでよい。メモリセルが境界しきい値レベルより高いしきい値でプログラムされたとき、「プログラムされた」状態にあると見なされ、そうでなければ「プログラムされていない」状態に留まっている。あるいは、所与のゲート電圧について、より少なくプログラムされたセルはより大きな伝導電流を有する。境界しきい値電圧がメモリセルのゲートに印加されたとき、対応する境界伝導電流がある。セルがその境界伝導電流より大きな伝導電流を有するならば、プログラムされていない状態にあると見なされ、そうでなければ、プログラムされた状態にある。
【００８０】
多状態メモリでは、各中間状態が２つの境界しきい値レベルの間に画定されるので、事態はより複雑である。中間状態にプログラムするときには、セルはその２つの境界レベルの間のしきい値でプログラムされなければならない。それゆえ、第１の境界レベルより高くなければならないが高すぎてはならず、さもなければ第２の境界レベルを通り越してしまう。従って、正確にプログラムする必要がある。１群のメモリセルをプログラムすることは、その群のセルを境界レベル間に密集させる結果をもたらす（図７〜８を参照）。プログラミングの不正確さは、所与の状態の分布がその境界レベルを超えて間違って広がるという結果をもたらす。たとえ分布が範囲内にあっても限界まで広がっているならば、プログラムかく乱あるいは他の環境効果によってエラーが生じやすくなる。この問題は、状態の数が増えるにつれて、あるいは利用可能なしきい値ウィンドウが狭くなるとき、あるいはその両方のときに、いっそう悪化する。
【００８１】
状態分布を引き締める１つの手法は、同じデータを複数回プログラムすることによる。一例は、本願明細書において参照により援用されている、米国特許第６，７３８，２８９号（特許文献２５）に記載されている粗大−精密プログラミング方法である。
【００８２】
図１１は、所与のプログラムされたメモリ状態を有するメモリセルの２つの分布を示し、より広く広がっている分布はＶＬレベルでベリファイされるシングルパスプログラミングにより作られ、より引き締まっているほうの分布は、第２のパスがＶＨレベルでベリファイされる２パスプログラミングにより作られる。第１のパスで、セルは、第１の、低いほうのベリファイレベルＶＬを用いるプログラミング波形ＰＷ１で書き込まれ、分布１３０１を生じさせる。プログラミング波形は、第２のパスのために、より低い値から繰り返し出発する。第２のパスでは、プログラミング波形ＰＷ２は、これを分布１３０３のほうへ移すために第２の、より高いベリファイレベルＶＨを用いる。これは、第１のパスがセルを後に第２のパスで引き締められる粗い分布に置くことを可能にする。
【００８３】
図１２は、２パスプログラミング波形の例を示す。各プログラミングパルスの間に、最後のプログラミングパルスの後のメモリセルの状態を感知するための、より小さなゲート電圧レベルがある。第１の階段波ＰＷ１  １４０１は、より低いベリファイレベルＶＬを使用し、ＰＷ２はより高いベリファイレベルＶＨを使用する。第２のパス（ＰＷ２  １４０３）は、米国特許第６，７３８，２８９号（特許文献２５）に記載されているように、小さなステップサイズを用いることができるけれども、異なるベリファイレベルは別として、プロセスは同じである。このアプローチの短所は、各プログラミングシーケンスが２パスを必要とすることであり、プログラミング波形は両方の階段波全体を通過し、１４０１を実行してから再び１４０３を開始しなければならない。
【００８４】
図１３は、２パスプログラミング操作のためのベリファイ操作における感知についてのタイミング図である。初めに、ワード線ＷＬがプリチャージされる。その後にビット線ＢＬがプリチャージされる。プリチャージされた電圧が安定したとき、第１のストローブＳＴＢはメモリセルの大伝導状態を感知し、それらをラッチする。これらの大伝導状態のビット線は、それらがその後の感知にソースバイアスエラーを持ち込まないように、接地にラッチされる。ビット線の電圧が安定状態に回復した後、メモリセルは第２のストローブＳＴＢにおいて感知される。その後、ワード線は放電され、次のプログラミングパルスへのセットアップができる状態となる。感知されたデータは、ＳＣＡＮ信号がアサートされたときにデータラッチに転送される。２パスプログラミング操作では、ベリファイ操作は、ＷＬを、第１のパス中はＶＬにセットさせ、その後第２のパス中はＶＨにセットさせる。
【００８５】
より低いベリファイＶＬに基づく最初のプログラミングフェーズを受けるべき分布を考慮して、プログラミングパルスの単一の階段波を伴う単一のパスを用いることが可能であるが、この初期レベルに達したならばプロセスの速度を落としてより高いベリファイＶＨを用いて分布を洗練することがなお可能であるならば、書き込みはより速く実行され得る。これは、プログラミング波形のための単一の階段波シーケンスでプログラムするためにビット線バイアスを用いる「クイックパス書き込み」を通して成し遂げられ得る。このアルゴリズムは、２パス書き込みのものと同様の効果を達成することができ、米国特許第６，６４３，１８８号（特許文献２４）により詳しく記載されている。
【００８６】
図１４は、クイックパス書き込みのシングルパスプログラミング波形を示す。プログラミング波形ＱＰＷ１５０１は、ベリファイ操作がＶＬレベルおよびＶＨレベルの両方で実行されることを除いて（各プログラミングパルスの間の小さな２ステップパルスを参照）、まさに２パスアルゴリズムの第１のフェーズと同様である。しかし、ＶＬでのベリファイが行われたならば、階段波形を再開するのではなくて、階段波が続くけれども、ＶＨでセルがベリファイされるまでプログラミングが続くときにプログラミング速度を遅くするためにビット線電圧は高められる。これは、プログラミング波形のパルスが単調に非減少性であることを可能にし、プログラム／ベリファイサイクルを顕著に短縮することを可能にする。
【００８７】
図１５は、１パスＱＰＷプログラミング操作のためのベリファイ操作における感知についてのタイミング図である。初めに、ワード線ＷＬはＶＬにプリチャージされる。その後、ビット線ＢＬがプリチャージされる。プリチャージされた電圧が安定したとき、ＶＬストローブＳＴＢはメモリセルを感知し、それらをラッチする。感知ＶＬデータは、第１のＳＣＡＮ信号がアサートされたときにデータラッチに転送される。ＶＬで首尾よくベリファイされたセルは、そのビット線を、プログラミングを低速化する電圧にセットさせる。その後、ワード線はレベルＶＨに高められる。プリチャージされた電圧が安定した後、第１のＶＨストローブＳＴＢは、メモリセルを感知してメモリセルの大伝導状態を識別し、それらをラッチする。これらの大伝導状態のビット線は、それらが後の感知にソースバイアスエラーを持ち込まないように、接地にラッチされる。ビット線の電圧が安定状態に回復した後、メモリセルは第２のＶＨストローブＳＴＢで感知される。その後、ワード線は放電され、次のプログラミングパルスへのセットアップができる状態となる。感知されたＶＨデータは、第２のＳＣＡＮ信号がアサートされたときにデータラッチに転送される。
【００８８】
スマートなクイックパス書き込み（「ＳＱＰＷ」）
最新のクイックパス書き込み（ＱＰＷ）ベリファイ方式は、２つの別々の独特のＶＬベリファイおよびＶＨベリファイを組み合わせて１つのベリファイシーケンスとする。この方式ではＷＬは放電し再充電することなく同じベリファイシーケンスの中でＶＬからＶＨへ変化し、これにより、図１２および図１３に関して説明した２パスプログラミング方式と比べて時間を節約する。しかし、図１５から分かるように、各ベリファイサイクルが常にＶＬサブサイクルとＶＨサブサイクルとを含む。
【００８９】
本発明によれば、プログラムベリファイ操作中に感知されているメモリセルの状態に依存して、ベリファイ操作の一部が不必要であると認識されて時間節約のために省かれる。１つの好ましい実施形態では、並行してプログラムされているメモリセルのグループに対する、２つのメモリ状態を区別するための所与のしきい値レベルに関してのベリファイを含むプログラムベリファイ操作に関して、ベリファイ操作は一連の２つのベリファイサブサイクルを含み、第１のサブサイクルは、その所与のしきい値レベルから所定のマージン下の第１のしきい値レベルに関してのベリファイを実行し、第２のサブサイクルは、その所与のしきい値レベルと同一である第２のしきい値レベルに関してのベリファイを実行する。しかし、従来の場合とは違って、そのグループのいずれか１つのメモリセルが第１のしきい値を通過したとベリファイされるまでは第２のサブサイクルは実行されない。
【００９０】
１つの好ましい実施形態では、グループ中のいずれか１つのメモリセルが第１のしきい値レベルを通過してプログラムされているというイベントが発生したか否かを調べるために「１ビット通過」（「ＯＢＰ」）と称される操作が第１のサブサイクルの終わりに実行される。そのイベントの場合、その後のベリファイサイクルの場合のように第２のサブサイクルが追加される。また、その後のベリファイサイクルではＯＢＰ操作は実行されない。図６Ｄを参照すると、並行して操作されるべきメモリセルのページに役立つ読み出し／書き込みスタック４９０の各々は、センス増幅器２１２内の感知されたデータをラッチ５２０に逐次蓄積させる。プログラムされた状態が第１のしきい値レベルより低いしきい値レベルを有するとき、論理「０」である。感知された状態のうちのいずれか１つが第１のしきい値レベルを通過しているとき、論理「１」である。従って、ＯＢＰ操作は、転送終了時にラッチが値「０」を有するか否かを調べなければならないに過ぎない。「０」ならば、ベリファイサイクルは第２のサブサイクルを省き続ける。１つの「０」ではない値が検出されると、第２のサブサイクルが追加され、その後のベリファイサイクルではＯＢＰ操作は最早実行されない。
【００９１】
図１６は、本発明による、改善されたプログラムベリファイ操作についてのフローチャートである。
ステップ７１０：並行してプログラムされるべきメモリセルのグループを選択する。
プログラムサイクル
ステップ７１２：そのグループに共通のワード線に適切なプログラミングパルスを加える。
第１のしきい値に関しての第１のベリファイサブサイクル
ステップ７２０：そのワード線を第２のしきい値電圧より所定のマージン下の第１のしきい値電圧にプリチャージし、そのとき、プログラムされたセルは第２のしきい値電圧に関してベリファイされる。
ステップ７２２：そのグループに関連付けられているビット線を感知に適する電圧にプリチャージする。
ステップ７２４：そのグループのメモリセルを並行して感知する。
ステップ７２６：いずれかのセルが第１のしきい値電圧に関して首尾よくベリファイされたならば（すなわち、いずれか「１ビット通過」についてのチェック）、ステップ７３０の第２のベリファイサブサイクルに進み、そうでなければ第２のサブサイクルを省いてステップ７１２の次のプログラミングパルスに進む。
第２のしきい値に関しての第２のベリファイサブサイクル
ステップ７３０：プログラミングを低速化するために、ベリファイされたセルのビット線電圧を変更する。
ステップ７４０：ワード線を、それに関して感知が実行されるところの第２のしきい値電圧にプリチャージする。
ステップ７４２：そのグループのメモリセルを並行して感知する。
ステップ７４４：いずれかのセルが第２のしきい値電圧に関して首尾よくベリファイされたならば、ステップ７５０に進み、そうでなければステップ７１２の次のプログラミングパルスに進む。
ステップ７５０：そのグループ中の、第２のしきい値に関してベリファイされる必要のあるセルの全てが首尾よくベリファイされたならば、ステップ７６０に進み、そうでなければステップ７５２に進む。
ステップ７５２：ちょうどベリファイされたばかりのセルがプログラムされるのを妨げ、ステップ７１２の次のプログラミングパルスに進む。
ステップ７６０：第２のしきい値電圧に関してのベリファイについて、プログラミングは終了した。
【００９２】
ここで重要な特徴は、第１のＶＬベリファイサブサイクルの終了時に、グループ中のどのセルもＶＬを通過していなければ、第２のＶＨベリファイサブサイクルが不要であるということである。ＶＨデータについて感知し、ストローブし、走査するために時間を浪費する必要はない。グループ中のどのセルもＶＬを通過していなければ、第２のＶＨベリファイサブサイクルは省かれ、これによりある程度の時間節約を実現する。一般に、メモリセルがより多くのレベルに分割されるほど、正確なプログラミングの必要性が高まり、本発明のＳＱＰＷベリファイ方式はますます有益となる。
【００９３】
好ましい実施形態では、このＳＱＰＷベリファイは、ＶＬデータの感知およびストローブの後にビット通過ＶＬを検出するために１ビット通過（ＯＢＰ）走査操作を用いる。ＶＬを通過するビットがなければ、直ちに次のプログラミングパルスに進む。いずれかのビットがＶＬを通過したならば、通常のＶＬ走査に戻って残りを通常のＱＰＷのように行う。次のベリファイパルスでは、ＯＢＰ走査操作は省かれる。
【００９４】
図１７は、いずれかのビットがＶＬを通過する前のＳＱＰＷベリファイについてのタイミング図である。これは、ＳＰＱＷベリファイの短縮されたサイクル表示と見なされ得るものであって、セルのグループ中のどのビットもＶＬを通過していないときに適用可能である。これは、本質的に、図１５に示されているＱＰＷのＶＬサブサイクルであるが、いずれか１ビットがＶＬを通過するか否かの付加的判定あるいは（ＯＢＰ）走査操作を伴う。ＯＢＰ走査操作は、ＳＣＡＮ信号についてのＯＢＰ波形により示されているようにＶＬサブサイクルの終了時、ＶＨサブサイクルの開始時に行われる。これは、本質的に、並行してプログラムされているセルのグループについてＶＬに関しての感知結果を調べることによっていずれか１つのビットがＶＬを通過するか否かを検出する。
【００９５】
図１７に示されている短縮されたサイクルのためのシーケンスは以下のとおりである。
フェーズ１：選択されたワード線ＷＬをＶＬにプリチャージする。
フェーズ２：ビット線ＢＬを感知に適する電圧にプリチャージする。
フェーズ３：感知し、ＳＴＢをストローブする（ＶＬストローブ）。
フェーズ４：ワード線ＷＬの電圧をＶＬからＶＨに変化させ、ビット線電圧が回復した後、いずれか１つのビットがＶＬでベリファイしたか否かを判定するためにＯＢＰ（１ビット通過）を実行する。
【００９６】
どのビットもＶＬを通過していないとＯＢＰ走査操作が判定したならば、短縮されたサイクルの後にワード線の放電と次のプログラミングパルスが続く。この短縮されたサイクルでいずれかのビットがＶＬを通過したならば、サイクルは拡張されてＶＨレベルでのベリファイも有する完全なサイクルとなる。
【００９７】
図１８は、１つのビットがＶＬを通過するということの第１のインスタンスがちょうど発生したばかりのＳＱＰＷベリファイについてのタイミング図である。これは、ＳＰＱＷベリファイの拡張されたサイクル表示と見なされ得るものであって、セルのグループ中の１つのビットがＶＬベリファイをパスするという出来事の第１の発生時に当てはまる。これは、本質的に、ＯＢＰ走査操作が続き、図１５に示されているＱＰＷのＶＨサブサイクルでさらに拡張されるＶＬサブサイクルである。
【００９８】
図１８に示されている拡張されたサイクルについてのシーケンスは以下のとおりである。
フェーズ１〜４：図１７に示されている短縮サイクルのものと同じである。
フェーズ５：感知されたＶＬデータをデータラッチに転送する（ＶＬ走査）。フェーズ４で始まったＷＬ充電は割合に長い時間を必要とするので、時間を節約するために同じベリファイシーケンスにおいていずれかのビットがＶＬを通過することをＯＢＰが検出した直後にＶＬ走査を実行することが望ましい。
フェーズ６：感知し、ストローブする（第１のＶＨストローブ）。好ましい実施形態では、これは大電流状態を、それらがサブシーケンス感知を妨げないようにオフに転換され得るように、検出するための予備的急速感知である。
フェーズ７：ビット線ＢＬが適切な電圧に戻ることを許容する。
フェーズ８：感知し、ストローブする（第２のＶＨストローブ）。
フェーズ９：ワード線ＷＬを放電させる。
フェーズ１０：感知されたＶＨデータをデータラッチに転送する（ＶＨ走査）。
【００９９】
図１９は、少なくとも１つのビットがＶＬを通過した直後のサイクルに続く後のサイクルにおけるＳＱＰＷベリファイについてのタイミング図である。これは、ＳＱＰＷベリファイの通常のサイクル表示と見なされ得るものであって、セルのグループ中の少なくとも１つのビットがＶＬを通過したベリファイサイクルに続く後のベリファイサイクルに当てはまる。これは、本質的に、図１５に示されているＶＬサブサイクルおよびＶＨサブサイクルの両方を有する通常のクイックパス書き込みベリファイである。
フェーズ１：選択されたワード線ＷＬをＶＬにプリチャージする。
フェーズ２：ビット線ＢＬを感知に適する電圧にプリチャージする。
フェーズ３：感知し、ＳＴＢをストローブする（ＶＬストローブ）。
フェーズ４：ワード線ＷＬの電圧をＶＬからＶＨに変更し、感知されたＶＬデータをデータラッチに転送する（ＶＬ走査）。
フェーズ５：感知し、ストローブする（第１のＶＨストローブ）。好ましい実施形態では、これはＶＨレベルより実質的に低い大電流状態を、それらがサブシーケンス感知を妨げないようにオフに転換され得るように、検出するための予備的急速感知である。
フェーズ６：ビット線ＢＬが適切な電圧に戻ることを許容する。
フェーズ７：感知し、感知されたＶＨデータのためにストローブする（第２のＶＨストローブ）。
フェーズ８：ワード線ＷＬを放電させる。
フェーズ９：感知されたＶＨデータをデータラッチに転送する（ＶＨ走査）。
【０１００】
ＳＱＰＷでのＡ−Ｂ−Ｃベリファイの例
ＳＱＰＷについての前の説明は、所与のしきい値レベルに関してのプログラムベリファイに関連している。それに関してのベリファイが行われるところのしきい値レベルが２つ以上あっても、同じ原理が本質的に当てはまる。これは、３つのしきい値レベルＶＡ、ＶＢおよびＶＣにより画定される２ビットあるいは４状態のメモリのようなマルチレベルメモリをプログラムするときに起こり得ることである。例えば、図９Ｃに示されているＬＭニューコードを用いる上側ページのプログラミングは、３つのしきい値レベルの全てに関してのプログラムベリファイを必要とする。
【０１０１】
好ましい実施形態では、３つのしきい値レベルの各々に関してのベリファイ操作は、低いほうから高いほうのワード線ＷＬ電圧へと連続的に感知を行って連続的に進行することができる。プログラムベリファイは初めＶＡだけに関する、すなわちベリファイＡである。プログラミングが続いて、少なくとも１つのビットがＶＡを超えてプログラムされたとき、プログラムベリファイはベリファイＡおよびベリファイＢの両方を有することになる。同様に、少なくとも１つのビットがＶＢを超えてプログラムされたならば、プログラムベリファイはベリファイＡ、ベリファイＢおよびベリファイＣで３つのしきい値レベルの全てを調べる。同様のスマートベリファイ方式が、米国公開特許出願第２００４−０１０９３６２号（特許文献２６）に開示されている。この特許出願の開示内容全体は、本願明細書において参照により援用されている。
【０１０２】
図２０Ａは、３つのしきい値レベルに関わるＳＱＰＷのタイミング図であって、ベリファイＡだけに関わる最初のプログラミング段階を示す。いずれかのビットがＶＡＬを通過する前は、図１７に示されている短縮されたサイクルが当てはまり、ＶＬおよびＶＨはそれぞれＶＡＬおよびＶＡＨに取って代わられている。ＯＢＰ操作後、１つのビットがＶＡＬを通過することの第１のインスタンスが生じたとき、シーケンスは、図１８に示されている拡張されたサイクルと同じである。その後、図１９の通常サイクルが当てはまる。ＳＱＰＷが節約する時間は、短縮サイクル時間（通常サイクルの持続時間−短縮サイクルの持続時間）の数である短縮されたサイクルが実施される時間と、ＯＢＰおよびＶＬ走査の走査時間差とである。
【０１０３】
図２０Ｂは、３つのしきい値レベルに関わるＳＱＰＷのタイミング図であって、ベリファイＡに加えてベリファイＢが開始される中間プログラミング段階を示す。この段階では少なくとも１つのビットがＶＡＬを既に通過しているので、このイベントについて調べるためのＯＢＰ操作は不要である。ＶＡＬおよびＶＡＨでの感知は、単に、図１９に示されている通常のＱＰＷベリファイサイクルに従う。
【０１０４】
ＶＢＬでの感知は、最初は、おそらく、図１７に示されている短縮サイクルである。再び、ＯＢＰ後にいずれかのビットがＶＢＬを通過しているならば、ＶＢベリファイは図１８に示されている拡張サイクルと同様である。また、次の感知サイクルにおいて、図１９のものと同様の通常サイクルが再開する。ＳＱＰＷが節約しＶＢレベルでのベリファイのために浪費する時間は、ＶＡについてのものと同様のやり方で計算される。
【０１０５】
図２０Ｃは、３つのしきい値レベルに関わるＳＱＰＷのタイミング図であって、ベリファイＡおよびベリファイＢに加えてベリファイＣが開始される最終プログラミング段階を示す。この段階では少なくとも１つのビットがＶＡＬを既に通過しているので、このイベントについて調べるためのＯＢＰ操作は不要である。また、ＯＢＰ後にいずれかのビットがＶＣＬを通過していれば、ＶＣベリファイは図１８に示されている拡張されたサイクルと同様である。また、次の感知サイクルにおいて、図１９のものと同様の通常サイクルが再開される。ＳＱＰＷが節約しＶＣレベルでのベリファイのために浪費する時間は、いずれかのビットがＶＡＬを通過する前の、ベリファイＡだけに関わるプログラムベリファイの初期段階についてのものと同様のやり方で計算される。
【０１０６】
本発明の種々の態様をある実施形態に関して説明してきたけれども、本発明が添付の特許請求の範囲の全範囲内においてその権利が保護されるべきであることが理解できよう。
【図面の簡単な説明】
【０１０７】
【図１Ａ】不揮発性メモリセルの例を概略的に示す。
【図１Ｂ】不揮発性メモリセルの他の例を概略的に示す。
【図１Ｃ】不揮発性メモリセルの他の例を概略的に示す。
【図１Ｄ】不揮発性メモリセルの他の例を概略的に示す。
【図１Ｅ】不揮発性メモリセルの他の例を概略的に示す。
【図２】メモリセルのＮＯＲアレイの例を示す。
【図３】図１Ｄに示されているようなメモリセルのＮＡＮＤアレイの例を示す。
【図４】任意の時点でフローティングゲートが蓄積していることのできる４つの異なる電荷Ｑ１〜Ｑ４についてソース−ドレイン電流とコントロールゲート電圧との間の関係を示す。
【図５】行デコーダおよび列デコーダを介して読み出し／書き込み回路によりアクセス可能なメモリアレイの代表的な配置を概略的に示す。
【図６Ａ】本発明がその中で実現される環境を提供する、読み出し／書き込み回路のバンクを有するコンパクトなメモリ素子を概略的に示す。
【図６Ｂ】図６Ａに示されているコンパクトなメモリ素子の好ましい配置を示す。
【図６Ｃ】ある数のセンスモジュールの、読み出し／書き込みスタックへの好ましいグループ化を示す。
【図６Ｄ】図６Ｃに示されている読み出し／書き込みスタックにおける基本的コンポーネントの一般的配置を概略的に示す。
【図７Ａ】各メモリセルが在来のグレイコードを用いて２ビットのデータを記憶するときの４状態メモリアレイのしきい値電圧分布を示す。
【図７Ｂ】グレイコードを用いる現存する２パスプログラミング方式における下側ページプログラミングを示す。
【図７Ｃ】グレイコードを用いる現存する２パスプログラミング方式における上側ページプログラミングを示す。
【図７Ｄ】グレイコードで符号化された４状態メモリの下位ビットを識別するために必要とされる読み出し操作を示す。
【図７Ｅ】グレイコードで符号化された４状態メモリの上位ビットを識別するために必要とされる読み出し操作を示す。
【図８Ａ】各メモリセルがＬＭコードを用いて２ビットのデータを記憶するときの４状態メモリアレイのしきい値電圧分布を示す。
【図８Ｂ】ＬＭコードを用いる現存する２パスプログラミング方式における下側ページプログラミングを示す。
【図８Ｃ】ＬＭコードを用いる現存する２パスプログラミング方式における上側ページプログラミングを示す。
【図８Ｄ】ＬＭコードで符号化された４状態メモリの下位ビットを識別するために必要とされる読み出し操作を示す。
【図８Ｅ】ＬＭコードで符号化された４状態メモリの上位ビットを識別するために必要とされる読み出し操作を示す。
【図９Ａ】各メモリセルがＬＭニューコードを用いて２ビットのデータを記憶するときの４状態メモリアレイのしきい値電圧分布を示す。
【図９Ｂ】ＬＭニューコードを用いる現存する２パスプログラミング方式における下側ページプログラミングを示す。
【図９Ｃ】ＬＭニューコードを用いる現存する２パスプログラミング方式における上側ページプログラミングを示す。
【図９Ｄ】ＬＭニューコードで符号化された４状態メモリの下位ビットを識別するために必要とされる読み出し操作を示す。
【図９Ｅ】ＬＭニューコードで符号化された４状態メモリの上位ビットを識別するために必要とされる読み出し操作を示す。
【図１０】説明されたメモリを感知するのに適する図６Ａに示されているセンスモジュールをより詳しく概略的に示す。
【図１１】所与のプログラムされたメモリ状態を有するメモリセルの２つの分布を示し、ここで、より広がっている分布はＶＬレベルでベリファイされるシングルパスプログラミングにより作られ、より締まっている分布はＶＨレベルでベリファイされる第２のパスを有する２パスプログラミングにより作られる。
【図１２】２パスプログラミング波形の例を示す。
【図１３】２パスプログラミング操作のためのベリファイ操作における感知に関するタイミング図である。
【図１４】クイックパス書き込み（ＱＰＷ）のシングルパスプログラミング波形を示す。
【図１５】１パスＱＰＷプログラミング操作のためのベリファイ操作における感知に関するタイミング図である。
【図１６】本発明に従う改善されたプログラムベリファイ操作に関するフローチャートである。
【図１７】いずれかのビットがＶＬを通過する前のＳＱＰＷベリファイに関するタイミング図であり、ＳＰＱＷベリファイの短縮サイクル表示と見なされ得るものであって、セルのグループ中のどのビットもＶＬを通過していないときに適用可能である。
【図１８】１つのビットがＶＬを通過するという第１のインスタンスがほんの今発生したばかりのＳＱＰＷベリファイに関するタイミング図である。
【図１９】少なくとも１つのビットがＶＬを通過した直後のサイクルに続く後のサイクルにおけるＳＱＰＷベリファイに関するタイミング図である。
【図２０Ａ】３つのしきい値レベルを必要とするＳＱＰＷのタイミング図であって、ベリファイＡだけを必要とする初期プログラミング段階を示す。
【図２０Ｂ】３つのしきい値レベルを必要とするＳＱＰＷのタイミング図であって、ベリファイＡに加えてベリファイＢが開始される中間プログラミング段階を示す。
【図２０Ｃ】３つのしきい値レベルを必要とするＳＱＰＷのタイミング図であって、ベリファイＡおよびベリファイＢに加えてベリファイＣが開始される最終プログラミング段階を示す。
【図１Ａ】
2009522707.tif 000003
【図１Ｂ】
2009522707.tif 000004
【図１Ｃ】
2009522707.tif 000005
【図１Ｄ】
2009522707.tif 000006
【図１Ｅ】
2009522707.tif 000007
【図２】
2009522707.tif 000008
【図３】
2009522707.tif 000009
【図４】
2009522707.tif 000010
【図５】
2009522707.tif 000011
【図６Ａ】
2009522707.tif 000012
【図６Ｂ】
2009522707.tif 000013
【図６Ｃ】
2009522707.tif 000014
【図６Ｄ】
2009522707.tif 000015
【図７Ａ】
2009522707.tif 000016
【図７Ｂ】
2009522707.tif 000017
【図７Ｃ】
2009522707.tif 000018
【図７Ｄ】
2009522707.tif 000019
【図７Ｅ】
2009522707.tif 000020
【図８Ａ】
2009522707.tif 000021
【図８Ｂ】
2009522707.tif 000022
【図８Ｃ】
2009522707.tif 000023
【図８Ｄ】
2009522707.tif 000024
【図８Ｅ】
2009522707.tif 000025
【図９Ａ】
2009522707.tif 000026
【図９Ｂ】
2009522707.tif 000027
【図９Ｃ】
2009522707.tif 000028
【図９Ｄ】
2009522707.tif 000029
【図９Ｅ】
2009522707.tif 000030
【図１０】
2009522707.tif 000031
【図１１】
2009522707.tif 000032
【図１２】
2009522707.tif 000033
【図１３】
2009522707.tif 000034
【図１４】
2009522707.tif 000035
【図１５】
2009522707.tif 000036
【図１６】
2009522707.tif 000037
【図１７】
2009522707.tif 000038
【図１８】
2009522707.tif 000039
【図１９】
2009522707.tif 000040
【図２０Ａ】
2009522707.tif 000041
【図２０Ｂ】
2009522707.tif 000042
【図２０Ｃ】
2009522707.tif 000043
【国際調査報告】
2009522707.tif 000044
2009522707.tif 000045