(57)【特許請求の範囲】
【請求項１】
それぞれがコントロールゲート及びフローティングゲートを有するトランジスタを有し、データをしきい値として格納する複数のメモリセル、
対応するメモリセルが結合される複数のデータ線、
対応するメモリセルが結合される複数のワード線、
上記複数のデータ線に対応して設けられ、書き込まれるべきデータを格納するためのデータラッチ回路、
上記複数のデータ線に対応して設けられ、選択されたワード線に結合されたメモリセルから読み出されたデータを格納するセンスラッチ回路を有し、
書き込まれるべきデータが格納された上記データラッチ回路に結合されたデータ線が選択的にプリチャージされてメモリセルから読み出されたデータを上記センスラッチ回路に格納し、このセンスラッチ回路に格納されたデータと上記データラッチ回路に格納された書き込まれるべきデータとに基づいてエラティックビットの発生を検出し、エラティックビットの発生が検出された時、エラティックビットが発生したところのメモリセルのデータを補正する不揮発性半導体記憶装置。
【請求項２】
エラティックビット検出において、ワード線にはデータ読み出し時において印加される電圧よりも低い第１電圧が印加される請求項１記載の不揮発性半導体記憶装置。
【請求項３】
エラティックビット検出において、上記センスラッチ回路は上記第１電圧がワード線に印加されたことによってメモリセルから読み出されたデータを格納する請求項２記載の不揮発性半導体記憶装置。
【請求項４】
上記複数のデータ線の各々はディスチャージ用ＭＯＳＦＥＴが結合され、エラティックビット検出において、上記ディスチャージ用ＭＯＳＦＥＴがオンすることにより、上記複数のデータ線はディスチャージされる請求項３記載の不揮発性半導体記憶装置。
【請求項５】
そのゲートが上記センスラッチ回路の出力に結合され、上記センスラッチ回路に格納されているデータによって選択的にオンにされるＭＯＳＦＥＴを有する請求項４記載の不揮発性半導体記憶装置。
【請求項６】
上記センスラッチ回路を利用してエラティックビットが発生したところのメモリセルのデータを補正する請求項５記載の不揮発性半導体記憶装置。
【請求項７】
上記複数のメモリセルの各々は多値のデータを格納する請求項６記載の不揮発性半導体記憶装置。
【請求項８】
上記複数のメモリセルの各々は２ビットのデータを格納する請求項６記載の不揮発性半導体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、半導体記憶装置さらには不揮発性半導体記憶装置における多値情報の記憶方式に適用して特に有効な技術に関し、例えば複数の記憶情報を電気的に一括消去可能な不揮発性記憶装置（以下、単にフラッシュメモリという）に利用して有効な技術に関するものである。
【０００２】
【従来の技術】
フラッシュメモリは、コントロールゲートおよびフローティングゲートを有する不揮発性記憶素子をメモリセルに使用しており、１個のトランジスタでメモリセルを構成することができる。かかるフラッシュメモリにおいては、書き込み動作では、図１０に示すように不揮発性記憶素子のドレイン領域を例えば５Ｖ（ボルト）程度にし、コントローゲートＣＧが接続されたワード線を−１１Ｖ程度にすることにより、トンネル電流によりフローティングゲートＦＧから電荷を引き抜いて、しきい値電圧が低い状態（論理“０”）にする。消去動作では、図１１に示すように、ウェル領域，ドレイン領域，ソース領域を−４Ｖ程度にし、コントローゲートＣＧを１２Ｖのような高電圧にしてトンネル電流を発生させてフローティングゲートＦＧに負電荷を注入してしきい値を高い状態（論理“１”）にする。これにより１つのメモリセルに１ビットのデータを記憶させるようにしている。
【０００３】
ところで、記憶容量を増大させるために１メモリセル中に２ビット以上のデータを記憶させる、いわゆる「多値」メモリの概念が提案されている。この多値メモリに関する発明としては、特願平７ー１４０３１号などがある。
【０００４】
【発明が解決しようとする課題】
上記先願の多値メモリにおいては、３段階の書込みを図１２に示すように、消去レベル（しきい値約５Ｖ）を起点として、消去レベルに近いしきい値のメモリセルへの書込みから開始して順次しきい値が遠いメモリセルへの書込みを行なうようにしていた。これは、多値データの書込み時間を短くするためである。しかし、フラッシュメモリでは、ワード線を共通にするビットへの書込み動作に伴い非選択のメモリセルにも高い電圧が印加されて弱い書込み（ディスターブ）状態が生じ、しきい値電圧が変動して記憶データが変化してしまうおそれがあることが知られている。
【０００５】
しかも、本発明者等は、上記ワード線ディスターブによるしきい値の変動は、消去レベルに近いしきい値のメモリセルよりもしきい値が遠いメモリセルの方が影響を受け易いという特徴があることを見い出した。これは、メモリチップを製造したときの初期しきい値が消去レベルよりずっと低く、メモリセルはディスターブがかかると上記初期しきい値に戻ろうとする性質があるためと考えられる。
【０００６】
ところが、上記先願の書込み方式では、消去レベルに近いしきい値のメモリセルから、しきい値が遠いメモリセルへ順次書込みを行なうようにしていたため、ワード線ディスターブによるしきい値の変動が大きいという問題点があることが明らかになった。すなわち、従来の書込み方式では、図１２に示すように、消去レベルに最も遠いしきい値（約２．４Ｖ）のメモリセル（データ“０１”）に着目するとこのメモリセルには１度もワード線ディスターブがかからないのに、ディスターブの影響を最も受け易い消去レベルに最も近いしきい値（約３．２Ｖ）のメモリセル（データ“１０”）には平均して２回のワード線ディスターブがかかってしまうという不都合がある。
【０００７】
また、上記先願の書込み方式では、第１段階の書込みの際にしきい値をずらしたいすべてのメモリセルに対して書込みパルスを印加するため、書込み時のピーク電流が増大するともに平均消費電力も多くなるという不都合があることが明らかになった。
【０００８】
この発明の目的は、ワード線ディスターブによるメモリセルのしきい値の変動を最小に抑えることが可能な多値記憶型不揮発性半導体記憶装置を提供することにある。
【０００９】
この発明の他の目的は、書込み時のピーク電流と平均消費電力を低減可能な不揮発性半導体記憶装置を提供することにある。
【００１０】
この発明の前記ならびにほかの目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【００１１】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものを概要を簡単に説明すれば、下記のとおりである。
【００１２】
すなわち、複数のしきい値を設定して１つのメモリセルに多値の情報を記憶させるようにした不揮発性半導体記憶装置において、消去レベルから遠いしきい値のメモリセルへの書込みから開始して順次しきい値が近いメモリセルへの書込みを行なうようにしたものである。
【００１３】
これによって、ワード線ディスターブの影響を最も受け易い消去レベルに近いしきい値のメモリセルに対してかかるワード線ディスターブの回数を減らすことができ、ワード線ディスターブによるしきい値の変動を最小に抑えることができる。
【００１４】
また、上記手段により、１回の書込みでプリチャージしなければならないデータ線数と書込み開始から終了するまでにプリチャージしなければならないデータ線の総数を従来方式に比べて少なくして、書込み時のピーク電流と平均消費電力を低減することができる。
【００１５】
【発明の実施の形態】
以下、本発明を１つのメモリセルに４値を記憶可能なフラッシュメモリに適用した場合についてその実施例を図面を用いて説明する。
【００１６】
図１は本実施例のフラッシュメモリのデータ書込み順序を示したものである。この実施例では、書込みに先立ってすべてのメモリセルを消去レベル（しきい値約５Ｖ、記憶データ“１１”）にする。次に図１に示すように、消去レベルから最も遠いしきい値（約１．４Ｖ）のメモリセル（記憶データ“０１”）への書込みを行なう。その後、消去レベルから２番目に遠いしきい値（約２．４Ｖ）のメモリセル（記憶データ“００”）への書込みを行ない、最後に消去レベルに最も近いしきい値（約３．２Ｖ）のメモリセル（記憶データ“１０”）への書込みを行なう。
【００１７】
これによって、最もワード線ディスターブの影響を受けにくい消去レベルから最も遠いしきい値（約１．４Ｖ）のメモリセル（記憶データ“０１”）に対してかかるワード線ディスターブの回数は２回になるが、最もワード線ディスターブの影響を受け易い消去レベルに最も近いしきい値（約３．２Ｖ）のメモリセル（記憶データ“１０”）に対してかかるワード線ディスターブの回数は０回に減らすことができ、図１１に示す消去レベルに近い側から書込みを行なう方法に比べてワード線ディスターブによるしきい値の変動を小さく抑えることができる。
【００１８】
図２にはメモリアレイ１０の具体例を示す。この実施例のメモリアレイ１０は２つのマットで構成されており、図２にはそのうち片方（上側）のメモリマットの具体例が示されている。同図に示すように、各メモリマットは、列方向に配列され各々ソースおよびドレインが共通接続された並列形態のｎ個のメモリセル（フローティングゲートを有するＭＯＳＦＥＴ）ＭＣ１〜ＭＣｎからなるメモリ列ＭＣＣが行方向（ワード線ＷＬ方向）および列方向（データ線ＤＬ方向）にそれぞれ複数個配設されている。各メモリ列ＭＣＣは、ｎ個のメモリセルＭＣ１〜Ｍｎのドレインおよびソースがそれぞれ共通のローカルドレイン線ＬＤＬおよび共通のローカルソース線ＬＳＬに接続され、ローカルドレイン線ＬＤＬはスイッチＭＯＳＦＥＴ  Ｑs1を介してデータ線ＤＬに、またローカルソース線ＬＳＬはスイッチＭＯＳＦＥＴ  Ｑs2を介して接地点または負電圧に接続可能にされた構成にされている。
【００１９】
上記複数のメモリ列ＭＣＣのうちワード線方向に配設されているものは半導体基板上の同一のウェル領域ＷＥＬＬ内に形成され、データ消去時にはそのウェル領域ＷＥＬＬに−４Ｖのような負電圧を与え、ウェル領域を共通にするワード線に１２Ｖのような電圧を印加することで、一括消去が可能にされている。なお、データ消去時にはウェル領域を共通にするすべてのスイッチＭＯＳＦＥＴ  Ｑs1，Ｑs2がオン状態にされて、各メモリセルのソースおよびドレインに−４Ｖの負電圧が印加されるように構成されている。
【００２０】
一方、データ書込み時には、選択されるメモリセルが接続されたワード線に−１１Ｖのような負電圧が印加されるとともに、選択されるメモリセルに対応したデータ線ＤＬが５Ｖのような電位にされかつ選択メモリセルが接続されたローカルドレイン線ＬＤＬ上のスイッチＭＯＳＦＥＴ  Ｑs1がオン状態にされ、ドレインに５Ｖが印加される。ただし、このときローカルソース線ＬＳＬ上のスイッチＭＯＳＦＥＴ  Ｑs2はオフ状態とされている。また、データ読出し時には、選択されるメモリセルが接続されたワード線に１．５Ｖ，２．５Ｖ，３．３Ｖのような電圧が印加されるとともに、選択されるメモリセルに対応したデータ線ＤＬが１Ｖのような電位にプリチャージされかつ選択メモリセルが接続されたローカルドレイン線ＬＤＬ上のスイッチＭＯＳＦＥＴ  Ｑs1がオン状態にされる。そして、このときローカルソース線ＬＳＬ上のスイッチＭＯＳＦＥＴ  Ｑs2はオン状態とされ、接地電位が印加される。
【００２１】
上記データ線ＤＬの一端（メモリアレイの中央側）には読出し時にデータ線のレベルを検出するとともに書込み時に書込みデータに応じた電位を与えるセンスラッチ回路ＳＬＴがそれぞれ接続され、データ線ＤＬの他端には書込みデータおよびリードデータを保持可能なデータラッチ回路ＤＬＴがそれぞれ接続されている。この実施例のメモリアレイは２つのマットで構成されているため、センスラッチ回路ＳＬＴの反対側すなわち図の下側にも上記と同様のメモリマットが配置されており、そのメモリアレイ内の各データ線ＤＬが対応するセンスラッチ回路ＳＬＴの他方の入出力端子に接続されている。
【００２２】
図３には、上記センスラッチ回路ＳＬＴおよびデータラッチ回路ＤＬＴの具体的回路例を示す。回路はセンスラッチ回路を挟んで対称であるため、一方のメモリマット内の１本のデータ線に関してのみ図示するとともに、便宜上、データ線に接続されているメモリ列のうち１つのメモリ列ＭＣＣのみ示したが、実際には複数のメモリ列ＭＣＣが接続されるものである。図示のごとく、センスラッチ回路ＳＬＴはＰチャネルＭＯＳＦＥＴとＮチャネルＭＯＳＦＥＴからなる２つのＣＭＯＳインバータの入出力端子が交差結合されたフリップフロップ回路ＦＦ１を備えている。そして、上記センスラッチ回路ＳＬＴの一方の入出力端子Ｎａに一方のメモリマット内のデータ線ＤＬａがデータ転送ＭＯＳＦＥＴ  Ｑt1を介して接続されている。また、センスラッチ回路ＳＬＴの他方の入出力端子Ｎｂには他方のメモリマット内のデータ線ＤＬｂがデータ転送ＭＯＳＦＥＴ  Ｑt1’を介して接続されている。
【００２３】
さらに、上記センスラッチ回路ＳＬＴの入出力端子Ｎａ，Ｎｂにはそれぞれディスチャージ用のＭＯＳＦＥＴＱd1，Ｑd1’が接続され、データ線ＤＬａの他端にもディスチャージ用ＭＯＳＦＥＴ  Ｑd2が接続されている。また、各データ線ＤＬにはプリチャージ用のＭＯＳＦＥＴ  Ｑp1，Ｑp2が接続され、このうちＱp1はＭＯＳＦＥＴ  Ｑc1を介して電源電圧ＶccまたはＶssが供給される端子に接続されている。なお、このセンスラッチ回路ＳＬＴの入出力端子Ｎａ，Ｎｂには図示しないコモン入出力線を介して後述のデータ変換回路から書込みデータが入力可能にされている。
【００２４】
一方、上記データラッチ回路ＤＬＴはセンスラッチ回路ＳＬＴと同様にＰチャネルＭＯＳＦＥＴとＮチャネルＭＯＳＦＥＴからなる２つのＣＭＯＳインバータの入出力端子が交差結合されたフリップフロップ回路ＦＦ２を備えている。そして、上記データラッチ回路ＤＬＴの一方の入出力端子Ｎｃにメモリマット内のデータ線ＤＬａがデータ転送ＭＯＳＦＥＴ  Ｑt2を介して接続されている。また、データラッチ回路ＤＬＴの入出力端子Ｎｃにはディスチャージ用のＭＯＳＦＥＴＱd3が接続され、データ線ＤＬａと電源電圧Ｖccとの間にはプリチャージ信号PC_Uおよび上記入出力端子Ｎｃの電位によってオン、オフされるＭＯＳＦＥＴ  Ｑp3およびＱc2が直列形態に接続されている。
【００２５】
さらに、データラッチ回路ＤＬＴの入出力端子Ｎｃには図示しないコモン入出力線を介して後述のデータ変換回路から書込みデータが入力可能にされている。また、図３には示されていないが、上記センスラッチ回路ＳＬＴの入出力端子Ｎｂに接続されたデータ線ＤＬｂの他端にもデータ変換回路からの書込みデータを保持するフリップフロップ回路からなるデータラッチ回路ＤＬＴが配置されている。
【００２６】
図４は、外部から入力される記憶すべきデータからメモリセルに記憶される多値データへの変換回路２０および変換回路２０とメモリアレイ１０内のセンスラッチ列１１およびデータラッチ列１２ａ，１２ｂとの関係を示す。データ変換回路２０は、入力バッファ部２１とデータ変換部２２とからなり、８ビットのデータが２ビットずつペアにして並列に入力可能にされている。図４には、そのうち１組の入力バッファ部とデータ変換部の詳細が示されている。以下、そのうち１組のデータ変換回路について説明する。
【００２７】
１組のデータ変換回路内の入力バッファ部２１は２つのクロックドインバータＩＮＶ１，ＩＮＶ２およびラッチ回路ＬＴ１，ＬＴ２から構成され、データ変換部２２は上記各組のラッチ回路ＬＴ１，ＬＴ２に接続されたインバータＩＮＶ１１，ＩＮＶ１２と、この２つのインバータＩＮＶ１１，ＩＮＶ１２の出力と上記各組のラッチ回路ＬＴ１，ＬＴ２の出力とを入力信号とする３個のＮＡＮＤゲート回路Ｇ１，Ｇ２，Ｇ３と、これらのゲート回路の出力を反転するインバータＩＮＶ２１，ＩＮＶ２２，ＩＮＶ２３と、これらのインバータに接続されたＭＯＳＦＥＴからなる伝送ゲートＴＧ１，ＴＧ２，ＴＧ３とによって構成され、入力された２ビットのデータを３ビットのデータに変換し、全体として３ビット×４のデータを出力する。
【００２８】
表１には、上記データ変換回路２０におけるデータ変換例を示す。
【００２９】
【表１】
0003993323.tif 000002
表１に示されているように、書込みデータ“０１”は３ビットのデータ“０１０”に変換され、書込みデータ“００”は３ビットのデータ“１００”に変換され、書込みデータ“１０”は３ビットのデータ“００１”に変換され、書込みデータ“１１”は３ビットのデータ“０００”に変換される。そして、変換後“１”に相当するビットに対応するメモリセルにのみ書込みがなされ、変換後“０”に相当するビットに対応するメモリセルには書込みがなされないこととなる。
【００３０】
上記データ変換回路２０に最初に入力された８ビットの書込みデータのビットＩ／Ｏ０，Ｉ／Ｏ１を変換して得られた３ビットのデータはメモリアレイ１０の両端（図では上と下）に配置されているデータラッチ列１２ａ，１２ｂとメモリアレイの中央に配置されているセンスラッチ列１１の１番目のラッチ回路にそれぞれ転送され、保持される。また、書込みデータのビットＩ／Ｏ２，Ｉ／Ｏ３を変換して得られた３ビットのデータはメモリアレイ１０の両端（図では上と下）に配置されているデータラッチ列１２ａ，１２ｂとメモリアレイの中央に配置されているセンスラッチ回路１１の２番目のラッチ回路にそれぞれ転送され、保持される。
【００３１】
以下同様に、書込みデータのビットＩ／Ｏ４，Ｉ／Ｏ５を変換して得られた３ビットのデータはデータラッチ列１２ａ，１２ｂセンスラッチ列１１の３番目のラッチ回路にそれぞれ転送され、保持される。書込みデータのビットＩ／Ｏ６，Ｉ／Ｏ７を変換して得られた３ビットのデータはデータラッチ列１２ａ，１２ｂとセンスラッチ列１１の４番目のラッチ回路にそれぞれ転送され、保持される。次に入力された８ビットの書込みデータは、データ変換回路２０で変換されてデータラッチ回路１２ａ，１２ｂとセンスラッチ回路１１の５〜８番目のビットにそれぞれ転送され、保持される。
【００３２】
上記動作を繰り返してデータラッチ列１２ａ，１２ｂとセンスラッチ列１１の全てのラッチ回路にデータが格納された時点で、メモリ内部に設けられている後述の制御回路が書込みシーケンスを起動して、最初にセンスラッチ列１１に保持されているデータ、次にセンスラッチ列１２ａのデータ、その後に１２ｂのデータの順で書込みを実行する。なお、制御回路は外部のＣＰＵ等から入力されるコマンドに従って制御を行なうように構成されている。
【００３３】
図５には、データ書込み時のタイミングが示されている。同図から分かるように、書込み時には、先ず書込みコマンドが入力され、続いて、書込み先のセクタアドレスadd1，add2が入力されてそれぞれライトイネーブル信号／ＷＥの立下がりに同期して取り込まれる。このとき、コマンドとアドレスの識別は同時に入力される制御信号（コマンド・データ・イネーブル信号）／ＣＤＥによって区別される。すなわち、／ＣＤＥがロウレベルのときはコマンドまたはデータが入力されていると判別し、／ＣＤＥがハイレベルのときはアドレスが入力されていると判別する。
【００３４】
アドレスの次に、１セクタ（１つのワード線に接続されているメモリセル）に記憶すべき最初の８ビットの書込みデータＤ１が入力され、クロックＳＣに同期して上記入力バッファ部２１に取り込まれる。そして、データ変換回路２０におけるデータ変換後にゲート制御信号ＹＧによって上記伝送ゲートＴＧ１〜ＴＧ３が開かれて、３ビット×４の書込みデータがデータラッチ列１２ａ，１２ｂとセンスラッチ列１１に順次転送され、保持される。その後、８ビット単位で入力される書込みデータＤ２，Ｄ３，・・・Ｄ５２８が逐次データ変換されてセンスラッチ列１１とデータラッチ列１２ａ，１２ｂに格納されて行く。１セクタ分の書込みデータの転送が終了すると、外部から書込み開始コマンドが入力されて取り込まれ、このコマンドを解読し前記書込みシーケンスを実行することで１セクタ分のデータの書込みが同時に行なわれる。
【００３５】
メモリアレイ１０では、上記センスラッチ列１１とデータラッチ列１２ａ，１２ｂに格納されたデータが“１”になっているデータ線に接続されている記憶素子に対して書込み動作すなわち書込みパルスの印加が行なわれて、各記憶素子のしきい値が図１に示すようにシフトされて４値のデータを１メモリセルに書き込むことができる。図６に書込み制御手順を示す。
【００３６】
図６における第１ステップＳ１（書込みデータをラッチ１〜３に転送）が上記データ変換回路２０からセンスラッチ列１１とデータラッチ列１２ａ，１２ｂへのデータ転送であり、第２ステップＳ２以降が上記書込み開始コマンドが入力されることで開始される制御シーケンスである。
【００３７】
この制御シーケンスでは、先ず最初に、既に取り込まれている書込みアドレスをデコードすることによって選択されたワード線を−１１Ｖのような電位に設定する（ステップＳ２）。これとともに、データ線上の伝送ＭＯＳＦＥＴ  Ｑt1をオンさせて、そのときセンスラッチ列１１に保持されているデータに応じてデータが“１”になっているデータ線を５Ｖのような電位に設定して書込みを行なわせる。次に、データ線を１Ｖのような電位にプリチャージしてから上記選択ワード線を１．５Ｖのような電圧に設定して、ベリファイ読出しを行なう。このとき正常に書込みが終了したメモリセルからセンスラッチ列１１に読み出されたデータは“０”に変化する。そこで、センスラッチ列１１の保持データがすべて“０”になっているか否か判定する（ステップＳ３）。そして、１つでも“１”のデータが残っている場合には、そのときセンスラッチ列１１に保持されているデータを用いて再度書込みを行なう（ステップＳ４）。
【００３８】
ベリファイ判定の結果、センスラッチ列１１のデータがすべて“０”になった場合にはステップＳ５へ進んで、データラッチ列１２ａに保持されているデータをセンスラッチ列１１へ転送する。それから、選択ワード線を前回よりも若干低い−１０．５Ｖのような電位に設定する（ステップＳ６）。次に、センスラッチ列１１に保持されたデータに基づいて書込みを行なった後、選択ワード線を２．５Ｖのような電圧に設定して、ベリファイ読出しを行なって、センスラッチ列１１の保持データがすべて“０”になっているか否か判定する（ステップＳ７）。そして、１つでも“１”のデータが残っている場合には、そのときセンスラッチ列１１に保持されているデータを用いて再度書込みを行なう（ステップＳ８）。
【００３９】
ベリファイ判定の結果、センスラッチ列１１のデータがすべて“０”になった場合には、ステップＳ９へ進んで、今度はデータラッチ列１２ｂに保持されているデータをセンスラッチ列１１へ転送する。それから、選択ワード線を前回よりもさらに若干低い−１０Ｖのような電位に設定する（ステップＳ１０）。次に、センスラッチ列１１に保持されたデータに基づいて書込みを行なった後、選択ワード線を３．３Ｖのような電圧に設定して、ベリファイ読出しを行なって、センスラッチ列１１の保持データがすべて“０”になっているか否か判定する（ステップＳ１１）。そして、１つでも“１”のデータが残っている場合には、そのときセンスラッチ列１１に保持されているデータを用いて再度書込みを行なう（ステップＳ１２）。
【００４０】
以上の手順により、消去レベルから遠いしきい値のメモリセルへの書込みから順次しきい値が近いメモリセルへの書込みが実行されて、書込み動作が終了する。これによって、消去レベルに近いしきい値のメモリセルに対してかかるワード線ディスターブの回数を減らすことができ、ワード線ディスターブによるしきい値の変動を最小に抑えることができる。しかも、上記実施例では、書込みワード線電圧を−１１Ｖ，−１０．５Ｖ，−１０Ｖのように、絶対値を徐々に小さくして行くようにしているため、１回に生じるディスターブの量も次第に小さくなり、しきい値の変動を更に小さくすることができる。ただし、書込み電圧を徐々に下げて行く代わりに書込みパルス幅を徐々に小さくして行くようにしてもよい。
【００４１】
次に、上記ステップＳ５，Ｓ９におけるデータラッチ列１２ａ，１２ｂからセンスラッチ列１１へのデータ転送の具体的方法を、図３の回路図および図７のタイミングチャートを使用して説明する。
（１）先ず、センスラッチ回路ＳＬＴのＰＭＯＳ側の電源電圧をＶss（接地電位）に設定してセンスラッチ回路ＳＬＴを非活性状態にし、ディスチャージＭＯＳＦＥＴ  Ｑd1のゲートにリセットパルスRSA_CUを与えて、ノードＮａの電荷を引き抜く。
（２）次に、データラッチ回路ＤＬＴのプリチャージＭＯＳＦＥＴ  Ｑp3のゲート制御信号PC_Uをハイレベルにしてデータラッチ回路ＤＬＴの保持データを使ってデータ線ＤＬａをＶcc−Ｖthまでプリチャージさせる。
（３）データラッチ回路ＤＬＴの伝送ＭＯＳＦＥＴ  Ｑt2のゲート制御信号TR_Uをハイレベルにしてデータラッチ回路ＤＬＴの保持データを使ってデータ線ＤＬａをさらにＶccまでプリチャージさせる。
（４）センスラッチ回路ＳＬＴ側の伝送ＭＯＳＦＥＴ Ｑｔ1のゲート制御信号TR_CUをハイレベルにしてデータ線ＤＬａのレベルをノードＮａに伝える。
（５）センスラッチ回路ＳＬＴのＰＭＯＳ側に電源電圧Ｖccを供給してセンスラッチ回路ＳＬＴを活性状態にしてノードＮａの電位すなわち保持データを確定させる。
（６）次に、伝送ＭＯＳＦＥＴ  Ｑｔ1のゲート制御信号TR_CUをロウレベルにしてオフさせてからデータ線ＤＬａの他端のディスチャージＭＯＳＦＥＴ  Ｑd2のゲート制御信号DDC_Uをハイレベルにしてデータ線ＤＬａの電位をＶssまでディ スチャージさせる。
【００４２】
以上の動作をすべてのデータ線について同時に行なうことによって、データラッチ列１２ａ，１２ｂからセンスラッチ列１１へのデータ転送が行なえる。
【００４３】
さらに、上記構成のメモリアレイにおいては、以下に述べる方法によっていわゆるエラティックビットの検出が可能であり、本実施例のフラッシュメモリにおいてはエラティックビットを検出してそれを補修するシーケンスが設けられている。ここで、エラティックビットとは、その原因は明らかでないが同一の書込みパルスが印加されたメモリセルの中で突然しきい値が下がり過ぎて誤データの書込みがなされてしまったものを指す。すなわち、データ“００”に対応するしきい値となるように書込みパルスを印加したり、データ“１０”に対応するしきい値となるように書込みパルスを印加したにもかかわらず、しきい値が下がり過ぎて、データ“０１”に対応するしきい値を有するようなメモリセルが発生することが経験的に知られている。
【００４４】
そこで、この実施例では、データ“００”およびデータ“１０”に対応するメモリセルの書込みを行なう際にその書込みデータをデータラッチ回路に残しておいて書込み終了後にセンスラッチ回路にデータを読み出してデータ線上で比較を行なうことでエラティックビットの検出を行なうようにしている。その具体的手順を図３および図８を参照しながら説明する。
（１）書込み終了後にデータラッチＤＬＴに保持されている書込みデータを使用して、データ線ＤＬａを選択的に１．０Ｖのようなレベルにプリチャージする。すなわち、データ“１”を保持しているデータラッチに接続されているデータ線のみをプリチャージする。なお、このとき反対側のマットのデータ線ＤＬｂは、０．５Ｖにプリチャージする。
（２）書込みを行なったメモリセルが接続されているワード線を、目標としたしきい値よりも低い読出しレベルに設定して読出しを行なう。このとき正常な書込みがなされたメモリセルはオフであるためデータ線はプリチャージ電位のままであるが、エラティックビットのメモリセルはオン状態となるため、データ線はディスチャージされる。
（３）データ線上の伝送ＭＯＳＦＥＴ  Ｑt1をオンしてセンスラッチ回路ＤＬＴによりデータ線のレベルを検出する。
（４）センスラッチ回路ＳＬＴに電源電圧を供給して検出したデータ線レベルを増幅する。
（５）データ線上のディスチャージ用ＭＯＳＦＥＴ  Ｑd2をオンしてすべてのデータ線をディスチャージする。
（６）データラッチＤＬＴに保持されている書込みデータを使用して、データ線ＤＬａを再度選択的に１．０Ｖのようなレベルにプリチャージする。反対側のマットのデータ線ＤＬｂは０．５Ｖにプリチャージする。
（７）センスラッチ回路ＳＬＴに保持されているデータ線を使ってＭＯＳＦＥＴＱc1を選択的にオンさせるとともに、その電源端子をＶssとしてデータ線ＤＬａを選択的にディスチャージする。このときデータ線上の伝送ＭＯＳＦＥＴ  Ｑt1はオフ状態である。これによって、正常な書込みがなされたメモリセルが接続されたデータ線はディスチャージされるが、エラティックビットを生じたメモリセルが接続されたデータ線はディスチャージされない。
（８）センスラッチ回路ＳＬＴの電源電圧を遮断し、ディスチャージ用ＭＯＳＦＥＴ  Ｑd1をオンしてセンスラッチ回路ＳＬＴをリセットする。
（９）データ線上の伝送ＭＯＳＦＥＴ  Ｑt1をオンしてセンスラッチ回路ＤＬＴによりデータ線のレベルを検出する。ディスチャージ用ＭＯＳＦＥＴ  Ｑd1はオフする。
（１０）センスラッチ回路ＳＬＴに電源電圧を供給して検出したデータ線レベルを増幅する。
【００４５】
以上の手順により、エラティックビットを生じたメモリセルが接続されたセンスラッチ回路ＳＬＴにはデータ“１”が保持される。従って、センスラッチ回路ＳＬＴに“１”が残っているか否かを後述の書込・消去判定回路３３（図９参照）によって検出することでエラティックビットが発生したか否か検出し、エラーフラグを立てて外部に知らせたり、センスラッチ回路ＳＬＴに残ったデータを使用してエラティックビットを消去状態にし再書込みを行なうことで、データを補修するようなことができる。
【００４６】
なお、エラティックビットはしきい値が下がり過ぎる現象であるため、しきい値の最も低いメモリセルに関しては書込みによりエラティックビットが生じても読出し時に誤データとはならない。ワード線に最も低い読出しレベル（１．７Ｖ）が印加されたときに、正常な書込みが行なわれたメモリセルと同様にオン状態となるからである。仮にエラティックビットのしきい値が０Ｖ以下になった場合には、ワード線を０Ｖにしたままセンスラッチを活性化すればそのメモリセルはオン状態にされているため、読出しデータが“１”となるので、書込みデータが残っていなくても検出することができる。上記実施例においては、しきい値の最も低いメモリセルの書込みを最初に行なうようにしているため、最初の書込みに使用した書込みデータがセンスラッチ回路から失われてもエラティックビットの検出の上で何ら支障はない。
【００４７】
次に、メモリセルの通常の読出し動作について説明する。データの読出しは、ワード線を立ち上げて上記ベリファイ動作の時のように、メモリセルのコントロールゲートの電位を３段階（各しきい値の中間の値）に変化させ、またデータ線ＤＬを介して選択メモリセルのドレインに１Ｖの電圧を印加し、またローカルソース線ＬＳＬを接地点に接続することにより行なう。しきい値がワード線のレベルよりも低いメモリセルはオン状態とされるためこのメモリセルが接続されたデータ線は接地電位にディスチャージされる。一方、しきい値がワード線のレベルよりも高いメモリセルはオフ状態とされるためこのメモリセルが接続されたデータ線は１Ｖのままにされる。この電位をセンスラッチ回路ＳＬＴまたはデータラッチ回路ＤＬＴにより検出することで１次読出しデータが得られる。
【００４８】
より具体的には、読み出し動作が開始されると、まず選択ワード線のレベルを３．５Ｖにして選択メモリセルからデータを読み出してデータラッチ列１２ａに保持させる。次に、選択ワード線のレベルを２．７Ｖにして選択メモリセルからデータを読み出してデータラッチ列１２ｂに保持させる。最後に、選択ワード線のレベルを１．７Ｖにして選択メモリセルからデータを読み出してデータラッチ列１１に保持させる。このようにしてワード線レベルを３段階に変化させることにより、同一メモリセルから３種のデータが順次読み出されてデータラッチ列１２ａ，１２ｂとセンスラッチ列１１に保持されるので、これらの読み出されたデータに対して論理演算を実施して逆変換することで書き込まれたデータと同じ読出しデータを２ビット単位で復元することができる。
【００４９】
表２には、メモリセルの記憶データと各ラッチへの１次読出しデータおよび逆変換後の読出しデータを示す。
【００５０】
【表２】
0003993323.tif 000003
なお、上記逆変換は、データ変換回路２０内にそのような論理演算回路を設けて行なってもよいが、メモリアレイ１０内のデータ線を用いてデータラッチ列１２ａ，１２ｂとセンスラッチ列１１に保持されているデータ同士のワイヤード論理（論理和あるいは排他的論理和）をとることで実行することもできる。また、読出し動作は、読出しを指令するコマンドが入力されることにより実行される。図９には、上記メモリアレイ１０、データ変換回路２０および制御回路並びにメモリ周辺回路を同一半導体チップ上に備えた多値フラッシュメモリの全体の構成例が示されている。
【００５１】
この実施例のフラッシュメモリは、特に制限されないが、外部のＣＰＵ等から与えられるコマンドをデコードするコマンドデコーダ３１と、該コマンドデコーダ３１のデコード結果に基づいて当該コマンドに対応した処理を実行すべくメモリ内部の各回路に対する制御信号を順次形成して出力する制御回路（シーケンサ）３２とを備えており、コマンドが与えられるとそれを解読して自動的に対応する処理を実行するように構成されている。上記制御回路３２は、例えばマイクロプログラム方式のＣＰＵの制御部と同様に、コマンド（命令）を実行するのに必要な一連のマイクロ命令郡が格納されたＲＯＭ（リードオンリメモリ）からなり、コマンドデコーダ３１がコマンドに対応したマイクロ命令群の先頭アドレスを生成して制御回路３２に与えることにより、マイクロプログラムが起動されるように構成されている。
【００５２】
図９において、図４と同一符号が付されている回路部分は同一の機能を有する回路である。すなわち、１０は２つのメモリマットＭＡＴ−Ａ，ＭＡＴ−Ｂで構成されたメモリアレイ、２０は外部から入力された書込みデータを２ビットごとに４値データに変換するデータ変換回路、１１は変換された書込みデータや読出しデータを保持するセンスラッチ列、１２ａ，１２ｂはデータラッチ列である。
【００５３】
メモリアレイ１０には、各メモリマットＭＡＴ−Ａ，ＭＡＴ−Ｂに対応してそれぞれＸ系のアドレスデコーダ１３ａ，１３ｂと、該デコーダ１３ａ，１３ｂのデコード結果に従って各メモリマット内の１本のワード線ＷＬを選択レベルに駆動するワードドライブ回路１４ａ，１４ｂが設けられている。特に制限されないが、この実施例のメモリアレイ１０では、上記ワードドライブ回路が各メモリマットの両側および中央に配置されている。図２や図３には示されていないが、Ｙ系のアドレスデコーダ回路およびこのデコーダによって選択的にオン、オフされてデータ変換回路２０からのデータを対応するセンスラッチに転送させるカラムスイッチは、センスラッチ列１１と一体的に構成されている。図９には、このＹ系デコーダ回路とカラムスイッチとセンスラッチ回路とが、１つの機能ブロックＹ−ＤＥＣ＆ＳＬＴで示されている。
【００５４】
この実施例の多値フラッシュメモリには、上記各回路の他、書込み時や消去時にセンスラッチ列１１のデータに基づいて書込みまたは消去が終了したか判定して上記制御回路３２に知らせ書込みシーケンスまたは消去シーケンスを終了させる書込・消去判定回路３３や、内部の動作に必要なタイミングクロックを形成してメモリ内の各回路に供給するクロック発生回路３４、メモリ内部の状態を反映するとともに外部に対して外部からアクセスが可能か否かを示すレディ／ビジィ信号Ｒ／Ｂを信号を形成して出力したり内部回路をテストする機能を備えたステイタス＆テスト系回路３５、メモリアレイ１０から読み出された信号を増幅するメインアンプ回路３６、電源系回路３７、外部から入力されるアドレス信号や書込みデータ信号およびコマンドを取り込んで内部の所定の回路に供給するとともに読出しデータ信号を外部へ出力するための入出力バッファ回路３８、外部から入力される制御信号を取り込んで制御回路３２その他内部の所定の回路に供給したり上記入出力バッファ回路３８を制御する制御信号入力バッファ＆入出力制御回路３９、アドレス制御系回路４０、メモリアレイ内に不良ビットがあった場合に予備メモリ行と置き換えるための冗長回路４１等が設けられている。
【００５５】
この実施例のフラッシュメモリは、アドレス信号と書込みデータ信号およびコマンド入力とで外部端子（ピン）Ｉ／Ｏを共用している。そのため、入出力バッファ回路３８は、上記制御信号入力バッファ＆入出力制御回路３９からの制御信号に従ってこれらの入力信号を区別して取り込み所定の内部回路に供給する。また、上記電源系回路３７は、基板電位等の基準となる電圧を発生する基準電源発生回路や外部から供給される電源電圧Ｖccに基づいて書込み電圧、消去電圧、読出し電圧、ベリファイ電圧等チップ内部で必要とされる電圧を発生するチャージポンプ等からなる内部電源発生回路、メモリの動作状態に応じてこれらの電圧の中から所望の電圧を選択してメモリアレイ１０に供給する電源切り替え回路、これらの回路を制御する電源制御回路等からなる。
【００５６】
上記アドレス制御系回路４０は、外部から入力されるアドレス信号を取り込んでカウントアップするアドレスカウンタＡＣＮＴや、データ転送時にＹアドレスを自動的に更新したりデータ消去時等に自動的にＸアドレスを発生するアドレスジェネレータＡＧＥＮ、入力アドレスと不良アドレスとを比較してアドレスが一致したときに選択メモリ行または列を切り換える救済系回路等からなる。
【００５７】
外部のＣＰＵ等からこの実施例のフラッシュメモリに入力される制御信号としては、例えばリセット信号ＲＥＳやチップ選択信号ＣＥ、書込み制御信号ＷＥ、出力制御信号ＯＥ、コマンドもしくはデータ入力かアドレス入力かを示すためのコマンドイネーブル信号ＣＤＥ、システムクロックＳＣ等がある。
【００５８】
なお、上記実施例の多値フラッシュメモリを制御する外部の装置としては、アドレス生成機能とコマンド生成機能を備えていればよいので、汎用マイクロコンピュータＬＳＩを用いることができる。
【００５９】
以上説明したように、上記実施例においては、複数のしきい値を設定して１つのメモリセルに多値の情報を記憶させるようにした不揮発性半導体記憶装置において、消去レベルから遠いしきい値のメモリセルへの書込みから開始して順次しきい値が近いメモリセルへの書込みを行なうようにしたので、ワード線ディスターブの影響を最も受け易い消去レベルに近いしきい値のメモリセルに対してかかるワード線ディスターブの回数を減らすことができ、ワード線ディスターブによるしきい値の変動を最小に抑えることができるという効果がある。
【００６０】
また、従来の書込み方式では、第１段階の書込みの際にしきい値をずらしたいすべてのメモリセルに対して書込みパルスを印加するため、書込み時のピーク電流が増大するともに平均消費電力も多くなるという不都合があったが、上記実施例では目標とするしきい値の異なるメモリセルごとに書込みパルスを印加すれば良いので、１回の書込みでプリチャージしなければならないデータ線数と書込み開始から終了するまでにプリチャージしなければならないデータ線の総数を従来方式に比べて少なくして、書込み時のピーク電流と平均消費電力を低減することができるという効果がある。
【００６１】
しかも、上記実施例では、書込みワード線電圧を目標しきい値に応じてその絶対値が徐々に小さくなるように制御しているため、１回に生じるディスターブの量も次第に小さくなり、しきい値の変動を更に小さくすることができる。
【００６２】
さらに、上記実施例では、メモリアレイが２つのマットで構成され、２つのマット間には各マット内のデータ線が入出力端子に接続され上記データ変換回路で変換された３ビットデータのうち１ビットを保持可能なセンスラッチ回路が配置され、各マットの外側にはそれぞれ上記データ変換回路で変換された３ビットデータのうち他の１ビットをそれぞれ保持可能なデータラッチ回路が配置され、データラッチ回路とセンスラッチ回路との間でデータ線を介してデータ転送を行なうようにしているため、データ変換回路側に変換後のデータを保持するレジスタを設ける必要がないとともに、エラティックビットの検出も簡単に行なえるようになるという効果がある。
【００６３】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上記実施例では、メモリセルのしきい値を４段階に設定して一つのメモリセルに４値のデータを記憶できるようにしているが、メモリセルのしきい値を３段階あるいは５段階以上に設定するようにした不揮発性メモリに適用することも可能である。
【００６４】
また、実施例では２ビットデータを４値データに変換する方式の一例として、表１に示すような変換を行なっているが、変換方式は表１に示すものに限定されず、結果として“１”の立っているビットの位置の異なるデータが得られるものであればよい。また、データ逆変換のための演算も表２のものに限定されず、元の２ビットデータを復元できるものであればどのような変換であっても良い。
【００６５】
さらに、各メモリセルに対する書込み方式も、実施例のように、一旦消去を行なってしきい値を高くした後に書込みパルスでしきい値を下げる方式に限定されず、書込みパルスでしきい値を高くする方式等であっても良い。また、実施例では、データ“１”を保持するセンスラッチ回路に対応するメモリセルに書込みを行なってしきい値を変化させているが、データ“０”を保持するセンスラッチ回路に対応するメモリセルに書込みを行なってしきい値を変化させるようにしても良い。
【００６６】
さらに、上記実施例では、メモリアレイを２つのマットによって構成した場合について説明したが、この発明はそれに限定されず、偶数個のマットに分割した場合はもちろん１つのマットで構成されている場合にも適用することができる。メモリアレイが１つのマットで構成された場合には、例えばデータ変換回路で変換後のデータを２回に分けて転送するなどの方式を適用すれば良い。
【００６７】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野である一括消去型フラッシュメモリに適用した場合について説明したが、この発明はそれに限定されるものでなく、ＦＡＭＯＳを記憶素子とする不揮発性記憶装置一般さらには複数のしきい値を有するメモリセルを備えた半導体装置に広く利用することができる。
【００６８】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００６９】
すなわち、この発明は、ワード線ディスターブによるメモリセルのしきい値の変動を最小に抑えることが可能であるとともに、書込み時のピーク電流と平均消費電力を低減可能な不揮発性半導体記憶装置を実現することができる。
【図面の簡単な説明】
【図１】この発明に係る多値フラッシュメモリのデータ書込み方法の概略を示す説明図である。
【図２】この発明に係る多値フラッシュメモリのメモリアレイの構成例を示す回路図である。
【図３】センスラッチ回路ＳＬＴおよびデータラッチ回路ＤＬＴの具体例を示す回路図である。
【図４】本発明に係る多値フラッシュメモリにおける２ビットの書込みデータを４値のデータに変換するデータ変換回路の一実施例を示す論理回路図である。
【図５】実施例の多値フラッシュメモリの書込み時のデータ入力タイミングを示すタイミングチャートである。
【図６】実施例の多値フラッシュメモリの書込み手順を示すフローチャートである。
【図７】データラッチ回路ＤＬＴからセンスラッチ回路ＳＬＴへのデータ転送時の信号タイミングを示すタイミングチャートである。
【図８】エラティックビットの検出の具体的手順のタイミングを示すタイミングチャートである。
【図９】本発明に係る多値フラッシュメモリの一実施例の概略を示す全体ブロック図である。
【図１０】実施例のフラッシュメモリに使用されるメモリセルの構造およびデータ書込み時の電圧状態を示す模式図である。
【図１１】実施例のフラッシュメモリに使用されるメモリセルの消去時の電圧状態を示す模式図である。
【図１２】先願発明に係る多値フラッシュメモリにおけるデータ書込み方法の概略を示す説明図である。
【符号の説明】
１０  メモリアレイ
１１  センスラッチ列
１２ａ，１２ｂ  データラッチ列
１３  Ｘ系アドレスデコーダ
１４  ワードドライブ回路
２０  データ変換回路
２１  バッファ部
２２  データ変換部
ＳＬＴ  センスラッチ回路
ＤＬＴ  データラッチ回路
ＤＬ  データ線
ＷＬ  ワード線
ＭＣ  メモリセル
【図１】
0003993323.tif 000004
【図２】
0003993323.tif 000005
【図３】
0003993323.tif 000006
【図４】
0003993323.tif 000007
【図５】
0003993323.tif 000008
【図６】
0003993323.tif 000009
【図７】
0003993323.tif 000010
【図８】
0003993323.tif 000011
【図９】
0003993323.tif 000012
【図１０】
0003993323.tif 000013
【図１１】
0003993323.tif 000014
【図１２】
0003993323.tif 000015