JPH06318398A - 行冗長性を取入れた不揮発性半導体メモリを消去する回路 - Google Patents

行冗長性を取入れた不揮発性半導体メモリを消去する回路

Info

Publication number
JPH06318398A
JPH06318398A JP11665993A JP11665993A JPH06318398A JP H06318398 A JPH06318398 A JP H06318398A JP 11665993 A JP11665993 A JP 11665993A JP 11665993 A JP11665993 A JP 11665993A JP H06318398 A JPH06318398 A JP H06318398A
Authority
JP
Japan
Prior art keywords
erase
controller
state
precondition
row
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP11665993A
Other languages
English (en)
Inventor
Amit Merchant
アミット・マーチャント
Mickey L Fandrich
ミッキー・リー・ファンドリッチ
Neal Mielke
ニール・ミールケ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of JPH06318398A publication Critical patent/JPH06318398A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/82Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups

Landscapes

  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

(57)【要約】 【目的】 メモリアレイ内部の短絡行と置換えるための
冗長行を含むフラッシュメモリの消去を独立して制御す
る回路を提供する。 【構成】 消去指令はシーケンサ回路を起動し、シーケ
ンサ回路は、消去事象のタスクを実行する制御装置をス
ケジューリングする。消去事象の制御をネスティングす
ることにより、シーケンサ回路は消去事象を容易に変更
できるよにする。シーケンサ回路は、消去指令を受信す
るとプレコンディション制御装置を起動する。そこで、
プレコンディション制御装置は、短絡行の中のメモリセ
ルを含めてメモリアレイのプレコンディショニングを管
理する。プレコンディション制御装置は、短絡行と冗長
行との置換えをディスエーブルすることによりこれを実
行する。その後、シーケンサは消去制御装置を起動す
る。そこで、消去制御回路は消去を管理する。回路はポ
ストコンディション制御装置と、プログラム制御装置と
をさらに含む。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、不揮発性半導体メモリ
の分野に関する。さらに特定すれば、本発明は、冗長行
を取入れた不揮発性半導体メモリの内部の短絡行をプレ
コンディショニングする方法及び回路に関する。
【0002】
【従来の技術】従来の不揮発性半導体メモリの1種がフ
ラッシュ電気的消去可能プログラム可能読取り専用メモ
リ(「フラッシュメモリ」)である。フラッシュメモリ
はユーザーの側からプログラムでき、一度プログラムし
たならば、消去されるまで、フラッシュメモリはデータ
を保持する。消去後、新たなコード又はデータによって
フラッシュメモリをプログラムして良い。
【0003】フラッシュメモリは、消去に関して、従来
の電気的消去可能プログラム可能読取り専用メモリ
(「EEPROM」)と異なっている。従来のEEPR
OMは個別バイト消去制御のために通常はセレクトトラ
ンジスタを使用する。これに対し、フラッシュメモリは
個別のトランジスタセルによってはるかに高い密度で行
うのが普通である。従来のフラッシュメモリ消去方法の
1つによれば、メモリアレイの全てのメモリセルのソー
スに高電圧を同時に印加する。この結果、アレイ全体が
消去されることになる。
【0004】従来のフラッシュEEPROMの1つにお
いては、論理値「1」は、1つのビットセルと関連する
フローティングゲートに、ほとんど電子が蓄積されてい
ないことを意味する。論理値「0」は、ビットセルと関
連するフローティングゲートに数多くの電子が蓄積され
ていることを意味する。この従来のフラッシュメモリを
消去すると、各ビットセルに論理値1が蓄積される。ア
レイ全体の消去により、フラッシュメモリのセルは例外
なく論理値0から論理値1に書込むことのみ可能であ
る。ところが、消去後状態と関連する固有の数の電子を
含んでいるフローティングゲートに単純に電子を追加す
るという結果を伴うとすれば、従来のフラッシュメモリ
のビットセルが個別に論理値1から論理値0に重ね書き
されてしまうこともありうる。
【0005】従来のフラッシュEEPROMの1つは、
カリフォルニア州サンタクララのIntel Corp
orationが販売している28F256相補形金属
酸化膜半導体(「CMOS」)フラッシュメモリであ
り、これは256キロビットのフラッシュEEPROM
である。28F256フラッシュメモリは、電気的消去
及び再プログラミングを管理するための指令レジスタを
含む。指令は制御用マイクロプロセッサから指令レジス
タに標準のマイクロプロセッサ書込みタイミングを使用
して書込まれる。指令レジスタの内容は、消去/プログ
ラミング回路を制御する内部状態機械への入力として利
用される。
【0006】制御用マイクロプロセッサはフラッシュメ
モリの消去とプログラミングを制御する。マイクロプロ
セッサはIntel Corporationの従来の
Quick−EraseTMアルゴリズムを使用して、フ
ラッシュメモリを消去することができる。従来のQui
ck−EraseTMアルゴリズムは、まず、全てのビッ
トを荷電状態にプログラムすることを要求する。すなわ
ち、データの各ビットは0に等しくなければならない。
次に、アレイ中のフラッシュトランジスタのゲートを0
ボルトに保持しつつ、10msecの期間にわたりトラ
ンジスタのソースを高電圧レベルに引上げることにより
消去は進行してゆく。消去動作が終了するたびに、バイ
ト検査を実行する。装置を適正に動作させるためには、
消去手続きを厳密に守ることが必要である。
【0007】Intel Corporationの従
来のQuick−Pulse Programming
TMアルゴリズムを使用して、フラッシュメモリをプログ
ラムすることが可能である。Quick−Pulse
ProgrammingTMアルゴリズムは、特定の持続
時間と特定の電圧レベルをもつプログラミングパルスを
プログラム用電源VPPと、装置用電源VCCとに印加する
ことを要求する。たとえば、従来のIntelのいくつ
かのフラッシュメモリについて、VPPを12.75に保
持しつつ、10μsecのプログラミングパルスを印加
することが示唆されている。プログラミングパルスを印
加した後、ユーザーはアドレス指定されたメモリセルが
適正にプログラムされているか否かを検査しなければな
らない。適正にプログラムされていなければ、プログラ
ミングパルスを何度か印加した後に初めてプログラミン
グエラーを認識するようにしても良い。フラッシュメモ
リを適正且つ確実に動作させるためには、プログラミン
グ手続きを厳密に守ることが必要である。
【0008】マイクロプロセッサを使用して消去及びプ
ログラミングを制御するこの従来の方法の欠点の1つ
は、マイクロプロセッサを拘束するために、相対的に高
レベルのマイクロプロセッサオーバヘッドを要求すると
いうことである。その結果、システムのスループットは
低減してしまう。
【0009】マイクロプロセッサを使用してフラッシュ
メモリの消去とプログラミングを制御する従来の方法の
もう1つの欠点は、典型的な消去/プログラミングソフ
トウェアが相対的に複雑であるということである。この
ように複雑なソフトウェアを使用するには、ユーザーは
相対的に高い知識レベルを有していなければならない。
さらに、この複雑なソフトウェアはフラッシュメモリの
過剰消去などのカストマエラーの起こる確率を高めてし
まう。
【0010】従来のもう1つのフラッシュメモリは、カ
リフォルニア州サンタクララのIntel Corpo
rationが販売している28F001CMOSフラ
ッシュメモリである。28F001は、従来の書込み状
態機械を組込んだ1メガビットのフラッシュメモリであ
る。従来の書込み状態機械は、指令ポートからの2段指
令を受信すると、自動的にアレイをプログラムし、消去
する。従って、従来の書込み状態機械はフラッシュメモ
リを使用するに際して、消去やプログラミングを簡略に
する。従来の書込み状態機械は、他のタスクのために制
御用マイクロプロセッサを解放することにより、システ
ムのスループットを向上させる。
【0011】従来の書込み状態機械は単一のアルゴリズ
ムを使用して消去指令と、プログラム指令の双方を実行
する。アルゴリズムは、プログラム指令と消去指令を実
行するために、いくつかの従来の周辺回路を管理する。
従来の書込み状態機械のアルゴリズム欠点の1つは、複
雑であることと、柔軟性に欠けていることである。アル
ゴリズムのプログラム部分に影響を及ぼさずに消去部分
を変更することは不可能であるし、消去部分に影響を及
ぼさずにプログラム部分を変更することも不可能であ
る。さらに、従来の周辺回路をあわせて変更することな
くアルゴリズムを変更するのも不可能である。また、単
一のアルゴリズムを介して消去とプログラミングの双方
を処理するので、消去とプログラミングの双方を最適化
することは困難である。従来の書込み状態機械のもう1
つの欠点は、メモリアレイ内の短絡行の修理又は置換え
ができないことである。短絡行を含んでいる従来のフラ
ッシュメモリは廃棄されなければならない。
【0012】
【発明が解決しようとする課題】本発明の目的は、不揮
発性半導体メモリを自動的に且つ独立して消去し、プロ
グラミングする回路を提供することである。本発明の別
の目的は、消去事象の容易な変更を可能にする行冗長性
を組込んだ不揮発性半導体メモリを自動的に消去する回
路を提供することである。本発明のさらに別の目的は、
消去事象の制御をネスティングするように不揮発性半導
体メモリアレイを消去する回路を提供することである。
【0013】
【課題を解決するための手段】行冗長性を組込んだフラ
ッシュメモリを自動的に消去する回路について説明す
る。この回路は、他の3つの制御装置をスケジューリン
グすることにより消去事象の様々なタスクを制御するシ
ーケンサ回路を含む。このような消去事象制御のネステ
ィングによって、後の消去事象の変更が容易になる。フ
ラッシュメモリ内における消去事象は、シーケンサがプ
レコンディション制御装置をイネーブルすることにより
始まる。プレコンディショニング中、各メモリセルを論
理値0にプログラムする。後に、メモリセルを論理値1
に消去する。プレコンディション制御装置は冗長行と短
絡行の双方をプレコンディショニングする。ここでいう
「短絡行」とは、語線が互いに短絡している行である。
プレコンディション制御装置がタスクを完了した後、シ
ーケンサ回路は消去制御装置を起動する。そこで、消去
制御装置は全てのメモリセルを論理値1にするプロセス
を管理する。消去事象に関連する第3の制御装置は、過
剰消去を修理するポストコンディション制御装置であ
る。プログラム指令はプログラム制御装置を起動し、プ
ログラム制御装置はメモリアレイのプログラミングを管
理し、短絡行を冗長行と置換える。
【0014】本発明の他の目的、特徴及び利点は、添付
の図面と、以下の詳細な説明から明白になるであろう。
本発明を添付の図面の図に限定的な意味ではなく、単な
る例として示す。図面中、図中符号は同様の素子を指示
する。
【0015】
【実施例】図1は、フラッシュメモリ30ともいうフラ
ッシュEEPROM30の回路をブロック線図の形態で
示す。以下にさらに詳細に説明するように、フラッシュ
メモリ30は書込み状態機械32の中に次状態制御装置
34を含む。次状態制御装置34は、4つの制御装置を
使用して消去事象の制御をネスティングする。制御装置
の1つであるシーケンサは他の3つの制御装置を制御し
て、消去事象を容易に再定義できるようにする。シーケ
ンサはプレコンディション制御装置と、消去制御装置
と、ポストコンディション制御装置を使用してメモリア
レイ36のプレコンディショニング、消去及びポストコ
ンディショニングを実行する。プレコンディション制御
装置は、消去に先立って、メモリアレイ36のプレコン
ディショニングを管理する。消去制御装置はメモリアレ
イ36の消去を制御し、ポストコンディション制御装置
は消去後修理を管理する。第4の制御装置であるプログ
ラム制御装置は、メモリアレイ36内部のメモリセルの
プログラミングを制御する。
【0016】この明細書においては、信号を通常信号名
によって呼ぶ。本発明の趣旨から逸脱せずに、特定の信
号名を変更できるであろう。さらに、信号の状態を挙げ
るときには活動又は非活動、ハイ又はロー、1又は0、
真又は偽などという。ローであるときに活動状態となる
信号を指示するときには、接尾辞「B」を付す。すなわ
ち、×××Bとなる。この信号命名規則の例を以下の表
1に示す。
【0017】
【0018】信号群を説明するに際して、10進基数規
則を使用しても良い。たとえば、1つの群に属する6つ
の信号全てを指すのにAY(5:0)を使用しても良
い。それぞれの信号群の中で、その群の最下位ビットを
挙げるときには、接尾辞「0」を付す。すなわち、AY
0は群の最下位ビットを表わし、AY5は最上位ビット
を表わす。
【0019】再び図1を参照すると、VPP38はフラッ
シュメモリ30の消去/プログラム用電源電圧である。
CC40はフラッシュメモリ30の装置電源であり、V
SS42は接地電位である。一実施例では、VPP38は1
2.0ボルト、VCCは約5ボルトである。
【0020】VPP38の高電圧を受けていないとき、フ
ラッシュメモリ30は読取り専用メモリとして動作す
る。アドレス線44を介して供給されるアドレスに記憶
されているデータをメモリアレイ36から読取る。マイ
クロプロセッサ999のようなフラッシュメモリ30の
外部の回路は、データ入出力線46を介してそのデータ
を利用できる。
【0021】フラッシュメモリ30はチップイネーブル
バーCEB48,WEB50及び出力イネーブルバーO
EB52という3つの制御信号を有する。CEB48は
電力制御信号であり、フラッシュメモリ30を選択する
ために使用される。CEB48はローで活動状態とな
る。OEB52は出力制御信号であり、フラッシュメモ
リ30からデータ線46を経てゲートするために使用さ
れる。OEB42はローで活動状態となる。フラッシュ
メモリ30のデータ線46でデータを得るためには、双
方の制御信号CEB48及びOEB52は論理的に活動
状態でなければならない。
【0022】書込みイネーブルバー信号WEB50は、
CEB48と書込みイネーブルバー信号50が論理値0
である間に指令状態機械60に対する書込みを可能にす
る。WEB50の立上がり端でアドレスとデータはラッ
チされる。標準的なマイクロプロセッサタイミングを使
用する。メモリアレイ36をプログラム又は消去するた
めの指令はデータ線46を介して印加される。データ線
46のデータは指令状態機械(「CSM」)60に供給
される。CSM60はデータを復号し、それが消去、プ
ログラム、状態レジスタリセットのいずれを表わす指令
であるかに応じて、CSM60は書込み状態機械32に
対して適切な制御信号を発生し始める。図2は、いくつ
かの指令を規定している。
【0023】図2のSRDは、書込み状態機械32の中
にある状態レジスタから読取ったデータを表わす。図2
のPAはプログラムすべき記憶場所のアドレスを表わ
し、PDはアドレスPAでプログラムすべきデータを表
わす。
【0024】消去はアレイ36全体で一度に実行され、
2サイクル指令シーケンスによって始まる。まず、消去
セットアップ指令を書込み、その後に消去確認指令が続
く。アレイのプレコンディショニング、消去及び消去検
査は、全て、マイクロプロセッサ999には見えずに、
書込み状態機械32により内部で処理される。このよう
な2ステップ消去、セットアップ、それに続く実行によ
って、メモリ内容の偶発的消去が起こらないように保証
するのである。消去は、VPP38に高電圧が印加される
ときにのみ起こる。この高電圧がないときはメモリアレ
イの内容は消去されないように保護されている。
【0025】消去事象はプレコンディショニング、消去
及び必要に応じた消去後修理という3つの必要なタスク
を含む。アレイ36のプレコンディショニングによっ
て、セル閾値電圧は約5.3ボルトの最低レベルとさ
れ、消去中にセル閾値電圧がセル漏洩という結果を招く
可能性のあるレベルに降下するのを阻止することによ
り、アレイ36の寿命を延長させる。消去はセル電圧を
約3.25ボルト以下、すなわち、論理値1にする。ポ
ストコンディショニングともいう消去後修理は、閾値電
圧を0ボルト以下から約3ボルトまで変化させることに
より、過剰消去されたセルを修理する。
【0026】マイクロプロセッサ999は、状態レジス
タ読取り指令を発行し、状態データを解析することによ
り、消去事象の完了を検出できる。状態レジスタが消去
事象の終了を指示したときには、消去障害状態ビットを
検査すべきである。検査後は、状態レジスタエラービッ
トを適宜クリアすべきである。プログラミングも2サイ
クル指令シーケンスによって実行される。まず、プログ
ラムセットアップ指令をデータ線46を介して指令状態
機械60に書込み、その後に、プログラムすべきアドレ
スとデータを指定する第2の書込み指令が続く。そこ
で、書込み状態機械32がプログラムの制御を引継ぎ、
内部でアルゴリズムを検査する。状態レジスタ読取り指
令によって状態レジスタをポーリングしてゆき、プログ
ラミングシーケンスが完了する時点を確定する。プログ
ラミングの活動中は、状態レジスタ読取り指令のみが有
効である。
【0027】状態レジスタがプログラミング事象の終了
を指示したときには、プログラム障害ビットを検査すべ
きである。検査後、マイクロプロセッサ999は状態レ
ジスタエラービットを適宜クリアすべきである。好まし
い一実施例においては、図1に示すフラッシュメモリ3
0の回路は単一の基板の上にある。好ましい一実施例で
は、フラッシュメモリ30はCMOS回路を採用してい
る。フラッシュメモリ30は、データを記憶するために
メモリセルを使用するメモリアレイ36を含む。メモリ
アレイ36中の短絡行を冗長行80と置換えることが可
能である。フラッシュメモリ30は、それに加えて、オ
ンチップ指令状態機械60と、同期装置と、書込み状態
機械(「WSM」)32と、状態レジスタとを含む。
【0028】以下に詳細に説明するように、消去事象及
びプログラム事象は書込み状態機械により調整される。
書込み状態機械32は、消去動作及びプログラム動作を
完了するために必要な、アドレス線44からのアドレス
と、データ線46からのデータとをラッチする。書込み
状態機械32はアレイアドレス信号AY(5:0)70
及びAX(9:0)72と、アドレス指定された記憶場
所に記憶されているデータを表わすセンスアンプ出力S
OUT(7:0)228とを介してメモリアレイ36と
インタフェースする。
【0029】Xデコーダ74は、AX(9:0)72に
応答してアレイ36中の適切な行を選択する。このた
め、Xデコーダ74を行デコーダ74と呼ぶこともあ
る。同様に、Yデコーダ76はAY(5:0)70に応
答してアレイ36中の適切な列を選択する。Yデコーダ
76を列デコーダ76と呼ぶこともある。アレイ36か
ら読取られたデータはYデコーダ76へ出力され、Yデ
コーダ76はそのデータをセンス増幅器78に供給す
る。センス増幅器78は、アレイセルの閾値電圧が基準
レベルを越えるか否かを判定する。センス増幅器78は
その情報であるSOUT(7:0)を書込み状態機械3
2に供給する。
【0030】連想記憶装置CAM82は、適切な時点で
冗長行80をイネーブルする。各CAMはアレイ36中
の欠陥のある行のアドレスを記憶する。各CAM82は
記憶しているアドレスをアドレス信号70及び72と比
較する。そこで一致が起こったときには、冗長行を起動
する。さらに、CAM82は短絡行のアドレス指定を信
号TWOROW236を介して書込み状態機械32に報
知する。
【0031】アレイ36をさらに詳細に説明しておく
と、後に次状態制御装置34を説明する際に助けになる
であろう。図3は、メモリアレイ36の一部分100を
示す。この部分100はいくつかのメモリセル110〜
132を含んでおり、それぞれのセルは電界効果トラン
ジスタである。セル110〜132は、一般の実施形態
におけるのと同様、語線140〜146とビット線15
0〜156との交差箇所に形成されている。語線140
〜146は、それぞれ、1つの行に属するメモリセルの
ゲートに結合している。たとえば、語線142はメモリ
セル118〜124のゲートに結合している。ビット線
150〜156は、それぞれ、1列分のメモリセルに結
合している。たとえば、ビット線152はメモリセル1
12,120及び128のドレインに結合している。ビ
ット線150〜156はYデコーダ76にも結合してい
る。
【0032】共通ソース線160は、アレイのメモリセ
ル110〜132のソースに印加される電圧レベルを調
整するソーススイッチ37に結合している。共通ソース
線160は第1の局所ソース線162〜166と、第2
の局所ソース線170〜174とにも結合している。第
1の局所ソース線162〜166はアレイ36の特定の
行にそれぞれ結合している。同様に、第2の局所ソース
線170〜174は特定の1つの列に結合している。ソ
ース線162〜166,170〜174及び160は、
一体となって、セル110〜132のソースに電圧を印
加するための経路を形成する。現在採用されている方式
によれば、メモリセル110〜132は語線140〜1
44に約12ボルトの電位を印加し、ビット線150〜
156に約7ボルトの電位を印加し且つ共通ソース線1
60を接地点に結合することによりプログラム、プレコ
ンディショニング、ポストコンディショニングされる。
適正にプログラムされ、プレコンディショニングされた
メモリセルは、約5ボルトの閾値電圧を有する。
【0033】メモリセル110〜132を消去するとき
には、共通ソース線160に約12ボルトの電位を印加
し、語線140〜144を接地し、ビット線150〜1
56を浮動させる。適正に消去されたメモリセルは0ボ
ルトから3ボルトまでの何らかの値の正の閾値電圧を有
する。アレイ36の消去のプログラミング、プレコンデ
ィショニング及びポストコンディショニングは、全て、
次状態制御装置34が制御するアルゴリズムを使用して
実行される。それらのアルゴリズムは、最も遅く応答す
るセルアレイ90が許容しうる閾値電圧に達するまで、
アレイ36に適切なパルスを繰返し印加する。
【0034】冗長行80と置換えたときでも、短絡メモ
リセルは欠陥のないメモリセルのプレコンディショニン
グ、消去及びポストコンディショニングに影響を及ぼす
ので、それらのアルゴリズムは短絡メモリセルを取扱わ
なければならない。これは、欠陥のあるメモリアレイが
ビット線150〜156に電流を「漏洩」し、その漏洩
は特に消去検査の間には問題を引起こすためである。欠
陥のあるメモリセルは他の、欠陥のないメモリセルより
はるかに速く消去しようとする。欠陥のあるメモリセル
は、同時に最も遅く消去する欠陥のないセルの閾値電圧
を許容しうる最高の消去レベル、すなわち、約3ボルト
まで下げるために必要である許容しうる最低の消去電
圧、通常は0ボルト以下の閾値電圧で消去することがあ
る。そのような欠陥メモリセルは、そこで、ゲートが接
地していても、関連するビット線150〜156への漏
洩電流を引起こすであろう。その結果、適正に消去され
たセルの消去検査中、センス増幅器78により感知され
る電流は適正に消去されたセルの電流と、ビット線の漏
洩電流との和になる。このため、適正に消去されたセル
はポストコンディション設定中に過剰消去と誤って識別
されてしまう。
【0035】適正に消去されたセルを誤識別すると、適
正に消去されたセルをポストコンディション検査に合格
させようと試みている中でそのセルを無用にポストコン
ディショニングしてしまうという危険を招く。これによ
り、過剰修理が起こりうる。過剰修理は、セルの閾値電
圧が消去に関わる許容上限、すなわち、約3ボルトより
上がったときに起こる。
【0036】プレコンディション制御装置は、列にある
短絡セルの過剰消去と過剰修理を阻止しようとする。短
絡セルは意味ある情報を含んでいないので、それらのセ
ルの閾値電圧を正規のプレコンディション電圧レベルま
で上昇させる必要はない。しかしながら、短絡メモリセ
ルを急速な過剰消去とビット線への電流漏洩を阻止する
のに十分な電圧レベルにプレコンディションしなければ
ならない。プレコンディション制御装置によりそれらの
目標を達成する方法については、以下にさらに詳細に説
明する。
【0037】図4は、消去事象及びプログラム事象を制
御する書込み状態機械32をブロック線図の形態で示
す。書込み状態機械32は発振器/発生器180と、次
状態制御装置34と、事象カウンタ182と、周期カウ
ンタ184と、アドレスカウンタ186と、状態レジス
タ188と、データラッチ/比較器(「DLC」)19
0と、一致変換/反転回路192と、プレコンディショ
ン基準セル選択回路194とを含む。書込み状態機械3
2の動作は指令状態機械60からの2つの信号によって
始まる。消去信号消去202は、書込み状態機械32に
よる消去事象を開始する。ここでいう消去事象とは、ア
レイ閾値電圧を3.0〜0.5ボルトの範囲内にするた
めに2つ以上のアルゴリズムを実行することである。同
様に、プログラム信号プログラム200は、書込み状態
機械32によるアレイ36のプログラミングを開始す
る。
【0038】同期装置(図示せず)は書込み状態機械3
2と、指令状態機械60とを同期させる。活動状態の消
去信号200又はプログラム信号202のいずれかを受
信すると、同期装置はREADY信号204を書込み状
態機械32が使用中であることを指令状態機械60と、
状態レジスタに指示する論理ローレベルにさせる。書込
み状態機械32が動作を完了すると、同期装置はREA
DY信号をセットすることにより書込み状態機械32を
遮断する。消去信号200とプログラム信号202が共
に論理ローレベルになるたびに、同期装置はリセット信
号206を強制することにより書込み状態機械32をリ
セットする。リセット信号82は書込み状態機械32の
中にあるほぼ全ての回路に印加される。リセット信号8
2は書込み状態機械32内部のクリティカルノードを既
知の状態にさせる。たとえば、リセット信号82は終末
カウント信号88,90及び92を論理値0にさせる。
【0039】非活動状態のリセット信号82を受信して
から間もなく、発振器/位相発生器180は2つの重複
しない位相クロック、すなわち、位相1のPH1 14
6と位相2のPH2 198とを発生し始める。それら
クロックはWSM32のほぼ全てへ経路指定される。次
状態制御装置34は書込み状態機械32のアクティビテ
ィを制御し且つ調整し、WSMの次の状態を確定する。
次状態制御装置34は、WSMの現在の状態を指示する
7ビット状態信号SBUS(6:0)208を生成す
る。
【0040】次状態制御装置34は5つの制御装置を含
む。消去事象を制御するのは、そのうち4つの制御装置
である。制御装置の1つであるシーケンサは他の3つの
制御装置を管理する。このような消去事象の制御のネス
ティングによって、以後の消去事象の変更は容易にな
る。プレコンディション制御装置は、消去に先立ってメ
モリアレイ36のプレコンディショニングを管理する。
消去制御装置はメモリアレイ36の消去を制御し、ポス
トコンディション制御装置は消去後修理を管理する。第
4の制御装置であるプログラム制御装置は、アレイ36
内におけるメモリセルのプログラミングを制御する。
【0041】次状態制御装置34からUS(6:0)2
08を受信した各回路は、それ独自のSBUS(6:
0)復号を実行して、次のタスクを確定する。このデザ
インによれば、数多くのタスクを並列して実行できるの
で、消去機能及びプログラム機能を実行するために必要
な時間は最短に抑えられる。周期カウンタ184はプロ
グラム動作中、プレコンディション動作中、消去動作中
及びポストコンディション動作中のアレイ電圧のパルス
周期を確定し且つ時間限定する。周期カウンタ182が
指示するもう1つの周期はプログラミング又は消去と、
センス増幅器78からの有効データの出力との間の遅延
である。端末カウント信号PCTRTC220は、活動
状態−ハイにすることにより、選択した時間周期が経過
したことを次状態制御装置34に報知する。
【0042】事象カウンタ182は、プログラムパル
ス、消去動作パルス、プレコンディションパルス又はポ
ストコンディションパルスの最大数が印加された時点を
確定する。最大動作回数に達すると、事象カウンタ18
2は終末カウント信号ECTRTC22を論理ハイレベ
ルにすることにより、事象カウンタ182は次状態制御
装置34に報知する。WSM32内部では、アドレスカ
ウンタ186は入力バッファとしてのみならず、カウン
タとしても機能する。READY204がハイであると
き、アドレス線A(16:0)44のアドレスは信号A
Y(5:0)70及びAX(9:0)72としてWSM
32へ出力される。信号AY(5:0)70及びAX
(9:0)72はメモリアレイ36中のプログラム、消
去又は読取りすべきバイトの場所を指示する。
【0043】A(16:0)44からのアドレスはアド
レスラッチイネーブル信号ALE22を介してカウント
回路にロードされる。そこで、アドレスカウンタ186
はメモリアレイ36中の全てのアドレスをカウントす
る。アドレスカウンタ186は、メモリの終りに達した
ことを終末カウントACTRTC226を論理値1とす
ることにより次状態制御装置34に指示する。データラ
ッチ/比較器(DLC)190はWSM32と、CSM
60と、メモリアレイ36と、データ線46との間のイ
ンタフェースである。データ線46に入力したデータは
DLC80により緩衝され、DATAIN(7:0)4
7として指令状態機械60に供給される。DATAIN
(7:0)47はプログラム指令を表わし、指令状態機
械60は、データラッチイネーブル信号DLE100を
論理値1にセットすることにより、DLC190にデー
タ線46の情報を記憶させる。
【0044】DLC190はメモリセルの内容を示すセ
ンスアンプ信号SOUT(7:0)228を検査手続き
中に基準論理レベルと比較し、データ語全体に関わる一
致信号WMATCH104を論理ハイレベルにセットす
ることにより、検査に合格したことを次状態制御装置3
4に指示する。DLC190は、1つのデータ語の各メ
モリセルが適切な基準レベルと一致するか否かをビット
ごとに指示するMATCH(7:0)232をさらに出
力し、論理値0はそれら2つが一致しないことを示す。
一致変換/反転回路192(「MTI回路」)は、場合
に応じて、検査に合格しなかったビットのみをプログラ
ム、プレコンディショニング又はポストコンディショニ
ングさせる。MTI回路190はMATCH(7:0)
232を反転し、論理値0の信号をYデコーダ76によ
るプログラミング及びプレコンディショニングの間にソ
ース線に印加される12ボルトレベルに変換することに
より、この動作を実行する。MTI回路192の出力信
号はHVMATCHB(7:0)234である。
【0045】基準セル選択回路35は検査中に2つの可
能な基準セルのうち一方を選択する。プレコンディショ
ニング中、選択は、信号TWOROW236の指示に従
って、現在アドレス指定されている行が別の行に短絡し
ているか否かによって決まる。次に、適切な基準セルを
センス増幅器78の基準入力端子に結合する。このよう
に、基準セル選択回路37は欠陥のないセルに要求され
る電圧より低い閾値電圧によって短絡セルをプレコンデ
ィション検査に合格させるのであるが、短絡セルにビッ
ト線漏洩を防止するのに十分な閾値電圧をもたせるよう
に保証する。状態レジスタ188は書込み状態32の状
態を状態信号を介してマイクロプロセッサ999に報告
する。それらの状態信号はデータ線46へ多重化され
る。状態レジスタ188は、信号READY204及び
SBUS(6:0)208に基づいて書込み状態機械3
2の状態を確定する。
【0046】図5は、次状態制御装置34を構成する5
つの制御装置240,242,244,246及び24
8の相互関係を示す。好ましい実施例では、それぞれの
制御装置240,242,244,246及び248を
プログラマブルロジックアレイ(PLA)として実現し
ている。次状態制御装置34は消去事象の制御をネステ
ィングして、消去事象の変更を容易にする。CSM60
は、シーケンサ242をイネーブルする消去202を介
して消去事象の初期設定を制御する。そこで、シーケン
サ242は制御装置244,246及び248が実行す
るアルゴリズムの順序とスケジューリングを制御する。
従って、CSM60、あるいは制御装置244,246
又は248に影響を及ぼさずに、シーケンサ242を再
デザインすることにより消去事象を変更できるであろ
う。
【0047】シーケンサ242はSBUS(6:0)2
08の上位2ビットを使用して制御装置244,246
及び248を適切にスケジューリングする。制御装置2
44,246及び248はSBUSデコーダ245,2
47及び249を使用してSBUS(6:5)を復号し
て、プレコンディションイネーブル信号PRECEN2
60と、消去イネーブル信号ERASEN262と、ポ
ストコンディションイネーブル信号POSTCEN26
4とによりそれぞれ指示されるように、それらがイネー
ブルされているか否かを判定する。制御装置244,2
46及び248はタスクの完了をSBUS(4:0)を
介してシーケンサ242に報知する。シーケンサ242
はSBUSデコーダ243を使用してSBUS(4:
0)を復号する。
【0048】プレコンディション制御装置244はメモ
リアレイ36のプレコンディショニングを制御する。こ
こでいう「プレコンディショニング」とは、消去に先立
って大半のメモリセル閾値電圧を約5ボルトに引上げる
プロセスである。メモリセルのプレコンディショニング
は、セルの閾値電圧がビット線漏洩を招くおそれのある
レベルまで降下するのを阻止することにより、メモリセ
ル36の有効寿命を延長させる。プレコンディショニン
グの実行はプログラミングに良く似ている。すなわち、
プレコンディショニングは、メモリセルのゲートに約1
2ボルト、ドレインに5〜7ボルトをそれぞれ印加し且
つソースを接地することにより実行されるのである。プ
レコンディショニングとプログラミングとの相違点は、
短絡セルと冗長行の双方がプレコンディショニングされ
るということである。
【0049】消去制御装置246はアレイ36の消去を
制御する。消去とは、アレイ全体のメモリセル閾値電圧
を3ボルトから0ボルトの範囲に下げるプロセスであ
る。消去後のセルは、フラッシュメモリ規則に従って論
理値1を記憶している。ポストコンディション制御装置
248はアレイ36のポストコンディショニングを管理
する。ポストコンディショニングを消去後修理ともい
う。これらの用語は共に低レベルプログラミングを使用
する過剰消去セルの修理を表わす。プレコンディショニ
ングと同様に、ポストコンディショニングも短絡行と冗
長行80の双方について実行される。ポストコンディシ
ョニングは過剰消去セルの閾値電圧を0ボルト以下から
約3ボルトに引上げる。ポストコンディショニングは消
去のために絶対に必要というわけではないが、過剰消去
セルを修理することにより、メモリアレイ36の有効寿
命を延長させる。
【0050】プログラム制御装置240は、プログラム
200によりイネーブルされたとき、メモリアレイ36
のプログラミングを制御する。プログラミング中、短絡
行を冗長行80と置換える。ここでいう「プログラミン
グ」とは、メモリセルの閾値電圧を約5ボルトに引上げ
るプロセスである。セルはゲートに約12ボルト、ドレ
インに7ボルトをそれぞれ印加し、ソースを接地するこ
とによりプログラムされる。プログラム後のセルは論理
値0を記憶している。SBUS(6:0)208はラッ
チ238にラッチされ、書込み状態機械の他の回路に供
給される。
【0051】各制御装置は、イネーブルされると、SB
US(6:0)208により表わされる書込み状態機械
の前の状態と、ACTRTC226,ECTRTC22
2,PCTRTC220,WMATCH230及びTW
OROW236とに基づいて、書込み状態機械32の中
のそれぞれの回路の次の状態を確定する。制御装置24
0,242,244,246及び248に対して入力を
供給する各回路は、活動状態のSBUS(6:0)20
8に続く次の活動状態のPH2 198によってこれを
実行する。そのような動作実行が可能であるのは、書込
み状態機械32の中の全ての回路はPH2 198にお
ける出力が有効である状態でマスター/スレーブである
ためである。
【0052】SBUS(6:0)208はラッチ238
にラッチされ、書込み状態機械の他の回路に供給され
る。状態バス出力SBUS(6:0)208は、リセッ
ト206をクリアした後の2度目のPH2 198の立
上り端で活動状態になる。SBUS(6:0)208が
PH2 198で活動状態となった結果、WSM32の
各回路は、PH1196がハイである間にSBUS
(6:0)208を評価する。活動状態の消去信号20
2に対する制御装置242,244,246及び248
の応答を考える。シーケンサ242は活動状態の消去2
02により起動される。シーケンサ242が実現するア
ルゴリズムを図6の状態図により示す。簡単に説明すれ
ば、図6に示す消去事象はプレコンディショニングと、
それに続く消去と、さらにその後に続く消去後修理とを
含む。
【0053】図6では、それぞれの円は書込み状態機械
32の状態を表わす。円の一番上にある行はそれぞれの
状態の名前を示す。それぞれの状態の間に選択又はイネ
ーブルされる信号を状態名の下方に列挙する。シーケン
サ242を別の状態へ分岐させる信号の組合わせを各分
岐路の脇のテキスト中に通常は示す。非活動信号の前に
は感嘆符「!」を付す。それらの信号名を図7で説明し
ている。分岐路の脇に信号の組合わせが指示されていな
い場合には、シーケンサ242はシーケンサ242に対
する入力とは無関係に1つの状態から別の状態へ分岐す
るということは理解されるであろう。図8は、図6に示
す状態ごとのSBUS(6:5)値の表である。
【0054】フラッシュメモリ30に最初に電力が印加
されたとき、シーケンサ242はパワーアップ状態12
0に保持される。この状態では事象は起こらない。指令
状態機械60から活動状態の消去202を受信した後、
シーケンサ242は実行を開始する。パワーアップ後、
シーケンサ242はハードウェアのエラーを復号する。
すなわち、活動状態のHARDERRORを復号すると
仮定する。HARDERRORはシーケンサ242をハ
ードウェアエラー状態282へ分岐させる。ハードウェ
アエラー状態282においては、状態レジスタの2つの
障害ビットPRG_FAIL及びERASE_FAIL
は、ハードウェア障害を指示する論理値ハイにセットさ
れる。シーケンサ242はこの状態282からクリアレ
ディ状態284へ分岐する。クリアレディ状態284で
は、シーケンサ242はSEQRDY信号とWAITI
NG信号をセットして、書込み状態機械32が別の指令
に直ちに対応しうる状態になっていることをCSM60
に指示する。シーケンサ242は状態284から状態2
86へ分岐する。パワーダウン状態286においては事
象は起こらない。シーケンサ242はパワーアップ状態
280に戻る。
【0055】活動状態の消去202を受信したときにハ
ードウェアのエラーはないと仮定する。HARD ER
RORが非活動状態であるので、シーケンサ242は状
態280から状態288へ分岐するからである。プレコ
ンディションオン状態288においては、シーケンサ2
42はSBUS(6:5)を論理値01(2進値)にさ
せることにより、プレコンディション制御装置244を
起動する。活動状態のPLADONEにより指示するよ
うにプレコンディション制御装置244がメモリアレイ
36の全体を首尾よくプレコンディショニングするま
で、あるいは、活動状態のPLAFAILにより指示す
るようにプレコンディション制御装置244が動作しそ
こなうまで、シーケンサ242は状態288にとどま
る。
【0056】消去オン状態290においては、シーケン
サ242は消去制御装置246をイネーブルする。活動
状態のPLADONEにより指示するように消去制御装
置244がメモリアレイ36の全体を首尾よく消去する
まで、あるいは、活動状態のPLAFAILにより指示
するように消去制御装置246が動作しそこなうまで、
シーケンサ242は状態290にとどまる。消去制御装
置246がアレイ全体を消去しそこなった場合には、シ
ーケンサ242はクリアレディ状態284へ分岐する。
シーケンサ242は状態284から、先に説明したよう
に状態286及び280を経て分岐する。これに対し、
メモリアレイ36が活動状態のPLADONE及び非活
動状態のPLAFAILにより指示するように首尾よく
消去されたならば、シーケンサ242はポストコンディ
ションオン状態292へ分岐する。
【0057】ポストコンディションオン状態292で
は、シーケンサ242はSBUS(6:5)を論理値1
1(2進値)にさせることによりポストコンディション
制御装置248をイネーブルする。活動状態のPLAD
ONEにより指示するようにメモリアレイ36が首尾よ
くポストコンディショニングされるまで、あるいは、活
動状態のPLAFAILにより指示するようにポストコ
ンディション制御装置248が動作しそこなうまで、シ
ーケンサ242は状態292にとどまる。ポストコンデ
ィション制御装置248が首尾よく動作したか否かにか
かわらず、シーケンサ242は状態292から状態28
4へ分岐する。シーケンサ242は状態284から、先
に説明するように状態286及び280を経て分岐す
る。
【0058】別の実施例においては、シーケンサ242
は過剰修理の修理を含む消去事象を実現する。言いかえ
れば、シーケンサ242はポストコンディション制御装
置248により過剰修理されたセルを修理する。過剰修
理されたセルは、ポストコンディショニング後に3.0
ボルトを越える閾値電圧をもつセルである。この条件
は、消去検査中に消去制御装置246により識別され
る。従って、ポストコンディション制御装置248が完
了を報告した後、シーケンサ242は消去制御装置24
6の消去検査状態へ直接に分岐する。
【0059】図9、図10は、プレコンディション制御
装置244が実現するアルゴリズムを示す状態図であ
る。図9、図10のアルゴリズムは欠陥のないメモリセ
ルのみならず、冗長行80により置換えられている短絡
行をもプレコンディショニングする。アルゴリズムは、
短絡行の中のセルの閾値電圧を消去検査中のビット線漏
洩を阻止するのに十分なレベルまで上昇させる。さら
に、短絡セルは欠陥のないメモリセルと等しい電圧レベ
ルにプレコンディショニング又は検査されるのではな
い。従って、短絡行の中のセルによって障害が起こる確
率は低くなる。
【0060】短絡行と欠陥のない行の双方をプレコンデ
ィショニングするためには、短絡行と冗長行80の双方
を互いに無関係にアドレス指定する能力が要求される。
そこで、プレコンディション制御装置244は、短絡行
をアドレス指定するために、短絡行80と冗長行とのス
ワッピングを阻止する。次に、制御装置244は一意ア
ドレスを使用して冗長行80をアドレス指定する。プレ
コンディション制御装置244は活動状態のNOSWA
Pを介して短絡行の置換えを阻止して、短絡行をアドレ
ス指定する。冗長ビット信号REDBITはプレコンデ
ィション制御装置244に冗長行80を独立してアドレ
ス指定させる。
【0061】図9、図10は、図6と同じ表記規則を使
用する。図11は、図9、図10に示す状態ごとのSB
US(6:0)208の値の表である。図9、図10及
び図11に示した信号は図7に説明されている。まず始
めに、最も単純な状況におけるプレコンディショニング
を考える。すなわち、短絡行がない場合のプレコンディ
ショニングである。言いかえれば、以下の説明中、TW
OROW236は非活動状態であり、また、非活動状態
のままである。
【0062】活動状態のPRECEN信号260を受信
すると、プレコンディション制御装置244はパワーア
ップ状態300に入る。プレコンディション制御装置2
44は、NOSWAPを活動状態にすることにより、短
絡行と冗長行80との置換えをディスエーブルする。プ
レコンディショニング状態の全てを通して、NOSWA
Pはプレコンディション制御装置244により活動状態
に保持されている。プレコンディション制御装置244
は状態300から開始状態302へ分岐する。開始状態
302では、プレコンディション制御装置244は書込
み状態機械32の中の回路の大半をリセットし、メモリ
アレイ36に印加される様々な電圧源をオンすることに
よりプレコンディションを準備する。まず、事象カウン
タ182をリセットする。第2に、アドレスカウンタ1
86をリセットし、その冗長アクセスビットをREDB
ITENによりイネーブルする。REDBITENはメ
モリアレイ36に加えて冗長行80をアドレス指定させ
る。プレコンディション制御装置244は、プレコンデ
ィションアルゴリズムを通してREDBITENを活動
状態に保持する。最後に、プレコンディショニングパル
スを印加する準備として、周期カウンタ184をリセッ
トし、そのVSIカウントを選択する。
【0063】プレコンディション制御装置244は状態
302から状態304へ分岐する。VSIオン状態30
4では、ソース禁止電圧VSIをオンし、プレコンディ
ションすべきでない全てのセルのソースに印加する。こ
れにより、1つのセルのプレコンディショニングが選択
されない他のセルをゆっくりとプログラミングするのを
阻止するのである。活動状態の端末カウント信号PCT
RTC220により指示するように、十分な時間にわた
ってVSIが印加され終わるまで、プレコンディション
制御装置244は状態304にとどまる。
【0064】プレコンディション制御装置244は状態
304からセットアップ状態306へ分岐する。セット
アップ状態306においては、メモリアレイ36中の現
在アドレス指定されているバイトにプレコンディション
パルスを印加するために、プレコンディション制御装置
244は書込み状態機械32を準備する。これは、メモ
リアレイ36の中のプログラム経路をイネーブルし、周
期カウンタ184をリセットし、そのプログラムカウン
トを選択することにより実行される。プレコンディショ
ンパルスと、プログラムパルスと、ポストコンディショ
ンパルスは全て等しい時間だけ印加されるのが好ましい
ために、プログラムカウントを選択するのである。プレ
コンディション制御装置224は状態306から状態3
08へ分岐する。パルス状態308では、現在アドレス
指定されているバイトの選択されたビットに正規のプレ
コンディショニングパルスを印加する。ここでいう正規
のプレコンディションパルスとは、語線に約12ボル
ト、ビット線に約7ボルトをそれぞれ印加し且つ共通ソ
ース線を接地点に結合することである。プレコンディシ
ョニング及びプログラミングのために、現在アドレス指
定されているバイトの中のビットを一致変換/反転回路
35(MTI回路)により選択する。この回路35は状
態308の間にイネーブルされる。
【0065】アドレス指定されているバイトの中の選択
されたビットにプレコンディションパルスを印加してい
る間に、アドレス指定されていないセルのソースにVS
Iを印加すると共に、メモリアレイ36の中のアドレス
指定されていないセルにゲートを接地する。周期カウン
タ184がその終末カウントに達する−これは、プレコ
ンディションパルスが現在アドレス指定されているメモ
リセルの閾値電圧を約5ボルトにまでするのに十分な時
間にわたって印加されたことを指示する−まで、プレコ
ンディション制御装置244はパルス状態308にとど
まる。プレコンディション制御装置244は状態308
から等化状態310へ分岐する。等化状態310の間の
事象は、プレコンディション検査を実行するために書込
み状態機械32を準備する。検査は、先のプレコンディ
ションパルスがセル閾値電圧を5ボルト以上に首尾よく
引上げたか否かを判定する。検査は多段プロセスであ
る。まず、セルのゲートに約7ボルト、セルのドレイン
に約1.2ボルトをそれぞれ印加し且つセルのソースを
接地することにより、検査すべきアレイセルを読取る。
同時に、基準セルを読取る。第2に、アレイセルと基準
セルを読取っている間に、それらのセルをセンス増幅器
78により互いに比較する。センス増幅器の出力SOU
T(7:0)228は、各アレイセルが基準セルの閾値
電圧レベルより低い閾値電圧レベルを有するか、又はそ
れより高い閾値電圧レベルを有するかをDLC190に
報知する。最後に、DLC190はラッチに記憶されて
いるデータとSOUT(7:0)を比較して、各ビット
が基準閾値電圧レベルより低い閾値電圧レベルを有する
べきであったか又はそれより高い閾値電圧レベルを有す
るべきであったかを判定する。
【0066】状態310では、周期カウンタ184をリ
セットし、そのプログラム検査カウントを選択する。事
象カウンタ182をイネーブルして、そのカウントを増
分する。メモリアレイ36をイネーブルして、現在アド
レス指定されているバイトを読取らせると共に、アレイ
36内のプログラム検査回路をターンオンする。検査
中、近づきつつある読取りに備えて、アドレス指定され
ていないセルのビット線を接地する。MTI回路192
をディスエーブルする。
【0067】ここで、検査のための構成は部分的に整っ
たので、プレコンディション制御装置244は状態31
0から状態312へ分岐する。検査遅延状態312で
は、書込み状態機械32は現在アドレス指定されている
バイトを首尾よくプレコンディショニングしたことを検
査する。まず、正規の基準セルをセンス増幅器78に結
合する。正規の基準セルは適正にプレコンディショニン
グしたセルを表わす閾値電圧レベルを有する。その基準
閾値電圧レベルは5ボルトであるのが好ましい。それら
の基準セルは非活動状態のTWOROW236により選
択される。周期カウンタ184が発生させる遅延は、検
査を実行する前にSOUT(7:0)228が確実に有
効になるように保証する。次に、DLC190はセンス
増幅器の出力SOUT(7:0)228を論理値0と比
較する。DLC190は、イネーブルされ且つデータ信
号REFDATが活動状態であるときにこの比較を実行
する。周期カウンタ184がその終末カウントに達する
と、プレコンディション制御装置244は状態312か
ら出る。
【0068】TWOROW236が非活動状態であると
仮定すると、プレコンディション制御装置224が状態
312から出た後にとりうる分岐経路は2つある。WM
ATCH230からの論理値0により指示するように、
現在アドレス指定されているバイトがプレコンディショ
ン検査に合格せず且つアドレスカウンタ186が終末カ
ウントにまだ達していない場合、プレコンディション制
御装置244は分岐経路314をたどってセットアップ
状態306に戻る。活動状態のWMATCH230によ
り指示するように、現在アドレス指定されているバイト
が検査に合格するか、あるいは、活動状態のECTRT
Cにより指示するように、最大数のプレコンディション
パルスがプレコンディション成功を伴わずに印加され終
わるまで、プレコンディション制御装置244は状態3
06から312をたどってゆく。この場合、プレコンデ
ィション制御装置244は状態312から状態316へ
分岐する。
【0069】アドレス増分状態316では、プレコンデ
ィション制御装置244はアドレスカウンタ186をイ
ネーブルすることにより、カウンタのカウントを進ませ
る。これによって、WSM32が別のバイトをプレコン
ディショニングする準備が整う。状態316では、プレ
コンディション制御装置244は周期カウンタ184
と、事象カウンタ182もリセットすると共に、アレイ
プログラム経路をイネーブルする。VSIはオンのまま
である。TWOROW236が非活動状態であると仮定
すると、プレコンディション制御装置244は状態31
6から分岐経路318へと出る。そこで、プレコンディ
ション制御装置244は状態308,310,312及
び316をたどって、アドレスカウンタ186がその終
末カウントに達するまで、アレイ36内部の全てのセル
を検査する。ACTRTC226が活動状態になったな
らば、アレイ36中の全てのセルがプレコンディショニ
ングされ終わったことになり、プレコンディション制御
装置244は分岐経路320を経て状態322に至る。
【0070】プレコンディション制御装置244は、V
SIオフ状態322において、シーケンサ242へ制御
を引継ぐべく準備する。状態322にあるときのタスク
は周期カウンタ184をリセットすること、そのVSI
カウントを選択すること、メモリアレイ36をイネーブ
ルすること及びVSIをオフすることを含む。プレコン
ディション制御装置244は、VSIによりソース線に
導入された電荷を消散させるのに適切な期間だけ、状態
322にとどまる。PCTRTC220が活動状態にな
ると、プレコンディション制御装置244は状態322
から出る。プレコンディション制御装置244は状態3
22から実行済状態324に入る。プレコンディション
制御装置244は、PLAREADYをセットすること
によりプレコンディションの完了を報知する。事象カウ
ンタ182と周期カウンタ184は、リセットすること
によって別の制御装置が利用できる状態となる。プレコ
ンディション制御装置244は実行済状態246からパ
ワーアップ状態300に戻る。そこで、プレコンディシ
ョン制御装置244は次の活動状態のプレコンディショ
ンイネーブル信号PRECEN260を待つ。
【0071】以上のようにプレコンディショニングの基
本概念を理解したところで、メモリアレイ36が短絡行
を含む場合、すなわち、少なくとも一対のアドレスにつ
いてTWOROW236が活動状態になった場合のプレ
コンディショニングを考える。その場合でも、プレコン
ディショニングは活動状態のPRECEN260を受信
したときに始まる。状態300では、プレコンディショ
ン制御装置244はNOSWAP528を活動状態にす
ることにより短絡行と、冗長行80との置換えをディス
エーブルする。これにより、プレコンディション制御装
置244は短絡行をアドレス指定できる。NOSWAP
528は全てのプレコンディショニング状態を通してプ
レコンディション制御装置244により活動状態に保持
される。プレコンディション制御装置244は状態30
0から状態302へ分岐する。
【0072】開始状態302においては、プレコンディ
ション制御装置244は周期カウンタ184と、事象カ
ウンタ182と、アドレスカウンタ186とをリセット
することにより、プレコンディショニングの準備する。
先と同様、REDBITEN468は活動状態とされる
ので、冗長行80をそれらと置換えられる短絡行とは無
関係にアドレス指定できる。アドレスカウンタ186が
冗長行80のアドレスに達すると、REDBIT464
は活動状態になる。
【0073】アドレスカウンタ186が指示する第1の
アドレスが別の行に短絡していると仮定する。1つの対
のアドレス指定された第1の短絡行を下の行と呼び、ア
ドレス指定された第2の行を上の行という。アドレスカ
ウンタ186は直線的にカウントしてゆくので、先にア
ドレス指定されるのは下の行である。WSM32のデザ
インの関係上、一対の短絡行のうち下の行をアドレス指
定した後、直ちにTWOROW236が活動状態になる
わけではない。従って、TWOROW236は状態30
2に影響を及ぼす。また、TWOROW236は状態3
04又は306にも影響を及ぼさないので、プレコンデ
ィション制御装置244は先に説明したようにそれらの
状態をたどってゆく。
【0074】TWOROW236はパルス状態308に
おいて非常に大きな相違をもたらす。先に論じた通り、
状態308では、メモリアレイ36とMTI回路192
をイネーブルすると共に、アレイの大部分にVSIを印
加する。この場合、メモリアレイ36の損傷を防止する
ために、下の行と上の行の双方のゲートにプレコンディ
ション電圧レベルを印加する。これを制御するのは、活
動状態のTWOROW236である。プレコンディショ
ン制御装置244はパルス状態308から等化状態31
0へ分岐する。等化は活動状態のTWOROW236に
より影響を受けず、先に説明したように実行される。そ
の後、プレコンディション制御装置244は状態312
へ分岐する。
【0075】状態312では、プレコンディション制御
装置244は、対の短絡行が過剰消去を阻止するのに十
分なほど高いが、正規のプレコンディション閾値電圧レ
ベル以下である閾値電圧にプレコンディショニングされ
たことを検査する。これは、短絡行を正規の閾値電圧レ
ベルにプレコンディショニングするのが困難なためであ
る。活動状態のTWOROW236は短絡基準セルをセ
ンス増幅器78の基準入力端子に結合させる。好ましい
実施例では、それらの短絡基準セルは約3.1〜3.3
ボルトの閾値電圧を有する。短絡セルの急速な過剰消去
と、ビット線漏洩を防止する閾値電圧レベルであれば、
他のレベルを使用しても良い。低い基準閾値電圧レベル
を使用すると、その結果、短絡セルが少なくとも短絡閾
値電圧レベルにプレコンディションされていれば、セン
ス増幅器78とDLC190は必然的にそれらの短絡セ
ルを首尾よくプレコンディショニングされたと識別する
ようになる。周期カウンタ184がその終末カウントに
達したとき、プレコンディション制御装置244は状態
312から出る。
【0076】活動状態のTWOROW236により指示
するように、短絡行がアドレス指定されたならば、状態
312から分岐しうる経路は2つある。短絡行が少なく
とも短絡閾値電圧レベルにプレコンディションされてお
らず、最大数のプレコンディションパルスに達していな
い場合には、制御装置244は分岐経路326をたどっ
て状態306に戻る。言いかえれば、WMATCH23
0及びECTRTC220が非活動状態であり且つPC
TRTC220及びTWOROW236が活動状態であ
るときに、プレコンディション制御装置244はセット
アップ状態306に戻るということになる。プレコンデ
ィション制御装置244は、事象カウンタ182が終末
カウントに達するか又は短絡行がプレコンディション検
査に合格するまで、状態306から312をたどってゆ
く。次に、プレコンディション制御装置244はアドレ
ス増分状態316へ分岐する。
【0077】状態316では、アドレスカウンタ186
はカウントを増分し、新たなアドレスを指示する。その
時点で、アドレスカウンタ186は一対の短絡行のうち
上の行を指示するので、TWOROW236は直ちに活
動状態になる。先に述べた通り、先の行は一対の短絡行
のうち下の行であった。TWOROW236は活動状態
であるので、プレコンディション制御装置244は状態
316にとどまり、アドレスカウンタのカウントを再び
増分する。これは、上の行が下の行と共にプレコンディ
ショニングされたためである。その後、アドレスカウン
タ186は別の一対の短絡行のうち下の行を指示してい
ても、TWOROW236は非活動状態になる。これ
は、書込み状態機械32がパイプライン方式のデザイン
であるために、一対の短絡行のうち下の行をアドレス指
定するときに、TWOROW236が直ちに活動状態に
なることは阻止されるからである。TWOROW236
が非活動状態になれば、プレコンディション制御装置2
44は状態320から出る。ACTRTC226が非活
動状態であれば、分岐経路318をたどることにより、
メモリアレイ36のプレコンディショニングは継続す
る。これに対し、ACTRTC226が活動状態である
場合には、状態322へ分岐することにより、プレコン
ディション制御装置244は遮断を開始する。
【0078】プレコンディショニングが完了すると、E
RASEN262を活動状態にすることにより、シーケ
ンサ242は消去制御装置246を起動する。図12の
状態図は、消去制御装置246が実現するアルゴリズム
を示す。消去アルゴリズムは、アレイ36全体をバイト
ごとではなく、一度に全て消去するという点を除いて、
プレコンディションアルゴリズム,ポストコンディショ
ンアルゴリズム及びプログラムアルゴリズムとは異な
る。従って、このアルゴリズムの間には、短絡行を冗長
行80と置換える必要がないということがわかるであろ
う。以下に説明するように、短絡行は消去検査中に冗長
行80と置換えられるのである。
【0079】図12は、図6と同じ表記規則を使用して
いる。図13は、図12に示す消去制御装置246の状
態ごとのSBUS(6:0)値と論理信号レベルの表で
ある。信号名は図7に説明されている。活動状態のER
ASEN262は消去制御装置246をパワーアップ状
態330に入らせる。この状態330では何も事象は起
こらず、消去制御装置246は直ちに状態332へ分岐
する。セットアップ状態332では、消去制御装置24
6はアレイ36に消去パルスを印加する準備を行う。ア
レイ36を準備するときには、全てのビット線を接地
し、周期カウンタ184をリセットし且つその消去カウ
ントPCTRERSを選択する。そこで、消去制御装置
246は状態332から状態334へ分岐する。
【0080】パルス状態334では、メモリアレイ36
のそれぞれのセルに消去パルスを同時に印加する。消去
制御装置246は、ビット線を浮動させると共に語線を
接地し、約12ボルトの電位を局所ソース線に印加する
ことにより、この印加を実行する。周期カウンタ184
が終末カウントに達して、大半のセル閾値電圧レベルを
3ボルトから0ボルトの範囲内に入れるのに十分な時間
が経過したことがわかるまで、消去パルスは保持され
る。消去制御装置246は状態334からパルスオフ状
態336へ分岐する。その状態336では、書込み状態
機械32がメモリアレイ36の消去を検査するための準
備を整える。状態336の事象はビット線を接地するこ
とと、アレイ36をイネーブルすることとを含む。消去
制御装置246は事象カウンタ182をイネーブルし
て、状態334においてメモリアレイ36に消去パルス
が印加されたことを表すために、事象カウンタ182に
カウントを増分させる。消去制御装置は、さらに、周期
カウンタ184をリセットする。周期カウンタ184
は、イネーブルされない全ての状態でリセットされる。
【0081】消去制御装置246は状態336から検査
状態338へ分岐する。状態336においては、消去制
御装置246は現在アドレス指定されているアレイセル
群を消去検査するようにメモリアレイ36を構成する。
消去検査中、NOSWAPは非活動状態であるので、短
絡行を冗長行80と置換えることができる。従って、短
絡行は消去検査されないことが理解されるであろう。
【0082】状態338では、いくつかの事象が起こ
る。まず、PCTRESVを活動状態にすることにより
周期カウンタ184をリセットし、その消去検査カウン
トを選択する。これにより、消去制御装置246は確実
に有効なデータを検査することが保証される。第2に、
消去制御装置246は消去検査基準セルをセンス増幅器
78の基準入力端子に結合する。消去検査基準セルは、
許容しうる最高の消去閾値電圧とほぼ等しい閾値電圧を
有する。好ましい実施例においては、許容しうる最高の
消去閾値電圧レベルは約3.1ボルトである。これによ
り、単一の基準セルを短絡行の消去検査と、プレコンデ
ィション検査の双方に使用することができる。第3に、
アレイ36の中の現在アドレス指定されている行を、読
取りパルスを印加することによって読取る。TWORO
W236は、活動状態であれば、双方の短絡行のメモリ
セルのゲートに読取り電圧レベルが印加されるように保
証する。最後に、消去制御装置246は消去検査に備え
てDLC190を構成する。DLC190をイネーブル
し、その比較器検査基準データ信号REFDATを適切
な論理レベルにさせる。消去検査中、適正に消去された
セルは基準セルの閾値電圧レベル以下の閾値電圧レベル
を有しているべきである。これに対し、プレコンディシ
ョン検査中には、アレイセルは基準セルの閾値電圧レベ
ルより高い閾値電圧レベルを有しているべきである。そ
の結果、それら2種類の検査の間に、DLC190はS
OUT(7:0)を異なる論理レベルと比較することに
なる。
【0083】PCTRTC220が活動状態になった
後、消去制御装置246が検査状態338から出てとり
うる分岐経路は4つある。アドレスカウンタ186が終
末カウントに達しておらず、最大数の消去パルスがメモ
リアレイ36にまだ印加され終わっておらず且つ現在ア
ドレス指定されているバイトは検査に不合格であったと
仮定する。その場合、消去制御装置246は分岐経路3
40をたどってセットアップ状態332に戻り、もう1
つの消去パルスを印加する。セットアップ状態332に
戻ると、消去制御装置246は状態334,336及び
338をたどって、メモリアレイ36にもう1つの消去
パルスを印加し、先に検査に不合格であったバイトを消
去検査する。現在アドレス指定されているバイトが検査
に合格するか、又はアレイ36に印加しうる最大数の消
去パルスに達するまで、消去制御装置246は状態33
2,334,336及び338を経過し続ける。
【0084】バイトの前でECTRTC222が活動状
態になったならば、メモリアレイ36は消去アルゴリズ
ムに対し失敗である。消去制御装置246は、状態33
8から分岐経路342をたどって状態348に入ること
により、その障害に応答する。障害状態348では、消
去制御装置246はERASEFAILビット及びPL
AFAILビットをセットすることにより障害を報知す
る。その後、消去制御装置246はパワ−アップ状態3
30に戻る。これに対し、バイトはその時点では検査に
合格しており、且つ事象カウンタ182が最大カウント
に達していない場合には、消去制御装置246は検査状
態338から出て2つの分岐経路のうちの一方をとる。
メモリアレイ36のあらゆるバイトが検査されない限
り、消去制御装置246は状態338から状態350へ
分岐する。言いかえれば、ACTRTC226が非活動
状態であり且つRCTRTC220及びWMATCH2
30は活動状態であるとき、消去制御装置は分岐経路3
44をたどるのである。
【0085】アドレス増分状態350では、消去制御装
置246はアドレスカウンタ186をイネーブルして、
そのカウントを増分することによりメモリアレイ36の
別のバイトを消去検査すると共に、別のセル行を選択す
べく準備を整える。さらに、消去制御装置246は消去
検査を実行するために必要な構成を維持する。このた
め、メモリアレイ36と、読取り経路と、DLC190
はイネーブルされたままである。周期カウンタをリセッ
トし、その消去検査カウントを選択する。消去検査基準
セルは選択されたままである。消去制御装置246は状
態350から検査遅延状態352へ分岐する。検査遅延
状態352は検査に先立ってわずかな遅延を追加する。
消去制御装置246は信号を状態352における消去検
査に必要なレベルに維持する。
【0086】消去制御装置246は状態352から検査
状態338に戻る。そこで、現在アドレス指定されてい
るバイトを消去検査する。次に、事象カウンタが終末カ
ウントに達するか又はメモリアレイが首尾よく消去され
るまで、消去制御装置246は状態332,334,3
36,338,350,352を適宜たどってゆく。メ
モリアレイ36の全てが消去され終わったとき、消去制
御装置246は状態338から実行済状態354へ分岐
する。そこで、消去制御装置246は、PLADONE
をセットし且つアドレスカウンタ186及び事象カウン
タ182をリッセトすることにより、首尾よく完了した
ことを報知する。次に、消去制御装置はパワーアップ状
態330に戻り、次の活動状態のERASEN262を
待つ。
【0087】ポストコンディション制御装置248が実
現するアルゴリズムは、1991年10月9日に出願さ
れた名称「Method of Repairing
Overerased Cells in a Fla
sh Memory」による米国特許出願第07/77
3,228号の主題であるので、ここではごく簡単にそ
のアルゴリズムを説明しておく。ポストコンディション
制御装置248は過剰消去検査回路と、低電圧レベルプ
ログラミングとを使用して、過剰消去セルを修理する。
修理は、1つの列を選択し、その列の各セルを検査し
て、過剰消去されたセルがあるか否かを判定することに
よって始まる。この手続きを一般に過剰消去検査とい
う。セルが許容しうる最低の消去閾値電圧において期待
される電流を越える電流を導通するとき、そのセルは過
剰消去されていると識別する。修理は、単一の低レベル
プログラミングパルスを過剰消去セルに印加することに
より進行する。プログラミングパルスの電圧レベルは、
その他の動作条件とは関係なく、セルが過剰修理されな
いように保証するのに十分なほど低い。列に残っている
セルも同じようにして検査する。選択した列のいずれか
のセルが過剰消去と識別されたならば、その列の各セル
をもう一度過剰消去検査する。過剰消去と識別されたセ
ルを単一の低レベルパルスによって再びプログラムす
る。ただし、現在修理パスに関わるプログラミングパル
スの電圧レベルは、先の修理パスと比べて高くなってい
る。列のセルのどれも過剰消去と識別されなくなるま
で、これらのステップを繰返す。
【0088】この修理方法は、数百マイクロアンペアの
最大ビット線漏洩電流を許容することができる。この頑
強性は、1つには、初期プログラミング電圧レベルの適
正な設定と、欠陥のあるセルと正常なセルの動作の差異
とによって生じる。1つの列が約−5ボルトの閾値電圧
T を有するひどく過剰消去されたセルを含むものと仮
定する。ひどく過剰消去されたセルは、同じ列の他の全
てのセルを過剰消去検査試験に不合格とさせてしまうほ
どの電流を引出す。ポストコンディション制御装置24
8は、その列のそれぞれのセルを非常に低い電圧レベル
に一度にプログラムする。初期プログラミングパルスの
電圧は、列のどのセルも過剰修理されないように保証す
るのに十分な低いレベルに設定される。プログラミング
中に使用するゲート電圧をVG とし、プログラム中のセ
ルの閾値電圧をVT とするとき、一般に、チャネル・ホ
ット・エレクトロンプログラミングは駆動電圧(VG
T)によって指数関係に従って決まる。VG が5ボル
トに等しいとき、VT が2ボルトである適正に消去され
たセルは非常にゆっくりとプログラムする。これに対
し、ひどく過剰消去されたセルは非常に急速にプログラ
ムする。すなわち、低レベルの初期プログラミングパル
スは適正に消去されたセルにほとんど影響を及ぼさない
が、ひどく過剰消去されたセルには大きく影響する。初
期プログラミング/修理パスの結果、次のプログラミン
グ/修理パスの間のビット線漏洩電流は減少する。この
多重パス修理方法は漏洩電流によって起こるエラーを排
除するのに有用であると共に、過剰修理の危険を少なく
するのを助ける。
【0089】低いゲート電圧レベルで修理を開始するの
が有利である理由は他にもある。チャネル・ホット・エ
レクトロンプログラミング特性は、温度,製造条件及び
使用量によって異なるので、フラッシュメモリごとに修
理のために特定の電圧を最適と定めることはなく、同じ
フラッシュメモリであっても、その使用可能寿命にわた
って同じではない。従って、この過剰消去修理方法は、
低い電圧レベルから始めることにより、広い範囲にわた
る特定の最適電圧に対応する。
【0090】図14,図15は、活動状態のプログラム
信号200によりイネーブルされたときにプログラム制
御装置240が実現するアルゴリズムを示す。図14,
図15は、図6と同じ表記規則を使用している。図16
は、図14,図15に示すプログラム制御装置240の
状態ごとのSBUS(6:0)値及び論理信号レベルの
表である。プログラム制御装置240が実現するアルゴ
リズムは、制御装置244,246及び248のアルゴ
リズムとは2つの点で異なる。第1に、プログラム制御
装置240は起動されるたびに唯1つのバイトをプログ
ラムする。そのバイトを選択するのはフラッシュメモリ
のユーザーであり、プログラム制御装置240が起動さ
れる前に、アドレスカウンタ186はそのバイトを指示
する。短絡行がアドレス指定されているなら、そのバイ
トは冗長行によって置換えられるであろう。第2に、フ
ラッシュメモリユーザーはアドレス指定された記憶場所
に記憶すべき情報を、DLC190にデータを書込むこ
とによって指示する。プログラミング中、フラッシュメ
モリ30は論理値1を論理値0に重ね書きさせる。プロ
グラミング中、論理値0を論理値1に変化させることは
不可能である。従って、プログラム制御装置240はフ
ラッシュメモリユーザーが選択した、論理値1から論理
値0にプログラムすべきビットのみをプログラムする。
【0091】プログラム制御装置240はパワーアップ
状態360において実行を開始する。状態360では事
象は何も起こらず、プログラム制御装置はVSIオン状
態362へ分岐する。VSIオン状態362では、プロ
グラム制御装置240は、ソース禁止電圧源を含めて、
プログラミング中に使用される様々な電圧源をイネーブ
ルする。プログラム制御装置240はメモリアレイ36
をもイネーブルする。状態362及びそれに続く全ての
状態を通して、プログラム制御装置240はNOSWA
Pを活動状態に保持する。その後、プログラム制御装置
240は状態366へ分岐する。
【0092】セットアップ状態364は様々な電圧源を
適切な電圧レベルにスルーさせ続ける。メモリアレイ3
6はイネーブルされたままである。プログラム制御装置
240は、さらに、周期カウンタ184をリセットする
ことにより、プログラミングに備えて書込み状態機械3
2を構成する。セットアップが終了すると、プログラム
制御装置240は状態364から状態366へ分岐す
る。プログラム制御装置240は、パルス状態366に
おいてアドレス指定されているバイトにプログラミング
パルスを印加する。プログラミングパルスの印加タイミ
ングを規定するために、周期カウンタ184をリッセト
し、そのプログラムカウントを選択する。望ましくない
低速プログラミングを阻止するために、メモリアレイ3
6内のその他のセルにVSIを印加する。プログラミン
グを要求するバイトのビットのみがプログラムされるよ
うに、プログラム制御装置240はMTI回路192を
もイネーブルする。周期カウンタ184が終末カウント
に達すると、プログラム制御装置240は状態368へ
分岐する。
【0093】等化状態368では、プログラム検査を実
行するために、プログラム制御装置240は書込み状態
機械32を構成する。まず、アレイのビット線を接地
し、プログラム検査基準セルを選択する。プログラム検
査基準セルは、好ましい実施例においては、約5ボルト
の閾値電圧を有する。プログラム検査基準セルは非活動
状態のTWOROW236及びSBUS(6:5)によ
り選択される。次に、プログラム検査中に使用される電
圧源を適切な電圧レベルにスルーさせる。最後に、周期
カウンタ184をリセットするが、メモリアレイ36は
イネーブルされたままである。
【0094】等化状態368では、他にも事象が起こ
る。プログラム制御装置240はMTI回路192をデ
ィスエーブルするが、これは検査中には不要である。プ
ログラム制御装置240は事象カウンタ182をイネー
ブルして、状態366においてアドレス指定されたバイ
トにパルスが印加されたことを表すために、事象カウン
タ182にカウントを増分させる。それらの事項を処理
したならば、プログラム制御装置240は状態368か
ら状態370へ分岐する。検査遅延状態370では、プ
ログラム制御装置240はアドレス指定されたバイトの
プログラミングを検査する。すなわち、プログラム制御
装置240は、アドレス指定されたバイトのそれぞれの
セルの閾値保持電圧が約5ボルトの最小電圧レベルを越
えたか否かを判定する。これを実行するために、プログ
ラム制御装置240はプログラム検査基準セルをセンス
増幅器78の基準入力端子に結合し続けると共に、アド
レス指定されたバイトをセンス増幅器78のその他の入
力端子に結合し続ける。センス増幅器78の出力SOU
T(7:0)228が有効であることを保証するため
に、周期カウンタ184をリセットし、そのプログラム
検査カウントを選択する。次に、プログラム検査制御信
号をイネーブルし且つCMPENを活動状態にすること
により、SOUT(7:0)228をDLC190に記
憶されているデータと比較する。
【0095】検査が完了したとき、プログラム制御装置
240が検査遅延状態370から出た後にとりうる分岐
経路は2つある。アドレス指定されたバイトが適正に検
査されそこなったことが非活動状態のWMATCH23
2によって指示されると、プログラム制御装置240は
分岐経路370をたどってセットアップ状態364に戻
る。その後、プログラム制御装置240は先に説明した
ように状態364,366,368及び370をたどっ
てゆく。最終的に、プログラム制御装置240は状態3
70から出て分岐経路374をとらなければならない。
次の2つの状況のうち一方が起こったとき、プログラム
制御装置240は状態370から出て分岐経路374を
たどる。第1に、活動状態のECTRTC222により
指示するように、バイトがプログラム検査に不合格であ
った場合には、プログラム制御装置240は分岐経路3
74をとる。第2に、アドレス指定されたバイトが首尾
よくプログラム検査されたときには、プログラム制御装
置240は状態370から出て分岐経路374をとる。
合格は活動状態のWMATCH230によって示され
る。
【0096】プログラム検査が合格であったか否かにか
かわらず、プログラム制御装置240は分岐経路374
からVSIオフ状態376に入る。そこで、プログラム
制御装置240は様々なプログラム基準源を読取りレベ
ルまでスルーさせる。VSIはターンオフする。プログ
ラミングが失敗に終わったならば、非活動状態のWMA
TCH230と、活動状態のECTRTC222とによ
って、プログラム制御装置240は状態376から障害
状態378へ分岐する。プログラム制御装置240は、
プログラム障害ビットをセットすることにより障害を指
示する。次に、プログラム制御装置240は状態380
へ分岐する。これに対し、プログラミングが成功した場
合には、プログラム制御装置240は状態376から状
態380へ直接に分岐する。
【0097】状態380では、プログラム制御装置24
0は状態レジスタのRDY/BSYビットをクリアす
る。次に、プログラム制御装置240はパワーダウン状
態382へ分岐するが、そこでは何の事象も起こらな
い。次に、プログラム制御装置240はパワーアップ状
態360に戻って、次ぐのプログラム指令を待つ。以
上、制御装置240,242,244,246及び24
8について説明したので、今度は、書込み状態機械32
の中にあってSBUS(6:0)208に応答するその
他の回路を考える。WSM32の中には、発振器/位相
発生器180、周期カウンタ184,事象カウンタ18
2,アドレスカウンタ186,MTI回路192,基準
セル選択回路194,DLC190及び状態レジスタ1
88といった回路がさらに含まれている。
【0098】図17は、発振器/位相発生器180をブ
ロック線図の形態で示す。発振器400は非活動状態の
リセット信号206を受信して動作を開始する。発振器
400は、リセット206が非活動状態である限り、動
作している。リセット206が印加されると、発振器4
00は動作を停止する。発振器の出力402は位相発生
器404に供給される。位相発生器404は、起動され
るまでは非活動状態に保持される2ビットシフトレジス
タを含む。シフトレジスタは4つの2進値の組合せ、す
なわち、00,01,11及び10の2進値を経てシフ
トする。位相発生器404の2つのデコーダは01,1
0の各状態を監視し、2つの出力クロックPH1 19
6及びPH2 198を発生する。それらのクロックは
WSMのほぼ全ての回路へ経路指定する。好ましい実施
例では、PH1/PH2 196及び198の典型的な
サイクル時間は500nsである。PH1 196及び
PH2 198双方のデューティサイクルは約25%で
ある。
【0099】リセット206及びSBUS(6:0)2
08に対するPH1 196及びPH2 198のスタ
ートアップタイミングは図18から明らかである。リセ
ット206はプログラム200又は消去202のいずれ
か一方の立上がり端でローになる。リセット206が立
下がった後、初めに活動状態ハイになるクロックはPH
2 198である。SBUS(6:0)208はPH2
198の第2のパルスの立上がり端で活動状態にな
る。WSM32の全ての回路は、有効な読取りを保証す
るために、PH1 196が活動状態である間にSBU
S(6:0)208を評価する。
【0100】図19は、周期カウンタ184をブロック
線図の形態で示す。周期カウンタ184は周期カウンタ
SBUSデコーダ406と、15ビットシフトレジスタ
カウンタ408と、終末カウント一致回路410と、ラ
ッチ412とを含む。周期カウンタSBUSデコーダ4
06はカウンタ408及び終末カウント一致回路410
を制御する。デコーダ406はSBUS信号208を復
号し、カウンタの212カウントをリセットすべきか否
かを判定すると共に、可能な3つの終末カウントの中か
ら1つを選択する。
【0101】それぞれの状態におけるSBUSデコーダ
406の動作は図11,図13及び図16を参照するこ
とにより確定できる。たとえば、図11は、セットアッ
プ状態306にあるとき、SBUSデコーダ406はP
CTRSTを論理値1にセットすることにより周期カウ
ンタのカウントをリセットすることを指示している。好
ましい実施例においては、SBUSデコーダ406をラ
ンダム論理として実現する。シフトレジスタカウンタ4
08はカウンタイネーブルを組込んでいないので、活動
状態のPCTRST信号414によりリセットされる状
態を除くあらゆる状態で動作し続ける。
【0102】シフトレジスタ408のQ出力416は終
末カウント一致回路410に供給される。終末カウント
一致回路410はQ出力416を解析し、選択した終末
カウントに一致したときにそれを指示する。終末カウン
ト一致回路は、それぞれ活動状態のPCTRERS,P
CTRPGM,PCTRERV,PCTRPGV及びP
CTRVSI信号により選択される消去,プログラム,
消去検査,プログラム検査及びVSIのとりうる5つの
終末カウントを認識する。カウンタ408はTCOUN
T418を増分し続けているので、出力TCOUNTは
1つの状態に対してのみ活動状態である。活動終末カウ
ントTCOUNT418を記憶するために、ORゲート
413と関連してラッチ412を使用する。
【0103】書込み状態機械32が最初にパワーアップ
されたとき、ラッチ412はリセット206によりリセ
ットされて、そのQ出力420を論理値0にセットす
る。PCTRST414信号が印加されたときにも、ラ
ッチ412はリセットされる。TCOUNT418が活
動状態ハイになると、Q出力420は論理値1になる。
TCOUNT418が非活動状態になった後、Q出力4
20はラッチの入力を論理値1に保持するので、ラッチ
412がリセット206によりリセットされるまで、P
CTRTC220は論理値1のままである。図20は、
事象カウンタ182をブロック線図の形態で示す。事象
カウンタ182は事象カウンタSBUSデコーダ422
と、13ビットカウンタ424と、事象カウンタ終末カ
ウント選択回路426と、ラッチ428と、ORゲート
430とを含む。事象カウンタSBUSデコーダ422
はカウンタ424と終末カウント一致回路426を制御
する。デコーダ422はSBUS信号208を復号し、
カウンタ424をイネーブルすべきか又はリセットすべ
きかを判定し、可能な2つの事象カウンタ終末カウント
のいずれかを選択する。WSMの状態ごとのSBUSデ
コーダ422の動作は図11,図13及び図16を参照
することにより確定できる。たとえば、図13は、検査
状態338においては、SBUSデコーダ422はEC
TRERSをセットすることにより消去終末カウントを
選択することを指示している。好ましい実施例では、事
象カウンタSBUSデコーダ422はランダム論理とし
て実現される。
【0104】WSM32が新たなバイトをプログラムし
始めるか、プレコンディションし始めるか又は消去し始
めるたびに、カウンタ424はSBUSデコーダ422
によりリセットされる。リップルキャリーカウンタ42
4は活動状態のECTREN信号432によりイネーブ
ルされたときにのみカウントを増分する。カウンタ42
4のQ出力434は事象カウンタ終末カウント一致回路
426に供給される。
【0105】事象カウンタ終末カウント一致回路426
はQ出力434を解析し、選択した終末カウントに達し
たときにそれを指示する。事象カウンタ終末カウント一
致回路426はとりうる2つの終末カウント、すなわ
ち、信号ECTRERS及びECTRPGMにより選択
される消去とプログラムを認識する。消去事象が選択さ
れたとき、事象カウンタ182は8000を越える消去
パルスを印加させ、また、50個のプログラムパルス,
プレコンディションパルス及びポストコンディションパ
ルスを印加させる。TCOUNT436はラッチ428
と、ORゲート430とを使用してTCOUNT418
と全く同じようにラッチされる。
【0106】図21は、アドレスカウンタ186をブロ
ック線図の形態で示す。書込み状態機械32の中で、ア
ドレスカウンタ186は入力バッファとカウンタ双方の
機能を果たす。アドレスカウンタ186はTTL入力バ
ッファ440及び442と、バイパスマルチプレクサ4
44及び446と、列カウンタ448と、列カウンタ4
50と、SBUSデコーダ452とを含む。TTL入力
バッファ440及び442はA(15:0)44のTT
LレベルをCMOSレベルに変換する。バッファ出力A
IN(15:0)はバイパスマルチプレクサ444及び
446のA入力端子に印加される。READY204が
論理値1であるとき、アドレスカウンタ186はアドレ
ス指定を通して流れを形成し、そこで、マルチプレクサ
444及び446のA入力を選択して、AX(9:0)
72及びAY(7:0)70として出力させる。
【0107】行カウンタ450と列カウンタ448は、
一体となって、メモリアレイ36の1ブロックのバイト
ごとに独自のアドレスを生成する。各ブロックは512
列×1024行として編成されている。従って、一度に
1バイト、すなわち、8列をアドレス指定することか
ら、列カウンタ448は63のカウントで終末カウント
を活動状態にする。列カウンタの終末カウント出力はア
ドレスカウンタ終末カウント信号ACTRTC226と
して制御装置240,242,244,246及び24
8に結合する。同様に、行カウンタ450は1023の
カウントで終末カウントを活動状態にする。
【0108】カウンタ448及び450は、プレコンデ
ィショニング中、冗長行80に含まれている4つの行に
関する独自のアドレスも生成しなければならない。すな
わち、プレコンディショニングの間の行の数は1024
ではなく、1028である。従って、アドレスカウンタ
186は2つの異なる行端末カウント、すなわち、10
23のカウントと、1027のカウントとを認識しなけ
ればならない。アドレスカウンタ186はANDゲート
454及び456と、NORゲート458と、XNOR
ゲート460と、ラッチ462とを使用して2つの行終
末カウントを認識する。第1の行終末カウント信号TC
1 464は、行カウンタ450が1023に達したと
きに活動状態になる。プレコンディショニング中、4つ
の冗長行80の全てをカウントしている間に、TC1
464はハイのままである。このため、TC1 464
はYデコーダ76により冗長ビットREDBIT464
としても使用される。第2の行終末カウント信号TC2
466はTC1 464と、2つの行カウンタ出力A
Q0及びAQ1と、冗長ビットイネーブルREDBIT
EN468とから生成される。従って、TC2はプレコ
ンディショニング中のみ、そして、TC1が活動状態に
なった後、4クロックサイクルを経たときにのみ活動状
態になる。
【0109】TC1 464及びTC2 466から生
成されるXTCを使用して、列カウンタ448をイネー
ブルする。マルチプレクサ470はTCSelect4
72を使用してTC1 464か、TC2 466を選
択する。論理値1であるとき、TCSelect472
はTC1 464をマルチプレクサ出力XTC474に
結合する。プログラミング中及び消去中には、TCSe
lect472は論理値1である。逆に、プレコンディ
ショニング中及びポストコンディショニング中には、T
CSelect472は論理値0である。これらのアル
ゴリズムの間、TC2 466はマルチプレクサ出力X
TC474に結合する。TCSelect472は選択
論理471の出力である。選択論理471はPRECE
N及びERENを使用してTCSelect472を発
生する。好ましい実施例では、選択論理471をランダ
ム論理として実現する。
【0110】行カウンタ450と列448は共に並列ロ
ード式の線形カウンタであり、ここではそれらのカウン
タについて詳細には説明しない。カウンタ448及び4
50の動作はSBUSデコーダ458と、アドレスラッ
チイネーブルALE224とにより制御される。ALE
224が活動状態になると、バッファ440及び442
の出力であるAIN(5:0)はカウンタ448にロー
ドされる。アドレスラッチイネーブル信号ALE224
は指令状態機械60により発生され、プログラム指令が
開始するたびに活動状態になる。2つのSBUS復号信
号ACRST及びACTRENはカウンタ448及び4
50のリセットとイネーブルをそれぞれ制御する。SB
USデコーダ452は冗長ビットイネーブルREDBI
TENをさらに発生する。プログラム中、プレコンディ
ション中及び消去中のSBUSデコーダ452の動作
は、図8,図10,図12及び図14を参照することに
より理解できる。たとえば、プレコンディショニングア
ルゴリズムのアドレス増分状態316では、ACTRE
Nは論理値1である。好ましい実施例では、SBUSデ
コーダ452をランダム論理として実現する。
【0111】図22は、CAM82及びYデコーダ76
の一部分500を示す。この部分500はプレコンディ
ショニング中に2つの機能を実行するために使用され
る。まず、第1に、この部分500は短絡行を冗長行と
置換えるのを阻止する。第2に、プレコンディショニン
グ中、この部分500は短絡アドレスがアドレス指定さ
れたことを書込み状態機械32に報知する。冗長行イネ
ーブル信号RREN(4:1)502は双方の機能を実
行するために使用される。RREN(4:1)502は
CAMレジスタ504により発生される。図22には1
つのCAMレジスタ504のみを示す。
【0112】CAMレジスタ504はメモリアレイ36
の中の欠陥のある1つの行のアドレスを記憶する。それ
ぞれのCAMレジスタ504はアドレス信号AX(9:
0)72及びAY(5:0)70をそのCAMレジスタ
が記憶しているアドレスと比較する。一致が起こると、
CAMレジスタ504は4つの冗長行イネーブル信号R
REN(4:1)502の1つを介して冗長行80の1
つを起動する。CAMレジスタ504は多数の比較器5
06を使用して機能を実現する。各比較器506は1つ
のアドレスビットAX(9:0)72又はAY(5:
0)70をCAMビット508により記憶されている値
と比較する。排他的NORゲートXNOR510はその
比較を実行して、アドレスビットとCAMビット508
が一致するときに論理値1を出力する。各比較器506
からの出力512をANDゲート514により論理積演
算する。それぞれの比較器506が一致を指示したと
き、ANDゲート514はその出力を活動状態ハイに
し、それにより、関連する冗長行を起動する。
【0113】ゲート516はRREN(4:1)502
の論理和をとって、冗長行信号RR518を発生する。
冗長行がイネーブルされるたびに、RR518は論理値
1になる。RR518をプレコンディションイネーブル
信号PRECEN260と組合わせて、TWOROW2
36を発生する。その結果、TWOROWはプレコンデ
ィショニング中と、短絡行がアドレス指定されたときに
限って活動状態になる。
【0114】冗長行イネーブル信号502はアドレス変
換テーブル520により16ビットアドレスに変換され
る。アドレス変換テーブル520は選択した冗長行に関
する16ビットアドレスCRR(16:0)522を出
力する。プログラミング及び消去の間、CRR(16:
0)522はマルチプレクサ524を通過して、アレイ
アドレス信号AA(16:0)526として出力され
る。AA(16:0)526はメモリアレイ36に印加
される。ところが、プレコンディショニング中には、C
RR(16:0)522はアレイアドレス信号526と
して出力されない。プレコンディショニングの間、NO
SWAP528はアレイアドレス信号526としてアド
レスカウンタ信号AQ(15:0)及びREDBITを
選択する。
【0115】SBUSデコーダ530はPRECEN2
60とNOSWAP528を発生する。これら2つの信
号はプレコンディショニング中は終始活動状態である
が、その他の場合には非活動状態である。好ましい一実
施例では、SBUSデコーダ530をランダム論理とし
て実現する。
【0116】図23は、基準セル選択回路194の一実
施例と、この回路とメモリアレイ36及びセンス増幅器
78との関係をブロック線図の形態で示す。アレイ36
の8つのセルを一度に検査するためには、この回路19
4が8つ必要である。基準セル選択回路194は制御装
置242,244,246及び248にとりうる2つの
基準セルの一方を選択させる。プレコンディション制御
装置244は、短絡行が現在アドレス指定されているか
否かに従って、2種類のセルを共に使用する。プレコン
ディショニング中、欠陥のない行がアドレス指定された
とき、回路194は基準セルを正規の閾値電圧と結合す
る。ところが、短絡行がアドレス指定されたときには、
回路194は、正規の閾値電圧より低いが、消去中の短
絡行の急速な過剰消去を阻止するには十分である閾値電
圧を有する短絡基準セルをセンス増幅器78に結合す
る。消去制御装置246とプログラム制御装置240
は、共に、1種類の基準セルのみを使用する。プログラ
ム制御装置240は5ボルトの閾値電圧を有する基準セ
ルを使用し、一方、消去制御装置246は約3ボルトの
閾値電圧を有する基準セルを使用する。
【0117】基準セル選択回路194はSBUSデコー
ダ550及び552と、VPX選択回路554と、短絡
基準セル556と、正常基準セル558と、トランジス
タ560及び562とを含む。基準セル556及び55
8はフラッシュメモリセルである。これら2つのセルの
相違はその閾値電圧のレベルにある。短絡基準セル55
6は約3.1ボルトの閾値電圧レベルを有する。これは
短絡メモリセルの急速な過剰消去を阻止するには十分な
ほど高いが、欠陥のないセルがプレコンディションされ
る5.3ボルトのレベルよりはるかに容易に到達できる
レベルである。短絡基準セル556の電圧レベルは消去
検査にも適している。このため、セル556を消去検査
基準セル556ともいう。正常基準セル558は約5.
3ボルトの閾値電圧を有する。この閾値電圧はプログラ
ミングにも適している。従って、このセル558をプロ
グラム検査基準セル558ともいう。
【0118】SBUSデコーダ552はVPX選択回路
554と関連して短絡基準セル556か、正常基準セル
558を選択する。回路554はVPX564の電圧レ
ベルを確定する。VPX564はSBUSデコーダ55
2への入力の1つである。TWOROW236が活動状
態となっているプレコンディショニング中、VPX56
4は短絡基準セル556のゲートに対して適切な電圧レ
ベルに設定される。すなわち、VPX564は基準セル
556を読取れるほど十分に高いが、基準セル556が
時間の経過に伴ってゆっくりとプログラムされ、セルの
閾値電圧を偶発的に変化させてしまうのを阻止するのに
十分な低さであるレベルに設定されるのである。好まし
い一実施例においては、TWOROW236が活動状態
であるプレコンディショニングの間には、VPX564
は約5ボルトに設定される。消去検査の間にも、VPX
564は5ボルトに設定される。欠陥のないセルのプレ
コンディショニングの間、すなわち、TWOROW23
6が非活動状態であるときには、VPX564は基準セ
ル558を読取れるほどには高いが、読取り中に基準セ
ルがゆっくりとプログラムされるのを阻止するのには十
分なほど低いレベルに設定される。好ましい一実施例に
おいては、VPX564を約7ボルトに設定する。プロ
グラム検査中にも、VPX564は7ボルトに設定され
る。次の表2は、VPX選択回路554の動作を要約し
て示す。
【0119】
【0120】SBUSデコーダ552はVPX564
と、TWOROW236とを使用して基準セル556
か、基準セル558を選択する。SBUSデコーダ55
2は、基準セル556及び558をオン/オフする出力
EVGATE及びPVGATEを介してデコーダとして
の機能を実行する。短絡行がプレコンディショニングさ
れているプレコンディショニングの間には、SBUSデ
コーダ552はEVGATEを5ボルトに設定すると共
に、PVGATEを0ボルトに設定する。言いかえれ
ば、SBUSデコーダ552は基準セル556をターン
オンし、基準セル558をオフするのである。SBUS
デコーダ552は、消去検査中にも、EVAGATEと
PVGATEをそれと同じレベルに設定する。欠陥のな
い行をプレコンディション検査する場合、SBUSデコ
ーダ552はEVAGATEを0ボルトに、また、PV
GATEを7ボルトにそれぞれ設定する。これにより、
基準セル556はターンオフし、基準セル558はター
ンオンする。プログラム検査中、SBUSデコーダは同
じレベルを出力する。
【0121】表3は、プレコンディショニング中のSB
USデコーダ552の動作を要約して示す。
【0122】
【0123】SBUSデコーダ550は基準セル556
及び558をセンス増幅器570の基準入力端子に結合
する。SBUSデコーダ550はこのタスクをトランジ
スタ560及び562を介して実行する。各トランジス
タ560及び562は、オンされたとき、基準セル55
6及び558をセンス増幅器570に結合する。SBU
Sデコーダ550はその出力SHORTON572及び
NORMALON574によってトランジスタ560及
び562をオンする。プレコンディショニング中、SB
USデコーダ550はSHORTON572を5ボルト
にして、短絡行がアドレス指定されたとき、基準セル5
56をセンス増幅器570に結合する。消去検査の間に
も、SHORTON572は5ボルトに設定される。逆
に、正常な行のプレコンディション検査の間には、NO
RMALONは5ボルトに、SHORTONは0ボルト
にそれぞれ設定される。これにより、正常基準セル55
8はセンス増幅器570の基準入力端子に結合する。
【0124】次の表4は、プレコンディショニング中の
SBUSデコーダ550の動作を要約して示す。
【0125】
【0126】消去アルゴリズムの間及びプログラムアル
ゴリズムの間に希望の通りに実行するためには、SBU
Sデコーダ550及び552を表2,表3及び表4の記
述とはわずかに変形しなければならない。それらのアル
ゴリズム及びプレコンディショニング中の回路194の
動作を先に説明してあるので、そのような変形は自明の
はずである。
【0127】図25は、データラッチ/比較器回路
(「DLC」)190をブロック線図の形態で示す。D
LC190は、データビットごとに1つずつの8つのラ
ッチ/比較器回路700a〜700hと、DLC SB
USデコーダ702,704及び706と、ANDゲー
ト708と、マルチプレクサ710と、ラッチ712を
含む。マイクロプロセッサ999は、CEB48及びW
EB50を活動状態に保持しつつ、データ線データ
(7:0)46を介してフラッシュメモリ30に指令を
書込む。活動状態のCEB48と、活動状態のWEB5
0は各DLCラッチ/比較器回路700a〜700hの
中のTTL入力バッファ714a〜714hをイネーブ
ルして、データ線46のデータをCMOS信号DATA
IN(7:0)47に変換する。
【0128】DATAIN(7:0)47がプログラム
指令又は消去指令を表す場合、CSM60はデータラッ
チイネーブル信号DLE716を活動状態にする。DL
E716が活動状態になると、TTLバッファ714a
〜714hからのデータはラッチ718a〜718hに
クロッキングされる。プログラム検査中、ラッチ/比較
器回路700a〜700hは次のように動作する。消去
信号202は非活動状態であり、マルチプレクサ720
a〜720hのI/O出力をマルチプレクサの出力とし
て選択する。そこで、ラッチ718a〜718hに記憶
されているデータは比較器722a〜722hのLAT
入力端子に印加される。
【0129】比較器出力MATCH(7:0)232
は、プログラムデータの各ビットがセンスアンプ出力S
OUT(7:0)228と一致するか否かを指示する。
比較器722a〜722hごとに、2つの比較器入力S
OUT及びLATが一致する場合は、比較器の出力は論
理値1になる。比較器入力が一致しない場合には、出力
は論理値0になる。プログラム検査中、先に説明した比
較器722a〜722hの動作は活動状態のプログラム
検査信号PGVER724によって変更される。表5か
らわかるように、PGVER724が活動状態である場
合、セルが論理値0にあり且つビットが論理値0である
ことが望まれるときに、比較器722a〜722hは論
理値1を出力する。書込み状態機械32はプログラム動
作中にプログラムされたビットを消去できないので、こ
の状況においては、比較器722a〜722hは一致を
指示する。
【0130】
【0131】ANDゲート708によりMATCH
(7:0)232の論理積をとる。ANDゲート708
の出力であるWMATCH230は、SOUT(7:
0)228とDATAIN(7:0)47の各ビットが
一致するときは論理値1であり、SOUT(7:0)2
28とDATAIN(7:0)47とが一致しないとき
には論理値0である。ANDゲート708の出力は出力
マルチプレクサ710のI1入力端子に印加される。マ
ルチプレクサ710のI1入力は活動状態のCMPEN
信号726によりマルチプレクサ出力として選択され
る。プログラム検査中、CMPEN726は活動状態で
あり、ANDゲートの出力708をラッチ728を介し
て送り出し、WMATCH信号230の論理状態を制御
する。
【0132】プログラム制御装置240が検査遅延状態
370から出るとき、WMATCH230はラッチ72
8により記憶される。ラッチ728のQ出力はマルチプ
レクサ710のI0入力端子へ戻る。CMPEN726
が非活動状態になると、マルチプレクサ710のI0入
力が選択されて、ラッチ728を制御するようになる。
WMATCH230はリセット206によりリセットさ
れる。
【0133】他の検査動作の間のデータラッチ/比較器
回路700a〜700hの動作は、次に述べる例外を除
いて、先にプログラム検査について説明した動作に類似
している。第1に、消去検査中は、マルチプレクサ72
0a〜720hのI1入力はREFDAT730により
論理値1に設定されるが、プレコンディション及びポス
トコンディション検査の間には論理値0に設定される。
これにより、センスアップ出力SOUT(7:0)22
8と比較する対象である電圧基準を確定するのでる。第
2に、活動状態の消去208は比較器722a〜722
hへの出力としてマルチプレクサ720a〜720hの
I1入力を選択する。第3に、PGVER724は非活
動状態であるので、比較器722a〜722hは変更な
く動作できる。
【0134】DLC SBUSデコーダ730,724
及び726はデータラッチ/比較器回路700a〜70
0hの動作を制御するのを助ける。DLC SBUSデ
コーダ282,284及び286の動作は図8,図11
及び図13を参照することにより確定できる。たとえ
ば、図13は、検査状態338においてはDLC SB
USデコーダ706がCMPEN726をハイに設定す
ることを指示している。好ましい一実施例では、DLC
SBUSデコーダ720,704及び706をランダ
ム論理として実現する。
【0135】図26は、状態レジスタ188をブロック
線図の形態で示す。状態レジスタ188はクロック発生
器740と、3つの出力ラッチ742a〜742cと、
状態レジスタSBUSデコーダ744及び746と、ラ
ッチ748及び750と、ORゲート752及び754
と、インバータ756とを含む。状態レジスタ出力75
8,760及び762は出力イネーブルバー信号OEB
52に対して同期される。クロック発生器740は、O
EB52がトグルするたびに1組のクロックパルスのP
H′1/PH′2 764を発生することにより、それ
らの信号を同期させる。クロックパルスPH′1/P
H′2 764は出力ラッチ742a〜742cへのデ
ータのクロッキングを制御する。従って、出力ラッチ7
42a〜742cから有効データを読取るためにはOE
B52をトグルしなければならないことがわかるであろ
う。
【0136】状態レジスタSBUSデコーダ744はS
BUS(6:0)208を復号して、プログラム障害を
検出する。SBUSデコーダ744が障害を検出する
と、PRGFAIL745は論理値1に設定される。S
BUS(6:0)208は唯1つの状態についてのみプ
ログラム障害を指示するので、マイクロプロセッサ99
9が状態レジスタ188をリセットすることを選択する
まで、活動状態のPRGFAIL745はラッチ748
と、ORゲート750とを使用して記憶される。状態レ
ジスタ188は、STATRS766を活動状態にする
ことによりリセットされる。デバイス750及び754
は、周期カウンタ184にあるほぼ同様の一対のデバイ
スと同じように動作する。
【0137】状態レジスタSBUSデコーダ746はS
BUS(6:0)208を復号して、消去障害を検出す
る。SBUSデコーダ746が障害を検出すると、ER
SFAIL信号747はハイにセットされる。SBUS
(6:0)208は1つの状態周期についてのみ消去障
害を指示するので、マイクロプロセッサ999が状態レ
ジスタ188をリセットすることを選択するまで、ラッ
チ750及びORゲート754を使用して活動状態のE
RSFAIL信号747を記憶しておく。デバイス75
0及び754は周期カウンタ184にあるほぼ同様の一
対のデバイスと同じように動作する。
【0138】図13は、状態レジスタSBUSデコーダ
744及び746の動作を説明している。たとえば、図
13はERSFAIL747が障害状態348において
セットされることを示す。好ましい実施例では、状態レ
ジスタSBUSデコーダ744及び746を共にランダ
ム論理として実現する。状態レジスタリセット信号ST
ATRS766が活動状態ハイであるとき、ラッチ74
8及び750の活動出力はリセットされる。この状況
は、マイクロプロセッサ999からのCLEAR ST
ATUS REGISTER指令の結果として起こる。
RDY/BSY758が論理値0であるとき、書込み状
態機械32は使用中である。RDY/BSY758の論
理値1は、書込み状態機械32が動作を完了しており、
次の動作の準備が整っていること及びその他の状態出力
は有効であることを指示する。
【0139】WSM32がアレイ36を首尾よく消去又
はポストコンディションできない場合、ERASE_F
AIL762は論理値1に設定される。ERASE_F
AIL信号をセットするのはWSM32であり、クリア
するのはSTATUS REGISTER CLEAR
指令である。WSM32がバイトを首尾よくプログラム
できない場合、PRG_FAIL760は論理値1に設
定される。PRG_FAIL760は、消去指令が実行
されそこなうか又はハードウェアエラーが現れた場合に
も論理値1に設定される。PRG_FAIL760をセ
ットするのはSBUS信号208であり、クリアするの
はSTATUS REGISTER CLEAR指令で
ある。
【0140】以上、行冗長性を組込んだフラッシュメモ
リの消去を独立して制御する回路について説明した。消
去指令はシーケンサ回路を起動し、シーケンサ回路は消
去事象のタスクを実行する他の制御装置を制御する。こ
のような消去事象のネスティング制御によって、消去事
象の変更は容易になる。シーケンサ回路は、まず、消去
指令を受信してプレコンディション制御装置を起動す
る。そこで、プレコンディション制御装置は、短絡行の
中のメモリセルと、冗長行の中のセルとを含めてメモリ
アレイのプレコンディショニングを管理する。プレコン
ディション制御回路がタスクを完了すると、シーケンサ
回路は消去制御回路を起動する。そこで、消去制御回路
は消去を管理して、消去検査中に短絡行を冗長行と置換
える。回路は、消去制御装置の後で起動されるポストコ
ンディション制御装置をさらに含む。ポストコンディシ
ョン制御装置は、消去制御装置によって過剰消去された
セルを修理する。
【0141】以上の明細書の中では、本発明をその特定
の実施例を参照しながら説明した。しかしながら、特許
請求の範囲に記載する本発明のより広範囲の趣旨から逸
脱せずに本発明に対して様々な変形や変更を実施しうる
ことは明白であろう。従って、明細書及び図面は限定的
な意味ではなく、単なる例として考えられるべきであ
る。
【図面の簡単な説明】
【図1】フラッシュメモリのブロック線図。
【図2】フラッシュメモリ指令の表。
【図3】メモリアレイの一部の概略図。
【図4】書込み状態機械のブロック線図。
【図5】次状態制御装置の線図。
【図6】シーケンサアルゴリズムが実現するアルゴリズ
ムに関する状態図。
【図7】信号名のテーブル。
【図8】シーケンサの状態ごとのSBUS(6:5)値
の表。
【図9】プレコンディション制御装置が実現するアルゴ
リズムに関する状態図。
【図10】プレコンディション制御装置が実現するアル
ゴリズムに関する状態図。
【図11】プレコンディション制御装置が実現するアル
ゴリズムの状態ごとのSBUS(6:0)値及び論理信
号レベルの表。
【図12】消去制御装置が実現するアルゴリズムに関す
る状態図。
【図13】消去制御装置が実現するアルゴリズムの状態
ごとのSBUS(6:0)値及び論理信号レベルの表。
【図14】プログラム制御装置が実現するアルゴリズム
に関する状態図。
【図15】プログラム制御装置が実現するアルゴリズム
に関する状態図。
【図16】プログラム制御装置が実現するアルゴリズム
の状態ごとのSBUS(6:0)値及び論理信号レベル
の表。
【図17】発振器及び位相発生器のブロック線図。
【図18】発振器及び位相発生器に関するスタートアッ
プタイミング図。
【図19】周期カウンタのブロック線図。
【図20】事象カウンタのブロック線図。
【図21】アドレスカウンタのブロック線図。
【図22】CAM及びYデコーダの一部の線図。
【図23】基準セル選択回路のブロック線図。
【図24】一致変換/反転回路のブロック線図。
【図25】データラッチ/比較器のブロック線図。
【図26】状態レジスタの概略図。
【符号の説明】
30 フラッシュメモリ 32 書込み状態機械 34 次状態制御装置 35 基準セル選択回路 36 メモリアレイ 60 指令状態機械 74 Xデコーダ 76 Yデコーダ 78 センス増幅器 80 冗長行 82 連想記憶装置 180 発振器/位相発生器 182 事象カウンタ 184 周期カウンタ 186 アドレスカウンタ 188 状態レジスタ 190 データラッチ/比較器 192 一致変換/反転回路 194 プレコンディション基準セル選択回路 999 マイクロプロセッサ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ミッキー・リー・ファンドリッチ アメリカ合衆国 95667 カリフォルニア 州・プレイサーヴィル・パンニング ウエ イ・234 (72)発明者 ニール・ミールケ アメリカ合衆国 94022 カリフォルニア 州・ロス アルトス ヒルズ・ラ ローマ ドライブ・25026

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 不揮発性半導体メモリと同一の基板上に
    あり、不揮発性半導体メモリの消去を制御する回路にお
    いて、 a)消去指令に応答して第1の制御信号と、第2の制御
    信号とを発生するシーケンサ回路と; b)第1の制御信号によりイネーブルされ、不揮発性半
    導体アレイのプレコンディショニングを制御するプレコ
    ンディション制御装置と; c)第2の制御信号によりイネーブルされ、不揮発性半
    導体アレイの消去を制御する消去制御装置とを具備する
    回路。
  2. 【請求項2】 不揮発性半導体メモリと同一の基板上に
    あり、一対の互いに短絡する行を有する不揮発性半導体
    メモリの消去を制御する回路において、 a)一対の短絡行と置換えるための一対の冗長行と; b)消去指令に応答して第1の制御信号と、第2の制御
    信号とを発生するシーケンサ回路と; c)第1の制御信号によりイネーブルされ、対の短絡行
    と対の冗長行との置換えをディスエーブルすることによ
    り、短絡行を含む不揮発性半導体アレイのプレコンディ
    ショニングを制御するプレコンディション制御装置と; d)第2の制御信号によりイネーブルされ、不揮発性半
    導体アレイの消去を制御する消去制御装置とを具備する
    回路。
  3. 【請求項3】 不揮発性半導体メモリと同一の基板上に
    あり、2つの短絡行を有する不揮発性半導体メモリアレ
    イの消去及びプログラミングを制御する回路において、 a)2つの短絡行と置換えるための2つの冗長行と; b)プログラム指令によりイネーブルされ、不揮発性半
    導体メモリアレイのプログラミングを制御し、短絡行を
    冗長行と置換えるプログラム制御装置と; c)消去指令に応答して第1の制御信号と、第2の制御
    信号とを発生するシーケンサ回路と; d)第1の制御信号に応答し、2つの冗長行をディスエ
    ーブルすることにより、2つの短絡行を含む不揮発性半
    導体アレイのプレコンディショニングを制御するプレコ
    ンディション制御装置と; e)第2の制御信号に応答して、短絡行及び冗長行を含
    めて不揮発性半導体アレイの消去を制御する消去制御装
    置とを具備する回路。
