(57)【要約】ＥＥＰＲＯＭやフラッシュＥＥＰＲＯＭなどの、不揮発性電荷の格納能力を持つ不揮発性メモリが、複数のメモリセルに並列印加を行うプログラミング・システムによりプログラムされる。データ依存型プログラミング電圧を用いて、最小数のプログラミング・パルスで各セルの目標状態にセットして、各セルをプログラミングすることにより改善されたパフォーマンスが達成される。よりなだらかな階段波形を持つプログラミング電圧を用いるなどの、さらにきめ細かなプログラミング精度を用いて各々の連続段を実行するマルチフェーズでプログラミング処理を実行することによりさらなる改善が達成される。これらの特徴により、並列にプログラムされるメモリセルグループの目標状態への高速かつ正確な収束が可能となり、それによって、パフォーマンスを犠牲にすることなく各セルが数ビットの情報の格納を行うことが可能となる。
2004519804.tif 000002
【特許請求の範囲】
【請求項１】
１グループのメモリセルを並列にプログラムする方法であって、各メモリセルは、該メモリセルの複数のメモリ状態の間の目標メモリ状態に対応する目標電荷レベルにセットされて個々にプログラム可能な電荷を格納をするように構成される方法において、
１つのメモリセルをプログラムするための複数の電圧レベルを前記複数のメモリ状態のうちの１つのメモリ状態へ供給するステップと、
上記グループの各メモリセルのための前記複数の電圧レベルのうちの１つの電圧レベルを選択するステップであって、上記選択された電圧レベルが上記メモリセルの目標メモリ状態の関数となるように構成される選択ステップと、
上記選択された電圧の関数として各メモリセルのためのプログラミング電圧を生成するステップと、
上記グループのメモリセルを並列にプログラムするステップと、を有することを特徴とする方法。
【請求項２】
請求項１に記載の方法において、前記グループの各セルのためのプログラミング電圧波形を生成するステップをさらに有し、前記各プログラミング電圧波形は、各セル用として選択された前記電圧レベルの関数である初期振幅を有することを特徴とする方法。
【請求項３】
請求項２に記載の方法において、前記プログラミング電圧波形が一連の電圧パルスを含むことを特徴とする方法。
【請求項４】
請求項３に記載の方法において、前記一連の電圧パルスのうちの初期電圧パルスの印加により、各セルの目標メモリ状態の方へ向かいながら、しかも各セルのメモリ状態を上まわらないように各セルが実質的にプログラムされることを特徴とする方法。
【請求項５】
請求項３に記載の方法において、前記一連の電圧パルスが時間と共に増加する振幅を有することを特徴とする方法。
【請求項６】
請求項３に記載の方法において、
（ａ）各セルと関連づけられる上記プログラミング電圧波形の前記一連の電圧パルスの中のパルスを各セルに印加することにより前記グループのメモリセルを並列にプログラミングするステップと、
（ｂ）各メモリセルの上記目標状態と関連づけられる所定のレベルにセットされて各セルがプログラムされているかどうかを検出することにより前記グループのメモリセルを並列にベリファイするステップと、
（ｃ）任意のセルがその所定のレベルにセットされてプログラムされているとき、前記グループから前記任意のセルのさらなるプログラミングを抑制するステップと、
（ｄ）前記グループ内のすべてのセルが該セルのそれぞれの所定のレベルにセットされてプログラムされてしまうまでステップ（ａ）、（ｂ）、（ｃ）を反復するステップと、をさらに有することを特徴とする方法。
【請求項７】
請求項６に記載の方法において、所定の回数以上反復された場合、前記反復ステップが終了することを特徴とする方法。
【請求項８】
請求項６に記載の方法であって、終了するまでのステップ（ａ）〜（ｄ）の前記反復サイクルが１つのプログラミング段を構成し、１以上の追加プログラミング段をさらに有する方法において、各段は、各段の関連づけられた一連の電圧パルスと所定のレベルとを持つことを特徴とする方法。
【請求項９】
請求項８に記載の方法において、各連続する段が、その前の段階からさらにきめ細かなプログラミング・ステップを形成する一連の電圧パルスを用いることを特徴とする方法。
【請求項１０】
請求項８に記載の方法において、各連続する段が、上記目標状態へさらに近づく所定のレベルを用いることを特徴とする方法。
【請求項１１】
請求項８に記載の方法において、所定の最後の段が、各セルのそれぞれの目標状態にセットされてプログラムされた上記グループの各セルを持つ所定のレベルを用いることを特徴とする方法。
【請求項１２】
請求項８に記載の方法において、各セルが２０個以下のプログラミング・パルスを受け取ることを特徴とする方法。
【請求項１３】
請求項１乃至１２のいずれか１つに記載の方法において、各セルが２つのメモリ状態のうちの一方を格納することを特徴とする方法。
【請求項１４】
請求項１乃至１２のいずれか１つに記載の方法において、各セルが３以上のメモリ状態を格納することを特徴とする方法。
【請求項１５】
請求項１乃至１２のいずれか１つに記載の方法において、各セルが１６個のメモリ状態を格納することを特徴とする方法。
【請求項１６】
不揮発性メモリであって、
メモリセルのアレイであって、各メモリセルは、該メモリセルの複数のメモリ状態の間の目標とするメモリ状態に対応する、関連づけられた目標とする電荷レベルにセットされて個々にプログラム可能な電荷の格納を行うように構成されるメモリセルのアレイと、
前記複数のメモリ状態のうちの１つの状態にセットしてメモリセルをプログラムするための複数の電圧を並列に供給する電源バスと、
１グループのメモリセルを並列にプログラムする並列プログラミング・システムであって、複数のプログラミング回路であって、上記グループ内の各セル用について１つのプログラミング回路を備える前記並列プログラミング・システムとを具備する不揮発性メモリにおいて、各プログラミング回路は、さらに、
前記電源バスからの複数の電圧のうちの１つを選択する電圧選択装置を具備し、上記選択された電圧は上記関連づけられたメモリセルの上記目標状態の関数であり、該メモリセルの目標とするメモリ状態にセットして上記メモリ状態をプログラムするためのプログラミング電圧を生成するために、上記選択された電圧が前記プログラミング回路にとって最適となるように構成されることを特徴とする不揮発性メモリ。
【請求項１７】
請求項１６に記載の不揮発性メモリにおいて、前記プログラミング回路が、
上記選択された電圧の関数である初期振幅を持つ第１のプログラミング電圧波形を生成するための、前記選択された電圧を受け取るように接続された第１のプログラミング電圧波形発生器と、
上記メモリセルの上記プログラムされた状態を検出するためのセンス・アンプと、
上記メモリセルの上記プログラムされた状態が第１の所定レベルを上まわったときはいつでも、上記セルのさらなるプログラミングを抑制するための、上記センス・アンプに応答するプログラム抑制回路と、をさらに具備することを特徴とする不揮発性メモリ。
【請求項１８】
請求項１７に記載の不揮発性メモリにおいて、
上記関連セルのプログラムされた状態に上記第１の所定レベルを上まわらせる最後のプログラミング電圧を保存するための記憶素子と、
第２のプログラミング電圧を生成するための、保存された前記最後のプログラミング電圧に応じる第２のプログラミング電圧波形発生器と、
上記グループ内のすべてのメモリセルが上記第１の所定レベルを上まわった後、前記第２のプログラミング電圧波形発生器を起動させる制御装置と、をさらに具備することを特徴とする不揮発性メモリ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般に電気的に消去可能でプログラム可能なリード・オンリー・メモリ（ＥＥＰＲＯＭ）やフラッシュＥＥＰＲＯＭなどの不揮発性半導体メモリに関し、詳細には、これらの不揮発性半導体メモリのメモリ状態をプログラムする回路と技法とに関する。
【０００２】
【従来の技術】
不揮発性の電荷格納能力を持つ固体メモリ素子、特に、ＥＥＰＲＯＭとフラッシュＥＥＰＲＯＭの形の固体メモリ素子は、最近、様々な移動用デバイスや携帯用デバイス（特に情報機器及び消費者用電子製品）において一般的に好まれるメモリ素子になっている。やはり固体メモリ素子であるＲＡＭ（ランダム・アクセス・メモリ）とは異なり、フラッシュ・メモリは不揮発性であるため、電源を切った後でもその格納データが保持されている。高コストにもかかわらず、フラッシュ・メモリは大容量メモリを要するアプリケーションでますます利用されている。ハードドライブやフロッピーディスクのような回転磁気媒体をベースとする従来の一般的な大容量メモリ素子は、移動環境や携帯環境には適していない。その理由として、ディスク・ドライブが嵩張ったものになりがちであるため、機械的故障を受け易くなり、長い回転待時間と、大きな出力要件を有することが挙げられる。これらの望ましくない属性に起因して、ほとんどの移動用及び携帯用アプリケーションではディスクベースのメモリ素子は実際的なメモリ素子ではない。一方、フラッシュ・メモリは、その小型サイズ、少ない消費電力、高速性、並びに、高い信頼性という特徴のために移動環境や携帯環境で理想的に好適なメモリ素子である。
【０００３】
ＥＥＰＲＯＭ及び電気的にプログラム可能なリード・オンリー・メモリ（ＥＰＲＯＭ）は、消去可能で、かつ、そのメモリセルの中への新しいデータの書き込みすなわち“プログラム”を行うことが可能な不揮発性メモリである。
【０００４】
ＥＰＲＯＭは、ソース領域とドレイン領域間の、半導体基板のチャネル領域にわたって位置する電界効果トランジスタ構造内の浮遊（接続されていない）導電ゲートを利用するものである。この浮遊ゲートにわたって制御ゲートが設けられる。トランジスタの閾値電圧特性はこの浮遊ゲートに保持されている電荷量により制御される。すなわち、浮遊ゲートの所定の電荷レベルに対して、そのソース領域とドレイン領域間の導通を可能にするためにトランジスタを“オン”にする前に、制御ゲートに印加しなければならない対応する電圧（閾値）が生じる。
【０００５】
上記浮遊ゲートは電荷範囲を保持することができ、したがって、閾値電圧ウィンドウ内の任意の閾値電圧レベルにセットされてＥＰＲＯＭメモリセルのプログラムを行うことが可能となる。閾値電圧用ウィンドウ・サイズはデバイスの最小閾値レベルと最大閾値レベルによって区切られる。上記閾値は浮遊ゲート上へプログラム可能な電荷範囲に対応する閾値である。上記閾値ウィンドウは、一般にメモリ素子の特性、動作条件及び履歴に依って決まる。原則として、上記ウィンドウ内の個別の分解可能な各閾値電圧レベルの範囲を用いて、セルの明確に限定されたメモリ状態を示すことが可能となる。
【０００６】
ＥＰＲＯＭメモリの場合、メモリセルとして使用するトランジスタは、典型的には、薄型ゲート誘電体を通って基板チャネル領域から電子を加速し、浮遊ゲート上へ載るようにプログラムされた状態にセットされてプログラムされる。このメモリは、紫外線放射による浮遊ゲートの電荷の除去によりバルク消去を行うことが可能である。
【０００７】
図１Ａは、電荷を格納するための浮遊ゲートを備えたＥＥＰＲＯＭセルの形で不揮発性メモリを概略的に示す図である。電気的に消去可能でプログラム可能なリード・オンリー・メモリ（ＥＥＰＲＯＭ）は類似の対応する構造を有しているが、さらにこれに加えて、このリード・オンリー・メモリは、ＵＶ輻射線に曝す必要なく、適切な電圧の印加時に電荷を付加したり、その浮遊ゲートから電気的に電荷を取り除いたりするメカニズムを提供する。
【０００８】
このようなＥＥＰＲＯＭセルのアレイは、セルのアレイ全体、あるいは、重要なセル・グループのアレイが（ピカッと光って）まとめて電気的に消去されるとき、“フラッシュ”ＥＥＰＲＯＭアレイと呼ばれる。一旦消去されると、このセル・グループの再プログラムが可能となる。
【０００９】
図１Ｂは、電荷を格納するための誘電体層を備えたＮＲＯＭセルの形の不揮発性メモリを概略的に示す図である。浮遊ゲート内に電荷を格納する代わりに、ＮＲＯＭセルは、電荷を格納ための誘電体層を備えている。例えば、米国特許第５，７６８，１９２号と第６，０１１，７２５号には、２つのシリコン二酸化物層の間に挟まれたトラッピング誘電体を備えた不揮発性メモリセルが開示されている。
【００１０】
セルとアレイ構造
図１Ｃは、選択ゲートと制御ゲート（ステアリング・ゲート）の双方を備えたフラッシュＥＥＰＲＯＭセルを概略的に示す図である。このようなセル構造を備えたメモリ素子については、米国特許第５，３１３，４２１号に記載されており、該特許は本明細書に参考文献として取り入れられている。メモリセル１０は、ソース１４とドレイン１６拡散との間に“分割チャネル”１２を有する。２つのトランジスタＴ１とＴ２とを直列に備えたセルが有効に形成される。Ｔ１は、浮遊ゲート２０と制御ゲート３０とを備えたメモリ・トランジスタとしてサービスを供する。制御ゲートはステアリング・ゲート３０と呼ばれる。浮遊ゲートは選択可能な電荷量の格納が可能である。チャネルのＴ１部分を通って流れることが可能な電流量は、ステアリング・ゲート３０にかかる電圧と、間に介在する浮遊ゲート２０に存在する荷電量とに依って決まる。Ｔ２は、選択ゲート４０を備えた選択トランジスタとしてサービスを供する。選択ゲート４０において或る電圧によりＴ２のスイッチが入ると、Ｔ２によって、チャネルＴ１の部分の電流がソースとドレイン間を通ることが可能となる。
【００１１】
図１Ｄは、デュアル浮遊ゲートと、独立した選択ゲート及び制御ゲートとを備えた別のフラッシュＥＥＰＲＯＭセルを概略的に示す図である。このようなセル構造を持つメモリ素子については、同時継続の米国特許出願第０９／３４３，４９３号（１９９９年６月３０日出願）に記載があり、本明細書に参考文献として取り入れられている。メモリセル１０’は、直列の３つのトランジスタを有効に備えていることを除いて、図１Ｃのものと同様のメモリセルである。一対のメモリ・トランジスタ（Ｔ１左とＴ１右）の間に選択トランジスタＴ２が存在する。メモリ・トランジスタは、浮遊ゲート（２０’、２０”）と、ステアリング・ゲート（３０’、３０”）をそれぞれ有する。選択トランジスタＴ２は制御ゲート４０’により制御される。任意の時点で、この対のメモリ・トランジスタの一方だけが読み出しやプログラム作成のためにアクセスされる。記憶ユニットＴ１左がアクセスされているとき、Ｔ２とＴ１右の双方にスイッチが入り、チャネルのＴ１左の部分の電流がソースとドレインの間を通ることが可能になる。同様に、記憶ユニットＴ１右がアクセスされているとき、Ｔ２とＴ１左にスイッチが入る。浮遊ゲートの近傍に選択ゲート・ポリシリコンの一部を設けることにより消去が行われ、さらに、浮遊ゲート内に格納された電子が選択ゲートのポリシリコンまでトンネルできるように、極めて大きな正の電圧（例えば２０Ｖなど）が選択ゲートに印加される。
【００１２】
図２は、デコーダを備えた、行と列を成すメモリセルのアドレス可能なアレイを示す概略ブロック図である。メモリセル１００の２次元アレイが形成され、メモリセルの各行がデイジ・チェーン法で上記２次元アレイのソースとドレインにより接続している。各メモリセル５０は、ソース５４、ドレイン５６及びステアリング・ゲート６０と選択ゲート７０とを備えている。１行のセルにはワード線１１０と接続された該セルの選択ゲートが設けられる。１列のセルはそのソースとドレインとを備え、これらのセルはそれぞれビット線１２４、１２６と接続している。１列のセルはそのステアリング・ゲートも備え、このステアリング・ゲートはステアリング・ライン１３０によって接続されている。
【００１３】
プログラミングや読み出しを行うためにセル５０のアドレス指定を行う場合、プログラミング用あるいは読み出し用の適当な電圧（ＶＳ、ＶＤ、ＶＳＴＧ、ＶＳＬＧ）をセルのソース５４とドレイン５６、ステアリング・ゲート６０及び選択ゲート７０へそれぞれ供給する必要がある。ワード線デコーダ１１２は、選択されたワード線を選択された電圧ＶＳＬＧと選択的に接続する。アドレス指定された列の上記対のビット線１２４、１２６は、ビット線デコーダ１２２によってソース電圧ＶＳ及びドレイン電圧ＶＤとそれぞれ選択的に接続される。同様に、アドレス指定された列のステアリング・ライン１３０はステアリング・ライン・デコーダ１３２によってステアリング（制御）ゲート電圧ＶＳＴＧと選択的に接続される。
【００１４】
したがって、２次元アレイのフラッシュＥＥＰＲＯＭセルの所定のセルが、一対のビット線とステアリング・ラインの列方向に、かつ、ワード線の行方向にアドレス指定され、選択または復号化によるプログラミングや読み出しが行われる。パフォーマンスを上げるために、列デコーダ１２２と１３２により１グループの列の選択が可能になり、したがって、対応するセル・グループすなわちチャンクでの並列アクセスが可能になり、それによってグループ毎のセル行にアクセスが行われる。
【００１５】
以前、多くのフラッシュＥＥＰＲＯＭデバイスは、各行に沿ってセルのすべての制御ゲートを接続するワード線を備えていた。したがって、ワード線により実質的に２つの機能（行選択機能と、読み出しやプログラミングを行うための、行のすべてのセルへの制御ゲート電圧の供給機能）とが実行される。しかし、単一の電圧を用いて最適の方法でこれらの機能の双方を実行することは困難であることが多い。この単一の電圧は、行選択を行うには十分であっても、プログラミングを行うのに望ましい電圧に比べると高い電圧である可能性がある。しかし、セルが独立したステアリング・ゲートと選択ゲートとを備えていて、１列のセルの選択ゲートと接続したワード線が選択機能を実行する一方で、ステアリング・ラインが最適の、独立した制御ゲート電圧を列内の個々のセルへ供給する機能を実行するだけで十分である。
【００１６】
セル特性
通常の２状態ＥＥＰＲＯＭセルでは、少なくとも１つの電流のブレークポイント・レベルが確定され、導通ウィンドウの分割が行われて２つの領域がつくられる。所定の定電圧の印加によりセルが読み込まれると、そのソース／ドレイン電流はブレークポイント・レベル（または基準電流ＩＲＥＦ）との比較によりメモリ状態に分解される。読み出された電流のほうがブレークポイント・レベルの電流またはＩＲＥＦよりも高い場合、セルは、１つの論理状態（例えば“０”状態など）をなすように設定されるのに対して、電流がブレークポイント・レベルの電流よりも低い場合、セルはもう一方の論理状態（例えば“１”状態など）をなすように設定される。したがって、このような２状態セルによって１ビットのデジタル情報の格納が行われる。基準電流源は、外部でプログラムすることも可能ではあるが、ブレークポイント・レベル電流を生成するメモリ・システムの一部として提供されることも多い。
【００１７】
メモリ容量を上げることを目的として、半導体技術の進歩に伴ってフラッシュＥＥＰＲＯＭデバイスはますます高密度になる記録密度で製造されている。記憶容量を上げる別の方法として、各メモリセルに３以上の状態を格納させる方法がある。
【００１８】
マルチ状態またはマルチレベルＥＥＰＲＯＭメモリセル用として、導通ウィンドウは２以上のブレークポイントにより３以上の領域に分割され、各セルが１ビット以上のデータの格納能力を持つことができるようになる。与えられたＥＥＰＲＯＭアレイが格納可能な情報はこのように各セルが格納することが可能な状態数を用いて増やされる。マルチ状態すなわちマルチレベル・メモリセルを持つＥＥＰＲＯＭまたはフラッシュＥＥＰＲＯＭについては米国特許第５，１７２，３３８号に記載がある。
【００１９】
実際には、セルのメモリ状態は、基準電圧が制御ゲートに印加されたときのセルのソース電極とドレイン電極の両端にわたる伝導電流の検知により通常読み出される。したがって、セルの浮遊ゲートの各々の所定の電荷について、一定の基準制御ゲート電圧に関連して対応する伝導電流の検出が可能となる。同様に、浮遊ゲート上へプログラム可能な電荷範囲により、対応する閾値電圧用ウィンドウや対応する伝導電流ウィンドウが画定される。
【００２０】
上記とは別に、分割された電流ウィンドウ間の伝導電流を検出する代わりに、制御ゲートにおける閾値電圧を検出して、伝導電流に一定の基準電流を“トリップ”させる（横切らせる）ようにすることも可能である。したがって、上記検出は、分割された閾値電圧用ウィンドウ間の閾値電圧で実行される。
【００２１】
図３は、任意の時点で浮遊ゲートの選択的格納が可能な４つの異なる電荷Ｑ１〜Ｑ４についてのソース・ドレイン電流ＩＤと制御ゲート電圧ＶＳＴＧとの間の関係を示す図である。４つの実線で示すＩＤ対ＶＳＴＧの曲線は、メモリセルの浮遊ゲート上にプログラムできる４つの可能な電荷レベルを表し、４つの生じる可能性のあるメモリ状態にそれぞれ対応する。一例として、セルの母集団の閾値電圧用ウィンドウは０．５Ｖから３．５Ｖの範囲をカバーすることができる。閾値ウィンドウを分割して６つのメモリ状態を画定し、各々０．５Ｖの間隔の５つの領域にすることができる。例えば、図示のように、２μＡの基準電流（ＩＲＥＦ）を用いる場合、Ｑ１でプログラムされたセルは、メモリ状態“１”にあると考えることができる。なぜなら、この曲線が、ＶＳＴＧ＝０．５Ｖと１．０Ｖによって画定される閾値ウィンドウの領域内でＩＲＥＦと交差しているからである。同様にＱ４はメモリ状態“５”にある。
【００２２】
以上の説明からわかるように、１つのメモリセルが多くの状態を格納するようになればなるほど、その閾値ウィンドウはより細かく分画されることになる。このことにより、必要な精度の達成を可能にするために、プログラミング処理時及び読出し処理時により高い精度が必要とされることになる。
【００２３】
米国特許第４，３５７，６８５号に２状態ＥＰＲＯＭのプログラミング方法が開示されており、該方法では、セルが所定の状態にセットされてプログラムされると、セルは、連続するプログラミング電圧パルスを受け、その度に増分する電荷が浮遊ゲートに加えられる。パルス間で、ブレークポイント・レベルと比較してそのソース・ドレイン電流を測定するためにセルのリードバック（ベリファイ）が行われる。電流状態が所望の状態に達したことがベリファイされたときプログラミングは停止する。使用するプログラミング・パルス列が増加する周期や振幅を持つ場合もある。
【００２４】
従来技術によるプログラミング回路は単に、プログラミング・パルスを印加して、閾値ウィンドウを通って消去された状態または基底状態から目標状態に達するまで１ステップずつ進むようにするものにすぎない。実際には、適当な精度を可能にするには、各分割すなわち画定された領域は、少なくともおよそ５つの越えるべきプログラミング・ステップを必要とする。このパフォーマンスは２状態メモリセル用としては容認できるものである。しかし、マルチ状態セルの場合、所要ステップ数は分割の数と共に増加するため、プログラミングの精度すなわち精密さも増やす必要がある。例えば、１６個の状態セルでは、目標状態にセットしてプログラムするために平均して少なくとも４０個のプログラミング・パルスを必要とする場合もある。
【００２５】
【発明が解決しようとする課題】
したがって、本発明の一般的目的は、高密度で、高性能で、しかも低価格のメモリ素子を提供することである。
【００２６】
特に、実質的に３以上のメモリ状態のサポートが可能なフラッシュＥＥＰＲＯＭを提供することが本発明の一般的目的である。
【００２７】
コンピュータ・システムの磁気ディスクメモリ素子を置き換えるフラッシュＥＥＰＲＯＭ半導体チップを提供することが本発明の別の一般的目的である。
【００２８】
改善されたプログラミング回路とフラッシュＥＥＰＲＯＭデバイスのための方法を提供することが本発明の目的である。
【００２９】
また、長い使用期間にわたる改善された精度と信頼性を備えた、単純で、製造し易いプログラミング回路を提供することが本発明の目的である。
【００３０】
【課題を解決するための手段】
上記目的及び追加の目的は、不揮発性浮遊ゲート・デバイスのためのプログラミング回路ならびに技法の改善により達成される。本発明の様々な局面は、きめ細かなプログラミング精度を達成しながらパフォーマンスの向上に役立つものである。本発明の１つの特徴として、プログラムの対象データ（目標状態）のために最適化された振幅を持つプログラミング・パルスを利用して、第１のステップまたは最初の数ステップ内で、上まわることなく可能な限り目標状態の近傍にセルをプログラムするようにするという特徴がある。第２の特徴として、一連の処理段を通じてプログラミングの反復を行うという特徴があるが、その場合、各段と共に、ますます増えるさらにきめ細かなプログラミング・ステップがプログラミング波形により形成される。別の特徴として、１グループのセルに並列に印加可能なプログラミング処理時に第１の２つの特徴を実現するという特徴がある。このようにして、並列処理によりパフォーマンスの向上を図りながら、高い精度と、目標状態への高速の収束の双方を同時に達成することが可能となる。
【００３１】
本発明の１つの局面によれば、マルチ状態セルを備えたメモリ素子において、１グループのメモリセルに並列印加が可能なプログラミング回路及び方法の改善が含まれる。当該セルに格納する対象データ用としてセルの各々に並列に印加されるプログラミング・パルスの最適化が行われる。このようにして、セルの各々は、プログラミング・パルスのうちの最小のパルスを用いてその目標状態にセットされてプログラムされる。好ましい実施態様では、これは、複数の電圧レベルを出力するプログラミング電圧バスの供給と、グループ内の各セル用プログラミング回路とにより達成され、このプログラミング回路はその目標状態にセットされた各セルのプログラミングに適した最適電圧レベルを上記電圧バスから選択することができる。
【００３２】
本発明の別の局面によれば、プログラミング・パルスは、ますますきめ細かくなるプログラミング精度で、複数のプログラミング処理段にわたって印加される。好ましい実施態様では、各段の処理中、階段波形の形のプログラミング電圧がセルの各々に並列に印加される。グループ内の１つのセルは、目標状態に対応する目標レベル未満の或る所定のレベル・オフセット値を上まわるようにプログラムされている場合には、さらなるプログラミングから除外される。上記オフセット値は、所定のレベルを越えたセルをプログラムするプログラミング・パルスが所定のマージン以上に目標レベルを越えることがないようにする値である。この所定マージンは、プログラミング・ステップのサイズにより暗黙のうちにセットされる。最後の段の処理中、上記所定のレベルは目標レベルと同じものとなり、オフセット値はゼロとなる。このようにして、高い精度を達成しながら、目標状態への高速の収束が可能となる。
【００３３】
上記の改善されたプログラミング回路と技法とにより、セルの導通状態または閾値電圧の範囲の細かな分割により、より高密度のメモリ素子のサポートが可能となる。好ましい実施態様では、１６個の異なる状態を持つフラッシュＥＥＰＲＯＭセルを約１０〜２０個のプログラミング・ステップの範囲内でプログラムすることが可能となる。データ依存型プログラミング電圧の改善された特徴とマルチフェーズ・プログラムとが大容量の並列処理で実現されるとき、高密度で高性能、しかも低価格のフラッシュＥＥＰＲＯＭが可能となる。
【００３４】
本発明の追加の目的、特徴及び利点については、添付図面と関連して行われる本発明の好ましい実施態様についての以下の説明から理解されるであろう。
【００３５】
【発明の実施の形態】
図４は、本発明の好ましい実施態様による１グループのメモリセルを並列にプログラムするプログラミング・システムを示すブロック図である。プログラミング・システム２００は、最適化した個々のプログラミング電圧ＶＳＴＧ（１）、…、ＶＳＴＧ（ｋ）を１グループのｋ個のメモリセル、５０、…、５０’のステアリング・ゲート６０、…、６０’へ供給するマルチフェーズ・プログラミング回路２１０、…、２１０’のバンクを具備する。１つの好ましい実施態様ではグループ・サイズｋ＝４０９６個のセルが並列にプログラムされる。
【００３６】
マルチフェーズ・プログラミング回路２１０は、セル５０のステアリング・ゲートへ一連のプログラミング電圧パルスを実質的に供給する。セル５０を目標状態Ｓ１にセットしてプログラムする場合、セルをＳ１ にセットして正確かつ迅速にプログラムするために供給電圧パルスの最適化が行われる。１つの好ましい実施態様では、各セル５０の閾値ウィンドウが分割され、１６個の状態の中の１つが指定される。例えば、０．５〜３．５Ｖの間の閾値電圧用ウィンドウの範囲にわたるセルは、１６個の状態を画定するためにほぼ０．２Ｖ間隔の分割を必要とする。これは、２状態分割で用いられる精度よりもほぼ１桁大きいものである。
【００３７】
マルチ電圧バス２２０が電源２２２により駆動され、この分割された状態をプログラミングし、読み出すための複数の最適起動電圧Ｖ０が供給される。一般に、利用可能な電圧が大きければ大きいほど、起動電圧の最適化はきめ細かなものになる。好ましい実施態様では、マルチ電圧バスは分割された閾値電圧の各々とほぼ同じ電圧を供給する。本例では、バスは、電圧が０．４、０．６、０．８、１．０、１．２、１．４、１．６、１．８、２．０、２．２、２．４、２．６、２．８、３．０、３．２、３．４Ｖの１６個の電源ラインを具備する。
【００３８】
目標状態Ｓ１ にセットしてセル５０をプログラムする場合、データはデータ・ラッチ２３２に格納されている。データ・ラッチ２３２内の目標状態データＤ（Ｓ１ ）（これはマルチビットであってもよい）に応じて、目標状態Ｓ１ にセットしてセルをプログラムするために最適化されたバス線路電圧、Ｖ０（Ｓ１）の中の１つが電圧選択装置２３０により選択される。
【００３９】
前述したように、プログラミング・パルスを交番して、リードバックに先行するセルの印加によりプログラミングが行われ、結果として得られるセルのメモリ状態が測定される。ベリファイ（リードバック）処理中、電圧Ｖ０（Ｓ１）はセルのステアリング・ゲート６０に印加される。プログラミング中、所定の波形プロファイルを持つプログラミング電圧を構成する基礎が電圧Ｖ０（Ｓ１）により形成される。所望のプログラミング・レートに応じて、波形プロファイルが平坦波形プロファイルから、増加するプログラミング・レートの結果である増加波形プロファイルになる場合もある。１つの好ましい実施態様では所定の波形プロファイルは階段波形である。
【００４０】
ベリファイ処理中、電圧選択装置２３０から出力されるＶ０（Ｓ１）用のパス２３４をセル５０のステアリング・ゲート６０へ供給することが信号ＶＥＲＩＦＹにより可能となる。この結果生じるソース・ドレイン電流はセンス・アンプ２４０により基準電流と比較される。プログラミングの開始に先行して、セル５０は消去された状態にあるが、この状態でソース・ドレイン電流は基準電流よりも大きい。セル５０が次第にプログラムされるにつれて、電荷が浮遊ゲートに累積し、それによってチャネルのステアリング・ゲートのＶ０（Ｓ１）の電界効果が損なわれ、その結果、ソース・ドレイン電流は、ベリファイ中、基準電流ＩＲＥＦのソース・ドレイン電流以下に下がるまで減少する。その時点で、セルは所望のレベルにセットされてプログラムされ、次いで、センス・アンプ２４０からのＬＯＷになる出力信号ＰＡＳＳＥＤ＊によりイベントに信号が出される。
【００４１】
プログラミング処理中、マルチフェーズ・プログラム電圧発生器２５０はＶ０（Ｓ１）を利用して、セルのステアリング・ゲート６０へ供給すべき様々な波形を生成するための基礎を形成する。マルチフェーズ・プログラム電圧発生器２５０は、様々な処理段の下で様々な波形を生成し、ローカル・セル５０の状態、並びに、ｋ個のセルからなるグループ内のすべてのセルの状態に応じてセル・プログラム制御装置２６０により制御される。
【００４２】
セル・プログラム制御装置２６０はセンス・アンプ２４０の出力信号に応答する。上述のように、セルが所望のレベルにセットされてプログラムされるとき、センス・アンプの出力信号ＰＡＳＳＥＤ＊はＬＯＷになり、このＬＯＷ信号は制御装置２６０に信号ＰＧＭ１＊を出力させ、プログラム抑制回路２８０をＨＩＧＨにする。プログラム抑制回路２８０は、ＨＩＧＨになると、ドレイン・ゲートとステアリング・ゲートとへ適切な電圧を印加することにより、さらなるプログラミングから実質的にセル５０を抑制する。
【００４３】
ｋ個のセルを並列にプログラミングするために、マルチフェーズ・プログラミング回路のバンク、２１０、…、２１０’が採用され、各セルについて１つのプログラミング回路が使用される。ｋ個のマルチフェーズ・プログラミング回路セルの各々から、状態ＰＧＭ１＊、…、ＰＧＭｋ＊に応じて、プログラミング回路のバンクのプログラミング処理の調整が並列プログラム制御装置２９０により行われる。後程さらに詳細に説明するように、すべてのｋ個のセルが、それらのセルのそれぞれの所望レベルにセットされてプログラムされた後、新しい段が始まるが、これは、各セルが、各セルのセンス・アンプの基準電流をトリップすることと同じことである。この結果、ＰＧＭ１＊からＰＧＭｋ＊はすべてＬＯＷとなってしまう。
【００４４】
図５は、マルチフェーズ・プログラム電圧発生器２５０と図４のマルチフェーズ・プログラミング回路２１０のセル・プログラム制御装置２６０とをさらに詳細に示す図である。図６〜８に図示のタイミング図と組み合せて、様々な構成要素の動作について最善の説明を行うこととする。
【００４５】
本質的には、ＨＩＧＨをパルスする制御信号ＳＡＭＰＬＥにより指定されているような処理の最初の段で、マルチフェーズ・プログラム電圧発生器２５０は最適化された電圧Ｖ０（Ｓ１）をサンプルし、サンプル＆ホールド回路３００にこの電圧Ｖ０を格納する。サンプル＆ホールド回路３００は出力ノードを備え、このノードで、（以下説明する３３０、３５０などのような）別のソースから得られる電圧が加算され、その結果生じる電圧ＶＬａｓｔが形成される。次いで、この電圧ＶＬａｓｔは、ソースフォロワ３１０を駆動して、セル５０のステアリング・ゲートでプログラミング電圧ＶＳＴＧ（１）を供給する。
【００４６】
サンプル＆ホールド回路３００は、共用ノード３０３を間に備えた２つの直列トランジスタ３０２、３０４と、出力ノード３０７とによりゲートされる入力部を具備する。この共用ノード３０３は別のトランジスタ３０８によりゲートされる電圧ＶＨＯＬＤにセットしてもよい。
【００４７】
好ましい実施態様では、その他の電圧源が出力ノード３０７で加算され、関連するＡＣ用カプラ３３０を備えた第１段の波形発生器３２０と、関連するＡＣ用カプラ３５０を備えた第２段の波形発生器３４０とにより生成されるＶＬａｓｔが生みだされる。
【００４８】
図６（ａ）〜６（ｅ）は、図５のマルチフェーズ・プログラム電圧発生器のサンプル＆ホールド動作のためのタイミング図である。処理中、並列プログラム制御装置２９０（図４を参照）は、２つの直列トランジスタ３０２と３０４のスイッチをオンにするＳＡＭＰＬＥ信号をオンにセットし、ＡＣ用カプラ３３０のキヤパシタＣ１の両端にわたる入力電圧Ｖ０（Ｓ１）の維持を可能にする。波形発生器３２０と３４０のパスは、ゲーティング信号Ｇ１とＧ２（図６（ｃ））とによりそれぞれブロックされているので、サンプル＆ホールド動作時にＶＬａｓｔに寄与することはない。したがって、出力ノード３０７では、Ｖ０（Ｓ１）の値（図６（ｅ））が当初電圧ＶＬａｓｔにより仮定されている。その後、ＳＡＭＰＬＥがＬＯＷになった（図６（ａ））状態で、２つの直列トランジスタのスイッチはオフになり、信号ＨＯＬＤ（図６（ｂ））がトランジスタ３０８のゲートでオンにセットされた後、共用ノード３０３は電圧ＶＨＯＬＤの取得を許される。この脱バイアスな（ｄｅｂｉａｓｉｎｇ）構成によって、トランジスタ３０４を介するＶＬａｓｔの戻り漏洩が数桁分低減され、ノード３０７に格納するサンプルされた電圧の精度が保証される。
【００４９】
図５に図示のセル・プログラム制御装置２６０はセット／リセット用ラッチ２６２を具備する。セル５０の伝導電流が基準電流レベル以下になるようにセル５０がプログラムされているとき、センス・アンプはＨＩＧＨからＬＯＷへ移動する信号ＰＡＳＳＥＤ＊を出力する。この信号ＰＡＳＳＥＤ＊を用いて、セット／リセット用ラッチ２６２をセットし、ラッチした出力信号ＰＧＭ１＊をＨＩＧＨからＬＯＷへ変更し、次いで、この変更によりプログラム抑制回路２８０の起動が可能となる。
【００５０】
図７（ａ）〜７（ｉ）は、図５に図示のマルチフェーズ・プログラム電圧発生器の第１段処理のタイミング図である。好ましい実施態様では、プログラミングに先行してベリファイ処理が実行される。リセット信号は、ラッチされた出力信号ＰＧＭ１＊がＨＩＧＨになるようにセット／リセット用ラッチ２６２をリセットする。ＶＥＲＩＦＹ信号がＨＩＧＨになるときはいつでもベリファイ処理が可能となる。逆に、ＶＥＲＩＦＹ信号がＬＯＷのとき、プログラミング処理が可能となる。セル５０が適切に消去された場合、センス・アンプ２４０の出力信号ＰＡＳＳＥＤ＊はＨＩＧＨになり、センス・アンプ２４０の信号がＨＩＧＨであることによりプログラミングを行うことが可能となる。なぜなら、上記ＨＩＧＨ信号はプログラム抑制回路２８０を作動させないからである。（図４も参照されたい）。
【００５１】
プログラミング処理の第１段の処理中、並列プログラム制御装置２９０から出力される制御信号Φ１（図７（ｅ））により第１の波形発生器３２０がＨＩＧＨにされる。次いで、パス・ゲート信号Ｇ１がＨＩＧＨのとき、第１の波形発生器３２０は１以上の階段状パルスの形でＶ１（ｔ）（図７（ｈ））を生成する。好適には、別様の急な立上がりをやわらげるために、第１のパルスの最初の立上がりをランプすることが望ましく、それによってメモリセルに対する何らかの望ましくない応力が加減される。波形の各連続パルスは、セルの目標状態を指定する好適なレベルとなるように設定された目標レベルへ向かってセルのプログラムされたレベルを移動させる。プログラミング・ステップの個別の性質に起因して、所定のメモリ状態を表すように指定されたプログラムされたレベルの統計的分布が生じる。本実施態様では、上記プログラムされた閾値レベルが、所定のメモリ状態と関連づけられた、プログラムされたレベルの範囲内に入ったとき、セルは当該状態にセットされてプログラムされたと考えられる。プログラムされたレベルの範囲は、目標レベルにより、下端で区切られ、また、当該状態と関連づけられた所定のマージンにより上端で区切られる。
【００５２】
プログラムされたレベルの範囲を上まわることを回避するために、プログラミング回路は、上記範囲に達していない所定のレベルを用いて、各段の処理中プログラミングの停止時期の測定を行う。目標レベルにまで達していない上記所定のレベルのオフセットは、プログラミング・パルスが移動したとき、プログラムされたレベルが上記所定のレベルを上まわるように設定されるため、上記所定のレベルが関連する所定のマージン分以上に目標レベルを上まわることはない。言い換えれば、一旦所定のレベルを上まわると、セルは、当該状態のプログラム・レベル範囲の上端を上まわらないレベルにセットされてプログラムされる。その場合、現段のプログラミング・パルスはもはや印加されない。したがって、階段波形の上昇レートと、第１段の所定のレベルとに対する考慮は以下のようになる。上記目標レベルは、可能な限り迅速に連続パルスを用いてアプローチされるが、単一パルスに起因して、メモリセルの閾値が目標レベルを越えて第１段の所定のレベル及び関連する所定のマージンの双方を上まわることはない。
【００５３】
Ｖ１（ｔ）は、ＨＩＧＨの制御信号ＰＧＭ１＊によりノード３３３でＨＩＧＨにされ、次いで、Ｖ１（ｔ）はＡＣ用カプラ３３０を介して出力ノード３０７へ加算される。（図７（ｄ）、７（ｈ）を参照）。したがって、出力ノード３０７での電圧は、ＶＬａｓｔ＝Ｖ０Ｓ１ ）＋ｂ１ Ｖ１ （ｔ）（但し、ｂ１は１に近い結合比）となり、さらに、上記電圧はソースフォロワ３１０の中を通り、セル５０のステアリング・ゲートへの供給電圧となる。（図７（ｉ）を参照）。プログラミング・パルスが連続して印加されるのに伴い、最終的に、セル５０は第１段の所定のレベルにセットされてプログラムされる。この時点で、信号ＰＡＳＳＥＤ＊（図７（ｃ））はＬＯＷになり、次いで、信号ＰＧＭ１＊がＬＯＷにされ（図７（ｄ））、このＬＯＷになった信号ＰＧＭ１＊によりプログラム抑制回路２８０が起動されて、セル５０のさらなるプログラミングが抑制される。同時に、ＬＯＷになったＰＧＭ１＊はＧ１をＬＯＷにし（図７（ｆ））、このＬＯＷになったＧ１により第１の波形発生器３２０からＡＣカプラ３３０が切断され、それによって、この切断時刻に波形の振幅でＶ１がフリーズされる。Ｔ１ｆをＰＧＭ１＊がＬＯＷになる時刻とすると、Ｖ１＝Ｖ１（Ｔ１ｆ）となり、その結果、ＶＬａｓｔ（Ｔ１ｆ）＝Ｖ０（Ｓ１）＋ｂ１Ｖ１（Ｔ１ｆ）となる。
【００５４】
その間、次第に多くのセルがその関連する第１段の所定のレベルに達し、並列プログラミング処理から脱落してゆく間、グループの他のセルの並列プログラミングは継続して行われる。各セルが脱落するとき、それらセルの関連する各ＶＬａｓｔは、プログラム抑制時刻にステアリング・ゲートに印加される対応する電圧を保持する。最終的に、グループを構成する全てのセルは、対応する所定のレベルにセットされてプログラムされた状態になり、ＰＧＭ１＊からＰＧＭｋ＊のすべてがＬＯＷになることによりこのイベントに信号が出される。ＰＧＭ１＊からＰＧＭｋ＊のすべてがＬＯＷになったことにより、プログラム制御装置２９０は次の段の開始を促される。
【００５５】
図８（ａ）〜８（ｊ）は、図５に図示のマルチフェーズ・プログラム電圧発生器の第２段処理を行うためのタイミング図である。この第２段は、制御信号Φ１がＬＯＷである（図８（ｅ））ことにより第１の波形発生器が起動不能であることを除けば、プログラミングに先行して実行されるベリファイから始まる第１段の場合と同様の段である。第１の波形発生器が起動不能である代わりに、並列プログラム制御装置２９０からの制御信号Φ２（図８（ｆ））により第２の波形発生器３４０が起動可能であり、この第２の波形発生器３４０により１以上の階段状パルス（図８（ｉ））の形のＶ２（ｔ）が生成される。上記セルのプログラムされたレベルは、この波形の各連続パルスにより、目標レベルから第２段の所定レベルのオフセット値の方へ動かされる。上記階段波形の上昇レートと、第２段の所定レベルとは、連続パルスを用いて可能な限り迅速に目標レベルにアプローチしながら、しかも、第２段の所定レベル及び関連する所定マージンの双方が目標レベルを越えてメモリセルの閾値を上まわることがないように単一パルスにより設定されるものである。一般に、上記階段波形の上昇レートと所定レベルとは、第１段のものに比べてずっときめ細かなものになる。
【００５６】
Ｖ２（ｔ）は、ノード３３５で（第２段の開始時にすべてのラッチがリセットされて（図８（ａ））、リセットされてＨＩＧＨになっている制御信号ＰＧＭ１＊（図８（ｄ））により起動可能となり、次いで、Ｖ２（ｔ）は、ＡＣ用カプラ３５０を介してノード３３３へ加算される。したがって、出力ノード３０７における電圧は、ＶＬａｓｔ＝Ｖ０（Ｓ１）＋ｂ１［Ｖ１（Ｔ１ｆ）＋ｂ２［Ｖ２（ｔ）−Ｖ２ｉ］となる。但し、ｂ２は別の結合比であり、Ｖ２ｉはＧ１がＬＯＷになるときのＶ２の値であり、第１段の終了前に印加される所定のオフセット値（例えば約０．４Ｖなど）である。ＶＬａｓｔは、ソースフォロワ３１０の中を通り、セル５０のステアリング・ゲートへの供給電圧となる。（図８（ｊ）を参照）。プログラミング・パルスが連続して印加されるのに伴い、最終的に、セル５０は現段の所定レベルにセットされてプログラムされる。この時点で、信号ＰＡＳＳＥＤ＊（図８（ｃ））はＬＯＷになり、次いで、信号ＰＧＭ１＊がＬＯＷにされ（図８（ｄ））、このＬＯＷになった信号ＰＧＭ１＊によりプログラム抑制回路２８０が起動されて、セル５０のさらなるプログラミングが抑制される。同時に、ＬＯＷになったＰＧＭ１＊はＧ２をＬＯＷにし（図８（ｇ））、このＬＯＷになったＧ２により第２の波形発生器３４０からＡＣカプラ３５０が切断され、それによって、この切断時刻に波形の振幅でＶ２がフリーズされる。Ｔ２ｆをＰＧＭ１＊がＬＯＷになる時刻とすると、Ｖ２＝Ｖ２（Ｔ２ｆ）となり、その結果、ＶＬａｓｔ（Ｔ２ｆ）＝Ｖ０（Ｓ１）＋ｂ１Ｖ１（Ｔ１ｆ）＋ｂ２［Ｖ２（Ｔ２ｆ）−Ｖ２ｉ］となる。
【００５７】
同様に、次第に多くのセルがその関連する第１段の所定レベルに達し、並列プログラミング処理の中から脱落し、それらセルの各ＶＬａｓｔが、プログラム抑制時刻にステアリング・ゲートに印加される電圧を保持している間、グループを構成する他のセルの並列プログラミングは継続して行われる。最終的に、グループを構成する全てのセルは、所定のレベルにセットされてプログラムされた状態になり、ＰＧＭ１＊からＰＧＭｋ＊のすべてがＬＯＷになることによりこのイベントに信号が出される。ＰＧＭ１＊からＰＧＭｋ＊のすべてがＬＯＷになったことにより、プログラム制御装置２９０は次の段の開始を促される。
【００５８】
同様の構成がさらに高い段に適用され、その段では、前の段の最後にフリーズしたＶＬａｓｔのレベルに加算された電圧が波形発生器により生成される。最後の段で、上記所定のレベルは目標状態に対応する目標レベルと同じレベルとなる。
【００５９】
別の実施態様では、ＶＬａｓｔは１つのマルチフェーズ波形発生器により生成される。
【００６０】
マルチフェーズ・プログラムの実行により、様々な処理段中、階段波形の様々な上昇レートが可能となる。プログラミング・ステップの階層により、プログラム対象の目標状態にアプローチし、第１段は粗いアプローチを行い、上記目標状態を越えることなく最少のステップ数で目標状態にアプローチし、次いで、一連のさらにきめ細かなステップを持つ次の段が続き、再度、目標状態を越えることなく最少のステップ数で目標状態にアプローチする、等々。このようにして、一連の増加するプログラミング・パルスがセル５０のステアリング・ゲート６０に印加され、各段の処理中上昇レートを最適化して目標状態への高速の収束が行われるようにする。
【００６１】
上述のように、最終段に達していない各段については、目標状態に達していないレベルを目標レベルとして利用し、当該段のプログラミング・ステップで上記レベルを上まわることにより実際の目標状態を越えるようなことがないようにする。最終段ではこの目標が実際の目標状態となる。好ましい実施態様では、この段依存レベルは、ベリファイ処理中ステアリング・ゲートに印加される電圧ＶＳＴＧを所定の量だけシフト・ダウンすることにより実現される。その結果、実際の目標状態に達する前に、センス・アンプ２４０（図４を参照）によるトリッピングが生じる。電源２２２（図４を参照）は段の状態に応じてマルチ電圧バス２２０の電圧を適宜調整する。
【００６２】
別の実施態様では、値を漸次低くするために、図４に図示のセンス・アンプ２４０により用いられる基準電流ＩＲＥＦの調整により段依存ベリファイが行われる。
【００６３】
さらに別の実施態様では、ベリファイ処理中ステアリング・ゲートに印加される電圧を所定の量だけシフト・ダウンする処理と、センス・アンプにより用いられる基準電流の調整との組合せにより段依存ベリファイが行われる。
【００６４】
複数の実施態様により、１６個の状態に分割されたセルの場合、約１０〜２０程度のステップ以内で目標状態へのプログラミングの収束が可能であることが判明した。例えば、１つの好ましい実施態様は２段階プログラミング処理を有し、第１段は第１の増加波形を持ち、この第１の増加波形に、もっと穏やかな傾斜の波形を持つ第２段が後続する。別の実施態様では、第１の段が単一パルスで、この単一パルスに２つの一連の階段波形が後続する３段階処理が行われる。様々な組合せが可能であり、本発明による考慮の対象となる。
【００６５】
以上説明したプログラミング・システム２００の１つの利点として、たとえ大きなグループのセルを並列にプログラムする場合であっても、すべてのセルが同じ電源バス２２０を共用してデータ依存型プログラミング電圧を実現できるという点が挙げられる。同様に、３２０、３４０、…のような段依存型波形発生器もグループ内のすべてのセルによって共用される。
【００６６】
図９は、本発明の好ましい実施態様に従う、１グループのメモリセルのマルチフェーズ並列プログラミングを示すフローチャートである。
2004519804.tif 000003
2004519804.tif 000004
【００６７】
電荷を格納する浮遊ゲートや誘電体層を含む不揮発性半導体メモリを参照しながら本発明の実施態様について以上解説した。しかし、本発明の様々な局面はいずれのタイプの不揮発性メモリに対しても適用が可能であり、状態依存の最適制御電圧プログラミング・パルスの印加によって、この不揮発性メモリの中で精密なプログラミングの実行が可能となる。例えば、上記方法論は、金属窒化酸化物シリコン（ＭＮＯＳ）やポリシリコン窒化酸化物シリコン（ＳＯＮＯＳ）デバイスなどのマルチ誘電体メモリ素子に適用可能である。同様に、上記方法論は、ＭＲＯＭデバイスにも適用可能である。
【００６８】
以上説明した本発明の実施態様は望ましい実施構成であったが、当業者であれば、本発明の変形例も可能であることを理解するであろう。したがって、本発明は添付の請求項の最大範囲の保護を受ける資格を有するものである。
【図面の簡単な説明】
【図１Ａ】
ＥＥＰＲＯＭセルの形の不揮発性メモリを概略的に示す。
【図１Ｂ】
ＮＲＯＭセルの形の不揮発性メモリを概略的に示す。
【図１Ｃ】
選択ゲート及び制御（ステアリング）ゲートの双方を備えたフラッシュＥＥＰＲＯＭセルを概略的に示す。
【図１Ｄ】
デュアル浮遊ゲートと、独立した選択ゲート及び制御ゲートとを備えた別のフラッシュＥＥＰＲＯＭセルを概略的に示す。
【図２】
デコーダを備えた行と列を成すメモリセルのアドレス可能なアレイの概略ブロック図である。
【図３】
任意の時点で浮遊ゲートによる格納が可能な４つの異なる電荷Ｑ１〜Ｑ４についてのソース・ドレイン電流Ｉ（ｔ）と制御ゲート電圧ＶＳＴＧとの間の関係を示す。
【図４】
本発明の好ましい実施態様に従う、１グループのメモリセルを並列にプログラムするためのプログラミング・システムを示すブロック図である。
【図５】
図４のマルチフェーズ・プログラム電圧発生器と、マルチフェーズ・プログラミング回路のセル・プログラム制御装置とをさらに詳細に示す。
【図６】
図５のマルチフェーズ・プログラム電圧発生器のサンプル＆ホールド動作のタイミング図である。
【図７】
図５に図示のマルチフェーズ・プログラム電圧発生器の第１段処理のタイミング図である。
【図８】
図５に図示のマルチフェーズ・プログラム電圧発生器の第２段処理のタイミング図である。
【図９】
本発明の好ましい実施態様に従う、１グループのメモリセルのマルチフェーズ並列プログラミングのフローチャートである。
【図１Ａ】
2004519804.tif 000005
【図１Ｂ】
2004519804.tif 000006
【図１Ｃ】
2004519804.tif 000007
【図１Ｄ】
2004519804.tif 000008
【図２】
2004519804.tif 000009
【図４】
2004519804.tif 000010
【図５】
2004519804.tif 000011
【図７】
2004519804.tif 000012
【図８】
2004519804.tif 000013
【図９】
2004519804.tif 000014
【国際公開パンフレット】
2004519804.tif 000015
2004519804.tif 000016
2004519804.tif 000017
2004519804.tif 000018
2004519804.tif 000019
2004519804.tif 000020
2004519804.tif 000021
2004519804.tif 000022
2004519804.tif 000023
2004519804.tif 000024
2004519804.tif 000025
2004519804.tif 000026
2004519804.tif 000027
2004519804.tif 000028
2004519804.tif 000029
2004519804.tif 000030
2004519804.tif 000031
2004519804.tif 000032
2004519804.tif 000033
2004519804.tif 000034
2004519804.tif 000035
2004519804.tif 000036
2004519804.tif 000037
2004519804.tif 000038
2004519804.tif 000039
2004519804.tif 000040
2004519804.tif 000041
2004519804.tif 000042
2004519804.tif 000043
2004519804.tif 000044
2004519804.tif 000045
2004519804.tif 000046
2004519804.tif 000047
2004519804.tif 000048
2004519804.tif 000049
【国際公開パンフレット（コレクトバージョン）】
2004519804.tif 000050
2004519804.tif 000051
【国際調査報告】
2004519804.tif 000052
2004519804.tif 000053
2004519804.tif 000054
2004519804.tif 000055