(57)【特許請求の範囲】
【請求項１】
不揮発性メモリデバイスであって、
複数のワードラインおよびビットラインによりアドレス指定可能な多状態メモリセルアレイ（３００）と、
ビットラインの関連するグループを介して並列にメモリセルのセットを操作するための読み書き回路（３７０）のセットであって、各読み書き回路がコア部分（４１０）と共通部分（４２０）とに区分されている、読み書き回路（３７０）のセットと、を備え、
前記読み書き回路（３７０）のセットを多数のサブグループに組織し、各サブグループがサブグループの個々の読み書き回路から多数のコア部分（４１０）を含む読み書き回路のスタック（４００）を形成し、それぞれがビットラインに結合可能であり、
各コア部分（４１０）は、アドレス指定されたメモリセルの伝導電流レベルを感知するように配列されたセンス増幅器（２１２）を備え、
各サブグループは、前記サブグループの多数のコア部分（４１０）のそれぞれに結合され、かつ前記サブグループの多数のコア部分（４１０）に関連するデータを処理するように配列されたプロセッサ（２２２）を含む少なくとも１つの共通部分（４２０）をさらに備え、
各共通部分（４２０）内の前記プロセッサ（２２２）は、前記センス増幅器（２１２）から感知された伝導電流レベルを受け取るように結合され、かつ前記感知された伝導電流レベルからデータビットのセットを計算するように配列され、
各スタック（４００）の個々のコンポーネント間に結合する各スタック（４００）のためのシリアルスタックバス（４３１）と、
前記個々のコンポーネントに結合されて前記個々のコンポーネントの動作を前記シリアルスタックバスと共に制御するスタックバスコントローラ（４３０）と、をさらに備える不揮発性メモリデバイス。
【請求項２】
請求項１記載の不揮発性メモリデバイスにおいて、
データは、前記個々のコンポーネント間で交換され、
前記シリアルスタックバスは、データをシリアルに転送する不揮発性メモリデバイス。
【請求項３】
請求項１記載の不揮発性メモリデバイスにおいて、
前記スタックバスコントローラをバンク内の前記スタックの中の対応するコンポーネントに同時に接続する１つ以上の制御ラインをさらに備える不揮発性メモリデバイス。
【請求項４】
請求項１記載の不揮発性メモリデバイスにおいて、
前記シリアルスタックバスは、各スタック中の個々のコンポーネントの第１および第２のグループに結合され、
前記個々のコンポーネントのうちの少なくとも１つは、前記第１および第２のグループに共通である不揮発性メモリデバイス。
【請求項５】
不揮発性メモリデバイスであって、
複数のワードラインおよびビットラインによりアドレス指定可能な多状態メモリセルアレイ（３００）と、
ビットラインの関連するグループを介して並列にメモリセルのセットを操作するための読み書き回路（３７０）のセットであって、各読み書き回路がコア部分（４１０）と共通部分（４２０）とに区分されている、読み書き回路（３７０）のセットと、を備え、
前記読み書き回路（３７０）のセットを多数のサブグループに組織し、各サブグループがサブグループの個々の読み書き回路から多数のコア部分（４１０）を含む読み書き回路のスタック（４００）を形成し、それぞれがビットラインに結合可能であり、
各コア部分（４１０）は、アドレス指定されたメモリセルの伝導電流レベルを感知するように配列されたセンス増幅器（２１２）を備え、
各サブグループは、前記サブグループの多数のコア部分（４１０）のそれぞれに結合され、かつ前記サブグループの多数のコア部分（４１０）に関連するデータを処理するように配列されたプロセッサ（２２２）を含む少なくとも１つの共通部分（４２０）をさらに備え、
各共通部分（４２０）内の前記プロセッサ（２２２）は、前記センス増幅器（２１２）から感知された伝導電流レベルを受け取るように結合され、かつ前記感知された伝導電流レベルからデータビットのセットを計算するように配列され、
各スタック（４００）の個々のコンポーネント間に結合する各スタック（４００）のためのシリアルスタックバス（４３１）と、
前記個々のコンポーネントの動作を前記シリアルスタックバスと共に制御するための手段と、をさらに備える不揮発性メモリデバイス。
【請求項６】
請求項５記載の不揮発性メモリデバイスにおいて、
データは、前記個々のコンポーネント間で交換され、
前記シリアルスタックバスは、データをシリアルに転送する不揮発性メモリデバイス。
【請求項７】
請求項５記載の不揮発性メモリデバイスにおいて、
バンク内の前記スタック中の個々の対応するコンポーネントに同時に接続してこれに制御信号を送る１つ以上の制御ラインをさらに備える不揮発性メモリデバイス。
【請求項８】
請求項５記載の不揮発性メモリデバイスにおいて、
前記シリアルスタックバスは、各スタック中の個々のコンポーネントの第１および第２のグループに結合され、
前記個々のコンポーネントのうちの少なくとも１つは、前記第１および第２のグループに共通である不揮発性メモリデバイス。
【請求項９】
請求項１〜８のいずれか記載の不揮発性メモリデバイスにおいて、
前記メモリセルアレイは、フラッシュＥＥＰＲＯＭセルから構成される不揮発性メモリデバイス。
【請求項１０】
請求項１〜８のいずれか記載の不揮発性メモリデバイスにおいて、
前記メモリセルアレイは、ＮＲＯＭセルから構成される不揮発性メモリデバイス。
【請求項１１】
請求項１〜８のいずれか記載の不揮発性メモリデバイスにおいて、
各メモリセルは、２ビット以上のデータを記憶する不揮発性メモリデバイス。
【請求項１２】
不揮発性メモリデバイスにおける読み書き回路のあるセット間の接続の数を減少させる方法であって、
複数のワードラインおよびビットラインにより多状態メモリセルアレイ（３００）をアドレス指定するステップと、
ビットラインの関連するグループを介して並列にメモリセルのセットを操作するための読み書き回路（３７０）のセットを設けるステップであって、各読み書き回路がコア部分（４１０）と共通部分（４２０）とに区分されている、読み書き回路（３７０）のセットを設けるステップと、を含み、
前記読み書き回路（３７０）のセットを多数のサブグループに組織し、各サブグループがサブグループの個々の読み書き回路から多数のコア部分（４１０）を含む読み書き回路のスタック（４００）を形成し、それぞれがビットラインに結合可能であり、
各コア部分（４１０）は、アドレス指定されたメモリセルの伝導電流レベルを感知するように配列されたセンス増幅器（２１２）を備え、
各サブグループは、前記サブグループの多数のコア部分（４１０）のそれぞれに結合され、かつ前記サブグループの多数のコア部分（４１０）に関連するデータを処理するように配列されたプロセッサ（２２２）を含む少なくとも１つの共通部分（４２０）をさらに備え、
各共通部分（４２０）内の前記プロセッサ（２２２）は、前記センス増幅器（２１２）から感知された伝導電流レベルを受け取るように結合され、かつ前記感知された伝導電流レベルからデータビットのセットを計算するように配列され、
各スタック（４００）は、バンク内の他のスタック（４００）に類似する個々のコンポーネントを含み、
各スタックの個々のコンポーネントをシリアルスタックバスにより結合するステップと、
各スタックの個々のコンポーネントに制御信号を送ることによって各スタックの個々のコンポーネントおよびそのシリアルスタックバスの動作を制御するステップと、をさらに含む方法。
【請求項１３】
請求項１２記載の方法において、
前記個々のコンポーネント間でデータを交換するステップと、
前記シリアルスタックバスによって前記個々のコンポーネント間でデータをシリアルに転送するステップと、
をさらに含む方法。
【請求項１４】
請求項１２記載の方法において、
前記バンク内の全てのスタックの類似する個々のコンポーネントに前記制御信号を同時に送るステップをさらに含む方法。
【請求項１５】
請求項１２記載の方法において、
前記シリアルスタックバスを各スタック中の個々のコンポーネントの第１および第２のグループに結合させるステップをさらに含み、
前記個々のコンポーネントのうちの少なくとも１つは、前記第１および第２のグループに共通である方法。
【請求項１６】
請求項１２〜１５のいずれか記載の方法において、
前記メモリセルアレイは、フラッシュＥＥＰＲＯＭセルから構成される方法。
【請求項１７】
請求項１２〜１５のいずれか記載の方法において、
前記メモリセルアレイは、ＮＲＯＭセルから構成される方法。
【請求項１８】
請求項１２〜１５のいずれか記載の方法において、
各メモリセルは、２ビット以上のデータを記憶する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に電気的に消去可能でプログラム可能な読み出し専用メモリ（ＥＥＰＲＯＭ）およびフラッシュＥＥＰＲＯＭなどの不揮発性半導体メモリに関し、特に非常にコンパクトで高性能の読み書き回路を有するものに関する。
【背景技術】
【０００２】
特に小形ファクタカードとしてパッケージ化されたＥＥＰＲＯＭおよびフラッシュＥＥＰＲＯＭの形の電荷を不揮発性蓄積することのできる固体メモリは、近時、特に情報装置および消費者電子製品などのさまざまなモバイル装置およびハンドヘルド装置において一般的に好まれる記憶装置になった。同じく固体メモリであるＲＡＭ（ランダムアクセスメモリ）とは違って、フラッシュメモリは不揮発性であり、電力がオフにされた後にも蓄積されたデータを保持することができる。コストが高いのに、フラッシュメモリは大容量記憶のための用途にますます多く使われている。ハードドライブやフロッピーディスクなどの回転する磁性媒体に基づく従来の大容量記憶装置はモバイルおよびハンドヘルド環境には適していない。というのは、ディスクドライブが、かさばる傾向にあること、機械的故障を起こしがちであること、長い待ち時間と多大な電力を必要とすることである。これらの望ましくない属性があるために、ディスクに基づく記憶装置は殆どのモバイルのための用途および携帯のための用途において実際的ではない。一方、フラッシュメモリは、埋め込み形でも、取り外し可能なカードの形でも、サイズが小さく、消費電力が少なく、高速で、しかも信頼性が高いので、モバイル環境およびハンドヘルド環境に理想的に適している。
【０００３】
ＥＥＰＲＯＭおよび電気的にプログラム可能な読み出し専用メモリ（ＥＰＲＯＭ）は、消去可能であり、新しいデータをそのメモリセルに書き込む、すなわち“プログラム”することができる不揮発性メモリである。両方が、電界効果トランジスタ構造において、半導体基板におけるソース領域とドレイン領域との間でチャネル領域上に位置するフローティング（非結合）伝導性ゲートを利用する。次に、当該フローティングゲート上にコントロールゲートが設けられる。トランジスタに固有のしきい値電圧は、フローティングゲートにおいて保持されている電荷の量によって制御される。すなわち、フローティングゲート上の電荷の与えられたレベルについて、トランジスタがオンに転換して、そのソース領域とドレイン領域との間での伝導を可能にする前に、コントロールゲートに印加されなければならない対応する電圧（しきい値）がある。
【０００４】
フローティングゲートは、１つの範囲の電荷を保持することができ、従って、しきい値電圧ウィンドウ内の任意のしきい値電圧レベルにプログラムされ得る。しきい値電圧ウィンドウのサイズは、装置の最低および最高のしきい値レベルによって画定され、これらはフローティングゲートにプログラムされ得る電荷の範囲に対応する。しきい値ウィンドウは、一般にメモリデバイスの特性、動作条件および履歴に依存する。セルの明確な記憶状態を示すために、原則として、ウィンドウ内の各々の固有の分解可能なしきい値電圧レベルの範囲を用いることができる。
【０００５】
メモリセルとして作用するトランジスタは、通常、２つのメカニズムのうちの１つによって“プログラムされた”状態にプログラムされる。“ホットエレクトロン注入”では、ドレインに印加された高電圧が電子を基板チャネル領域を横切って加速させる。同時に、コントロールゲートに印加された高電圧は、薄いゲート誘電体を通してホットエレクトロンをフローティングゲート上に引き寄せる。“トンネリング注入”では、基板に関してコントロールゲートに高電圧が印加される。このようにして、電子は、基板から介在するフローティングゲートに引き寄せられる。
【０００６】
メモリデバイスは、いろいろなメカニズムによって消去され得る。ＥＰＲＯＭに関しては、メモリは、紫外線放射によってフローティングゲートから電荷を除去することによってバルク消去可能である。ＥＥＰＲＯＭに関しては、フローティングゲート内の電子を誘導し、薄い酸化物を通過させ、基板チャネル領域へトンネリング（すなわち、ファウラー−ノルトハイム・トンネリング）させるためにコントロールゲートに関して基板に高電圧を印加することによって、メモリセルは電気的に消去可能である。通常、ＥＥＰＲＯＭはバイト単位で消去可能である。フラッシュＥＥＰＲＯＭに関しては、メモリは、一度に全部或いは一度に１つ以上のブロックのいずれかを電気的に消去可能であり、ここでブロックは５１２バイト以上のメモリから成ってもよい。
【０００７】
不揮発性メモリセルの例
メモリデバイスは、普通、カードに搭載され得る１つ以上のメモリチップを含む。各メモリチップは、復号器および消去回路、書き込み回路および読み出し回路などの周辺回路により支援されるメモリセルアレイを含む。より複雑なメモリデバイスも、高機能で高レベルのメモリ操作およびインターフェーシングを実行するコントローラに付随している。今日、商業的に成功した不揮発性固体メモリデバイスが多数使われている。それらのメモリデバイスは、１つ以上の電荷蓄積素子を各々有するさまざまなタイプのメモリセルを使用することができる。
【０００８】
図１Ａ〜１Ｅは、不揮発性メモリセルのいろいろな例を概略的に示す。
【０００９】
図１Ａは、電荷を蓄積するためのフローティングゲートを有するＥＥＰＲＯＭセルの形の不揮発性メモリを概略的に示す。電気的に消去可能でプログラム可能な読み出し専用メモリ（ＥＥＰＲＯＭ）は、ＥＰＲＯＭに類似する構造を有するけれども、ＵＶ放射への被曝を必要とせずに、適切な電圧が印加したときにそのフローティングゲートから電気的に電荷を充填したり、除去したりするためのメカニズムをさらに提供する。このようなセルと、これを製造する方法との例が米国特許第５，５９５，９２４号（特許文献１）に示されている。
【００１０】
図１Ｂは、選択ゲートおよびコントロールゲート或いはステアリングゲートの両方を有するフラッシュＥＥＰＲＯＭセルを概略的に示す。メモリセル１０は、ソース１４の拡散とドレイン１６の拡散との間に“スプリットチャネル”１２を有する。セルは、事実上２つの直列のトランジスタＴ１およびＴ２で形成される。Ｔ１は、フローティングゲート２０とコントロールゲート３０とを有するメモリトランジスタとして作用する。フローティングゲートは、選択可能な量の電荷を蓄積することができる。チャネルのＴ１の部分を通って流れることのできる電流の量は、コントロールゲート３０上の電圧と、介在するフローティングゲート２０に存在する電荷の量とに依存する。Ｔ２は、選択ゲート４０を有する選択トランジスタとして作用する。Ｔ２が、選択ゲート４０の電圧によりオンに転換されると、チャネルのＴ１の部分における電流がソースとドレインとの間を流れることを可能にする。選択トランジスタは、コントロールゲートの電圧に依存しないソース−ドレインチャネル沿いのスイッチを設ける。１つの利点は、そのフローティングゲートにおける電荷消耗（正）に起因して、ゼロコントロールゲート電圧で依然として伝導しているそれらのセルをオフに転換するためにそれを使用することである。他の利点は、それがソース側注入プログラミングをより容易に実行することを可能にすることである。
【００１１】
スプリットチャネルメモリセルの１つの簡単な実施形態では、図１Ｂに示されている破線によって概略的に示されているように、選択ゲートおよびコントロールゲートが同じワードラインに接続されている。これは、電荷蓄積素子（フローティングゲート）をチャネルの一部上に位置させると共にコントロールゲート構造（ワードラインの一部である）を他のチャネル部分上に、かつ当該電荷蓄積素子上に位置させることによって達成される。これは、実際上直列の２個のトランジスタを有するセルを形成し、一方（メモリトランジスタ）は電荷蓄積素子上の電荷の量と、そのチャネル部分を通って流れることのできる電流の量を制御するワードライン上の電圧との組み合わせを有し、他方（選択トランジスタ）はそのゲートとして作用するワードラインだけを有する。このようなセル、メモリシステムにおけるその使用方法およびそれを製造する方法の例が、米国特許第５，０７０，０３２号（特許文献２）、第５，０９５，３４４号（特許文献３）、第５，３１５，５４１号（特許文献４）、第５，３４３，０６３号（特許文献５）、および第５，６６１，０５３号（特許文献６）に示されている。
【００１２】
図１Ｂに示すスプリットチャネルセルのより洗練された実施形態では、選択ゲートおよびコントロールゲートは独立し、それらの間の破線で結合されてはいない。一つの実装例では、セルのアレイ中の１列の複数のコントロールゲートは、ワードラインに垂直なコントロール（ステアリング）ラインに接続される。その効果は、選択されたセルを読み出したり、或いはプログラムするときに、ワードラインが２つの機能を同時に実行しなくても良くすることにある。これらの２つの機能は、（１）選択トランジスタのゲートとして作用し、従って選択トランジスタをオンとオフにするために適切な電圧を必要とする機能、および（２）ワードラインと電荷蓄積素子との間の電界（容量性）結合を通して電荷蓄積素子の電圧を所望のレベルに至らせる機能である。これらの機能の両方を単一の電圧で最善に実行することが困難であることが良くある。コントロールゲートと選択ゲートとを別々に制御する場合、ワードラインは機能（１）を実行するだけで良く、付加されたコントロールラインは機能（２）を実行する。この能力は、プログラミング電圧が目標のデータに適合させられる高性能プログラミングの設計に配慮している。フラッシュＥＥＰＲＯＭアレイにおける独立のコントロール（或いは、ステアリング）ゲートの使用は、例えば、米国特許第５，３１３，４２１号（特許文献７）および第６，２２２，７６２号（特許文献８）に記載されている。
【００１３】
図１Ｃは、二重フローティングゲートと独立の選択ゲートおよびコントロールゲートを有する他のフラッシュＥＥＰＲＯＭを概略的に示す。メモリセル１０は、実際上３個の直列のトランジスタを有することを除いて、図１Ｂに類似している。このタイプのセルにおいて、２つの蓄積素子（すなわち、Ｔ１−左およびＴ１−右の蓄積素子）はソース拡散およびドレイン拡散間のチャネル上に含まれ、それらの間に選択トランジスタＴ１が置かれている。メモリトランジスタは、フローティングゲート２０および２０’と、コントロールゲート３０および３０’とをそれぞれ有する。選択トランジスタＴ２は、選択ゲート４０により制御される。任意の時点で、一度にメモリトランジスタの対のうちの一方だけが読み出しまたは書き込みのためにアクセスされる。蓄積ユニットＴ１−左がアクセスされるときに、チャネルのＴ１−左の部分の電流がソースとドレインとの間を流れることができるようにＴ２およびＴ１−右の両方がオンに転換される。同様に、蓄積ユニットＴ１−右がアクセスされるときに、Ｔ２およびＴ１−左がオンに転換される。消去は、選択ゲートのポリシリコンの一部をフローティングゲートの直ぐ近くに持つと共に、フローティングゲート内に蓄積された電子が選択ゲートのポリシリコンへトンネリングすることができるように相当の正の電圧（例えば、２０Ｖ）を選択ゲートに印加することによって行われる。
【００１４】
図１Ｄは、ＮＡＮＤセルに組織されたメモリセルのストリングを概略的に示す。ＮＡＮＤセル５０は、デイジーチェーン方式でそれらのソースおよびドレインにより接続された一連のメモリトランジスタＭ１，Ｍ２，・・・Ｍｎ（ｎ＝４，８，１６またはそれ以上）から成る。一対の選択トランジスタＳ１，Ｓ２は、ＮＡＮＤセルのソース端子５４およびドレイン端子５６を介しての外部へのメモリトランジスタのチェーンの接続を制御する。メモリアレイでは、ソース選択トランジスタＳ１がオンに転換されると、ソース端子はソースラインに結合される。同様に、ドレイン選択トランジスタＳ２がオンに転換されると、ＮＡＮＤセルのドレイン端子はメモリアレイのビットラインに結合される。チェーン内の各メモリトランジスタは、意図されたメモリ状態を表すように与えられた量の電荷を蓄積する電荷蓄積素子を有する。各メモリトランジスタのコントロールゲートは、読み出し操作および書込み操作を支配する。選択トランジスタＳ１，Ｓ２の各々のコントロールゲートは、ＮＡＮＤセルのソース端子５４およびドレイン端子５６を介するＮＡＮＤセルへの制御アクセスを提供する。
【００１５】
プログラミング中に、ＮＡＮＤセル内のアドレス指定されたメモリトランジスタが読み出され、検証されるとき、そのコントロールゲートに適切な電圧が供給される。同時に、ＮＡＮＤセル５０内の残りのアドレス指定されていないメモリトランジスタは、それらのコントロールゲートに十分な電圧を印加することによって完全にオンに転換される。このように、実際上、個々のメモリトランジスタのソースからＮＡＮＤセルのソース端子５４へ、また同様に個々のメモリトランジスタのドレインについて当該セルのドレイン端子５６へ、伝導路が作られる。このようなＮＡＮＤセル構造を有するメモリデバイスは、米国特許第５，５７０，３１５号（特許文献９）、第５，９０３，４９５号（特許文献１０）、第６，０４６，９３５号（特許文献１１）に記載されている。
【００１６】
図１Ｅは、電荷を蓄積するための誘電体層を有する不揮発性メモリを概略的に示す。前述した伝導性フローティングゲート素子の代わりに、誘電体層が使用される。誘電体蓄積素子を利用するこのようなメモリは、エイタンらによる「ＮＲＯＭ：新規な局所トラッピング、２ビットの不揮発性メモリセル」，２０００年１１月のＩＥＥＥ電子デバイスレターズ，第２１巻，第１１号，５４３〜５４５ページ (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) ”（非特許文献１）に記載されている。ＯＮＯ誘電体層がソース拡散およびドレイン拡散の間のチャネルを横切って拡がる。１データビットのための電荷はドレインに隣接する誘電体層内に局在させられ、他のデータビットのための電荷はソースに隣接する誘電体層内に局在させられる。例えば、米国特許第５，７６８，１９２号（特許文献１２）および第６，０１１，７２５号（特許文献１３）は、２つの二酸化ケイ素層に挟まれたトラッピング誘電体を有する不揮発性メモリセルを開示している。当該誘電体内の空間的に分離されている電荷蓄積領域の二進状態を別々に読み出すことによって多状態データ記憶が実行される。
【００１７】
メモリアレイ
メモリデバイスは、普通行および列を成すように配列されたメモリセルの２次元アレイから成り、ワードラインおよびビットラインによりアドレス指定可能である。ＮＯＲタイプまたはＮＡＮＤタイプのアーキテクチャに従って当該アレイを形成することができる。
【００１８】
ＮＯＲアレイ
図２は、メモリセルのＮＯＲアレイの例を示す。ＮＯＲタイプのアーキテクチャを有するメモリデバイスは、図１Ｂまたは１Ｃに示すタイプのセルで実現されている。メモリセルの各行は、そのソースおよびドレインによりデイジーチェーン方式で接続される。この設計は、時には仮想接地設計と称される。各メモリセル１０は、ソース１４と、ドレイン１６と、コントロールゲート３０と、選択ゲート４０とを有する。行内のセルの選択ゲートは、ワードライン４２に接続されている。列内のセルのソースおよびドレインは、選択されたビットライン３４および３６にそれぞれ接続されている。メモリセルのコントロールゲートおよび選択ゲートが別々に制御される実施形態では、ステアリングライン３６も、列内のセルのコントロールゲートを接続する。
【００１９】
多くのフラッシュＥＥＰＲＯＭ装置は、コントロールゲートおよび選択ゲートが互いに接続されて各々形成されているメモリセルで実現される。この場合、ステアリングラインは不要であり、１本のワードラインが各行に沿うセルの全てのコントロールゲートおよび選択ゲートを単に接続する。これらの設計例が、米国特許第５，１７２，３３８号および第５，４１８，７５２号に開示されている。これらのデザインでは、ワードラインは本質的に２つの機能、すなわち行選択機能と、読み出しまたはプログラミングのために行内の全てのセルにコントロールゲート電圧を供給する機能とを実行した。
【００２０】
ＮＡＮＤアレイ
図３は、図１Ｄに示すようなメモリセルのＮＡＮＤアレイの例を示す。ＮＡＮＤセルの各列に沿って、ビットラインが各ＮＡＮＤセルのドレイン端子５６に結合されている。ＮＡＮＤセルの各行に沿って、１本のソースラインがそれらのソース端子５４の全てを接続することができる。行に沿ってＮＡＮＤセルのコントロールゲートも、一連の対応するワードラインに接続されている。選択トランジスタの対（図１Ｄを参照）を、接続されているワードラインを介してそれらのコントロールゲートにかかる適切な電圧でオンに転換することによって、ＮＡＮＤセルの一行全体をアドレス指定することができる。ＮＡＮＤセルのチェーン内のメモリトランジスタが読み出されるとき、そのチェーン内の残りのメモリトランジスタは、それらに関連するワードラインを介して十分にオンに転換されるので、当該チェーンを流れる電流は、本質的に、読み出されるセルに蓄積されている電荷のレベルに依存する。ＮＡＮＤアーキテクチャと、メモリシステムの一部としてのその動作との例が、米国特許第５，５７０，３１５号（特許文献１４）、第５，７７４，３９７号（特許文献１５）および第６，０４６，９３５号（特許文献１６）において見出される。
【００２１】
ブロック消去
電荷蓄積メモリデバイスのプログラミングは、より多くの電荷をその電荷蓄積素子に印加するだけという結果になり得る。従って、プログラム操作の前に、電荷蓄積素子に現存する電荷を除去（すなわち、消去）しなければならない。メモリセルの１つ以上のブロックを消去するために、消去回路（図示せず）が設けられる。セルのアレイ全体、或いはアレイのセルの有意のグループが一緒に（すなわち、一瞬のうちに）電気的に消去されるときに、ＥＥＰＲＯＭなどの不揮発性メモリは“フラッシュ”ＥＥＰＲＯＭと称される。いったん消去されれば、そのセルのグループを再プログラミングすることができる。一緒に消去され得るセルのグループは、１つ以上のアドレス指定可能な消去ユニットから成ることができる。消去ユニットまたはブロックは、通常データの１つ以上のページを記憶し、ここでページはプログラミングおよび読み出しの単位であるが、１回の操作で２ページ以上をプログラミングしたり、或いは読み出すこともできる。各ページは、通常１以上のセクタのデータを記憶し、ここでセクタのサイズはホストシステムによって定められる。一例は、磁気ディスクドライブで確立された標準に従う５１２バイトのユーザデータと、そのユーザデータおよび／またはそれが記憶されるブロックに関する数バイトのオーバーヘッドデータのセクタである。
【００２２】
読み書き回路
普通の２状態ＥＥＰＲＯＭセルでは、伝導ウィンドウを２つの領域に分割するために少なくとも１つの電流区切り点レベルが確立される。所定の固定された電圧を印加することによってセルが読み出されるとき、そのソース／ドレイン電流は当該区切り点レベル（或いは、基準電流ＩREF ）との比較によって１つのメモリ状態に帰着させられる。読み出された電流が当該区切り点レベルのそれより多ければ、そのセルは１つの論理状態（例えば、“ゼロ”状態）であると判定される。一方、電流が区切り点レベルのそれより少なければ、そのセルは他方の論理状態（例えば、“１”状態）であると判定される。従って、このような２状態セルは、１ビットのデジタル情報を記憶する。外部からプログラムできる基準電流源が、区切り点レベル電流を発生させるためにメモリシステムの一部分として設けられることが良くある。
【００２３】
記憶容量を増やすために、半導体技術の状態が進むにつれて、フラッシュＥＥＰＲＯＭ装置はますます高まる密度で製造されている。記憶容量を増やすための他の方法は、各メモリセルに３つ以上の状態を記憶させることである。
【００２４】
多状態または多レベルのＥＥＰＲＯＭメモリセルに関しては、各セルが２ビット以上のデータを記憶できるように、伝導ウィンドウを２つ以上の区切り点によって３つ以上の領域に分割する。与えられたＥＥＰＲＯＭアレイが記憶できる情報は、各セルが記憶できる状態の数と共に増やされる。多状態または多レベルのメモリセルを有するＥＥＰＲＯＭまたはフラッシュＥＥＰＲＯＭは、米国特許第５，１７２，３３８号（特許文献１７）に記載されている。
【００２５】
実際問題として、セルの記憶状態は、基準電圧がコントロールゲートに印加されているときに、当該セルのソース電極およびドレイン電極を横切る伝導電流を感知することによって普通は読み出される。このように、セルのフローティングゲート上の各々の与えられた電荷について、固定された基準コントロールゲート電圧に関して対応する伝導電流を検出することができる。同様に、フローティングゲートにプログラムできる電荷の範囲は、対応するしきい値電圧ウィンドウまたは対応する伝導電流ウィンドウを定める。
【００２６】
或いは、分割された電流ウィンドウの中の伝導電流を検出する代わりに、試験されている与えられた記憶状態についてのしきい値電圧をコントロールゲートでセットして、伝導電流がしきい値電流より低いか高いかを検出することが可能である。一つの実装例では、しきい値電流に関しての伝導電流の検出は、伝導電流がビットラインの容量を通して放電する速度を調べることによって達成される。
【００２７】
図４は、フローティングゲートが任意のときに選択的に蓄積し得る４つの異なる電荷Ｑ１〜Ｑ４についてのソース−ドレイン電流ＩD とコントロールゲート電圧ＶCGとの関係を示す。４つの実線のＩD 対ＶCG曲線は、メモリセルのフローティングゲートにプログラムされ得る、４つの可能な記憶状態にそれぞれ対応する４つの可能な電荷レベルを表している。一例として、セルの母集団のしきい値電圧ウィンドウは、０．５Ｖから３．５Ｖにわたることができる。しきい値ィンドウを各々０．５Ｖの間隔で５つの領域に区切ることによって６つの記憶状態を区別することができる。例えば、２μＡの基準電流ＩREF が図示するように使用されるならば、Ｑ１でプログラムされたセルは、その曲線がＶCG＝０．５Ｖと１．０Ｖとを限界とするしきい値ウィンドウの領域においてＩREF と交差するので、記憶状態“１”にあると見なされて良い。同様に、Ｑ４は記憶状態“５”にある。
【００２８】
以上の説明から分かるように、メモリセルが記憶させられる状態が多くなるほど、そのしきい値ィンドウはより細かく分割されることになる。これは、所要の分解能を達成することができるように、プログラミングおよび読み出し操作においてより高い精度を必要とする。
【００２９】
米国特許第４，３５７，６８５号（特許文献１８）は２状態ＥＰＲＯＭをプログラムする方法を開示し、その方法では、セルは、与えられた状態にプログラムされるとき、連続するプログラミング電圧パルスにさらされ、そのつど増分電荷をフローティングゲートに印加する。パルスとパルスの間で、セルは、区切り点に関してそのソース−ドレイン電流を判定するために、読み戻されたり、或いは検証される。プログラミングは、電流が所望の状態に達すると検証されたときに、終了する。使用されるプログラミングパルス列は、増加する周期または振幅を持つことができる。
【００３０】
従来技術のプログラミング回路は、消去された状態或いは接地状態からターゲット状態に達するまで、しきい値ウィンドウ内を進むプログラミングパルスを単に印加する。実際には、十分な分解能に配慮するために、各々の分割された或いは分離された領域は、横断するのに少なくとも約５つのプログラミングステップを必要とする。この性能は、２状態メモリセルに関しては容認できるものである。しかし、多状態セルに関しては、必要なステップの数は、仕切りの数と共に増大するので、プログラミング精度或いは分解能は高められなければならない。例えば、１６状態のセルは、ターゲット状態までプログラムするために平均で少なくとも４０個のプログラミングパルスを必要とする。
【００３１】
図５は、行復号器１３０および列復号器１６０を介して読み書き回路１７０がアクセスし得る代表的構成のメモリアレイ１００を有するメモリデバイスを概略的に示す。図２および３との関係で説明されたように、メモリアレイ１００内のメモリセルのメモリトランジスタは、選択されたワードラインおよびビットラインのセットを介してアドレス指定可能である。アドレス指定されたメモリトランジスタの各々のゲートに適切な電圧を印加するために、行復号器１３０は１つ以上のワードラインを選択し、列復号器１６０は１つ以上のビットラインを選択する。読み書き回路１７０は、アドレス指定されたメモリトランジスタの記憶状態を読み出したり、或いは書き込む（プログラムする）ために設けられている。読み書き回路１７０は、ビットラインを介してアレイ内の記憶素子に接続され得る数個の読み書きモジュールを含む。
【００３２】
図６Ａは、１つの読み書きモジュール１９０の略ブロック図である。本質的に、読み出しや検証の間、センス増幅器は、選択されたビットラインを介して接続されているアドレス指定されたメモリトランジスタのドレインを通って流れる電流を判定する。その電流は、メモリトランジスタに蓄積されている電荷と、そのコントロールゲート電圧とに依存する。例えば、多状態ＥＥＰＲＯＭセルでは、そのフローティングゲートを数個の異なるレベルのうちの１つに充電することができる。４レベルのセルに関しては、それを２ビットのデータを記憶させるために使用することができる。センス増幅器により検出されたレベルは、レベル−ビット変換論理によって、データラッチに記憶されるデータビットのセットに変換される。
【００３３】
読み書き性能および精度に影響を及ぼす要因
読み出しおよびプログラミングの性能を改善するために、アレイ内の多数の電荷蓄積素子またはメモリトランジスタが並列に読み出されたり、或いはプログラムされる。従って、複数の記憶素子の１つの論理“ページ”が一緒に読み出されたり、或いはプログラムされる。現存するメモリアーキテクチャでは、一行は通常インターリーブ配置された数個のページを含む。１つのページの全ての記憶素子が一緒に読み出されたり、或いはプログラムされる。列復号器は、インターリーブ配置されたページの各々を対応する数の読み書きモジュールに選択的に接続する。例えば、一つの実装例では、メモリアレイは５３２バイト（５１２バイトと、２０バイトのオーバーヘッド）のページサイズを有するように設計される。各列が１本のドレイン・ビットラインを含み、インタリーブ配置されたページが１行あたりに２ページあるとすれば、合計で８５１２列となり、各ページは４２５６列と関連することになる。全ての偶数ビットラインまたは奇数ビットラインのいずれかを並列に読み出したり、或いは書き込むために接続可能なセンスモジュールが４２５６個あることになる。このように、４２５６ビット（すなわち、５３２バイト）のページの並列データが記憶素子のページから読み出されたり、或いはページにプログラムされる。読み書き回路１７０を形成する読み書きモジュールを、種々のアーキテクチャをなすように配列することができる。
【００３４】
図５を参照すると、読み書き回路１７０は読み書きスタック１８０のバンクに組織されている。各読み書きスタック１８０は、複数の読み書きモジュール１９０のスタックである。１つのメモリアレイでは、列間隔は、それを占める１つまたは２つのトランジスタのサイズによって決まる。しかし、図６Ａから分かるように、読み書きモジュールの回路はおそらくもっと多数のトランジスタおよび回路素子で実現され、従って多数の列上のスペースを占める。その占められている複数の列の中の２つ以上の列に便益があるようにするために、多数のモジュールが互いの上に積み重ねられる。
【００３５】
図６Ｂは、読み書きモジュールのスタック１９０により普通に実現された図５の読み書きスタックを示す。例えば、１つの読み書きモジュールは１６列にわたって広がってよく、８個の読み書きモジュールのスタックを有する読み書きスタック１８０を用いて８列に並列に便益があるようにすることができる。読み書きスタックは、列復号器を介してバンク内の８個の奇数（１，３，５，７，９，１１，１３，１５）列または８個の偶数（２，４，６，８，１０，１２，１４，１６）列のいずれかに結合され得る。
【００３６】
前述したように、従来のメモリデバイスは、一度に全ての偶数ビットラインまたは全ての奇数ビットラインに大規模に並列に働きかけることによって読み書き動作を改善する。２つのインターリーブ配置されたページから成る行のこのアーキテクチャは、読み書き回路のブロックを適合させる問題を軽減するのに役立つ。それは、ビットライン間容量結合を制御するという考慮事項によっても左右される。読み書きモジュールのセットを偶数ページまたは奇数ページのいずれかに多重化するために、ブロック復号器が使用される。このようにして、１セットのビットラインが読み出されたり、或いはプログラムされるとき、直接隣接結合 (immediate neighbor coupling)を最小にするために、インターリービングのセットを接地することができる。
【００３７】
しかし、インターリービングページのアーキテクチャは、少なくとも３つの態様において不利である。第１に、付加的な多重化回路を必要とする。第２に、動作が遅い。１つのワードラインによりまたは１つの行内で接続されているメモリセルの読み出しまたはプログラミングを完了するために、２つの読み出し操作または２つのプログラミング操作が必要である。第３に、例えば偶数ページおよび奇数ページで別々にプログラミングされるなど、隣接する２つが異なる時にプログラミングされる場合、フローティングゲートレベルにおける隣接する電荷蓄積素子間のフィールド結合などの他の妨害効果に対処するうえで最適ではない。
【００３８】
隣接フィールド結合の問題は、メモリトランジスタ間の間隔が狭くなるにつれて目立ってくる。メモリトランジスタにおいて、電荷蓄積素子はチャネル領域とコントロールゲートとに挟まれている。チャネル領域を流れる電流は、コントロールゲートと電荷蓄積素子とにおけるフィールドが与える合成電界の関数である。密度がますます高まるにつれて、メモリトランジスタ同士はますます互いに近接して形成されるようになる。すると、隣接する電荷素子からの電界は、影響を受けるセルの合成電界に著しく寄与するようになる。隣接する電界は、隣のものの電荷蓄積素子にプログラムされている電荷に依存する。この外乱電界は、隣のもののプログラムされた状態と共に変化するので、本質的に動的である。従って、影響を受けるセルは、隣のものの変化する状態に依存して、異なる時に異なって読み出される可能性がある。
【００３９】
インターリービングページの従来のアーキテクチャは、隣接フローティングゲート結合に起因するエラーを悪化させる。偶数ページと奇数ページとは互いに無関係にプログラミングされ、かつ読み出されるので、ページは１セットの条件下でプログラミングされるけれども、介在するページにその間に何が起こったかに依存して全く異なる条件セット下で読み戻される可能性がある。読み出しエラーは、密度が高まるにつれてもっと厳しくなり、多状態の実装例のためにより正確な読み出し操作と、しきい値ウィンドウのより粗い分割とを要求する。性能は悪くなり、多状態の実装例で可能な能力は限られている。
【００４０】
従って、高性能で大容量の不揮発性メモリが一般的に必要とされている。特に、読み出しおよびプログラム操作が改善されたコンパクトな不揮発性メモリと、外乱効果を最小にするメモリシステムとが必要である。
【特許文献１】米国特許第５，５９５，９２４号
【特許文献２】米国特許第５，０７０，０３２号
【特許文献３】米国特許第５，０９５，３４４号
【特許文献４】米国特許第５，３１５，５４１号
【特許文献５】米国特許第５，３４３，０６３号
【特許文献６】米国特許第５，６６１，０５３号
【特許文献７】米国特許第５，３１３，４２１号
【特許文献８】米国特許第６，２２２，７６２号
【特許文献９】米国特許第５，５７０，３１５号
【特許文献１０】米国特許第５，９０３，４９５号
【特許文献１１】米国特許第６，０４６，９３５号
【特許文献１２】米国特許第５，７６８，１９２号
【特許文献１３】米国特許第６，０１１，７２５号
【特許文献１４】米国特許第５，５７０，３１５号
【特許文献１５】米国特許第５，７７４，３９７号
【特許文献１６】米国特許第６，０４６，９３５号
【特許文献１７】米国特許第５，１７２，３３８号
【特許文献１８】米国特許第４，３５７，６８５号
【特許文献１９】特願２００４−５４００８８
【非特許文献１】エイタンらによる「ＮＲＯＭ：新規な局所トラッピング、２ビットの不揮発性メモリセル」，２０００年１１月のＩＥＥＥ電子デバイスレターズ，第２１巻，第１１号，５４３〜５４５ページ
【発明の開示】
【００４１】
高性能でコンパクトな不揮発性メモリデバイスのこれらの必要性は、読み書き回路の大きなブロックにメモリセルの対応するブロックを並列に読み出させ、かつ書き込ませることにより満たされる。特に、当該メモリデバイスは、読み書き回路のブロックにおける冗長性を最小にするアーキテクチャを有する。読み書きモジュールのブロックを、共通部分のかなり小さなセットと時間多重化方式で相互に作用しながら、並列に動作するブロック読み書きモジュールコア部分に再分布させることによって、スペースおよび電力の顕著な節約が達成される。一実施形態では、当該コア部分のコンポーネントは類似するスタックのバンクに組織され、その各々は共通部分を共有するこのようなコアコンポーネントのスタックである。
【００４２】
本発明の他の態様によれば、シリアルバスは、各スタック内の当該読み書きモジュールコア部分と共通部分との間の通信を提供する。このようにして、各スタックにおいて使用されなければならない通信ラインは最少となる。バスコントローラが当該コンポーネントの動作とそれらの相互作用とを制御する制御信号およびタイミング信号を当該シリアルバスを通して送る。好ましい実施形態では、類似する全てのスタックにおいて対応するコンポーネントが同時に制御される。
【００４３】
本発明の他の態様によれば、複数の読み書き回路に関連するデータラッチは、チェーンのように蓄積およびシリアル転送を容易にするようにコンパクトに連結されることによってＩ／Ｏイネーブルされる。好ましい実施形態では、コンパクトなデータラッチは、リンクモジュールの１つ以上のチェーンによって実現される。個々のリンクモジュールを、インバータまたはラッチのいずれかとして動作するように接続することができる。１つの方法は、マスタリンクモジュールのセットとスレーブリンクモジュールの大幅に小さなセットとの間でデータを循環させることによって最少数のリンクモジュールの使用を可能にする。
【００４４】
本発明のデータラッチは、スレーブリンクモジュールの数を大幅に減少させることを可能にすると同時に当該データラッチへのシリアル入力および出力を簡単化するので、本発明のデータラッチを用いることによって貴重なチップスペースが節約される。
【００４５】
本発明の種々の態様によるスペースの節約は、よりコンパクトなチップ設計に配慮している。回路の節約と、従ってスペースおよび電力消費量の節約とは、現存する読み書き回路と比べて５０％にもおよび得る。特に、読み書きモジュールがメモリアレイのメモリセルの連続した行に同時に供給することができるように、読み書きモジュールを密集してパックすることができる。
【００４６】
本発明の他の態様によれば、不揮発性メモリデバイスは、読み書きモジュールがメモリアレイのメモリセルの連続した行に同時に供給することができるように、読み書きモジュールを密集してパックすることができるアーキテクチャを有する。これは、メモリセルの１セグメントまたは１行全体の連続的な読み出しおよびプログラミングを可能にし、性能向上と、隣接するメモリセルからのフィールドに起因する結合エラーの減少という結果をもたらす。
【００４７】
本発明の付加的な特徴および利点は、添付図面と関連して読まれるべきであるその好ましい実施形態についての以下の説明から理解されるであろう。
【発明を実施するための最良の形態】
【００４８】
図７Ａは、本発明の好ましい実施形態によるコア部分２１０と共通部分２２０とに区分された１つの読み書きモジュール２００の略ブロック図である。コア部分２１０は、接続されたビットライン２１１の伝導電流が所定のしきい値レベルより上か下かを判定するセンス増幅器２１２を含む。前述したように、接続されたビットライン２１１は、アレイ内のアドレス指定されたメモリセルのドレインへのアクセスを可能にする。
【００４９】
一実施形態では、コア部分２１０はビットラインラッチ２１４も含む。ビットラインラッチは、接続されたビットライン２１１に電圧条件をセットするために使われる。一つの実装例では、ビットラインラッチにおいてラッチされている所定の状態は、接続されたビットライン２１１がプログラム抑制を指示する状態（例えば、Ｖdd）に引かれるという結果をもたらす。この特徴は、後述されるようにプログラム抑制のために使われる。
【００５０】
共通部分２２０は、プロセッサ２２２と、データラッチのセット２２４と、データラッチのセット２２４およびデータバス２３１の間に結合されたＩ／Ｏインタフェース２２６とを含む。プロセッサ２２２は計算を行う。例えば、その機能の一つは、感知されたメモリセルの記憶状態を判定し、その判定されたデータをデータラッチのセットに記憶させることである。背景技術の欄で説明したように、メモリセルは、１つの範囲の電荷を保持することができ、従ってしきい値電圧ウィンドウ内の任意のしきい値電圧レベル（すなわち、所定の伝導電流へそのセルをちょうどオンにするコントロールゲート電圧）にプログラムされ得る。データラッチのセット２２４は、読み出し操作時にプロセッサによって決定されたデータビットを記憶するために使われる。これは、プログラム操作時にデータバス２３１から読み込まれたデータビットを記憶するためにも使われる。読み込まれたデータビットは、メモリにプログラムされるように意図された書き込みデータを表す。Ｉ／Ｏインタフェース２２６は、データラッチのセット２２４とデータバス２３１との間のインタフェースを提供する。
【００５１】
読み出しや感知の間、動作は、アドレス指定されたセルへの種々のコントロールゲート電圧の供給を基本的に制御する状態マシンのコントローラ下にある。それがメモリにより支援される種々の記憶状態に対応する種々の予め定められたコントロールゲート電圧を通って進むとき、センス増幅器２１２は、それらの電圧のうちの１つにおいてトリップする。そのポイントで、プロセッサ２２２は、センス増幅器のトリップイベントと、印加されたコントロールゲート電圧に関する当該状態マシンからの入力ライン２２３を介する情報とを考慮して、結果としての記憶状態を判定する。それは、その記憶状態についてのバイナリーエンコーディングを計算し、その結果としてのデータビットをデータラッチのセット２２４に記憶する。
【００５２】
図７Ｂは、図７Ａに示す読み書きモジュールのコア部分の他の好ましい実施形態を例示する。本質的に、ＳＡ／ビットラインラッチ２１４は、センス増幅器２１２の出力をラッチするためのラッチとして、かつ図７Ａに関して説明されたビットラインラッチとして、二重の任務を果たす。従って、これを、センス増幅器またはプロセッサのいずれかによってセットすることができる。好ましい実装例では、ＳＡ／ビットラインラッチ２１４からの信号は、ドライバ２１６によって駆動されて、選択されたビットライン２１１の電圧をセットする。
【００５３】
図７Ａを参照すると、プログラムや検証の間、プログラムされるべきデータはデータバス２３１からデータラッチのセット２２４に入力される。状態マシンのコントローラ下で、プログラム動作は、アドレス指定されたセルのコントロールゲートに印加される一連のプログラミング電圧パルスを含む。各プログラミングパルスに続いて、セルが所望の記憶状態にプログラムされたかどうかを判定する読み戻しが行われる。プロセッサ２２２は、読み戻された記憶状態を所望の記憶状態に関して監視する。この２つが一致したとき、プロセッサ２２２は、ビットラインがプログラム抑制を指示する状態へ引かれるようにビットラインラッチ２１４をセットする。これは、たとえプログラミングパルスがそのコントロールゲートに出現しても、ビットラインに結合されているセルがそれ以上プログラミングされるのを抑制する。
【００５４】
Ｉ／Ｏインタフェース２２６は、データラッチのセット２２４へのデータの出し入れを可能にする。図８Ａ、８Ｂおよび９に見られるように、データのブロックを一度に読み出したり、またはプログラムするためにメモリデバイスにおいて読み書きモジュールのブロックが並列に使用される。通常、読み書きモジュールのブロックによりラッチされているデータをデータバス２３１へシリアルに転送できるように、読み書きモジュールのブロックのデータラッチの個々のセットが結合されてシフトレジスタを形成する。同様に、読み書きモジュールのブロックのためのプログラムデータをデータバス２３１からデータラッチの各セットへシリアルに入力してラッチさせることができる。
【００５５】
読み書きモジュール２００の他の特定の実装例が、本願と同じ日に出願された同時継続出願中の共通に譲渡されたセルニア，ラウル−エイドリアンおよびリ，ヤンによる米国特許出願「隣接フィールドエラーが低減された不揮発性メモリおよび方法」（特許文献１９）に開示されている。この特許出願は、その全体が本願明細書において参照により援用されている。
【００５６】
コンパクトな読み書き回路
本発明の１つの重要な特徴は、並列に動作する読み書きモジュールのブロックについて、各モジュールをコア部分と共通部分とに区分し、コア部分のブロックを大幅に少ない数の共通部分と動作させ、かつ共有することである。このアーキテクチャは、個々の読み書きモジュールの中の重複する回路を因数分解することによりスペースおよび電力を節約することを可能にする。高密度のメモリチップの設計では、スペースの節約はメモリアレイのための読み書き回路全体の５０％にもおよび得る。これは、読み書きモジュールが、メモリアレイのメモリセルの１つの連続する行に同時に供給することができるように、読み書きモジュールを密接にパックすることを可能にする。
【００５７】
図８Ａは、本発明の一実施形態による区分された読み書きスタックのバンクを有するコンパクトなメモリデバイスを概略的に例示する。当該メモリデバイスは、メモリセルの２次元アレイ３００と、制御回路３１０と、読み書き回路３７０とを含む。メモリアレイ３００は、行復号器３３０を介してワードラインにより、また列復号器３６０を介してビットラインにより、アドレス指定可能である。読み書き回路３７０は、区分された読み書きスタック４００のバンクとして実現され、メモリセルのブロックを並列に読み出したり、或いはプログラムすることを可能にする。１行のメモリセルが多数のブロックに区分されている一実施形態では、読み書き回路３７０を個々のブロックに多重化するためにブロックマルチプレクサ３５０が設けられる。より詳細に後述するように、読み書きスタック４００内での通信は、スタックバスにより行われ、スタックバスコントローラ４３０によって制御される。
【００５８】
制御回路３１０は、メモリアレイ３００での記憶動作を実行するために読み書き回路３７０と協力する。制御回路３１０は、状態マシン３１２、オンチップアドレス復号器３１４および電力制御モジュール３１６を含む。状態マシン３１２は、記憶動作のチップレベル制御を提供する。オンチップアドレス復号器３１４は、復号器３３０および３７０により使用されるハードウェアアドレスへの、ホストまたはメモリコントローラにより使用されるもののアドレスインタフェースを提供する。電力制御モジュール３１６は、記憶動作中にワードラインおよびビットラインに供給される電力および電圧を制御する。
【００５９】
図８Ｂは、図８Ａに示すコンパクトなメモリデバイスの好ましい構成を例示する。種々の周辺回路によるメモリアレイ３００へのアクセスは、当該アレイの向かい合う側に対称的に実現されるので、各側のアクセスラインおよび回路は半分に減らされている。従って、行復号器は行復号器３３０Ａおよび３３０Ｂに分割され、列復号器は列復号器３６０Ａおよび３６０Ｂに分割されている。１行のメモリセルが多数のブロックに区分される実施形態では、ブロックマルチプレクサ３５０はブロックマルチプレクサ３５０Ａおよび３５０Ｂに分割される。同様に、読み書き回路は、下からビットラインに接続する読み書き回路３７０Ａとアレイ３００の上からビットラインに接続する読み書き回路３７０Ｂとに分割される。このようにして、読み書きモジュールの密度が、従って区分された読み書きスタック４００の密度が、ほぼ半分に減らされる。
【００６０】
図９は、区分された読み書きスタックのバンクに組織された図８Ａまたは８Ｂに示す読み書き回路をより詳細に概略的に例示する。区分された読み書きスタック４００の各々は、本質的にｋ個のメモリセルのセグメントに並列に便益である読み書きモジュールのスタックを含む。各スタックは、コアスタック部分４１０と共通スタック部分４２０とに区分されている。各読み書きスタック４００内での通信は、相互接続スタックバス４３１により行われ、スタックバスコントローラ４３０により制御される。制御ライン４１１は、スタックバスコントローラ４３０から読み書きスタック４１０のコア部分の各々へ制御信号およびクロック信号を提供する。同様に、コントロールライン４２１は、スタックバスコントローラ４３０から読み書きスタック４２０の共通部分の各々へ制御信号およびクロック信号を提供する。
【００６１】
並列に動作する区分された読み書きスタック４００のバンク全体が、１行に沿うｐ個のセルのブロックが並列に読み出されたり、或いはプログラムされることを可能にする。例えば、ｒがバンク内のスタックの数であるとすれば、ｐ＝ｒ＊ｋである。メモリアレイの一例は、ｐ＝５１２バイト（５１２×８ビット）、ｋ＝８を有し、従ってｒ＝５１２である。好ましい実施形態では、ブロックはセルの行全体のランである。他の実施形態では、ブロックは行内のセルのサブセットである。例えば、セルのサブセットは行全体の半分或いは行全体の４分の１であり得る。セルのサブセットは、隣接するセルの１つのラン、または１つ置きのセル、或いは所定数に１つのセルであり得る。
【００６２】
図８Ａに示す実施形態では、ｐ個のセルのブロックの各々に１つずつ、ｐ個の読み書きモジュールがある。各スタックはｋ個のメモリセルに供給されるので、バンク内の読み書きスタックの総数はｒ＝ｐ／ｋによって得られる。ｐ＝５１２バイトでｋ＝８である例では、ｒは５１２になる。
【００６３】
前述したように、高密度で高性能のメモリにおける１つの問題は、セルの連続的行のブロックを並列に読み出し、かつプログラムする必要があること、および全てのセルのために読み書きモジュールを収容するのが困難であることである。
【００６４】
収容の問題は、メモリアレイの向かい合う両側に周辺回路が形成されている図８Ｂに示す好ましい実施形態により軽減される。読み書き回路３７０Ａ、３７０Ｂがメモリアレイ３００の向かい合う両側に形成されているときに、ｐ個のセルのブロックの半分は上側からアクセスされ、他の半分はアレイの下側からアクセスされる。従って、各側にｐ／２個の読み書きモジュールがある。その結果として、各側に存する読み書きスタック４００はｐ／２個のビットラインまたはメモリセルに並列に供給するだけで良いので、バンクの読み書きスタックの総数はｒ＝ｐ／２ｋによって得られることになる。ｐ＝５１２バイトでｋ＝８である例では、ｒは２５６になる。このことは、図８Ａに示す実施形態と比べてメモリアレイの各側に僅か半分の個数の読み書きスタック４００が必要とされるに過ぎないということを意味する。
【００６５】
収容或いはその他の考慮事項がもっと低い密度を必要とする他の実施形態では、セルの行はセルのインターリーブされた２つ以上のブロックに区分される。例えば、セルの１つのブロックは偶数列からのセルから成り、セルの他のブロックは奇数列からのセルから成る。図８Ａおよび８Ｂに示されているように、ブロックマルチプレクサ３５０または３５０Ａおよび３５０Ｂは、区分された読み書きスタックのバンクを偶数ブロックまたは奇数ブロックのいずれかへ切り替えるために使用される。図８Ｂに示す実施形態では、アレイの各側にｐ／４個の読み書きモジュールがある。この場合、向かい合う側の各々における読み書きスタックの数はｒ＝ｐ／４ｋになる。従って、比較的に少数の読み書きモジュールを設けるために比較的に大きな場所が提供されることになるが、性能が低下すると共に読み書きブロックが最早連続的でないという犠牲を払うことになる。
【００６６】
図１０は、読み書きモジュールのスタックから構成された区分された読み書きスタックをより詳細に示す。区分された読み書きスタック４００は、本質的にｋ個のビットラインを介してｋ個のメモリセルに供給するｋ個の読み書きモジュールを含む。図７に示す読み書きモジュール２００から分かるように、１つのメモリセルより多くの回路要素を含むので、幅が本質的に１つのメモリセルの幅により定められる１つの列の中に収容され得ない。読み書きモジュール２００の複雑さと特徴とに依存して、それは、例えば８列と１６以上の列（すなわち、ｋ〜８から１６以上）との間を容易に占める可能性がある。各読み書きモジュールは、ｋなどの十分な数の列にまたがる幅を有する。このことは、各列に便益があるようにするために、これらのまたがられた列の中に同数のモジュール（ｋ）を積み重ねなければならなくなることを意味する。例えば、各読み書きモジュールが１６列の幅を有するとすれば、読み書き回路が一方の側だけに存在する図８Ａに示す実施形態では、スタックは１６個の読み書きモジュールを含むことになる。読み書き回路がアレイの上および下の両方に形成されているので、８個のビットラインが各端部でアクセスされる図８Ｂに示す好ましい実施形態では、スタックの深さは８つの読み書きモジュールとなる。
【００６７】
本発明の１つの重要な特徴は、複雑で、同時に非常にコンパクトな読み書きモジュール２００を実現することである。これを、ｐ個の読み書きモジュールのブロックを、遥かに少数の（すなわち、ｒ個の）読み書きモジュール共通部分２２０を共有するｐ個の読み書きモジュールコア部分２１０に区分することによって可能にする（図７および図１０を参照）。
【００６８】
図１０は、ｋ個のビットラインに供給する読み書きスタック４００がスタックコア部分４１０とスタック共通部分４２０とに区分されていることを示す。スタックコア部分４１０は、図７Ａまたは図７Ｂにそれぞれ示す２１０のようなｋ個の読み書きモジュールコアを含む。スタック共通部分４２０は、図７Ａに示す共通部分２２０のような１つの読み書きモジュール共通部分を含む。コア部分と共通部分とへの区分けは、コア部分がすべて同時にまたは並列に操作されるという原理に基づいている。この場合、メモリセルの対応するブロックが並列に感知されるので、センス増幅器２１２とＳＡ／ビットラインラッチ２１０（図７Ｂを参照）とを含むことになる。メモリセルのブロックが並列に感知された後、感知結果を、比較的に少数の共通部分によってシリアルに処理することができる。
【００６９】
コア部分２１０の各々と共通部分４２０の間の通信は、スタックバス４３１を通してスタックバスコントローラ４３０の制御下で行われる。これは、当該コントローラからバンク内の全てのスタックへ伸びる４１１−ｋおよび４２１などの制御ラインによって達成される。
【００７０】
この共有方式は、読み書き回路における冗長性を回避する。ｋ＝８ならば、各スタック内で８個の共通部分のうちのおよそ７個が最早必要なくなる。読み書き回路全体に関しては、これは、おおよそ合計でｒ＊（ｋ−１）個の共通部分を廃止するということになり、集積メモリチップにおいてスペースを大幅に節約するという結果をもたらす。前述したように、読み書き回路により占められるスペースを５０％も減少させるという結果をもたらし得る。
【００７１】
図１１Ａは、図１０に示す読み書きスタックコア４１０の一実施形態を示し、ここでスタック内の各センス増幅器は、これと関連するビットラインラッチに隣接して配置されている。これらのセンス増幅器とビットラッチとは、図７の読み書きモジュールコア部分２１０に示されているものと類似している。読み書きスタックコア４１０は、ｋ個のセンス増幅器２１２−１から２１２−ｋまでと、ｋ個のビットラインラッチ２１４−１から２１４−ｋまでとを含み、ビットラインラッチが同じビットラインに供給するセンス増幅器に隣接するように組織されている。例えば、ビットラインラッチ２１４−１はセンス増幅器２１２−１に隣接し、両方ともビットライン１に結合されている。ビットラインラッチおよびセンス増幅器の各々は、スタックバス４３１を通して読み書きスタック４００の他のコンポーネントと通信する（図１０を参照）。
【００７２】
図１１Ｂは、図１０に示す読み書きスタックコア４１０の他の実施形態を示し、ここでスタック中の個々のセンス増幅器は１つのクラスタを形成し、個々のビットラインラッチは他のクラスタを形成している。読み書きスタックコア４１０は、ｋ個のセンス増幅器２１２−１から２１２−ｋまでと、ｋ個のビットラインラッチ２１４−１から２１４−ｋまでとを含む。読み書きスタックコア４１０は、ｋ個のビットラインラッチの全てが１つのクラスタ内で互いに隣接し、ｋ個のセンス増幅器の全てが他のクラスタ内で互いに隣接するように組織されている。例えば、ビットラインラッチ２１４−１から２１４−ｋまでが１つのクラスタを形成し、センス増幅器２１２−１から２１２−ｋまでが他のクラスタを形成する。ビットラインラッチおよびセンス増幅器の各々は、制御ライン４１１を介してスタックバスコントローラの制御下でスタックバス４３１（図１０を参照）を通して読み書きスタック４００の他のコンポーネントと通信する。
【００７３】
図１２は、図１０に示す読み書きスタック共通部分をより詳細に示す。読み書きスタック共通部分４２０は、本質的に図７に示す共通部分２２０などの読み書きモジュール共通部分の１つのコピーを含む。それは、プロセッサ２２２と、データラッチスタック２２４とを含む。一実施形態では、データバス２３１は、プロセッサ２２２およびデータラッチスタック２２４に結合され、またプロセッサ２２２を介してスタックバス４３１にも結合される。他の実施形態では、データバス２３１は、スタックバス４３１の延長部分である。スタックバス４３１（図１０を参照）は、読み書きスタックコア部分４１０と共通部分４２０との間の通信を可能にする。このようにして、個々の読み書きモジュールコア２１０は、共通部分４２０を共有することができる。プロセッサ２２２と、データラッチスタック２２４と、スタックバス４３１との動作は、制御ライン４２１を介してスタッバスコントローラからの制御信号およびクロック信号によって制御される。
【００７４】
区分された読み書きスタック４００の種々のコンポーネントの動作は、図７の区分された読み書きモジュール２００に関して一般的に説明された動作と類似している。スタック共通部分が多数の読み書きモジュールコアに共有されるのでスペースが節約されるので、複雑で、特徴に富む読み書きモジュールが可能となる。例えば、プロセッサ２２２を、エラー訂正を含む洗練されたマージング推定 (margining estimations)と、静的および動的データ処理を実行するためにも使用することができる。
【００７５】
スタックバス
本発明の他の態様によれば、区分された読み書きスタック４００内の種々の部分の間の通信のためにシリアルバスが設けられる。シリアルバス４３１は、スタックバスコントローラ４３０の制御下で読み書きモジュール共通部分４２０を読み書きモジュールコア４１０のいずれとも相互に接続することができる。スタックバスコントローラ４３０は、読み書きスタック４００内の種々の部分の間で何時およびどんな場合にデータが転送されるかを制御するバスマスタとして作用する。
【００７６】
図１０〜１２を参照すると、メモリセルがアドレス指定されたときに、そのソース−ドレイン電流が複数のセンス増幅器のうちのセンス増幅器２１２−ｋなどの１つのセンス増幅器によって感知される。センス増幅器２１２−ｋのデジタル出力はスタックバス４３１に出力され、次いでプロセッサ２２２によってピックアップされる。バスのタイミングは、スタックバスコントローラ４３０によって制御される。プロセッサ２２２は、センス増幅器の出力データを関連する状態情報と共に処理して、アドレス指定されたセルについてのバイナリー読み出しデータを得る。そのバイナリーデータは、スタックバス４３１に出力され、ビットラインｋと関連するデータラッチによってピックアップされる。再び、スタックバスコントローラ４３０は、センス増幅器２１２−ｋから得られたバイナリーデータが、それと関連するデータラッチへ行くことを保証する。
【００７７】
プログラミング動作の検証ステップにおいて、センス増幅器のデジタル信号は、アドレス指定されたメモリセルが所望のレベルにプログラムされているかどうかを示す。所望のレベルが達成されていれば、プロセッサ２２２は、スタックバス４３１を介して対応するビットラインラッチへ制御信号を送る。例えば、ビットラインラッチ２１４−ｋを、ビットラインｋが、結合されているメモリセルのさらなるプログラミングを阻止する所定の電圧（例えば、Ｖdd）まで引かれていることに対応する状態にセットすることができる。他の実施形態では、必ずしもビットラインの電圧を制御するようには結合されないが、アドレス指定されたワードラインを通してプログラミング電圧を制御するように結合される専用のラッチによってプログラム・ロックアウト・ラッチを実現することができる。
【００７８】
共通部分４２０の区分けとｋ個の読み書きモジュールコア２１０による共有とは、区分された部分の間に通信チャネルが確立されたことを予見する。図７を参照すると、コア部分２１０と共通部分２２０との間に少なくとも２つの接続があることが分かる。従って、少なくとも２ｋ個の接続が必要であると思われる。これらはｋ個のビットライン接続に加えて、ｋから２ｋ個の列の幅の中に設けられるべき合計３ｋ個の接続を与える。従って、少なくとも、各列は１．５個の伝導ラインを収容しなければならない。通常、各線の幅、従って導電率が最大になるように、各列内の伝導ラインがなるべく少ないほうが好ましい。
【００７９】
スタックバス４３１の実装例は、区分された読み書きスタック４００のいろいろな部分のための通信ラインの数の減少を可能にする。好ましい実施形態では、唯一のラインでのシリアルバスの実装例が使用される。このようにして、２ｋ個の列を占める各スタックのために、現存するｋ個のビットラインに加えて、唯一の伝導ラインが必要とされ、合計ではｋ＋１個の伝導ラインとなる。各列がほぼ０．５個の伝導ラインを収容しなければならないという結果をもたらすことになり、これは各伝導ラインの幅がほぼ２列の幅であり得るということを意味する。シリアルバスのアーキテクチャを有する読み書きスタックは、スタック内での個々の部分の配置（例えば、図１１Ａおよび１１Ｂを参照）を与えられた考慮事項に応じて最適化し得るように、レイアウトの自由度を大きくすることも可能にする。
【００８０】
コンパクトなＩ／Ｏイネーブルされるデータラッチスタック
本発明の他の態様によれば、読み書きセンス増幅器のブロックと関連するＩ／Ｏイネーブルされるデータラッチのセットが、スペースが効率的なシフトレジスタの一部として実現される。
【００８１】
前述したように、読み出し動作時に、センス増幅器２１２の出力信号はプロセッサ２２２によって解釈され、バイナリーフォーマットに変換される。２状態記憶の実装例では、変換されたデータは１ビットのバイナリーデータになる。多状態の実装例では、変換されたバイナリーデータは２ビット以上である。従って、バイナリーデータの各ビットのために、データラッチのセットの中に１つの対応するデータラッチがある。プログラム動作中、データラッチの同じセットがプログラムデータラッチとして使われる。プログラムされるべきデータは、ホスト／コントローラからデータバスを介してメモリチップに送られ、データラッチの同じセットに蓄積される。本願明細書の目的上、ラッチは多状態の場合にはアレイであることが理解されよう。
【００８２】
図１２を参照すると、コンパクトなデータラッチスタック２２４は、ｋ個のセンス増幅器に対応するｋ個のデータラッチのスタックを含む。これらのデータラッチはその読み出しデータまたは書き込みデータをデータバス２３１と交換するので、これらに蓄積されている並列データがデータバスのためのシリアルデータに変換され、またその逆の変換も行われるように、当該データラッチスタックをシフトレジスタとして実現するのが好ましい。好ましい実施形態では、データのブロックがデータバスへ或いはデータバスからシリアルに転送されることによって入力または出力され得るように、ｐ個のメモリセルの読み書きブロックに対応する全てのデータラッチを一緒に連結して１つのブロックシフトレジスタを形成することができる。特に、ｒ個の読み書きスタックのバンクの動作タイミングは、そのデータラッチのセットの各々が、あたかも当該読み書きブロック全体のためのシフトレジスタの一部であるかのようにデータをデータバスへ或いはデータバスから順次にシフトさせるように、設定される。
【００８３】
図１３Ａは、シフトレジスタの従来の実装例を例示する。シフトレジスタは、マスタ−スレーブ・フリップ−フロップＭ1 ，Ｓ1 ，・・・，Ｍk ，Ｓk の列として実現される。データラッチスタック２２４がこのタイプのシフトレジスタで実現されたときに、データはマスタ−スレーブ・フリップ−フロップの列を通してシリアルにシフトされる。各クロックエッジで、チェーン内の全てのフリップフロップが同時に操作され、チェーン内のデータが１フリップ−フロップだけシフトされる。各マスタ・フリップ−フロップにスレーブを割り当てることにより、マスタ自体が上書きされる前に、各マスタの内容がスレーブにコピーされることを保証する。このタイプのシフトレジスタは、ｋ個のデータビットを保持し、シフトさせるために２ｋ個の記憶装置を必要とするので、２倍のオーバーヘッドを有するから“２ｋシフトラッチ”と見なされ得る。
【００８４】
図１３Ｂは、図１３Ａのマスタ−スレーブ・フリップ−フロップで実現されたデータラッチスタックへのデータのローディングを例示するテーブルである。シリアルデータＤ1 ，Ｄ2 ，Ｄ3 ，・・・がシフトレジスタに供給されてゆくとき、一連のクロック信号、ＣＬＫ1 ，ＣＬＫ2 ，ＣＬＫ3 ，・・・がラッチスタックコントローラ２２４（図１０を参照）により供給され、全てのフリップフロップに加えられる。第１のクロックサイクルＣＬＫ1 において、第１のデータＤ1 が第１のマスタ・フリップ−フロップＭ1 にラッチされる。第１のクロック信号ＣＬＫ1 ＊の立ち下がりエッジにおいて、Ｍ1 のデータＤ1 は第１のスレーブ・フリップ−フロップＳ1 にもラッチされる。第２のクロックサイクルＣＬＫ2 において、第１のデータＤ1 がＳ1 から第２のマスタ・フリップ−フロップＭ2 にロードされるときに、次のデータＤ2 がＭ1 にロードされる。後のステップは、全てのデータ項目がラッチスタック２２４の中にシフトされるまで、例示されているように、前のステップの単純な繰り返しである。ｋ個の項目のローディングがｋ個のクロックサイクルを必要とすることが分かる。
【００８５】
多状態メモリについて、マスタ・フリップ−フロップＭおよびスレーブ・フリップ−フロップＳの各々が所要のデータビットの数に比例する規模を持ったアレイになるということが理解されよう。例えば、４状態メモリセルについて、状態はデータの２つのバイナリービットによって符号化される。２ビットの各々について、ＭはＭ（１）およびＭ（２）を表し、ＳはＳ（１）およびＳ（２）をそれぞれ表す。従って、“２ｋシフトラッチ”は、Ｍ1 （１），Ｓ1 （１），Ｍ1 （２），Ｓ1 （２），Ｍ2 （１），Ｓ2 （１），Ｍ2 （２），Ｓ2 （２），・・・，Ｍk （１），Ｓk （１），Ｍk （２），Ｓk （２）により形成されることになる。
【００８６】
図１４Ａは、コンパクトなラッチスタック２２４の１つの好ましい実施形態を例示する。ラッチスタック２２４は、スレーブリンクモジュールＳ1 ５２０を有するチェーンを含み、これに一連のマスタリンクモジュールＭk ，・・・，Ｍ2 ，Ｍ1 ５１０が続く。このチェーンは、スレーブリンクモジュールＳ1 ５２０にＩ／Ｏ端部５０１を有する。データＤ1 ，Ｄ2 ，・・・，Ｄk は、Ｉ／Ｏライン５１０から当該チェーン内にシフトされ、Ｍ1 端部から当該チェーンの外へシフトされる。Ｍ1 から出力されたデータは、出力ラインドライバ５３０を通してＩ／Ｏライン５０１へ送られる。
【００８７】
出力ラインドライバは、ライン５３３のＲＥＡＤ信号によりゲートで制御されるトランジスタ５３２と、トランジスタ５３６によって選択的に分路されるインバータ５３４とを含む。トランジスタ５３６のゲート５３７における制御信号ＩＮＶＥＲＴ＊がハイであるときに、インバータ５３４はアクティブであり、Ｍ1 からの出力信号を反転する。そうでなければ、インバータ５３４はバイパスされ、Ｍ1 からの出力信号はＩ／Ｏライン５０１に現れる。データラッチスタック２２４を操作するために必要な制御信号ＲＥＡＤ、ＩＮＶＥＲＴ＊、およびその他の制御信号、並びにタイミング信号は、制御ライン４２１を介してスタックバスコントローラ４３０により提供される（図１２を参照）。
【００８８】
図１４Ａに示すデータラッチスタック２２４は“ｋ＋１”のコンパクトなシフトレジスタと見なされてよく、ｋビットのデータを保持するためにｋ個のマスタリンクモジュール５１０を含み、データを一時記憶するために唯一のスレーブリンクモジュール５２０を使用する。スレーブリンクモジュール５２０は、記憶されたデータを途中で失わずに当該チェーンに沿ってデータ項目をシャッフルすることを容易にする。ラッチスタックのこの実装例は、図１３Ａおよび１３Ｂの“２ｋシフトラッチ”と比べて、必要なラッチの数を半分に減らすのに役立つ。後述する他の実施形態では、ｋ個のマスタリンクモジュールは２個以上のスレーブリンクモジュールを共有することができるが、一般にスレーブモジュールの数はマスタモジュールの数より大幅に少ない。
【００８９】
図１４Ｂは、マスタまたはスレーブリンクモジュール５１０，５２０の一実施形態を示す。このリンクモジュールの１つの新規な特徴は、当該モジュールを選択的にインバータまたはラッチとして動作させることができることである。当該リンクモジュールは入力５０１と出力５５１とを有する。入力５０１は、チェーン内の前のリンクモジュールの出力からデータ入力を受け取る。トランジスタ５１２は、制御信号ＩｎＣＬＫにより制御され、入力データのためのゲートとして役立つ。当該制御信号がハイであるとき、データは当該リンクモジュールに入ることができる。当該制御信号がローであるとき、データは当該モジュールに入ることを許されない。データが入ることを許されれば、データは、一対のインバータ５５０，５６０により形成されるラッチ内にラッチされているか、或いは他方のインバータ５６０がディスエーブルされている間に一方のインバータ５５０によって反転されるかのいずれかである。そのラッチされたデータは、出力５５１においてアクセス可能であるけれども、制御信号ＯｕｔＣＬＫにより制御されるトランジスタ５１４によってゲートで制御される。
【００９０】
図１４Ｃは、制御信号ＬＨ／ＩＮＶ＊がハイであるときに、図１３Ｂのリンクモジュールがラッチとして機能することを概略的に示す。当該ラッチは、インバータ５６０が直列トランジスタ５６２によりそのゲートの制御信号ＬＨ／ＩＮＶ＊で選択的にイネーブルされたときに、イネーブルされる。イネーブルされたインバータ５６０はインバータ５５０と協力して、入力データをラッチするラッチとして機能する。
【００９１】
図１４Ｄは、制御信号ＬＨ／ＩＮＶ＊がローであるときに、当該リンクモジュールがインバータとして機能することを概略的に示す。この場合、インバータ５６０はディスエーブルされ、入力データは単にインバータ５５０を通過するだけである。
【００９２】
従って、チェーン内の各リンクモジュール５１０または５２０は選択的にインバータまたはラッチであり得る。チェーンによるデータの入力、ラッチングまたは出力は、その個々のチェーンモジュールの適切な制御によって行われる。制御信号は、スタックバスコントローラ４３０によりコントロールライン４２１を介して供給される（図１２を参照）。
【００９３】
図１５Ａは、図１４Ａのコンパクトなデータラッチスタックで実現されたデータラッチスタックへの４データビットのローディングを例示する。４データビットは一例として使われ、ここでｋ＝４である。一般に、データラッチスタックは必要とされるいろいろな数のデータビットｋを保持することができる。プログラミング前に、クロックサイクルＣＬＫ1 ，ＣＬＫ2 ，ＣＬＫ3 およびＣＬＫ4 でそれぞれ順にＩ／Ｏライン５０１（図１４Ａを参照）に現れるＤ1 ，Ｄ2 ，Ｄ3 ，Ｄ4 などのプログラムされるべきデータがデータラッチスタックにロードされる。ＣＬＫ1 の直前に、個々のリンクモジュール（Ｍ1 ，Ｍ2 ，Ｍ3 ，Ｍ4 ，Ｓ1 ）は全てインバータ（図１４Ｃを参照）、すなわち（ＩＮＶ，ＩＮＶ，ＩＮＶ，ＩＮＶ，ＩＮＶ）として動作するようにセットされる。このようにして、ＣＬＫ1 でデータＤ＊1 がＭ1 に与えられる。次のエッジＣＬＫ＊1 （明示せず）でＭ1 はラッチ（図１４Ｄを参照）に転換されてＤ＊1 を保持し、チェーンから切り離される。ＣＬＫ2 の直前に、チェーン内の残りのリンクモジュールの状態は全てインバータ、すなわち（ＬＨ，ＩＮＶ，ＩＮＶ，ＩＮＶ，ＩＮＶ）として動作するようにセットされる。このように、データＤ＊2 がＭ2 に与えられる。ＣＬＫ＊2 （明示せず）でＭ2 もラッチに転換されてＤ2 を保持し、チェーンから切り離される。Ｄ＊3 およびＤ4 がＭ3 およびＭ4 にラッチされるときに、同様のプロセスがＣＬＫ3 およびＣＬＫ4 でそれぞれ行われる。このように、４個のクロックサイクルの後、４個のデータビットが４つのマスタチェーンモジュールＭ1 ，Ｍ2 ，Ｍ3 ，Ｍ4 にロードされる。一つの好ましい実施形態では、１つの追加のクロックサイクルＣＬＫ5 が、Ｍ1 内のデータのコピーをスレーブチェーンモジュールＳ1 に保存することを可能にする。これは、図１５Ｃと関連して後述される後の非破壊モード読み出しを容易にする。
【００９４】
図１５Ｂは、図１５Ａのデータラッチスタックからの４個のデータビットの破壊モード読み出しを例示する。図１５Ａに示されているように、４クロックサイクル後、当該データラッチスタックは完全にロードされる。図１５Ｂでは、ＣＬＫ1 の間に、Ｍ1 内のデータＤ＊1 は、その位相が出力ラインドライバ５３０により調整された後、読み出される。ＣＬＫ2 の間に、マスタチェーンモジュールＭ1 はインバータのように動作し（図１４Ｃを参照）、Ｍ2 内のデータＤ2 はＭ1 を通して送られ、その位相が出力ラインドライバ５３０により調整された後に読み出される。同様に、ＣＬＫ3 およびＣＬＫ4 の間に、データＤ3 およびＤ4 が適宜に読み出される。このように、４ビットのデータが４個のクロックサイクルで読み出される。しかし、ラッチスタックに蓄積されていた元のデータは、この破壊モード読み出し動作後に破壊されている。
【００９５】
図１５Ｃは、図１５Ａのデータラッチスタックから４個のデータビットを保存モードで読み出す他の好ましい実施形態を例示する。図１５Ａに示されているように、４クロックサイクル後、データラッチスタックは完全にロードされる。読み出されるべきビットがチェーンの出力端、すなわちＭ1 にあるならば、それをラッチスタック内のデータに影響を与えずに容易に読み出し得ることが分かる。ラッチスタックが完全にロードされているとき、Ｄ1 はＭ1 内にあって容易に読み出される。データの他のビットを読み出すために、チェーンはそれ自体の周りにループ化され、スレーブリンクモジュールＳ1 はエンリストされてチェーンモジュール内のビットをシャッフルし、当該ビットを当該ループの周りに回転させる。従って、データＤ2 を読み出すために、始めに他のデータを破壊することなくＭ1 へ回転させられなければならない。
【００９６】
図１５Ｃにおいて、Ｄ1 のコピーがＳ1 に既に保存されている。ＣＬＫ1 の間に、マスタリンクラッチＭ1 だけがインバータに転換され（図１４Ｃを参照）、Ｍ2 内のデータＤ2 はＣＬＫ＊1 でＭ1 に転送され、ラッチされる。従って、Ｄ1 はＳ1 へ回転させられ、Ｄ2 はＤ＊2 としてＭ1 へ回転させられる。ＣＬＫ2 の間に、Ｍ2 だけがインバータに転換され、Ｍ3 内のデータＤ3 はＣＬＫ＊2 でＭ2 に転送され、ラッチされる。従って、Ｄ3 はＭ2 へ回転させられている。同様に、ＣＬＫ3 およびＣＬＫ4 の間にある。データＤ4 はＭ3 へ回転させられ、Ｓ1 からのＤ1 のコピーがＭ4 へ回転させられる。従って、４クロックサイクルの後、マスタリンクモジュール内の４個のデータビットが当該チェーンに沿って１リンクモジュールだけ回転させられる。特に、Ｄ2 は今はＭ1 にあり、ＣＬＫ5 の間に読み出され得る。同時に、回転の次のラウンドを続けるためにＤ2 のコピーがＳ1 に保存される。このように、チェーン内で４個のデータビットを１つの位置だけに回転させるために４＋１のクロックサイクルを要する。換言すれば、保存モード読み出しでは、ｋビットのデータを読み出すために、ｋ（ｋ＋１）個のクロックサイクルを要する。ｋ＝４の例では、２０クロックサイクルを要する。
【００９７】
図１６Ａは、図１４Ａに示す“ｋ＋１”データラッチスタックの他の実装例を例示する。ｋ個のマスタリンクモジュール５１０は、１つのスレーブリンクモジュール５２０を各々共有する数個の並列ブランチに分解されている。ｋ＝４の例では、１ブランチとしてＳ1 を共有するＭ1 ，Ｍ2 および第２のブランチとしてＳ2 を共有するＭ3 ，Ｍ4 などの２つのマスタリンクモジュールを各々有する２つのブランチにグループ分けすることができる。個々のブランチにおける動作は、図１５Ｃに関して説明した単一のブランチの動作と同様である。従って、保存読み出しモードでは、第１のブランチに蓄積されている２つのビットＤ1 およびＤ2 を回転させ、読み出すために２（２＋１）＝６個のクロックサイクルを要する。第２のブランチの２ビットＤ3 およびＤ4 についても同様である。この場合、図１５Ｃに示す場合では、２０クロックサイクルであるのに比べて、全ての４ビットを読み出すために合計１２クロックサイクルを要する。
【００９８】
所要のラッチ数と当該ラッチからの読み出しの速度との間にトレードオフがあることが分かる。使用されるスレーブラッチの数が少ないほど、サイクルタイムは長くなる。
【００９９】
図１６Ｂは、図１４Ａに示す“ｋ＋１”データラッチスタックの他の好ましい実装例を例示する。ｋ個のマスタリンクモジュール５１０は、複数の並列ブランチにグループ分けされているが、ここで図１６Ａに示すものと類似しているけれども、Ｓ1 などの同じスレーブリンクモジュール５２０を全てのブランチが共有する点において異なっている。ｋ＝４である例では、１ブランチとしてのＭ1 ，Ｍ2 および第２のブランチとしてのＭ3 ，Ｍ4 などの２つのマスタリンクモジュールを各々有する２つのブランチにグループ分けすることができる。この２つのブランチは同じスレーブリンクモジュールＳ1 を共有する。第１のブランチが読み出されるときに、回転はＭ1 ，Ｍ2 およびＳ1 を通して行われる。第２のブランチが読み出されるときに、回転はＭ3 ，Ｍ4 およびＳ1 を通して行われる。この場合、Ｄ1 およびＤ2 を読み出すために６クロックサイクルを要し、Ｄ3 およびＤ4 を読み出すために別の６クロックサイクルを要し、図１６Ａの場合のように、４ビットを読み出すために合計で１２のクロックサイクルを必要とする。しかし、唯一のスレーブリンクモジュール５２０が使用される。
【０１００】
図１７は、スレーブリンクモジュールの他の好ましい実装例を例示する。スレーブリンクモジュール５２０の数が非常に少なくて、通常は各スタックに１つだけであるので、プロセッサ２２２内に配置することができる（図１２も参照）。好ましい実施形態では、スレーブリンクモジュールは、プロセッサ２２２によって既に使用されているラッチまたはレジスタを共有する。
【０１０１】
本発明の種々の態様を一定の実施形態に関して説明してきたが、本発明が添付の特許請求の範囲全体の中でその権利が保護されるべきであることが理解できよう。
【図面の簡単な説明】
【０１０２】
【図１Ａ】不揮発性メモリセルの例を概略的に示す。
【図１Ｂ】不揮発性メモリセルの例を概略的に示す。
【図１Ｃ】不揮発性メモリセルの例を概略的に示す。
【図１Ｄ】不揮発性メモリセルの例を概略的に示す。
【図１Ｅ】不揮発性メモリセルの例を概略的に示す。
【図２】メモリセルのＮＯＲアレイの例を示す。
【図３】図１Ｄに示されているものなどのメモリセルのＮＡＮＤアレイの例を示す。
【図４】フローティングゲートが任意のときに蓄積し得る４つの異なる電荷Ｑ１〜Ｑ４についてのソース−ドレイン電流とコントロールゲート電圧との関係を例示する。
【図５】行復号器および列復号器を介して読み書き回路によりアクセス可能なメモリアレイの代表的な配列を概略的に例示する。
【図６Ａ】１つの読み書きモジュールの略ブロック図である。
【図６Ｂ】読み書きモジュールのスタックによって従来のとおりに実現された図５の読み書きスタックを示す。
【図７Ａ】本発明の好ましい実施形態によるコア部分と共通部分とに区分された１つの読み書きモジュールの略ブロック図である。
【図７Ｂ】図７Ａに示す読み書きモジュールのコア部分の他の好ましい実施形態を例示する。
【図８Ａ】本発明の一実施形態による区分された読み書きスタックのバンクを有するコンパクトなメモリデバイスを概略的に例示する。
【図８Ｂ】図８Ａに示すコンパクトなメモリデバイスの好ましい構成を例示する。
【図９】区分された読み書きスタックのバンクに組織されている図８Ａまたは８Ｂに示す読み書き回路をより詳細に概略的に示す。
【図１０】読み書きモジュールのスタックから構成された区分されている読み書きスタックをより詳細に示す。
【図１１Ａ】図１０に示す読み書きスタックコア４１０の一実施形態を示し、この実施形態では当該スタック内の各センス増幅器は、当該センス増幅器と関連するビットラインラッチに隣接して配置されている。
【図１１Ｂ】図１０に示す読み書きスタックコア４１０の他の実施形態を示し、この実施形態では当該スタック内の個々のセンス増幅器は１つのクラスタを形成し、個々のビットラインラッチは他のクラスタを形成する。
【図１２】図１０に示す読み書きスタック共通部分をより詳細に示す。
【図１３Ａ】シフトレジスタの従来の実装例を示す。
【図１３Ｂ】図１３Ａのマスタ−スレーブ・フリップ−フロップで実現されたデータラッチスタックへのデータのローディングを示すテーブルである。
【図１４Ａ】コンパクトなラッチスタックの１つの好ましい実施形態を例示する。
【図１４Ｂ】マスタリンクモジュールまたはスレーブリンクモジュールの一実施形態を示す。
【図１４Ｃ】制御信号ＬＨ／ＩＮＶ＊がハイであるときに図１３Ｂのリンクモジュールがラッチとして機能することを概略的に例示する。
【図１４Ｄ】制御信号ＬＨ／ＩＮＶ＊がローであるときにリンクモジュールがインバータとして機能することを概略的に例示する。
【図１５Ａ】図１４Ａのコンパクトなデータラッチスタックで実現されたデータラッチスタックへの４つのデータビットのローディングを例示する。
【図１５Ｂ】図１５Ａのデータラッチスタックからの４つのデータビットの破壊モード読み出しを例示する。
【図１５Ｃ】図１４Ａのデータラッチスタックからの４つのデータビットの保存モード読み出しを有する他の好ましい実施形態を例示する。
【図１６Ａ】図１４Ａに示す“ｋ＋１”データラッチスタックの他の実装例を例示する。
【図１６Ｂ】図１３Ａに示す“ｋ＋１”データラッチスタックの他の好ましい実装例を例示する。
【図１７】スレーブリンクモジュールの他の好ましい実装例を例示する。
【図１Ａ】
0004833550.tif 000002
【図１Ｂ】
0004833550.tif 000003
【図１Ｃ】
0004833550.tif 000004
【図１Ｄ】
0004833550.tif 000005
【図１Ｅ】
0004833550.tif 000006
【図２】
0004833550.tif 000007
【図３】
0004833550.tif 000008
【図４】
0004833550.tif 000009
【図５】
0004833550.tif 000010
【図６Ａ】
0004833550.tif 000011
【図６Ｂ】
0004833550.tif 000012
【図７Ａ】
0004833550.tif 000013
【図７Ｂ】
0004833550.tif 000014
【図８Ａ】
0004833550.tif 000015
【図８Ｂ】
0004833550.tif 000016
【図９】
0004833550.tif 000017
【図１０】
0004833550.tif 000018
【図１１Ａ】
0004833550.tif 000019
【図１１Ｂ】
0004833550.tif 000020
【図１２】
0004833550.tif 000021
【図１３Ａ】
0004833550.tif 000022
【図１３Ｂ】
0004833550.tif 000023
【図１４Ａ】
0004833550.tif 000024
【図１４Ｂ】
0004833550.tif 000025
【図１４Ｃ】
0004833550.tif 000026
【図１４Ｄ】
0004833550.tif 000027
【図１５Ａ】
0004833550.tif 000028
【図１５Ｂ】
0004833550.tif 000029
【図１５Ｃ】
0004833550.tif 000030
【図１６Ａ】
0004833550.tif 000031
【図１６Ｂ】
0004833550.tif 000032
【図１７】
0004833550.tif 000033