JP11665993A 1992-04-21 1993-04-21 行冗長性を取入れた不揮発性半導体メモリを消去する回路 Pending JPH06318398A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/871,485 US5327383A (en) 1992-04-21 1992-04-21 Method and circuitry for erasing a nonvolatile semiconductor memory incorporating row redundancy
US871485 1992-04-21

Publications (1)

Publication Number Publication Date
JPH06318398A true JPH06318398A (ja) 1994-11-15

Family

ID=25357554

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11665993A Pending JPH06318398A (ja) 1992-04-21 1993-04-21 行冗長性を取入れた不揮発性半導体メモリを消去する回路

Country Status (3)

Country Link
US (1) US5327383A (ja)
JP (1) JPH06318398A (ja)
IT (1) IT1272355B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08249900A (ja) * 1995-03-10 1996-09-27 Nec Corp 電気的に書込み・消去可能な不揮発性半導体記憶装置
JP2011165310A (ja) * 2010-02-09 2011-08-25 Infineon Technologies Ag Nvmオーバーラッピング書き込み方法

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6222762B1 (en) * 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5657332A (en) * 1992-05-20 1997-08-12 Sandisk Corporation Soft errors handling in EEPROM devices
JP2856621B2 (ja) * 1993-02-24 1999-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 一括消去型不揮発性メモリおよびそれを用いる半導体ディスク装置
US5513136A (en) * 1993-09-27 1996-04-30 Intel Corporation Nonvolatile memory with blocks and circuitry for selectively protecting the blocks for memory operations
SG49632A1 (en) * 1993-10-26 1998-06-15 Intel Corp Programmable code store circuitry for a nonvolatile semiconductor memory device
US5438546A (en) * 1994-06-02 1995-08-01 Intel Corporation Programmable redundancy scheme suitable for single-bit state and multibit state nonvolatile memories
US5537357A (en) * 1994-06-27 1996-07-16 Intel Corporation Method for preconditioning a nonvolatile memory array
US5490109A (en) * 1994-06-28 1996-02-06 Intel Corporation Method and apparatus for preventing over-erasure of flash EEPROM memory devices
US5517138A (en) * 1994-09-30 1996-05-14 Intel Corporation Dual row selection using multiplexed tri-level decoder
US5491660A (en) * 1994-11-18 1996-02-13 Texas Instruments Incorporated On-chip operation control for memories
MY121210A (en) * 1995-02-24 2006-01-28 Intel Corp Nonvolatile memory with output mode configuration
US5890193A (en) * 1995-07-28 1999-03-30 Micron Technology, Inc. Architecture for state machine for controlling internal operations of flash memory
US6041389A (en) * 1995-11-16 2000-03-21 E Cirrus Logic, Inc. Memory architecture using content addressable memory, and systems and methods using the same
JP3976839B2 (ja) * 1996-07-09 2007-09-19 株式会社ルネサステクノロジ 不揮発性メモリシステムおよび不揮発性半導体メモリ
US6009016A (en) * 1996-07-09 1999-12-28 Hitachi, Ltd. Nonvolatile memory system semiconductor memory and writing method
GB9614551D0 (en) * 1996-07-11 1996-09-04 Memory Corp Plc Memory system
US5835413A (en) * 1996-12-20 1998-11-10 Intel Corporation Method for improved data retention in a nonvolatile writeable memory by sensing and reprogramming cell voltage levels
US5787039A (en) * 1997-03-06 1998-07-28 Macronix International Co., Ltd. Low current floating gate programming with bit-by-bit verification
US5909449A (en) * 1997-09-08 1999-06-01 Invox Technology Multibit-per-cell non-volatile memory with error detection and correction
JP3228225B2 (ja) * 1998-06-01 2001-11-12 日本電気株式会社 記憶装置の消去装置、記憶装置の消去方法及びそのプログラムを記憶した記憶媒体
US6381174B1 (en) 2001-03-12 2002-04-30 Micron Technology, Inc. Non-volatile memory device with redundant columns
US6469932B2 (en) * 2001-03-12 2002-10-22 Micron Technology, Inc. Memory with row redundancy
US6711056B2 (en) 2001-03-12 2004-03-23 Micron Technology, Inc. Memory with row redundancy
US6584017B2 (en) * 2001-04-05 2003-06-24 Saifun Semiconductors Ltd. Method for programming a reference cell
US7120068B2 (en) * 2002-07-29 2006-10-10 Micron Technology, Inc. Column/row redundancy architecture using latches programmed from a look up table
US6888731B2 (en) * 2002-11-29 2005-05-03 Mosaid Technologies Incorporated Method and apparatus for replacing defective rows in a semiconductor memory array
US6771541B1 (en) 2003-02-25 2004-08-03 Nexflash Technologies, Inc. Method and apparatus for providing row redundancy in nonvolatile semiconductor memory
US7012835B2 (en) * 2003-10-03 2006-03-14 Sandisk Corporation Flash memory data correction and scrub techniques
US7173852B2 (en) * 2003-10-03 2007-02-06 Sandisk Corporation Corrected data storage and handling methods
US7315916B2 (en) * 2004-12-16 2008-01-01 Sandisk Corporation Scratch pad block
US7395404B2 (en) * 2004-12-16 2008-07-01 Sandisk Corporation Cluster auto-alignment for storing addressable data packets in a non-volatile memory array
US7716538B2 (en) * 2006-09-27 2010-05-11 Sandisk Corporation Memory with cell population distribution assisted read margining
US7886204B2 (en) * 2006-09-27 2011-02-08 Sandisk Corporation Methods of cell population distribution assisted read margining
US7457167B2 (en) * 2006-10-26 2008-11-25 Atmel Corporation Method for preventing over-erasing of unused column redundant memory cells in a flash memory having single-transistor memory cells
US7477547B2 (en) * 2007-03-28 2009-01-13 Sandisk Corporation Flash memory refresh techniques triggered by controlled scrub data reads
US7573773B2 (en) * 2007-03-28 2009-08-11 Sandisk Corporation Flash memory with data refresh triggered by controlled scrub data reads
KR100898039B1 (ko) * 2007-05-21 2009-05-19 삼성전자주식회사 불휘발성 반도체 메모리 장치 및 그것의 프로그램 방법
US8687421B2 (en) 2011-11-21 2014-04-01 Sandisk Technologies Inc. Scrub techniques for use with dynamic read
US9146882B2 (en) * 2013-02-04 2015-09-29 International Business Machines Corporation Securing the contents of a memory device
US9230689B2 (en) 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US9552171B2 (en) 2014-10-29 2017-01-24 Sandisk Technologies Llc Read scrub with adaptive counter management
US9978456B2 (en) 2014-11-17 2018-05-22 Sandisk Technologies Llc Techniques for reducing read disturb in partially written blocks of non-volatile memory
US9349479B1 (en) 2014-11-18 2016-05-24 Sandisk Technologies Inc. Boundary word line operation in nonvolatile memory
US9449700B2 (en) 2015-02-13 2016-09-20 Sandisk Technologies Llc Boundary word line search and open block read methods with reduced read disturb
US9653154B2 (en) 2015-09-21 2017-05-16 Sandisk Technologies Llc Write abort detection for multi-state memories
FR3044818B1 (fr) * 2015-12-02 2018-03-30 Stmicroelectronics (Rousset) Sas Procede de gestion d'une ligne defectueuse du plan memoire d'une memoire non volatile et dispositif de memoire correspondant

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4943948A (en) * 1986-06-05 1990-07-24 Motorola, Inc. Program check for a non-volatile memory
US5222046A (en) * 1988-02-17 1993-06-22 Intel Corporation Processor controlled command port architecture for flash memory
US5053990A (en) * 1988-02-17 1991-10-01 Intel Corporation Program/erase selection for flash memory
KR900019027A (ko) * 1988-05-23 1990-12-22 미다 가쓰시게 불휘발성 반도체 기억장치
JP2698834B2 (ja) * 1988-11-22 1998-01-19 株式会社日立製作所 不揮発性記憶装置
US5031142A (en) * 1989-02-10 1991-07-09 Intel Corporation Reset circuit for redundant memory using CAM cells
US5077691A (en) * 1989-10-23 1991-12-31 Advanced Micro Devices, Inc. Flash EEPROM array with negative gate voltage erase operation
US5113373A (en) * 1990-08-06 1992-05-12 Advanced Micro Devices, Inc. Power control circuit
KR940006611B1 (ko) * 1990-08-20 1994-07-23 삼성전자 주식회사 전기적으로 소거 및 프로그램이 가능한 반도체 메모리장치의 자동 소거 최적화회로 및 방법
US5237535A (en) * 1991-10-09 1993-08-17 Intel Corporation Method of repairing overerased cells in a flash memory

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08249900A (ja) * 1995-03-10 1996-09-27 Nec Corp 電気的に書込み・消去可能な不揮発性半導体記憶装置
JP2011165310A (ja) * 2010-02-09 2011-08-25 Infineon Technologies Ag Nvmオーバーラッピング書き込み方法

