JP7122936B2 - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP7122936B2
JP7122936B2 JP2018202741A JP2018202741A JP7122936B2 JP 7122936 B2 JP7122936 B2 JP 7122936B2 JP 2018202741 A JP2018202741 A JP 2018202741A JP 2018202741 A JP2018202741 A JP 2018202741A JP 7122936 B2 JP7122936 B2 JP 7122936B2
Authority
JP
Japan
Prior art keywords
write
current
semiconductor device
write operation
memory
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.)
Active
Application number
JP2018202741A
Other languages
English (en)
Other versions
JP2020071889A (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 JP2018202741A priority Critical patent/JP7122936B2/ja
Priority to CN201910823753.5A priority patent/CN111105831B/zh
Priority to US16/576,442 priority patent/US10896737B2/en
Publication of JP2020071889A publication Critical patent/JP2020071889A/ja
Application granted granted Critical
Publication of JP7122936B2 publication Critical patent/JP7122936B2/ja
Active 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/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • G11C16/0425Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing a merged floating gate and select transistor
    • 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/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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
    • 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/30Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • 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/26Sensing or reading circuits; Data output 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/32Timing circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)

Description

本発明は、半導体装置に関する。
例えば車載用の半導体装置には、CPU(Central Processing Unit)やフラッシュメモリ等の不揮発性メモリ等が搭載されている。近年、車載用半導体装置は、OTA(Over The Air)等の各種機能が搭載される等、高機能化が進んでいる。これに伴い、コード量及びデータ量が増大するため、フラッシュメモリの容量は大容量化している。
ところが、フラッシュメモリの容量が増大すると、テスト時間が長くなり、テストコストが増大する。そこで、例えば特許文献1には、不揮発性メモリセルに対する書き込み動作を高速化する半導体集積回路等が開示されている。
具体的には、特許文献1のフラッシュメモリは、第1のしきい値電圧を持つ前記不揮発性メモリセルのしきい値電圧が第2のしきい値電圧に変化されるまで不揮発性メモリセルにパルス状電圧を与える。また、フラッシュメモリは、書き込みモードとして、パルス状電圧の印加毎に変化される不揮発性メモリセルのしきい値電圧の変化量が相対的に大きくされる第1の書込みモード(粗い書込み)と、相対的に小さくされる第2の書込みモード(高精度書込み)とを有する。メモリセルのしきい値電圧を変化させるのに必要なパルスの数は、粗い書込みモードの方が少ない。このため、粗い書込みモードが用いられた場合のベリファイ回数の方が少なく、これによって全体としての書込み動作が高速化される。
特開平10-106276号公報
しかしながら、特許文献1の方法では、フラッシュメモリへの書き込み時間は十分に短縮されているとは言えず、更なる書き込み時間の短縮が求められている。例えば、特許文献1の構成において、データ書き換え時における選択セル数を増やせば、スループットが向上し、書き込み時間が短縮される。しかし、選択セル数が増えると、より多くの電流が必要となるためチャージポンプに掛かる負荷が大きくなる。また、電流量の増大によるノイズの影響も大きくなる。
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
本明細書には、複数の実施の形態の半導体装置が記載されているが、一実施の形態の半導体装置を述べると、次の通りである。半導体装置は、複数のメモリセルと、複数のメモリセルを制御するメモリコントローラと、チャージポンプと、メモリセルに対する書き込み動作が完了したかどうかの判定処理を行うセンスアンプと、を備えている。メモリコントローラは、第1の個数のメモリセルに対して同時に、第1の書き込み電流による書き込み動作を行う通常書き込みモードに対し、高速書き込みモードでは、第1の個数より多い第2の個数のメモリセルに対して同時に、第1の書き込み電流より電流値が小さい第2の書き込み電流による第1の書き込み動作を行う。メモリコントローラは、第1の書き込み動作完了時、判定処理においてセンスアンプにより書き込み動作が完了していないと判定されたメモリセルに対して同時に、第2の書き込み電流よりも電流値が大きい第3の書き込み電流による第2の書き込み動作を行う。
一実施の形態によれば、ノイズの増大を抑えつつフラッシュメモリへの書き込み速度を高速化することが可能となる。
本発明の実施の形態1に係る半導体装置の構成の一例を示すブロック図である。 本発明の実施の形態1に係る不揮発性メモリの構成の一例を示すブロック図である。 本発明の実施の形態1に係るメモリセルの構成の一例を示す断面図である。 メモリセルに対する書き込み動作、消去動作、読み出し動作においてメモリセルの各電極に印加される電圧値を例示する図である。 通常書き込みモードの一例を示すフローチャート図である。 高速書き込みモードの一例を示すフローチャート図である。 通常書き込みモードの書き込み電流と高速書き込みモードの書き込み電流とを比較する図である。 本発明の実施の形態1の効果を例示する図である。 低ノイズ書き込みモードの一例を示すフローチャート図である。 低ノイズ書き込みモードの具体例を示す図である。 低電圧書き込みモードの一例を示すフローチャート図である。 低電圧書き込みモードにおける書き込み電流と閾値電圧との関係を示す図である。 低電圧書き込みモードにおけるベリファイ結果の一覧を示す図である。 最適な書き込み電流を得る方法を説明する図である。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するためのすべての図において、同一部分には原則として同一の符号を付し、その繰り返しの説明は省略する。
(実施の形態1)
実施の形態1では、不揮発性メモリへの書き込み動作を高速化させた半導体装置について説明する。
<半導体装置の構成>
図1は、本発明の実施の形態1に係る半導体装置の構成の一例を示すブロック図である。図1に示すように、半導体装置1は、CPU10、RAM(Random Access Memory)20、メモリコントローラ30、フラッシュメモリ(不揮発性メモリ)40、周辺バス50等を備えている。半導体装置1は、例えば自動車等に搭載される車載用の半導体装置である。図1に示すように、CPU10及びメモリコントローラ30は、周辺バス50と接続され、周辺バス50を介して各種情報の入出力が行われる。
CPU10は、半導体装置1の各構成要素の制御に関連する演算処理や、OTAに関連する演算処理等を行う機能ブロックである。また、CPU10は、半導体装置1と接続される各種装置と連携し、車両制御に関連する演算処理を行う。CPU10は、フラッシュメモリ40に格納されたプログラムを読み出し、読み出したプログラムをRAM20に展開する。CPU10は、RAM20に展開されたプログラムを実行することにより、各機能を実現する機能ブロックを実現する。CPU10の内部にはキャッシュ11が設けられ、演算処理において使用頻度の高い情報はキャッシュ11に格納される。また、CPU10はRAM20にプログラムを展開せずにフラッシュメモリ40から読みだしたプログラム(キャッシュ11格納情報も含む)を直接実行してもよい。
RAM20は、すでに述べたように、フラッシュメモリ40から読み出したプログラムを展開する。また、RAM20は、CPU10による演算処理により生成された情報等を一時的に格納してもよい。
メモリコントローラ30は、フラッシュメモリ40の制御を行う機能ブロックである。メモリコントローラ30は、フラッシュメモリ40に対する書き込み動作、読み出し動作、消去動作等に関する処理を行う。具体的に述べると、メモリコントローラ30は、通常使用時や出荷前の製品テスト時における書き込み動作、消去動作、及び読み出し動作に関する制御を行う。メモリコントローラ30は、単独でフラッシュメモリ40の制御を行ってもよいし、CPU10から出力される信号に基づいてフラッシュメモリ40の制御を行ってもよい。メモリコントローラ30の動作については、後で詳しく説明する。
フラッシュメモリ40は、半導体装置1に関わる各種情報を格納する機能ブロックである。図1~2では、フラッシュメモリ40が不揮発性メモリとして例示されているが、これ以外の不揮発性メモリでもよい。図2は、本発明の実施の形態1に係る不揮発性メモリの構成の一例を示すブロック図である。図2には、フラッシュメモリ40以外にも、メモリコントローラ30も併せて示されている。図3は、本発明の実施の形態1に係るメモリセルの構成の一例を示す断面図である。図2に示すように、フラッシュメモリ40は、メモリアレイ41、ソースドライバ42、メモリゲートドライバ43、チャージポンプ44、書き込み電流設定回路45、センスアンプ47、スイッチ回路48を備えている。
なお、図1~図2では、メモリコントローラ30とフラッシュメモリ40とが別体で示されているが、フラッシュメモリ40及びメモリコントローラ30は、一体で構成されてもよい。
メモリアレイ41は、複数のメモリセルMCを備えている。図2には、1つのメモリセルMCのみが便宜上示されているが、実際には、複数のメモリセルMCがアレイ状に配置される。複数のメモリセルMCは、図2に示すY方向に延在するビット線BL及びX方向に延在するソース線SLに沿って格子状に配置される。具体的に述べると、フラッシュメモリ40には、Y方向に延在するビット線BLが複数設けられており、複数のビット線BLは、X方向に配列されている。また、フラッシュメモリ40には、X方向に延在するソース線SLが複数設けられており、複数のソース線SLは、Y方向に配列されている。そして、複数のメモリセルMCは、複数のビット線BLと複数のソース線SLのそれぞれの交点に対応して配置される。
メモリセルMCは、図2~図3に示すように選択トランジスタST、メモリトランジスタMTを備えている。選択トランジスタSTの一方の電極は、ビット線BLと接続されている。メモリトランジスタMTの一方の電極は、ソース線SLを介してソースドライバ42と接続されている。選択トランジスタSTの他方の電極は、メモリトランジスタMTの他方の電極と接続されている。このように、メモリセルMCは、選択トランジスタST及びメモリトランジスタMTが、ソース線SLとビット線BLとの間で直列に接続されている。選択トランジスタSTはコントロールゲートCGを備え、メモリトランジスタMTは、電荷記憶層CL及びメモリゲートMGを備えている。メモリゲートMGは、メモリゲートドライバ43と接続されている。図3に示すように、メモリセルMCは、ソース線SL側がソースS、ビット線BL側がドレインDである。
ここで例示されたフラッシュメモリの書き込み方式は、ドレイン-ソース間に書き込み電流を流し、電荷記憶層CLに電荷をトラップする、ホット・エレクトロン注入方式である。具体的に述べると、メモリゲートMG及びソース線SLに高電圧が印加され、電荷がトラップされ易くした状態でドレイン-ソース間に電流を流す。そして、電荷記憶層CLが電荷をトラップすることにより、メモリセルMCにデータが書き込まれる。電荷記憶層CLはフローティングゲート方式でもチャージトラップ方式どちらでもよい。
図4は、メモリセルに対する書き込み動作、消去動作、読み出し動作においてメモリセルの各電極に印加される電圧値を例示する図である。図4において、Vdは、メモリセルMCのドレインDに印加される電圧である。すなわち、Vdは、ビット線BLの電圧である。Vcgは、メモリセルMCのコントロールゲートCGに印加される電圧である。Vmgは、メモリセルMCのメモリゲートMGに印加される電圧である。Vsは、メモリセルMCのソースSに印加される電圧である。すなわち、Vsは、ソース線SLの電圧である。
図4に示すように、書き込み動作時、メモリセルMCの各電極に印加される電圧は、Vd=0.5[V]、Vcg=1[V]、Vmg=10[V]、Vs=5[V]にそれぞれ設定される。消去動作時、メモリセルMCの各電極に印加される電圧は、Vd=0[V]、Vcg=0[V]、Vmg=-10[V]、Vs=5[V]にそれぞれ設定される。読み出し動作時、メモリセルMCの各電極に印加される電圧は、Vd=1[V]、Vcg=1[V]、Vmg=0[V]、Vs=0[V]にそれぞれ設定される。なお、これらの電圧は、あくまで一例であり、メモリセルMCの特性に応じて適宜変更される。
ソースドライバ42は、各ソース線SLの電位を設定する機能ブロックである。ソースドライバ42は、メモリコントローラ30、チャージポンプ44、及び複数のソース線SLと接続されている。ソースドライバ42は、例えばメモリコントローラ30から出力される信号に基づき、各ソース線SLの電圧を制御する。ソースドライバ42は、例えばチャージポンプ44で生成される電圧をソース線SLへ供給する。その際、ソースドライバ42は、チャージポンプ44で生成される電圧をそのままソース線SLへ供給してもよいし、所定の電圧に変圧したのちソース線SLへ供給してもよい。
メモリゲートドライバ43は、各メモリトランジスタMTのメモリゲートMGの電圧を制御する機能ブロックである。メモリゲートドライバ43は、メモリコントローラ30、チャージポンプ44、及び複数のメモリゲートMGと接続されている。メモリゲートドライバ43は、例えばメモリコントローラ30から出力される信号に基づき、各メモリゲートMGの電圧を制御する。メモリゲートドライバ43は、例えばチャージポンプ44で生成される電圧をメモリゲートMGへ供給する。その際、メモリゲートドライバ43は、チャージポンプ44で生成される電圧をそのままメモリゲートMGへ供給してもよいし、所定の電圧に変圧したのちメモリゲートMGへ供給してもよい。なお、メモリゲートドライバ43は、コントロールゲートCGの制御を行ってもよい。
チャージポンプ44は、メモリセルMC等へ供給する電力を生成する機能ブロックである。チャージポンプ44は、メモリコントローラ30、ソースドライバ42、メモリゲートドライバ43と接続されている。チャージポンプ44は、例えばメモリコントローラ30から出力される信号に基づき、書き込み動作、消去動作、読み出し動作に応じた電圧を生成する。
図4を参照して述べると、書き込み動作時、チャージポンプ44は、10[V]の電圧を生成し、メモリゲートドライバ43へ供給する。また、チャージポンプ44は、5[V]の電圧を生成し、ソースドライバ42へ供給する。なお、この場合、ソースドライバ42へ供給する電圧は、メモリゲートドライバ43へ供給する電圧の生成過程において分流したものでもよい。
消去動作時、チャージポンプ44は、-10[V]の電圧を生成し、メモリゲートドライバ43へ供給する。また、チャージポンプ44は、5[V]の電圧を生成し、ソースドライバ42へ供給する。そして、読み出し動作時、チャージポンプ44は、5[V]の電圧を生成し、ソースドライバ42及びメモリゲートドライバ43へ供給する。
書き込み電流設定回路45は、メモリセルMCへの書き込み動作時における書き込み電流の電流値を設定する機能ブロックである。書き込み電流設定回路45は、例えばビット線BLごとに設けられる。書き込み電流設定回路45は、メモリコントローラ30から出力される信号に基づき、書き込み電流の電流値を設定する。書き込み電流の設定については、後で詳しく説明する。
センスアンプ47は、メモリセルMCに対する書き込み動作が完了したかどうかの判定処理を行う機能ブロックである。センスアンプ47は、例えばビット線BLごとに設けられる。各センスアンプ47は、対応するビット線BL及び対応するスイッチ回路48のビットラッチ48cと接続されている。書き込み動作後に読み出し動作が行われ、センスアンプ47は、読み出し動作によりビット線BLへ流れる電流と、例えばメモリコントローラ30から供給されるレファレンス信号REFの電流とを比較する。なお、このような処理を、ベリファイとも呼ぶ。そして、センスアンプ47は、例えば、ビット線BLに流れる電流がレファレンス信号REFの電流より大きい場合、メモリセルMCに所定のデータが書き込まれたものと判定し、書き込み完了信号COMPをビットラッチ48cへ出力する。
スイッチ回路48は、メモリセルMCへの書き込み動作の可否を切り換える機能ブロックである。スイッチ回路48は、ビット線BLごとに設けられる。スイッチ回路48は、第1のスイッチ48a、第2のスイッチ48b、ビットラッチ48cを備えている。第1のスイッチ48aは、例えばNMOS(Negative Metal Oxide Semiconductor)で構成されている。第1のスイッチ48aの一方の電極は、書き込み電流設定回路45と接続されている。第1のスイッチ48aの他方の電極は、第2のスイッチ48bの一方の電極と接続されている。第1のスイッチ48aのゲート電極は、例えばメモリコントローラ30と接続されている。第1のスイッチのゲート電極に、メモリコントローラ30からハイレベルの書き込み信号PRGMが供給されると、第1のスイッチ48aがオンになる。これにより、メモリセルMCへの書き込み動作が可能になる。
第2のスイッチ48bは、センスアンプ47による判定結果に基づいて、メモリセルMCへの書き込み動作の可否を切り換える素子である。第2のスイッチ48bは、例えばNMOSで構成されている。第2のスイッチ48bの他方の電極は、接地されている。第2のスイッチ48bのゲートは、ビットラッチ48cと接続されている。第2のスイッチ48bは、ビットラッチ48cから出力される信号に基づいてオン・オフを切り換える。
ビットラッチ48cは、センスアンプ47における判定結果に基づく所定の信号を第2のスイッチ48bへ出力する。書き込み動作開始時、ビットラッチ48cは、所定のデータ(以下、ラッチデータとも呼ぶ)を保持する。このラッチデータに基づき、ビットラッチ48cは、例えばハイレベルの信号を第2のスイッチ48bのゲート電極へ出力する。このとき、第2のスイッチ48bは、オン状態となる。そして、書き込み動作後の読み出し動作時において、センスアンプ47から書き込み完了信号COMPが出力されると、ビットラッチ48cは、ラッチデータを反転させ、反転させたラッチデータを保持する。この反転させたラッチデータに基づき、ビットラッチ48cは、例えばローレベルの信号を第2のスイッチ48bのゲート電極へ出力する。これにより、第2のスイッチ48bは、オフ状態となり、対応するメモリセルMCへの書き込みが禁止される。
<通常書き込みモード>
ここで、通常書き込みモードについて説明する。図5は、通常書き込みモードの一例を示すフローチャート図である。図5に示すように、通常書き込みモードでは、ステップS10~S50の処理が行われる。なお、通常書き込みモード開始時には、メモリコントローラ30により書き込み対象のメモリセルMCは選択されており、対応するスイッチ回路48はオン状態であるものとする。例えば、ビット線BLごとに書き込み対象のメモリセルMCが選択され、選択されたメモリセルMCのビット線に対応するスイッチ回路48の第1のスイッチ48a、第2のスイッチ48bはオン状態であるものとする。
まず、ステップS10は、書き込み電流(第1の書き込み電流)の電流値を設定するステップである。書き込み電流設定回路45は、例えばメモリコントローラ30からの信号に基づき、書き込み電流の電流値をA1(以下では電流値A1とも称する)に設定する。具体的には、メモリコントローラ30は、設定予定の電流値A1に従って定電流源の電流を変更する。そして、メモリコントローラ30は、カレントミラー回路により電流値A1のミラー電流を生成し、生成したミラー電流を書き込み電流設定回路45へ供給する。この電流値A1は、例えば、ワースト条件のメモリセルMCに対する書き込み電流の下限値に対して十分なマージンを持つ値である。
ステップS20では、ステップS10で設定された電流値A1の書き込み電流による書き込み動作が行われる。具体的に述べると、メモリコントローラ30は、書き込み対象のメモリセルMCに対し、電流値A1の書き込み電流のパルスを印加する。
ステップS30では、パルスが印加されたメモリセルMCに対するベリファイが行われる。言い換えると、ビット線BLごとに判定処理(ベリファイ)が行われる。まず、ステップS20においてパルスが印加されたメモリセルMCに対する読み出し動作が行われる。その際、ベリファイ対象のメモリセルMCの各電極には、図4の読み出し動作に対応する電圧がそれぞれ印加される。そして、各センスアンプ47は、ビット線BLに流れる電流と、レファレンス信号REFの電流とを比較することにより、対応するメモリセルMCに対するベリファイを行う。センスアンプ47は、例えば、対応するビット線BLの電流がレファレンス電流REFより大きい場合、対応するメモリセルMCには所定のデータが書き込まれたと判定し、書き込み完了信号COMPを対応するスイッチ回路48のビットラッチ48cへ出力する。
ステップS40では、ステップS20においてパルスが印加されたすべてのメモリセルMCが、ベリファイをパスしたかどうかが判定される。メモリコントローラ30は、すべてのメモリセルMCがベリファイをパスしたと判定すると(Yes)、通常書き込みモードを終了する。一方、メモリコントローラ30は、少なくとも一部のメモリセルMCがベリファイをフェイルしたと判定すると(No)、ステップS50へ移行する。
ステップS50では、ベリファイをパスしたメモリセルMCに対応するスイッチ回路48がオフ状態に設定される。具体的には、ベリファイをパスした場合、対応するセンスアンプ47は、書き込み完了信号COMPを対応するスイッチ回路48へ出力する。そして、ビットラッチ48cは、書き込み完了信号COMPが入力されると、保持しているラッチデータを反転させ、反転させたラッチデータに基づきローレベルの信号を第2のスイッチ48bのゲート電極へ出力する。これにより、第2のスイッチ48bはオフ状態となる。このように、ベリファイをパスした場合、対応するスイッチ回路48はオフ状態となり、対応するメモリセルMCはマスクされ、追加のパルス印加及びベリファイが行われなくなる。
ステップS50の処理が完了すると、ステップS20以降の処理が再度行われる。再度のステップS20~S30では、直前のステップS30においてベリファイをフェイルしたメモリセルMC、すなわち、マスクされていないメモリセルMCに対して再度のパルス印加及びベリファイが行われる。このときの書き込み電流の電流値は、ステップS10で設定されたA1である。再度のステップS40において、すべてのメモリセルMCがベリファイをパスしたと判定されると(Yes)、通常書き込み動作が終了する。このように、すべてのメモリセルMCがベリファイをパスするまで、パルス印加(S20)、ベリファイ(S30)、ベリファイ判定(S40)、ビットラッチ反転(S50)の処理が繰り返し行われる。
なお、ステップS50の動作は、ステップS30に引き続いて行われてもよい。この場合、ステップS40において、すべてのメモリセルMCがベリファイをパスしたと判定したとき、対応するすべてのスイッチ回路48がオフ状態となる。
使用状況に応じて、メモリコントローラ30は、別グループのメモリセルMCを選択し、選択したメモリセルMCに対し通常書き込みモードでの書き込み動作を行ってもよいし、このような処理を繰り返し、全メモリセルMCに対し書き込み動作を行ってもよい。
<高速書き込みモード>
次に、高速書き込みモードについて説明する。図6は、高速書き込みモードの一例を示すフローチャート図である。図6に含まれる一部のステップは、図5と類似している。このため、図6の説明において、図5と重複する箇所については適宜省略する。
高速書き込みモードは、図6に示すように、ステップS01~S210の処理が行われる。これらのステップのうち、ステップS110~S160は、第1の書き込み動作であり、ステップS170~S210は、第2の書き込み動作である。
ステップS01は、書き込みモードの選択を行うステップである。例えば、メモリコントローラ30は、高速書き込みモード又は後述の低ノイズ書き込みモードのいずれかを選択する。ここでは、高速書き込みモードが選択されるものとする。
ステップS110は、書き込み電流(第2の書き込み電流)の電流値を設定するステップである。ステップS110はステップS10と類似しているので、主に相違点について説明する。メモリコントローラ30は、設定予定の電流値A2に従って定電流源の電流を変更する。そして、メモリコントローラ30は、カレントミラー回路により電流値A2のミラー電流を生成し、生成したミラー電流を書き込み電流設定回路45へ供給する。このように、書き込み電流の電流値A2が設定される。第2の書き込み電流の電流値A2は、第1の書き込み電流の電流値A1よりも小さい(A2<A1)。具体的には、メモリコントローラ30は、高速書き込みモードでは、通常書き込みモードと比較して、書き込み電流の電流値を1/2倍に設定する。
図7は、通常書き込みモードの書き込み電流と高速書き込みモードの書き込み電流とを比較する図である。図7において、横軸は書き込み電流の電流値、縦軸はメモリセルMC個数をそれぞれ示している。図7において、曲線G1は、通常書き込みモードにおけるメモリセルMC個数に対する書き込み電流の分布を示している。通常書き込みモードの書き込み電流は、設定電流値A1に対し、書込み電流の電流値A1が最も高いピークとなる分布となっている。
一方、曲線G2は、高速書き込みモードの第1の書き込み動作におけるメモリセルMC個数に対する書き込み電流の分布を示している。第1の書き込み動作の書き込み電流は、電流値A2をピークとした分布となっている。また、図7に示すように、第1の書き込み動作の書き込み電流の電流値A2は、ワースト条件のメモリセルMCに対する書き込み電流の下限値ALに近い。このため、書き込み電流の一部は、ワースト条件のメモリセルMCに対する書き込み電流の下限値ALよりも小さい電流値を持つ電流も含む場合がある。このような条件で書き込み動作が行われると、第1の書き込み動作において書き込みが完了しないおそれがあるが、このようなメモリセルMCには、後述する第2の書き込み動作が行われる。
ステップS115では、第1の書き込み動作により同時に書き込まれるメモリセルMCが選択される。例えば、メモリコントローラ30は、例えばビット線BLごとに選択される。ここで選択されるメモリセルMCの個数(第2の個数)は、通常書き込みモードにおいて選択されるメモリセルの個数(第1の個数)より大きい。例えば、第2の個数は、第1の個数の2倍の値である。すなわち、メモリコントローラ30は、高速書き込みモードでは、通常書き込みモードの2倍のメモリセルを選択する。
なお、ステップS110において設定される書き込み電流の電流値、及びステップS115において選択されるメモリセルMCの個数は、これに限定されるものではない。具体的に述べると、第2の個数と第2の書き込み電流の電流値との積が、第1の個数と第1の書き込み電流の電流値との積以下となるように、書き込み電流の電流値及びメモリセルMCの個数が設定される。これにより、チャージポンプ44の能力の範囲内で高速書き込み動作が実行可能となる。
ステップS120では、ステップS20と同様であり、ステップS115において選択された第2の個数のメモリセルMCに対して同時に、例えば電流値A2の書き込み電流のパルスが印加される。
ステップS130では、電流値A2の書き込み電流のパルスが印加されたメモリセルMCに対するベリファイが行われる。その他の処理については、ステップS30と同様であるので、説明は省略する。すなわち、第1の書き込み動作では、パルスが1回印加されるごとにセンスアンプ47による判定処理が行われる。
ステップS140では、ステップS120においてパルスが印加されたすべてのメモリセルMCが、ベリファイをパスしたかどうかが判定される。メモリコントローラ30は、すべてのメモリセルMCがベリファイをパスしたと判定すると(Yes)、高速書き込みモードを終了する。一方、メモリコントローラ30は、少なくとも一部のメモリセルMCがベリファイをフェイルしたと判定すると(No)、ステップS150へ移行する。
ステップS150では、ステップS50と同様の処理が行われる。すなわち、ベリファイをパスしたメモリセルMCはマスクされ、追加のパルス印加及びベリファイは行われなくなる。このように、第1の書き込み動作が行われるメモリセルMCのそれぞれに対応してスイッチ回路48が設けられ、センスアンプ47の判定結果に基づいて第2の書き込み動作の要否が切り換えられる。
ステップS160では、パルス印加が所定の回数(第1の回数;N1回)行われたかどうかが判定される。パルス印加回数がN1回より少ない場合(No)、ステップS120の処理が引き続き行われる。一方、パルス印加回数がN1回に達した場合(Yes)、ステップS170に移行し、第2の書き込み動作が引き続き行われる。すなわち、N1回のパルスが印加され、第1の書き込み動作が行われた後も、書き込み動作が完了していないメモリセルMCに対しては、第2の書き込み動作が引き続き行われることとなる。
ただし、第2の書き込み動作が行われるメモリセルMCの個数の割合は、第2の個数と比較すればごくわずかである。図7を参照して説明したように、ワースト条件のメモリセルMCに、書き込み電流の下限値ALよりも小さい電流値をもつ書き込み電流のパルスが印加された場合に、第2の書き込み動作が実行される。
ステップS170は、書き込み電流(第3の書き込み電流)の電流値を設定するステップである。ステップS170はステップS10,110と類似している。メモリコントローラ30は、第3の書き込み電流の電流値A3を、第2の書き込み電流の電流値A2よりも大きな値に設定する(A3>A2)。例えば、第3の書き込み電流の電流値A3は、第1の書き込み電流の電流値A1と同一に設定されてもよい(A3=A1)。この構成によれば、書き込み電流の設定に係る負荷が軽減され、回路規模の増大が抑えられる。
なお、ここでは、パルスが1回印加されるごとにベリファイが行われる例が示されているが、N1回パルスが印加されてからベリファイが行われてもよい。この構成によれば、センスアンプ47による判定処理及び読み出し動作の回数が削減されるので、第1の書き込み動作がより高速に行われる。
ステップS180では、第1の書き込み動作完了時、判定処理によりセンスアンプ47により書き込み動作が完了していないと判定されたメモリセルMCに対して同時に、例えば電流値A3の書き込み電流のパルスが印加される。ステップS180は、ステップS120等と類似している。
ステップS190では、電流値A3の書き込み電流のパルスが印加されたメモリセルMCに対するベリファイが行われる。ステップS190は、ステップS130と類似している。
ステップS200では、メモリセルMCがベリファイをパスしたかどうかが判定される。その際、メモリコントローラ30は、ステップS190においてパルスが印加されたメモリセルMCのみを判定対象とする。メモリコントローラ30は、すべてのメモリセルMCがベリファイをパスしたと判定すると(Yes)、高速書き込みモードを終了する。一方、メモリコントローラ30は、少なくとも一部のメモリセルMCがベリファイをフェイルしたと判定すると(No)、ステップS210へ移行する。
ステップS210は、ステップS150等と同様の処理が行われる。すなわち、ベリファイをパスしたメモリセルMCはマスクされ、追加のパルス印加及びベリファイは行われなくなる。
ステップS210の処理が完了すると、引き続き、ステップS180~S200の処理が再度行われる。再度のステップS180~S200の処理は、すべてのメモリセルMCがベリファイをパスするまで繰り返し行われる。なお、第2の書き込み動作では、第1の書き込み動作よりも書き込み電流が大きいので、1又は数回のパルス印加により書き込み動作が完了する場合がほとんどである。ただし、メモリセルMCの故障により書き込み動作が完了しない場合もあり得るので、パルス印加回数の上限が所定の回数に制限されてもよい。
<本実施の形態による主な効果>
本実施の形態によれば、高速書き込みモードでは、第2の個数のメモリセルMCに対して同時に、第2の書き込み電流による第1の書き込み動作が行われる。そして、第1の書き込み動作完了時、判定処理においてセンスアンプ47により書き込み動作が完了していないと判定されたメモリセルMCに対して同時に、第3の書き込み電流による第2の書き込み動作が行われる。
すなわち、第1の書き込み動作では、通常書き込み動作よりも電流値が小さい書き込み電流で、ほとんどのメモリセルMCに対する書き込み動作が完了し、第2の書き込み動作では、残りのわずかなメモリセルMCに対して電流値が大きい書き込み電流で書き込み動作が行われる。この構成によれば、スループットが向上させることができるので、ノイズの増大を抑えつつ、フラッシュメモリ40への書き込み速度を高速化することが可能となる。これにより、テスト時間が短縮され、テストコストが削減される。
また、本実施の形態によれば、第1の書き込み動作では、パルスが1回印加されるごとにセンスアンプ47による判定処理(ベリファイ)が行われる。この構成によれば、所定の回数(N1回)よりも少ない回数ですべてのメモリセルMCに対する書き込み動作が完了した場合、直ちに書き込み動作を停止することができ、より高速に書き込み動作を行うことが可能となる。
また、本実施の形態によれば、第2の個数と第2の書き込み電流の電流値との積が、第1の個数と第1の書き込み電流の電流値との積以下となるように、書き込み電流の電流値及びメモリセルMCの個数が設定される。これにより、高速書き込みモードにおけるピーク電流が、通常書き込みモードよりも少なくなるので、ノイズが低減される。これにより、OTA中のソフトウェアの動作を安定させることが可能となる。また、この構成によれば、チャージポンプ44の能力の範囲内で高速書き込み動作が実行可能となる。また、既存のチャージポンプ44を流用できるので、回路設計に要する工数が短縮される。
図8は、本発明の実施の形態1の効果を例示する図である。図8には、書き込み電流の電流値、選択されたメモリセルMCの個数、チャージポンプ44の能力、書き込み速度の各項目が、通常書き込みモード及び高速書き込みモードとを対比させて示されている。なお、図8の各数値は、通常書き込みモードに対する比率として示されている。すなわち、図8では、通常書き込みモードの各項目の値は「1」である。
図8では、高速書き込みモードの第1の書き込み動作において、書き込み電流が、通常書き込みモードの1/2倍(0.5)、同時書き込みされるメモリセルMCの個数が、通常書き込みモードの2倍の場合の数値が示されている。このとき、チャージポンプ44の能力は、通常書き込みモードとほぼ同じである。
一方、第2の書き込み動作では、書き込み電流の電流値は、通常書き込みモードと同じであるが、同時書き込みされるメモリセルMCの個数が、通常書き込みモードよりもはるかに少ない。このため、チャージポンプ44は、通常書き込みモードよりも非常に小さい能力で動作可能である。また、第2の書き込み動作では、パルス印加回数は、1~数回であるので、書き込み速度に与える影響はほとんどない。したがって、高速書き込みモードにおける書き込み速度は、通常書き込みモードの2倍である。
(実施の形態2)
次に、実施の形態について説明する。本実施の形態では、実施の形態1よりも低ノイズで書き込み動作を行うことが可能な半導体装置について説明する。
<低ノイズ書き込みモード>
図9は、低ノイズ書き込みモードの一例を示すフローチャート図である。図9に含まれる一部のステップは、図6と類似している。このため、図9の説明において、図6と重複する箇所については適宜省略する。
低ノイズ書き込みモードは、図9に示すように、ステップS01~S410の処理が行われる。これらのステップのうち、ステップS305~S360は、第3の書き込み動作であり、ステップS370~S410は、第4の書き込み動作である。ステップS01は、書き込みモードの選択を行うステップである。ここでは、低ノイズ書き込みモードが選択されるものとする。
ステップS305は、チャージポンプ44の能力を設定するステップである。チャージポンプ44の能力は、メモリセルMCへの書き込み電流、及び同時に書き込まれるメモリセルMCの個数により規定される値である。メモリコントローラ30は、低ノイズ書き込みモードでは、チャージポンプ44の能力を通常書き込みモードよりも低く設定する。具体的には、低ノイズ書き込みモードにおけるチャージポンプ44の能力を通常書き込みモードの1/2倍(0.5)や1/4倍(0.25)の値に設定する。
例えば、メモリコントローラ30は、チャージポンプ44に含まれるリングオシレータの周期や、チャージポンプ44の基数を切り換えることにより、チャージポンプ44の能力を設定する。
ステップS310書き込み電流(第4の書き込み電流)の電流値A4を設定するステップである。ステップS310はステップS110等と類似している。相違点は、チャージポンプ44の能力に基づき、書き込み電流が設定される点である。第4の書き込み電流の電流値A4は、第1の書き込み電流の電流値A1より小さい値に設定される(A4<A1)。
ステップS315では、第3の書き込み動作により同時に書き込まれるメモリセルMCが選択される。ステップ315において選択されるメモリセルMCの個数(第3の個数)は、チャージポンプ44の能力に基づいて設定される。例えば、第3の個数は、通常書き込みモードにおいて選択されるメモリセルMCの個数(第1の個数)以下である。この点、低ノイズ書き込みモードは、高速書き込みモードとは異なる。第4の書き込み電流の電流値A4及びメモリセルMCの第3の個数は、電流値A4と第3の個数との積がチャージポンプの能力を超えない範囲で設定される。なお、ステップS310~S315の順序は、状況に応じて入れ替わってもよい。
図10は、低ノイズ書き込みモードの具体例を示す図である。図10には、書き込み電流の電流値、選択されたメモリセルMCの個数、チャージポンプ44の能力、書き込み速度の各項目が、通常書き込みモード及び低ノイズ書き込みモードとを対比させて示されている。なお、図10の各数値は、通常書き込みモードに対する比率として示されている。すなわち、図10では、通常書き込みモードの各項目の値は「1」である。
図10の中段には、チャージポンプ44の能力が、通常書き込みモードの1/2倍(0.5)の値に設定された場合が示されている。このとき、書き込み電流の電流値は、例えば、通常書き込みモードの1/2倍(0.5)に設定される。また、同時書き込みされるメモリセルMCの個数は、通常書き込みモードと同数である。そして、電流値とメモリセルMCの個数との積は、0.5であり、チャージポンプ44の能力を超えない値となっている。
一方、図10の下段には、チャージポンプ44の能力が、通常書き込みモードの1/4倍(0.25)の値に設定された場合が示されている。このとき、書き込み電流の電流値は、例えば、通常書き込みモードの1/2倍(0.5)に設定される。また、同時書き込みされるメモリセルMCの個数は、通常書き込みモードの1/2倍(0.5)に設定される。そして、電流値とメモリセルMCの個数との積は、0.5であり、この場合もチャージポンプ44の能力を超えない値となっている。もちろん、個々に示された電流値とメモリセルMCの個数はあくまで一例であり、チャージポンプ44の能力を超えない範囲で任意に設定可能である。
ステップS320は、ステップS120等と同様であり、ステップS315において選択された第3の個数のメモリセルMCに対して同時に、例えば電流値A4の書き込み電流のパルスが印加される。
ステップS330~S340では、ステップS130~S140と同様の処理が行われる。ステップS340では、ステップS320においてパルスが印加されたすべてのメモリセルMCがベリファイをパスしたと判定されると(Yes)、低ノイズ書き込みモードが終了する。一方、少なくとも一部のメモリセルMCがベリファイをフェイルしたと判定されると(No)、ステップS350の処理が行われる。
ステップS350~S360では、ステップS150~S160と同様の処理が行われる。ステップS360において判定されるパルス印加回数(第2の回数)N2は、高速書き込みモードにおける第1の回数と同数でもよいし、これと異なる値でもよい。
ステップS370は、書き込み電流(第5の書き込み電流)の電流値A5を設定するステップである。ステップS370はステップS170等と類似している。メモリコントローラ30は、第5の書き込み電流の電流値A5を、第4の書き込み電流の電流値A4よりも大きな値に設定する(A5>A4)。第5の書き込み電流の電流値A5は、例えば図10に示すように、第1の書き込み電流の電流値A1と同一の値に設定されてもよい(A5=A1)。この構成によれば、書き込み電流の設定に係る負荷が軽減され、回路規模の増大が抑えられる。
なお、第4の書き込み動作においてほとんどのメモリセルMCはベリファイをパスするので、第3の書き込み動作完了時、判定処理においてセンスアンプ47により書き込み動作が完了していないと判断されたメモリセルMCの個数はごくわずかである。したがって、第5の書き込み電流の電流値A5をA1と同じ値に設定しても、チャージポンプ44の能力を超えることはない。
ステップS380は、ステップS180等と同様であり、第3の書き込み動作完了時、判定処理によりセンスアンプ47により書き込み動作が完了していないと判定されたメモリセルMCに対して同時に、例えば電流値A5の書き込み電流のパルスが印加される。
ステップS390~S400では、ステップS190~S200等と同様の処理が行われる。ステップS400では、ステップS390において、パルスが印加されたすべてのメモリセルMCがベリファイをパスしたと判定されると(Yes)、低ノイズ書き込みモードが終了する。一方、少なくとも一部のメモリセルMCがベリファイをフェイルしたと判定されると(No)、ステップS410の処理が行われる。ステップS410では、ステップS210等と同様の処理が行われる。
本実施の形態によれば、高速書き込みモードよりもさらにノイズを低減させて書き込み動作を行うことが可能である。
なお、すでに述べたように、第3の書き込み動作において選択されるメモリセルMCの個数は、第1の個数以下であるとしている。ただし、チャージポンプ44の能力を超えなければ、このメモリセルMCの個数は第1の個数より大きい値に設定されても構わない。この場合、書き込み速度を向上させつつ、ノイズをさらに低減させた書き込み動作が行われる。
(実施の形態3)
次に、実施の形態3について説明する。本実施の形態では、低電圧書き込みモードについて説明する。低電圧書き込みモードでは、メモリセルMCの閾値電圧及び書き込み電流の電流値を切り換えながら書き込み動作が行われる。
<低電圧書き込みモード>
図11は、低電圧書き込みモードの一例を示すフローチャート図である。図11に示すように、低電圧書き込みモードでは、ステップS510~S570の処理が行われる。図12は、低電圧書き込みモードにおける書き込み電流と閾値電圧との関係を示す図である。図12において、横軸はメモリセルMCの閾値電圧、縦軸はメモリセルMCの個数をそれぞれ示している。なお、図12における曲線G10は、書き込み動作開始前の消去状態におけるメモリセルMCの閾値電圧の分布を示している。図13は、低電圧書き込みモードにおけるベリファイ結果の一覧を示す図である。
ステップS510は、書き込み電圧の電流値を初期電流値に設定するステップである。ステップS510は、ステップS110等と類似している。ステップS515は、メモリセルMCの閾値電圧を初期閾値電圧(例えばV1)に設定するステップである。メモリコントローラ30は、例えば、閾値電圧とメモリセルMCのゲート電圧(あるいはゲート電流)とを対応させる閾値対応情報を内部に格納し、閾値対応情報に基づき、初期閾値に対応する閾値設定信号をチャージポンプ44へ出力する。そして、チャージポンプ44は、閾値設定信号に基づき、初期閾値に対応する電圧(あるいは電流)をゲート電極へ供給する。なお、閾値対応情報は、フラッシュメモリ40内のプログラム等の格納領域に格納されてもよい。
ステップS520は、ステップ510において設定された電流値の書き込み電流のパルスが、選択されたメモリセルMCにそれぞれ印加される。ステップS520は、ステップS120等と類似している。なお、今回は、最初のパルス印加であるので、初期電流値の書き込み電流のパルスがメモリセルMCに印加される。
ステップS520において、パルスがメモリセルMCに印加される回数は、複数回、例えば高速書き込みモードにおける第1の回数や、低ノイズ書き込みモードにおける第2の回数等の十分な回数であることが好ましい。パルスの印加回数が1又は数回では、書き込みが不十分となり、書き込み電流の電流値の上昇を招き、本実施の形態の目的としている低電流での書き込みを達成できなくなるおそれが生じるからである。
ステップS530~S540は、ステップS130~140と類似している。ステップS140において、すべての選択したメモリセルMCが、ベリファイをパスしたと判定された場合には(Yes)、ステップS550の処理が行われる。例えば、パルスP1が印加されると、メモリセルMCの閾値分布は、図12のように、消去状態の曲線G10から曲線G11となる。曲線G11について検討すると、メモリセルMCの閾値電圧の最小値は、初期閾値電圧V1よりも大きい。そうすると、図13に示すように、すべてのメモリセルMCは、ベリファイをパスする。
ステップS550は、現在の閾値電圧が、最終的に書き込み動作が完了したと判定される最終閾値電圧PVであるかどうかが判定される。現在の閾値電圧はV1であるので、メモリコントローラ30は、現在の閾値電圧は、PVではないと判定し(No)、ステップS570の処理が実行される。
ステップS570は、メモリセルMCの閾値電圧を再設定するステップである。ステップS570は、ステップS515と類似している。今回のステップS570では、閾値電圧が、初期閾値電圧より高い閾値電圧(例えばV2)に設定される。そして、ステップS520~S540の処理が再度行われる。なお、このとき、メモリセルMCに印加されるパルスは、電流値が再設定されていないのでP1である。図12に示すように、メモリセルMCの閾値電圧の最小値は、閾値電圧V2より大きい。したがって、図13に示すように、今回もすべてのメモリセルMCは、ベリファイをパスする(Yes)。そして、今回のステップS550においても、閾値電圧V2は、最終閾値電圧PVではないと判定され(No)、ステップS570の処理が実行される。
ステップS570において、閾値電圧が、例えば、V2より高いV3に設定されたのち、ステップS520~S540の処理が行われる。ところが、閾値電圧V3は、メモリセルMCの閾値電圧の最小値よりも高くなっている。このため、今回のステップS540では、図13にも示すように、少なくとも一部のメモリセルMCは、ベリファイをフェイルし(No)、ステップS560の処理が行われる。
ステップS560は、書き込み電流の電流値の再設定を行うステップである。ステップS560は、ステップS510等と類似している。今回のステップS560では、書き込み電流の電流値は、例えば、初期電流値より大きい値に切り換えられる。そして、ステップS520~S540の処理が再度行われる。今回のステップS520では、直前のステップS560において設定された電流値をもつ書き込み電流のパルスP2がメモリセルMCに印加される。
例えば、パルスP2が印加されると、メモリセルMCの閾値分布は、図12のように、G11から曲線G12となる。曲線G12について検討すると、メモリセルMCの閾値電圧の最小値は、閾値電圧V3よりも小さい。したがって、図13に示すように、今回のステップS540においても、少なくとも一部のメモリセルMCは、ベリファイをフェイルする(No)。
今回のステップS560では、書き込み電流の電流値が、現在の電流値より大きい値に切り換えられる。そして、ステップS520~ステップS540に処理が再度行われる。今回のステップS520では、直前のステップS560において設定された電流値をもつ書き込み電流のパルスP3がメモリセルMCに印加される。
例えば、パルスP3が印加されると、メモリセルMCの閾値分布は、図12のように、G12から曲線G13となる。曲線G13について検討すると、メモリセルMCの閾値電圧の最小値は、閾値電圧V3よりも大きい。したがって、図13に示すように、今回のステップS540では、すべてのメモリセルMCは、ベリファイをパスしたと判定される(Yes)。
なお、図12に示すように、パルスP3が印加されたとき、メモリセルMCの閾値電圧の最小値は、閾値電圧V4、及び最終閾値電圧PVよりも大きい。このため、この後は、閾値電圧がPVに達するまで、ステップS550、S570、S520~S540の処理が繰り返し行われる。そして、最後のステップS550では、閾値電圧がPVであると判定され(Yes)、低電圧書き込みモードが終了する。
本実施の形態によれば、メモリセルMCに対するベリファイの結果をみながら、閾値電圧及び書き込み電流の電流値を初期値から徐々に上げていくことで、最終閾値電圧PVにおける書き込み動作が行われる。すでに述べた実施の形態では、当初から、最終閾値電圧PVにおいて書き込み可能な電流量をもつパルスをメモリセルMCに印加しなければならないが、本実施の形態では、書き込み電流を少ない量から徐々に上げながらメモリセルMCへの書き込み動作が行われる。
この構成によれば、低電圧の状態から効率的に書き込み動作を行うことができ、書き込み動作に係る消費電力が抑制される。また、消費電流が少なくなることから、ノイズを低減させることも可能となる。
なお、本実施の形態では、例えば、閾値電圧がPVに達していなくとも、所定の閾値電圧に達するまで書き込み動作を行った後、一時的に書き込み動作を中断することにより、OTA中の書き込み動作を高速化させてもよい。そして、例えばイグニッションオフになると、書き込み動作を再開し、閾値電圧がPVに達するまで書き込み動作を行うようにしてもよい。
また、本実施の形態では、ステップS570において閾値電圧が変更された後、メモリセルMCに対してパルスが印加されているが、閾値電圧が再設定された後に行われるパルス印加は適宜省略されてもよい。これにより、書き込み速度が高速化される。
(実施の形態4)
次に、実施の形態4について説明する。本実施の形態では、最適な書き込み電流を得るための方法について説明する。図14は、最適な書き込み電流を得る方法を説明する図である。図14において、横軸はメモリセルMCの閾値電圧、縦軸はメモリセルMCの個数をそれぞれ示している。図14における曲線G20は、書き込み動作開始前の消去状態におけるメモリセルMCの閾値電圧の分布を示している。
メモリコントローラ30は、メモリセルMCの閾値電圧を最終閾値電圧PVに設定する。閾値電圧の設定処理は、すでに述べたステップS515やS570と類似している。また、メモリコントローラ30は、書き込み電流の最初の電流値を設定する。このときの電流値は、例えば、最終閾値電圧PVより小さい閾値電圧において書き込み可能な電流値に設定される。具体的には、最初の電流値は、実施の形態3で述べた初期電流値でもよいし、初期電流値より大きくてもよい。この処理は、例えば、ステップS510やS560と類似している。
そして、メモリコントローラ30は、最初の電流値をもつ書き込み電流のパルス(例えばP11)をメモリセルMCに印加し、各メモリセルの閾値電圧を測定する。例えば、メモリコントローラ30は、各センスアンプ47に供給されるレファレンス信号REFの電流値(あるいは電圧値)を切り換えながら、パルスP11が印加されたメモリセルMCの閾値電圧を測定する。このように、メモリコントローラ30は、最初の電流値における複数のメモリセルMCの閾値電圧の分布(例えばG21)を取得する。
メモリコントローラ30は、書き込み電流の電流値を複数回切り換えながら、メモリセルMCに対しパルス(例えばP12,P13)を印加し、それぞれの電流値における複数のメモリセルMCの閾値電圧の分布(例えばG22,G23)を取得する。
その際、メモリコントローラ30は、最終閾値電圧より小さい閾値電圧において書き込み可能な電流値から、最終閾値電圧より大きい閾値電圧において書き込み可能な電流値まで、書き込み電流の電流値を順次高くする。図14を参照すると、パルスP11は、最終閾値電圧より小さい閾値電圧において書き込み可能な電流値をもつ書き込み電流のパルスである。そして、パルスP12,P13は、最終閾値電圧より大きい閾値電圧において書き込み可能な電流値をもつ書き込み電流のパルスである。
図14によれば、パルスP12が印加されたときの分布G22をみると、閾値電圧の最小値が最終閾値電圧PVより小さく、かつ最終閾値電圧PVに近い値となっている。パルスP12を印加して書き込み動作を行えば、消費電流を抑えつつ、ほとんどのメモリセルMCへの書き込み動作が完了する。したがって、図14によれば、パルスP12に対応する書き込み電流が、最適な書き込み電流であることが分かる。
図14では、3種類のパルスが印加されたときの閾値電圧の分布が示されているが、さらに多種類のパルスが印加されたときの閾値電圧の分布が取得されてもよい。
本実施の形態によれば、電流値が異なる複数種類のパルスが印加されたときの閾値電圧の分布が取得される。この構成によれば、最適な書き込み電流を取得することができ、書き込み電流を低減させ、ノイズを低減させることが可能となる。
ここまで、例えば、車載用半導体装置としてCPU10等を備えた構成について説明してきたが、フラッシュメモリ40及びメモリコントローラ30のみで、半導体記憶装置として構成されてもよい。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
1…半導体装置、10…CPU、30…メモリコントローラ、40…フラッシュメモリ、41…メモリアレイ、44…チャージポンプ、47…センスアンプ、48…スイッチ回路、48c…ビットラッチ、MC…メモリセル

