(57)【特許請求の範囲】
【請求項１】
複数のプレーンを有するメモリバンクであって、前記複数のプレーンのそれぞれがプログラミング用の書き込みデータを対応するプレーンに記憶するため、および前記対応するプレーンからの読み出しデータを記憶するためのページバッファを有するメモリバンクと、
メモリ動作中にページサイズ構成データおよびアドレスデータに応答して前記複数のプレーンの組み合わせを同時に選択的に可能にするためのページサイズコンフィギュレータと
を備え、
前記ページサイズコンフィギュレータは、前記ページサイズ構成データを記憶するための構成レジスタを含み、
前記複数のプレーンがタイルとして構成され、前記タイルのそれぞれが、第1のプレーンおよび第2のプレーン内のワード線を駆動するための共用行デコーダに結合される前記第1および第2のプレーンを含み、
前記タイルのそれぞれの前記共用行デコーダが、行デコーダイネーブリング信号に応答して、前記第1のプレーンおよび前記第2のプレーンの少なくとも1つのワード線を選択的に駆動し、
前記ページサイズコンフィギュレータが、
プレーンイネーブリング信号およびタイルイネーブリング信号に応答して、前記行デコーダイネーブリング信号を対応する共用行デコーダに供給するためのプレーンセレクタと、
前記プレーンイネーブリング信号を供給するためにプレーンアドレスをデコードするため、および前記タイルイネーブリング信号を供給するためにタイルアドレスをデコードするための構成デコーダであって、前記プレーンイネーブリング信号および前記タイルイネーブリング信号が前記ページサイズ構成データに応答して構成可能なロジックレベルを有する構成デコーダと
をさらに含む、フラッシュメモリデバイス。
【請求項２】
前記複数のプレーンのそれぞれがワード線を駆動するための専用行デコーダを含む、請求項1に記載のフラッシュメモリデバイス。
【請求項３】
前記共用行デコーダが、
第1の出力電圧に応答して前記第1のプレーンの前記ワード線に、および第2の出力電圧に応答して前記第2のプレーンの前記ワード線に行駆動信号を選択的に渡すための行ドライバと、
前記行デコーダイネーブリング信号に応答して、前記第1の出力電圧および前記第2の出力電圧としてマスタ出力電圧を選択的に供給するためのブロックデコーダと
を含む、請求項1に記載のフラッシュメモリデバイス。
【請求項４】
前記構成レジスタの内容は、コマンドに応答して変更可能である、請求項1に記載のフラッシュメモリデバイス。
【請求項５】
前記プレーンセレクタのそれぞれが同じプレーンイネーブリング信号および異なるタイルイネーブリング信号をデコードする、請求項1に記載のフラッシュメモリデバイス。
【請求項６】
前記構成デコーダが、
前記プレーンアドレスをデコードするため、および前記プレーンイネーブリング信号の1つをアクティブロジックレベルに駆動するための前記ページサイズ構成データの第1のビットによってイネーブルにされるプレーンデコーディング回路と、
前記タイルアドレスをデコードするため、および前記タイルイネーブリング信号の1つをアクティブロジックレベルに駆動するための前記ページサイズ構成データの第2のビットによってイネーブルにされるタイルデコーディング回路と
を含む、請求項5に記載のフラッシュメモリデバイス。
【請求項７】
前記プレーンデコーディング回路が、前記ページサイズ構成データの前記第1のビットによってディスエーブルにされた時、両方の前記プレーンイネーブリング信号を前記アクティブロジックレベルに駆動し、前記タイルデコーディング回路が、前記ページサイズ構成データの前記第2のビットによってディスエーブルにされた時、両方の前記タイルイネーブリング信号を前記アクティブロジックレベルに駆動する、請求項6に記載のフラッシュメモリデバイス。
【請求項８】
前記プレーンセレクタのそれぞれが、異なるペアのプレーンイネーブリング信号および異なるタイルイネーブリング信号をデコードする、請求項1に記載のフラッシュメモリデバイス。
【請求項９】
前記構成デコーダが、
それぞれが前記プレーンアドレスをデコードするための前記ページサイズ構成データの1つのビットを受信し、それぞれが、前記ページサイズ構成データの前記対応する1つのビットによってイネーブルにされた時、前記異なるペアのプレーンイネーブリング信号のそれぞれのペアの1つのプレーンイネーブリング信号をアクティブロジックレベルに駆動するプレーンデコーディング回路と、
前記タイルアドレスをデコードし、前記ページサイズ構成データの別のビットによってイネーブルにされた時、前記タイルイネーブリング信号の1つをアクティブロジックレベルに駆動するためのタイルデコーディング回路と
を含む、請求項8に記載のフラッシュメモリデバイス。
【請求項１０】
前記メモリバンクがN個のタイルを含み、Nが1より大きい整数である、請求項1に記載のフラッシュメモリデバイス。
【請求項１１】
前記ページサイズコンフィギュレータが、
プレーンイネーブリング信号およびN個のタイルイネーブリング信号に応答して、N個のペアの行デコーダイネーブリング信号を対応するN個の共用行デコーダに供給するためのN個のプレーンセレクタと、
前記プレーンイネーブリング信号を供給するためにプレーンアドレスをデコードするため、および前記N個のタイルイネーブリング信号を供給するためにタイルアドレスをデコードするための構成デコーダであって、前記プレーンイネーブリング信号および前記N個のタイルイネーブリング信号がページサイズ構成データに応答して構成可能なロジックレベルを有する構成デコーダと
をさらに含む、請求項10に記載のフラッシュメモリデバイス。
【請求項１２】
前記構成デコーダが、
前記プレーンアドレスをデコードし、前記プレーンイネーブリング信号の1つをアクティブロジックレベルに駆動するための前記ページサイズ構成データの第1のビットによってイネーブルにされ、前記N個のプレーンセレクタのそれぞれが同じプレーンイネーブリング信号を受信する1つのプレーンデコーディング回路と、
前記タイルアドレスをデコードし、前記N個のタイルイネーブリング信号の1つをアクティブロジックレベルに駆動するための前記ページサイズ構成データの第2のビットによってイネーブルにされるタイルデコーディング回路と
を含む、請求項11に記載のフラッシュメモリデバイス。
【請求項１３】
前記プレーンイネーブリング信号がN個のペアのプレーンイネーブリング信号を含み、前記構成デコーダが、
それぞれが前記プレーンアドレスをデコードし、前記ページサイズ構成データの対応するビットによってイネーブルにされた時、前記N個のペアのプレーンイネーブリング信号の1つのペアをアクティブロジックレベルに駆動し、前記N個のプレーンセレクタのそれぞれが前記N個のペアのプレーンイネーブリング信号の1つのペアを受信するN個のプレーンデコーディング回路と、
前記タイルアドレスをデコードし、前記ページサイズ構成データの別のビットによってイネーブルにされた時、前記N個のタイルイネーブリング信号の1つをアクティブロジックレベルに駆動するためのタイルデコーディング回路と
を含む、請求項11に記載のフラッシュメモリデバイス。
【請求項１４】
M個のプレーンを有し、Mが1より大きい整数であるメモリバンクにアクセスする方法であって、
ページサイズに対応するページサイズ構成データを受信するステップであって、前記ページサイズが、メモリ動作中に同時にアクセスされる1個とM個のプレーン間に対応するステップと、
前記ページサイズ構成データでデコーディング回路を論理的に構成するステップと、
アドレスデータに応答して前記デコーディング回路でプレーンイネーブリング信号を生成するステップと、
1個からM個のプレーンのワード線を同時に駆動するための前記プレーンイネーブリング信号に応答して行デコーダ回路をイネーブルにするステップと
を含み、
受信するステップが、構成レジスタに前記ページサイズ構成データをロードするステップを含み、
前記アドレスデータがプレーンアドレスデータを含み、論理的に構成するステップが、前記プレーンアドレスデータをデコードするために前記ページサイズ構成データでプレーンデコーディング回路をイネーブルにするステップを含み、生成するステップが、前記プレーンアドレスデータに対応する選択されたプレーンイネーブリング信号を前記プレーンデコーディング回路でアクティブロジックレベルに駆動するステップを含み、
論理的に構成するステップが、前記プレーンデコーディング回路が前記プレーンアドレスデータをデコードできないようにするために前記プレーンデコーディング回路をディスエーブルにするステップを含み、生成するステップが、前記プレーンイネーブリング信号の全部をアクティブロジックレベルに駆動するステップを含み、
前記M個のプレーンがタイルとして構成され、前記タイルのそれぞれが前記行デコーダ回路を共用するペアのプレーンを含み、
イネーブルにするステップが、タイルイネーブリング信号がアクティブロジックレベルの時、前記プレーンイネーブリング信号に応答して行デコーダイネーブリング信号を前記タイルのそれぞれに対応する前記行デコーダ回路に供給するステップを含む、方法。
【請求項１５】
受信するステップが、読み出し、プログラミングおよび消去動作の1つを実行するためのコマンドを受信するステップを含み、前記コマンドが前記メモリ動作に対応するオペレーションコードおよび前記ページサイズ構成データを含む、請求項14に記載の方法。
【請求項１６】
ロードするステップが、前記構成レジスタに、専用コマンドで供給される前記ページサイズ構成データをロードするステップを含む、請求項14に記載の方法。
【請求項１７】
ロードするステップが、電源投入動作中に前記構成レジスタに前記ページサイズ構成データをロードするステップを含む、請求項14に記載の方法。
【請求項１８】
前記専用コマンドは、前記メモリ動作を実行するためのオペレーションコードを含むコマンドの前または後で受信される、請求項16に記載の方法。
【請求項１９】
前記アドレスデータがタイルアドレスデータを含み、論理的に構成するステップが、前記タイルアドレスデータをデコードするために前記ページサイズ構成データでタイルデコーディング回路をイネーブルにするステップを含み、生成するステップが、前記タイルアドレスデータに対応する選択されたタイルイネーブリング信号を前記タイルデコーディング回路でアクティブロジックレベルに駆動するステップを含む、請求項14に記載の方法。
【請求項２０】
論理的に構成するステップが、前記タイルデコーディング回路が前記タイルアドレスデータをデコードできないようにするために前記タイルデコーディング回路をディスエーブルにするステップを含み、生成するステップが、前記タイルイネーブリング信号の全部をアクティブロジックレベルに駆動するステップを含む、請求項19に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は構成可能ページサイズを有する不揮発性メモリデバイスに関するものである。
関連出願の相互参照
本出願は、2008年2月4日に出願した米国特許仮出願第61/025,920号および2008年7月18日に出願した米国特許仮出願第61/081,910号の優先権の利益を主張するものであり、両仮出願の全体を参照により本明細書に援用するものとする。
【背景技術】
【０００２】
フラッシュメモリは、民生用電子機器および大容量記憶用途向けの記憶装置として普及している一般に使用されているタイプの不揮発性メモリである。フラッシュメモリは、デジタルオーディオ/ビデオプレーヤ、携帯電話およびデジタルカメラなどの大衆的な民生用製品の中でアプリケーションデータおよび/またはメディアデータを記憶するために広く使用されている。フラッシュメモリは、例えば、パーソナルコンピュータのユニバーサルシリアルポート(USB)にプラグ可能なポータブルフラッシュドライブのような専用記憶デバイス、および磁気ハードディスクドライブ(HDD)の代替品としてもさらに使用できる。フラッシュメモリは不揮発性であり、つまり、電力が供給されていない時も記憶されたデータを保持しており、そのため、上記の民生用製品に電力節約の利点を与えることは良く知られている。フラッシュメモリは、そのメモリアレイの所与のエリアが比較的高密度であるため、そのような用途に適している。
【０００３】
図1は、従来技術の非同期フラッシュメモリデバイスのブロック図である。フラッシュメモリデバイス10は、周辺回路としても知られるインターフェースおよび制御回路、およびコア回路を備える。インターフェースおよび制御回路には、I/Oバッファ12、14および16、レジスタ18、20、22、ならびに制御回路24がある。コア回路には、高電圧生成器26、行(row)プレデコーダ28、行デコーダ30、列(column)プレデコーダ32、列デコーダ34、ページバッファ36、およびメモリアレイ38がある。当業者はインターフェースの回路および制御回路の機能を理解しているはずなので、概要を簡潔にするために多くの詳細は示さない。例えば、回路ブロックを相互接続する線は、単に、接続されたブロック間の機能上の関係を示しているだけであり、使用される具体的な信号を詳細には示さない。出力バッファ12はR/B#出力ピンまたはポートを駆動し、制御バッファ14は、それぞれがそれぞれの入力制御ピンまたはポートに接続された入力バッファを含み、データバッファ16は、それぞれのI/Oピンまたはポートとの間でデータを受信および駆動する双方向バッファを含む。現在説明されている例では、制御バッファ14は、CE#、CLE、ALE、WE#、RE#およびWP#入力制御ピンまたはポート用の入力バッファを含む。現在説明されている例では、8個のデータI/Oピンまたはポートがあり、そのため8個の双方向バッファがある。当技術では、非同期入力バッファおよび出力バッファ回路は良く知られており、さらに詳しく説明する必要はない。
【０００４】
非同期フラッシュメモリデバイス10で消去、プログラミング、および読み出しなどの動作を実行するには、データI/Oピンを介してコマンドが供給される。このコマンドは、実行される動作に応じて、特定の動作に対応するオペレーションコード(OPコード)、アドレス情報およびデータを含むことができる。アドレスデータおよび書き込み(プログラミング)データは長さが8ビットより長くなり得るので、すべてのアドレスビットおよび書き込みデータビットが適切なレジスタにラッチされるまでには何回かの入力の繰り返しまたは循環が必要になることがあることに留意されたい。OPコードデータはコマンドレジスタ18にラッチされ、読み出し動作およびプログラミング動作用のアドレス情報はアドレスレジスタ20にラッチされる。OPコードデータは制御回路24に供給されるが、制御回路24は、例えば、コマンドデコーダまたはインタープリタなど、OPコードをデコードするためのロジック回路を含む。制御回路24は、フラッシュメモリデバイス10のコア回路および任意の周辺回路を両方とも動作させるための、必要なタイミングで内部制御信号を生成する制御ロジック回路を含む。
【０００５】
高電圧生成器26、行プレデコーダ28、行デコーダ30、列プレデコーダ32、列デコーダ34、ページバッファ36、およびメモリアレイ38からなるコア回路は、フラッシュメモリに精通している人には良く知られている。高電圧生成器26は、読み出し、プログラミングおよび消去動作に使用される。読み出し動作については、以下で、これに関する回路の説明をする。
【０００６】
読み出し動作に関しては、行プレデコーダ28がアドレスレジスタ20から行アドレスを受信し、列プレデコーダ32がアドレスレジスタ20から列アドレスを受信する。プレデコードされた行信号は、行デコーダ30によって、1ページのデータにアクセスするためにメモリアレイ38のワード線を駆動するために使用される。選択されたワード線に接続されたメモリセルに記憶されたデータが感知され、ビット線を介してページバッファ36に記憶される。例示のメモリアレイ38では、行デコーダ30の左側からメモリアレイ38の右側まで連続したワード線が水平に延伸している。プレデコードされた列信号は、列デコーダ34によって、データバッファ16に出力するための8ビットセットのデータをページバッファ36から選択するために使用される。例として8ビットが使用されているが、他の構成も使用できる。アサートされる制御信号の順序およびタイミングは、受信されたOPコードに応答して制御回路24から発生することに留意されたい。
【０００７】
図2は、NANDフラッシュメモリアレイの基本構成を示した概略図である。メモリアレイ40は、ブロックBlock[1]からBlock[k]として構成され、各ブロックはページWL1からWLiで構成される。ここで、kおよびiは、非ゼロの整数値である。各ページは、共通のワード線に結合された1行のメモリセルに相当する。次に、ブロックのメモリセルの詳しい説明をする。各ブロックは、フラッシュメモリセル42が相互に直列に結合されたNANDメモリセルストリングで構成される。したがって、ワード線WL1からWLiはメモリセルストリングの各フラッシュメモリセルのゲートに結合される。ストリング選択線信号SSLに結合されたストリング選択デバイス44は、メモリセルストリングをビット線46に選択的に接続し、接地選択線信号GSLに結合された接地選択デバイス48は、メモリセルストリングをVSSなどのソース線に選択的に接続する。ストリング選択デバイス44および接地選択デバイス48は、現在説明されている例ではnチャネルトランジスタである。ビット線BL1からBLj 46(jは非ゼロの整数値)は、メモリアレイ40の全ブロックに共通であり、各ビット線46は、ブロック[1]から[k]のそれぞれの中の1つのNANDメモリセルストリングに結合される。各ワード線WL1からWLi、SSLおよびGSL信号は、ブロック内の各NANDメモリセルストリング中の同じ対応するトランジスタデバイスに結合される。当業者は、1本のワード線に沿ったフラッシュメモリセルに記憶されているデータが1ページのデータと呼ばれることを知っているはずである。
【０００８】
1ページのフラッシュメモリセルにプログラミングされる1ページの書き込みデータを記憶するためのページバッファ50がメモリアレイ40の外で各ビット線に結合される。ページバッファ50は、レジスタ、1ページのフラッシュメモリセルから読み出されたデータを感知するためのセンス回路、および検証ロジック回路も含む。プログラミング動作中、ページバッファ50は、データが、選択されたワード線に結合されたフラッシュメモリに適切に、確実にプログラミングされるようにプログラミング検証動作を実行する。高密度を実現するには、各フラッシュメモリセルは、2つのロジック状態を記憶する単一レベルセル(SLC)でも、少なくとも2ビットのデータを記憶する多重レベルセル(MLC)でもよい。
【０００９】
図1に戻ると、対応する行デコーダ30、ページバッファ36および列デコーダ34を備えたメモリアレイ38は、一般的にプレーンと呼ばれる。このプレーンのサイズはワード線の長さとビット線の長さによって定義されるが、プレーンのサイズは実用上の限界に達することがある。これは、ワード線およびビット線が長くなりすぎると、性能の低下、歩留まり、またはその両方が原因で起こり得て、このことは、当業者には良く知られている作用である。この問題に対処する1つの既知の手法は、メモリアレイの中間に行デコーダを置き、それによって、結果的に、論理的に同じ物理的ワード線をセグメント化することである。これにより、行デコーダが共用できるので、プレーンはサイズを増加することができる。プレーンのサイズを増加する牽引要因の1つは、ページサイズの所望の増加である。音楽、写真および映像などのマルチメディア用途でプログラミングされるファイルサイズは一般的に最大ページサイズより大きいので、そのようなマルチメディア用途には大きいページサイズが良く適合する。さらに、プログラミングの合計時間はページサイズに関係なくほとんど同じ可能性があり、そのため、結果的にプログラミングスループットが上がり、マルチメディア用途にさらに利益をもたらす。
【００１０】
プレーン内のワード線セグメントの長さは長くできるが、ワード線の長さを長くするにつれて、結局は同じ性能および歩留まりの問題が起こる。したがって、大容量メモリデバイスに対応するために、メモリアレイの一部として第2のプレーンが導入される。図3は、図1のメモリアレイ38などのメモリアレイを2つのプレーンとして構成した例である。
【００１１】
図3において、プレーン60は、行デコーダ60の両側に配置される2つのサブアレイ64および66、ならびにサブアレイ64および66の一端に置かれるページバッファ68を含む。プレーン62は、行デコーダ74の両側に配置される2つのサブアレイ70および72、ならびにサブアレイ70および72の一端に置かれるページバッファ76を含む。全体では、ページバッファ68および76が1ページのデータを記憶する。各サブアレイは、図2で既に示された基本NANDフラッシュメモリ構成を有する。この例では、各プレーンの両サブアレイは1つの共通の行デコーダを共用し、そのため、行デコーダから各サブアレイに同じ論理的ワード線が水平に延伸している。ページバッファは、図1に示された列デコーディング回路を含むことが想定されている。
【００１２】
図3の2プレーンメモリアレイ構成では、1ページのデータは、両プレーン60および62で1行を同時に選択、すなわちアクティブにすることにより、読み出しまたはプログラミングされる。例えば、プレーン60は、ページバッファ68に半ページのデータをロードし、ページバッファ76に残りの半ページのデータをロードし、次にそのデータをページ部78および80に書き込むためのプログラミング動作を実行することによりプログラミングされる。例えば読み出し時、両プレーン60および62の1行(すなわち、ページ78および80)がアクティブにされ、データが感知されて、そのデータがその後のバースト読み出し用にページバッファ68および76に記憶される。
【００１３】
マルチメディア用途がページサイズの増加の利益を得ると、そのようなNANDフラッシュメモリを使用する他の用途は、性能および信頼性の低下を被る。そのような用途には、フラッシュキャッシュおよびハードディスクドライブ(HDD)の代替品としての半導体ドライブ(SSD)がある。これらの用途では、ファイルサイズはマルチメディアファイルよりはるかに小さく、頻繁に更新される。例えば、小さいファイルはページサイズの容量の1/4しか占めないことがあり、それは量的にページの小部分であり、ページに関連付けられたメモリブロックと比較すると、いっそう小さくなる。しかし、データが変更されるたびに、しかもデータの変更はSSDおよびキャッシュ用途では頻繁に発生するが、まずメモリブロック全体が消去される必要がある。例えば、図3では、プログラミング動作の前にページ部78および80を両方とも消去しなければならない。既述のように、各メモリブロックは、以前にプログラミングされた他のデータを記憶している多数のページを含む。したがって、変更されない他のデータを保持するために、ページコピー動作など、良く知られた動作を実行する必要がある。このことは、メモリデバイスの耐久性の低下に著しい影響を与えることになる。同じページ内の、変更されない他のメモリセルも不必要な消去とプログラミングの循環の対象になるからである。現在説明されている例では、ページの残りの3/4に相当するメモリセルがプログラミングと消去の循環の対象になる。この問題は複雑な摩耗均一化方式で対処できるが、システム性能が低下するという代価を払わなければならない。したがって、ページごとにプログラミングまたは変更されるデータの量の少なさに比べて電力消費が大きい。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】米国特許仮出願第61/025,920号明細書
【特許文献２】米国特許仮出願第61/081,910号明細書
【特許文献３】米国特許第2007-0076502号明細書、名称「DAISY CHAIN CASCADING DEVICES」
【特許文献４】米国特許第2007-0076479号明細書、名称「MULTIPLE INDEPENDENT SERIAL LINK MEMORY」
【特許文献５】米国特許第2007-0153576号明細書、名称「MEMORY WITH OUTPUT CONTROL」
【特許文献６】米国特許第2008-0219053号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１５】
従来のNANDフラッシュメモリ構造の少なくとも1つの欠点を回避または緩和することが本発明の目的である。
【課題を解決するための手段】
【００１６】
第1の態様では、フラッシュメモリデバイスが提供される。フラッシュメモリは、メモリバンクおよびページサイズコンフィギュレータを含む。メモリバンクは複数のプレーンを有し、複数のプレーンのそれぞれは、対応するプレーンにプログラミングするための書き込みデータを記憶するページバッファを有する。ページバッファは、対応するプレーンからの読み出しデータを記憶する。ページサイズコンフィギュレータは、メモリ動作中、構成データおよびアドレスデータに応答して、複数のプレーンの組み合わせを同時に選択的に行うことができる。
【００１７】
第2の態様では、メモリバンクにアクセスする方法が提供される。メモリバンクはM個のプレーンを有することができる。ここで、Mは、1より大きい整数である。この方法は、構成データを受信するステップ、デコーディング回路を論理的に構成するステップ、プレーンイネーブリング信号を生成するステップ、および行デコーダ回路をイネーブルにするステップを含む。受信のステップでは、構成データはページサイズに対応し、ページサイズは、メモリ動作中に同時にアクセスされる1個とM個の間のプレーンに対応する。論理的に構成するステップでは、構成データを使ってデコーディング回路が構成される。生成のステップでは、デコーディング回路が、アドレスデータに応答してプレーンイネーブリング信号を生成する。イネーブルにするステップでは、1からM個のプレーンのワード線を同時に駆動するためのプレーンイネーブリング信号に応答して行デコーダ回路がイネーブルにされる。
【００１８】
本発明の他の態様および特徴は、添付の図面と関連付けて記載される以下の詳細な説明を検討すれば、当業者には明らかになろう。
【００１９】
次に、本発明の実施形態を、一例であるが、添付の図面を参照して説明する。
【図面の簡単な説明】
【００２０】
【図１】NANDフラッシュメモリデバイスのブロック図である。
【図２】NANDフラッシュメモリ構成を示した回路概略図である。
【図３】従来技術のメモリアレイのブロック図である。
【図４ａ】異なるプレーンおよび異なるページバッファユニットを同時に選択する方法を示した図である。
【図４ｂ】異なるプレーンおよび異なるページバッファユニットを同時に選択する方法を示した図である。
【図４ｃ】異なるプレーンおよび異なるページバッファユニットを同時に選択する方法を示した図である。
【図４ｄ】異なるプレーンおよび異なるページバッファユニットを同時に選択する方法を示した図である。
【図５】構成可能ページサイズを有するメモリバンクの汎用の実施形態を示した図である。
【図６】図5のメモリバンクで使用される行デコーダ/ブロックデコーダ回路の回路概略図である。
【図７】図6に示されたブロックデコーダ回路の回路概略図である。
【図８】図6に示された行ドライバの回路概略図である。
【図９】本実施形態による、固定プレーン構成可能ページサイズを有するメモリバンクのブロック図である。
【図１０】図9に示された構成デコーダの回路概略図である。
【図１１】図9に示されたプレーンセレクタの回路概略図である。
【図１２】本実施形態による、柔軟プレーン構成可能ページサイズを有するメモリバンクのブロック図である。
【図１３】図12に示された構成デコーダの回路概略図である。
【図１４】図12に示されたプレーンセレクタの回路概略図である。
【図１５】本実施形態による、構成可能ページサイズメモリバンクを動作させる方法の流れ図である。
【図１６】本実施形態による、構成可能ページサイズメモリバンクを制御する方法の流れ図である。
【図１７】本実施形態による、マルチプレーン読み出し動作を完了させる方法の流れ図である。
【図１８】本実施形態による、マルチプレーン読み出し動作を実行する動作シーケンスを示した図である。
【図１９】本実施形態による、マルチプレーンプログラミング動作を実行する動作シーケンスを示した図である。
【図２０】本実施形態による、マルチプレーン消去動作を実行する動作シーケンスを示した図である。
【図２１】本実施形態による、メモリバンクの論理区画例を示した図である。
【図２２】本実施形態による、メモリバンクの別の論理区画例を示した図である。
【発明を実施するための形態】
【００２１】
本発明の様々な実施形態が、少なくとも1つのバンクを有し、各バンクが、独立して構成可能なページサイズを有するフラッシュメモリデバイスを説明する。各バンクは、対応するページバッファを有する少なくとも2つのメモリプレーンを含み、構成データに応答して任意の数および任意の組み合わせのメモリプレーンが同時に選択的にアクセスされる。構成データは、電源投入時にバンクの静的ページ構成用にメモリデバイスにロードすることもできるし、またはバンクの動的ページ構成を可能にするためにコマンドで受信することもできる。コマンドは、フラッシュメモリデバイスに動作を実行するように指示する動作コマンドであってもよいし、または選択されたページサイズを構成するための専用の命令であってもよい。
【００２２】
図4aから4dは、フラッシュメモリデバイスの1つのバンクを示した概略図であり、このフラッシュメモリデバイスは任意の適切な数のバンクを有することができる。現在説明されている実施形態に示される例示のバンクは、図1のデバイスでメモリアレイ38として使用されるように適応させることもできる。あるいは、現在説明されている実施形態に示される例示のバンクは、共通に所有される、2006年7月31日に出願された「DAISY CHAIN CASCADING DEVICES」という名称の米国特許第2007-0076502号、2005年12月30日に出願された「MULTIPLE INDEPENDENT SERIAL LINK MEMORY」という名称の米国特許第2007-0076479号、および2006年10月19日に出願された「MEMORY WITH OUTPUT CONTROL」という名称の米国特許第2007-0153576号に記載されているような、逐次動作用に構成されるメモリデバイスで使用されるように適応させることもできる。図4aを参照すると、バンク100は、それぞれプレーン1、プレーン2、プレーン3、プレーン4というラベルが付けられた4つのプレーン102、104、106および108を含む。各プレーンは、対応するページバッファ110、112、114および116を有し、それぞれのページバッファは、図3に示されたページバッファ68と同じ機能を有する。回路エリアを最小にするために、プレーン102および104は共通の行デコーダ118を共用し、同様にプレーン106および108は共通の行デコーダ120を共用する。図4aから4dには示されていないが、プレーン102、104、106および108は、それぞれ、それぞれの共通行デコーダ118および120から水平に延伸するワード線、およびそれぞれのページバッファ110、112、114および116から垂直に延伸するビット線を有する。代替の回路構成では、専用の行デコーダは別のプレーンと共用されないので、各プレーンはそれぞれの行デコーダをプレーンの右側にでも、左側にでも配置できる。
【００２３】
現在説明されている実施形態では、行デコーダ118は、プログラミング、読み出しまたは消去動作中、プレーン102または104のどちらかで1つのワード線を選択的にイネーブルまたはアクティブにすることもできるし、または両方のプレーン102および104で1つのワード線をイネーブルまたはアクティブにすることもできる。行デコーダ120も、プログラミング、読み出しまたは消去動作中、プレーン106または108のどちらかで1つのワード線を選択的にアクティブにすることもできるし、または両方のプレーン106および108で1つのワード線をアクティブにすることもできる。プログラミング、読み出しおよび消去動作では、バンク100内の回路のタイミングおよびアクティブ化を制御するために、バンク100にコア制御回路が1つ関連付けられていることに留意されたい。したがって、バンク内の全プレーンが、そのコア制御回路によって指示される同じ動作を実行する。
【００２４】
図4aは、バンク100が、単一のプレーンに対応するページバッファと同等のページサイズを有するように構成される例を示している。この単一プレーンページバッファは、このバンクの最小ページバッファサイズであり、これ以降、これをページバッファユニットと呼ぶ。それに応じて、最小ページサイズは1ページユニットである。例であるが、最小のページバッファユニットサイズは幅512kビットであり得る。図4aでは、プレーン102内の1ページ122が読み出しまたはプログラミング動作用に選択されている。動作が消去動作の場合、ページ122を含むブロックが消去用に選択される。現在説明されている実施形態の場合、ワード線の選択は、そのワード線が接続されているメモリセルの読み出し、プログラミングまたは消去に必要な電圧レベルにまでワード線を駆動することによってワード線をアクティブにすることと似ている。図4aのバンク100のページサイズは1ページバッファユニットになるように構成されるので、プレーン102、104、106および108の任意のページが任意の動作用に選択できる。
【００２５】
図4bは、バンク100が、2つのページバッファユニットと同等のページサイズを有するように構成される例を示している。したがって、プレーン102および104にまたがるページ124は同時に選択される。あるいは、ページ124は、バンク100内の任意の組み合わせの2つのプレーンから選択された2つのページユニットで構成することもできる。
【００２６】
図4cは、バンク100が、3つのページバッファユニットと同等のページサイズを有するように構成される例を示している。したがって、プレーン102、104および106にまたがるページ126は同時に選択される。あるいは、ページ126は、バンク100内の任意の組み合わせの3つのプレーンから選択された3つのページユニットで構成することもできる。
【００２７】
図4dは、バンク100が、4つのページバッファユニットと同等のページサイズを有するように構成される例を示している。したがって、プレーン102、104、106および108にまたがるページ128は同時に選択される。バンク100には4つのプレーンしかないので、4つのそれぞれのプレーンから4つすべてのページユニットが同時に選択される。図4bから4dでは、各プレーンに対応する行デコーディングロジックは同一であると想定されている。したがって、行デコーダ118および120で1つの行アドレスが受信されると、同じ物理ワード線がアクティブにされる。各プレーンが専用行デコーダを有する代替実施形態では、異なる物理ワード線を各プレーンで同時にアクティブにできる。
【００２８】
図5は、現在説明されている実施形態による、メモリデバイス内の1つのバンクの機能別回路ブロックを示したブロック図である。バンク200は、4つのプレーン202、204、206および208、行デコーダ210および212、ならびにページバッファ214、216、218および220で構成されるメモリアレイを含む。これ以降、プレーン202および204が共用行デコーダ210のどちらかの側に配置されるメモリアレイの構成はメモリアレイタイルと呼ぶが、それは、半導体デバイスが同じメモリアレイタイルの複数の分身を含むことができるからである。タイル処理は、半導体メモリデバイスの設計時間を短縮するための良く知られた設計手法である。行デコーダおよびページバッファは、プログラミング、消去および読み出し動作中、アドレスレジスタ(図示せず)から供給されるアドレス信号、および回路を制御するために必要な他の制御信号を受信する。これらの制御信号は、コア制御回路222によって供給される。当業者は、コア制御回路222は、メモリデバイスによって受信されたデコード済みコマンドに応答してバンク200内の回路のアクティブ化を担当することを理解するはずである。バンク200内で選択的ページサイズ構成を可能にするために、バンク200内にページサイズコンフィギュレータ224が組み込まれている。ページサイズコンフィギュレータ224は、第1のプレーンセレクタ226、第2のプレーンセレクタ228、および構成デコーダ230を含む。構成レジスタ232は、バンクのページ構成は電源投入時に静的に設定され、選択されたメモリバンクのページサイズを特別に構成するために専用コマンドで動的に設定される実施形態の場合に組み込まれる。静的ページ構成とは、電源遮断またはメモリデバイスのリセットまで、ページサイズがすべてのメモリ動作に対して固定であることを意味する。構成レジスタ232は、メモリバンクのページサイズが、例えば、読み出し、プログラミングコマンドおよび消去コマンドなどの通常のフラッシュメモリコマンドで動的に構成される実施形態の場合には省略できる。あるいは、このタイプの動的ページサイズ構成は、ページサイズが各コマンドで変更できるオンザフライ動的ページ構成と呼ぶこともできる。現在説明されている実施形態については、静的ページサイズ構成および専用コマンド
動的ページサイズ構成用に構成レジスタ232が組み込まれていることが想定されている。
【００２９】
図5のバンク200は、図4aから4dで既述の回路ブロックを含む。以下で、ページサイズコンフィギュレータ224の機能別ブロックの説明をする。
【００３０】
プレーンセレクタ226は、行デコーダ210がプレーン202および204の1つまたは両方でワード線を選択的に駆動できるようにするためのプレーン選択信号を供給する。同様に、プレーンセレクタ228は、行デコーダ212がプレーン206および208の1つまたは両方でワード線を選択的に駆動できるようにするためのプレーン選択信号を供給する。両方のプレーンセレクタ226および228は、構成デコーダ230から受信する制御信号に応じて、互いに独立して動作するように制御されるか、または互いに同じように動作するように制御される。この機能については、さらに後述される。
【００３１】
構成デコーダ230は、プレーンセレクタ226および228を制御する制御信号を生成するためのデコーディング回路を含む。これらの制御信号は、プレーンセレクタ226および228の1つまたは両方を選択的にイネーブルにするために使用できるので、イネーブリング信号に似ている。構成デコーダ230は、バンクアドレスBANK_ADD、プレーンアドレスPLANE_ADD、および構成レジスタ232によって供給される構成データCONFに応答して制御信号を生成する。バンクアドレスBANK_ADDは、メモリデバイス内に、選択できるバンクが2つ以上ある場合に使用される。構成レジスタ232は、データ入力バッファを介して外部から受信される構成データPAGE_SIZEを記憶している。後述されるように、構成データPAGE_SIZEは、メモリデバイスの電源投入時にバンク200のページサイズの静的構成用に供給することもできるし、または正常な電源投入後の通常の動作期間中にバンク200のページサイズの動的構成用の受信されたコマンドで供給することもできる。構成レジスタ232のサイズは、バンク内のプレーンの数、および選択できるプレーンの数に適合するように任意の適切なビット数にすることができる。
【００３２】
次に、例として読み出し動作を参照してバンク200の動作を説明する。読み出しコマンドがメモリデバイスに供給されるが、読み出しコマンドは、読み出しオペレーションコード(OPコード)、および読み出しデータの所望のメモリアレイ位置に対応するアドレス情報を含む。このアドレス情報は、行アドレス、列アドレス、プレーンアドレスPLANE_ADDおよびタイルアドレスTILE_ADDを含むことができる。どのアドレス情報をデコードする前にも、構成レジスタ232がページサイズ構成データをロードされていることが想定されている。ページサイズ構成データは、メモリデバイスの電源投入中にロードすることもできるし、コマンドで供給されるアドレス情報の一部として動的にロードすることもできる。構成レジスタ232に記憶されているページサイズ構成データに応答して、構成デコーダ230は、受信されたPLANE_ADD信号およびTILE_ADD信号をデコードする方法を変更する。より具体的には、構成デコーダ230は、構成データに基づいてプレーンセレクタ226および228に供給する制御信号のロジック状態を変更する。したがって、特定のPLANE_ADD信号およびTILE_ADD信号に応答する構成デコーダ230の出力は、構成データに応じて変化し得る。この柔軟性が、バンクのページサイズが構成可能であることを可能にしている。
【００３３】
既述のように、各プレーンセレクタは、その対応する行デコーダが、それが隣接する1つまたは両方のプレーン内のワード線を選択的に駆動できるようするためのプレーン選択信号を供給する。以下で、例示の実施形態による、図5に示された行デコーダの説明をする。
【００３４】
図6は、図5に示された行デコーダ210または212のどちらものブロック図を示している。現在示されている例では、行デコーダ300は、同じタイル内の2つの隣接するプレーン間で共用される。行デコーダ300は、行デコードロジック回路302、ならびにそれぞれのメモリブロック用のメモリブロック駆動回路304および306を含む。製造されたフラッシュメモリデバイスは、複数のメモリブロック、例えば、1024個、2048個または4096個のメモリブロックを含む。この単純化された例では、各プレーンは、合計4個のメモリブロックおよび合計4個のメモリブロック駆動回路を有するが、そのうちの2つは概略図を簡略化するために示されていない。行デコードロジック回路302は、SS、S[1:i]およびGSなどの個々の行駆動信号を生成するためのマルチビット行アドレスRAを受信する。現在説明されている例では、タイル内の全メモリブロックに対して1つの行デコードロジック回路302があり、行駆動信号SS、S[1:i]およびGSは、メモリブロック駆動回路304および306に供給されるグローバル信号である。特に、グローバル信号SS、GSおよびS[1:i]は、それぞれ、例えば、回路304から306などの各メモリブロック駆動回路のSSL、GSLおよびワード線に対応する。行デコードロジック回路302は、マルチビット行アドレスRAをデコードするための良く知られたロジック回路を含み、そのため、その詳細は、現在は説明する必要はない。
【００３５】
メモリブロック駆動回路304はメモリブロック駆動回路306と同じ回路素子を含み、したがって、簡潔にするために、メモリブロック駆動回路304の素子のみをさらに詳しく説明する。メモリブロック駆動回路304は、ブロックデコーダ308および行ドライバ310を含む。図6に示された例では、メモリブロック駆動回路304のブロックデコーダ308は、その対応する行ドライバ310をイネーブルにするための2ビットブロックアドレスB_ADDR[1:2]を受信する。したがって、メモリブロックを消去、プログラミングまたは読み出し動作用に選択するために1つのブロックデコーダがB_ADDR[1:2]の任意の組み合わせに対してイネーブルにされる。既述のように、この例のプレーンはそれぞれ4つのメモリブロックを有する。複数のメモリブロック、例えば、1024個、2048個または4096個のメモリブロックを有する製造されたフラッシュメモリデバイスでは、ブロックデコーダ308は、メモリ動作用にメモリブロックの中から厳密に1つを選択するために適切な数のブロックアドレスを受信するように構成される。行ドライバ310は、行駆動信号SS、S[1:i]およびGSを1つのプレーンのメモリブロック内のNANDセルストリング、および同じタイル内の隣接するプレーンのメモリブロック内のNANDセルストリング渡すためのデバイスを含む。より具体的には、1つのプレーンのメモリブロック内のNANDセルストリングは行駆動信号をSSLA、ワード線WLA[1:i]およびGSLAとして受信し、隣接するプレーンのメモリブロック内のNANDセルストリングは行駆動信号をSSLB、ワード線WLB[1:i]およびGSLBとして受信する。現在説明されている実施形態では、ブロックデコーダ308によって供給される信号に応答して、行駆動信号をタイル内の2つのプレーンの1つ、またはタイル内の両方のプレーンに同時に渡すことができる。
【００３６】
マルチビット行アドレスRAに応答して、行駆動信号SSL、GSLおよびワード線WL1からWLiは、行デコードロジック回路302によってVDDなどのアクティブなロジックレベルにまで駆動される。ブロックアドレスに応答して、ブロックアドレスB_ADDR[1:2]によってアドレス指定された1つの選択されたメモリブロックの行ドライバ310のみが、行駆動信号SS、S[1:i]およびGSを駆動するために、またはこれらの信号をタイルの1つまたは両方のプレーンのNANDセルストリングに渡すためにイネーブルにされる。タイルの両方のプレーンによって共用される1セットの行駆動信号の生成用に厳密に1つの行デコードロジック回路302があるので、タイルの両方のプレーンが動作用にブロックデコーダ308によって選択された時、両方のプレーン内の同じ物理ワード線を同時に駆動できる。選択されないメモリブロックでは、行ドライバ310はディスエーブルにされており、そのため、タイルの1つまたは両方のプレーン内のNANDセルストリングは行駆動信号SS、S[1:i]およびGSの電圧レベルを受信することができない。
【００３７】
図7は、図6に示されたメモリブロック駆動回路304のような1つのメモリブロック駆動回路のブロックデコーダ308の回路概略図である。ブロックデコーダ308は、1つのメモリブロックに関連付けられ、たすきがけのインバータラッチ回路および充電ポンプを含む。このラッチ回路は、たすきがけのインバータ350および352、nチャネルリセットトランジスタ354、ならびにnチャネルイネーブルトランジスタ356および358を含む。このラッチ回路は、ラッチイネーブル信号LTCH_ENおよびデコードされたブロックアドレスBAが高ロジックレベルの時、イネーブルにされるか、または設定される。デコードされたブロックアドレスBAは、ブロック選択信号とも呼ばれる。デコードされたブロックアドレスBAはANDロジックゲート360によって生成されるが、ANDロジックゲート360はブロックアドレスB_ADDR[1]およびB_ADDR[2]を受信する。当業者は、メモリバンクの異なるブロックデコーダ308用のANDロジックゲート360は、読み出し、プログラミングおよび消去動作用に1つのメモリブロックを選択するためにB_ADDR[1]およびB_ADDR[2]の異なるロジック状態の組み合わせに反応することを理解するはずである。図示されていないが、各ブロックデコーダ308用のANDロジックゲート360は、B_ADDR[1]およびB_ADDR[2]を受信するための入力に異なる組み合わせのインバータを含むことにより、B_ADDR[1]およびB_ADDR[2]の異なる組み合わせをデコードするように設定できる。そのようなデコーディング方式は本技術では良く知られている。リセット信号RST_BDが、例えば、高ロジックレベルVDDにまで駆動されると、リセットトランジスタ354が、インバータ352の入力をVSSに結合するためにオンにされる。インバータ350および352のラッチ回路は結果としてリセットされる。
【００３８】
ブロックデコーダ308は、インバータ350の出力に結合されたローカル充電ポンプを含む。充電ポンプは、空乏モードnチャネルパストランジスタ362、ネイティブnチャネルダイオード接続ブーストトランジスタ364、高ブレークダウン電圧nチャネル減結合トランジスタ366、高ブレークダウン電圧nチャネルクランプトランジスタ368、NANDロジックゲート370、およびキャパシタ372を含む。NANDロジックゲート370は、キャパシタ372の1つの端子を駆動するために、インバータ350の出力に結合された1つの入力端子、および被制御信号OSCを受信するためのもう1つの入力端子を有する。パストランジスタ362は、プログラミング信号PGMの、PGMbと呼ばれる補数によって制御される。減結合トランジスタ366およびクランプトランジスタ368の共通端子は、高電圧VHに結合される。出力電圧BDは、マスタ出力電圧BDに並列で接続されるnチャネルパストランジスタ374および376からなる選択回路に接続される。パストランジスタ374はプレーンセレクタ信号PLAによって制御されてBDをBDAとして渡し、パストランジスタ376はプレーンセレクタ信号PLBによって制御されてBDをBDBとして渡す。信号PLAおよびPLBは、図5のプレーンセレクタ226など、それぞれのプレーンセレクタによって供給される。したがって、どの動作の場合にも、BDAおよびBDBの1つまたは両方がマスタ出力電圧BDを有することができる。プレーンセレクタ信号PLAおよびPLBは、nチャネルパストランジスタ374および376が、BDAおよびBDBの電圧レベルがBDと等しくなるようにBDを十分に渡せるだけの高い電圧レベルを有することに留意されたい。例えば、BDがおよそプログラミング電圧Vpgm+Vtnの場合(Vtnはnチャネルトランジスタのしきい値電圧)、PLAおよびPLBは少なくともVpgm+2Vtnでなければならない。したがって、BDAおよびBDBはBDと等しくなることができる。
【００３９】
次に、充電ポンプの動作を説明する。読み出しまたは消去動作時、PGMbは高ロジックレベルになっており、OSCは低ロジックレベルに維持されている。したがって、回路素子372、364、366および368はインアクティブであり、出力端子BDは、インバータ350の出力に現れるロジックレベルを反映する。プログラミング動作時、PGMbは低ロジックレベルになっており、OSCは、所定の頻度で高ロジックレベルと低ロジックレベルの間で振動できるようになっている。インバータ350の出力が高ロジックレベルの場合、キャパシタ372は、他方の端子に電荷を繰り返して蓄積し、蓄積された電荷をブーストトランジスタ364を介して放出する。減結合トランジスタ366は、ブーストトランジスタ364のゲート上のブーストされた電圧からVHを絶縁する。クランプトランジスタ368は出力端子BDの電圧レベルをVH+Vtnに維持する(Vtnは、クランプトランジスタ368のしきい値電圧)。図7に示されたローカル充電ポンプは、信号を、電源電圧VDDより高い電圧レベルに駆動するために使用できる回路の1例であるが、当業者は、等しい効果を有する他の充電ポンプ回路が使用できることが理解できよう。
【００４０】
図8は、図6の行ドライバ310の回路概略図である。行ドライバ310は、第1のセットのnチャネルパストランジスタ群380および第2のセットのnチャネルパストランジスタ群382を含む。両方のセットのパストランジスタ群380および382、行駆動信号SS、S[1:i]およびGSをタイルの1つまたは2つのプレーンのNANDセルストリングに渡す。より具体的には、信号SS、S[1:i]およびGSは、電圧BDAに応答して第1のセットのnチャネルパストランジスタ群380によって信号SSLA、ワード線WLA[1:i]およびGSLAとして渡され、電圧BDBに応答して第2のセットのnチャネルパストランジスタ群382によって信号SSLB、ワード線WLB[1:i]およびGSLBとして渡される。動作時、BDAがVDDより上で駆動されると、VDDより大きい行駆動信号SS、S[1:i]およびGSを、それぞれ、SSLA、WLA[1:i]およびGSLA線に渡すことができる。BDAがVSSの場合、パストランジスタ群380はオフにされ、行駆動信号SS、S[1:i]およびGSは、それぞれ、SSLA、WLA[1:i]およびGSLAから減結合される。この動作は、BDBおよびパストランジスタ群382についても同じである。
【００４１】
図6、7および8の既述の回路の例は、各プレーンの回路重複が緩和されるということから回路エリアのオーバーヘッドを最小にできる共用行デコーダ構造に関する。共用行デコーダ構造を使用して得られる回路エリアの節約に代えて、同じタイルの両方のプレーンの異なるワード線を選択できないという代償がある。これは、タイルの両方のプレーンによって共用される1セットの行駆動信号を供給するために1つの行デコードロジック回路302があるという事実による。回路エリアの節約のほうが小さい問題であり得る熟考された代替例では、これに代えて専用の行デコーダ構造が使用できる。専用の行デコーダ構造では、各プレーンに1つの行デコーダ300があり、そのため、駆動すべき異なるワード線を各プレーンで選択する一方で、タイルの両方の隣接するプレーンの同時選択が可能になる。行デコーダ300を1つのプレーンの専用行デコーダに変換するための主要な変更は、ブロックデコーダ308を、BDAまたはBDBの1つのみを供給するように構成すること、および行ドライバ310を、2セットの行駆動信号SSLA、WLA[1:i]、GSLAおよびSSLB、WLB[1:i]、GSLBの1つのみを供給するように構成することを含む。他方のプレーンの行デコーダは、BDAおよびBDBの他方を供給するように構成されたブロックデコーダならびにSSLA、WLA[1:i]、GSLAおよびSSLB、WLB[1:i]、GSLBの他方のセットを供給するように構成された行ドライバ310を有する。簡潔さと一貫性のために、様々な回路の実施形態は、これ以降、各タイルに共用行デコーダが使用されているという想定で説明する。
【００４２】
図5は、構成可能ページサイズを有するメモリバンクの汎用の実施形態を示しているが、図9は、メモリデバイスの1つのバンクの構成可能ページサイズ構造の1例を示している。図9の例では、バンク400は、同じプレーン202、204、206および208、行デコーダ210および212、ページバッファ214、216、218および220、ならびにコア制御回路222を含む。一方、ページサイズコンフィギュレータ402は、ページ構成データ、プレーンアドレス情報およびバンクアドレス情報に応答して特定のプレーンを選択するように特別に構成されている。一般的に、ページサイズコンフィギュレータ402は、バンク400を、サイズが1ページバッファユニット、2ページバッファユニットまたは4ページバッファユニットであるページサイズを有するように静的または動的に構成する。以下で、ページサイズコンフィギュレータ402の機能別回路ブロックの詳しい説明をする。
【００４３】
ページサイズコンフィギュレータ402は、第1のプレーンセレクタ404、第2のプレーンセレクタ406、構成デコーダ408および構成レジスタ410を含む。構成レジスタ410は、現在説明されている例では2ビットで構成されるページサイズ構成データP_SIZEを受信して、記憶する。現在説明されている実施形態では、P_SIZEは、P_SIZEのビットを構成レジスタ410に経路指定する内部コマンドレジスタ(図示せず)によってデコードされる所定のコマンドで、メモリデバイスの入力/出力インターフェースを介して供給される。既述のように、そのようなコマンドは電源投入時、あるいは通常の動作コマンド間に動的に供給することができる。合計4つのプレーンが2つのメモリアレイタイルにまとめられる図9の現在示されている例では、P_SIZEの1ビットは、メモリアレイタイル選択を構成するために使用され、P_SIZEの第2のビットは、プレーン選択を構成するために使用される。第1のビットはCONF1、第2のビットはCONF2と呼ばれ、これらは信号バスCONF[1:2]として構成デコーダ408に供給される。構成デコーダ408は、デコードされたタイルイネーブリング信号TSEL1およびTSEL2、ならびにプレーンイネーブリング信号PSEL1およびPSEL2を生成するために、タイルアドレスビットT_ADDおよびプレーンアドレスビットP_ADDを受信する構成可能なロジックデコーディングゲートを含む。構成デコーダ408の構成可能なロジックデコーディングゲートはCONF1およびCONF2によって制御され、タイルアドレスビットT_ADDおよびプレーンアドレスビットP_ADDの任意の所与のロジック状態を表すようにTSEL1、TSEL2、PSEL1およびPSEL2のロジック状態を変更する。
【００４４】
図9に示されているように、TSEL1は第1のプレーンセレクタ404に、TSEL2は第2のプレーンセレクタ406に供給され、PSEL1およびPSEL2は、両方のプレーンセレクタ404および406に供給される。第1のプレーンセレクタ404は、TSEL1、PSEL1およびPSEL2に応答して行デコーダイネーブリング信号PL1およびPL2を生成する。第2のプレーンセレクタ406は、TSEL2、PSEL1およびPSEL2に応答して行デコーダイネーブリング信号PL3およびPL4を生成する。構成デコーダ408は第1レベルのデコーダとして機能し、第1および第2のプレーンセレクタ404および406は第2レベルのデコーダとして機能する。現在説明されている構成例では、TSEL1がアクティブロジックレベルの時、第1のプレーンセレクタ404がイネーブルにされ、TSEL2がアクティブロジックレベルの時、第2のプレーンセレクタ406がイネーブルにされる。第1のプレーンセレクタ404は、アクティブロジックレベルのPSEL1に応答してPL1をアクティブロジックレベルに駆動し、アクティブロジックレベルのPSEL2に応答してPL2をアクティブロジックレベルに駆動する。同様に、第2のプレーンセレクタ406は、アクティブロジックレベルのPSEL1に応答してPL3をアクティブロジックレベルに駆動し、アクティブロジックレベルのPSEL2に応答してPL4をアクティブロジックレベルに駆動する。行デコーダ210および212は、PL1、PL2、PL3およびPL4のアクティブロジックレベルに応答して、選択されたプレーン内のワード線を駆動する。図7のブロックデコーダ308を参照すると、信号PL1およびPL2は論理的に、それぞれ、PLAおよびPLBと同等であり、信号PL3およびPL4は論理的に、それぞれ、PLAおよびPLBと同等である。当業者は、バンク400は3つ以上のメモリアレイタイルを含むように規模拡大することができ、したがって、追加プレーンセレクタ、アドレッシングビット、およびページサイズ構成データ用により多くのビットが必要であることが理解できよう。
【００４５】
図10は、現在説明されている実施形態による、図9に示された構成デコーダ408および構成レジスタ410の回路概略図である。現在説明されている例での構成レジスタ410は2ビットレジスタであり、各レジスタは任意の適切なデータ記憶回路であってよい。構成レジスタ410は、P_SIZE1およびP_SIZE2を受信して記憶し、対応するビットCONF1およびCONF2をそれぞれ供給する。現在説明されている例では、CONF1はメモリアレイタイル選択を構成するために使用され、CONF2は、プレーン選択を構成するために使用される。構成デコーダ408は、2つの独立して動作するデコーディング回路を含む。第1のデコーディング回路は、NANDロジックゲート450および452、ならびにインバータ454からなるタイルデコーディング回路である。第2のデコーディング回路は、NANDロジックゲート456および458、ならびにインバータ460からなるプレーンデコーディング回路である。
【００４６】
タイルデコーディング回路では、NANDロジックゲート450は、デコードされたタイルイネーブリング信号TSEL1を供給するためにタイルアドレスT_ADDおよび構成ビットCONF1を受信する。NANDロジックゲート452は、デコードされたタイルイネーブリング信号TSEL2を供給するためにインバータ454を介してタイルアドレスT_ADDの補数、および構成ビットCONF1を受信する。当業者には明らかであろうが、CONF1がアクティブ高ロジックレベルの時、両方のNANDロジックゲート450および452がイネーブルにされ、そのため、その両ロジックゲートがT_ADDに応答してTSEL1およびTSEL2の1つをアクティブ高ロジックレベルに駆動する。
【００４７】
プレーンデコーディング回路では、NANDロジックゲート456は、デコードされたプレーンイネーブリング信号PSEL1を供給するためにプレーンアドレスP_ADDおよび構成ビットCONF2を受信する。NANDロジックゲート458は、デコードされたプレーンイネーブリング信号PSEL2を供給するためにインバータ460を介してプレーンアドレスP_ADDの補数、および構成ビットCONF2を受信する。当業者には明らかであろうが、CONF2がアクティブ高ロジックレベルの時、両方のNANDロジックゲート456および458がイネーブルにされ、そのため、その両ロジックゲートがP_ADDに応答してPSEL1およびPSEL2の1つをアクティブ高ロジックレベルに駆動する。以下のTable 1(表1)は、CONF1およびCONF2の異なるロジックレベルの組み合わせに応答した構成デコーダ408の機能別動作を要約したものである。代替例では、構成デコーダ408のロジックゲートは、CONF1およびCONF2のインバート版をデコードするように構成できる。例えば、CONF1およびCONF2が両方とも「0」ロジック状態の時、最小ページサイズとして1ページバッファユニットが選択される。
【００４８】
【表１】
0005579621.tif 000002
【００４９】
構成デコーダ408の出力は、プレーンセレクタ404および406に供給される。図11は、プレーンセレクタ404および406に使用できるデコーディング回路の回路概略図である。プレーンセレクタ470は、図9のプレーンセレクタ404で使用できる2つのANDロジックゲート472および474を含む。ANDロジックゲート472は、PSEL1を受信するための第1の入力およびTSEL1を受信するための第2の入力を有する。ANDロジックゲート474は、PSEL2を受信するための第1の入力およびTSEL1を受信するための第2の入力を有する。ANDロジックゲート472の出力は信号PL1を駆動し、ANDロジックゲート474の出力は信号PL2を駆動する。プレーンセレクタ476は、図9のプレーンセレクタ406で使用できる2つのANDロジックゲート478および480を含む。ANDロジックゲート478は、PSEL1を受信するための第1の入力およびTSEL2を受信するための第2の入力を有する。ANDロジックゲート480は、PSEL2を受信するための第1の入力およびTSEL2を受信するための第2の入力を有する。ANDロジックゲート478の出力は信号PL3を駆動し、ANDロジックゲート480の出力は信号PL4を駆動する。
【００５０】
Table 1(表1)に示されているように、バンク400は、1、2または4ページバッファユニットのページ幅を有するように静的または動的に構成できる。しかし、1および2ページバッファユニットのページサイズを供給するためにプレーンの異なる組み合わせを選択できる。図10および11の回路を参照すると、CONF1およびCONF2の両方を「1」ロジック状態に設定することにより、1ページバッファユニットのページサイズ構成が選択できる。そのため、PSEL1、PSEL2、TSEL1およびTSEL2はP_ADDおよびT_ADDに応答して異なるロジックレベルに駆動され得る。より具体的には、TSEL1およびTSEL2の1つがT_ADDに応答してアクティブロジック状態に駆動され、PSEL1およびPSEL2の1つがP_ADDに応答してアクティブロジック状態に駆動される。図11のプレーンセレクタ470のデコーディングロジック回路によれば、図9のプレーンセレクタ404および406の1つのみがイネーブルにされる。イネーブルにされたプレーンセレクタでは、PSEL1またはPSEL2に応答してPL1およびPL2(またはPL3およびPL4)の1つのみがアクティブロジックレベルに駆動される。したがって、プレーン202、204、206および208のいずれか1つが読み出し、プログラミングまたは消去動作用にアドレス指定される。
【００５１】
2ページバッファユニットのページサイズ構成では、2つの異なる構成設定が使用できる。両方の設定で、CONF1およびCONF2は、Table 1(表1)に示されているように、補数ロジック状態になる。両方の設定が同じ最終結果を得るが、プレーンの異なる組み合わせが選択される。第1の設定を見ると、「1」ロジック状態のCONF1がタイル選択を可能にし、「0」ロジック状態のCONF2がプレーン選択を不可にする。図10では、NANDロジックゲート456および458はディスエーブルにされ、両方のPSEL1およびPSEL2は高ロジック状態に設定される。したがって、P_ADDは、デコードされるのが禁じられる。T_ADDに応答してTSEL1およびTSEL2の1つのみがアクティブロジックレベルに駆動されるので、プレーンセレクタ470のロジック回路によってPL1およびPL2(またはPL3およびPL4)の両方がアクティブロジックレベルに駆動される。したがって、1つのタイル内の両方のプレーンが同時に選択される。したがって、この構成設定のみが同じタイル内のプレーンからなる2ページバッファユニットの組み合わせを可能にする。
【００５２】
第2の設定を見ると、「0」ロジック状態のCONF1がタイル選択を不可にし、「1」ロジック状態のCONF2がプレーン選択を可能にする。図10では、NANDロジックゲート450および452はディスエーブルにされ、その結果、両方のTSEL1およびTSEL2は高ロジック状態に設定される。したがって、T_ADDは、デコードされるのが禁じられ、両方のプレーンセレクタ404および406がイネーブルにされる。P_ADDに応答してPSEL1およびPSEL2の1つのみがアクティブロジックレベルに駆動されるので、プレーンセレクタ470のロジック回路によってPL1およびPL3のペア、またはPL2およびPL4のペアのみがアクティブロジックレベルに駆動される。言い換えれば、この構成設定では、両方のタイルの左プレーンまたは右プレーンのみが同時に選択される。
【００５３】
4ページバッファユニットのページサイズ構成の場合、CONF1およびCONF2の両方が「0」ロジック状態に設定される。図10では、NANDロジックゲート450、452、456および458はディスエーブルにされ、その結果、PSEL1、PSEL2、TSEL1およびTSEL2は高ロジック状態に設定される。したがって、P_ADDおよびT_ADDは、デコードされるのが禁じられる。両方のプレーンセレクタ404および406はイネーブルにされ、行デコーダイネーブリング信号PL1、PL2、PL3およびPL4はアクティブロジックレベルに駆動され、バンク400内の全4個のプレーンが同時に選択される。メモリデバイスが複数のバンクを有している場合、アドレスP_ADDおよびT_ADDが構成デコーダ408によって使用されないので、バンク400の回路を選択的にイネーブルにするためにバンクアドレスが供給される。
【００５４】
1、2および4ページバッファユニットのサイズ構成の現在説明されている例では、アドレスP_ADDおよびT_ADDは、バンク400のページサイズの構成の知識の有無にかかわらずコマンドで供給できる。例えば、メモリコントローラは、「ページサイズ」対「対応するアドレス」のマッピングを維持する。このことは、構成デコーダ408によってデコードされるアドレスのみが供給される必要があり、他のアドレスは静的に非アクティブ電圧レベルに保持されることを意味する。
【００５５】
バンク400は異なるページサイズを有するように構成できるが、3ページバッファユニットのページサイズは容認せず、2ページバッファユニットの任意の組み合わせを選択する完全柔軟性もない。例えば、プレーン204および206は同時に選択できないし、プレーン202および208も同時に選択できない。例えば、メモリコントローラが摩耗均一化アルゴリズムに従う場合など、プレーンの異なる組み合わせが選択されるべき状況があり得る。当業者は、摩耗均一化は、プログラミングおよび消去動作をバンクの全メモリタイルまたは全プレーンに均衡させることにより、メモリデバイスの耐久性を最大にする既知の手法であることを理解している。
【００５６】
前に提示された図10の実施形態例は、ページサイズ構成データP_SIZEのビットを受信するための構成レジスタ410を含む。オンザフライ動的ページサイズ構成が使用される代替実施形態の場合、構成レジスタ410は省略され、P_SIZE1およびP_SIZE2は、それぞれ、線CONF1およびCONF2に直接接続される。したがって、オペレーションコマンドがデコードされる時、P_S1ZE1およびP_SIZE2は構成デコーダ408に直接供給される。
【００５７】
図12は、メモリデバイスの1つのバンクの構成可能ページサイズ構造の別の例を示している。図12の例では、バンク500は、同じプレーン202、204、206および208、行デコーダ210および212、ページバッファ214、216、218および220、ならびにコア制御回路222を含む。一方、ページサイズコンフィギュレータ502は、ページ構成データ、プレーンアドレス情報およびバンクアドレス情報に応答して特定のプレーンを選択するように特別に構成される。ページサイズコンフィギュレータ502は、バンク500を、サイズが1ページバッファユニット、2ページバッファユニット、3ページバッファユニットまたは4ページバッファユニットのいずれかになるように静的または動的に構成する。現在示されている例では、2および3ページバッファユニットのページサイズ用にページバッファユニットの任意の組み合わせを選択できる。以下で、ページサイズコンフィギュレータ502の機能別回路ブロックの詳しい説明をする。
【００５８】
ページサイズコンフィギュレータ502は、第1のプレーンセレクタ504、第2のプレーンセレクタ506、構成デコーダ508、および構成レジスタ510を含む。構成レジスタ510は、現在説明されている例では3ビットで構成されるページサイズ構成データP_SIZEを受信して、記憶する。合計4つのプレーンが2つのメモリアレイタイルにまとめられる図12の現在示されている例では、P_SIZEの1ビットは、メモリアレイタイル選択を構成するために使用され、P_SIZEの2ビットは、プレーン選択を構成するために使用される。第1のビットはCONF1、第2および第3のビットはCONF2およびCONF3と呼ばれ、これらは信号バスCONF[1:3]として構成デコーダ508に供給される。構成デコーダ508は、デコードされたタイルイネーブリング信号TSEL1およびTSEL2、ならびにプレーンイネーブリング信号PSEL1、PSEL2、PSEL3およびPSEL4を生成するために、タイルアドレスビットT_ADDおよび2つのプレーンアドレスビットP_ADD1およびP-ADD2を受信する構成可能なロジックデコーディングゲートを含む。構成デコーダ508の構成可能なロジックデコーディングゲートはCONF1、CONF2およびCONF3によって制御され、タイルアドレスビットT_ADDおよびプレーンアドレスビットP_ADD1およびP_ADD2の任意の所与のロジック状態を表すようにTSEL1、TSEL2、PSEL1、PSEL2、PSEL3およびPSEL4のロジック状態を変更する。
【００５９】
図12に示されているように、TSEL1は第1のプレーンセレクタ504に、TSEL2は第2のプレーンセレクタ506に供給され、PSEL1、PSEL2は第1のプレーンセレクタ504に供給され、PSEL3、PSEL4は第2のプレーンセレクタ506に供給される。第1のプレーンセレクタ504は、TSEL1、PSEL1およびPSEL2に応答して行デコーダイネーブリング信号PL1およびPL2を生成する。第2のプレーンセレクタ506は、TSEL2、PSEL3およびPSEL4に応答して行デコーダイネーブリング信号PL3およびPL4を生成する。構成デコーダ508は第1レベルのデコーダとして機能し、第1および第2のプレーンセレクタ504および506は第2レベルのデコーダとして機能する。現在説明されている構成例では、TSEL1がアクティブロジックレベルの時、第1のプレーンセレクタ504がイネーブルにされ、TSEL2がアクティブロジックレベルの時、第2のプレーンセレクタ506がイネーブルにされる。第1のプレーンセレクタ504は、アクティブロジックレベルのPSEL1に応答してPL1をアクティブロジックレベルに駆動し、アクティブロジックレベルのPSEL2に応答してPL2をアクティブロジックレベルに駆動する。同様に、第2のプレーンセレクタ506は、アクティブロジックレベルのPSEL1に応答してPL3をアクティブロジックレベルに駆動し、アクティブロジックレベルのPSEL2に応答してPL4をアクティブロジックレベルに駆動する。行デコーダ210および212は、PL1、PL2、PL3およびPL4のアクティブロジックレベルに応答して、選択されたプレーン内のワード線を駆動する。図7のブロックデコーダ308を参照すると、信号PL1およびPL2は論理的に、それぞれ、PLAおよびPLBと同等であり、信号PL3およびPL4は論理的に、それぞれ、PLAおよびPLBと同等である。当業者は、バンク500は3つ以上のメモリアレイタイルを含むように規模拡大することができ、したがって、追加プレーンセレクタ、アドレッシングビット、およびページサイズ構成データ用により多くのビットが必要であることが理解できよう。
【００６０】
図13は、現在説明されている実施形態による、図12に示された構成デコーダ508および構成レジスタ510の回路概略図である。現在説明されている例での構成レジスタ510は3ビットレジスタであり、各レジスタは任意の適切なデータ記憶回路であってよい。構成レジスタ510は、P_SIZE1、P_SIZE2およびP_SIZE3を受信して記憶し、対応するビットCONF1、CONF2およびCONF3をそれぞれ供給する。現在説明されている例では、CONF1はメモリアレイタイル選択を構成するために使用され、CONF2は第1のタイル内のプレーン選択を構成するために使用され、CONF3は第2のタイル内のプレーン選択を構成するために使用される。現在説明されている例では、第1のタイルはプレーン202および204を含み、第2のタイルはプレーン206および208を含む。構成デコーダ508は、3つの独立して動作するデコーディング回路を含む。第1のデコーディング回路は、NANDロジックゲート550および552、ならびにインバータ554からなるタイルデコーディング回路である。第2のデコーディング回路は、NANDロジックゲート556および558、ならびにインバータ560からなるプレーンデコーディング回路である。第3のデコーディング回路は、NANDロジックゲート562および564、ならびにインバータ566からなるプレーンデコーディング回路である。
【００６１】
タイルデコーディング回路では、NANDロジックゲート550は、デコードされたタイルイネーブリング信号TSEL1を供給するためにタイルアドレスT_ADDおよび構成ビットCONF1を受信する。NANDロジックゲート552は、デコードされたタイルイネーブリング信号TSEL2を供給するためにインバータ554を介してタイルアドレスT_ADDの補数、および構成ビットCONF1を受信する。当業者には明らかであろうが、CONF1がアクティブ高ロジックレベルの時、両方のNANDロジックゲート550および552がイネーブルにされ、そのため、その両ロジックゲートがT_ADDに応答してTSEL1およびTSEL2の1つをアクティブ高ロジックレベルに駆動する。
【００６２】
第1のプレーンデコーディング回路では、NANDロジックゲート556は、デコードされたプレーンイネーブリング信号PSEL1を供給するためにプレーンアドレスP_ADD1および構成ビットCONF2を受信する。NANDロジックゲート558は、デコードされたプレーンイネーブリング信号PSEL2を供給するためにインバータ560を介してプレーンアドレスP_ADD1の補数、および構成ビットCONF2を受信する。当業者には明らかであろうが、CONF2がアクティブ高ロジックレベルの時、両方のNANDロジックゲート556および558がイネーブルにされ、そのため、その両ロジックゲートがP_ADD1に応答してPSEL1およびPSEL2の1つをアクティブ高ロジックレベルに駆動する。第2のプレーンデコーディング回路では、NANDロジックゲート562は、デコードされたプレーンイネーブリング信号PSEL3を供給するためにプレーンアドレスP_ADD2および構成ビットCONF3を受信する。NANDロジックゲート564は、デコードされたプレーンイネーブリング信号PSEL4を供給するためにインバータ566を介してプレーンアドレスP_ADD2の補数、および構成ビットCONF3を受信する。
【００６３】
構成デコーダ508の出力は、プレーンセレクタ504および506に供給される。図14は、それぞれ、プレーンセレクタ504および506に使用できるデコーディング回路の回路概略図である。プレーンセレクタ504は、2つのANDロジックゲート570および572を含む。ANDロジックゲート570は、PSEL1を受信するための第1の入力およびTSEL1を受信するための第2の入力を有する。ANDロジックゲート572は、PSEL2を受信するための第1の入力およびTSEL1を受信するための第2の入力を有する。ANDロジックゲート570の出力は信号PL1を駆動し、ANDロジックゲート572の出力は信号PL2を駆動する。プレーンセレクタ506は、2つのANDロジックゲート574および576を含む。ANDロジックゲート574は、PSEL3を受信するための第1の入力およびTSEL2を受信するための第2の入力を有する。ANDロジックゲート576は、PSEL4を受信するための第1の入力およびTSEL2を受信するための第2の入力を有する。ANDロジックゲート574の出力は信号PL3を駆動し、ANDロジックゲート576の出力は信号PL4を駆動する。
【００６４】
以下のTable 2(表2)は、CONF1、CONF2、CONF3、P_ADD1、P_ADD2およびT_ADDの異なるロジックレベルの組み合わせに応答した構成デコーダ508の機能別動作を要約したものである。再度になるが、構成デコーダ508は、CONF1、CONF2およびCONF3のいずれか1つまたは複数のインバート版をデコードし、かつ同じデコード結果を出すように設計できる。
【００６５】
【表２】
0005579621.tif 000003
【００６６】
Table 2(表2)に示されているように、メモリバンク500は、1ページバッファユニットと4ページバッファユニットの間の任意のページサイズを有するように構成できる。さらに、2および3ページバッファユニットのサイズ構成の場合、プレーンの任意の組み合わせが同時に選択できる。このため、各プレーンの耐久性を延ばすためにメモリコントローラが摩耗均一化方式を実行する柔軟性が生まれる。CONF1、CONF2およびCONF3は使ってはならない組み合わせが2つあり、現在説明されている例では、無効な構成設定と記載されていることに留意されたい。これは、適合しないタイルアドレスとプレーンアドレスを供給することができ、プレーンアドレスとタイルアドレスが供給されても、どのプレーンも選択されないという結果になるからである。例えば、T_ADDは、プレーン202および204を含むタイルを選択できるが、P_ADD2は、プレーン206および208の1つを選択するためにアクティブロジックレベルになるだけである。そのようなアドレス指定は、2つの無効な構成の設定に対して無効と見なされる。
【００６７】
前に示された図13の実施形態例は、ページサイズ構成データP_SIZEのビットを受信するための構成レジスタ510を含む。オンザフライ動的ページサイズ構成が使用される代替実施形態の場合、構成レジスタ510は省略され、P_SIZE1、P_SIZE2およびP_SIZE3は、それぞれ、線CONF1、CONF2およびCONF3に直接接続される。したがって、オペレーションコマンドがデコードされる時、P_S1ZE1、P_SIZE2およびP_SIZE3は構成デコーダ508に直接供給される。
【００６８】
前に示された実施形態の例は、各タイルが、共用行デコーダに結合されたペアのプレーンを含む2つのタイルを有するメモリバンクに関する。代替実施形態例は、3つ以上のタイルを有するメモリバンクを組み込むことができる。したがって、共用行デコーダを制御するために対応する数のイネーブル信号を供給できるように、対応するページサイズコンフィギュレータは対応する数のアドレス信号を受信するように適切に規模拡大される。さらに、前に示された実施形態の例は、行デコーダイネーブリング信号を生成するためにタイルイネーブリング信号がプレーンイネーブリング信号と同時にデコードされるデコーディング構造を示している。当業者は、プレーンイネーブリング信号を供給するために、プレーンアドレス情報とタイルアドレス情報を組み合わせるためにさらなるデコーディングロジックが組み込まれるので、プレーンイネーブリング信号は、タイルイネーブリング信号のロジック状態情報を含むようにエンコードでき、そのため、プレーンセレクタの必要性を緩和できることが理解できよう。したがって、そのような代替実施形態では、プレーンイネーブリング信号は行デコーダイネーブリング信号になる。さらに別の代替実施形態では、プレーンはタイルとして構成されない。そのような代替実施形態では、各専用行デコーダが、その行デコーダがそのそれぞれのプレーンのワード線を駆動できるようにするための対応するプレーンイネーブリング信号を直接受信するので、タイルアドレスは必要ない。
【００６９】
メモリデバイスの概略の動作を要約で、図5のメモリバンク200、図6のメモリバンク400および図12のメモリバンク500の実施形態を含めて、図15の流れ図を参照して説明する。どの動作も、図12の構成レジスタ510などの構成レジスタにページサイズ構成データP_SIZEをロードすることから始まる。前述のように、構成レジスタは、ステップ600で、メモリデバイスの電源投入初期化後に1回、静的にロードすることもできるし、ステップ602で、メモリデバイスによって受信されるコマンドで動的にロードすることもできる。動的ロードは、通常のコマンド間に専用のコマンドで、または通常のコマンドでオンザフライで構成レジスタをロードすることを含んでよい。通常のコマンドは、フラッシュメモリデバイス内の制御回路に、ページサイズ構成データをメモリバンクの構成デコーダに直接経路指定するように指示する、変更されたOPコードを有する。あるいは、これらの方式を組み合わせて使用することもできる。例えば、電源投入初期化時、メモリコントローラはメモリデバイスに対してデフォルトの構成設定を発行することもできる。メモリコントローラが、ページサイズ構成データを含むコマンドを後で発行することもできる。構成レジスタがロードされると、ステップ604で、ページサイズ構成データのビットパターンによって決定される特定のデコーディング方式用にデコーダ回路が論理的に構成される。前に説明された実施形態に示されているように、プレーンデコーダおよびタイルデコーダは両方とも、ページサイズ構成データによって論理的に構成される。デコーダがページサイズ構成データによって構成されると、そのデコーダは、ステップ606で、読み出し、プログラミングまたは消去動作中にメモリバンクの1つまたは複数のプレーンを選択するためにコマンドからアドレス情報をデコードする準備ができたことになる。
【００７０】
現在説明されている実施形態によれば、ページサイズ構成データは、通常の動作コマンドで、または専用コマンドあるいはメモリデバイスへの入力信号として供給できる。例えば、読み出しコマンドなどの通常の動作コマンドは、読み出し動作に対応するOPコード、ならびに列および行アドレスデータを含むことができ、行アドレスデータはページサイズデータを含むことができる。専用コマンドまたは入力信号は、事前設定されたOPコードおよびページサイズデータを含むことができる。メモリデバイスの入力/出力(I/O)インターフェースは、コマンドのフォーマットに影響を与える。例えば、I/Oインターフェースがシリアルインターフェースの場合、コマンドは1つまたは複数のビットストリームとして受信される。一方、I/Oインターフェースがパラレルインターフェースの場合、各コマンドのビットは、各セットがメモリデバイスの事前設定されたI/O幅と同じ幅の並列セットで受信される。
【００７１】
前に示された図15の流れ図は、メモリデバイスの概略の動作を示している。以下で、現在説明されている実施形態による、メモリデバイスを制御する方法を詳しく説明する。
【００７２】
図16の流れ図は、メモリデバイスの1つまたは複数のプレーンにアクセスするためにメモリデバイス外部の制御デバイス、例えば、メモリコントローラなどによって実行されるステップを説明している。この方法は、動作要求がメモリコントローラによって受信されるステップ700から始まる。そのような要求は、メモリコントローラが通信しているホストシステムから受信することができ、動作要求は、読み出し、プログラミングまたは消去動作要求の1つを含むことができる。ステップ702で、メモリコントローラは、最後のプレーン/行アドレスがメモリデバイスに供給される準備ができているかを判定する。準備ができていない場合、方法はステップ704に進み、そこで、マルチプレーンコマンドがアドレスおよび/または書き込みデータと共にメモリデバイスに発行される。1つの例では、この行アドレスはサイズが3バイトであり、特定のページ、またはプレーン内の行を選択するためのアドレスデータ、および特定のプレーンを選択するためのプレーンアドレスデータを含む。例えば、行アドレスはRA、プレーンアドレスはP_ADD1およびP_ADD2が可能である。この方法は、メモリデバイスに最後のプレーン/行アドレスが供給されるまで、ステップ702と704の間で反復してループする。反復ごとに、メモリデバイスの回路内にアドレス情報がラッチされる。最後のプレーン/行アドレスが発行される準備ができると、メモリコントローラは、ステップ706で、動作要求に対応するコマンドを最後のアドレスデータと共に発行する。応答して、メモリデバイスは、ステップ706で供給された最後のアドレスを含めて、ラッチされたアドレスを使用してそのコマンドを実行する。メモリデバイスが、ステップ708で、そのメモリデバイスが準備できていることをメモリコントローラに確認すると、動作を完了させるために、ステップ710で、さらなる完了ステップが実行される。
【００７３】
前記の方法ステップは、読み出し、プログラミングおよび消去動作を包括して説明されている。したがって、ステップ704、706および710では、読み出し、プログラミングおよび消去動作それぞれに固有のステップが実行される。プログラミング動作の場合、ステップ704は、プログラミングされるデータと共に列アドレスおよび行アドレスを発行することを含み、ステップ706は、プログラミングコマンドを最後の列アドレス、行アドレスおよび書き込みデータと共に発行することを含む。プログラミング動作の場合の完了ステップ710は、メモリデバイスのプログラミング状態をチェックすることを含み、チェックの結果としてプログラミングエラーの表示、またはプログラミングの正常な完了を表示することができる。消去動作の場合、例えば、ブロック消去動作などの場合、ステップ704は、消去されるブロックアドレスを含むアドレスを発行することを含み、ステップ706は、ブロック消去コマンドを、消去される最後のブロックアドレスと共に発行することを含む。ブロック消去動作の場合の完了ステップ710は、メモリデバイスの消去状態をチェックすることを含み、チェックの結果として消去エラーまたは正常な消去を表示することができる。当業者は、1つのメモリブロックが、一般的には一度に消去できるメモリの最小単位であることを理解できよう。しかし、共通に所有される、2007年7月18日に出願された米国特許第2008-0219053号に記載されているように、メモリブロックの一部分を消去することもできる。したがって、提示された実施形態は、米国特許第2008-0219053号に記載されているフラッシュメモリに適用することができる。
【００７４】
読み出し動作の場合の完了ステップは、プログラミングおよび消去動作より多くのステップを必要とする。現在提示されている実施形態による複数プレーン読み出し動作の詳細を、前に示された図16の流れ図、図17の読み出し動作完了流れ図、および図18の対応する例示の読み出しシーケンスを参照して説明する。この例では、2つの異なるタイルの2つのプレーンがそこからのデータ読み出し用に選択される。図16から開始すると、メモリコントローラは、ステップ702で、最後のプレーン/行アドレスの発行準備ができているかをチェックする。最初のアドレスが発行されるので、方法はステップ704に進み、そこで、最初のマルチプレーンアドレス入力コマンドが行およびプレーンアドレスと共に発行される。図18で、マルチプレーンアドレス入力コマンドのバイト例が16進形式で01hとして示され、その後に3循環の行アドレス入力シーケンスが示されており、そこにプレーンアドレスが含まれる。現在説明されている例では、プレーン2のページまたは行が選択される。この時点で、行アドレスおよびプレーンアドレスは、プレーン2に対応するデコーディング回路にラッチされる。図16のステップ702に戻ると、2番目と最後のプレーン/行アドレスの供給準備ができていて、方法はステップ706に進み、そこで、読み出しコマンドが5循環の列および行アドレス入力シーケンスと共に供給される。図18で、マルチプレーンアドレス入力コマンドのバイト例が16進形式で00hとして示され、その後に5循環の列および行アドレス入力シーケンスが示されている。アドレスが発行された後、読み出し確認コマンド30hが供給される。前に説明された例では、プレーン4のページまたは行が選択される。
【００７５】
ページ読み出しコマンドが発行されたので、メモリデバイスの制御回路は、プレーン2および4の選択されたページからデータを読み出すために内部動作を開始する。より具体的には、内部読み出し動作は、最後のアドレスに対するアドレスラッチ循環が終了したら開始される。選択されたページのデータは同時に感知され、tR未満のうちにページバッファに転送される(tRは、セルアレイからページバッファまでの転送時間)。tRは、選択されたプレーンの数に関係なく同じであることに留意されたい。
【００７６】
図16で、メモリデバイスは最終的に、ステップ708で、tR期間が終わって、データがページバッファからの読み出し準備ができていることをメモリコントローラに知らせる表示、例えば、読み出し/使用中信号を供給する。次に、マルチプレーン読み出し動作の710の動作完了ステップを図17の流れ図で示す。
【００７７】
図17の最初の完了ステップ712は、読み出されるデータは、メモリデバイスに供給された最後のプレーンアドレス(現在説明されている例ではプレーン4に対応する)からであるかを判定することである。あるいは、ステップ712は、読み出されるデータは、メモリデバイスに供給された最初のプレーンアドレスからであるかを判定することができる。これらの2つの異なる方式はメモリデバイスの設計選択であり、どちらでも使用できる。この条件が満たされたので、ステップ716で、バーストデータ読み出しコマンドが発行され、プレーン4に対応するページバッファに記憶されているデータがメモリデバイスから読み出される。そうではなくて、データが前にアドレス指定されたプレーンから読み出される場合、方法はステップ714に進み、そこで、ランダム読み出しコマンドが、ページバッファ内の、データが読み出される特定のビット位置に対応する列アドレスと共に発行される。現在説明されている例では、ランダム読み出しコマンドは、メモリデバイスのデコーディング回路が、対応するページバッファからデータを読み出すための新しい列アドレスを受信できるようにするために使用される。ステップ718をたどると、メモリコントローラは,データを読み出す別のプレーンがあるかを判定する。プレーン2に読み出すべきデータがあるので、方法は714に戻り、ランダム読み出しコマンドが新しい列アドレスと共にメモリデバイスに発行される。ランダム読み出しコマンドは図18で05hとして示されており、その後に2循環の列アドレス入力シーケンスが続き、確認コマンドE0hで終了する。次いで、プレーン2からデータを読み出すために、ステップ716でバーストデータ読み出しが行われる。ステップ718でデータを読み出すべきプレーンはそれ以上ないので、読み出し動作はステップ720で終了する。
【００７８】
次に、現在説明されている実施形態による、マルチプレーンのプログラミングおよび消去動作の例を、図19および図20の例示のシーケンスを参照して簡潔に説明する。図19は、4つのプレーンを有するメモリバンクの2つのプレーンをプログラミングする例示のシーケンスである。プログラミングシーケンスはマルチプレーン書き込みデータ入力コマンド81hから始まり、その後に5循環の列および行アドレス入力シーケンスが続き、そのシーケンスの後にプログラミングデータが続く。現在説明されている例では、プログラミングデータはプレーン2に対応するページバッファにロードされ、プレーン2内の特定の行が、ページバッファ内のデータをプログラミングするためのターゲット位置として選択される。2番目および最後のページがプログラミングされるアドレスは、ページプログラミングコマンド80h、その後に5循環の列および行アドレス入力シーケンス、さらにその後にさらなるプログラミングデータを発行することにより供給される。現在説明されている例では、プレーン4に対しては、プレーン2の場合とは異なる行アドレスが選択される。さらなるプログラミングデータの後にページプログラミング確認コマンド10hが発行される。アドレスのラッチが終了すると、ページバッファにデータをプログラミングする内部動作が始まる。プレーン2および4のページバッファにロードされたデータは、tPROG未満のうちに同時にプログラミングされる(tPROGはページプログラミング経過時間)。ページプログラミング時間tPROGは、メモリバンク内で選択されたプレーンの数に関係なく同じであることに留意されたい。
【００７９】
図20は、4つのプレーンを有するメモリバンクの2つのプレーンからブロックを消去する例示のシーケンスである。消去シーケンスはマルチプレーンアドレス入力コマンド01hから始まり、その後に3循環の行アドレス入力シーケンスが続く。現在説明されている例では、行アドレスはプレーン2内の特定のブロックを選択する。2番目および最後のブロックが消去されるブロックアドレスは、ブロック消去コマンド60h、その後に3循環の行アドレス入力シーケンスを発行することにより供給される。現在説明されている例では、プレーン4に対しては、プレーン2の場合とは異なるブロックアドレスが選択される。行アドレスが供給された後、ブロック消去確認コマンドD0hが発行される。アドレスのラッチが終了すると、プレーン2および4の選択されたブロック内でデータを消去する内部動作が始まる。選択されたブロックのデータは、tBERS未満のうちに同時に消去される(tBERSはブロック消去時間)。ブロック消去時間tBERSは、メモリバンク内で選択されたプレーンの数に関係なく同じであることに留意されたい。
【００８０】
したがって、マルチバンクアクセスのための回路および方法は、ホストシステムがメモリデバイスの各メモリバンク用にページサイズを選択的に構成できるようにすることでホストシステムに完全柔軟性を与える。この構成は、メモリデバイスの電源投入時に静的に、またはメモリデバイスによって受信されるコマンドを介して動的に行うことができる。動的構成の利点は、メモリバンクを、メモリバンクに供給される行アドレスに基づいて異なるページサイズを有するように論理的に区分化できることである。図21および図22は、現在説明されている実施形態による、4プレーンを有するメモリバンクの論理区画の例である。
【００８１】
図21では、メモリバンク800は、図5、9および12で示されている実施形態例でのように、2つのタイルに配置された4つのプレーン802、804、806および808を含む。現在説明されている実施形態の4つのプレーンは、シンメトリック区分化方式で配置される。シンメトリック区分化方式では、各プレーンが同じ論理構成を有する。より具体的には、各プレーンは、最小のページサイズを表す、またはメモリバンクの所定のページサイズの一部分を表す行の数が同じ、および行の物理的位置が同じである。図21に示されているように、プレーンのそれぞれは論理行グループ化810、812および814を有する。これは、多くの可能な組み合わせのうちのほんの1例の論理行構成にすぎない。各行グループ化は、逐次番号の行およびページを含む。図21に示されたマッピング例では、行グループ化810は各プレーンがメモリバンク800に対して1ページユニットの最小ページサイズを用意するように設定され、行グループ化812は各プレーンが2ページユニットページの半分を用意するように設定され、行グループ化814は各プレーンが4ページユニットページの4分の1を用意するように設定される。この論理マッピング方式がメモリコントローラに知られると、用途固有のデータは最も適切な行グループ化に選択的にプログラミングされる。例えば、大きいマルチメディアファイルは、行グループ化814のページサイズがメモリバンク800に対して最大なので、行グループ化814にプログラミングされ、小さいデータファイルは行グループ化810にプログラミングされ、中間のサイズのデータファイルは行グループ化812にプログラミングされる。
【００８２】
図21は、1、2および4ページユニットのページサイズの別の特徴をさらに示している。1ページユニットのページサイズはメモリブロック816を有し(1つのブロックのみ図示)、メモリブロックサイズは、NANDセルストリングごとのワード線の数および1つのプレーンのNANDセルストリングの数によって決定される。2ページユニットのページサイズはメモリブロック818を有し(1つのブロックのみ図示)、NANDセルストリングごとに同じ数のワード線を有する。したがって、メモリブロック818は、2つのプレーンのNANDセルストリングを含むので、メモリブロック816のサイズの2倍である。4ページユニットのページサイズは、NANDセルストリングごとに同じ数のワード線を有するメモリブロック820を有する。したがって、メモリブロック820は、4つすべてのプレーンのNANDセルストリングを含むので、メモリブロック818のサイズの2倍であり、メモリブロック816のサイズの4倍である。
【００８３】
図22では、メモリバンク900は、図5、9および12で示されている実施形態例でのように、2つのタイルに配置された4つのプレーン902、904、906および908を含む。現在説明されている実施形態の4つのプレーンは、非シンメトリック区分化方式で配置される。非シンメトリック区分化方式では、論理行グループ化はプレーンごとに異なってよい。例えば、図22では、プレーン902および904は論理行グループ化910および914を有し、プレーン902、904、906および908は論理行グループ化914を有する。しかし、プレーン906および908は行グループ化918を有する。したがって、プレーン902および904のみが単一ページユニットのページを用意することができ、プレーン906および908は単一ページユニットのページを用意しない。その代わり、プレーン906および908は、2ページユニットのページをプレーン902および904より多く用意するように構成される。
【００８４】
図21および22の区分化方式の例には示されていないが、3つのプレーンにまたがるように3ページユニットのページサイズを有する行グループ化を設定することもできる。2および3ページユニットのページサイズの場合、隣接しないプレーンがページを形成する、プレーンの別の組み合わせを組み合わせることもできる。したがって、メモリバンクの構成可能なページサイズは、使用可能なメモリ容量を別の用途に効率よく利用することを可能にする。
【００８５】
したがって、ここまでに説明された実施形態は、メモリデバイスのメモリバンクへのデータの記憶を用途固有にできるようにしている。記憶効率を最高にし、したがって不要なプログラミングおよび消去の循環が行われるメモリセルの数を最小にするために、最小のページサイズがデータのサイズより大きくなるように指定されたメモリバンクの行にデータを記憶することができる。さらに、ページサイズが大きくなっても、内部読み出し、プログラミングおよび消去時間は実質的に一定なので、パフォーマンスが向上する。メモリデバイスの回路実施形態は、ロジック回路のデコーディング動作を構成データを用いてどのように動的または静的に設定できるかの例を示すために提示された。そのような回路を有するメモリデバイスを制御するメモリコントローラによるアクセス動作は、構成されたページサイズを形成する個々のプレーンにアクセスするためのシーケンス例を示すために提示された。
【００８６】
ここまでの説明では、説明の目的で、本発明の実施形態を十分に理解できるようにするために多数の詳細が記載されている。しかし、当業者には、本発明の実施形態は、説明された様々な固有の詳細とは別個の異なる形を取ることは明らかであろう。また、一部の例では、本発明をあいまいにしないために、良く知られた電気的構成および回路がブロック図の形で示されている。
【００８７】
本発明の上述の実施形態は、例としてのみ意図されている。当業者は、本明細書に添付の特許請求の範囲によってのみ定義される本発明の範囲から逸脱すことなく、特定の実施形態に変更、修正および変形を実施することができる。
【符号の説明】
【００８８】
10  フラッシュメモリデバイス
12  I/Oバッファ、出力バッファ
14  I/Oバッファ、制御バッファ
16  I/Oバッファ、データバッファ
18  レジスタ、コマンドレジスタ
20  レジスタ、アドレスレジスタ
22  レジスタ
24  制御回路
26  高電圧生成器
28  行プレデコーダ
30  行デコーダ
32  列プレデコーダ
34  列デコーダ
36  ページバッファ
38  メモリアレイ
40  メモリアレイ
42  フラッシュメモリセル
44  ストリング選択デバイス
46  ビット線
48  接地選択デバイス
50  ページバッファ
60  プレーン
60  行デコーダ
62  プレーン
64  サブアレイ
66  サブアレイ
68  ページバッファ
74  行デコーダ
70  サブアレイ
72  サブアレイ
76  ページバッファ
78  ページ部、ページ
80  ページ部、ページ
100  バンク
102  プレーン
104  プレーン
106  プレーン
108  プレーン
110  ページバッファ
112  ページバッファ
114  ページバッファ
116  ページバッファ
118  行デコーダ
120  行デコーダ
122  ページ
200  バンク、メモリバンク
202  プレーン
204  プレーン
206  プレーン
208  プレーン
210  行デコーダ
212  行デコーダ
214  ページバッファ
216  ページバッファ
218  ページバッファ
220  ページバッファ
222  コア制御回路
224  ページサイズコンフィギュレータ
226  プレーンセレクタ
228  プレーンセレクタ
230  構成デコーダ
232  構成レジスタ
300  行デコーダ
302  行デコードロジック回路
304  メモリブロック駆動回路
306  メモリブロック駆動回路
308  ブロックデコーダ
310  行ドライバ
350  インバータ
352  インバータ
354  リセットトランジスタ
356  イネーブルトランジスタ
358  イネーブルトランジスタ
360  ANDロジックゲート
362  パストランジスタ
364  ブーストトランジスタ
366  減結合トランジスタ
368  クランプトランジスタ
370  NANDロジックゲート
372  キャパシタ
374  パストランジスタ
376  パストランジスタ
380  パストランジスタ
382  パストランジスタ
400  バンク、メモリバンク
402  ページサイズコンフィギュレータ
404  プレーンセレクタ
406  プレーンセレクタ
408  構成デコーダ
410  構成レジスタ
450  NANDロジックゲート
452  NANDロジックゲート
454  インバータ
456  NANDロジックゲート
458  NANDロジックゲート
460  インバータ
470  プレーンセレクタ
472  ANDロジックゲート
474  ANDロジックゲート
476  プレーンセレクタ
478  ANDロジックゲート
480  ANDロジックゲート
500  バンク、メモリバンク
502  ページサイズコンフィギュレータ
504  プレーンセレクタ
506  プレーンセレクタ
508  構成デコーダ
510  構成レジスタ
550  NANDロジックゲート
552  NANDロジックゲート
554  インバータ
556  NANDロジックゲート
558  NANDロジックゲート
560  インバータ
562  NANDロジックゲート
564  NANDロジックゲート
566  インバータ
570  ANDロジックゲート
572  ANDロジックゲート
574  ANDロジックゲート
576  ANDロジックゲート
800  メモリバンク
802  プレーン
804  プレーン
806  プレーン
808  プレーン
810  行グループ化
812  行グループ化
814  行グループ化
816  メモリブロック
818  メモリブロック
820  メモリブロック
900  メモリバンク
902  プレーン
904  プレーン
906  プレーン
908  プレーン
910  行グループ化
914  行グループ化
918  行グループ化
【図１】
0005579621.tif 000004
【図２】
0005579621.tif 000005
【図３】
0005579621.tif 000006
【図４ａ】
0005579621.tif 000007
【図４ｂ】
0005579621.tif 000008
【図４ｃ】
0005579621.tif 000009
【図４ｄ】
0005579621.tif 000010
【図５】
0005579621.tif 000011
【図６】
0005579621.tif 000012
【図７】
0005579621.tif 000013
【図８】
0005579621.tif 000014
【図９】
0005579621.tif 000015
【図１０】
0005579621.tif 000016
【図１１】
0005579621.tif 000017
【図１２】
0005579621.tif 000018
【図１３】
0005579621.tif 000019
【図１４】
0005579621.tif 000020
【図１５】
0005579621.tif 000021
【図１６】
0005579621.tif 000022
【図１７】
0005579621.tif 000023
【図１８】
0005579621.tif 000024
【図１９】
0005579621.tif 000025
【図２０】
0005579621.tif 000026
【図２１】
0005579621.tif 000027
【図２２】
0005579621.tif 000028