(57)【要約】      （修正有）【課題】  マルチ-レベルセルのプログラム制御回路及びそのプログラム制御方法において、進行されるプログラムサイクルの回数によりワードラインバイアス電圧の供給時間を選択的に調節し、オーバー-プログラムを防止し、プログラム時間を減少する。【解決手段】  第１〜第３の周期制御信号のうちの一つに応答し、第１〜第３のクロック信号のうちの一つと、第１〜第３の設定時間のうちの一つの間にワードライン電圧発生器により発生するプログラムバイアス電圧をワードラインに連結されるＸ−デコーダに出力したり、または第４の設定時間の間にワードライン電圧発生器により発生する検証バイアス電圧をＸ−デコーダに出力する電圧選択回路とを含むことを特徴とするフラッシュメモリ装置のプログラム制御回路として構成したことを特徴とする。【選択図】      図２
2007012237.tif 000002
【特許請求の範囲】
【請求項１】
ワードラインとビットラインを共有する複数のマルチ−レベルセルを含むフラッシュメモリ装置のプログラム制御回路において、
検証データ比較器から受信される比較信号に応答し、ビットラインマスキング(masking)信号とステップ制御信号を発生し、前記ステップ制御信号の発生回数に基づいて第１〜第３の周期制御信号のうちの一つと、第１または第２の検証制御信号を出力し、前記ビットラインマスキング信号を前記ビットラインに連結されるページバッファ回路に出力し、前記ステップ制御信号をワードライン電圧発生器に出力する制御部と、
前記第１〜第３の周期制御信号のうちの一つに応答し、第１〜第３のクロック信号のうちの一つと、反転した第１〜第３のクロック信号のうちの一つを発生するクロック信号発生器と、
前記クロック信号発生器から受信される第１〜第３のクロック信号のうちの一つと、反転した第１〜第３のクロック信号のうちの一つに応答し、第１〜第３の設定時間のうちの一つの間に前記ワードライン電圧発生器により発生するプログラムバイアス電圧を前記ワードラインに連結されるＸ−デコーダに出力したり、または第４の設定時間の間に前記ワードライン電圧発生器により発生する検証バイアス電圧を前記Ｘ−デコーダに出力する電圧選択回路と、
を含むことを特徴とするフラッシュメモリ装置のプログラム制御回路。
【請求項２】
前記制御部は、前記ステップ制御信号の発生回数が第Ｉ（Ｉは整数)回に到達するまで前記第１の周期制御信号と前記第１の検証制御信号を出力し、前記ステップ制御信号の発生回数が第Ｉ＋１回から第Ｊ（ＪはＩより大きい整数)回に到達するまで前記第２の周期制御信号と前記第１または第２の検証制御信号を出力し、前記ステップ制御信号の発生回数が第Ｊ＋１回から第Ｋ（ＫはＪより大きい整数)回に到達するまで前記第３の周期制御信号と前記第２の検証制御信号を出力することを特徴とする請求項１に記載のフラッシュメモリ装置のプログラム制御回路。
【請求項３】
前記クロック信号発生器は、前記第１の周期制御信号を受信する時、前記第１のクロック信号と前記反転した第１のクロック信号を発生し、前記第２の周期制御信号を受信する時、前記第２のクロック信号と前記反転した第２のクロック信号を発生し、前記第３の周期制御信号を受信する時、前記第３のクロック信号と前記反転した第３のクロック信号を発生することを特徴とする請求項２に記載のフラッシュメモリ装置のプログラム制御回路。
【請求項４】
前記プログラムバイアス電圧はプログラム電圧とパス電圧を含み、前記検証バイアス電圧は第１の検証電圧と、前記第１の検証電圧よりも大きい第２の検証電圧を含み、
前記ワードライン電圧発生器は前記ステップ制御信号を受信するごとに前記プログラム電圧を設定されたステップ電圧だけ増加させ、前記第１の検証制御信号に応答して前記第１の検証電圧を発生し、前記第２の検証制御信号に応答して前記第２の検証電圧を発生することを特徴とする請求項２に記載のフラッシュメモリ装置のプログラム制御回路。
【請求項５】
前記電圧選択回路は、
前記プログラム電圧と前記Ｘ−デコーダとの間に連結され、前記第１〜第３のクロック信号のうちの一つに応答してオンまたはオフされる第１のスイッチング回路と、
前記パス電圧と前記Ｘ−デコーダとの間に連結され、前記第１〜第３のクロック信号のうちの一つに応答してオンまたはオフされる第２のスイッチング回路と、
前記第１または第２の検証電圧と前記Ｘ−デコーダとの間に連結され、前記反転した第１〜第３のクロック信号のうちの一つに応答してオンまたはオフされる第３のスイッチング回路と、
を含むことを特徴とする請求項４に記載のフラッシュメモリ装置のプログラム制御回路。
【請求項６】
前記第３のクロック信号の一周期は前記第２のクロック信号の一周期よりよりも大きく、前記第２のクロック信号の一周期は前記第１のクロック信号の一周期よりも大きく、
前記第１の設定時間は前記第１のクロック信号に応答し、前記第１及び第２のスイッチング回路が同時にオン状態で維持された時間であり、前記第２の設定時間は前記第２のクロック信号に応答し、前記第１及び第２のスイッチング回路が同時にオン状態で維持された時間であり、前記第３の設定時間は前記第３のクロック信号に応答し、前記第１及び第２のスイッチング回路が同時にオン状態で維持された時間であり、
前記第３の設定時間が前記第２の設定時間よりも長く、前記第２の設定時間が前記第１の設定時間よりも長いことを特徴とする請求項５に記載のフラッシュメモリ装置のプログラム制御回路。
【請求項７】
前記ページバッファ回路は前記ビットラインマスキング信号に応答し、前記ビットラインのうちの一部または全体にプログラム禁止のためのビットラインバイアス電圧を供給することを特徴とする請求項１に記載のフラッシュメモリ装置のプログラム制御回路。
【請求項８】
ワードラインとビットラインを共有する複数のマルチ−レベルセルを含むフラッシュメモリ装置のプログラム制御方法において、
第１の周期制御信号に応答し、第１〜第Ｉ（Ｉは整数）のプログラムサイクルのそれぞれに対し、前記ワードラインのうちから選択されたワードラインに第１の設定時間の間、ステップ電圧単位で増加するプログラム電圧を供給し、選択されたページの前記マルチ−レベルセルをプログラムする第１のプログラム段階と、
第２の周期制御信号に応答し、第Ｉ＋１〜第Ｊ（ＪはＩより大きい整数)のプログラムサイクルのそれぞれに対し、前記選択されたワードラインに第２の設定時間の間、前記第１のプログラム段階で最終的に増加したプログラム電圧である、第１の最終プログラム電圧を前記ステップ電圧単位で増加させながら供給し、前記選択されたページの前記マルチ−レベルセルをプログラムする第２のプログラム段階と、
第３の周期制御信号に応答し、第Ｊ＋１〜第Ｋ（ＫはＪより大きい整数)のプログラムサイクルのそれぞれに対し、前記選択されたワードラインに第３の設定時間の間、前記第２のプログラム段階で最終的に増加したプログラム電圧である、第２の最終プログラム電圧を前記ステップ電圧単位で増加させながら供給し、前記選択されたページの前記マルチ−レベルセルをプログラムする第３のプログラム段階と、
を含むことを特徴とするフラッシュメモリ装置のプログラム制御方法。
【請求項９】
前記第３の設定時間が前記第２の設定時間よりも長く、前記第２の設定時間が前記第１の設定時間よりも長いことを特徴とする請求項８に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１０】
前記第１のプログラム段階は、
前記選択されたワードラインに前記第１の設定時間の間、前記プログラム電圧を供給し、前記選択されたページの前記マルチ−レベルセルをプログラムする段階と、
前記選択されたワードラインに第４の設定時間の間、検証電圧を供給し、前記選択されたページの前記マルチ−レベルセルを検証する段階と、
プログラムサイクルの回数が前記Ｉなのか否かを判断する段階と、
前記プログラムサイクルの回数が前記Ｉでない時、前記プログラム電圧を前記ステップ電圧だけ増加させた後、前記プログラム段階乃至前記判断段階を反復実行する段階と、
前記プログラムサイクルの回数が前記Ｉである時、前記第１のプログラム動作を停止する段階と、
を含むことを特徴とする請求項９に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１１】
前記マルチ−レベルセルをプログラムする段階は、
制御部により、前記第１の周期制御信号を発生する段階と、
前記第１の周期制御信号に応答し、クロック信号発生器によりクロック信号と反転したクロック信号を発生する段階と、
前記クロック信号に応答し、電圧選択回路により、前記第１の設定時間の間、Ｘ−デコーダに前記プログラム電圧を供給し、前記Ｘ−デコーダが前記選択されたワードラインに前記プログラム電圧を供給するようにする段階と、
を含むことを特徴とする請求項１０に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１２】
前記マルチ−レベルセルを検証する段階は、
検証データ比較器により、前記選択されたページのマルチ−レベルセルの読み出しデータに対応する検証データを基準データにそれぞれ比較し、比較信号を出力する段階と、
前記比較信号に応答し、制御部によりビットラインマスキング信号を出力する段階と、
前記ビットラインマスキング信号に応答し、前記ビットラインに連結されたページバッファ回路により、前記マルチ−レベルセルのうち、前記第１のプログラム動作が完了したマルチ−レベルセルが連結されたビットラインにプログラム禁止のためのビットラインバイアス電圧を供給する段階と、
を含むことを特徴とする請求項１０に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１３】
前記第２のプログラム段階は、
前記第１の最終プログラム電圧を前記ステップ電圧だけ増加させる段階と、
前記選択されたワードラインに前記第２の設定時間の間、前記増加したプログラム電圧を供給し、前記選択されたページの前記マルチ−レベルセルをプログラムする段階と、
前記選択されたワードラインに第４の設定時間の間、第１または第２の検証電圧を供給し、前記選択されたページの前記マルチ−レベルセルを検証する段階と、
プログラムサイクルの回数が前記Ｊなのか否かを判断する段階と、
前記プログラムサイクルの回数が前記Ｊでない時、前記増加したプログラム電圧を前記ステップ電圧だけ増加させた後、前記プログラム段階乃至前記判断段階を反復実行する段階と、
前記プログラムサイクルの回数が前記Ｊである時、前記第２のプログラム動作を停止する段階と、
を含むことを特徴とする請求項９に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１４】
前記マルチ−レベルセルをプログラムする段階は、
制御部により、前記第２の周期制御信号を発生する段階と、
前記第２の周期制御信号に応答し、クロック信号発生器によりクロック信号と反転したクロック信号を発生する段階と、
前記クロック信号に応答し、電圧選択回路により、前記第２の設定時間の間、前記Ｘ−デコーダに前記増加したプログラム電圧を供給し、前記Ｘ−デコーダが前記選択されたワードラインに前記増加したプログラム電圧を供給するようにする段階と、
を含むことを特徴とする請求項１３に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１５】
前記マルチ−レベルセルを検証する段階は、
検証データ比較器により、前記選択されたページのマルチ−レベルセルの読み出しデータに対応する検証データを基準データにそれぞれ比較し、比較信号を出力する段階と、
前記比較信号に応答し、制御部によりビットラインマスキング信号を出力する段階と、
前記ビットラインマスキング信号に応答し、前記ビットラインに連結されたページバッファ回路により、前記マルチ−レベルセルのうち、前記第２のプログラム動作が完了したマルチ−レベルセルが連結されたビットラインにプログラム禁止のためのビットラインバイアス電圧を供給する段階と、
を含むことを特徴とする請求項１３に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１６】
前記第３のプログラム段階は、
前記第２の最終プログラム電圧を前記ステップ電圧だけ増加させる段階と、
前記選択されたワードラインに前記第３の設定時間の間、前記増加したプログラム電圧を供給し、前記選択されたページの前記マルチ−レベルセルをプログラムする段階と、
前記選択されたワードラインに第４の設定時間の間、検証電圧を供給し、前記選択されたページの前記マルチ−レベルセルを検証する段階と、
プログラムサイクルの回数が前記Ｋなのか否かを判断する段階と、
前記プログラムサイクルの回数が前記Ｋでない時、前記増加したプログラム電圧を前記ステップ電圧だけ増加させた後、前記プログラム段階乃至前記判断段階を反復実行する段階と、
前記プログラムサイクルの回数が前記Ｋである時、前記第３のプログラム動作を停止する段階と、
を含むことを特徴とする請求項９に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１７】
前記マルチ−レベルセルをプログラムする段階は、
制御部により、前記第３の周期制御信号を発生する段階と、
前記第３の周期制御信号に応答し、クロック信号発生器によりクロック信号と反転したクロック信号を発生する段階と、
前記クロック信号に応答し、電圧選択回路により、前記第３の設定時間の間、Ｘ−デコーダに前記増加したプログラム電圧を供給し、前記Ｘ−デコーダが前記選択されたワードラインに前記増加したプログラム電圧を供給するようにする段階と、
を含むことを特徴とする請求項１６に記載のフラッシュメモリ装置のプログラム制御方法。
【請求項１８】
前記マルチ−レベルセルを検証する段階は、
検証データ比較器により、前記選択されたページのマルチ−レベルセルの読み出しデータに対応する検証データを基準データにそれぞれ比較し、比較信号を出力する段階と、
前記比較信号に応答し、制御部によりビットラインマスキング信号を出力する段階と、
前記ビットラインマスキング信号に応答し、前記ビットラインに連結されたページバッファ回路により、前記マルチ−レベルセルのうち、前記第３のプログラム動作が完了したマルチ−レベルセルが連結されたビットラインにプログラム禁止のためのビットラインバイアス電圧を供給する段階と、
を含むことを特徴とする請求項１６に記載のフラッシュメモリ装置のプログラム制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フラッシュメモリ装置に関し、特に、マルチ−レベルセルを含むフラッシュメモリ装置のプログラム制御回路及び方法{Controlcircuit and method for programming a flash memory device with multi-levelcells}に関する。
【背景技術】
【０００２】
一般に、フラッシュメモリ装置のメモリセルは格納されるデータのビット数によりシングル−レベルセル（Single-LevelCell；ＳＬＣ）とマルチ−レベルセル（Multi-Level Cell；ＭＬＣ）で区分されることができる。シングル−レベルセルは「１」または「０」のロジック値を有する１ビットのデータが格納されることができ、マルチ−レベルセルは「１１」、「１０」、「０１」、「００」のいずれか一つのロジック値を有する２ビットのデータが格納されることができる。従って、マルチ−レベルセルを含むフラッシュメモリ装置は大容量のデータ格納空間を必要とする高集積半導体装置で主に使われている。
【０００３】
マルチ−レベルセルを含むフラッシュメモリ装置のプログラム動作はページ単位で実行される。これをさらに詳細に説明すれば、選択されたページのマルチ−レベルセルが連結されたワードラインにプログラムのためのワードラインバイアス電圧が印加されることにより、上記マルチ−レベルセルがプログラムされる。
【０００４】
最近はフラッシュメモリ装置のプログラム速度を増加させるために、各ステップ（即ち、プログラムサイクル）別に上記ワードラインバイアス電圧を次第に増加させながら選択されたページを数回プログラムするISPP方式を用いたプログラム方法が実施されている。ISPP方式を用いたフラッシュメモリ装置のプログラム過程において、マルチ−レベルセルのしきい値電圧は格納されるべきデータ値（「１１」、「１０」、「０１」、「００」のいずれか一つ）に対応する電圧に変更される。ここで、データ「１１」、「１０」、「００」、「０１」にそれぞれ対応するマルチ−レベルセルのしきい値電圧がＶt1、Ｖt2、Ｖt3、Ｖt4である時、上記電圧（Ｖt1〜Ｖt4）はＶt4＞Ｖt3＞Ｖt2＞Ｖt1の関係を有する。
【０００５】
一方、プログラムのために選択されたワードライン内に「００」のデータが格納されるべきマルチ−レベルセル（以下、第１のマルチ−レベルセルという）と、「０１」のデータが格納されるべきマルチ−レベルセル（以下、第２のマルチ−レベルセルという）が共存する場合が考慮される。
【０００６】
この場合、上記第１のマルチ−レベルセルのしきい値電圧は初期しきい値電圧Ｖt2から目標しきい値電圧Ｖt3に変更されなければならず、上記第２のマルチ−レベルセルのしきい値電圧は、上記初期しきい値電圧Ｖt1から目標しきい値電圧Ｖt4に変更されなければならない。プログラム時間を減少させるために、上記第１及び第２のマルチ−レベルセルのプログラムは同時にISPP方式で進行され、図１に示された通り、プログラムサイクル数が増加するにつれて上記第１及び第２のマルチ−レベルセルのしきい値電圧も次第に増加する。
【０００７】
これをさらに詳細に説明すれば、連続的なプログラム動作が進行されることにより、上記第１のマルチ−レベルセルのしきい値電圧はＶt2からＶt3に変更され、上記第２のマルチ−レベルセルのしきい値電圧はＶt1からＶt4に変更される。ここで、上記第２のマルチ−レベルセルのプログラム時間を減らすためには、なるべく高いワードラインバイアス電圧が印加されることが有利である。
【０００８】
しかし、第２のマルチ−レベルセルのプログラム速度を増加させるのに焦点をおくように設定されるワードラインバイアス電圧は、上記第１のマルチ−レベルセル（特に、動作速度が速い第１のマルチ−レベルセル）のオーバー（over）・プログラム結果をもたらす問題点がある。また、上記第１のマルチ−レベルセルのオーバー・プログラムを防止するようにワードラインバイアス電圧が設定される場合、上記第２のマルチ−レベルセルのプログラム時間が増加するため、全体的なプログラム時間が増加するようになる問題点がある。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
したがって、本発明がなそうとする技術的課題は、進行されるプログラムサイクルの回数によりワードラインバイアス電圧の供給時間を選択的に調節することにより、マルチ−レベルセルのオーバー・プログラムを防止し、全体プログラム時間を減少させることができるマルチ−レベルセルを有するフラッシュメモリ装置のプログラム制御回路を提供することにある。
【００１０】
本発明がなそうとする他の技術的課題は、進行されるプログラムサイクルの回数によりワードラインバイアス電圧の供給時間を選択的に調節することにより、マルチ−レベルセルのオーバー・プログラムを防止し、全体プログラム時間を減少させることができるマルチ−レベルセルを有するフラッシュメモリ装置のプログラム制御方法を提供することにある。
【課題を解決するための手段】
【００１１】
上記の技術的課題を達成するための本発明によるマルチ−レベルセルを有するフラッシュメモリ装置のプログラム制御回路は、ワードラインとビットラインを共有する複数のマルチ−レベルセルを含むフラッシュメモリ装置のプログラム制御回路において、制御部、クロック信号発生器、及び電圧選択回路を含む。制御部は検証データ比較器から受信される比較信号に応答し、ビットラインマスキング（masking）信号とステップ制御信号を発生し、ステップ制御信号の発生回数に基づいて第１〜第３の周期制御信号のうちの一つと、第１または第２の検証制御信号を出力し、ビットラインマスキング信号をビットライン（ら）に連結されるページバッファ回路に出力し、ステップ制御信号をワードライン電圧発生器に出力する。
【００１２】
クロック信号発生器は第１〜第３の周期制御信号のうちの一つに応答し、第１〜第３のクロック信号のうちの一つと、反転した第１〜第３のクロック信号のうちの一つを発生する。電圧選択回路はクロック信号発生器から受信される第１〜第３のクロック信号のうちの一つと、反転した第１〜第３のクロック信号のうちの一つに応答し、第１〜第３の設定時間のうちの一つの間、ワードライン電圧発生器により発生するプログラムバイアス電圧をワードラインに連結されるＸ−デコーダに出力したり、または第４の設定時間の間、ワードライン電圧発生器により発生する検証バイアス電圧をＸ−デコーダに出力する。
【００１３】
上記の他の技術的課題を達成するための本発明によるマルチ−レベルセルを有するフラッシュメモリ装置のプログラム制御方法は、ワードラインとビットラインを共有する複数のマルチ−レベルセルを含むフラッシュメモリ装置のプログラム制御方法において、第１の周期制御信号に応答し、第１〜第Ｉ（Ｉは整数）のプログラムサイクルのそれぞれに対し、ワードラインのうちから選択されたワードラインに第１の設定時間の間ステップ電圧単位で増加するプログラム電圧を供給し、選択されたページのマルチ−レベルセルをプログラムする第１のプログラム段階と、第２の周期制御信号に応答し、第Ｉ＋１〜第Ｊ（ＪはＩより大きい整数）のプログラムサイクルのそれぞれに対し、選択されたワードラインに第２の設定時間の間、第１のプログラム段階で最終的に増加したプログラム電圧である、第１の最終プログラム電圧をステップ電圧単位で増加させながら供給し、選択されたページのマルチ−レベルセルをプログラムする第２のプログラム段階と、第３の周期制御信号に応答し、第Ｊ＋１〜第Ｋ（ＫはＪより大きい整数）のプログラムサイクルのそれぞれに対し、選択されたワードラインに第３の設定時間の間、第２のプログラム段階で最終的に増加したプログラム電圧である、第２の最終プログラム電圧をステップ電圧単位で増加させながら供給し、選択されたページのマルチ−レベルセルをプログラムする第３のプログラム段階とを含む。
【発明の効果】
【００１４】
以上で説明した通り、本発明によれば、進行されるプログラムサイクルの回数によりワードラインバイアス電圧の供給時間が選択的に調節されるため、マルチ−レベルセルのオーバー・プログラムが防止でき、フラッシュメモリ装置の全体プログラム時間を減少することができる。
【発明を実施するための最良の形態】
【００１５】
以下、添付した図面を参照して本発明の望ましい実施例を説明する。しかし、本発明は以下で開示される実施例に限定されるものでなく、互いに異なる多様な形態で具現されることができ、単に本実施例は本発明の開示が完全であるようにし、通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものである。
【００１６】
図２は、本発明の一実施例によるISPP方式を用いたフラッシュメモリ装置のプログラム制御回路が適用されたフラッシュメモリ装置を概略的に示した図である。図面の簡略化のために、図２ではフラッシュメモリ装置10のプログラム動作と関連した部分のみが示され、説明される。
【００１７】
図２を参考にすれば、フラッシュメモリ装置10はメモリセルアレイ11、Ｘ−デコーダ12、ページバッファ回路13、検証データ比較器14、ワードライン電圧発生器15、及びプログラム制御回路100を含む。上記メモリセルアレイ11はワードラインWL1〜WLm（ｍは整数）とビットラインBL1〜BLn（ｎは整数）を共有する複数のマルチ−レベルセルMC1〜MCnを含む複数のページPG1〜PGmを含む。
【００１８】
また、上記メモリセルアレイ11は上記ページPG1のマルチ−レベルセルMC1〜MCnと上記ビットラインBL1〜BLnの間にそれぞれ連結されるドレイン選択トランジスタDST1〜DSTnと、上記ページPGmのマルチ−レベルセルMC1〜MCnと共通ソースラインCSLの間にそれぞれ連結されるソース選択トランジスタSST1〜SSTnをさらに含む。
【００１９】
上記ドレイン選択トランジスタDST1〜DSTnのゲートはドレイン選択ラインDSLに連結され、上記ソース選択トランジスタSST1〜SSTnのゲートはソース選択ラインSSLに連結される。上記Ｘ−デコーダ12はロウアドレス信号（図示せず）をデコーディングし、そのデコーディング結果に応じて上記ワードラインWL1〜WLmのうちの一つを選択する（即ち、上記ページPG1〜PGmのうちの一つを選択する）。
【００２０】
また、上記Ｘ−デコーダ12は選択されたワードライン（WL1〜WLmのうちの一つ）にプログラム（バイアス）電圧（ＶP1〜ＶPKのうちの一つ）（Ｋは整数）を供給したり、または第１または第２の検証電圧（ＶP1またはＶP2）を供給する。上記Ｘ−デコーダ12は選択されたワードライン（WL1〜WLmのうちの一つ）にプログラム電圧（ＶP1〜ＶPKのうちの一つ）を供給する時、残りのワードラインにはパス（pass）電圧ＶPASSを供給する。ここで、図４に示されている通り、上記第１の検証電圧ＶP1は「００」とプログラムされたマルチ−レベルセルのしきい値電圧で設定され、上記第２の検証電圧ＶP2は「０１」とプログラムされたマルチ−レベルセルのしきい値電圧で設定されることが望ましい。
【００２１】
上記ページバッファ回路13は、ビットラインマスキング（masking）信号INHB1〜INHBn（ｎは整数）に応答し、上記ビットラインBL1〜BLnのうちの一部にプログラム禁止のためのビットラインバイアス電圧（図示せず）を供給する。また、上記ページバッファ回路13は、上記ビットラインBL1〜BLnを通じて選択されたページPG1〜PGmからそれぞれ受信される読み出しデータRD1〜RDnに応答し、検証データVD1〜VDnを出力する。望ましくは、上記ページバッファ回路13は読み出しデータRD1〜RDnがロジック‘０’である時（即ち、選択されたページ（PG1〜PGmのうちの一つ）のマルチ−レベルセルMC1〜MCnがプログラムされていない場合）、上記検証データVD1〜VDnをロジック‘１’に出力する。
【００２２】
また、上記ページバッファ回路13は読み出しデータRD1〜RDnがロジック‘１’である時（即ち、選択されたページ（PG1〜PGmのうちの一つ）のマルチ−レベルセルMC1〜MCnがプログラムされた場合）、上記検証データVD1〜VDnをロジック‘０’に出力する。択一的に、上記ページバッファ回路13は上記読み出しデータRD1〜RDnがロジック‘０’である時（即ち、選択されたページ（PG1〜PGmのうちの一つ）のマルチ−レベルセルMC1〜MCnがプログラムされていない場合）、上記検証データVD1〜VDnをロジック‘０’に出力し、読み出しデータRD1〜RDnがロジック‘１’である時（即ち、選択されたページ（PG1〜PGmのうちの一つ）のマルチ−レベルセルMC1〜MCnがプログラムされた場合）、上記検証データVD1〜VDnをロジック‘１’に出力することができる。
【００２３】
上記検証データ比較器14は、上記検証データVD1〜VDnを基準データ（図示せず）にそれぞれ比較し、比較信号COM1〜COMnを出力する。上記検証データ比較器14は、上記検証データVD1〜VDnが基準データと同一である時、上記比較信号COM1〜COMnをロジックロウに出力し、上記検証データVD1〜VDnが基準データと同一でない時、上記比較信号COM1〜COMnをロジックハイに出力するように設計されることができる。
【００２４】
また、上記基準データがロジック‘０’で設定されることができる。この場合、例えば、上記読み出しデータRD1がロジック‘０’である時（即ち、選択されたページ（PG1〜PGmのうちの一つ）のマルチ−レベルセルMC1がプログラムされていない場合）、上記検証データ比較器14は上記検証データVD1をロジック‘１’に出力する。その結果、上記検証データ比較器14は上記比較信号COM1をロジックハイに出力する。また、上記読み出しデータRD1がロジック‘１’である時（即ち、選択されたページ（PG1〜PGmのうちの一つ）のマルチ−レベルセルMC1がプログラムされた場合）、上記検証データ比較器14は上記検証データVD1をロジック‘０’に出力する。その結果、上記検証データ比較器14は上記比較信号COM1をロジックロウに出力する。
【００２５】
上記ワードライン電圧発生器15は第１の検証制御信号VCTL1に応答し、第１の検証電圧PV1を発生し、第２の検証制御信号VCTL2に応答し、第２の検証電圧PV2を発生する。また、上記ワードライン電圧発生器15はステップ制御信号STEPに応答し、プログラム電圧（ＶP1〜ＶPKのうちの一つ）（Ｋは整数）とパス電圧ＶPASSを発生する。望ましくは、上記ワードライン電圧発生器15は最初に上記ステップ制御信号STEPを受信する時、上記プログラム電圧ＶP1を発生し、以後上記ステップ制御信号STEPを受信するごとにＶP2、ＶP3、…ＶPKの順に連続的に一つずつ出力する。ここで、上記プログラム電圧ＶP1〜ＶPKの大きさは以下の数式で示すことができる。
【００２６】
【数１】
2007012237.tif 000003
【００２７】
上記プログラム制御回路100は制御部110、クロック信号発生器120、及び電圧選択回路130を含む。上記制御部110は上記比較信号COM1〜COMnに応答し、上記ビットラインマスキング信号INHB1〜INHBnと、上記ステップ制御信号STEPを発生する。望ましくは、上記制御部110は上記ステップ制御信号STEPはハイパルス信号形態で出力することができる。
【００２８】
また、上記制御部110は上記ステップ制御信号STEPの発生回数に基づいて、第１〜第３の周期制御信号TC1〜TC3のうちの一つと、上記第１または第２の検証制御信号（VCTL1またはVCTL2）を出力する。望ましくは、上記制御部110は上記ステップ制御信号STEPの発生回数が第Ｉ（Ｉは整数）回に到達するまで、上記第１の周期制御信号TC1と上記第１の検証制御信号VCTL1を出力する。また、上記制御部110は上記ステップ制御信号STEPの発生回数が第Ｉ＋１回から第Ｊ（ＪはＩより大きい整数）回に到達するまで上記第２の周期制御信号TC2と上記第１または第２の検証制御信号（VCTL1またはVCTL2）を出力する。望ましくは、上記制御部110は上記第１の検証制御信号VCTL1と上記第２の検証制御信号VCTL2を各検証動作別に交互に発生する。
【００２９】
これをさらに詳細に説明すれば、例えば、上記ページPG1のマルチ−レベルセルMC1〜MCnが第Ｉ＋１番目にプログラムされた後に実行される上記マルチ−レベルセルMC1〜MCnの検証動作において、上記制御部110が上記第１の検証制御信号VCTL1のみを発生する。また、上記ページPG1のマルチ−レベルセルMC1〜MCnが第Ｉ＋２番目にプログラムされた後に実行される検証動作では上記制御部110が上記第２の検証制御信号VCTL2のみを発生する。択一的に、上記制御部110は一回の検証動作時に上記第１の検証制御信号VCTL1と上記第２の検証制御信号VCTL2を連続的に発生することができる。
【００３０】
これをさらに詳細に説明すれば、上記ページPG1のマルチ−レベルセルMC1〜MCnが第Ｉ＋１番目にプログラムされた後に実行される上記マルチ−レベルセルMC1〜MCnの検証動作において、上記制御部110が上記第１の検証制御信号VCTL1を発生した後、上記第２の検証制御信号VCTL2を発生する。
【００３１】
また、上記制御部110は上記ステップ制御信号STEPの発生回数が第Ｊ＋１回から第Ｋ（ＫはＪより大きい整数）回に到達するまで、上記第３の周期制御信号TC3と上記第２の検証制御信号VCTL2を出力する。
【００３２】
上記クロック信号発生器120は上記第１の周期制御信号TC1を受信する時、第１のクロック信号CLK1と反転した第１のクロック信号CLK1Bを発生する。また、上記クロック信号発生器120は上記第２の周期制御信号TC2を受信する時、第２のクロック信号CLK2と反転した第２のクロック信号CLK2Bを発生する。また、上記クロック信号発生器120は上記第３の周期制御信号TC3を受信する時、第３のクロック信号CLK3と反転した第３のクロック信号CLK3Bを発生する。
【００３３】
図６には、上記第１〜第３のクロック信号CLK1〜CLK3のタイミング図が示されている。図６で参照できるように、上記第３のクロック信号CLK3の一周期は上記第２のクロック信号CLK2の一周期よりも大きく、上記第２のクロック信号CLK3の一周期は上記第１のクロック信号CLK1の一周期よりも大きい。望ましくは、上記第１〜第３のクロック信号CLK1〜CLK3のロジックハイ区間（即ち、イネーブル区間）W1，W2，W3がそれぞれロジックロウ区間（即ち、ディセーブル区間）D1，D2，D3よりも長く設定される。また、上記第１〜第３のクロック信号CLK1〜CLK3のロジックロウ期間D1，D2，D3は互いに同一に設定されることができる。
【００３４】
上記電圧選択回路130は第１〜第３のスイッチング回路131〜133を含む。望ましくは、上記第１〜第３のスイッチング回路131〜133のそれぞれはNMOSトランジスタで具現されることができる。
【００３５】
上記第１のスイッチング回路131は上記プログラム電圧（ＶP1〜ＶPKのうちの一つ）と上記Ｘ−デコーダ12との間に連結され、上記第１〜第３のクロック信号CLK1〜CLK3のうちの一つに応答してオンまたはオフされる。
【００３６】
上記第２のスイッチング回路132は上記パス電圧ＶPASSと上記Ｘ−デコーダ12との間に連結され、上記第１〜第３のクロック信号CLK1〜CLK3のうちの一つに応答してオンまたはオフされる。
【００３７】
上記第３のスイッチング回路133は上記第１または第２の検証電圧（PV1またはPV2）と上記Ｘ−デコーダ12との間に連結され、上記反転した第１〜第３のクロック信号CLK1B〜CLK3Bのうちの一つに応答してオンまたはオフされる。
【００３８】
結果的に、上記第１及び第２のスイッチング回路131，132が同時にオンされる時、上記第３のスイッチング回路133はオフされる。反対に、上記第３のスイッチング回路133がオンされる時、上記第１及び第２のスイッチング回路131，132は同時にオフされる。
【００３９】
電圧選択回路130は、クロック信号発生器120から受信される第１〜第３のクロック信号CLK1〜CLK3のうちの一つと、反転した第１〜第３のクロック信号CLK1B〜CLK3Bのうちの一つに応答し、第１〜第３の設定時間のうちの一つの間にワードライン電圧発生器15により発生するプログラムバイアス電圧VP1〜VPKをワードラインWL1〜WLmに連結されるＸ−デコーダ12に出力したり、または第４の設定時間の間にワードライン電圧発生器15により発生する検証バイアス電圧PV1〜PV2をＸ−デコーダ12に出力する。
【００４０】
次に、上記フラッシュメモリ装置10のプログラム動作過程を詳細に説明する。図３は、図２に示されたプログラム制御回路によるフラッシュメモリ装置のプログラム過程を示すフローチャートである。本実施例では上記ページPG1のマルチ−レベルセルMC1〜MCnがプログラムされ、上記マルチ−レベルセルMC1〜MC8にデータ「００」が、上記マルチ−レベルセルMC9〜MCnにデータ「０１」がプログラムされる場合を例として説明する。
【００４１】
図３を参考にすれば、段階（201）において第１の設定時間の間、上記Ｘ−デコーダ12が上記ワードラインWLにプログラム電圧ＶP1を供給し、上記マルチ−レベルセルMC1〜MCnをプログラムする。ここで、上記マルチ−レベルセルMC1〜MCnのプログラム過程をさらに詳細に説明すれば、次の通りである。
【００４２】
まず、上記制御部110がステップ制御信号STEP、第１の周期制御信号TC1、及び第１の検証制御信号VCTL1を発生する。上記ワードライン電圧発生器15は上記ステップ制御信号STEPに応答し、プログラム電圧VP1とパス電圧ＶPASSを発生し、上記第１の検証制御信号VCTL1に応答し、第１の検証電圧PV1を発生する。また、上記クロック信号発生器120は上記第１の周期制御信号TC1に応答して上記第１のクロック信号CLK1と上記反転した第１のクロック信号CLK1Bを出力する。その結果、上記電圧選択回路130の第１及び第２のスイッチング回路131，132が上記第１のクロック信号CLK1に応答してオンされ、上記第３のスイッチング回路133はオフされる。望ましくは、上記第１及び第２のスイッチング回路131，132は上記第１の設定時間（即ち、上記第１のクロック信号CLK1のイネーブル期間W1（図６を参考））の間、オン状態で維持される。従って、上記Ｘ−デコーダ12には上記第１の設定時間の間、上記プログラム電圧VP1と上記パス電圧ＶPASSが供給され、上記Ｘ−デコーダ12が上記ワードラインWL1に上記プログラム電圧VP1を上記第１の設定時間供給する。
【００４３】
また、上記Ｘ−デコーダ12は上記第１の設定時間の間、上記パス電圧ＶPASSを残りのワードラインWL2〜WLmに供給する。その結果、上記ページPG1の上記マルチ−レベルセルMC1〜MCnがプログラムされる。この時、上記ページバッファ回路13にはプログラムされるデータ（図示せず）がローディングされた状態である。
【００４４】
ここで、上記マルチ−レベルセルMC1〜MC8にデータ「００」がプログラムされなければならないため、上記マルチ−レベルセルMC1〜MC8に下位ビットデータ「０」がまずプログラムされる。即ち、上記マルチ−レベルセルMC1〜MC8のしきい値電圧がデータ「１０」（図４のA1を参考）に対応する電圧レベルに変更される。一方、上記マルチ−レベルセルMC9〜MCmにはデータ「０１」がプログラムされなければならないため、上記マルチ−レベルセルMC1〜MC8に下位ビットデータ「０」がプログラムされる間、ビットライン（BL9〜BLn）にプログラム禁止のためのビットラインバイアス電圧が印加され、上記マルチ−レベルセルMC9〜MCmがプログラムされない。
【００４５】
尚、ページバッファ回路13はビットラインマスキング信号に応答し、ビットラインBL1〜BLnのうちの一部または全体にプログラム禁止のためのビットラインバイアス電圧を供給する。
【００４６】
以後、段階（202）において、上記Ｘ−デコーダ12が上記ワードラインWLに上記第１の検証電圧PV1を供給し、上記マルチ−レベルセルMC1〜MCnを検証する。ここで、上記段階（202）の検証過程が実行される理由は、上記マルチ−レベルセルMC1〜MC8のしきい値電圧分布が設定された電圧範囲内に移動するようにするためである。
【００４７】
図５を参考にすれば、消去状態において、上記マルチ−レベルセルMC1〜MC8のしきい値電圧はグラフ「C1」で示されたように分布している。従って、上記検証過程が実施されていないまま、上記マルチ−レベルセルMC1〜MC8に同一のプログラム電圧（即ち、ワードラインバイアス電圧）が供給されれば、上記マルチ−レベルセルMC1〜MC8のしきい値電圧はグラフ「C3」で表示されているように分布する。結局、上記グラフ「C1」が全体的に上記グラフ「C3」に移動する。しかし、上記検証過程が実施される場合、プログラムが完了したマルチ−レベルセルがこれ以上プログラムされないように、対応するビットラインBLにプログラム禁止のためのバイアス電圧が印加されるため、上記マルチ−レベルセルMC1〜MC8のしきい値電圧はグラフ「C2」で示されているように分布する。
【００４８】
上記マルチ−レベルセルMC1〜MCnの検証過程をさらに詳細に説明すれば次の通りである。まず、上記電圧選択回路130の第３のスイッチング回路133が上記反転したクロック信号CLK1Bに応答して設定された時間D1オンされ、上記第１の検証電圧PV1を上記Ｘ−デコーダ12に出力する。その結果、上記Ｘ−デコーダ12が上記ワードラインWL1に上記第１の検証電圧PV1を供給する。一方、図２には示されなかったが、上記ワードライン電圧発生器15は読み出し電圧（図示せず、例えば、４．５Ｖ）をさらに発生し、上記Ｘ−デコーダ12は上記読み出し電圧を残りのワードラインWL2〜WLmに供給する。上記マルチ−レベルセルMC1〜MCnはそのプログラム状態に応じてオンまたはオフされる。
【００４９】
例えば、上記マルチ−レベルセルMC1〜MCnはプログラムされていない場合オンされ、プログラムされた場合オフされる。例えば、上記マルチ−レベルセルMC1のみがプログラムされた場合、上記マルチ−レベルセルMC1がオフされ、上記マルチ−レベルセル（MC2〜MCn）はオンされる。その結果、上記マルチ−レベルセルMC1は上記ビットラインBL1に読み出しデータRD1をロジック‘１’に出力し、上記マルチ−レベルセル（MC2〜MCn）は上記ビットライン（BL2〜BLn）のそれぞれに読み出しデータRD2〜RDnをそれぞれロジック‘０’に出力する。上記ページバッファ回路13は上記読み出しデータRD1に応答し、検証データVD1をロジック‘０’に出力し、上記読み出しデータRD2〜RDnに応答し、上記検証データVD2〜VDnをロジック‘１’に出力する。
【００５０】
検証データ比較器14は上記検証データVD1〜VDnを基準データに比較し、その比較結果として比較信号COM1〜COMnを出力する。さらに詳細には、上記検証データ比較器14が上記比較信号COM1をロジックロウに出力し、上記比較信号COM2〜COMnをロジックハイに出力する。制御部110は上記比較信号COM1〜COMnに応答し、上記ステップ制御信号STEPとビットラインマスキング信号INHB1〜INHBnを出力する。その結果、上記ページバッファ回路13が上記ビットラインマスキング信号INHB1〜INHBnに応答し、上記ビットラインBL1にプログラム禁止のためのビットラインバイアス電圧を供給する。
【００５１】
段階（203）において、上記制御部110は上記ステップ制御信号STEPの発生回数をカウンティングし、プログラムサイクル（cycle）回数がＩなのか否かを判断する。上記ステップ制御信号STEPの発生回数がＩである時、上記制御部110が上記プログラムサイクル回数がＩであると判断する。上記プログラムサイクル回数がＩでない時、段階（204）において、上記ワードライン電圧発生器15が上記ステップ制御信号STEPに応答し、上記プログラム電圧ＶP1をステップ電圧Ｖs（図７を参考）だけ増加させる。以後、上記プログラムサイクル回数がＩになるまで上記各段階（201；プログラム段階〜203；判断段階）が反復的に実行される。
【００５２】
図７を参考にすれば、第１〜第Ｉのプログラムサイクル区間CY1の間、上記ワードラインWL1に供給されるプログラム電圧は上記ステップ電圧Ｖsだけずつ次第に増加する。即ち、第１〜第Ｉのプログラムサイクル区間CY1の間、プログラム電圧としてＶP1、ＶP2、…ＶPIが連続的に上記ワードラインWL1に供給される。また、上記段階（203）において、上記制御部110が上記プログラムサイクル回数がＩであると判断した場合、上記段階（202）のプログラム動作が停止する。
【００５３】
以後、段階（205）において、上記第Ｉのプログラムサイクルで使われたプログラム電圧ＶPIをステップ電圧Ｖsだけ増加させる。これをさらに詳細に説明すれば、上記制御部110が上記ステップ制御信号STEP、第２の周期制御信号TC2、及び第１または第２の検証制御信号VCTL1，VCTL2を発生する。上記ワードライン電圧発生器15は上記ステップ制御信号STEPに応答し、プログラム電圧ＶPIをステップ電圧Ｖsだけ増加させたプログラム電圧PV（Ｉ＋１）とパス電圧ＶPASSを発生し、上記第１または第２の検証制御信号（VCTL1またはVCTL2）に応答し、第１または第２の検証電圧（PV1またはPV2）を発生する。
【００５４】
また、段階（206）において、上記Ｘ−デコーダ12が上記ワードラインWL1に上記プログラム電圧PV（Ｉ＋１）を第２の設定時間の間供給し、上記マルチ−レベルセル（MC2〜MCn）をプログラムする。ここで、上記段階（206）のプログラム過程は上記ワードラインWL1に供給されるプログラム電圧と供給される時間を除き、上述した上記段階（201）と類似するため、これに対する詳細な説明は省略する。
【００５５】
ここで、上記Ｘ−デコーダ12が上記ワードラインWL1に上記プログラム電圧PV（Ｉ＋１）を第２の設定時間の間供給する過程を詳細に説明すれば次の通りである。まず、上記クロック信号発生器120が上記第２の周期制御信号TC2に応答し、第２のクロック信号CLK2と反転した第２のクロック信号CLK2Bを出力する。その結果、上記第１及び第２のスイッチング回路131，132が上記第２のクロック信号CLK2に応答してオンされ、上記第３のスイッチング回路133はオフされる。望ましくは、上記第１及び第２のスイッチング回路131，132は上記第２の設定時間（即ち、上記第２のクロック信号CLK2のイネーブル期間W2（図６を参考）の間、オン状態で維持される。従って、上記Ｘ−デコーダ12には上記第２の設定時間の間、上記プログラム電圧PV（Ｉ＋１）と上記パス電圧ＶPASSが供給され、上記Ｘ−デコーダ12が上記ワードラインWL1に上記プログラム電圧PV（Ｉ＋１）を上記第２の設定時間の間供給する。この時、上記ページバッファ回路13にはプログラムされるデータ（図示せず）がローディングされた状態である。
【００５６】
ここで、上記マルチ−レベルセルMC1〜MC8にデータ「００」が全てプログラムされた場合、上記マルチ−レベルセルMC1〜MC8に上位ビットデータ「０」がプログラムされ、同時に上記マルチ−レベルセルMC9〜MCmに上位ビットデータ「０」がプログラムされる。即ち、上記マルチ−レベルセルMC1〜MC8のしきい値電圧がデータ「１０」からデータ「００」（図４のA2を参考）に対応する電圧レベルに変更され、上記マルチ−レベルセルMC9〜MCmのしきい値電圧がデータ「１１」からデータ「０１」（図４のA3を参考）に対応する電圧レベルに変更される。
【００５７】
以後、段階（207）において、上記Ｘ−デコーダ12が上記ワードラインWL1に第１または第２の検証電圧（PV1またはPV2）を供給し、上記マルチ−レベルセルMC1〜MCnを検証する。ここで、上記段階（207）の検証過程は上記ワードラインWL1に供給される検証電圧を除き、上述した上記段階（202）と類似するため、これに対する詳細な説明は省略する。上記段階（207）において、上記Ｘ−デコーダ12は互いに異なる検証動作区間において、上記ワードラインWL1に上記第１の検証電圧PV1と上記第２の検証電圧PV2を交互に供給する。
【００５８】
例えば、上記制御部110は上記第Ｉ＋１のプログラムサイクル以後に実行される検証動作時に上記第１の検証制御信号VCTL1を発生し、上記第Ｉ＋２のプログラムサイクル以後に実行される検証動作時に上記第２の検証制御信号VCTL2を発生する。その結果、上記ワードライン電圧発生器15が上記第Ｉ＋１のプログラムサイクル以後に実行される検証動作時に上記第１の検証電圧PV1を発生し、上記第Ｉ＋２のプログラムサイクル以後に実行される検証動作時に上記第２の検証電圧PV2を発生する。従って、上記Ｘ−デコーダ12は、互いに異なる検証動作区間において、上記ワードラインWL1に上記第１の検証電圧PV1と上記第２の検証電圧PV2を交互に供給することが可能になる。
【００５９】
択一的に、上記段階（207）において、上記Ｘ−デコーダ12が同一の検証動作区間において、上記ワードラインWL1に上記第１の検証電圧PV1と上記第２の検証電圧PV2を連続的に供給することができる。例えば、上記制御部110は上記第Ｉ＋１のプログラムサイクル以後に実行される検証動作時に上記第１の検証制御信号VCTL1を発生した後、上記第２の検証制御信号VCTL2を発生する。その結果、上記ワードライン電圧発生器15が上記第Ｉ＋１のプログラムサイクル以後に実行される検証動作時に上記第１の検証電圧PV1を発生した後、上記第２の検証電圧PV2を発生する。
【００６０】
次に、段階（208）において、上記制御部110は上記ステップ制御信号STEPの発生回数をカウンティングし、プログラムサイクル（cycle）回数がＪなのか否かを判断する。上記ステップ制御信号STEPの発生回数がＪである時、上記制御部110が上記プログラムサイクル回数がＪであると判断する。
【００６１】
上記プログラムサイクル回数がＪでない時、段階（209）において、上記ワードライン電圧発生器15が上記ステップ制御信号STEPに応答し、上記プログラム電圧（ＶP（Ｉ＋１））をステップ電圧Ｖs（図７参考）だけ増加させる。その後、上記プログラムサイクル回数がＪになるまで上記各段階（206；プログラム段階〜208；判断段階）が反復的に実行される。
【００６２】
図７を参考にすれば、第（Ｉ＋１）〜第Ｊのプログラムサイクル区間CY2の間、上記ワードラインWL1に供給されるプログラム電圧は上記ステップ電圧Ｖsだけずつ（ステップ電圧単位で）次第に増加する。即ち、第Ｉ＋１〜第Ｊのプログラムサイクル区間CY2の間、プログラム電圧としてＶP（Ｉ＋１）、ＶP（Ｉ＋２）、…ＶPJが連続的に上記ワードラインWL1に供給される。
【００６３】
また、上記段階（213）において、上記制御部110が上記プログラムサイクル回数がＪであると判断した場合、上記段階（206）のプログラム動作が停止する。
【００６４】
以後、段階（210）において、上記第Ｊのプログラムサイクルで使われたプログラム電圧（ＶPJ）をステップ電圧Ｖsだけ増加させる。また、段階（211）において、上記Ｘ−デコーダ12が上記ワードラインWL1に上記プログラム電圧PV（Ｊ＋１）を第３の設定時間の間供給し、上記マルチ−レベルセル（MC2〜MCn）をプログラムする。
【００６５】
ここで、上記段階（211）のプログラム過程は上記ワードラインWL1に供給されるプログラム電圧と供給される時間を除き、上述した上記段階（201）と類似するため、これに対する詳細な説明は省略する。
【００６６】
ここで、上記Ｘ−デコーダ12が上記ワードラインWL1に上記プログラム電圧PV（Ｊ＋１）を第３の設定時間の間供給する過程を詳細に説明すれば次の通りである。まず、上記クロック信号発生器120が上記第３の周期制御信号TC3に応答し、第３のクロック信号CLK3と反転した第３のクロック信号CLK3Bを出力する。その結果、上記第１及び第２のスイッチング回路131，132が上記第３のクロック信号CLK3に応答してオンされ、上記第３のスイッチング回路133はオフされる。望ましくは、上記第１及び第２のスイッチング回路131，132は上記第３の設定時間（即ち、上記第３のクロック信号CLK3のイネーブル期間W3（図６を参考）の間、オン状態で維持される。
【００６７】
従って、上記Ｘ−デコーダ12には上記第３の設定時間の間、上記プログラム電圧PV（Ｊ＋１）と上記パス電圧ＶPASSが供給され、上記Ｘ−デコーダ12が上記ワードラインWL1に上記プログラム電圧PV（Ｊ＋１）を上記第３の設定時間の間供給する。この時、上記ページバッファ回路13にはプログラムされるデータ（図示せず）がローディングされた状態である。ここで、上記マルチ−レベルセルMC1〜MC8にデータ「０１」が全てプログラムされた場合、上記マルチ−レベルセルMC1〜MC8はプログラム禁止され、上記マルチ−レベルセルMC9〜MCmに上位ビットデータ「０」がプログラムされる。
【００６８】
以後、段階（212）において、上記Ｘ−デコーダ12が上記ワードラインWL1に第２の検証電圧PV2を供給し、上記マルチ−レベルセルMC1〜MCnを検証する。ここで、上記段階（212）の検証過程は上記ワードラインWL1に供給される検証電圧を除き、上述した上記段階（202）と類似するため、これに対する詳細な説明は省略する。
【００６９】
次に、段階（213）において、上記制御部110は上記ステップ制御信号STEPの発生回数をカウンティングし、プログラムサイクル（cycle）回数がKなのか否かを判断する。上記ステップ制御信号STEPの発生回数がＫである時、上記制御部110が上記プログラムサイクル回数がＫであると判断する。上記プログラムサイクル回数がＫでない時、段階（214）において、上記ワードライン電圧発生器15が上記ステップ制御信号STEPに応答し、上記プログラム電圧VP（Ｊ＋１）をステップ電圧Ｖs（図７を参考）だけ増加させる。その後、上記プログラムサイクル回数がKになるまで上記各段階（211〜213）が反復的に実行される。
【００７０】
図７を参考にすれば、第（Ｊ＋１）〜第Ｋのプログラムサイクル区間CY3の間、上記ワードラインWL1に供給されるプログラム電圧は上記ステップ電圧Ｖsだけずつ（ステップ電圧単位で）次第に増加する。即ち、第Ｊ＋１〜第Ｋのプログラムサイクル区間CY3の間、プログラム電圧としてＶP（Ｊ＋１）、ＶP（Ｊ＋２）、…ＶPKが連続的に上記ワードラインWL1に供給される。また、上記段階（213）において、上記制御部110が上記プログラムサイクル回数がＫであると判断した場合、上記段階（211）のプログラム動作が停止する（段階（215））。
【００７１】
即ち、段階（213）において、プログラムサイクルの回数がＫなのか否かを判断し、プログラムサイクルの回数がＫでない時、段階（214）において、増加したプログラム電圧をステップ電圧Ｖsだけ増加させた後、前記プログラム段階（211）乃至前記判断段階（213）を反復実行する。段階（213）において、プログラムサイクルの回数がＫである時、第３のプログラム動作を停止する（段階（215））。
【００７２】
上述した通り、本発明によるプログラム制御回路及びそのプログラム制御方法では各プログラム区間別にプログラムパルス幅（即ち、プログラム電圧の供給時間）を変更する。即ち、図７に示されている通り、前半部のプログラム過程（即ち、第１〜第Ｉのプログラムサイクル区間CY1）でプログラム電圧が時間W1の間供給され、中間部のプログラム過程（即ち、第Ｉ＋１〜第Ｊのプログラムサイクル区間CY2）でプログラム電圧が上記時間W1よりも長い時間W2の間供給される。また、後半部のプログラム過程（即ち、第Ｊ＋１〜第Ｋのプログラムサイクル区間CY3）でプログラム電圧が上記時間W2よりも長い時間W3の間供給される。
【００７３】
結局、図８に示されたグラフのように、マルチ−レベルセルのしきい値電圧が変更される。結局、データ「００」がプログラムされるべきマルチ−レベルセルがプログラムされる上記区間CY2より、データ「０１」がプログラムされるべきマルチ−レベルセルがプログラムされる上記区間CY3でプログラム時間が増加する。従って、データ「００」がプログラムされるべきマルチ−レベルセルのオーバー・プログラムが防止でき、データ「０１」がプログラムされるべきマルチ−レベルセルのプログラム時間が短縮できる。
【００７４】
上記で説明した本発明の技術的思想は、望ましい実施例において具体的に記述されたが、上記の実施例はその説明のためのものであり、その制限のためのものでないことを注意しなければならない。また、本発明は本発明の技術分野における通常の専門家であれば、本発明の技術的思想の範囲内で多様な実施例が可能であることを理解することができるものである。
【産業上の利用可能性】
【００７５】
本発明の活用例として、特に、マルチ−レベルセルを含むフラッシュメモリ装置のプログラム制御回路及び方法に適用出来る。
【図面の簡単な説明】
【００７６】
【図１】従来のISPP（incremental step pulse programming）方式を用いたプログラム方法によりフラッシュメモリ装置がプログラムされる時、プログラムサイクルが進行されるに伴うマルチ−レベルセルのしきい値電圧の変化を示すグラフである。
【図２】本発明の一実施例によるフラッシュメモリ装置のプログラム制御回路が適用されたフラッシュメモリ装置を概略的に示した図である。
【図３】図２に示されたプログラム制御回路によるフラッシュメモリ装置のプログラム過程を示すフローチャートである。
【図４】図３に示されたフラッシュメモリ装置のプログラム過程によるマルチ−レベルセルのしきい値電圧分布を示すグラフである。
【図５】本発明によるプログラム制御回路によるフラッシュメモリ装置のプログラム過程で検証動作の実行前後のマルチ−レベルセルのしきい値電圧分布を示すグラフである。
【図６】図２に示された第１〜第３のクロック信号のタイミング図である。
【図７】本発明の一実施例によるプログラム過程によるワードラインの電圧変化を示す図面である。
【図８】本発明の一実施例によるプログラム方法によりフラッシュメモリ装置がプログラムされる時、プログラムサイクルが進行されることによるマルチ−レベルセルのしきい値電圧の変化を示すグラフである。
【符号の説明】
【００７７】
10…フラッシュメモリ装置
11…メモリセルアレイ
12…Ｘ−デコーダ
13…ページバッファ回路
14…検証データ比較器
15…ワードライン電圧発生器
100…プログラム制御回路
110…制御部
120…クロック信号発生器
130…電圧選択回路
131…第１のスイッチング回路
132…第２のスイッチ回路
133…第３のスイッチング回路
【図１】
2007012237.tif 000004
【図２】
2007012237.tif 000005
【図３】
2007012237.tif 000006
【図４】
2007012237.tif 000007
【図５】
2007012237.tif 000008
【図６】
2007012237.tif 000009
【図７】
2007012237.tif 000010
【図８】
2007012237.tif 000011