Claims (17)

  1. 複数のメモリセルと、
    前記複数のメモリセルを制御するメモリコントローラと、
    チャージポンプと、
    前記メモリセルに対する書き込み動作が完了したかどうかの判定処理を行うセンスアンプと、
    を備え、
    前記メモリコントローラは、第1の個数の前記メモリセルに対して同時に、第1の書き込み電流による書き込み動作を行う通常書き込みモードに対し、高速書き込みモードでは、前記第1の個数より多い第2の個数の前記メモリセルに対して同時に、前記第1の書き込み電流より電流値が小さい第2の書き込み電流による第1の書き込み動作を行い、前記第1の書き込み動作完了時、前記判定処理において前記センスアンプにより書き込み動作が完了していないと判定された前記メモリセルに対して同時に、前記第2の書き込み電流よりも電流値が大きい第3の書き込み電流による第2の書き込み動作を行い、
    前記メモリコントローラは、低ノイズ書き込みモードでは、前記メモリセルへの書き込み電流、及び同時に書き込まれる前記メモリセルの個数により規定される前記チャージポンプの能力を前記通常書き込みモードよりも低く設定し、設定された前記能力を超えない範囲で、前記第1の個数以下の第3の個数のメモリセルに対して同時に、前記第1の書き込み電流より電流値が小さい第4の書き込み電流による書き込み動作を同時に行う第3の書き込み動作を行い、前記第3の書き込み動作完了時、前記判定処理において前記センスアンプにより書き込み動作が完了していないと判断された前記メモリセルに対し前記第4の書き込み電流より電流値が大きい第5の書き込み電流による書き込み動作を行う、
    半導体装置。
  2. 複数のメモリセルと、
    前記複数のメモリセルを制御するメモリコントローラと、
    チャージポンプと、
    前記メモリセルに対する書き込み動作が完了したかどうかの判定処理を行うセンスアンプと、
    を備え、
    前記メモリコントローラは、第1の個数の前記メモリセルに対して同時に、第1の書き込み電流による書き込み動作を行う通常書き込みモードに対し、高速書き込みモードでは、前記第1の個数より多い第2の個数の前記メモリセルに対して同時に、前記第1の書き込み電流より電流値が小さい第2の書き込み電流による第1の書き込み動作を行い、前記第1の書き込み動作完了時、前記判定処理において前記センスアンプにより書き込み動作が完了していないと判定された前記メモリセルに対して同時に、前記第2の書き込み電流よりも電流値が大きい第3の書き込み電流による第2の書き込み動作を行い、
    前記メモリコントローラは、低電圧書き込みモードでは、前記メモリセルの閾値電圧を初期閾値電圧に設定し、選択した複数の前記メモリセルに対して同時に、電流値が初期電流値の書き込み電流による書き込み動作を行い、すべての前記選択した複数のメモリセルが、前記判定処理において前記センスアンプにより書き込み動作が完了したと判定された場合には、前記メモリセルの閾値電圧を前記初期閾値電圧より高い値に設定し、少なくとも一部の前記メモリセルが、前記判定処理において前記センスアンプにより書き込み動作が完了していないと判定された場合には、書き込み電流の電流値を前記初期電流値より大きい値に切り換えながら、最終的に書き込み動作が完了したと判定される最終閾値電圧において、すべての前記選択した複数のメモリセルが、前記判定処理において前記センスアンプにより書き込み動作が完了したと判定されるまで書き込み動作を行う、
    半導体装置。
  3. 請求項1又は2に記載の半導体装置において、
    前記第1の書き込み動作では、前記メモリコントローラは、前記第2の書き込み電流のパルスを第1の回数印加する、
    半導体装置。
  4. 請求項に記載の半導体装置において、
    前記第1の書き込み動作では、前記パルスが1回印加されるごとに前記センスアンプによる前記判定処理が行われる、
    半導体装置。
  5. 請求項1又は2に記載の半導体装置において、
    前記第2の個数と前記第2の書き込み電流の電流値との積は、前記第1の個数と前記第1の書き込み電流の電流値との積以下である、
    半導体装置。
  6. 請求項に記載の半導体装置において、
    前記第2の個数は、前記第1の個数の2倍の値であり、前記第2の書き込み電流の電流値は、前記第1の書き込み電流の電流値の1/2倍の値である、
    半導体装置。
  7. 請求項1又は2に記載の半導体装置において、
    前記第3の書き込み電流の電流値は、前記第1の書き込み電流の電流値と同一である、
    半導体装置。
  8. 請求項1又は2に記載の半導体装置において、
    前記第1の書き込み動作が行われる前記メモリセルのそれぞれに対応して設けられ、前記センスアンプの判定結果に基づいて前記第2の書き込み動作の要否を切り換えるスイッチ回路を備えている、
    半導体装置。
  9. 請求項に記載の半導体装置において、
    前記センスアンプ及び前記スイッチ回路は、ビット線ごとに設けられている、
    半導体装置。
  10. 請求項に記載の半導体装置において、
    前記第3の書き込み動作では、前記メモリコントローラは、前記第4の書き込み電流のパルスを第2の回数印加する、
    半導体装置。
  11. 請求項10に記載の半導体装置において、
    前記第3の書き込み動作では、前記パルスが1回印加されるごとに前記センスアンプによる前記判定処理が行われる、
    半導体装置。
  12. 請求項に記載の半導体装置において、
    前記メモリコントローラは、前記メモリセルの閾値電圧を前記最終閾値電圧に設定し、前記書き込み電流の前記電流値を複数回切り換え、それぞれの前記電流値における複数の前記メモリセルの閾値電圧の分布を取得する、
    半導体装置。
  13. 請求項12に記載の半導体装置において、
    前記メモリコントローラは、前記最終閾値電圧より小さい閾値電圧において書き込み可能な電流値から、前記最終閾値電圧より大きい閾値電圧において書き込み可能な電流値まで、前記書き込み電流の前記電流値を順次高くする、
    半導体装置。
  14. 請求項1又は2に記載の半導体装置において、
    前記半導体装置は、不揮発性メモリである、
    半導体装置。
  15. 請求項14に記載の半導体装置において、
    前記不揮発性メモリは、フラッシュメモリである、
    半導体装置。
  16. 請求項1又は2に記載の半導体装置において、
    CPUを備え、
    前記メモリコントローラは、前記CPUにより制御される、
    半導体装置。
  17. 請求項16に記載の半導体装置において、
    前記半導体装置は、車載用半導体装置である、
    半導体装置。