Also Published As

Publication number Publication date
ITMI930784A1 (it) 1994-10-21
ITMI930784A0 (it) 1993-04-21
US5327383A (en) 1994-07-05
IT1272355B (it) 1997-06-23

Similar Documents

Publication Publication Date Title
JP3420795B2 (ja) 不揮発性半導体メモリの短絡行をプレコンディショニングする方法及び回路
JPH06318398A (ja) 行冗長性を取入れた不揮発性半導体メモリを消去する回路
US5355464A (en) Circuitry and method for suspending the automated erasure of a non-volatile semiconductor memory
US5414664A (en) Flash EPROM with block erase flags for over-erase protection
JP3654915B2 (ja) フラッシュメモリにおける過消去セルの修復方法
US5377145A (en) Circuitry and method for programming and erasing a non-volatile semiconductor memory
US6272586B1 (en) Memory system having programmable control parameters
US7038946B2 (en) Non-volatile semiconductor memory device
EP1041577B1 (en) Non-volatile semiconductor memory device and data erase controlling method for use therein
EP0700570B1 (en) Flash eprom with block erase flags for over-erase protection
US6028798A (en) Low voltage test mode operation enable scheme with hardware safeguard
US5369647A (en) Circuitry and method for testing a write state machine
US5546561A (en) Circuitry and method for selectively protecting the integrity of data stored within a range of addresses within a non-volatile semiconductor memory
JPH06180999A (ja) 同時読出し/書込み機能付きフローティングゲート非揮発型メモリ及びこれを備えたマイクロプロセッサ装置
JPH0210596A (ja) メモリの消去法およびプログラミング法
US5265059A (en) Circuitry and method for discharging a drain of a cell of a non-volatile semiconductor memory
US5729169A (en) Controllable one-shot circuit and method for controlling operation of memory circuit using same
US6469932B2 (en) Memory with row redundancy
US5581509A (en) Double-row address decoding and selection circuitry for an electrically erasable and programmable non-volatile memory device with redundancy, particularly for flash EEPROM devices
JP2540028B2 (ja) 集積プログラミング回路
US5412793A (en) Method for testing erase characteristics of a flash memory array
US7136307B2 (en) Write state machine architecture for flash memory internal instructions
KR19980032946A (ko) 부트 블럭 방식을 채용하는 불휘발성 메모리의 데이타 소거 메카니즘
US5537357A (en) Method for preconditioning a nonvolatile memory array
KR0138791B1 (ko) 프로세서로 제어되는 플레시 메모리용 지령포트 구조