(57)【特許請求の範囲】
【請求項１】
複数のデータビット及び前記複数のデータビットと関連付けられている複数のエラー補正チェック（「ＥＣＣ」）ビットを記憶するための不揮発性メモリ用の出力バッファ回路において、
不揮発性メモリから前記複数のデータビット及び前記複数のＥＣＣビットを受信して、当該複数のデータビットが補正される必要があるかどうかを判定するためのエラーチェック回路であって、前記複数のデータビットを出力に供給し、及び補正信号を生成するためのエラーチェック回路と、
前記エラーチェック回路から前記複数のデータビット及び前記複数のＥＣＣビットを受信し、及び前記補正信号に応えて複数の補正済みデータビットを生成するためのエラー補正回路と、
第１ストレージ回路と、
第２ストレージ回路と、
第３ストレージ回路と、
前記不揮発性メモリから前記第１ストレージ回路に第１のデータセットを転送し、前記ラー補正回路から第２ストレージ回路に、第２のデータセットを転送し、前記第３ストレージ回路から前記出力バッファ回路の出力として前記第３ストレージ回路から転送することを同時に行うように構成されている切替回路と、を備えており、
前記エラーチェック回路は、それぞれの切替回路の動作を制御するように構成されている、出力バッファ回路。
【請求項２】
前記不揮発性メモリは、ＮＡＮＤメモリである、請求項１に記載の出力バッファ回路。
【請求項３】
前記補正信号は、前記切替回路へ供給される、請求項１に記載の出力バッファ回路。
【請求項４】
前記不揮発性メモリは、ＮＡＮＤメモリである、請求項３に記載の出力バッファ回路。
【請求項５】
メモリデバイスにおいて、
複数の不揮発性メモリ回路であって、それぞれが、複数のデータビット及び前記複数のデータビットと関連付けられている複数のエラー補正チェック（「ＥＣＣ」）ビットを記憶するための複数のメモリセルを有している、複数の不揮発性メモリ回路と、
それぞれが、前記複数の不揮発性メモリ回路の１つと関連付けられていて、前記関連付けられている不揮発性メモリ回路から前記複数のデータビット及び前記複数のＥＣＣビットを受信して、当該複数のデータビットが補正される必要があるかどうかを判定するための複数のエラーチェック回路であって、前記複数のデータビットをその出力として供給し、及び補正信号を生成するための複数のエラーチェック回路と、
それぞれが、各自の関連付けられている不揮発性メモリ回路を有する前記複数のエラーチェック回路の１つと関連付けられていて、前記関連付けられている不揮発性メモリ回路からの前記複数のデータビット及び前記複数のＥＣＣビットを受信し、及び前記関連付けられているエラーチェック回路からの前記補正信号に応えて複数の補正済みデータビットを生成するための複数のエラー補正回路と、
それぞれのエラー補正回路、それの関連付けられているエラーチェック回路、及びそれの関連付けられている不揮発性メモリ回路、と関連付けられている３つ又はそれ以上のストレージ回路であって、それぞれが入力／出力ポートを有しており、第１ストレージ回路と、第２ストレージ回路と、第３ストレージ回路とを含む、３つ又はそれ以上のストレージ回路と、
それぞれがエラー補正回路及び関連付けられた不揮発性メモリ、及び関連付けられた第１ストレージ回路、第２ストレージ回路及び第３ストレージ回路と関連づけられている複数の切替回路であって、
それぞれの切替回路が、前記不揮発性メモリから前記第１ストレージ回路に第１のデータセットを転送し、前記ラー補正回路から第２ストレージ回路に、第２のデータセットを転送し、前記第３ストレージ回路から前記出力バッファ回路の出力として前記第３ストレージ回路から転送することを同時に行うように構成されている複数の切替回路と、を備えており、
前記複数のエラーチェック回路の前記１つは、前記関連付けられている切替回路及び前記関連付けられている３つ又はそれ以上のストレージ回路の動作を制御するようになっている、メモリデバイス。
【請求項６】
前記不揮発性メモリ回路は、ＮＡＮＤメモリである、請求項５に記載のメモリデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＮＡＮＤメモリコントローラと共に使用するためのバファリング機構に関するものであり、より具体的には、バッファ回路の使用を、ＮＡＮＤメモリが古くなるにつれエラー補正のオーバーヘッドによって引き起こされるＮＡＮＤメモリの性能の劣化を最小限に抑えることに役立てているバファリング機構に関する。
【背景技術】
【０００２】
ＮＡＮＤメモリ集積回路チップは、当技術では周知である。ＮＡＮＤメモリチップでは、メモリは、複数のストレージブロックを有し、それぞれのブロックが複数のページを保有していることを特徴とする。それぞれのブロックの合計ストレージ量は、最小消去可能単位である。また、それぞれのページは複数のメモリセルを保有している。以前は、メモリセルはシングルビットを記憶させるいわゆるＳＬＣ（シングル・レベル・セル）であった。しかしながら、最近では、ＮＡＮＤメモリ集積回路チップの製造業者らは、それぞれのメモリセルにマルチビットを記憶させるようになってきており、いわゆるＭＬＣ（マルチ・レベル・セル）である。メモリセルがＳＬＣかＭＬＣかを問わず、それぞれのセルに蓄えられる電荷は劣化してゆく。「コラプト」即ちデータ劣化を挽回するため、データビットにはＥＣＣ（エラーチェック及び補正）ビットが随伴している。これらのＥＣＣビットもまたＮＡＮＤチップの随伴メモリセルに記憶され、データセル内のエラーをチェックし、リードソロモンやＢＣＨアルゴリズムの様な既知のアルゴリズムを使ってエラーを補正するのに使用されている。
【０００３】
ＥＣＣビットに係わる問題は、ＮＡＮＤメモリチップが古くなると、エラービットの数が増えてくることである。とはいえ、この増加は性能に非線形に影響を及ぼす。そもそも、１ＫＢのデータビットが読み出される場合、ＮＡＮＤメモリチップが「新鮮」で比較的エラーのない状態であれば、出力データビットのチェックと補正に要する時間はほんの０．５マイクロ秒程度であろう。しかしながら、ＮＡＮＤメモリチップが古くなり、より多くのエラービットが起こるようになると、同じ１ＫＢのデータビットでも、チェックし、補正し、ＮＡＮＤメモリチップから出力させるのに１０マイクロ秒を要するようになってくる。システム設計者の立場からいうと、性能を予測できないことは懸念の範囲である。よって、ＮＡＮＤメモリチップが古くなりエラービットの数が増えてきても、性能、即ち同量のデータを読み出す（必要に応じチェック及び補正を含む）のに要する合計時間、が低下しないことが望まれる。
【０００４】
図１を参照すると、先行技術による出力バッファ回路１０が示されている。ＮＡＮＤメモリ１２は、データ出力を提供している。データビット及び随伴のＥＣＣビットは、第１マルチプレクサ１４へ供給される。そこから、データは第１バッファ１６か又は第２バッファ１８のどちらかへ供給される。第１バッファ１６又は第２バッファ１８から、データは、バッファ回路１０の出力として第２ＭＵＸ２０へ供給される。バッファ回路１０は、ピンポン回路として知られている。動作時、回路１０は次の様に機能する。第１クロックサイクルＴ１で、ＮＡＮＤメモリ１２からのデータはＭＵＸ１４に受け渡されバッファ１６に記憶される。バッファ１６内のデータは、ＥＣＣチェック及び補正回路（図示せず）によってチェックされ、必要があれば補正される。第２クロックサイクルＴ２で、ＮＡＮＤメモリ１２からのデータはＭＵＸ１４に受け渡されバッファ１８に記憶され、バッファ１８内のデータは、ＥＣＣチェック及び補正回路（図示せず）によってチェックされ、必要があれば補正され、その間にバッファ１６からのデータがバッファ回路１０の出力としてＭＵＸ２０に受け渡される。第３クロックサイクルＴ３で、ＮＡＮＤメモリ１２からのデータは、ＭＵＸ１４に受け渡されバッファ１６に記憶され、バッファ１６内のデータは、ＥＣＣチェック及び補正回路（図示せず）によってチェックされ、必要があれば補正され、その間にバッファ１８からのデータがバッファ回路１０の出力としてＭＵＸ２０に受け渡される。
【０００５】
上記より、先行技術のバッファ回路１０では、ＥＣＣが時間とともに劣化しても、エラーチェック及び補正が１クロックサイクル内で遂行され得る限り性能の一貫性が維持される、ということが解るであろう。しかしながら、この仮定は、ＭＬＣメモリセルを使用するＮＡＮＤメモリチップが多くなり、関連付けられるエラー補正ビットの数が増加してくれば、当てはまらなくなる。故に、ＥＣＣが時間とともに劣化してもＮＡＮＤメモリチップとしての性能の一貫性を維持する必要性がある。
【発明の概要】
【０００６】
不揮発性メモリのための出力バッファ回路は、複数のデータビット及び当該複数のデータビットと関連付けられている複数のエラー補正チェック（「ＥＣＣ」）ビットを記憶する。出力バッファ回路は、複数のデータビット及び複数のＥＣＣビットを受信して当該複数のデータビットが補正される必要があるかどうかを判定するためのエラーチェック回路を備えている。エラーチェック回路は、複数のデータビットをその出力として供給し、補正信号を生成する。エラー補正回路が、複数のデータビット及び複数のＥＣＣビットを受信し、補正信号に応えて複数の補正済みデータビットを生成する。出力バッファ回路は、更に、それぞれが入力／出力ポートを有するストレージ回路を３つ又はそれ以上有している。バスが、ストレージ回路のそれぞれへ接続し、及びストレージ回路を互いに接続しており、それぞれのストレージ回路との間及び不揮発性メモリとストレージ回路の間でデータビットを供給し、出力バッファ回路の出力としてのデータビットを供給する。それぞれのストレージ回路には、複数のデータビット或いは複数の補正済みデータビットを受信するために切替回路が関連付けられており、切替回路は、当該複数のデータビット或いは補正済みデータビットを関連付けられているストレージ回路の入力／出力ポートへ供給し、当該複数のデータビット或いは補正済みデータビットをストレージビットとしてストレージ回路に記憶し、ストレージビットをストレージ回路の出力として供給する。
【図面の簡単な説明】
【０００７】
【図１】先行技術の出力バッファ回路のブロック図である。
【図２】本発明の出力バッファ回路の第１の実施形態のブロック図である。
【図３】メモリシステムの第１の実施形態のブロック図であり、本発明の複数の出力バッファ回路を使用している複数のＮＡＮＤメモリチップを示している。
【図４】メモリシステムの第２の実施形態のブロック図であり、本発明の複数の出力バッファ回路を使用している複数のＮＡＮＤメモリチップを示している。
【発明を実施するための形態】
【０００８】
図２を参照すると、ＮＡＮＤメモリ１２と共に使用するための、本発明の出力バッファ回路１００の第１の実施形態のブロックレベル図が示されている。ＮＡＮＤメモリ１２からの、複数のデータビット及び関連付けられている複数のＥＣＣビットを含むデータ出力がエラーチェック回路２２へ供給され、そこで、データビットとＥＣＣビットはＥＣＣチェック回路２２によってチェックされ、エラー補正アルゴリズムをデータビットへ適用する必要があるかどうかが判定される。ＥＣＣチェック回路は、未補正データビットが補正される必要がある場合には、その出力として補正制御信号を生成する。最後に、未補正データビットがＥＣＣチェック回路２２からデータバス６０伝いに供給される。
【０００９】
ＥＣＣ補正回路２４は、未補正データビット及び関連付けられているＥＣＣビットを未補正バス６０伝いに受信し、補正制御信号に応えて、未補正データビットに補正を遂行し、複数の補正済みデータビットを生成する。複数の補正済みデータビットは、補正済みデータバス６２に伝いに供給される。
【００１０】
３つのストレージバッファ３０、３２、及び３４が提供されている。ストレージバッファは各々、関連付けられている入力／出力ポート３１、３３、及び３５を有している。入力／出力ポート３１、３３、３５は、ＭＵＸ４０、４２、及び４４に、それぞれ接続されている。ＭＵＸ４０、４２、及び４４はそれぞれ３つの入力、即ち１）ＥＣＣチェック回路２２からの又はＮＡＮＤメモリ１２の出力からの未補正データビットを受信するための、未補正データバス６０に接続されている第１入力と、２）ＥＣＣ補正回路２４からの補正済みデータビットを受信する、補正済みデータバス６２に接続されている第２入力と、３）他のＭＵＸ全てに接続されていて出力バッファ回路１００の出力として提供する入力／出力バス６４に接続されている第３入力と、を有している。ＥＣＣチェック回路２２からの補正制御信号が、ＭＵＸ４０、４２、及び４４のそれぞれについての切替及び切替のタイミングを制御している。
【００１１】
出力バッファ回路１００の動作時、読み出し動作の開始後の第１クロックサイクルＴ１で、データビット及び関連付けられているＥＣＣビットがＮＡＮＤメモリ１２から読み出され、ＥＣＣチェック回路２２へ供給される。ＥＣＣチェック回路２２は、データビットに何らかの補正が必要かどうかを判定するための動作を遂行する。データビットは、ＥＣＣチェック回路２２による動作の結果に関わりなく、第１バッファ３０にも送られ、そこに記憶される。
【００１２】
第２クロックサイクルＴ２で、ＥＣＣチェック回路２２の結果が、データビットは何らの補正も必要ないということを示していれば、第１バッファ３０からの未補正データが、第１バッファ３０から出力され、バス６４伝いに供給され、第３バッファ３４に記憶される。同じクロックサイクルＴ２で、もう１つの読み出しサイクルがあった場合、上述の様に、ＮＡＮＤチップ２２からのデータが読み出され、第１バッファ３０に記憶される。代わりに、データを１つのバッファから出力させて別のバッファへ読み込ませることなく、単純に、バッファ３０、３２、及び３４と関連付けられているＭＵＸ４０、４２、４４の指定を切り替えてもよい。こうして、代わりのやり方であれば、バッファ３０はこの場合「アウトバッファ３４」と指定され、バッファ３４は「インバッファ」３０と指定されることになる。
【００１３】
いまここでＮＡＮＤメモリ１２は古くなってエラービットに遭遇しており、未補正データビットは補正される必要があると仮定する。ＮＡＮＤメモリ１２からの読み出し動作後の第１クロックサイクルで、未補正データビットは、上述の様に第１バッファ３０に記憶され、ＥＣＣ補正回路２４へ送られる。ＥＣＣチェック回路２２が補正必要と判定すれば、補正制御信号が生成されて、ＥＣＣ補正回路２４に、未補正データビット及び関連付けられているＥＣＣビットに基づく未補正データビットの補正を開始させる。加えて、ＥＣＣチェック部２２は、「インバッファ」３０を「ＥＣＣバッファ」３２にさせ、ＥＣＣバッファ３２をインバッファ３０にさせる。
【００１４】
第２クロックサイクルＴ２で、未補正データビットは、ＥＣＣ補正回路２４によって補正され第２バッファ３２に記憶されるか、又は直接にバッファ３２内で補正される。同時に、ＮＡＮＤメモリ１２が再度読み出されれば、当該読み出しサイクルによる未補正データビットは第１バッファ３０に記憶される。
【００１５】
第３クロックサイクルＴ３で、第２ストレージバッファ３２内に記憶されている補正済みデータビットが第２ストレージバッファ３２から読み出され、第３ストレージバッファ３４に記憶される。同時に、第１ストレージバッファに記憶されている未補正データビットが補正を求められているなら、それらの未補正データビットはＥＣＣ補正回路２４によって補正され、第２ストレージバッファ３２に記憶される。最後に、このクロックサイクル中、未補正データビットがＮＡＮＤメモリ１２から読み出されれば、それらは第１ストレージバッファ３０に記憶される。
【００１６】
以上から解るように、初期セットアップ及び未補正データ並びに補正済みデータの記憶での僅かな遅延は別として、出力バッファ回路１００からのデータは、それ以後、クロックサイクル毎に出力されることになる。
【００１７】
図３を参照すると、本発明の複数の出力バッファ回路１００を使用しているメモリシステム２００の第１の実施形態のブロックレベル図が示されている。メモリシステム２００は、複数のＮＡＮＤメモリ１２（ａ−ｄ）（例示目的で４つしか示されていない）を備えている。それぞれのＮＡＮＤメモリ１２は、図２に示され説明されている、関連付けられた出力バッファ回路１００を有している。簡潔さを期して、図３には出力バッファ回路１００の一部しか示されていない。それぞれの出力バッファ回路１００が、ＥＣＣ補正回路２４を備えるものとして示されている。こうして、図３に示されている様に、メモリシステム２００は、複数のＮＡＮＤメモリ２４を備え、１つ１つのＮＡＮＤメモリが関連付けられている出力バッファ回路１００を有し、１つ１つの出力バッファ回路１００が専用のＥＣＣ補正回路２４を有している。
【００１８】
図４を参照すると、本発明の複数の出力バッファ回路１００を使用しているメモリシステム２１０の第２の実施形態のブロックレベル図が示されている。メモリシステム２１０は、複数のＮＡＮＤメモリ１２（ａ−ｄ）（例示目的で４つしか示されていない）を備えている。それぞれのＮＡＮＤメモリ1２は、図２に示され説明されている、関連付けられた出力バッファ回路１００を有している。簡潔さを期して、図４には出力バッファ回路１００の一部しか示されていない。また一方で、複数の出力バッファ回路１００全てが単一のＥＣＣ補正回路２４を共有している。こうして、この実施形態では、ＥＣＣ補正回路２４が十分に高速な補正を遂行することができるなら、それを全４つの出力バッファ１００（ａ−ｄ）用の補正回路として供することができる。或いは、ＮＡＮＤメモリ１２がエラー補正の頻度の低い信頼性品質共に十分なものであれば、図示の様に単一のＥＣＣ補正回路２４を複数の出力バッファ回路１００に供してもよい。図４に示されているメモリシステム２１０の他の全ての態様は、図３に示されているメモリシステムと同様である。
【００１９】
以上より、ＮＡＮＤチップのための出力バッファ回路において、ＮＡＮＤチップが時間とともに劣化してＥＣＣが性能に影響を及ぼすという問題を克服することのできる出力バッファ回路が開示されていることが解るであろう。
【符号の説明】
【００２０】
１０  出力バッファ回路（先行技術）
１２（ａ−ｄ）  ＮＡＮＤメモリ
１４  第１マルチプレクサ（ＭＵＸ）
１６  第１バッファ
１８  第２バッファ
２０  第２マルチプレクサ（ＭＵＸ）
２２  ＥＣＣチェック回路
２４  ＥＣＣ補正回路
３０、３２、３４  ストレージバッファ
３１、３３、３５  入力／出力ポート
４０、４２、４４  マルチプレクサ（ＭＵＸ）
６０  （未補正）データバス
６２  補正済みデータバス
６４  入力／出力バス
１００（ａ−ｄ）  出力バッファ回路
２００、２１０  メモリシステム
【図１】
0005563719.tif 000002
【図２】
0005563719.tif 000003
【図３】
0005563719.tif 000004
【図４】
0005563719.tif 000005