JP2018202741A 2018-10-29 2018-10-29 半導体装置 Active JP7122936B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018202741A JP7122936B2 (ja) 2018-10-29 2018-10-29 半導体装置
CN201910823753.5A CN111105831B (zh) 2018-10-29 2019-09-02 半导体器件
US16/576,442 US10896737B2 (en) 2018-10-29 2019-09-19 Semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018202741A JP7122936B2 (ja) 2018-10-29 2018-10-29 半導体装置

Publications (2)

Publication Number Publication Date
JP2020071889A JP2020071889A (ja) 2020-05-07
JP7122936B2 true JP7122936B2 (ja) 2022-08-22

Family

ID=70328792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018202741A Active JP7122936B2 (ja) 2018-10-29 2018-10-29 半導体装置

Country Status (3)

Country Link
US (1) US10896737B2 (ja)
JP (1) JP7122936B2 (ja)
CN (1) CN111105831B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11763910B2 (en) * 2021-10-20 2023-09-19 Micron Technology, Inc. Multi-command memory accesses

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007213664A (ja) 2006-02-08 2007-08-23 Nec Electronics Corp 不揮発性半導体記憶装置、及び不揮発性半導体記憶装置の書込み方法
JP2012164409A (ja) 2011-02-09 2012-08-30 Toshiba Corp 不揮発性半導体メモリ

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960000619B1 (ko) * 1991-12-27 1996-01-10 후지쓰 가부시끼가이샤 일괄소거형의 불휘발성 반도체 기억장치 및 그의 구동제어회로
JP3930074B2 (ja) * 1996-09-30 2007-06-13 株式会社ルネサステクノロジ 半導体集積回路及びデータ処理システム
US6222779B1 (en) * 1998-04-24 2001-04-24 Kabushiki Kaisha Toshiba Semiconductor storage device with automatic write/erase function
JP3488631B2 (ja) * 1998-04-24 2004-01-19 株式会社東芝 半導体記憶装置
JP3905979B2 (ja) * 1998-06-03 2007-04-18 株式会社東芝 不揮発性半導体メモリ
JP3138688B2 (ja) * 1998-07-24 2001-02-26 日本電気アイシーマイコンシステム株式会社 不揮発性半導体記憶装置及びプログラムベリファイ方法
JP4050555B2 (ja) * 2002-05-29 2008-02-20 株式会社東芝 不揮発性半導体記憶装置およびそのデータ書き込み方法
JP3984209B2 (ja) * 2003-07-31 2007-10-03 株式会社東芝 半導体記憶装置
JP4262033B2 (ja) * 2003-08-27 2009-05-13 株式会社ルネサステクノロジ 半導体集積回路
JP4551284B2 (ja) * 2005-06-22 2010-09-22 シャープ株式会社 不揮発性半導体記憶装置
JP2008027522A (ja) * 2006-07-21 2008-02-07 Renesas Technology Corp 半導体装置
US8541843B2 (en) * 2008-08-14 2013-09-24 Nantero Inc. Nonvolatile nanotube programmable logic devices and a nonvolatile nanotube field programmable gate array using same
CN102667947B (zh) * 2010-09-28 2014-07-23 松下电器产业株式会社 电阻变化型非易失性存储元件的形成方法
JP5330421B2 (ja) * 2011-02-01 2013-10-30 株式会社東芝 不揮発性半導体記憶装置
US20150262679A1 (en) * 2014-03-13 2015-09-17 Kabushiki Kaisha Toshiba Semiconductor memory device and method of controlling the same
JP6402072B2 (ja) * 2015-06-24 2018-10-10 ルネサスエレクトロニクス株式会社 半導体不揮発性記憶装置及びその動作プログラム
US10340005B2 (en) * 2015-07-29 2019-07-02 Nantero, Inc. Resistive change element arrays with in situ initialization
US10762961B2 (en) * 2015-07-29 2020-09-01 Nantero, Inc. Resistive change element arrays using a reference line
JP2018147543A (ja) * 2017-03-09 2018-09-20 東芝メモリ株式会社 不揮発性半導体記憶装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007213664A (ja) 2006-02-08 2007-08-23 Nec Electronics Corp 不揮発性半導体記憶装置、及び不揮発性半導体記憶装置の書込み方法
JP2012164409A (ja) 2011-02-09 2012-08-30 Toshiba Corp 不揮発性半導体メモリ

Also Published As

Publication number Publication date
US10896737B2 (en) 2021-01-19
CN111105831B (zh) 2024-11-26
CN111105831A (zh) 2020-05-05
JP2020071889A (ja) 2020-05-07
US20200135285A1 (en) 2020-04-30

Similar Documents

Publication Publication Date Title
CN100446121C (zh) 半导体存储装置及其制造方法
US6963501B2 (en) Nonvolatile memory
KR100805840B1 (ko) 캐시를 이용한 플래시 메모리 장치 및 그것의 프로그램방법
US20080137435A1 (en) Flash memory devices that support incremental step-pulse programming using nonuniform verify time intervals
US7907446B2 (en) Nonvolatile semiconductor memory device and method of driving the same
US7415568B2 (en) Method and apparatus for initialization control in a non-volatile memory device
JP2006228394A (ja) 半導体記憶装置のデータ書き込み方法
JP2018170057A (ja) 半導体記憶装置及びそのデータ消去制御方法
JPH09320285A (ja) 不揮発性半導体メモリ
KR101285576B1 (ko) 비휘발성 메모리를 프로그래밍/소거하기 위한 방법 및 장치
JP2006351168A (ja) フラッシュメモリ装置及びその消去方法
JP6741811B1 (ja) 不揮発性半導体記憶装置の消去制御回路及び方法、並びに不揮発性半導体記憶装置
KR20090003239A (ko) 제어되는 프로그램/삭제를 갖는 비휘발성 메모리
JP2007323716A (ja) 半導体集積回路
US7260016B2 (en) Non-volatile semiconductor memory device and writing method therefor
KR20000023501A (ko) 비휘발성 메모리 장치 및 그의 검사 방법
KR100706245B1 (ko) 비트 스캔 방식을 사용한 노어 플래시 메모리 장치 및그것의 프로그램 방법
JP4181363B2 (ja) 不揮発性半導体記憶装置及びデータ書き込み方法
KR20080104838A (ko) 플래시 메모리 장치에서의 e - fuse 데이터 독출 방법
JP7122936B2 (ja) 半導体装置
KR102019567B1 (ko) 반도체 기억장치 및 이의 동작 설정 방법
KR100908662B1 (ko) 불휘발성반도체기억장치
JP5264047B2 (ja) 半導体メモリ装置の制御情報をプログラムするための方法と装置
JP2007164892A (ja) 不揮発性半導体記憶装置のしきい値読み出し方法及び不揮発性半導体記憶装置
US11868654B2 (en) Semiconductor device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220304

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: 20220712

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220809

R150 Certificate of patent or registration of utility model

Ref document number: 7122936

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150