(57)【要約】【課題】ＮＡＮＤフラッシュメモリ装置及びそのプログラム方法を提供する。【解決手段】本発明によるＮＡＮＤフラッシュメモリ装置は、複数のページを有するセルアレイと、前記複数のページのプログラムデータを格納するページバッファと、プログラム検証データを前記ページバッファに提供するためのデータ格納回路と、プログラム検証動作なしに前記複数のページをプログラムし、前記プログラム検証データを用いて前記複数のページに対するプログラム検証動作を行うための制御ユニッと、を含む。【選択図】図１
2009043397.tif 000002
【特許請求の範囲】
【請求項１】
複数のページを有するセルアレイと、
前記複数のページのプログラムデータを格納するページバッファと、
プログラム検証データを前記ページバッファに提供するためのデータ格納回路と、
プログラム検証動作なしに前記複数のページをプログラムし、前記プログラム検証データを用いて前記複数のページに対するプログラム検証動作を行うための制御ユニットと、を含むＮＡＮＤフラッシュメモリ装置。
【請求項２】
前記プログラムデータは、前記データ格納回路を経由して前記ページバッファに格納される請求項１に記載のＮＡＮＤフラッシュメモリ装置。
【請求項３】
前記制御ユニットは、前記複数のページを連続的にプログラムした後、連続的にプログラム検証する請求項１に記載のＮＡＮＤフラッシュメモリ装置。
【請求項４】
前記プログラム検証過程でプログラムフェイルが発生したら、前記制御ユニットはプログラム電圧を増加させ、前記プログラム及び検証動作を繰り返す請求項３に記載のＮＡＮＤフラッシュメモリ装置。
【請求項５】
前記データ格納回路に格納された前記プログラム検証データは、前記プログラム検証動作の結果によって更新される請求項３に記載のＮＡＮＤフラッシュメモリ装置。
【請求項６】
前記制御ユニットは、前記複数のページを連続的にプログラムした後、各々のページをプログラム検証した後プログラムする動作を複数のページに対して連続的に行う請求項１に記載のＮＡＮＤフラッシュメモリ装置。
【請求項７】
前記プログラム検証過程でプログラムフェイルが発生したら、前記制御ユニットはプログラム電圧を増加させ、前記検証及びプログラム動作を繰り返す請求項６に記載のＮＡＮＤフラッシュメモリ装置。
【請求項８】
前記データ格納回路は、外部から入力された前記プログラムデータを格納する動作と、前記プログラムデータを前記ページバッファに提供する動作を同時に行う請求項１に記載のＮＡＮＤフラッシュメモリ装置。
【請求項９】
前記データ格納回路は前記ページバッファと同一の構造を有する請求項１に記載のＮＡＮＤフラッシュメモリ装置。
【請求項１０】
前記データ格納回路は複数のレジスタで構成される請求項１に記載のＮＡＮＤフラッシュメモリ装置。
【請求項１１】
ＮＡＮＤフラッシュメモリ装置のプログラム方法であって、
プログラム検証動作なしに複数のページをプログラムするステップと、
前記プログラムされた複数のページをプログラム検証するステップと、を含むプログラム方法。
【請求項１２】
前記プログラム検証動作は、前記複数のページに対して連続的に行われる請求項１１に記載のプログラム方法。
【請求項１３】
前記プログラム及び検証動作が行われる時間は、プログラムされたメモリセルのしきい値電圧が安定化される時間より大きい値に決定される請求項１１に記載のプログラム方法。
【請求項１４】
前記複数のページの数は、前記プログラム及び検証動作が行われる時間によって決定される請求項１３に記載のプログラム方法。
【請求項１５】
前記複数のページは、プログラムパスであると認識される仮想のページを含む請求項１４に記載のプログラム方法。
【請求項１６】
前記プログラム検証ステップで、プログラムフェイルが発生する時、プログラム電圧を増加させ、前記プログラム及びプログラム検証ステップを繰り返す請求項１１に記載のプログラム方法。
【請求項１７】
前記複数のページのうちプログラムパスされたページに対してもプログラム及びプログラム検証ステップが繰り返される請求項１６に記載のプログラム方法。
【請求項１８】
前記プログラム方法は、マルチレベルセルの上位ビット及び下位ビットに対して行われる請求項１１に記載のプログラム方法。
【請求項１９】
第１検証電圧がプログラムされたメモリセルで要求されるしきい値電圧より低い電圧に決定されるステップと、
前記複数のページが前記第１検証電圧に基づいてプログラムされるステップと、
第２検証電圧が、前記プログラムされたメモリセルで要求されるしきい値電圧と等しい電圧に決定されるステップと、
前記第２検証電圧に基づいて前記複数のページに対して反復的なプログラムが行われるステップと、を含む請求項１１に記載のプログラム方法。
【請求項２０】
メモリシステムであって、
ＮＡＮＤフラッシュメモリ装置と、
前記ＮＡＮＤフラッシュメモリ装置を制御するためのメモリコントローラと、を含み、
前記ＮＡＮＤフラッシュメモリ装置は、
複数のページを有するセルアレイと、
前記複数のページのプログラムデータを格納するページバッファと、
プログラム検証データを前記ページバッファに提供するためのデータ格納回路と、
プログラム検証動作なしに前記複数のページをプログラムし、前記プログラム検証データを用いて前記複数のページに対するプログラム検証動作を行うための制御ユニットと、を含むことを特徴とするメモリシステム。
【請求項２１】
前記ＮＡＮＤフラッシュメモリ装置及び前記メモリコントローラは一つのメモリカードに集積される請求項２０に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリ装置に係り、さらに詳細には、ＮＡＮＤフラッシュメモリ装置及びそのプログラム方法に関する。
【背景技術】
【０００２】
半導体メモリ装置（ｓｅｍｉｃｏｎｄｕｃｔｏｒ  ｍｅｍｏｒｙ  ｄｅｖｉｃｅ）は、データを保存しておき、必要な時に読み出すことができる記憶装置である。半導体メモリ装置は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）とＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）とに大別される。ＲＡＭは、電源が遮断されると格納されたデータが消滅する揮発性メモリ装置（ｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ  ｄｅｖｉｃｅ）である。ＲＯＭは、電源が遮断されても格納されたデータが消滅しない不揮発性メモリ装置（ｎｏｎｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ  ｄｅｖｉｃｅ）である。ＲＡＭは、ＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）、ＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）などを含む。ＲＯＭは、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  ＥＰＲＯＭ）、フラッシュメモリ装置（ｆｌａｓｈ  ｍｅｍｏｒｙ  ｄｅｖｉｃｅ）などを含む。フラッシュメモリ装置は、大きくＮＯＲ型とＮＡＮＤ型とに区分される。
【０００３】
不揮発性メモリ装置のメモリセルは、電荷貯蔵層を有する。電荷貯蔵層は、一般的に導体を利用するフローティングゲート（ｆｌｏａｔｉｎｇ  ｇａｔｅ）方式、または絶縁体を利用する電荷トラップ（ｃｈａｒｇｅ  ｔｒａｐ）方式で構成される。電荷貯蔵層に電荷が格納されない状態はロジッグ１とし、メモリセルが消去された状態である。そして、電荷貯蔵層に電荷が格納された状態はロジッグ０とし、メモリセルがプログラムされた状態である。
【０００４】
プログラム動作は、メモリセルの電荷貯蔵層に電荷を格納する動作である。ところが、プログラム動作を通して電荷貯蔵層に格納された電荷は不安定な状態である。特に、電荷トラップ（ｃｈａｒｇｅ  ｔｒａｐ）を電荷貯蔵層として使用するフラッシュメモリ装置（例えば、ＣＴＦ）の場合、プログラムされた電荷が安定化されるためには、所定の時間が要求される。即ち、プログラムされたメモリセルのしきい値電圧は、プログラムされた後から所定時間の間、不安定な状態である。メモリセルのしきい値電圧が安定化されて正確なレベルを表すためには、所定時間が要求される。
【０００５】
従って、メモリセルがプログラムされた直後検証動作が行われると、不安定なしきい値電圧によってエラーが発生する。しきい値電圧が正確なレベルより低く認識されれば、プログラムがパスであるメモリセルがプログラムフェイルであると判定される。この場合、メモリセルは過度にプログラムされる。逆に、しきい値電圧が正確なレベルより高く認識されると、プログラムフェイルであるメモリセルがプログラムパスであると判定される。この場合、メモリセルは不足する程度にプログラムされる。従って、メモリセルのしきい値電圧の分布が拡張される。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、上述の問題点に鑑みてなされたもので、その目的は、プログラムされたメモリセルのしきい値電圧が安定化された後、検証動作を行うＮＡＮＤフラッシュメモリ装置及びそのプログラム方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成すべく、本発明によるＮＡＮＤフラッシュメモリ装置は、複数のページを有するセルアレイと、前記複数のページのプログラムデータを格納するページバッファと、プログラム検証データを前記ページバッファに提供するためのデータ格納回路と、プログラム検証動作なしに前記複数のページをプログラムし、前記プログラム検証データを用いて前記複数のページに対するプログラム検証動作を行うための制御ユニッと、を含む。
【０００８】
実施の形態として、前記プログラムデータは、前記データ格納回路を経由して前記ページバッファに格納される。そして、前記データ格納回路に格納された前記プログラム検証データは、前記プログラム検証動作の結果によって更新される。
【０００９】
実施の形態として、前記制御ユニットは、前記複数のページを連続的にプログラムした後、連続的にプログラム検証動作を行う。前記プログラム検証過程でプログラムフェイルが発生したら、前記制御ユニットはプログラム電圧を増加させ、前記プログラム及び検証動作を繰り返す。
【００１０】
実施の形態として、前記制御ユニットは、前記複数のページを連続的にプログラムした後、各々のページをプログラム検証した後プログラムする動作を複数のページに対して連続的に行う。前記プログラム検証過程でプログラムフェイルが発生したら、前記制御ユニットはプログラム電圧を増加させ、前記検証及びプログラム動作を繰り返す。
【００１１】
実施の形態として、前記データ格納回路は、外部から入力された前記プログラムデータを格納する動作と、前記プログラムデータを前記ページバッファに提供する動作を同時に行う。
実施の形態として、前記データ格納回路は前記ページバッファと同一の構造を有する。他の実施の形態として、前記データ格納回路は複数のレジスタで構成される請求項１に記載のＮＡＮＤフラッシュメモリ装置。
【００１２】
本発明によるＮＡＮＤフラッシュメモリ装置のプログラム方法は、プログラム検証動作なしに複数のページをプログラムするステップと、前記プログラムされた複数のページをプログラム検証するステップと、を含む。
【００１３】
実施の形態として、前記プログラム検証動作は、前記複数のページに対して連続的に行われる。そして、前記プログラム及び検証動作が行われる時間は、プログラムされたメモリセルのしきい値電圧が安定化される時間より大きい値に決定され、前記複数のページの数は、前記プログラム及び検証動作が行われる時間によって決定される。そして、前記複数のページは、プログラムパスであると認識される仮想のページを含む。
【００１４】
実施の形態として、前記プログラム検証ステップで、プログラムフェイルが発生する時、プログラム電圧を増加させ、前記プログラム及びプログラム検証ステップを繰り返す。そして、前記複数のページのうちプログラムパスされたページに対してもプログラム及びプログラム検証ステップが繰り返される。
他の実施の形態として、前記プログラム方法は、マルチレベルセルの上位ビット及び下位ビットに対して行われる。
【００１５】
他の実施の形態として、第１検証電圧がプログラムされたメモリセルで要求されるしきい値電圧より低い電圧に決定されるステップと、前記複数のページが前記第１検証電圧に基づいてプログラムされるステップと、第２検証電圧が、前記プログラムされたメモリセルで要求されるしきい値電圧と等しい電圧に決定されるステップと、前記第２検証電圧に基づいて前記複数のページに対して前記反復的なプログラムが行われるステップと、を含む。
【００１６】
本発明によるメモリシステムは、ＮＡＮＤフラッシュメモリ装置と、前記ＮＡＮＤフラッシュメモリ装置を制御するためのメモリコントローラと、を含み、前記ＮＡＮＤフラッシュメモリ装置は、複数のページを有するセルアレイと、前記複数のページのプログラムデータを格納するページバッファと、プログラム検証データを前記ページバッファに提供するためのデータ格納回路と、プログラム検証動作なしに前記複数のページをプログラムし、前記プログラム検証データを用いて前記複数のページに対するプログラム検証動作を行うための制御ユニットと、を含む。
【００１７】
実施の形態として、前記ＮＡＮＤフラッシュメモリ装置及び前記メモリコントローラは一つのメモリカードに集積される。
【発明の効果】
【００１８】
本発明によれば、ＮＡＮＤフラッシュメモリ装置をプログラムする時、メモリセルがプログラムされてから所定時間が過ぎた後、検証動作が行われる。メモリセルのしきい値電圧が安定化された後に検証動作が行われるので、不安定なしきい値電圧による検証及びプログラムエラーが防止される。従って、しきい値電圧の分布が減少し、ＮＡＮＤフラッシュメモリ装置のプログラム特性が改善される。
【発明を実施するための最良の形態】
【００１９】
本発明によるＮＡＮＤフラッシュメモリ装置のプログラム方法は、一ページで行われるプログラム動作と検証動作の間に、他のページに対するプログラム動作及び検証動作が行われることを特徴とする。まず、複数のページがプログラム単位として決定される。そして、決定された各ページに対して順次にプログラム電圧が印加される。以後、複数のページのうち一ページに対して順次に検証電圧とプログラム電圧が印加される。この動作は、複数のページに対して順次に行われる。
【００２０】
また、本発明によるＮＡＮＤフラッシュメモリ装置のプログラム方法では、複数のページがプログラム単位として決定される。そして、決定された複数のページに対して順次にプログラム電圧が印加される。以後、複数のページに対して順次に検証電圧が印加される。
【００２１】
本発明によるフラッシュメモリ装置のプログラム方法によると、一ページのプログラム動作と検証動作の間に所定の時間差が存在する。この時間の間、メモリセルのしきい値電圧は安定化される。
【００２２】
以下、本発明の属する技術分野における通常の知識を有する者が本発明の技術的思想を容易に実施できる程度に詳しく説明するため、本発明の好ましい実施の形態を添付の図面を参照して説明する。
【００２３】
図１は、本発明によるＮＡＮＤフラッシュメモリ装置１００を示すブロック図である。図１を参照すると、本発明によるＮＡＮＤフラッシュメモリ装置１００は、セルアレイ１１０、行デコーダ１２０、ページバッファ１３０、レジスタ１４０、列選択器１５０、入出力回路１６０、パス／フェイル回路１７０及び制御回路１８０を含む。
【００２４】
セルアレイ１１０は、複数のメモリブロック（ｍｅｍｏｒｙ  ｂｌｏｃｋ）からなる。図１には一つのメモリブロックが図示されている。それぞれのメモリブロックは複数のページ（ｐａｇｅ）で構成される。それぞれのページは複数のメモリセルで構成される。ＮＡＮＤフラッシュメモリ装置１００で、メモリブロックは消去の単位であり、ページは読み出しまたは書込みの単位である。
【００２５】
一方、それぞれのメモリブロックは複数のセルストリング（ｃｅｌｌ  ｓｔｒｉｎｇ）で構成される。それぞれのセルストリングは、接地選択トランジスタ、複数のメモリセル及びストリング選択トランジスタで構成される。接地選択トランジスタは接地選択ラインＧＳＬに連結され、メモリセルはワードラインＷＬ０〜ＷＬ３１に連結され、ストリング選択トランジスタはストリング選択ラインＳＳＬに連結される。セルストリングは、対応するビットライン（例えば、ＢＬ１）と共通ソースラインＣＳＬの間に連結される。
【００２６】
行デコーダ１２０は、セルアレイ１１０及び制御回路１８０に連結される。行デコーダ１２０は、制御回路１８０により制御され、セルアレイ１１０のワードラインＷＬ０〜ＷＬ３１を選択する。
ページバッファ１３０は、セルアレイ１１０及びレジスタ１４０に連結される。ページバッファ１３０は、レジスタ１４０から伝達されたデータ及びセルアレイ１１０から伝達されたデータを格納する。ページバッファ１３０は、複数のページバッファユニット１３１〜１３ｎで構成される。それぞれのページバッファユニット１３１〜１３ｎは、セルアレイ１１０の各ビットラインＢＬ１〜ＢＬｎ及びレジスタ１４０の各レジスタユニット１４１〜１４ｎに連結される。
【００２７】
レジスタ１４０は、ページバッファ１３０、列選択器１５０及び制御回路１８０に連結される。レジスタ１４０は制御回路１８０により制御される。レジスタ１４０は、列選択器１５０から伝達されたデータを格納し、格納されたデータをページバッファ１３０に伝達する。レジスタ１４０は、複数のレジスタユニット１４１〜１４ｎで構成される。それぞれのレジスタユニット１４１〜１４ｎは、ページバッファ１３０のそれぞれのページバッファユニット１３１〜１３ｎに連結される。それぞれのレジスタユニット１４１〜１４ｎは複数のレジスタＡ、Ｂで構成される。図１には、レジスタユニット１４１〜１４ｎがそれぞれ２個のレジスタを有するものとして図示されている。
【００２８】
列選択器１５０は、レジスタ１４０、入出力回路１６０、パス／フェイル回路１７０及び制御回路１８０に連結される。列選択器は制御回路１８０により制御される。そして、列選択器１５０は、レジスタユニット１４１〜１４ｎ及びページバッファユニット１３１〜１３ｎを選択する。列選択器１５０は、選択されたレジスタ１４０及びページバッファ１３０の経路に沿ってプログラムデータを伝達するかまたはセルアレイ１１０から読み出したデータを伝達する。
【００２９】
入出力回路１６０は、列選択器１５０及び制御回路１８０に連結される。入出力回路１６０は制御回路１８０により制御される。入出力回路１６０は外部からデータを受信して列選択器１５０に伝達する。そして、入出力回路１６０は列選択器１５０から伝達されたデータを外部に伝達する。
【００３０】
パス／フェイル回路１７０は列選択器１５０及び制御回路１８０に連結される。パス／フェイル回路１７０は制御回路１８０により制御される。そして、検証動作が行われる時、パス／フェイル回路１７０はプログラムされたメモリセルがプログラムパスであるかの可否を検証する。
【００３１】
制御回路１８０は、行デコーダ１２０、列選択器１５０、入出力回路１６０及びパス／フェイル回路１７０に連結される。制御回路１８０は、プログラムする複数のページが全てプログラムパスであるかの可否を判断する。そのために、制御回路１８０は所定の格納装置を含む。この格納装置には、プログラムする各ページがプログラムパスであるかの可否が格納される。そして、制御回路１８０は、セルアレイ１１０のプログラム動作が本発明による方法で行われるように、ＮＡＮＤフラッシュメモリ装置１００の諸般の事項を制御する。
【００３２】
本発明によるＮＡＮＤフラッシュメモリ装置１００は複数のページ単位でプログラム動作を行う。この時、複数のページをプログラムするためには、各ページのプログラムデータがページバッファに格納されていなければならない。ところが、各ページのプログラムデータを外部からページバッファに伝達するには、長い時間が要求される。外部から入力されるデータは８ビット（ｂｉｔ）単位で順次に入力されるが、ページバッファは５１２バイト（ｂｙｔｅ）であるからである。
【００３３】
本発明によるＮＡＮＤフラッシュメモリ装置１００は、データ入力に要求される時間を減らすため、レジスタ１４０を含む。レジスタ１４０が使用されれば、外部からデータが伝達されると同時にプログラム動作が行われる。
【００３４】
レジスタＡに格納されたデータに基づいて該当ページがプログラムされ、同時にレジスタＢには外部から伝達されるデータが格納される。以後、レジスタＢに格納されたデータに基づいて該当ページがプログラムされ、レジスタＡには外部から伝達される次のページのデータが格納される。即ち、データが全て入力されるまで、待機する必要がなくなる。従って、所定時間の間、複数のページがプログラムされる場合、より多くのページがプログラムされることができる。
【００３５】
図１には、各レジスタユニット１４１〜１４ｎが２個のレジスタで構成されると図示されている。しかし、フラッシュメモリ装置の特性及び用途によって、各レジスタユニット１４１〜１４ｎを構成するレジスタの数を変更できることは自明である。
【００３６】
図２は、図１に図示されたＮＡＮＤフラッシュメモリ装置１００で、本発明によるプログラムが行われる方法を示すダイアグラムである。図２を参照すると、複数のページのプログラムはループ単位で分けて行われる。先ず、第１ループＬｏｏｐ１で、複数のページに順次にプログラム電圧ＶＰＧＭが印加される。図２では、第１ページから第ＮページＮまでプログラム電圧ＶＰＧＭが順次に印加される。
【００３７】
第２ループＬｏｏｐ２では、各ページに対する検証及びプログラム動作が順次に行われる。この時、メモリセルに印加されるプログラム電圧ＶＰＧＭ＋αは以前ループのプログラム電圧ＶＰＧＭより高い電圧である。そして、第２ページが検証され、検証された結果に基づいて第２ページがプログラムされる。この過程は複数のページに対して順次に行われる。このような方法で、第１ページがプログラムされた後、最後のページがプログラムされるまで要求される時間はｔ０である。
【００３８】
第２ループＬｏｏｐ２で行われた動作は全てのページがプログラムパスされるまで繰り返される。図２には、プログラム動作が第ＭループＬｏｏｐＭまで繰り返されると図示されている。
以下で、第２ループＬｏｏｐ２から第ＭループＬｏｏｐＭまで繰り返して行われるプログラム動作を反復ループプログラムと称する。そして、本発明によって複数のページがループ単位で順次にプログラムされる動作をループプログラムと称する。そして、ループプログラムされるページをループページと称する。
【００３９】
反復ループプログラム方法が使われれば、メモリセルがプログラムされた後検証動作が行われるまでｔ０の時間差が存在する。例えば、第２ループＬｏｏｐ２でプログラムされた第１ページは第３ループＬｏｏｐ３で検証される。この時、他のページの検証及びプログラム動作に消費された時間はｔ０である。即ち、第１ページにプログラム電圧が印加された後、検証電圧が印加されるまではｔ０の時間差が存在する。
【００４０】
即ち、プログラムされたメモリセルのしきい値電圧は、ｔ０時間の間安定化される。時間ｔ０がメモリセルのしきい値電圧が十分安定化される程度の時間に決定されると、検証動作が行われてもエラーは発生しない。従って、時間ｔ０はメモリセルのしきい値電圧が十分安定化される時間に決定される。
【００４１】
時間ｔ０は、一ループでプログラムされるページ数によって決定される時間である。従って、時間ｔ０がしきい値電圧の安定化時間より大きいか等しくなるようにループページの数が決定される。
【００４２】
図３は、図２に図示されたプログラムが行われる過程を示すフローチャートである。図３を参照すると、プログラム過程はステップ１００とステップ２００で構成される。ステップ１００は、図２に図示された第１ループＬｏｏｐ１のプログラムを示す。ステップ２００は、図２に図示された第２ループＬｏｏｐ２から第ＭループＬｏｏｐＭまでの反復ループプログラムを示す。
【００４３】
第１ループＬｏｏｐ１プログラムを示すステップ１００は、ステップ１１０〜ステップ１３０を含む。ステップ１１０では、プログラムされる複数のページのうち第１ページが選択される。そして、ステップ１２０では、選択されたページがプログラムされる。
【００４４】
ステップ１３０では、選択されたページがループページのうち最後のページであるか判定される。選択されたページが最後のページであれば、反復ループプログラムＳ２００が行われる。選択されたページが最後のページでなければ、ステップ１４０が行われる。ステップ１４０では、次のページが選択され、以後ステップ１２０〜ステップ１４０の過程が繰り返される。即ち、ステップ１００では、全てのループページが順次に一回ずつプログラムされる。
【００４５】
反復ループプログラムを示すステップ２００は、ステップ２１０〜ステップ２７０を含む。ステップ２１０では、ループページのうち第１ページが選択される。そしてステップ２２０で、選択されたページが検証される。
【００４６】
ステップ２３０では、選択されたページがプログラムパスであるか判定される。選択されたページがプログラムパスであれば、ステップ２４０が行われる。ステップ２４０で、全てのループページがプログラムパスであれば、ループプログラムは終了する。ループページのうちプログラムフェイルのページが存在すれば、ステップ２６０が行われる。このような判別動作は、制御回路１８０（図１参照）で行われる。各ループページがプログラムパスであるか否かは制御回路１８０内の所定の格納装置に格納される。制御回路１８０は、所定の格納装置に格納されたデータに基づいて、全てのループページがプログラムパスであるか否かを判別する。
【００４７】
ステップ２３０で、選択されたページがプログラムフェイルであれば、ステップ２５０が行われる。ステップ２５０では、選択されたページがプログラムされる。次に、ステップ２６０が行われる。
【００４８】
ステップ２６０では、選択されたページがループページのうち最後のページであるか判定される。選択されたページが最後のページでなければ、次のページが選択されて（ステップ２７０）ステップ２２０が行われる。選択されたページが最後のページであれば、第１ページが選択される（ステップ２１０）。以後ステップ２２０〜ステップ２７０で、選択されたページに対する検証及びプログラム動作が繰り返して行われる。
【００４９】
要約すると、反復ループプログラムを示すステップ２００では、一ページが選択され、選択されたページは検証される。検証結果としてプログラムパスであれば、別途の動作なしに次のページが選択される。プログラムフェイルであれば、選択されたページに対してプログラムが行われ、次のページが選択される。反復ループプログラムは、全てのループページがプログラムパスされるまで繰り返される。ループプログラム過程で、一ループが行われる度に、プログラム電圧は漸進的に増加する。
【００５０】
複数のページをループプログラムすることは、メモリセルのしきい値電圧が十分安定かされた後に検証動作を行うためである。ところが、プログラムパスされたページがループプログラムから除かれると、一ループのプログラムが行われる時間は減少する。即ち、ループ動作時間はメモリセルのしきい値電圧が安定化されるに十分ではない時間になる。従って、検証及びプログラムエラーが発生する。これを防止するために、プログラムパスされたページにもループプログラム動作がずっと行われる。
【００５１】
上述したように、各メモリセルは、プログラムされてから所定の時間が経った後に検証される。即ち、メモリセルのしきい値電圧が安定化された後に検証動作が行われる。従って、しきい値電圧の不安定により発生する検証エラー及びプログラムエラーは防止される。
【００５２】
図４は、図３に図示されたプログラム過程で、図１に図示されたメモリ装置のレジスタ１４０が動作する方法を示すダイアグラムである。図４は、セルアレイ１１０（図１参照）のうち二つのページ、ページバッファ１３０（図１参照）及びレジスタ１４０（図１参照）を使用して選択されたページがプログラムされる過程（ステップ１２０、図３参照）を示す。図４に図示された矢印はデータの流れを表す。図４では、プログラムされるループページは２個であり、レジスタユニット１４１〜１４ｎ（図１参照）は２個のレジスタを有すると仮定した。
【００５３】
図４を参照すると、ステップ１２１で、レジスタＡに第１ページのデータが伝達される。ステップ１２２では、第２ページのデータがレジスタＢに伝達される。同時に、レジスタＡに格納されていた第１ページのデータはページバッファに伝達される。そして、ページバッファに格納されたデータに基づいて、第１ページがプログラムされる。
【００５４】
ステップ１２３では、レジスタＢに格納された第２ページのデータがページバッファに伝達される。そして、ページバッファに格納されたデータに基づいて、第２ページがプログラムされる。
以後は反復ループプログラムが行われる。反復ループプログラムで第１ページが検証及びプログラムされる場合、レジスタＡに格納された第１ページのデータがページバッファに伝達する。第２ページが検証及びプログラムされる場合、レジスタＢに格納された第２ページのデータがページバッファに伝達される。
【００５５】
このように、一つのレジスタはページバッファにデータを伝達して、該当ページのプログラム動作が行われるようにする。同時に、もう一つのレジスタはプログラムするページのデータを外部から受信する。そして、各ループページのデータがレジスタに全て格納されると、検証及びプログラムするページのデータはレジスタからページバッファに伝達される。
【００５６】
レジスタがない場合、５１２バイト（ｂｙｔｅ）のページバッファに８ビット（ｂｉｔ）単位のデータが順次に伝達される。しかし、レジスタを使用すれば、データは５１２バイトのレジスタから５１２バイトのページバッファに伝達される。
【００５７】
さらに、一つのレジスタは外部からデータを受信し、同時に他のレジスタはプログラム動作のためのデータをページバッファに伝達する。従って、レジスタを使用すれば、外部からデータを受信するための待機時間が減少する。即ち、一ページをプログラムした後、他のページをプログラムするために要求される時間が減少する。結局、ループプログラム動作で、さらに多くのページがループプログラムされることができる。
【００５８】
図４に図示された実施の形態とは異なって、レジスタとループページの数とが異なる場合がある。レジスタがループページより多い場合、図４に図示された方法が適用される。しかし、レジスタがループページより少ない場合、ループプログラムは他の方法で行われる。
【００５９】
図５は、図３に図示されたプログラム過程で、図１に図示されたメモリ装置のレジスタ１４０が動作する方法を示すダイアグラムである。図５は図４と同様に、セルアレイ１１０（図１参照）のうち三つのページ、ページバッファ１３０（図１参照）及びレジスタ１４０（図１参照）を使用して選択されたページがプログラムされる過程（ステップ１２０、図３参照）を示す。図５に図示された矢印はデータの流れを表す。図５では、プログラムされるループページは３個であり、レジスタユニット１４１〜１４ｎ（図１参照）は２個のレジスタを有すると仮定した。
【００６０】
図５を参照すると、ステップ１２５で、第１ページのデータが外部からレジスタＡＡに伝達される。ステップ１２６では、第２ページのデータが外部からレジスタＢＢに伝達される。同時に、レジスタＡに格納された第１ページのデータがページバッファに伝達される。そして、ページバッファに格納されたデータに基づいて、第１ページがプログラムされる。
【００６１】
ステップ１２７では、第３ページのデータが外部からレジスタＡに伝達される。同時に、レジスタＢに格納された第２ページのデータがページバッファに伝達される。そして、ページバッファに格納されたデータに基づいて、第２ページがプログラムされる。
【００６２】
ステップ１２８では、第１ページのデータが外部からレジスタＢに伝達される。同時に、レジスタＡに格納された第３ページのデータがページバッファに伝達される。そして、ページバッファに格納されたデータに基づいて、第３ページがプログラムされる。
【００６３】
以後は、反復ループプログラムが行われる。反復ループプログラムで第１ページが検証及びプログラムされる場合、レジスタＢに格納された第１ページのデータがページバッファに伝達される。同時に、次のページの検証及びプログラム動作のために必要な第２ページのデータが、外部からレジスタＡに伝達される。
【００６４】
第２ページが検証及びプログラムされる場合、レジスタＡに格納された第２ページのデータがページバッファに伝達される。同時に、次のページの検証及びプログラム動作のために必要な第３ページのデータが、外部からレジスタＢに伝達される。  第３ページが検証及びプログラムされる場合、レジスタＢに格納された第３ページのデータがページバッファに伝達される。同時に、次のページの検証及びプログラム動作のために必要な第１ページのデータが外部からレジスタＡに伝達される。
【００６５】
このように、一つのレジスタはページバッファにデータを伝達して、該当ページの検証及びプログラム動作が行われるようにする。同時に、もう一つのレジスタは次の順番に検証及びプログラムするページのデータを外部から受信する。
【００６６】
レジスタがない場合、５１２バイトのページバッファに８ビット単位のデータが順次に伝達される。しかし、レジスタを使用すれば、データは５１２バイトのレジスタから５１２バイトのページバッファに伝達される。
【００６７】
さらに、一つのレジスタは外部からデータを受信し、同時に他のレジスタはプログラム動作のためのデータをページバッファに伝達する。従って、レジスタを使用することで、外部からデータを受信するための待機時間が減少する。即ち、一ページをプログラムした後、他のページをプログラムするために要求される時間が減少する。結局、ループプログラム動作で、さらに多くのページがループプログラムされることができる。
【００６８】
上述した実施の形態とは異なって、プログラムするページの数がループプログラムで要求されるループページの数より少ない場合がある。例えば、一ループのプログラムがしきい値電圧が安定化されるように行われるためには、５個のループページが必要だと仮定する。ところが、メモリブロックでプログラムするページは３個である場合がある。
【００６９】
このような場合には、仮想のページが適用される。即ち、プログラムパスされた２個のページが存在すると仮定する。そして、仮想のページを含めて、合計５個のページに対してループプログラムが行われる。プログラムパスされたページにはデータローディング及び検証が行われるだけで、プログラムは行われない。従って、ループプログラム動作には影響を与えることなく、必要なループページの数が充足される。
【００７０】
上述した実施の形態では、ループプログラムを使用して各ページがプログラムされた。しかし、フラッシュメモリ装置のプログラムには、従来のプログラム方法とループプログラム方法とが一緒に使用されることができる。
【００７１】
まず、プログラムされたメモリセルで要求されるしきい値電圧（例えば、０．７Ｖ）より低い電圧（例えば、０Ｖ）が検証電圧に決定される。そして、決定された検証電圧に基づいて、メモリセルが従来の方法でプログラムされる。この時、メモリセルのしきい値電圧は０Ｖの近くで分布される。以後、本来のしきい値電圧（０．７Ｖ）が検証電圧に決定され、メモリセルがループプログラム方法でプログラムされる。このように、メモリセルのプログラムに従来のプログラム方法とループプログラム方法が併用することができる。
【００７２】
上述した実施の形態では、レジスタに格納されたデータに基づいてプログラムが行われる。同時に他のレジスタには外部から伝達されたデータが格納される。しかし、レジスタの数がループページの数より多いか同じ場合には、他の方法を使用できる。ループページのプログラムデータがレジスタに全て格納された後、メモリセルのプログラムが行われることができる。
【００７３】
本発明によるプログラム方法は、マルチレベルセル（ＭＬＣ）のプログラムにも適用される。まず、下位ビット（ＬＳＢ）がループプログラムされる。そして、プログラムされた下位ビット（ＬＳＢ）がプログラムされたデータ及び上位ビット（ＭＳＢ）をプログラムするデータに基づいて、上位ビート（ＭＳＢ）がループプログラムされる。下位ビット（ＬＳＢ）及び上位ビット（ＭＳＢ）のプログラム順序は可逆的である。このような方法で、マルチレベルセル（ＭＬＣ）でしきい値電圧の不安定によって発生する検証及びプログラムエラーが防止される。
【００７４】
上述した実施の形態では、反復ループプログラムで各ループページの検証動作とプログラム動作が順次に行われる。しかし、ループプログラムはそれとは異なる方法で行うことができる。
図６は、本発明によるプログラム方法を示すダイアグラムである。図６を参照すると、複数のページのプログラムはループ単位で分けて行われる。まず、第１ループＬｏｏｐ１で、複数のページに順次にプログラム電圧ＶＰＧＭが印加される。図６では、第１ページから第Ｎページまでプログラム電圧ＶＰＧＭが順次に印加される。そして、複数のページに順次に検証電圧が印加される。
【００７５】
第２ループでも複数のページが順次にプログラムされた後、順次に検証される。但し、第２ループで使用されたプログラム電圧ＶＰＭＧ＋αは第１ループＬｏｏｐ１のプログラム電圧ＶＰＧＭより高い電圧である。このような方法で、全てのループページがプログラムパスされるまでループプログラムが繰り返される。図６には、ループＭＬｏｏｐＭまで繰り返されることが図示されている。
【００７６】
ループプログラム方法を使用すれば、メモリセルがプログラムされた後、検証動作が行われるまでｔ０の時間差が存在する。即ち、プログラムされたメモリセルのしきい値電圧はｔ０時間の間安定化される。時間ｔ０がメモリセルのしきい値電圧が十分安定化される程度の時間に決定されると、検証動作が行われてもエラーは発生しない。従って、時間ｔ０はメモリセルのしきい値電圧が安定化されるに十分な時間に決定される。そして、時間ｔ０に基づいて、ループページの数が決定される。
【００７７】
図７は、図６に図示されたプログラムが行われる過程を示すフローチャートである。
図７を参照すると、ステップ３１０で、ループページのうち第１ページが選択される。そして、選択されたページがプログラムされる（ステップ３２０）。
【００７８】
ステップ３３０では、選択されたページがループページのうち最後のページであるか判定される。選択されたページが最後のページであれば、ステップ３４０が行われる。選択されたページが最後のページでなければ、次のページが選択される（ステップ３３５）。そして、ステップ３２０〜ステップ３３５が繰り返して行われる。ステップ３２０〜ステップ３３５は、最後のページがプログラムされるまで繰り返される。即ち、全てのループページが順次にプログラムされる。
【００７９】
ステップ３４０では、また第１ページが選択される。ステップ３５０では、選択されたページが検証される。そして、検証された結果がレジスタ１４０（図１参照）に格納される。
【００８０】
ステップ３６０では、選択されたページがプログラムパスであるか判定される。選択されたページがプログラムパスであれば、ステップ３７０が行われる。ステップ３７０では、全てのループページがプログラムパスであるか判定される。全てのループページがプログラムパスであれば、プログラムは終了する。プログラムフェイルであるページが存在すれば、ステップ３８０が行われる。この判別動作は、制御回路１８０（図１参照）で行われる。各ループページがプログラムパスであるか否かは、制御回路１８０内の所定の格納装置に格納される。制御回路１８０は、所定の格納装置に格納されたデータに基づいて、全てのループページがプログラムパスであるか否かを判別する。
【００８１】
ステップ３６０で、選択されたページがプログラムフェイルであれば、ステップ３８０が行われる。ステップ３８０では、選択されたページがループページのうち最後のページであるか判定される。選択されたページが最後のページであれば、ステップ３１０が行われる。選択されたページが最後のページでなければ、次のページが選択される（ステップ３８５）。そして、ステップ３５０が行われる。
【００８２】
要約すると、ループページは順次に検証される。このような過程で、全てのページがプログラムパスであれば、ループプログラムは終了する。検証された結果はレジスタに格納される。そして、最後のページまで検証が完了すると、ループページはまた順次にプログラムされる。プログラムはレジスタに格納されたデータに基づいて行われる。
【００８３】
このような方法で、各ループページが順次にプログラムされ、以後、各ループページが順次に検証される方法を通してもループプログラムが行われる。前記プログラム過程で、図４で上述した実施の形態と同様に、レジスタのうち一つは外部からプログラムするページのデータを受信する。同時に、他のレジスタはプログラムするページのデータをページバッファに伝達する。詳細な動作過程は、図２を参照して上述した実施の形態での場合と同様であり、重複した説明を避けるためにここでは詳細な説明を省略する。
【００８４】
上述した実施の形態で、本発明によるＮＡＮＤフラッシュメモリ装置１００（図１参照）は複数のレジスタを含む。しかし、本発明によるＮＡＮＤフラッシュメモリ装置はレジスタを使用せず具現されることもできる。
【００８５】
図８は、本発明によるＮＡＮＤフラッシュメモリ装置２００を示すブロック図である。
図８を参照すると、本発明によるＮＡＮＤフラッシュメモリ装置２００は、セルアレイ２１０、行デコーダ２２０、ページバッファ２３０、列選択器２５０、入出力回路２６０、パス／フェイル回路２７０及び制御回路２８０で構成される。
【００８６】
図８に図示されたＮＡＮＤフラッシュメモリ装置２００で、レジスタ（１４０、図３参照）及びページバッファ（１３０、図３参照）を除いた他のブロックは、図３に図示されたフラッシュメモリ装置のブロックと同じ機能をする。従って、説明の重複を避けるために、ここでは詳細な説明を省略する。
【００８７】
図８に図示されたＮＡＮＤフラッシュメモリ装置２００の場合、ページバッファ２３０がレジスタ（１４０、図３参照）の役割をする。
ページバッファ２３０は、セルアレイ２１０及び列選択器２４０に連結される。ページバッファ２３０は、複数のページバッファユニット２３１〜２３ｎで構成される。それぞれのページバッファユニット２３１〜２３ｎは、それぞれのビットラインＢＬ１〜ＢＬｎに連結される。
【００８８】
ページバッファユニット２３１〜２３ｎは、複数のページバッファＡ〜Ｄで構成される。図８には、それぞれのページバッファユニット１４１〜１４ｎが４個のページバッファで構成されている。しかし、フラッシュメモリ装置の用途及び特性によって、ページバッファユニット２３１〜２３ｎを構成するページバッファの数が変更できることは自明である。
【００８９】
図８に図示されたメモリ装置２００の場合、外部から入力されるデータの格納及びループプログラム動作を同時に行うために、複数のページバッファ２３０が使用される。即ち、図１に図示されたメモリ装置１００（図１参照）のレジスタ１４０（図１参照）の機能が複数のページバッファ２３０により行われる。従って、外部からデータを受信する装置は、レジスタ１４０からページバッファ２３０に取り替えられる。そして、レジスタ１４０に格納されたデータをページバッファ１３０（図１参照）に伝達する過程は、複数のページバッファ２３０のうち一つを選択する過程に取り替えられる。
【００９０】
レジスタ１４０の機能がページバッファ２３０に取り替えられたこと以外のプログラム方法は、図１を参照して上述したフラッシュメモリ装置のプログラム方法と同一である。従って、重複した説明を避けるために、ここでは詳細な説明を省略する。
【００９１】
図９は、本発明のフラッシュメモリ装置を備えるメモリカードを例示的に示すブロック図である。図９を参照すると、高容量のデータ格納能力を支援するためのメモリカード３００には、本発明によるフラッシュメモリ装置３１０が装着される。本発明によるメモリカード３００は、ホスト（Ｈｏｓｔ）とフラッシュメモリ装置３１０との間の諸般のデータ交換を制御するメモリコントローラ３２０を含む。
【００９２】
ＳＲＡＭ３２１は、プロセッシングユニット３２２の動作メモリとして使用される。ホストインタフェース３２３は、メモリカード３００と接続されるホストのデータ交換プロトコルを備える。エラー訂正ブロック３２４は、マルチビットフラッシュメモリ装置３１０から読み出されたデータに含まれるエラーを検出及び訂正する。メモリインタフェース３２５は、本発明のフラッシュメモリ装置３１０とインタフェースする。
【００９３】
プロセッシングユニット３２２は、メモリコントローラ３２０のデータ交換のための諸般の制御動作を行う。図面には図示されていないが、本発明によるメモリカード３００には、ホストとのインタフェースのためのコードデータを格納するＲＯＭ（図示せず）などをさらに提供できることは、当分野の通常的な知識を習得した者に自明である。
【００９４】
図１０は、本発明によるフラッシュメモリ装置を含むメモリシステムを示すブロック図である。図１０を参照すると、メモリシステム４００は、フラッシュメモリシステム４１０、電源４２０、中央処理装置４３０、ＲＡＭ４４０、ユーザインタフェース４５０及びシステムバス４６０を含む
【００９５】
フラッシュメモリシステム４１０は、メモリコントローラ４１２及びフラッシュメモリ装置４１１を含む。フラッシュメモリシステム４１０は、システムバス４６０を介して、電源４２０、中央処理装置４３０、ＲＡＭ４４０及びユーザインタフェース４５０に電気的に連結される。フラッシュメモリ装置４１１には、ユーザインタフェース４５０を介して提供されるか、または中央処理装置４３０によって処理されたデータがメモリコントローラ４１２を介して格納される。
【００９６】
もしフラッシュメモリシステム４１０が半導体ディスク装置ＳＳＤに装着される場合、システム４００のブーティング速度が画期的に早くなるであろう。図面には図示されていないが、本発明によるシステムにはアプリケーションチップセット（Ａｐｐｌｉｃａｔｉｏｎ  Ｃｈｉｐｓｅｔ）、カメライメージプロセッサ（Ｃａｍｅｒａ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｏｒ）などをさらに提供できることは、当分野の通常的な知識を習得した者に自明である。
【００９７】
上述したように、本発明によるＮＡＮＤフラッシュメモリ装置のプログラム方法は、一ページで行われるプログラム動作と検証動作との間に、他のページに対するプログラム動作及び検証動作が行われることを特徴とする。まず、複数のページがプログラム単位に決定される。そして、決定された各ページに対して順次にプログラム電圧が印加される。以後、複数のページのうち一ページに対して順次に検証電圧とプログラム電圧が印加される。この動作は複数のページに対して順次に行われる。
【００９８】
また、本発明によるＮＡＮＤフラッシュメモリ装置のプログラム方法では、複数のページがプログラム単位に決定される。そして、決定された複数のページに対して順次にプログラム電圧が印加される。以後、複数のページに対して順次に検証電圧が印加される。
【００９９】
本発明によるＮＡＮＤフラッシュメモリ装置のプログラム方法によると、一ページのプログラム動作と検証動作との間に所定の時間差が存在する。この時間の間、メモリセルのしきい値電圧は安定化される。
【０１００】
本発明の詳細な説明では具体的な実施の形態について説明したが、本発明の範囲と技術的思想から逸脱しない限り様々な変形ができることは自明である。従って、本発明の範囲は、上述の実施の形態に限定されてはならず、特許請求の範囲だけでなく本発明の特許請求の範囲と均等なものにより定まるべきである。
【図面の簡単な説明】
【０１０１】
【図１】本発明によるＮＡＮＤフラッシュメモリ装置を示すブロック図である。
【図２】図１に図示されたＮＡＮＤフラッシュメモリ装置で、本発明によるプログラムが行われる方法を示すダイアグラムである。
【図３】図２に図示されたプログラムが行われる過程を示すフローチャートである。
【図４】図３に図示されたプログラム過程で、図１に図示されたメモリ装置のレジスタが動作する方法を示すダイアグラムである。
【図５】図３に図示されたプログラム過程で、図１に図示されたメモリ装置のレジスタが動作する方法を示すダイアグラムである。
【図６】本発明によるプログラム方法を示すダイアグラムである。
【図７】図６に図示されたプログラムが行われる過程を示すフローチャートである。
【図８】本発明によるＮＡＮＤフラッシュメモリ装置を示すブロック図である。
【図９】本発明のフラッシュメモリ装置を備えるメモリカードを例示的に示すブロック図である。
【図１０】本発明によるフラッシュメモリ装置を含むメモリシステムを示すブロック図である。
【符号の説明】
【０１０２】
１００  ＮＡＮＤフラッシュメモリ装置
１１０  セルアレイ
１２０  行デコーダ
１３０  ページバッファ
１４０  レジスタ
１５０  列選択器
１６０  入出力回路
１７０  パス／フェイル回路
１８０  制御回路
【図１】
2009043397.tif 000003
【図２】
2009043397.tif 000004
【図３】
2009043397.tif 000005
【図４】
2009043397.tif 000006
【図５】
2009043397.tif 000007
【図６】
2009043397.tif 000008
【図７】
2009043397.tif 000009
【図８】
2009043397.tif 000010
【図９】
2009043397.tif 000011
【図１０】
2009043397.tif 000012