JP5328732B2 - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP5328732B2
JP5328732B2 JP2010176993A JP2010176993A JP5328732B2 JP 5328732 B2 JP5328732 B2 JP 5328732B2 JP 2010176993 A JP2010176993 A JP 2010176993A JP 2010176993 A JP2010176993 A JP 2010176993A JP 5328732 B2 JP5328732 B2 JP 5328732B2
Authority
JP
Japan
Prior art keywords
memory
memory cell
threshold voltage
cells
voltage
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.)
Expired - Fee Related
Application number
JP2010176993A
Other languages
English (en)
Other versions
JP2012038383A (ja
Inventor
多実結 加藤
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2010176993A priority Critical patent/JP5328732B2/ja
Priority to US13/180,189 priority patent/US8477535B2/en
Publication of JP2012038383A publication Critical patent/JP2012038383A/ja
Application granted granted Critical
Publication of JP5328732B2 publication Critical patent/JP5328732B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells

Description

この発明は、半導体装置に関し、特に電気的にプログラム可能な不揮発性メモリを備えた半導体装置に関する。
フラッシュメモリなど、電気的にプログラム可能な不揮発性メモリのリテンション特性を向上させるために、2個のメモリセルを1組として相補データを記憶する方式がある。たとえば、特開2008−117510号公報は、第1記憶素子と第2記憶素子とを1ビットのツインセルとして複数個備えたメモリアレイを含む半導体装置について開示する。ツインセルの記憶状態を判定する読出回路は、選択されたツインセルの第1記憶素子と第2記憶素子とから出力される相補データを差動増幅する。
特開2008−117510号公報
フラッシュメモリなどの不揮発性メモリでは、データが書込まれた領域に別のデータを書込むことは禁止されているので、データ書込前にはこれからデータを書込む領域のブランクチェックを必ず行なう必要がある。ところが、従来のブランクチェックでは、各メモリセルの絶対的な閾値電圧に基づいて消去状態か否かを判定するので、個々のメモリセルの特性のばらつきを考慮してベリファイレベルを設定する必要があった。このため、相補データ方式を用いているにも拘らず、ブランクチェックで誤判定を起こさないようにするために、リテンションの保証期間を制限せざるを得なかった。今後、半導体プロセスの微細化の進展に伴ってリテンションの保証期間が短くなることが予測されるので、リテンション期間の向上は重要な課題である。
この発明の目的は、相補データを記憶する方式で、従来よりも正確なブランクチェックを行なうことができる不揮発性メモリを備えた半導体装置を提供することである。
この発明の実施の一形態による半導体装置は、メモリアレイと、選択回路と、第1〜第3の判定部とを備える。メモリアレイには、閾値電圧が可変のトランジスタを有するメモリセルが複数配列される。メモリアレイに含まれる複数のメモリセルは、各々が2個のメモリセルを有する複数のツインセルにグループ化される。複数のツインセルの各々は、一方のメモリセルの閾値電圧が他方のメモリセルの閾値電圧よりも高い状態に設定されることによって相補データを記憶する。選択回路は、複数のツインセルの一部である複数の選択ツインセルを選択する。第1の判定部は、複数の選択ツインセルの各々について、一方のメモリセルの閾値電圧が複数の選択ツインセルに対して共通に設定された基準値より高く、他方のメモリセルの閾値電圧が基準値より低いという第1の条件が成立するか否かを判定する。第2の判定部は、複数の選択ツインセルの全てが第1の条件を満たすという第2の条件が成立するか否かを判定する。第3の判定部は、第2の判定部の判定結果に基づいて、複数の選択ツインセルの各々が相補データを記憶していないブランク状態であるか否かを判定する。
この実施の形態の半導体装置によれば、ブランクチェックの判定のために第1〜第3の判定部を備えることによって従来よりも正確にブランクチェックを行なうことができる。
この発明の実施の形態1に従う半導体装置の一例であるシングルチップのマイクロコンピュータ1の構成を概略的に示すブロック図である。 フラッシュメモリ用のメモリセルの代表的な構成を模式的に示す図である。 図1のフラッシュメモリ7の全体構成を概略的に示すブロック図である。 図3のメモリブロック41、サブビット線選択部42、およびセンスアンプ部44の内部構成を模式的に示す図である。 図3のフラッシュメモリ7において、ベリファイ動作およびブランクチェックを行なうための回路部分50を取出して示したものである。 図5のベリファイ用センスアンプ部24の構成を概略的に示す回路図である。 図3、図5に示す書込状態判定回路56の具体的な構成例を示す回路図である。 図3の制御論理部20がブランクチェック命令を受けたときに実行する手順を示すフローチャートである。 半導体チップ内のメモリセルの閾値電圧の分布を模式的に示すグラフである。 図9において、ベリファイレベルLV1〜LV3に対する書込状態判定回路56の判定結果と最終的なベリファイチェックの結果とを説明するための図である。 書込状態判定回路56を用いずに、データ消去時のベリファイ動作と同様の手順によってブランクチェックを行なった場合の判定結果を説明するための図である。 この発明の実施の形態2に従う半導体装置によって実行されるメモリアレイのブランクチェックの手順を示すフローチャートである。 この発明の実施の形態3に従う半導体装置に実装されるベリファイ動作用およびブランクチェック用の回路50Aの構成を示すブロック図である。 実施の形態3に従う半導体装置によって実行されるメモリアレイのブランクチェックの手順を示すフローチャートである。 この発明の実施の形態4に従う半導体装置によって実行されるメモリアレイのブランクチェックの手順を示すフローチャートである。
以下、この発明の実施の形態について図面を参照して詳しく説明する。なお、同一または相当する部分には同一の参照符号を付して、その説明を繰返さない。
<実施の形態1>
[マイクロコンピュータ]
図1は、この発明の実施の形態1に従う半導体装置の一例であるシングルチップのマイクロコンピュータ1の構成を概略的に示すブロック図である。図1のマイクロコンピュータ1は、公知の半導体集積回路製造技術を用いて、たとえば単結晶シリコンのような1個の半導体基板(チップ)に形成される。
マイクロコンピュータ1は、内部バス2に接続された回路モジュールとして、中央処理装置(CPU:Central Processing Unit)3と、RAM(Random Access Memory)4と、バスコントローラ5と、クロック生成回路6と、電気的にプログラム可能な不揮発性半導体記憶装置の一例としてのフラッシュメモリ7と、電源回路8と、入出力ポート(I/O)9と、タイマカウンタなどのその他の周辺回路10とを含む。
内部バス2は、アドレスバス、データバスおよびコントロールバスを含む。CPU3は、プログラムに従ってマイクロコンピュータ1の内部を制御する。RAM4は、CPU3のワーク領域などに利用される。バスコントローラ5は、アドレスバスおよびデータバスを介したCPU3とその他のデバイスとの間の通信を制御する。クロック生成回路6は、動作基準クロック信号やその他内部クロック信号を生成する。フラッシュメモリ7は、CPU3の動作プログラムもしくはデータを格納する。電源回路8は、マイクロコンピュータ1内で使用される電源電圧を生成する。
マイクロコンピュータ1がシステムに実装された状態ではCPU3がフラッシュメモリ7に対する消去および書込の命令を発行する。デバイステストまたは製造段階では外部の書込装置(図示せず)が入出力ポート9を介して直接、フラッシュメモリ7に対する消去および書込制御を行なうことができる。
[不揮発性メモリセルの構成]
図2は、フラッシュメモリ用のメモリセルの代表的な構成を模式的に示す図である。図2(A)は、スプリットゲート(split gate)型のメモリセルを示し、図2(B)は、スタックト・ゲート(stacked gate)型のメモリセルを示す。この実施の形態のフラッシュメモリ7では、図2(A)に示すスプリットゲート型のメモリセルが用いられる。
図2(A)に示すメモリセルは、ビット線BLに接続された第1の不純物領域と、ソース線SLに接続された第2の不純物領域と、第1および第2の不純物領域間のチャネル領域と、コントロールゲートCGと、メモリゲートMGと、電荷蓄積部としての窒化シリコン層SiNとを含む。コントロールゲートCGおよびメモリゲートMGは、チャネル領域上にゲート絶縁膜を介して形成され、ワード線WLおよびメモリゲート線MGLにそれぞれ接続される。窒化シリコン層SiNはメモリゲートMGとチャネル領域との間のゲート絶縁膜中に形成され、多くのトラップ準位を有する。図2(A)のように窒化シリコン層を有するタイプをMONOS(Metal Oxide Nitride Oxide Silicon)型と称する。なお、窒化シリコン層に代えて多結晶シリコンによって形成されたフローティングゲートを電荷蓄積部として用いることによってスプリットゲート型のメモリセルを構成することもできる。
図2(A)の構造のメモリセルは、アクセストランジスタATRとメモリトランジスタMTRとが直列接続された構造と考えることができる。アクセストランジスタATRの閾値電圧は一定(Nチャネルの場合、正の閾値電圧)である。一方、メモリトランジスタMTRの閾値電圧は、窒化シリコン層SiNにトラップされた電荷量に応じて変化する。チェネル領域がN(negative)チャネルの場合には、窒化シリコン層SiN中に電子が注入されるとメモリトランジスタMTRの閾値電圧が上昇し、窒化シリコン層SiN中から電子が引き出されると(もしくは、正孔が注入されると)メモリトランジスタMTRの閾値電圧が低下する。閾値電圧が相対的に低い状態(通常、負の閾値電圧)がセルデータ「1」(消去状態)に対応付けられ、閾値電圧が相対的に高い状態(通常、正の閾値電圧)がセルデータ「0」(書込状態、プログラム状態)に対応付けられる。
メモリトランジスタMTRの閾値電圧を上昇させるには、たとえば、ビット線BL=0V、コントロールゲートCG=1.5V、メモリゲートMG=10V、ソース線SL=6V、ウェル領域WELL(半導体基板)=0Vに設定される。これによって、コントロールゲートCGとメモリゲートMGとの境界付近のチャネル領域に生成されたホットエレクトロンが窒化シリコン層SiN中に注入される、いわゆるソースサイド注入(SSI:Source Side Injection)が生じる。所望の閾値電圧にするために、メモリゲートMGおよびソース線SLには、上記の設定電圧のパルス電圧(以下、書込パルスと称する)が複数回印加される。
メモリトランジスタMTRの閾値電圧を低下させるには、たとえば、ビット線BL=Hi−Z(高インピーダンス状態)、コントロールゲートCG=1.5V、メモリゲートMG=−10V、ソース線SL=6V、ウェル領域WELL(半導体基板)=0Vに設定される。これによって、チャネル領域とソース線SLに接続される第2の不純物領域との間が逆バイアス状態となり、バンド間トンネリング(BTBT:Band-To-Band Tunneling)によってホットホールが窒化シリコン層SiN中に注入される。所望の閾値電圧にするために、メモリゲートMGおよびソース線SLには、上記の設定電圧のパルス電圧(以下、消去パルスと称する)が複数回印加される。
データ読出時には、たとえば、ビット線BL=1.5V、コントロールゲートCG=1.5V、メモリゲートMG=0V、ソース線SL=0V、ウェル領域WELL(半導体基板)=0Vに設定される。コントロールゲートCGが1.5Vに設定されることによってアクセストランジスタATRは導通し、メモリトランジスタMTRはセルデータ「1」のの場合に導通し、セルデータ「0」の場合に非導通となる。
メモリトランジスタMTRの閾値電圧は、長期間放置すると徐々に変化するため読出エラーが生じる場合がある。後述するように、実施の形態1のフラッシュメモリ7では、2個のメモリセルごとにツインセルが構成され、各ツインセルが相補データを記憶することによってリテンション特性を向上させている。
フラッシュメモリ7に使用されるメモリセルの構造は、この実施の形態の場合とは異なるが、図2(B)で示されるスタックト・ゲート型であってもよい。図2(B)のメモリセルは、ビット線BLに接続された第1の不純物領域と、ソース線に接続された第2の不純物領域と、第1および第2の不純物領域間のチャネル領域と、チャネル領域に絶縁層を介して積層されたフローティングゲートFGと、フローティングゲートFGに絶縁層を介して積層されたコントロールゲートCG0とを含む。Nチャネルの場合は、電荷蓄積層としてのフローティングゲートFGに電子が注入されることによってトランジスタMTRの閾値電圧が上昇し、フローティングゲートFGから電子が引き抜かれると閾値電圧が低下する。フローティングゲートFGに代えて窒化シリコン層SiNを電荷蓄積層として用いることもできる。スタックト・ゲート型のメモリセルは、スプリットゲート型のメモリセルに設けられたアクセストランジスタATRを含まない構成と考えることができる。
[フラッシュメモリの全体構成]
図3は、図1のフラッシュメモリ7の全体構成を概略的に示すブロック図である。
図3を参照して、フラッシュメモリ7は、メモリマット40と、アドレスバッファ12と、Xデコーダ14と、Yデコーダ16と、CPUリード用Yデコーダ15と、Yゲート18と、制御論理部20と、ライトドライバ22と、I/Oバッファ26と、内部電圧発生回路30とを含む。Xデコーダ14、Yデコーダ16、およびCPUリード用Yデコーダ15によって選択回路13が構成される。
メモリマット40は、複数のメモリブロック(MB)41と、複数のサブビット線選択部42(サブビット線(SBL)選択トランジスタ)と、複数のCPUリード用のYゲート43と、複数のCPUリード用センスアンプ部44とを含む。センスアンプ部44は、2個のメモリブロック41ごとに1個ずつ設けられ、対応する2個のメモリブロック41に挟まれた領域に配置される。センスアンプ部44と対応のメモリブロック41との間には、サブビット線選択部42およびCPUリード用Yゲート43が設けられる。
図4は、図3のメモリブロック41、サブビット線選択部42、およびセンスアンプ部44の内部構成を模式的に示す図である。
図3、図4を参照して、各メモリブロック41には、複数のメモリセルが行列状に配列される(図4に示すように行方向をXとし、列方向をYとする。)。ビット線BLは、メインビット線WMBLおよびサブビット線SBLに階層化されている。メモリブロック41の各行に対応してワード線WL、メモリゲート線MGL、およびソース線SLが設けられ、メモリブロック41の各列に対応してサブビット線SBLが設けられる。サブビット線SBLは、サブビット線選択部42に設けられたサブビット線選択トランジスタ45を介して、列方向Yに延在する共通のメインビット線WMBLに接続される。サブビット線選択トランジスタ45のゲートは、信号線46を介してXデコーダ14に接続される。Xデコーダ14は、書込、消去、およびブランクチェック時にサブビット線選択トランジスタ45を活性化する。
各メモリブロック41に含まれる複数のメモリセルは、2個のメモリセルMC1,MC2からなるツインセルTMCにグループ化される。各ツインセルを構成する第1のメモリセルMC1をポジ(posi)側メモリセルと称し、第2のメモリセルMC2をネガ(nega)側メモリセルと称する。各ツインセルは相補データを記憶する。ツインセルデータが「1」の場合、ポジ側メモリセルMC1がセルデータ「1」(Nチャネルの場合、低閾値電圧状態)になり、ネガ側メモリセルMC2がセルデータ「0」(高閾値電圧状態)になる。ツインセルデータが「0」の場合、ポジ側メモリセルMC1がセルデータ「0」(Nチャネルの場合、高閾値電圧状態)になり、ネガ側メモリセルMC2がセルデータ「1」(低閾値電圧状態)になる。ツインセルが相補データを記憶していないブランク状態の場合、ポジおよびネガのメモリセルMC1,MC2のセルデータは「1」(Nチャネルの場合、低閾値電圧状態)になる。各ツインセルを構成するメモリセルMC1,MC2は、通常、同一行に配置されて同一のワード線WLおよび同一のメモリゲート線MGLに接続される。
ツインセルへのデータ書込時には、格納する相補データに応じて、ポジ側およびネガ側のいずれか一方メモリセルにのみ書込電流が流れるようにする。たとえば、ツインセルデータ「0」を格納する場合、ポジ側メモリセルのビット線を0V(コントロールゲートCGの設定電圧である1.5Vより低い値)に設定し、ネガ側メモリセルのビット線を1.5V(コントロールゲートCGの設定電圧である1.5Vに等しい値)に設定する。メモリゲート電圧およびソース線電圧はポジ側およびネガ側とも等しい。この結果、ポジ側メモリセルのセルデータが「0」(Nチャネルの場合、高閾値状態)になり、ネガ側メモリセルのセルデータが「1」(低閾値電圧状態)になる。書込パルスの印加後にベリファイ動作を行なう。ベリファイ動作では、ベリファイ用のセンスアンプを用いて、書込パルスを印加したほうのメモリセルの閾値電圧が所定の値以上になっているかどうか確認する。
ツインセルのデータ消去は、相補データ方式と異なる通常の場合と同じ手順である。消去対象の複数のメモリセルに対して消去パルスを所定回数印加する。消去パルスの印加後にベリファイ動作を行なう。ベリファイ動作では、ベリファイ用のセンスアンプを用いて、消去対象のメモリセルの閾値電圧が所定の値まで低下しているかどうかを確認する。
CPUリード用センスアンプ部44は、Xデコーダ14およびYデコーダ16によって選択されたツインセル(選択ツインセルと称する)の記憶データを読み出す。CPUリード用センスアンプ部44は、複数のセンスアンプSA(図4では1個のセンスアンプSAが代表で図示されている)で構成される。各センスアンプSAの差動入力端子は、CPUリード用Yゲート43を介して選択ツインセルを構成するポジ側およびネガ側のメモリセルMC1,MC2と接続される。CPUリード用Yゲート43は、CPUリード用Yデコーダ15の選択信号に従い、複数のサブビット線SBLのうち選択ツインセルに対応する2本のサブビット線SBLとセンスアンプSAの差動入力端子とを接続する。センスアンプSAの出力端子は読出用のメインビット線RMBLを介してI/Oバッファ26と接続される。各センスアンプSAは、ペアとなるメモリセルMC1,MC2のコントロールゲートCGおよびメモリゲートMGに同一の電圧を印加したとき(たとえば、CG=1.5V,MG=0V)、メモリセルMC1,MC2に流れる電流の差を増幅する。センスアンプSAは、高速センスアンプとも呼ばれ、高速読出動作用に最適化されている。センスアンプSAは、ツインセルを構成するメモリセルMC1,MC2の相対的な電流差を検知するので、時間経過によって各メモリセルの閾値電圧が変化しても正確にデータを読み出すことができる。
アドレスバッファ12は、メモリセルのアクセス時(データ書込時、データ消去時、データ読出時、およびベリファイ動作時)に外部のCPU3などからアドレス信号ADを受けて内部アドレスを生成する。Xデコーダ14は、内部アドレスに従ってワード線WL、メモリゲート線MGL、およびソース線SLに所定の電圧を与え、サブビット線選択トランジスタ45を活性化する。Yデコーダ16は、内部アドレスに従って列選択信号を生成し、生成した列選択信号によってYゲート18を制御する。これによって、メモリマット40のうちでアドレス信号ADによってアドレス指定されたメモリセルが選択される。
Xデコーダ14およびYデコーダ16は、ブランクチェック時には、制御論理部20からの制御信号φX,φYに従って、ワード線WL、メモリゲート線MGL、およびソース線SLに所定の電圧を与え、サブビット線選択トランジスタ45を活性化し、列選択信号によってYゲート18を制御する。これによって、メモリマット40のブランクチェック対象の複数のメモリセルが選択される。
Yゲート18は、メインビット線WMBLと接続される。Yゲート18は、データ書込時には、ライトドライバ22からのセル書込データDmに応じて、選択列のメインビット線WMBLをコントロールゲート電圧よりも低い電圧(たとえば、0V)またはコントロールゲート電圧に等しい電圧(たとえば、1.5V)に設定する。セルデータ「0」の場合が0Vに対応し、セルデータ「1」の場合が1.5Vに対応する。Yゲート18は、データ消去時には、Yデコーダ16からの列選択信号に従って選択列のメインビット線WMBLを高インピーダンス状態に設定する。Yゲート18は、ベリファイ動作時およびブランクチェック時には、Yデコーダ16からの列選択信号に従って、メインビット線WMBLの信号Qmを後述するベリファイ用センスアンプ部24に出力する。
制御論理部20は、たとえば、シーケンスコントローラによって構成され、CPU3などからの書込命令、読出命令、消去命令、およびブランクチェック命令などの各コマンドCMDを受け、各コマンドCMDを実行するのに必要な内部制御信号を出力する。
ライトドライバ22は、制御論理部20からの内部書込データWDIに従って、メモリセルに対するセル書込データDmを生成する。ライトドライバ22からのセル書込データDmがYゲート18に出力される。
I/Oバッファ26は、データ読出時、CPUリード用のセンスアンプ部44から出力された内部読出データQI2に従って読出データDQを生成し、図1のCPU3などに出力する。I/Oバッファ26は、データ書込時、CPU32から受けた書込データDQに従って、内部書込データDIを生成して制御論理部20へ出力する。I/Oバッファ26は、ベリファイ時にベリファイ用センスアンプ部24から出力された内部読出データQI1に従って読出データDQを生成し、図1のCPU3などに出力する。
内部電圧発生回路30は、制御論理部20から与えられた制御信号CTLに従って、図1の電源回路8から供給される電源電圧VDDおよび接地電圧に基づいて内部電圧を生成する。内部電圧は、メインビット線WMBLに伝達されるビット線電圧Vbl、ワード線WLに伝達されるコントロールゲート電圧Vcg、メモリゲート線MGLに伝達されるメモリゲート電圧Vmg、ソース線SLに伝達されるソース線電圧Vsl、ベリファイ用センスアンプ部24に伝達される参照電圧Vref1,Vref2、およびプリチャージ電圧Vpreを含む。
フラッシュメモリ7は、さらに、ベリファイ用のセンスアンプ部24と、期待値格納レジスタ52と、期待値比較回路54と、書込状態判定回路56とを含む。これらの回路50は、ベリファイ動作時およびブランクチェック時に用いられる。ベリファイ動作とは、データ書込時およびデータ消去時にデータ書込状態およびデータ消去状態の検証を行なうことをいう。ブランクチェックとは、データ書込前にメモリアレイが消去状態であるかを確認することをいう。
[従来のブランクチェックの問題点]
相補データを書込む場合に限らず一般のフラッシュメモリでは、データが書込まれた領域に別のデータを書込むことは禁止されている。この理由は、書込み動作時には、メモリセルの閾値電圧を書き込む方向(Nチャネルの場合、上昇させる方向)にしか変化させることができないためである。たとえば、「AAh」(hは16進数を表わす)のセルデータが書き込まれた領域に「55h」のセルデータを書込んだ場合、セルデータは「00h」となり「55h」とはならない。このような不都合が生じないようにするため、データ書込前にはこれからデータを書込む領域のブランクチェックを必ず行なう。従来のブランクチェックは、消去後のベリファイの場合と同様に、ベリファイセンスアンプを用いて各メモリセルの閾値電圧が所定の値以下であるか否かを判定していた。
特に相補データを用いる場合には、CPUリード用のセンスアンプ部44を用いてブランクチェックを行なうことができない点に留意する必要がある。CPUリード用のセンスアンプ部44は、ポジ側メモリセルとネガ側メモリセルの閾値電圧の相違による相対的な電流差を検出する。このため、センスアンプ部44の検出結果が、消去状態のメモリセルの閾値電圧のランダムな差に起因するものなのか、相補データの書込によるものなのかを区別することができない。したがって、相補データを読み出す場合にはポジ側メモリセルとネガ側メモリセルとの相対的な閾値電圧の差を検出すれば十分なのに対して、ブランクチェックの場合には各メモリセルの絶対的な閾値電圧に基づいて消去状態か否かの判定を行なう必要がある。
ここで問題となるのは、書込後および消去後のメモリセルを長期間放置した場合、メモリセルの閾値電圧がシフトする点である。閾値電圧がシフトする理由は、メモリセルの閾値電圧には、窒化シリコン層に電荷が保持されていない状態(以下、初期状態という)の閾値電圧に近付こうとする性質があるためである。初期状態の閾値電圧はプロセスのばらつきに依存し、書込直後および消去直後からの閾値電圧の変化量は温度やメモリセルへの印加電圧の大きさなどに依存する。閾値電圧がある程度シフトしたとしても、相補データを用いたデータ記憶を用いることによってセンスアンプでのデータ読出は可能である。ところが、ブランクチェックでは各メモリセルの絶対的な閾値電圧に基づいて消去状態か否かを判定する必要があるため、閾値電圧がシフトすると誤判定となる可能性がある。すなわち、従来、相補データ方式を用いているにも拘らず、ブランクチェックで誤判定を起こさないようにするために、リテンションの保証期間を制限せざるを得なかった。
この実施の形態のフラッシュメモリ7では、ブランクチェック用の専用回路として書込状態判定回路56が設けられている。この回路を用いることによって、従来のブランクチェックの方法ではブランクチェックで誤判定を起こす場合でも正確な判定を行なえるようになり、リテンションの保証期間を従来よりも延ばすことができる。以下、具体的に説明する。
[ベリファイ動作およびブランクチェックの詳細]
図5は、図3のフラッシュメモリ7において、ベリファイ動作およびブランクチェックを行なうための回路部分50を取出して示したものである。図5には、メモリマット40、Yゲート18、および内部電圧発生回路30も併せて示されている。図3、図5を参照して、ベリファイ用のセンスアンプ部24は、コントロールゲートCGおよびメモリゲートMGに所定の電圧を印加したとき、メモリセルを流れる読出電流と所定の参照電流とを比較し、比較結果OUT1を出力する。
図6は、図5のベリファイ用センスアンプ部24の構成を概略的に示す回路図である。図6には、Yゲート18と、Yゲート18を介して接続されるメモリセルMCの構成も併せて示される。図6を参照して、ベリファイ用センスアンプ部24は、複数(この実施の形態の場合は128個)のセンスアンプVSAと、プリチャージ回路66とを含む。
各センスアンプVSAは、電源電圧VDDを与える電源ノードと接続ノード64との間に設けられた電流源用のPMOS(Positive-channel Metal Oxide Semiconductor)トランジスタ62と、接続ノード64の電圧と参照電圧Vref2とを比較する比較回路60とを含む。PMOSトランジスタ62のゲートには参照電圧Vref1が印加される。参照電圧Vref1,Vref2は、図3、図5に示す内部電圧発生回路30から与えられる。比較回路60は、接続ノード64の電圧が参照電圧Vref2を超えているとき、ロー(L)レベル(データ「0」)の信号を出力する。
ベリファイ対象のメモリセルMCのビット線BL(WMBLおよびSBL)は、Yゲート18に設けられた列選択トランジスタ19を介して接続ノード64に接続される。メモリセルMCのソース線は接地電圧を与える電源ノードVSSに接続される。プリチャージ回路66は、図3の制御論理部20から出力された制御信号PCGが活性化されたとき、内部電圧発生回路30で生成されたプリチャージ電圧Vpreを接続ノード64に出力する。実施の形態1の場合、プリチャージ電圧Vpreは参照電圧Vref2よりも高い値に設定される。
接続ノード64の電圧は、PMOSトランジスタ62を流れる参照電流Irefと、メモリセルMCを流れる読出電流Icellとの大小関係によって決まる。たとえば、メモリセルMCに格納されるセルデータが「1」(低閾値電圧状態)のとき、読出電流Icellが参照電流Irefよりも大きくなるため、接続ノード64の電圧が参照電圧Vref2よりも小さくなる。この結果、比較回路60の出力がHレベル(データ「1」)となる。メモリセルMCに格納されるセルデータが「0」(高閾値電圧状態)のとき、読出電流Icellが参照電流Irefよりも小さくなるため(ほとんど0)、接続ノード64の電圧が参照電圧Vref2よりも大きくなる。この結果、比較回路60の出力がLレベル(データ「0」)となる。
ベリファイ用センスアンプVSAの出力結果は、参照電圧Vref1,Vref2およびゲート電圧Vcg,Vmgに依存するが、この値は全てのセンスアンプVSAで共通の値となっている。すなわち、複数のメモリセルについてベリファイを行なう場合、これらのメモリセルの閾値電圧と比較される基準値(ベリファイレベルとも称する)は共通の値に設定される。
再び、図3、図5を参照して、期待値格納レジスタ52および期待値比較回路54は、データ書込直後およびデータ消去直後のベリファイに利用される。期待値格納レジスタ52は、データ書込時に書込データDIを期待値として格納し、データ消去時に消去対象の各メモリセルに対してデータ「1」を期待値として格納する。期待値比較回路54は、データ書込後およびデータ消去後のベリファイ動作時にベリファイ用センスアンプ部24の出力OUT1と期待値格納レジスタ52に格納された期待値とを比較し、比較結果OUT3を制御論理部20へ出力する。制御論理部20は、比較結果OUT3を受けて、ベリファイ用センスアンプ部24の出力OUT1が期待値に一致するときには、書込および消去終了信号PEENNDを外部のCPU3などに出力する。制御論理部20は、ベリファイ用センスアンプ部24の出力OUT1が書込データDIに一致しないときには、Xデコーダ14およびYデコーダ16で指定されたメモリセルに対して追加の書込パルスまたは消去パルスを印加するように制御する。
書込状態判定回路56は、ブランクチェック用の専用回路である。書込状態判定回路56は、制御論理部20によって指定された複数のツインセル(選択ツインセルと称する)に対するベリファイ用センスアンプ部24による判定結果OUT1を受ける。書込状態判定回路56は、この判定結果OUT1に基づいて、複数の選択ツインセルがブランク状態であるか否かを判定し、判定結果OUT2を制御論理部20に出力する。
図7は、図3、図5に示す書込状態判定回路56の具体的な構成例を示す回路図である。書込状態判定回路56は、1個ではなく複数のツインセルを単位としてブランクチェックを行なう点に特徴がある。図7の場合には、128個のメモリセル(64組の選択ツインセル)に対してブランクチェックを行なう回路の構成例が示される。実施の形態1のフラッシュメモリの場合には、ブランクチェック対象の64組の選択ツインセルは、同時にデータが書込まれる書込単位となっている。図7において、D0(posi),D0(nega)〜D63(posi),D63(nega)は、64組の選択ツインセルのポジ側およびネガ側のメモリセルに対するベリファイ用センスアンプ(図6の参照符号VSA)の出力データを示す。
書込状態判定回路56は、64組の選択ツインセルにそれぞれ対応して設けられた排他的論理和回路LG0〜LG63(第1の判定部70)と、NAND回路72(第2の判定部)とを含む。各排他的論理和回路は、対応のツインセルのポジ側のメモリセルに対するベリファイ用センスアンプの出力データとネガ側のメモリセルに対するベリファイ用センスアンプの出力データとの排他的論理和を求める。NAND回路72は、排他的論理和回路LG0〜LG63の出力の論理積を反転して出力する。64組の全てのツインセルについてポジ側およびネガ側のいずれか一方のメモリセルのベリファイ結果が「1」(低閾値電圧状態)であり、他方のメモリセルのベリファイ結果が「0」(高閾値電圧状態)の場合に、NAND回路72の出力OUT2は「0」(ブランク状態でない)になる。少なくとも1つのツインセルについてポジ側およびネガ側の両方のメモリセルのベリファイ結果が「1」または「0」のとき、NAND回路72の出力OUT2は「1」(ブランク状態)になる。
次に、メモリセルの書込状態と書込状態判定回路56の判定結果との関係を説明する。以下の説明では各メモリセルはNチャネルであるとする。
(i)ブランクチェック対象の64組の選択ツインセルが消去状態の場合
この場合、いずれのツインセルについてもポジ側およびネガ側のメモリセルは低閾値電圧状態であるので、書込状態判定回路56の出力OUT2は基本的に「1」となり、ブランク状態であると判定される。データ消去後に長期間放置したことによって各メモリセルの閾値電圧がシフトした場合、一部のツインセルに対応する排他的論理和回路の出力が「1」となる可能性はあるが、ブラックチェック対象のツインセル数(この実施の形態の場合には書込単位に等しい)が適当な大きさであれば、書込状態判定回路56の出力OUT2が「0」(書込状態)になる確率は極めて低い。書込状態判定回路56が消去状態のメモリアレイを書込状態であると最も誤判定しやすいケースは、半導体チップ内のメモリセルの閾値電圧の分布の平均値にベリファイレベルが等しい場合である。しかし、このケースにおいても、ブランクチェック対象のツインセル数が64の場合は、書込状態と誤判定する確率は0.5の64乗であり、ほぼ0になる。
(ii)ブランクチェック対象の選択ツインセルが書込状態の場合
この場合、いずれのツインセルについてもポジ側およびネガ側のメモリセルは一方が高閾値電圧状態であり、他方が低閾値電圧状態であるので、書込状態判定回路56の出力OUT2は基本的に「0」となり、書込状態であると判定される。データ書込後に長期間放置したことによって各メモリセルの閾値電圧がシフトした場合、一部のツインセルに対応する排他的論理和回路の出力が「0」となる可能性はある。この結果、書込状態判定回路56の出力OUT2が書込状態であるにも拘らず「1」となって、書込状態判定回路56回路は書込状態でないと判定することになる。そこで、実施の形態1のフラッシュメモリでは、センスアンプVSAのベリファイレベルを所定の範囲内で変化させ、少なくとも1つのベリファイレベルに対して、書込状態判定回路56の出力OUT2が「0」となった場合に、書込状態であると判定する。
(iii)ブランクチェック対象の選択ツインセルの閾値電圧が、ポジ側およびネガ側共に高い状態である場合、各排他論理和回路の出力は「0」となり、書込状態判定回路56の出力OUT2は「1」となり、書込状態でないと判定される。したがって、この場合には、追加書込みされる可能性がある。しかし、ポジ側およびネガ側のメモリセルの閾値電圧が共に高い状態は、フラッシュメモリ書き換え中に強制的に電源が遮断されるなど、不正に制御された場合にしか発生しないので、その確率は低い。
以上の点を踏まえて、図3の制御論理部20は、図1のCPU3などからブランクチェック命令を受けたとき、以下の手順に従ってブランクチェックを行なう。
図8は、図3の制御論理部20(第3の判定部)がブランクチェック命令を受けたときに実行する手順を示すフローチャートである。
図3、図8を参照して、ステップS1で、制御論理部20は、図1のCPU3などからブランクチェック命令を受けると、まずセットアップを行う。セットアップでは、ブランクチェック時にメモリマット40およびベリファイ用センスアンプ部24に出力する内部電圧を発生する内部電圧発生回路30を立上げる。制御論理部20は、さらに、ベリファイ回数を0に初期化するとともに、ブランクチェック対象のメモリセルのメモリゲートMGに印加する電圧Vmgを初期値に設定する。
次のステップS2で、制御論理部20は、ブランクチェックを行うアドレスを確定し、ブランクチェック対象の複数のツインセルを指定する制御信号φX,φYを、Xデコーダ14およびYデコーダ16に出力する。
次のステップS3で、ベリファイ用センスアンプ部24は、ブランクチェック対象のメモリセルに対してベリファイを行なう。ベリファイセンスアンプの出力結果OUT1に応じて、書込状態判定回路56の判定結果OUT2が決定する。
次のステップS4で、制御論理部20は、書込状態判定回路56の出力OUT2が「1」(ブランク状態)であるか否かを判定する。書込状態判定回路56の判定結果が「0」の場合(ステップS4でNO)、制御論理部20は、複数の選択ツインセルは書込状態(判定結果NG)と判定し(ステップS5)、判定結果BLCHKを図1のCPU3などに出力する。この後、内部電圧発生回路30を立下げて(ステップS9)、ブランクチェックを完了する。
書込状態判定回路56の出力OUT2が「1」の場合(ステップS4でYES)、制御論理部20は、複数の選択ツインセルは書込状態でないと判定し、ステップS6に処理を移す。
ステップS6で、制御論理部20は、ベリファイ回数が所定の終了回数に達したか否かを判定する。ベリファイ回数が所定の終了回数に達している場合は(ステップS6でYES)、制御論理部20は、メモリアレイの状態をブランク状態(判定結果OK)と判定し(ステップS8)、判定結果BLKCHKをCPU3などに出力する。この後、内部電圧発生回路30を立下げて(ステップS9)、ブランクチェックを完了する。
ベリファイ回数が所定の終了回数に達していない場合は(ステップS6でNO)、制御論理部20は、ステップS7に処理を移す。ステップS7で、制御論理部20は、ブランクチェック対象のメモリセルのメモリゲートMGに印加する電圧Vmgを変更する。この後、ステップS3以降の処理が再び実行される。
以下、上記のブランクチェックの手順の効果について説明する。
図9は、半導体チップ内のメモリセルの閾値電圧の分布を模式的に示すグラフである。図9(A)はデータ消去直後の閾値電圧の分布を示し、図9(B)は図9(A)の状態から長期間放置したことによってシフトした閾値電圧の分布を示す。図9(C)はデータ書込直後の閾値電圧の分布を示し、図9(D)は図9(C)の状態から長期間放置したことによってシフトした閾値電圧の分布を示す。図9(A)〜(D)において、横軸は閾値電圧を表わし、縦軸は累積度数を示す。ただし、縦軸の目盛は累積度数が直線で表わされるように正規化されている。図9(C)および(D)において、PRG状態と記載された閾値電圧分布は、データ書込時、書込パルスが印加されたメモリセル群の閾値電圧分布であり、ERS状態と記載された閾値電圧分布は、データ書込時、書込パルスが印加されず消去状態となっているメモリセル群の閾値電圧分布である。ツインセル方式の場合には、ポジ側およびネガ側のいずれか一方にデータ書込が行なわれるので、PRG状態のメモリセル群とERS状態のメモリセル群とは同数になる。
長期間の放置によってメモリセルの閾値電圧がシフトする理由は、メモリセルの閾値電圧が、窒化シリコン層に電荷が保持されていない状態(初期状態)の閾値電圧に近付こうとする性質があるためである。初期状態の閾値電圧はプロセスのばらつきに依存するので、初期状態の閾値電圧が高い(閾値電圧が浅い(shallow)と称する)場合と、初期状態の閾値電圧が低い(閾値電圧が深い(deep)と称する)場合とが存在する。図9(A)〜(D)において、閾値電圧が浅い場合の分布を破線(参照符号SH)で示し、閾値電圧が深い場合の分布を実践(参照符号DP)で示している。長期間放置後の閾値電圧の分布は、閾値電圧が深いと相対的に閾値電圧が低くなり、閾値電圧が浅いと相対的に閾値電圧が高くなる。
図9の参照符号VL1〜VL3は、図3のベリファイ用センスアンプ部24においてベリファイ動作を行なう際、メモリセルの閾値電圧と比較する基準値(ベリファイレベル)を表わす。図9では、ベリファイレベルを変更しながら、合計3回ベリファイ動作を行なう場合が示されている。図3の書込状態判定回路56が、書込状態の選択ツインセルが書込状態であると正しく判定するためには、ベリファイレベルを、ERS状態のメモリセルの閾値電圧の分布の最大値とPRG状態のメモリセルの閾値電圧の分布の最小値との間に設定する必要がある。初期状態の閾値電圧のばらつきによって長期間放置後の閾値電圧はばらつくので、正常判定するためのベリファイレベルの設定値は、プロセスや放置時間によって異なることになる。このため、ベリファイレベルを変更しながら複数回ベリファイ動作を行なっている。
図10は、図9において、ベリファイレベルLV1〜LV3に対する書込状態判定回路56の判定結果と最終的なベリファイチェックの結果とを説明するための図である。図10の(A)〜(D)の表は、図9の(A)〜(D)にそれぞれ対応する。
図9(A)および図10(A)を参照して、データ消去直後の場合には、いずれのベリファイレベルLV1〜LV3に対しても、書込状態判定回路56は選択ツインセルが消去状態であると判定する。したがって、最終的なブランクチェックの判定結果は消去状態となる。
図9(B)および図10(B)を参照して、データ消去直後の状態から閾値電圧がシフトした場合には、書込状態判定回路56は複数のツインセルのうち少なくとも1つのツインセルが消去状態であれば消去状態と判定するので、いずれのベリファイレベルLV1〜LV3に対しても、書込状態判定回路56は選択ツインセルが消去状態であると判定する。したがって、最終的なブランクチェックの判定結果は消去状態となる。
図9(C)および図10(C)を参照して、データ書込直後の場合には、いずれのベリファイレベルLV1〜LV3に対しても、書込状態判定回路56は選択ツインセルが書込状態であると判定する。したがって、最終的なブランクチェックの判定結果は書込状態となる。
図9(D)および図10(D)を参照して、データ書込直後の状態から閾値電圧がシフトした場合には、ベリファイレベルおよび初期状態の閾値電圧に応じて書込状態判定回路56の判定が異なる。具体的には、浅い閾値電圧(SH)の場合、ベリファイレベルLV2のとき書込状態判定回路56は書込状態と判定するが、その他のベリファイレベルLV1,LV3のときには書込状態判定回路56は消去状態と判定する。しかし、書込状態判定回路56の判定結果が一度でも書込状態であれば、最終的なブランクチェックの判定結果は書込状態となる。深い閾値電圧(DP)の場合、ベリファイレベルLV3のとき書込状態判定回路56は書込状態と判定するが、その他のベリファイレベルLV1,LV2のときには書込状態判定回路56は消去状態と判定する。しかし、書込状態判定回路56の判定結果が一度でも書込状態であれば、最終的なブランクチェックの判定結果は書込状態となる。このように、書込状態判定回路56の判定結果を用いた実施の形態1のブランクチェックの手順によれば、誤判定が生じる可能性は極めて低い。
図11は、書込状態判定回路56を用いずに、データ消去直後のベリファイ動作と同様の手順によってブランクチェックを行なった場合の判定結果を説明するための図である。図11の(A)〜(D)の表は、図9の(A)〜(D)にそれぞれ対応する。
図9(A)および図11(A)を参照して、データ消去直後の場合には、いずれのベリファイレベルLV1〜LV3に対しても各メモリセルは消去状態と判定される。したがって、最終的なブランクチェックの判定結果は消去状態となる。
図9(B)および図11(B)を参照して、データ消去直後の状態から閾値電圧がシフトした場合には、深い閾値電圧(SH)のメモリセルに対しては、いずれのベリファイレベルLV1〜LV3に対しても消去状態と判定される。したがって、最終的なブランクチェックの判定結果は消去状態となる。しかしながら、浅い閾値電圧(DP)のメモリセルに対しては、ベリファイレベルLV3のとき、ベリファイレベルLV3よりも高い閾値電圧を有するメモリセルが存在するので、書込状態と誤判定する場合が生じ得る。したがって、最終的に書込状態かブランク状態かを判定することができない。
図9(C)および図11(C)を参照して、データ書込直後の場合には、いずれのベリファイレベルLV1〜LV3に対しても書込状態と判定される。したがって、最終的なブランクチェックの判定結果は書込状態となる。
図9(D)および図11(D)を参照して、データ書込直後の状態から閾値電圧がシフトした場合には、浅い閾値電圧(SH)のメモリセルに対しては、ベリファイレベルLV1のとき消去状態と判定されるが、ベリファイレベルLV2,LV3のとき書込状態と判定される。深い閾値電圧(DP)のメモリセルに対しては、ベリファイレベルLV1,LV2のとき消去状態と判定されるが、ベリファイレベルLV3のとき書込状態と判定される。したがって、最終的に書込状態かブランク状態かを判定することができない。
上記の結果から明らかなように、図9(B)の浅い閾値電圧(SH)のメモリセル群に対する判定結果と、図9(D)の深い閾値電圧(DP)のメモリセル群に対する判定結果とが同じになる。すなわち、消去状態と書込状態の区別がつかない場合が生じる。
このように書込状態判定回路56を用いずに、データ消去時のベリファイ動作と同様の手順によってブランクチェックを行なう場合、(i)データを消去したメモリアレイを、長時間放置後も書込状態と誤判定しない、(ii)書込みしたメモリアレイを、長時間放置後も消去状態と誤判定しない、という2条件を満たす必要がある。(i)の条件を満たすには、データ消去後に長時間放置した後の閾値電圧分布の最大値よりも、ベリファイレベルを高く設定する必要がある。(ii)の条件を満たすには、データ書込後に長時間放置した後のPRG状態のメモリセルの閾値電圧分布の最大値よりも、ベリファイレベルを低く設定する必要がある。図9(B)において(i)の条件を満たすには、ベリファイレベルをLV1またはLV2に設定する必要がある。図9(D)において(ii)の条件を満たすには、ベリファイレベルをLV3に設定する必要がある。このように、図9に示すベリファイレベルLV1〜LV3では上記の条件(i)および(ii)を両立できない。したがって、従来の場合、リテンション期間を制限して閾値電圧のシフト量を減らすことによって、上記(i)および(ii)の条件を両立させる必要があった。
実施の形態1のフラッシュメモリでは、図7に示す書込状態判定回路56を実装するとともに、図8に示すブランクチェックのシーケンスを採用することによって、ツインセルを構成するポジ側のメモリセルとネガ側のメモリセルに適切な閾値電圧の差があれば、正確にブランクチェックの判定を行なうことができる。ブランクチェックの判定を、メモリセルの絶対的な閾値電圧で判定する必要がないので、ブランクチェックのためにリテンション特性が制限されることはない。
上記の実施の形態では、図3の制御論理部20が図8のブランクチェックの判定手順を実行していたが、図1のCPU3が第3の判定部としてブランクチェック手順を実行してもよい。この場合、図3の書込状態判定回路56の出力OUT2および期待値比較回路54の出力OUT3は、I/Oバッファ26を介して図1のCPU3に出力される。
<実施の形態2>
図12は、この発明の実施の形態2に従う半導体装置によって実行されるメモリアレイのブランクチェックの手順を示すフローチャートである。図12のフローチャートは、ステップS7に代えてステップS7Aを含む点で図8のフローチャートと異なる。その他の点は図8のフローチャートと同様であるので、同一または相当するステップには同一の参照符号を付して説明を繰返さない。
ステップS7Aにおいて、制御論理部20は、図6の電流源用のトランジスタ62のゲートに供給する電圧Vref1を変化させることによって参照電流Irefを変化させる。この場合、ブランクチェック対象のメモリセルのメモリゲートMGには一定電圧が供給される。このように参照電流Irefを変化させることによって等価的にベリファイレベルを変化させることができるので、実施の形態1の場合と同様の手順でブランクチェックを行なうことができる。
<実施の形態3>
実施の形態3では、ベリファイ用のセンスアンプによってベリファイを行なうときに、各メモリセルのメモリゲートMGに印加する電圧を所定の範囲内で連続的に変化させる点が実施の形態1の場合と異なる。メモリゲートMGの電圧を連続的に変化させることによって、ベリファイレベルを連続的に変化させることができるので、ブランクチェック時間を短縮することができる。以下、具体的に説明する。
図13は、この発明の実施の形態3に従う半導体装置に実装されるベリファイ動作用およびブランクチェック用の回路50Aの構成を示すブロック図である。図13の回路50Aは、RSラッチ回路58をさらに含む点で図6の回路50と異なる。RSラッチ回路58は、書込状態判定回路56の出力が「1」から「0」となったときにその出力を保持する。RSラッチ回路58の出力OUT2は図3の制御論理部20に与えられる。図13のその他の点は図5の場合と同じであるので、同一または相当する部分には同一の参照符号を付して説明を繰返さない。
図14は、実施の形態3に従う半導体装置によって実行されるメモリアレイのブランクチェックの手順を示すフローチャートである。
図13、図14を参照して、ステップS11で、図3の制御論理部20は、CPU3などからブランクチェック命令を受けると、まずセットアップを行う。セットアップでは、ブランクチェック時にメモリマット40およびベリファイ用センスアンプ部24に出力する内部電圧を発生する内部電圧発生回路30を立上げる。制御論理部20は、さらに、ベリファイ回数を0に初期化するとともに、ブランクチェック対象のメモリセルのメモリゲートMGに印加する電圧Vmgを初期値に設定する。
次のステップS12で、制御論理部20は、ブランクチェックを行うアドレスを確定し、ブランクチェック対象の複数のツインセルを指定する制御信号φX,φYを、図3のXデコーダ14およびYデコーダ16に出力する。
次のステップS13で、メモリゲートMGに印加する電圧Vmgの変化を開始する。
次のステップS14で、ベリファイ用センスアンプ部24は、ブランクチェック対象のメモリセルに対してベリファイを行なう。ベリファイ用のセンスアンプの出力結果に応じて、書込状態判定回路56の出力が変化する。RSラッチ回路58は、書込状態判定回路56の出力が「1」から「0」となったときにその出力を保持する。このステップS14は、メモリゲートMGの電圧変化が終了する(ステップS15でYES)まで繰返される。
次のステップS16で、制御論理部20は、RSラッチ回路58の出力OUT2が「1」であるか否かを判定する。RSラッチ回路58の出力OUT2が「1」のとき(ステップS16でYES)、制御論理部20は、メモリアレイの状態をブランク状態(判定結果OK)と判定し(ステップS18)、判定結果BLKCHKをCPU3などに出力する。この後、内部電圧発生回路30を立下げて(ステップS19)、ブランクチェックを完了する。
RSラッチ回路58の出力OUT2が「0」のとき(ステップS16でNO)、制御論理部20は、メモリアレイの状態を書込状態(判定結果NG)と判定し(ステップS17)、判定結果BLKCHKをCPU3などに出力する。この後、内部電圧発生回路30を立下げて(ステップS19)、ブランクチェックを完了する。
<実施の形態4>
図15は、この発明の実施の形態4に従う半導体装置によって実行されるメモリアレイのブランクチェックの手順を示すフローチャートである。図15のブランクチェクの手順は、図3の期待値比較回路54による判定結果OUT3と書込状態判定回路56による判定結果OUT2とを組合わせてブランクチェックを行なっている点で図8のブランチェックの手順と異なる。これによって、ツインセルを構成するメモリセルの閾値電圧がポジ側およびネガ側のいずれも高い場合でも、ブランクチェック結果が消去状態と誤判定されなくなる。以下、具体的に説明する。
図3、図15を参照して、ステップS21で、制御論理部20は、図1のCPU3などからブランクチェック命令を受けると、まずセットアップを行う。セットアップでは、ブランクチェック時にメモリマット40およびベリファイ用センスアンプ部24に出力する内部電圧を発生する内部電圧発生回路30を立上げる。制御論理部20は、さらに、ベリファイ回数を0に初期化するとともに、ブランクチェック対象のメモリセルのメモリゲートMGに印加する電圧Vmgを初期値に設定する。
次のステップS22で、制御論理部20は、ブランクチェックを行うアドレスを確定し、ブランクチェック対象の複数のツインセルを指定する制御信号φX,φYを、Xデコーダ14およびYデコーダ16に出力する。
次のステップS23で、制御論理部20は、期待値格納レジスタ52に格納する期待値を「FFh」(hは16進数を表わす)に設定する。すなわち、ブランクチェク対象の128個のメモリセルの全ての期待値が「1」(Nチャネルの場合、低閾値電圧状態)になる。
次のステップS24で、ベリファイ用センスアンプ部24は、ブランクチェック対象のメモリセルに対してベリファイを行なう。ベリファイセンスアンプの出力結果に応じて、期待値比較回路54の判定結果OUT3が決定する。
次のステップS25で、制御論理部20は、ベリファイセンスアンプの出力結果が期待値「FFh」に一致しているか、すなわち、ブランクチェック対象の全てのメモリセルがブランク状態であるか否かを判定する。ブランク状態の場合(ステップS25でYES)の場合は処理がステップS27に進む。少なくとも1つもメモリセルが書込状態の場合(ステップS25でNO)、制御論理部20は、複数の選択ツインセルは書込状態(判定結果NG)と判定し(ステップS26)、判定結果BLCHKを図1のCPU3などに出力する。この後、内部電圧発生回路30を立下げて(ステップS32)、ブランクチェックを完了する。
ステップS27で、ブランクチェック対象のメモリセルのメモリゲートMGに印加する電圧Vmgを変更する。
次のステップS28で、ベリファイ用センスアンプ部24は、ブランクチェック対象のメモリセルに対してベリファイを行なう。ベリファイセンスアンプの出力結果に応じて、書込状態判定回路56の判定結果OUT2が決定する。
次のステップS29で、制御論理部20は、書込状態判定回路56の出力OUT2が「1」(ブランク状態)であるか否かを判定する。書込状態判定回路56の判定結果が「0」の場合(ステップS29でNO)、制御論理部20は、複数の選択ツインセルは書込状態(判定結果NG)と判定し(ステップS26)、判定結果BLCHKを図1のCPU3などに出力する。この後、内部電圧発生回路30を立下げて(ステップS32)、ブランクチェックを完了する。
ステップS29で、書込状態判定回路56の出力OUT2が「1」の場合(ステップS29でYES)、制御論理部20は、複数の選択ツインセルは書込状態でないと判定し、ステップS30に処理を移す。
ステップS30で、制御論理部20は、ベリファイ回数が所定の終了回数に達したか否かを判定する。ベリファイ回数が所定の終了回数に達している場合は(ステップS30でYES)、制御論理部20は、メモリアレイの状態をブランク状態(判定結果OK)と判定し(ステップS31)、判定結果BLKCHKをCPU3などに出力する。この後、内部電圧発生回路を立下げて(ステップS32)、ブランクチェックを完了する。
ステップS30で、ベリファイ回数が所定の終了回数に達していない場合は(ステップS30でNO)、制御論理部20は、ステップS27に処理を移し、ステップS27以降の手順が繰返される。
上記の各実施の形態では、メモリセルはNチャネルであるとしたが、Pチャネルであってもよい。この場合、閾値電圧の符号や、ビット線BL、ワード線WL、メモリゲート線MGL、およびソース線SLに印加する電圧の符号が、Nチャネルの場合と逆になる。
今回開示された実施の形態はすべての点で例示であって制限的なものでないと考えられるべきである。この発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 マイクロコンピュータ、3 CPU、7 フラッシュメモリ、13 選択回路、14 Xデコーダ、15 CPUリード用Yデコーダ、16 Yデコーダ、18 Yゲート、20 制御論理部(第3の判定部)、24 ベリファイ用センスアンプ部、30 内部電圧発生回路、40 メモリマット、41 メモリブロック、44 CPUリード用センスアンプ部、52 期待値格納レジスタ、54 期待値比較回路、56 書込状態判定回路、58 RSラッチ回路、60 比較回路、70 第1の判定部、72 NAND回路(第2の判定部)、BL ビット線、CG,CG0 コントロールゲート、FG フローティングゲート、Icell 読出電流、Iref 参照電流、LG0〜LG63 排他的論理和回路、MBL,RMBL,WMBL メインビット線、MC メモリセル、MC1 ポジ側メモリセル、MC2 ネガ側メモリセル、MG メモリゲート、MGL メモリゲート線、MTR メモリトランジスタ、SA 相補データ読出用センスアンプ、SBL サブビット線、SL ソース線、TMC ツインセル、VDD 電源電圧、VSA ベリファイ用センスアンプ、WL ワード線。

Claims (6)

  1. 閾値電圧が可変のトランジスタを有するメモリセルが複数配列されたメモリアレイを備え、
    前記メモリアレイに含まれる複数のメモリセルは、各々が2個のメモリセルを有する複数のツインセルにグループ化され、
    前記複数のツインセルの各々は、一方のメモリセルの閾値電圧が他方のメモリセルの閾値電圧よりも高い状態に設定されることによって相補データを記憶し、
    さらに、前記複数のツインセルの一部である複数の選択ツインセルを選択する選択回路と、
    前記複数の選択ツインセルの各々について、一方のメモリセルの閾値電圧が前記複数の選択ツインセルに対して共通に設定された基準値より高く、他方のメモリセルの閾値電圧が前記基準値より低いという第1の条件が成立するか否かを判定する第1の判定部と、
    前記複数の選択ツインセルの全てが前記第1の条件を満たすという第2の条件が成立するか否かを判定する第2の判定部と、
    前記第2の判定部の判定結果に基づいて、前記複数の選択ツインセルの各々が相補データを記憶していないブランク状態であるか否かを判定する第3の判定部とを備える、半導体装置。
  2. 前記第3の判定部は、前記基準値を所定の範囲内で連続的または離散的に変化させ、いずれの大きさの前記基準値についても前記第2の条件が不成立の場合に、前記複数の選択ツインセルの各々はブランク状態であると判定する、請求項1に記載の半導体装置。
  3. 前記トランジスタは、
    半導体基板に設けられたチャネル領域と、
    前記チャネル領域上に絶縁膜を介して形成された電荷蓄積部と、
    前記電荷蓄積部上に絶縁膜を介して形成されたゲート電極とを有し、
    前記トランジスタの閾値電圧は、前記電荷蓄積部に蓄積された電荷に応じて変化し、
    前記半導体装置は、
    前記基準値に対応して変化する制御電圧を生成して前記複数の選択ツインセルに含まれる各メモリセルの前記ゲート電極に供給する内部電圧生成部と、
    前記複数の選択ツインセルに含まれる各メモリセルについて、前記制御電圧が前記ゲート電極に印加されたとき、前記トランジスタを流れる電流と所定の参照電流とを比較する電圧比較部とをさらに備え、
    前記第1の判定部は、前記電圧比較部の比較結果に基づいて前記第1の条件の成否を判定する、請求項2に記載の半導体装置。
  4. 前記トランジスタは、
    半導体基板に設けられたチャネル領域と、
    前記チャネル領域上に絶縁膜を介して形成された電荷蓄積部と、
    前記電荷蓄積部上に絶縁膜を介して形成されたゲート電極とを有し、
    前記トランジスタの閾値電圧は、前記電荷蓄積部に蓄積された電荷に応じて変化し、
    前記半導体装置は、
    所定の制御電圧を生成して前記複数の選択ツインセルに含まれる各メモリセルの前記ゲート電極に供給する内部電圧生成部と、
    前記複数の選択ツインセルに含まれる各メモリセルについて、前記制御電圧が前記ゲート電極に印加されたとき、前記トランジスタと流れる電流と前記基準値に対応して変化する参照電流とを比較する電圧比較部とをさらに備え、
    前記第1の判定部は、前記電圧比較部の比較結果に基づいて前記第1の条件の成否を判定する、請求項2に記載の半導体装置。
  5. 前記トランジスタは、Nチャネルトランジスタであり、
    前記第3の判定部は、前記基準値を所定の範囲内で連続的または離散的に変化させ、いずれの大きさの前記基準値についても前記第2の条件が不成立であり、かつ、少なくとも1つの前記基準値について、前記複数の選択ツインセルに含まれる全てのメモリセルの閾値電圧が前記基準値よりも低い場合に、前記複数の選択ツインセルの各々はブランク状態であると判定する、請求項1に記載の半導体装置。
  6. 前記トランジスタは、Pチャネルトランジスタであり、
    前記第3の判定部は、前記基準値を所定の範囲内で連続的または離散的に変化させ、いずれの大きさの前記基準値についても前記第2の条件が不成立であり、かつ、少なくとも1つの前記基準値について、前記複数の選択ツインセルに含まれる全てのメモリセルの閾値電圧が前記基準値よりも高い場合に、前記複数の選択ツインセルの各々はブランク状態であると判定する、請求項1に記載の半導体装置。
JP2010176993A 2010-08-06 2010-08-06 半導体装置 Expired - Fee Related JP5328732B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010176993A JP5328732B2 (ja) 2010-08-06 2010-08-06 半導体装置
US13/180,189 US8477535B2 (en) 2010-08-06 2011-07-11 Semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010176993A JP5328732B2 (ja) 2010-08-06 2010-08-06 半導体装置

Publications (2)

Publication Number Publication Date
JP2012038383A JP2012038383A (ja) 2012-02-23
JP5328732B2 true JP5328732B2 (ja) 2013-10-30

Family

ID=45556077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010176993A Expired - Fee Related JP5328732B2 (ja) 2010-08-06 2010-08-06 半導体装置

Country Status (2)

Country Link
US (1) US8477535B2 (ja)
JP (1) JP5328732B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9378829B2 (en) * 2013-02-07 2016-06-28 Cypress Semiconductor Corporation Non-volatile memory device with an EPLI comparator
US10073982B2 (en) 2013-08-15 2018-09-11 Renesas Electronics Corporation Semiconductor device
CN105518791A (zh) * 2013-08-15 2016-04-20 瑞萨电子株式会社 半导体器件
WO2015022742A1 (ja) * 2013-08-15 2015-02-19 ルネサスエレクトロニクス株式会社 半導体装置
CN105474325B (zh) * 2013-08-22 2019-08-02 瑞萨电子株式会社 将双单元的存储数据屏蔽而进行输出的半导体器件
US10776259B2 (en) * 2013-10-31 2020-09-15 Infineon Technologies Ag Method, apparatus and device for data processing
US9001580B1 (en) * 2013-12-04 2015-04-07 Synopsys, Inc. Asymmetric dense floating gate nonvolatile memory with decoupled capacitor
JP2015185180A (ja) * 2014-03-20 2015-10-22 株式会社東芝 コンフィギュレーションメモリ
CN105283919B (zh) * 2014-03-31 2020-08-28 瑞萨电子株式会社 半导体装置
US9418745B1 (en) 2015-03-18 2016-08-16 Globalfoundries Inc. Rebalancing in twin cell memory schemes to enable multiple writes
US10679712B2 (en) 2017-12-21 2020-06-09 Cypress Semiconductor Corporation Non-volatile memory device and method of blank check
JP2019179799A (ja) * 2018-03-30 2019-10-17 ルネサスエレクトロニクス株式会社 半導体記憶装置
JP7293932B2 (ja) * 2019-07-17 2023-06-20 富士電機株式会社 半導体装置およびセンサ装置
JP7307338B2 (ja) * 2019-10-17 2023-07-12 富士通セミコンダクターメモリソリューション株式会社 半導体記憶装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3450456B2 (ja) * 1994-08-31 2003-09-22 株式会社東芝 半導体記憶装置
US6448615B1 (en) * 1998-02-26 2002-09-10 Micron Technology, Inc. Methods, structures, and circuits for transistors with gate-to-body capacitive coupling
JP2001319486A (ja) * 2000-05-12 2001-11-16 Mitsubishi Electric Corp 不揮発性半導体記憶装置
JP2003092364A (ja) * 2001-05-21 2003-03-28 Mitsubishi Electric Corp 半導体記憶装置
JP3737070B2 (ja) * 2002-06-28 2006-01-18 富士通株式会社 半導体記憶装置
JP4229674B2 (ja) * 2002-10-11 2009-02-25 Necエレクトロニクス株式会社 半導体記憶装置及びその制御方法
JP5311784B2 (ja) 2006-10-11 2013-10-09 ルネサスエレクトロニクス株式会社 半導体装置
JP2009252290A (ja) * 2008-04-07 2009-10-29 Renesas Technology Corp 半導体集積回路およびその動作方法
JP2009272028A (ja) * 2008-04-07 2009-11-19 Renesas Technology Corp 半導体集積回路およびその動作方法

Also Published As

Publication number Publication date
US8477535B2 (en) 2013-07-02
US20120033495A1 (en) 2012-02-09
JP2012038383A (ja) 2012-02-23

Similar Documents

Publication Publication Date Title
JP5328732B2 (ja) 半導体装置
US9563504B2 (en) Partial block erase for data refreshing and open-block programming
JP6856400B2 (ja) 半導体記憶装置及びメモリシステム
US7684250B2 (en) Flash memory device with reduced coupling effect among cells and method of driving the same
JP5150245B2 (ja) 半導体記憶装置
US7260016B2 (en) Non-volatile semiconductor memory device and writing method therefor
US7518909B2 (en) Non-volatile memory device adapted to reduce coupling effect between storage elements and related methods
US20080123429A1 (en) Program method of flash memory device
US10153045B2 (en) Semiconductor memory device
US8068362B2 (en) Non-volatile semiconductor memory device and method of reading the same
JP2007507055A (ja) 不揮発性メモリにおける消去禁止
CN104064216A (zh) 非易失性半导体存储装置
JP2014157650A (ja) 半導体記憶装置
US20140043907A1 (en) Nonvolatile memory device and method for voltage trimming thereof
JP2010211899A (ja) 半導体記憶装置
JP2007207343A (ja) 不揮発性半導体記憶装置
JP2008016112A (ja) 半導体記憶装置
US20110157998A1 (en) Semiconductor memory device and method of operating the same
JP4157189B2 (ja) 不揮発性半導体記憶装置
US8837213B2 (en) Semiconductor memory device which stores multilevel data
CN111696606B (zh) 半导体存储装置
JP3404712B2 (ja) 不揮発性半導体記憶装置及びその書き込み方法
US8385129B2 (en) Semiconductor memory device and control method thereof
JP2012123856A (ja) 不揮発性半導体記憶装置
US20130314989A1 (en) Memory system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130321

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130703

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130716

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130723

R150 Certificate of patent or registration of utility model

Ref document number: 5328732

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees