JP2016054017A - 半導体記憶装置 - Google Patents
半導体記憶装置 Download PDFInfo
- Publication number
- JP2016054017A JP2016054017A JP2014180577A JP2014180577A JP2016054017A JP 2016054017 A JP2016054017 A JP 2016054017A JP 2014180577 A JP2014180577 A JP 2014180577A JP 2014180577 A JP2014180577 A JP 2014180577A JP 2016054017 A JP2016054017 A JP 2016054017A
- Authority
- JP
- Japan
- Prior art keywords
- read
- data
- control circuit
- memory
- level
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/30—Power supply circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/08—Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/283—Plural cache memories
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
- G11C11/5635—Erasing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5642—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C2029/1202—Word line control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
【課題】 データの信頼性がより高い半導体記憶装置を提供する。【解決手段】 半導体記憶装置100は、メモリセルアレイ111と、複数のワード線と、制御回路120とを含む。メモリセルアレイ111は、複数のメモリストリング114を備え、複数のメモリストリング114の各々は直列接続された複数のメモリセルを有する。複数のワード線は、複数のメモリストリング114に共通接続される。制御回路120は、複数のワード線の各々に接続された複数のメモリセルからなるページに対して書き込み動作及び読み出し動作を制御する。制御回路120は、メモリストリング114に流れるセル電流を測定し、セル電流の測定結果に基づいて、ワード線に印加される書き込み電圧を補正する。【選択図】 図13
Description
本実施形態は、半導体記憶装置に関する。
メモリセルが三次元に配列されたNAND型フラッシュメモリが知られている。
実施形態は、データの信頼性がより高い半導体記憶装置を提供する。
実施形態に係る半導体記憶装置は、複数のメモリストリングを備え、前記複数のメモリストリングの各々は直列接続された複数のメモリセルを有する、メモリセルアレイと、前記複数のメモリストリングに共通接続された複数のワード線と、前記複数のワード線の各々に接続された複数のメモリセルからなるページに対して書き込み動作及び読み出し動作を制御する制御回路とを具備する。前記制御回路は、メモリストリングに流れるセル電流を測定し、セル電流の測定結果に基づいて、ワード線に印加される書き込み電圧を補正する。
実施形態に係る半導体記憶装置は、複数のページを備え、前記複数のページの各々は複数のメモリセルを有する、メモリセルアレイと、前記複数のページにそれぞれ接続された複数のワード線と、ページに対して書き込み動作及び読み出し動作を制御する制御回路とを具備する。前記制御回路は、前記ページの一部であるサンプリング領域に書き込むべき第1レベルのビット数をカウントし、前記カウント値をフラグデータとして前記ページの冗長領域に書き込み、第1読み出しにおいて、前記冗長領域から前記フラグデータを読み出すと共に、前記サンプリング領域から読み出された第1レベルのビット数をカウントし、第2読み出しにおいて、前記フラグデータと前記第1読み出しによるカウント値との差に基づいて、ワード線に印加される読み出し電圧を補正する。
以下、実施形態について図面を参照して説明する。ただし、図面は模式的または概念的なものであり、各図面の寸法および比率などは必ずしも現実のものと同一とは限らない。以下に示す幾つかの実施形態は、本発明の技術思想を具体化するための装置および方法を例示したものであって、構成部品の形状、構造、配置などによって、本発明の技術思想が特定されるものではない。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
半導体記憶装置は、データを電気的に書き換え可能な不揮発性半導体メモリであり、以下の実施形態では、半導体記憶装置としてNAND型フラッシュメモリを例に挙げて説明する。また、NAND型フラッシュメモリとして、メモリセルが半導体基板上に積層された三次元積層型NAND型フラッシュメモリを例に挙げて説明する。
[第1実施形態]
[1−1] メモリシステムの構成
まず、本実施形態に係る半導体記憶装置を含むメモリシステムの構成について説明する。図1は、本実施形態に係るメモリシステム300のブロック図である。メモリシステム300は、NAND型フラッシュメモリ100、及びメモリコントローラ200を備える。メモリシステム300の例としては、SDTMカードのようなメモリカードや、SSD(Solid State Drive)等が挙げられる。
[1−1] メモリシステムの構成
まず、本実施形態に係る半導体記憶装置を含むメモリシステムの構成について説明する。図1は、本実施形態に係るメモリシステム300のブロック図である。メモリシステム300は、NAND型フラッシュメモリ100、及びメモリコントローラ200を備える。メモリシステム300の例としては、SDTMカードのようなメモリカードや、SSD(Solid State Drive)等が挙げられる。
NAND型フラッシュメモリ100は、複数のメモリセルを備え、データを不揮発に記憶する。NAND型フラッシュメモリの構成の詳細は後述する。
メモリコントローラ200は、ホスト機器400からの命令に応答して、NAND型フラッシュメモリ100に対して書き込み、読み出し、及び消去等を命令する。また、メモリコントローラ200は、NAND型フラッシュメモリ100のメモリ空間を管理する。メモリコントローラ200は、ホストインターフェース回路(Host I/F)210、CPU(Central Processing unit)220、ROM(Read Only Memory)230、RAM(Random Access Memory)240、ECC(Error Checking and Correcting)回路250、及びNANDインターフェース回路(NAND I/F)260を備える。
ホストインターフェース回路210は、コントローラバスを介してホスト機器400と接続され、ホスト機器400との間でインターフェース処理を行う。また、ホストインターフェース回路210は、ホスト機器400との間で命令及びデータの送受信を行う。
CPU220は、メモリコントローラ200全体の動作を制御する。例えば、CPU220は、ホスト機器400から書き込み命令を受けた場合に、それに応答して、NANDインターフェースに基づく書き込み命令を発行する。読み出し及び消去の際も同様である。また、CPU220は、ウェアレベリング等、NAND型フラッシュメモリ100を管理するための様々な処理を実行する。
ROM230は、CPU220によって使用されるファームウェア等を格納する。RAM240は、CPU220の作業エリアとして使用され、ROM230からロードされたファームウェアや、CPU220が作成した各種テーブルを格納する。また、RAM240は、データバッファとしても使用され、ホスト機器400から送られたデータ、及びNAND型フラッシュメモリ100から送られたデータ等を一時的に保持する。
ECC回路250は、データの書き込み時には、書き込みデータに対してエラー訂正符号を生成し、このエラー訂正符号を書き込みデータに付加してNANDインターフェース回路260に送る。また、ECC回路250は、データの読み出し時には、読み出しデータに対して読み出しデータに含まれるエラー訂正符号を用いてエラー検出及びエラー訂正を行う。なお、ECC回路250は、NANDインターフェース回路260内に設けるようにしても良い。
NANDインターフェース回路260は、NANDバスを介してNAND型フラッシュメモリ100と接続され、NAND型フラッシュメモリ100との間でインターフェース処理を行う。また、NANDインターフェース回路260は、NAND型フラッシュメモリ100との間で命令及びデータの送受信を行う。
[1−1−1] NAND型フラッシュメモリ100の構成
次に、NAND型フラッシュメモリ100の構成について説明する。図2は、本実施形態に係るNAND型フラッシュメモリ100のブロック図である。NAND型フラッシュメモリ100は、メモリセルアレイ111、ロウデコーダ(R/D)112、センスアンプ部113、ページバッファ115、カラムデコーダ116、ドライバ117、電圧発生回路(チャージポンプ)118、入出力回路119、制御回路120、アドレス・コマンドレジスタ121、及びレジスタ122を備える。
次に、NAND型フラッシュメモリ100の構成について説明する。図2は、本実施形態に係るNAND型フラッシュメモリ100のブロック図である。NAND型フラッシュメモリ100は、メモリセルアレイ111、ロウデコーダ(R/D)112、センスアンプ部113、ページバッファ115、カラムデコーダ116、ドライバ117、電圧発生回路(チャージポンプ)118、入出力回路119、制御回路120、アドレス・コマンドレジスタ121、及びレジスタ122を備える。
メモリセルアレイ111は、それぞれがワード線及びビット線に関連付けられた不揮発性メモリセルの集合である複数のブロックBLKを備える。図2では、一例として、4個のブロックBLK0〜BLK3を示している。ブロックBLKは、データの消去単位となり、同一ブロックBLK内のデータは一括して消去される。ブロックBLKの各々は、メモリセルが直列接続されたNANDストリング114の集合である複数のストリングユニットSUを備える。図2では、一例として、4個のストリングユニットSU0〜SU3を示している。もちろん、ブロックBLKの数や、1ブロックBLK内のストリングユニットSUの数は任意に設定可能である。
ロウデコーダ112は、アドレス・コマンドレジスタ121からブロックアドレス信号及びロウアドレス信号を受け、これらの信号に基づいて、対応するブロック内のワード線を選択する。カラムデコーダ116は、アドレス・コマンドレジスタ121からカラムアドレス信号を受け、このカラムアドレス信号に基づいて、ビット線を選択する。
センスアンプ部113は、データの読み出し時には、メモリセルからビット線に読み出されたデータをセンス及び増幅する。また、センスアンプ部113は、データの書き込み時には、書き込みデータをメモリセルに転送する。メモリセルアレイ111へのデータの読み出し及び書き込みは、複数のメモリセルを単位として行われ、この単位がページとなる。
ページバッファ115は、ページ単位でデータを保持する。ページバッファ115は、データの読み出し時には、センスアンプ部113からページ単位で転送されたデータを一時的に保持し、これをシリアルに入出力回路119へ転送する。また、ページバッファ115は、データの書き込み時には、入出力回路119からシリアルに転送されたデータを一時的に保持し、これをページ単位でセンスアンプ部113へ転送する。
入出力回路119は、メモリコントローラ200との間で、NANDバスを介した種々のコマンド及びデータの送受信を行う。アドレス・コマンドレジスタ121は、入出力回路119からコマンド及びアドレスを受け、これらを一時的に保持する。
ドライバ117は、データの書き込み、読み出し、及び消去に必要な電圧を、ロウデコーダ112、センスアンプ部113、及び図示せぬソース線制御回路等に供給する。ドライバ117によって生成された電圧は、ロウデコーダ112、センスアンプ部113、及びソース線制御回路を介してメモリセル(ワード線、セレクトゲート線、ビット線、及びソース線)に印加される。電圧発生回路118は、外部から与えられる電源電圧を昇圧して、各種電圧をドライバ117に供給する。
レジスタ122は、例えばパワーオン時に、メモリセルアレイ111のROMフューズから読み出された管理データを一時的に保持する。また、レジスタ122は、メモリセルアレイ111の動作に必要な各種データを一時的に保持する。レジスタ122は、例えばSRAMから構成される。
制御回路120は、NAND型フラッシュメモリ100全体の動作を制御する。
[1−1−2] メモリセルアレイ111の構成
次に、メモリセルアレイ111の構成について説明する。図3は、メモリセルアレイ111に含まれる1個のブロックBLKの回路図である。
次に、メモリセルアレイ111の構成について説明する。図3は、メモリセルアレイ111に含まれる1個のブロックBLKの回路図である。
ブロックBLKは、例えば4個のストリングユニットSU0〜SU3を備える。ストリングユニットSUの各々は、複数のNANDストリング114を備える。
NANDストリング114の各々は、例えば8個のメモリセルトランジスタMT(MT0〜MT7)、及び選択トランジスタST1、ST2を備える。なお、以下の説明において、メモリセルトランジスタとメモリセルとは同意である。メモリセルトランジスタMTの各々は、制御ゲートと電荷蓄積層とを含む積層ゲートを備え、データを不揮発に記憶する。なお、メモリセルトランジスタMTの個数は8個に限定されず、16個、32個、64個、又は128個等であってもよく、その数は任意に設定可能である。メモリセルトランジスタMTは、選択トランジスタST1、ST2間にその電流経路が直列接続されるようにして配置される。この直列接続の一端側のメモリセルトランジスタMT7の電流経路は選択トランジスタST1の電流経路の一端に接続され、他端側のメモリセルトランジスタMT0の電流経路は選択トランジスタST2の電流経路の一端に接続される。
ストリングユニットSU0に含まれる選択トランジスタST1のゲートは、セレクトゲート線SGD0に共通接続され、上記と同様に、ストリングユニットSU1〜SU3には、セレクトゲート線SGD1〜SGD3が接続される。同一のブロックBLK内にある複数の選択トランジスタST2のゲートは、同一のセレクトゲート線SGSに共通接続される。同一のブロックBLK内にあるメモリセルトランジスタMT0〜MT7の制御ゲートはそれぞれ、ワード線WL0〜WL7に共通接続される。なお、各ストリングユニットSUに含まれる選択トランジスタST2は、選択トランジスタST1と同様に、別々のセレクトゲート線SGS0〜SGS3に接続されていても良い。
また、メモリセルアレイ111内でマトリクス状に配置されたNANDストリング114のうち、同一行にあるNANDストリング114の選択トランジスタST1の電流経路の他端は、ビット線BL0〜BL(L−1)のいずれかに共通接続される。(L−1)は1以上の自然数である。すなわち、ビット線BLは、複数のブロックBLK間でNANDストリング114を共通に接続する。また、選択トランジスタST2の電流経路の他端は、ソース線SLに共通に接続される。ソース線SLは、例えば複数のブロック間でNANDストリング114を共通に接続する。
前述の通り、同一のブロックBLK内にあるメモリセルトランジスタMTのデータは、一括して消去される。これに対してデータの読み出し及び書き込みは、いずれかのブロックBLKのいずれかのストリングユニットSUにおける、いずれかのワード線WLに共通接続された複数のメモリセルトランジスタMTにつき、一括して行われる。この単位をページと呼ぶ。
次に、メモリセルアレイ111の断面構造の一例について説明する。図4は、メモリセルアレイ111の一部領域の断面図である。
図示しない半導体基板の上方に、ソース線SLとして機能する配線層20が形成される。ソース線SLの上方には、選択ゲート線SGSとして機能する導電膜21aが形成される。導電膜21aの上方には、ワード線WLとして機能する複数の導電膜22が形成される。導電膜22の上方には、選択ゲート線SGDとして機能する導電膜21bが形成される。導電膜21a、21b、22の間には、これらを電気的に分離する電極間絶縁膜が形成される。
そして、導電膜21a、21b、22、及び電極間絶縁膜には、これらを貫通し、かつ半導体基板の表面に対して垂直方向(D3方向)に延在するメモリホールが形成される。例えば、製造工程に起因して、メモリホールの直径は、上方に向かうほど大きくなる。また、メモリホールの下部の直径と上部の直径との差は、メモリホールが長くなるほど大きくなる。
選択トランジスタST2となる領域に形成されたメモリホール内には、ゲート絶縁膜23a、及び半導体層24aが順次形成され、これらを含む柱状構造が形成される。メモリセルトランジスタMTとなる領域に形成されたメモリホール内には、ブロック絶縁膜25、電荷蓄積層(絶縁膜)26、ゲート絶縁膜27、及び半導体層28が順次形成され、これらを含む柱状構造が形成される。選択トランジスタST1となる領域に形成されたメモリホール内には、ゲート絶縁膜23b、及び半導体層24bが順次形成され、これらを含む柱状構造が形成される。半導体層24a、28、24bは、NANDストリング114の電流経路として機能し、メモリセルトランジスタMTの動作時にチャネルが形成される領域である。
このようにして、各NANDストリング114において、選択トランジスタST2、複数のメモリセルトランジスタMT、及び選択トランジスタST1が順次積層される。半導体層24b上には、ビット線BLとして機能する配線層29が形成される。ビット線BLは、方向D1に延在するように形成される。
以上の構成が、図4の奥行き方向(方向D2)に複数配列されており、方向D2に並ぶ複数のNANDストリング114の集合によってストリングユニットSUが形成される。また、同一のストリングユニットSU内に含まれる複数のセレクトゲート線SGD、複数のセレクトゲート線SGS、及び複数のワード線WLはそれぞれ、共通接続される。
なお、メモリセルアレイ111の構成についてはその他の構成であっても良い。すなわちメモリセルアレイ111の構成については、例えば、“三次元積層不揮発性半導体メモリ”という2009年3月19日に出願された米国特許出願12/407,403号に記載されている。また、“三次元積層不揮発性半導体メモリ”という2009年3月18日に出願された米国特許出願12/406,524号、“不揮発性半導体記憶装置及びその製造方法”という2010年3月25日に出願された米国特許出願12/679,991号“半導体メモリ及びその製造方法”という2009年3月23日に出願された米国特許出願12/532,030号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
[1−1−3] メモリセルトランジスタMTの閾値分布
次に、メモリセルトランジスタMTの閾値分布(閾値電圧分布)の一例について説明する。図5は、メモリセルトランジスタMTの閾値分布を説明する図である。
次に、メモリセルトランジスタMTの閾値分布(閾値電圧分布)の一例について説明する。図5は、メモリセルトランジスタMTの閾値分布を説明する図である。
例えば、メモリセルトランジスタMTは、その閾値に応じて2ビットのデータを記憶可能である。メモリセルトランジスタMTに記憶される2ビットデータは、閾値の低いものから順番に、例えば、“11”、“01”、“00”、“10”である。“11”、“01”、“00”、“10”は、左側の数字が上位ビット、右側の数字が下位ビットを表している。下位ビットデータの書込み単位を「下位ページ」と呼び、上位ビットデータの書込み単位を「上位ページ」と呼ぶ。
下位ページプログラム(lower page program)が行われると、図5(a)に示す消去状態(“E”レベル)の閾値分布は、図5(b)に示す消去状態(“E”レベル)の閾値分布と、中間レベル(“LM”レベル)の閾値分布との2つの閾値分布に変化する。“LM”レベルは、読み出しレベルARLより高い閾値を有する。“LM”レベルは、読み出しレベルARLより若干高いベリファイレベルML2Vを用いてプログラムされ、ベリファイレベルML2Vより高い閾値を有する。“E”レベルは、データ“1”に対応付けられ、“LM”レベルは、データ“0”に対応付けられる。
下位ページプログラムの後に上位ページプログラム(upper page program)が行われると、図5(b)に示す2つの閾値分布は、図5(c)に示すように、4つの閾値分布に変化する。メモリセルトランジスタMTは、“E”レベル、“A”レベル、“B”レベル、及び“C”レベルのうちいずれかの閾値を取ることが可能である。“E”レベル、“A”レベル、“B”レベル、及び“C”レベルはそれぞれ、データ“11”、“01”、“00”、“10”に対応付けられる。
“E”レベルは、電荷蓄積層内の電荷が引き抜かれて、データが消去された状態における閾値であり、例えば負の値を有する。“E”レベルは、ベリファイ電圧EVよりも低い。“A”〜“C”レベルは、電荷蓄積層内に電荷が注入された状態の閾値であり、例えば正の値を有する。“A”レベルは、読み出しレベルARより高く、かつ読み出しレベルBRより低い閾値を有する。“B”レベルは、読み出しレベルBRより高く、かつ読み出しレベルCRより低い閾値を有する。“C”レベルは、読み出しレベルCRより高く、かつ電圧VREADより低い閾値を有する。
“A”レベルは、読み出しレベルARより若干高いベリファイレベルAVを用いてプログラムされ、ベリファイレベルAVより高い閾値を有する。“B”レベルは、読み出しレベルBRより若干高いベリファイレベルBVを用いてプログラムされ、ベリファイレベルBVより高い閾値を有する。“C”レベルは、読み出しレベルCRより若干高いベリファイレベルCVを用いてプログラムされ、ベリファイレベルCVより高い閾値を有する。
[1−1−4] センスアンプ部113及びページバッファ115の構成
次に、センスアンプ部113及びページバッファ115の構成について説明する。図6は、センスアンプ部113及びページバッファ115のブロック図である。
次に、センスアンプ部113及びページバッファ115の構成について説明する。図6は、センスアンプ部113及びページバッファ115のブロック図である。
センスアンプ部113は、ビット線BL0〜BL(L−1)にそれぞれ対応して設けられたセンスアンプSA<0>〜SA<L−1>を備える。センスアンプSAの各々は、対応するビット線BLに読み出されたデータをセンス及び増幅し、また対応するビット線BLに書き込みデータを転送する。
ページバッファ115は、例えば3個のデータキャッシュLDL、UDL、XDLを備える。例えば、データキャッシュLDLは、下位ページを一時的に保持するために使用され、データキャッシュUDLは、上位ページを一時的に保持するために使用され、データキャッシュXDLは、入出力回路119に接続され、入出力回路119から送られたデータ、及び入出力回路119へ送るデータを一時的に保持する。すなわち、ページバッファ115は、データキャッシュLDL、UDLが使用中であっても、データキャッシュXDLを用いて入出力回路119からのデータを受け付けることができる。センスアンプSA<0>〜SA<L−1>と同様に、データキャッシュLDL、UDL、XDLの各々は、ビット線BL0〜BL(L−1)にそれぞれ対応して設けられたL個のデータキャッシュ部分を備える。
[1−1−5] センスアンプSA及びセル電流測定回路40の構成
次に、センスアンプSA及びセル電流測定回路40の構成について説明する。図7は、センスアンプSAの主要部及びセル電流測定回路40の回路図である。
次に、センスアンプSA及びセル電流測定回路40の構成について説明する。図7は、センスアンプSAの主要部及びセル電流測定回路40の回路図である。
まず、センスアンプSAの構成について説明する。センスアンプSAは、pチャネルMOSトランジスタ31、及びnチャネルMOSトランジスタ32〜35を備える。
トランジスタ35は、ゲートに信号VBLCが入力され、電流経路の一端が、対応するビット線BLに接続される。トランジスタ35は、対応するビット線BLを、信号VBLCのレベルに応じた電圧にクランプする機能を有する。信号VBLCは、ドライバ117に含まれるビット線ドライバ(BLDR)117aから供給される。トランジスタ34は、電流経路の一端がトランジスタ35の電流経路の他端に接続され、電流経路の他端がノードSENに接続され、ゲートに信号XXLが入力される。
トランジスタ33は、電流経路の一端がトランジスタ35の電流経路の他端に接続され、ゲートに信号BLXが入力される。トランジスタ32は、電流経路の一端がトランジスタ33の電流経路の他端に接続され、電流経路の他端に電源電圧VHSAが印加され、ゲートに信号BLYが入力される。トランジスタ31は、電流経路の一端がトランジスタ33の電流経路の他端に接続され、電流経路の他端に電源電圧VHSAが印加され、ゲートに信号INVが入力される。トランジスタ31、32は、トランスファーゲートを構成する。
データの読み出し時には、信号BLX、BLYが“H”レベル、信号INVが“L”レベルとされ、トランスファーゲート(トランジスタ31、32)、及びトランジスタ33がオン状態とされる。これにより、トランジスタ35、ビット線BL、及びNANDストリングを介してセル電流iCELLが流れる。この時、信号VBLCのレベルに応じてトランジスタ35のオン状態が制御され、セル電流iCELLが制御される。
選択メモリセルのデータがビット線BLに読み出されると、信号XXLが“H”レベルとされ、トランジスタ34がオン状態とされる。これにより、ビット線BLに読み出されたデータがノードSENに転送される。さらに、ノードSENに転送されたデータは、ページバッファ115内のいずれかのデータキャッシュに保持される。
次に、セル電流測定回路40の構成について説明する。セル電流測定回路40は、ソース線SLをある電圧に維持する機能を有する。セル電流測定回路40は、ソース線SLごとに設けられる。セル電流測定回路40は、定電流源41、オペアンプ42、及びnチャネルMOSトランジスタ43を備える。セル電流測定回路40は、制御回路120が備えていても良いし、図示せぬソース線制御回路が備えていても良い。
定電流源41は、ソース線SLに定電流iCONSTを供給する。定電流源41は、電源電圧VDDSAとソース線SLとの間に接続される。トランジスタ43のドレインはソース線SLに接続され、ソースには接地電圧GNDが印加される。オペアンプ42の正極入力端子はソース線SLに接続され、負極入力端子には参照電圧VREFが印加され、出力端子はトランジスタ43のゲートに接続される。また、オペアンプ42の出力端子から出力される信号GSLDRVは、制御回路120に入力される。
なお、セル電流を測定する回路は、図7の構成に限定されず、例えば“半導体記憶装置”という2013年3月15日に出願された米国特許出願13/832,983号に記載されている。この特許出願は、その全体が本願明細書において参照により援用されている。
[1−2] 動作
次に、上記のように構成されたNAND型フラッシュメモリ100の動作について説明する。
次に、上記のように構成されたNAND型フラッシュメモリ100の動作について説明する。
[1−2−1] セル電流測定動作
まず、セル電流測定動作について説明する。セル電流測定動作は、下位ページプログラム動作に含まれる。図8は、セル電流測定動作を含む下位ページプログラム動作のタイミングチャートである。図8には、ビット線BL、ソース線SL、及びセル電流測定回路40から出力される信号GSLDRVの波形を示している。セル電流測定動作は、下位ページプログラム動作の最初のステップにおいて実行される。
まず、セル電流測定動作について説明する。セル電流測定動作は、下位ページプログラム動作に含まれる。図8は、セル電流測定動作を含む下位ページプログラム動作のタイミングチャートである。図8には、ビット線BL、ソース線SL、及びセル電流測定回路40から出力される信号GSLDRVの波形を示している。セル電流測定動作は、下位ページプログラム動作の最初のステップにおいて実行される。
下位ページプログラムを行う前は、メモリセルトランジスタは、消去状態(データが書かれていない状態)である。制御回路120は、下位ページプログラムの対象である選択ページに対して、消去状態のメモリセルトランジスタがオンするレベル、例えば読み出しレベルCRを用いて読み出し動作を行う。
図7に示すように、セル電流測定回路40に含まれる定電流源41は、ソース線SLに対して定電流iCONSTを供給する。これにより、ソース線SLには、ビット線BLからセル電流iCELLが流入すると共に、定電流源41から定電流iCONSTが流入する。一方、ソース線SLからは、トランジスタ43を介して、放電電流iSLDISが接地端子GNDに向けて流出する。このため、ソース線SLの電圧は、流入するセル電流iCELL及び定電流iCONSTと、流出する放電電流iSLDISとのバランスによって変動する。
放電電流iSLDISの大きさは、トランジスタ43によって制御される。トランジスタ43の導通の程度は、オペアンプ42の出力信号GSLDRVによって制御される。出力信号GSLDRVは、オペアンプ42によるソース線SLの電圧と参照電圧VREFとの比較結果を表すアナログ信号である。従って、参照電圧VREFと比較してソース線SLの電圧が高いほど、出力信号GSLDRVの値が正に大となり、トランジスタ43の導通の程度が高くなり、放電電流iSLDISが大きくなり、その結果、ソース線SLの電圧が低下する。逆に、参照電圧VREFと比較してソース線SLの電圧が低いほど、出力信号GSLDRVの値が負に大となり、トランジスタ43の導通の程度が低くなり、放電電流iSLDISが小さくなり、その結果、ソース線SLの電圧が上昇する。このようにして、ソース線SLの電圧は、常に参照電圧VREFに近づくようにフィードバック制御され続ける。
制御回路120は、オペアンプ42の出力信号GSLDRVを受け、出力信号GSLDRVをアナログ/デジタル(A/D)変換する。続いて、制御回路120は、信号GSLDRVが目標となる基準信号F_VCLAMPと同じになるまで、信号VBL_DACを変化させる。基準信号F_VCLAMPは、例えばレジスタ122に格納される。信号VBL_DACは、ビット線ドライバ117aに供給される。ビット線ドライバ117aは、信号VBL_DACに基づいて信号VBLCを生成し、この信号VBLCをセンスアンプSAに含まれるトランジスタ35のゲートに供給する。最終的には、信号VBL_DACによって調整された信号VBLCに応じて、最適な(目標とする)セル電流iCELLが実現される。iCELL測定フェーズで取得されかつ最適化されたVBL_DACは、フラグデータとして、プログラムフェーズでページの冗長領域にセットされる。
図9は、信号VBLCとセル電流iCELLとの関係の一例を説明するグラフである。図9の横軸は、ライト/イレース回数(W/E回数)を表している。図9の“Fresh”は、NAND型フラッシュメモリ100のライト/イレース回数が概略ゼロの状態であり、例えば、製品出荷時の状態である。
図9の例では、セル電流iCELLの目標値は、107nA程度である。一般的に、W/E回数が増えるにつれて、セル電流iCELLが低下する。よって、信号VBLCのレベルがW/E回数に関わらず一定であると、W/E回数が少ない場合、セル電流iCELLが大きくなり、すなわち、消費電流が大きくなる。一方、本実施形態では、書き込み時にセル電流が測定され、また、セル電流iCELLが目標値になるように、最適な信号VBLCが生成される。これにより、特に、W/E回数が少ない時期のセル電流iCELLが削減できる。
なお、プログラム動作では、入出力回路119からページバッファ115内のデータキャッシュに書き込みデータをロードする内部データロード動作が行われる。よって、本実施形態のセル電流測定動作を内部データロード動作と並列に行うようにしても良い。これにより、セル電流測定動作を行う時間を新たに設ける必要がない。
[1−2−2] 動作パラメータの設定
前述したように、W/E回数が増えるにつれて、セル電流iCELLが低下する。そこで、本実施形態では、セル電流iCELLを制御するために使用される信号VBL_DACを利用して、メモリセルアレイの劣化具合を判定する。そして、判定されたメモリセルアレイの劣化具合に応じて、メモリセルアレイ111の動作パラメータを変更するようにしている。具体的には、メモリセルアレイの劣化具合に基づいて、プログラム動作、読み出し動作、及び消去動作に使用する電圧のパラメータを補正する。
前述したように、W/E回数が増えるにつれて、セル電流iCELLが低下する。そこで、本実施形態では、セル電流iCELLを制御するために使用される信号VBL_DACを利用して、メモリセルアレイの劣化具合を判定する。そして、判定されたメモリセルアレイの劣化具合に応じて、メモリセルアレイ111の動作パラメータを変更するようにしている。具体的には、メモリセルアレイの劣化具合に基づいて、プログラム動作、読み出し動作、及び消去動作に使用する電圧のパラメータを補正する。
図10は、信号VBL_DACと動作パラメータとの関係を示す図である。プログラムパラメータセットには、最初のプログラムループで使用する初期プログラム電圧IVPGM、及びプログラムループ毎に増えるステップアップ電圧DVPGMが含まれる。また、プログラムパラメータセットは、ベリファイパラメータセットを含んでいても良い。ベリファイパラメータセットには、ベリファイレベル、及び電圧VRAEDが含まれる。リードパラメータセットには、読み出しレベル、及び電圧VRAEDが含まれる。各種パラメータセットは、レジスタ122に記憶される。
信号VBL_DACは、例えば4ビットである。製品出荷時において、読み出し及びベリファイの時の信号VBL_DAC=0100に相当する電圧設定(例えばBL=0.4V)であるものとする。W/E回数が増えるにつれてセル電流が減っていき、信号VBL_DACが増えていくが、信号VBL_DAC=0111までは、フレッシュ状態と同じ扱いとし、第1プログラムパラメータセットを使用する。
信号VBL_DAC=1000になった時点で、W/E回数が1K(1000回)に到達したと判定し、第2プログラムパラメータセットに変更する。また、信号VBL_DAC=1011になった時点で、W/E回数が2Kに到達したと判定し、第3プログラムパラメータセットに変更する。さらに、信号VBL_DAC=1110になった時点で、W/E回数が3Kに到達したと判定し、第4プログラムパラメータセットに変更する。
例えば、W/E回数が3Kくらいになると、書き込み時間が速くなる(すなわちループ回数が減る)と共に、閾値分布が広くなる。よって、第4プログラムパラメータセットでは、例えば、初期プログラム電圧IVPGM及びステップアップ電圧DVPGMを低くする。これにより、フレッシュ状態の同等の閾値分布を実現できる。第2及び第3プログラムパラメータセットについても、メモリセルアレイの劣化具合に応じたパラメータ補正を行う。
図11は、信号VBL_DACと動作パラメータとの関係の他の一例を示す図である。図11の例では、製品出荷時に、セル電流iCELLが目標値になるように、信号VBL_DACをトリミングしている。本来の設計ターゲットは、信号VBL_DAC=0100であるが、製造ばらつきにより、信号VBL_DAC=0001の場合にセル電流iCELLが目標値になったとする。図11に示すように、パラメータセットを、全体的に上に3つシフトさせる。このチップは、信号VBL_DAC=0101になった場合に、設計ターゲット“1K W/E”であると判定する。
なお、消去パラメータセットについても、プログラムパラメータセットと同様に、信号VBL_DACに基づいて変更される。図12に示されるように、消去パラメータセットを切り替えるために、消去動作において、信号VBL_DACに対応するフラグデータの読み出しが行われる。そして、フラグデータに基づいて、消去パラメータセットが切り替えられる。消去パラメータセットには、消去時に仕様される消去電圧VERA及びWL電圧と、消去ベリファイ時に使用されるBL電圧及びWL電圧とが含まれる。
また、図10及び図11に示したプログラムパラメータセット、リードパラメータセット、及び消去パラメータセットは、同時に切り替えても良いし、個別に切り替えても良い。
[1−2−3] 下位ページプログラム動作
次に、下位ページプログラム動作について説明する。図13は、下位ページプログラム動作のフローチャートである。
次に、下位ページプログラム動作について説明する。図13は、下位ページプログラム動作のフローチャートである。
プログラム動作の最初のステップにおいて、制御回路120は、例えば読み出しレベルCRを用いて、セル電流測定動作を行う(ステップS100)。セル電流測定動作は、前述した通りである。セル電流測定動作において、制御回路120は、信号VBL_DACを取得する(ステップS101)。また、制御回路120は、信号VBL_DACをフラグデータとしてページの冗長領域にセットする。
続いて、制御回路120は、信号VBL_DACに基づいて、プログラムパラメータセットを選択する(ステップS102)。このプログラムパラメータセットの選択は、図10(又は図11)の通りに行われる。選択されたプログラムパラメータセットは、複数のプログラムループを通して使用される。
続いて、制御回路120は、プログラムループ回数が最大値に到達しているか否かを判定する(ステップS103)。プログラムループ回数が最大値に到達していない場合、制御回路120は、選択ワード線にプログラム電圧を印加するプログラム動作を行う。(ステップS104)。このプログラム動作において、制御回路120は、ユーザーデータをページの通常領域に書き込むと共に、ステップS101で取得した信号VBL_DACをフラグデータとしてページの冗長領域にセットする。
図14は、フラグデータを書き込むための冗長領域を説明する図である。1本のワード線WLに接続された複数のメモリセルトランジスタからなるページは、通常データ(ユーザーデータ)を格納するための通常領域と、冗長領域とを備える。本実施形態では、この冗長領域に、フラグデータを格納する。通常領域には、フラグデータと共に書き込まれるユーザーデータが格納される。
続いて、制御回路120は、メモリセルトランジスタの閾値を確認するベリファイ動作を行う(ステップS105)。また、ベリファイ動作では、ステップS102で選択されたプログラムパラメータセットが使用される。さらに、ベリファイ動作において、制御回路120は、ステップS101で取得した信号VBL_DACを用いて、ビット線電圧の調整を行う。これにより、ベリファイ動作において、目標とするセル電流iCELLが実現される。
続いて、制御回路120は、ベリファイがパスしたか否かを判定する(ステップS106)。ベリファイがパスしていない場合、制御回路120は、プログラム電圧をステップアップ電圧DVPGMだけステップアップして、再度、プログラムループを行う(ステップS107)。その後、ベリファイがパスするまで、プログラム電圧の印加と、ベリファイ動作とが繰り返される。
図15は、選択ワード線に印加される電圧波形を示している。第1プログラムパラメータセットに含まれる初期プログラム電圧及びステップアップ電圧をそれぞれIVPGM1及びDVPGM1と表記する。下位ページプログラムでは、ベリファイレベルML2Vを用いてベリファイ動作が行われる。
図16は、第1乃至第4プログラムパラメータセットに含まれる初期プログラム電圧及びステップアップ電圧の一例を説明する図である。図16(a)乃至図16(d)はそれぞれ、第1乃至第4プログラムパラメータセットに対応する。
図16の例では、第1乃至第4プログラムパラメータセットの初期プログラム電圧IVPGM1乃至IVPGM4は、この順にレベルが低くなる。また、第1乃至第4プログラムパラメータセットのステップアップ電圧DVPGM1乃至DVPGM4は、この順にレベルが低くなる。
[1−2−4] 上位ページプログラム動作
次に、上位ページプログラム動作について説明する。図17は、上位ページプログラム動作のフローチャートである。図18は、上位ページプログラム動作のタイミングチャートである。図18には、ビット線BL、及びソース線SLの波形を示している。
次に、上位ページプログラム動作について説明する。図17は、上位ページプログラム動作のフローチャートである。図18は、上位ページプログラム動作のタイミングチャートである。図18には、ビット線BL、及びソース線SLの波形を示している。
本実施形態では、フラグデータを読み出すための読み出し動作が上位ページプログラム動作に含まれる。フラグデータの読み出し動作は、上位ページプログラム動作の最初のステップにおいて実行される。
フラグデータは、下位ページに記憶されている。よって、制御回路120は、下位ページデータを判定するための読み出しレベルARLを用いて、フラグデータの読み出し動作を行う(ステップS200)。続いて、制御回路120は、読み出されたフラグデータから信号VBL_DACを取得する(ステップS201)。また、制御回路120は、信号VBL_DACをフラグデータとしてページの冗長領域にセットする。
続いて、制御回路120は、信号VBL_DACに基づいて、プログラムパラメータセットを選択する(ステップS202)。このプログラムパラメータセットの選択は、図10(又は図11)の通りに行われる。
続いて、制御回路120は、プログラムループ回数が最大値に到達しているか否かを判定する(ステップS203)。プログラムループ回数が最大値に到達していない場合、制御回路120は、上位ページのプログラム動作を行う(ステップS204)。上位ページプログラムでは、“A”レベル、“B”レベル、“C”レベルのプログラム動作が順次行われる。
このプログラム動作において、制御回路120は、ステップS200で読み出したフラグデータをデータキャッシュUDLにセットし、上位ページとして冗長領域に書き込む。すなわち、上位ページのフラグデータと、下位ページのフラグデータとは同じになる。これにより、上位ページをプログラムした後のフラグデータは、“11”データ又は“00”データとなる。このように、2値のフラグデータは、それぞれの閾値分布が隣接していないので、メモリセルトランジスタMTの閾値変動によってデータが変化するのを抑制できる。その後の動作は、下位ページプログラムの場合と同様である。
[1−2−5] 読み出し動作
次に、読み出し動作について説明する。図19は、読み出し動作のタイミングチャートである。本実施形態の読み出し動作は、フラグデータを読み出すための第1読み出しと、通常データを読み出すための第2読み出しとの2回の読み出し動作が行われる。
次に、読み出し動作について説明する。図19は、読み出し動作のタイミングチャートである。本実施形態の読み出し動作は、フラグデータを読み出すための第1読み出しと、通常データを読み出すための第2読み出しとの2回の読み出し動作が行われる。
制御回路120は、例えば、読み出しコマンドを受けるとビジー信号を出力する。続いて、制御回路120は、フラグデータ用の第1読み出し動作を行う。このフラグデータの読み出し動作は、例えば図17のフラグデータの読み出し動作(ステップS200)と同じである。
続いて、制御回路120は、通常データを読み出すための第2読み出し動作を行う。この第2読み出し動作において、制御回路120は、ビット線電圧の調整動作を行う。これにより、第2読み出し動作において、目標とするセル電流iCELLが実現される。さらに、制御回路120は、フラグデータに基づいてリードパラメータセットを選択し、このリードパラメータセットを使用して第2読み出し動作を行う。メモリセルアレイの劣化具合に応じた読み出し動作が実現できる。
なお、消去パラメータセットについても、プログラムパラメータセットと同様に、信号VBL_DACに基づいて選択される。消去動作の場合にも、図19の読み出し動作と同様に、消去動作の前の最初のステップでフラグデータの読み出しが行われる。消去パラメータセットには、初期消去電圧IVERA、及びステップアップ電圧DVERAが含まれる。また、消去時にワード線に印加する電圧を変えても良い。
[1−3] 積層型メモリセルアレイへの適用例
積層型メモリセルアレイでは、NANDストリングの下部と上部とでチャネルが形成される半導体層の直径が異なる。このため、NANDストリングの下部に含まれるメモリセルトランジスタと、NANDストリングの上部に含まれるメモリセルトランジスタとでは、動作特性が異なってくる可能性がある。そこで、NANDストリングをいくつかの領域に分けて管理し、領域ごとに動作パラメータを変えるようにする。
積層型メモリセルアレイでは、NANDストリングの下部と上部とでチャネルが形成される半導体層の直径が異なる。このため、NANDストリングの下部に含まれるメモリセルトランジスタと、NANDストリングの上部に含まれるメモリセルトランジスタとでは、動作特性が異なってくる可能性がある。そこで、NANDストリングをいくつかの領域に分けて管理し、領域ごとに動作パラメータを変えるようにする。
図20は、NANDストリングの領域を説明する断面図である。NANDストリング114は、ボトム領域BA、ミドル領域MA、及びトップ領域TAから構成される。なお、分割される領域の数は一例であり、任意に設定可能である。また、各領域に含まれるワード線の数(メモリセルトランジスタの数)も任意に設定可能である。
次に、消去動作時に使用される消去パラメータセットについて説明する。図21は、信号VBL_DACと消去パラメータセットとの関係を示す図である。
図21に示すように、ボトム領域BA、ミドル領域MA、及びトップ領域TAごとに消去パラメータセットが用意される。
フレッシュ状態において、ボトム領域BA、ミドル領域MA、及びトップ領域TAにはそれぞれ、第1乃至第3消去パラメータセットが使用される。第1消去パラメータセットにおいて、消去電圧VERAが20V、消去時のワード線電圧が0.2Vである。第2乃至第12の消去パラメータセットに含まれる電圧は、図21の通りである。
このように、ボトム領域BA、ミドル領域MA、及びトップ領域TAに応じて動作パラメータセットを変更することで、領域に応じたより最適な動作に実現できる。
また、消去パラメータと同様に、プログラムパラメータ(ベリファイパラメータを含む)、及びリードパラメータについても、ボトム領域BA、ミドル領域MA、及びトップ領域TAごとに設定することができる。
なお、動作パラメータセット(プログラムパラメータセット、リードパラメータセット、及び消去パラメータセット)は、図20よりさらに細分化して設定しても良く、例えば、ワード線単位で設定しても良い。
[1−4] 効果
以上詳述したように第1実施形態では、下位ページプログラム動作において、セル電流測定動作を行う。また、セル電流測定動作において取得された信号VBL_DACに基づいて、最適なプログラムパラメータセットを選択する。これにより、メモリセルアレイの劣化具合に応じてより最適なログラム動作及びベリファイ動作が実現できる。具体的には、よりシャープな閾値分布の設定が可能となる。
以上詳述したように第1実施形態では、下位ページプログラム動作において、セル電流測定動作を行う。また、セル電流測定動作において取得された信号VBL_DACに基づいて、最適なプログラムパラメータセットを選択する。これにより、メモリセルアレイの劣化具合に応じてより最適なログラム動作及びベリファイ動作が実現できる。具体的には、よりシャープな閾値分布の設定が可能となる。
また、読み出し動作及び消去動作についても、プログラム動作と同様の効果が得られる。これにより、データ信頼性の高いNAND型フラッシュメモリ100を実現できる。
また、本実施形態では、メモリセルアレイの劣化具合に応じて信号VBL_DACを制御することで、ライト/イレース回数(W/E回数)に関わらず、NANDストリングに流れるセル電流iCELLを概略一定に保持することができる。これにより、NAND型フラッシュメモリ100の消費電流を低減することができる。
また、積層型メモリセルアレイの領域(例えば、ボトム領域BA、ミドル領域MA、及びトップ領域TA)に応じて、動作パラメータセットを変更するようにしている。これにより、積層型メモリセルアレイが適用されるNAND型フラッシュメモリ100において、データ信頼性をより向上できる。
[第2実施形態]
第2実施形態では、ページのサンプリング領域に書き込むべき特定のデータのビット数をカウントした後、このカウントされた第1カウント値をページの冗長領域に格納する。続いて、ページからデータを読み出した際に、サンプリング領域の特定のデータのビット数をカウントして、第2カウント値を取得する。そして、第1カウント値と第2カウント値との差に応じてメモリセルアレイの劣化具合を判定するようにしている。
第2実施形態では、ページのサンプリング領域に書き込むべき特定のデータのビット数をカウントした後、このカウントされた第1カウント値をページの冗長領域に格納する。続いて、ページからデータを読み出した際に、サンプリング領域の特定のデータのビット数をカウントして、第2カウント値を取得する。そして、第1カウント値と第2カウント値との差に応じてメモリセルアレイの劣化具合を判定するようにしている。
[2−1] メモリセルアレイ111の構成
まず、メモリセルアレイ111の構成について説明する。図22は、第2実施形態に係るメモリセルアレイ111を中心に示したブロック図である。
まず、メモリセルアレイ111の構成について説明する。図22は、第2実施形態に係るメモリセルアレイ111を中心に示したブロック図である。
1本のワード線WLに接続された複数のメモリセルトランジスタからなるページは、通常データ(ユーザーデータ)を格納するための通常領域と、冗長領域とを備える。通常領域の任意の部分には、サンプリング領域が設けられる。サンプリング領域は、この領域に書き込むべきデータを種類毎にカウントするため、及びこの領域から読み出されたデータを種類毎にカウントするために使用される。冗長領域は、カウントされたデータのビット数をフラグデータとして格納するために使用される。
[2−2] 読み出し動作におけるデータ転送の概要
次に、読み出し動作におけるデータ転送の概要について説明する。図23は、読み出し動作におけるデータ転送のタイミングチャートである。図23は、メモリコントローラ200とNAND型フラッシュメモリ100とがNANDバスを介してやり取りする信号を表しており、メモリコントローラ200とNAND型フラッシュメモリ100とは、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、リードイネーブル信号REn、及び入出力信号I/Oをやり取りする。
次に、読み出し動作におけるデータ転送の概要について説明する。図23は、読み出し動作におけるデータ転送のタイミングチャートである。図23は、メモリコントローラ200とNAND型フラッシュメモリ100とがNANDバスを介してやり取りする信号を表しており、メモリコントローラ200とNAND型フラッシュメモリ100とは、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、リードイネーブル信号REn、及び入出力信号I/Oをやり取りする。
メモリコントローラ200は、信号CLE及びWEnをアサートすると共に、読み出しコマンド“00h”をNAND型フラッシュメモリ100に送る。続いて、メモリコントローラ200は、信号ALE及びWEnをアサートすると共に、アドレス信号A1〜A5をNAND型フラッシュメモリ100に送る。続いて、メモリコントローラ200は、信号CLE及びWEnをアサートすると共に、読み出し実行コマンド“30h”をNAND型フラッシュメモリ100に送る。これに対して、NAND型フラッシュメモリ100は、信号CLE、ALE、及びWEnに応答して、コマンド及びアドレスを受ける。
続いて、メモリコントローラ200は、信号REnをアサートし、NAND型フラッシュメモリ100は、信号REnに応答して、データD0、D2、D3、・・・をメモリコントローラ200に送る。これに対して、メモリコントローラ200は、NAND型フラッシュメモリ100からデータを受ける。
以上のようにして、メモリコントローラ200及びNAND型フラッシュメモリ100間でデータ転送が行われる。以下の説明では、信号CLE、ALE、WEn、及びREnを省略するが、これらの信号のタイミングは、図23が援用される。
[2−3] プログラム動作
次に、プログラム動作について説明する。
次に、プログラム動作について説明する。
[2−3−1] 下位ページプログラム動作
まず、下位ページプログラム動作について説明する。図24は、下位ページプログラム動作のフローチャートである。
まず、下位ページプログラム動作について説明する。図24は、下位ページプログラム動作のフローチャートである。
制御回路120は、入出力回路119が受けたデータ(下位ページデータ)をページバッファ115にロードする(ステップS300)。具体的には、制御回路120は、入出力回路119から送られたデータをデータキャッシュXDLに保持させ、さらに、データキャッシュXDLからデータキャッシュLDLにデータを転送する。
続いて、制御回路120は、データキャッシュに保持されたデータを用いて、サンプリング領域に書き込まれるデータのうち“LM”レベルのビット数をカウントする(ステップS301)。“LM”レベルの閾値分布は、データ“0”に対応する。これにより、“LM”レベル(データ“0”)にプログラムされるメモリセルの個数が算出される。また、制御回路120は、フラグデータとしてカウント値を選択ページの冗長領域にセットする。
続いて、制御回路120は、プログラムループ回数が最大値に到達しているか否かを判定する(ステップS302)。プログラムループ回数が最大値に到達していない場合、制御回路120は、選択ページに対してプログラム動作を行う(ステップS303)。
続いて、制御回路120は、ベリファイ動作を行う(ステップS304)。続いて、制御回路120は、ベリファイがパスしたか否かを判定する(ステップS305)。ベリファイがパスしていない場合、制御回路120は、ステップアップ電圧DVPGMだけステップして再度、プログラムループを行う(ステップS306)。
このような動作により、サンプリング領域に含まれるメモリセルのうち“LM”レベルの閾値分布に設定されるべきメモリセルの個数が、フラグデータとして冗長領域に書き込まれる。なお、サンプリング領域に書き込まれるデータのうち“E”レベルのビット数をカウントするようにしても良い。この場合は、サンプリング領域に含まれるメモリセルのうち“E”レベルの閾値分布に設定されるべきメモリセルの個数が、フラグデータとして冗長領域に書き込まれる。そして、メモリセルアレイの劣化具合を判定するために“E”レベルのメモリセルのカウント値が用いられる。
[2−3−2] 上位ページプログラム動作
次に、上位ページプログラム動作について説明する。図25は、上位ページプログラム動作のフローチャートである。
次に、上位ページプログラム動作について説明する。図25は、上位ページプログラム動作のフローチャートである。
制御回路120は、入出力回路119が受けたデータ(上位ページデータ)をページバッファ115にロードする(ステップS400)。具体的には、制御回路120は、入出力回路119から送られたデータをデータキャッシュXDLに保持させ、さらに、データキャッシュXDLからデータキャッシュUDLにデータを転送する。上位ページプログラムに必要な下位ページデータは、予めメモリセルアレイから読み出され、データキャッシュLDLに保持される。
続いて、制御回路120は、データキャッシュに保持されたデータを用いて、サンプリング領域に書き込まれるデータのうち、“E”レベル、“A”レベル、“B”レベル、及び“C”レベルのそれぞれのビット数をカウントする(ステップS401)。また、制御回路120は、フラグデータとしてカウント値を選択ページの冗長領域にセットする。
続いて、制御回路120は、プログラムループ回数が最大値に到達しているか否かを判定する(ステップS402)。プログラムループ回数が最大値に到達していない場合、制御回路120は、選択ページに対してプログラム動作を行う(ステップS403)。
続いて、制御回路120は、ベリファイ動作を行う(ステップS404)。続いて、制御回路120は、ベリファイがパスしたか否かを判定する(ステップS405)。ベリファイがパスしていない場合、制御回路120は、ステップアップ電圧DVPGMだけステップして再度、プログラムループを行う(ステップS406)。なお、ステップS403のプログラム動作及びステップS404のベリファイ動作には、“A”レベル、“B”レベル、及び“C”レベルのプログラム動作及びベリファイ動作が含まれる。
このような動作により、サンプリング領域に含まれるメモリセルのうち“E”レベル、“A”レベル、“B”レベル、及び“C”レベルのそれぞれのビット数が、フラグデータとして冗長領域に書き込まれる。なお、全レベルのビット数をカウントしてカウント結果を冗長領域に書き込む必要はなく、“E”レベルのみカウントして、そこから、他のレベルの劣化具合を予測するような手法を用いても良い。
[2−4] 読み出し動作
次に、読み出し動作について説明する。
次に、読み出し動作について説明する。
[2−4−1] 第1実施例
まず、下位ページ読み出し動作について説明する。図26は、第1実施例に係る下位ページ読み出し動作のフローチャートである。図27は、第1実施例に係る下位ページ読み出し動作のタイミングチャートである。
まず、下位ページ読み出し動作について説明する。図26は、第1実施例に係る下位ページ読み出し動作のフローチャートである。図27は、第1実施例に係る下位ページ読み出し動作のタイミングチャートである。
制御回路120は、プリフィックスコマンドPrefix-CMD1、読み出しコマンド“00h”、アドレス信号A1〜A5、読み出し実行コマンド“30h”を、メモリコントローラ200から受ける(ステップS500)。このプリフィックスコマンドPrefix-CMD1を最初に発行することで、通常の読み出しコマンドとモードが異なる特殊な読み出しモードを指定できる。これに応答して、制御回路120は、メモリコントローラ200にビジー信号を送る。
続いて、制御回路120は、通常の読み出し動作を行う(ステップS501)。図28は、読み出し動作の電圧波形である。図28において、SGD_SEL、SGS_SELは、選択ストリングユニットに含まれるセレクトゲート線であり、SGD_USEL、SGS_USELは、非選択ストリングユニットに含まれるセレクトゲート線である。WL_SELは、選択ワード線であり、WL_USELは、非選択ワード線である。
通常の読み出し動作において、ロウデコーダ112は、選択ストリングユニットにおいて、セレクトゲート線SGD_SEL、SGS_SELに、電圧Vsgを印加し、選択トランジスタST1、ST2をオンさせる。また、ロウデコーダ112は、選択ワード線WL_SELに読み出し電圧Vcgrvを印加し、非選択ワード線WL_USELに電圧VREADを印加する。さらに、ロウデコーダ112は、非選択ストリングユニットにおいて、セレクトゲート線SGD_USEL、SGS_USELに、電圧Vss(0V)を印加し、選択トランジスタST1、ST2をオフさせる。なお、下位ページ読み出しの場合、読み出し電圧Vcgrvは、下位データの“1”及び“0”を判定可能な読み出しレベルBRに対応する。
通常の読み出し動作において、冗長領域に記憶されたフラグデータが読み出され、制御回路120は、このフラグデータを取得する(ステップS502)。そして、制御回路120は、フラグデータを用いて、プログラム時における“LM”レベルのビット数を算出する。続いて、制御回路120は、通常の読み出し動作において読み出されたデータをセンスアンプSAからデータキャッシュXDLに転送することで、通常読み出しのデータアウトが可能となり、レディ信号(cache ready)をメモリコントローラ200に送る。(ステップS503)。
続いて、制御回路120は、データキャッシュUDLに保持されている読み出しデータを用いて、サンプリング領域のうち“LM”レベルのビット数をカウントする(ステップS504)。続いて、制御回路120は、ステップS502のフラグデータから算出された期待値と、ステップS504の読み出し結果とを比較する。そして、制御回路120は、比較結果に基づいて、読み出しレベルを算出する(ステップS505)。この読み出しレベルの補正方法は、例えば、第1実施形態で説明したように、複数のリードパラメータセットをレジスタ122に記憶しておき、比較結果の大きさに応じていずれかのリードパラメータセットを選択する。
続いて、制御回路120は、補正された読み出しレベルを用いて、補正読み出し動作を行う(ステップS506)。具体的には、図28に示すように、読み出し電圧Vcgrvを電圧Δだけ補正して、読み出し動作を行う。続いて、制御回路120は、補正読み出し動作において読み出されたデータをセンスアンプSAからデータキャッシュLDLに転送する。その後、制御回路120は、レディ信号(true ready)をメモリコントローラ200に送る。
続いて、メモリコントローラ200は、ステータスリードコマンド“70h”をNAND型フラッシュメモリ100に送る。NAND型フラッシュメモリ100は、ステータスリードコマンド“70h”に応答して、ステータスをメモリコントローラ200に送る。メモリコントローラ200は、このステータスによって補正読み出しの情報を得ることができる。
続いて、制御回路120は、メモリコントローラ200から転送コマンド“3Fh”を受けたか否かを監視し(ステップS507)、転送コマンド“3Fh”を受けた場合に、データキャッシュLDLからXDLへデータを転送する(ステップS508)。その後、制御回路120は、補正読み出しのデータアウトが可能となり、制御回路120は、レディ信号(true ready)をメモリコントローラ200に送る。(ステップS509)。
なお、ステップS507においてメモリコントローラ200から転送コマンド“3Fh”を受けない場合、すなわち、通常読み出しが正常に終了した場合、補正読み出しのデータアウトは行われない。
<上位ページ読み出し動作>
次に、上位ページ読み出し動作について説明する。図29は、上位ページ読み出し動作のフローチャートである。
次に、上位ページ読み出し動作について説明する。図29は、上位ページ読み出し動作のフローチャートである。
上位ページ読み出し動作では、制御回路120は、ステップS602で取得したフラグデータを用いて、“E”レベル、“A”レベル、“B”レベル、及び“C”レベルのそれぞれのビット数を算出する。
また、制御回路120は、データキャッシュXDLに保持されている読み出しデータを用いて、サンプリング領域のうち“E”レベル、“A”レベル、“B”レベル、及び“C”レベルのそれぞれのビット数をカウントする(ステップS604)。その後、制御回路120は、比較結果に基づいて、読み出しレベルを算出する(ステップS605)。
上記以外の動作は、前述した上位ページ読み出し動作と同じである。これにより、上位ページに対してより正確な読み出し動作が実現できる。
<読み出しレベルの補正値の一例>
次に、読み出しレベルの補正値の一例について説明する。図30は、フラグデータとカウント値との差と読み出しレベルとの関係を示す図である。
次に、読み出しレベルの補正値の一例について説明する。図30は、フラグデータとカウント値との差と読み出しレベルとの関係を示す図である。
図5から理解できるように、読み出しレベルARは、“E”レベルと、“A”、“B”、“C”レベルとを判定するために使用される。読み出しレベルBRは、下位ページプログラムにおける“LM”レベルを判定するために使用される。読み出しレベルCRは、“E”、“A”、“B”レベルと、“C”レベルとを判定するために使用される。すなわち、下位ページ読み出し動作では、読み出しレベルBRが使用され、上位ページ読み出し動作では、読み出しレベルAR、CRが使用さる。なお、上位ページ読み出し動作において、下位ページデータがデータキャッシュに保持されていない場合は、最初に下位ページ読み出し動作が行われる。
図30に示すように、読み出しレベルARに関して、“E”セルの数の差が負(フラグデータの方が小さい)である場合、閾値が“A”、“B”、“C”レベルから“E”レベルに低下したメモリセルが多くなっている。よって、読み出しレベルARを下げる必要がある。
読み出しレベルBRに関して、“LM”セルの数の差が負(フラグデータの方が小さい)である場合、閾値が“LM”レベルに上がったメモリセルが多くなっている。この場合、読み出しレベルBRを上げる必要がある。
読み出しレベルCRに関して、“C”セルの数の差が負(フラグデータの方が小さい)である場合、閾値が“E”、“A”、“B”レベルから“C”レベルに上がったメモリセルが多くなっている。この場合、読み出しレベルARを上げる必要がある。
図30に示すように読み出しレベルを補正することで、メモリセルアレイの劣化具合に応じてより正確な読み出し動作が実現できる。
なお、積層型メモリセルアレイを採用した場合は、第1実施形態と同様に、ボトム領域BA、ミドル領域MA、及びトップ領域TAのそれぞれにおいて補正値を設定するようにしても良い。さらに、ワード線単位で補正値を設定するようにしても良い。
[2−4−2 第2実施例
次に、第2実施例に係る読み出し動作について説明する。図31は、第2実施例に係る読み出し動作のタイミングチャートである。図31は、下位ページ読み出し動作及び上位ページ読み出し動作に共通である。
次に、第2実施例に係る読み出し動作について説明する。図31は、第2実施例に係る読み出し動作のタイミングチャートである。図31は、下位ページ読み出し動作及び上位ページ読み出し動作に共通である。
制御回路120は、プリフィックスコマンドPrefix-CMD2、読み出しコマンド“00h”、アドレス信号A1〜A5、読み出し実行コマンド“30h”を、メモリコントローラ200から受ける。プリフィックスコマンドPrefix-CMD2により、第1実施例とは異なる読み出しモードを指定できる。
続いて、制御回路120は、通常読み出し動作及び補正読み出し動作を連続して行う。通常読み出し動作及び補正読み出し動作は、第1実施例と同じである。続いて、制御回路120は、補正読み出し動作によって読み出されたデータをメモリコントローラ200に出力する
第2実施例に係る読み出し動作は、例えば、連続してページデータを読み出す場合に特に有効である。すなわち、前回の読み出し動作でメモリセルアレイがある程度劣化していることが判断できる場合、最初から補正読み出しに基づく読み出しデータを要求する。これにより、第1実施例に比べて読み出し動作を簡略化できる。
第2実施例に係る読み出し動作は、例えば、連続してページデータを読み出す場合に特に有効である。すなわち、前回の読み出し動作でメモリセルアレイがある程度劣化していることが判断できる場合、最初から補正読み出しに基づく読み出しデータを要求する。これにより、第1実施例に比べて読み出し動作を簡略化できる。
[2−4−3 第3実施例
次に、第3実施例に係る読み出し動作について説明する。図32は、第3実施例に係る下位ページ読み出し動作のフローチャートである。図33は、第3実施例に係る下位ページ読み出し動作の電圧波形である。読み出し動作のタイミングチャートは、図31と同じである。
次に、第3実施例に係る読み出し動作について説明する。図32は、第3実施例に係る下位ページ読み出し動作のフローチャートである。図33は、第3実施例に係る下位ページ読み出し動作の電圧波形である。読み出し動作のタイミングチャートは、図31と同じである。
制御回路120は、プリフィックスコマンドPrefix-CMD2、読み出しコマンド“00h”、アドレス信号A1〜A5、読み出し実行コマンド“30h”を、メモリコントローラ200から受ける(ステップS700)。これに応答して、制御回路120は、メモリコントローラ200にビジー信号を送る。
続いて、制御回路120は、通常の読み出し動作を行う(ステップS701)。通常読み出し動作において、選択ページの冗長領域に記憶されたフラグデータが読み出され、制御回路120は、このフラグデータを取得する(ステップS702)。そして、制御回路120は、フラグデータを用いて、プログラム時における“LM”レベルのビット数を算出する。
続いて、制御回路120は、データキャッシュXDLに保持されている読み出しデータを用いて、サンプリング領域のうち“LM”レベルのビット数をカウントする(ステップS703)。続いて、制御回路120は、ステップS702のフラグデータから算出された期待値と、ステップS703の読み出し結果とを比較し、読み出し結果と期待値との差が許容値以内になった場合、読み出しがパスであると判定する(ステップS704)。その後、制御回路120は、通常読み出しのデータアウトを行う。
一方、ステップS704において読み出しパスでない場合、制御回路120は、比較結果に基づいて、読み出しレベルを算出する(ステップS705)。図33の例では、通常の読み出しレベルVcgrvにステップアップ電圧Δ1が加算された読み出しレベル“Vcgrv+Δ1”が算出される。
続いて、制御回路120は、読み出しループ回数が最大値に到達しているか否かを判定する(ステップS706)。読み出しループ回数が最大値に到達していない場合、制御回路120は、読み出しレベル“Vcgrv+Δ1”を用いて、補正読み出し動作を行う(ステップS707)。
続いて、制御回路120は、補正読み出しによって読み出されたデータに含まれるサンプリング領域のうち“LM”レベルのビット数をカウントする(ステップS708)。続いて、制御回路120は、ステップS702のフラグデータから算出された期待値と、ステップS708の読み出し結果とを比較する。そして、制御回路120は、読み出し結果と期待値とが同じになるか、又は読み出し結果と期待値との差が許容値以内になった場合に、読み出しがパスであると判定する(ステップS709)。続いて、制御回路120は、補正読み出し動作によって読み出されたデータ(データキャッシュXDLに保持されたデータ)をメモリコントローラ200に出力する(ステップS711)。
一方、ステップS709において読み出しがパスでない場合、制御回路120は、読み出しレベルを電圧Δ1だけステップアップし(ステップS710)、補正読み出し動作を繰り返す。また、制御回路120は、ステップS706において読み出しループ回数が最大値に到達した場合、最後に読み出されたデータをメモリコントローラ200に出力する。
なお、上位ページ読み出し動作は、下位ページ読み出し動作の“LM”レベルの演算を“E”レベル、“A”レベル、“B”レベル、及び“C”レベルのそれぞれにおいて行う以外は、図32のフローチャートを援用できる。
[2−5] 効果
以上詳述したように第2実施形態によれば、NAND型フラッシュメモリ100は、より信頼性の高いデータをメモリコントローラ200に出力することができる。従来は、メモリコントローラ200は、NAND型フラッシュメモリ100からの読み出し結果をエラー訂正し、訂正NGであれば、読み出しレベルを変えて再度読み出しを行う、というシーケンスを繰り返す。このようなシーケンスを用いたい場合、読み出し時間が長くなる。しかし、本実施形態では、より信頼性の高いデータをメモリコントローラ200に出力できると共に、読み出し時間を低減できる。
以上詳述したように第2実施形態によれば、NAND型フラッシュメモリ100は、より信頼性の高いデータをメモリコントローラ200に出力することができる。従来は、メモリコントローラ200は、NAND型フラッシュメモリ100からの読み出し結果をエラー訂正し、訂正NGであれば、読み出しレベルを変えて再度読み出しを行う、というシーケンスを繰り返す。このようなシーケンスを用いたい場合、読み出し時間が長くなる。しかし、本実施形態では、より信頼性の高いデータをメモリコントローラ200に出力できると共に、読み出し時間を低減できる。
また、フラグデータと読み出し結果の差に応じて、読み出しレベルを補正するようにしている。これにより、メモリセルアレイの劣化具合に応じてより最適な読み出し動作が実現できる。この結果、データ信頼性の高いNAND型フラッシュメモリ100を実現できる。上位ページについても、下位ページと同様の効果を得られる。
さらに、メモリコントローラ200の指示に応じて、1回目の通常読み出しによる読み出しデータと、2回目以降の補正読み出しによる読み出しデータとの一方を選択的にメモリコントローラ200に送ることができる。これにより、メモリコントローラ200の要求に適したデータを出力可能なNAND型フラッシュメモリ100を実現できる。
[第3実施形態]
第2実施形態では、ビットカウントをNAND型フラッシュメモリ100内で行うようにしているが、ビットカウント動作の分だけ書き込み時間が長くなってしまう。そこで、第3実施形態は、ビットカウントをメモリコントローラ200が行い、フラグデータの管理をNAND型フラッシュメモリ100が行うようにしている。
第2実施形態では、ビットカウントをNAND型フラッシュメモリ100内で行うようにしているが、ビットカウント動作の分だけ書き込み時間が長くなってしまう。そこで、第3実施形態は、ビットカウントをメモリコントローラ200が行い、フラグデータの管理をNAND型フラッシュメモリ100が行うようにしている。
[3−1] 書き込み動作
第3実施形態に係る書き込み動作について説明する。図34は、第3実施形態に係るメモリコントローラ200及びNAND型フラッシュメモリ100の書き込み動作を示すタイミングチャートである。図35は、メモリコントローラ200及びNAND型フラッシュメモリ100の書き込み動作を示すフローチャートである。
第3実施形態に係る書き込み動作について説明する。図34は、第3実施形態に係るメモリコントローラ200及びNAND型フラッシュメモリ100の書き込み動作を示すタイミングチャートである。図35は、メモリコントローラ200及びNAND型フラッシュメモリ100の書き込み動作を示すフローチャートである。
まず、メモリコントローラ200は、ホスト機器400から書き込み命令を受ける(ステップS800)。続いて、メモリコントローラ200は、ホスト機器400からの書き込み命令に応答して、書き込みコマンド“80”及びアドレスをNAND型フラッシュメモリ100に発行する(ステップS801)。NAND型フラッシュメモリ100は、メモリコントローラ200からの書き込みコマンドに応答して、書き込み準備を開始する(ステップS802)。
続いて、メモリコントローラ200は、サンプリング領域に書き込まれたデータのビット数と期待値とを比較するためのビットカウントモードを行うか否かを判定する(ステップS802)。ビットカウントモードを行わない場合、メモリコントローラ200は、通常の書き込み処理を行う。すなわち、メモリコントローラ200は、NAND型フラッシュメモリ100にデータを入力する(ステップS804)。これに応答して、NAND型フラッシュメモリ100は、データをデータキャッシュXDLにセットする(ステップS805)。続いて、メモリコントローラ200は、書き込み実行コマンド“15/10”をNAND型フラッシュメモリ100に発行する(ステップS806)。これに応答して、NAND型フラッシュメモリ100は、書き込みを実行する(ステップS806)。
ステップS803においてビットカウントモードを行う場合、メモリコントローラ200は、サンプリング領域に書き込まれるデータのうち対応する書き込みレベルのビット数をカウントする(ステップS808)。具体的には、下位ページプログラムの場合は、“LM”レベル(或いは“E”レベル)のビット数をカウントし、上位ページプログラムの場合は、“E”レベル、“A”レベル、“B”レベル、及び“C”レベルのそれぞれのビット数をカウントする。このビットカウント動作は、第2実施形態と同じである。続いて、メモリコントローラ200は、ステップS808におけるカウント値をカウントレジスタにセットする(ステップS809)。カウントレジスタは、RAM240の一部を用いて構成しても良いし、専用のレジスタを新たに用意しても良い。
続いて、メモリコントローラ200は、NAND型フラッシュメモリ100にデータを入力する(ステップS810)。これに応答して、NAND型フラッシュメモリ100は、データをデータキャッシュXDLにセットする(ステップS811)。続いて、メモリコントローラ200は、データ入力終了を通知するコマンド“1X”をNAND型フラッシュメモリ100に発行する(ステップS812)。NAND型フラッシュメモリ100は、コマンド“1X”に応答して、カウント値をフラグにセットする準備を開始する(ステップS813)。すなわち、NAND型フラッシュメモリ100は、データキャッシュXDLのデータをデータキャッシュUDLに転送する(図34の“X2U”)。
続いて、メモリコントローラ200は、カウントレジスタに格納されたカウント値(CNT result)をNAND型フラッシュメモリ100に送る(ステップS814)。続いて、NAND型フラッシュメモリ100は、カウント値をフラグにセットする(ステップS815)。
続いて、メモリコントローラ200は、書き込み実行コマンド“15/10”をNAND型フラッシュメモリ100に発行する(ステップS816)。これに応答して、NAND型フラッシュメモリ100は、書き込みを実行する(ステップS817)。すなわち、図34に示すように、書き込み(プログラム)とベリファイ(pvfy)とが繰り返される。これにより、選択ページの冗長領域に、カウント値に対応するフラグデータが書き込まれる。
[3−2] 読み出し動作
次に、第3実施形態に係る読み出し動作について説明する。図36及び図37は、メモリコントローラ200及びNAND型フラッシュメモリ100の読み出し動作を示すフローチャートである。
次に、第3実施形態に係る読み出し動作について説明する。図36及び図37は、メモリコントローラ200及びNAND型フラッシュメモリ100の読み出し動作を示すフローチャートである。
まず、メモリコントローラ200は、ホスト機器400から読み出し命令を受ける(ステップS900)。続いて、メモリコントローラ200は、ホスト機器400からの読み出し命令に応答して、読み出しコマンド及びアドレスをNAND型フラッシュメモリ100に発行する(ステップS901)。NAND型フラッシュメモリ100は、メモリコントローラ200からの読み出しコマンドに応答して、読み出し準備を開始する(ステップS902)。
続いて、メモリコントローラ200は、読み出し実行コマンドをNAND型フラッシュメモリ100に発行する(ステップS903)。NAND型フラッシュメモリ100は、読み出し実行コマンドに応答して、読み出しを開始する(ステップS904)。
続いて、メモリコントローラ200は、ステータスリードコマンドをNAND型フラッシュメモリ100に発行する(ステップS905)。NAND型フラッシュメモリ100は、ステータスリードコマンドに応答して、読み出しデータに関するステータスをメモリコントローラ200に送るとともに、レディ信号をメモリコントローラ200に送る(ステップS906)。
続いて、メモリコントローラ200は、データ出力を指示する(ステップS907)。この指示に応答して、NAND型フラッシュメモリ100は、メモリコントローラ200にデータを出力する(ステップS908)。
続いて、メモリコントローラ200は、ビットカウントモードを行うか否かを判定する(ステップS909)。ビットカウントモードを行わない場合、読み出しデータのエラー訂正が行われた後、読み出し動作が終了する。
ステップS909においてビットカウントモードを行う場合、メモリコントローラ200は、読み出しデータを用いて、サンプリング領域のデータのうち着目レベルのビット数をカウントする(ステップS910)。このビットカウント動作は、第2実施形態と同じである。続いて、メモリコントローラ200は、ステップS910におけるカウント値をカウントレジスタにセットする(ステップS911)。
続いて、ECC回路250は、読み出しデータのエラー訂正を行う(ステップS912)。エラー訂正が正常に行われた場合(ステップS913)、読み出し動作が終了する。一方、エラー訂正が正常に行われなかった場合、ステップS914を経由して、メモリコントローラ200は、フラグデータの出力を指示するフラグ出力コマンドをNAND型フラッシュメモリ100に発行する(ステップS915)。NAND型フラッシュメモリ100は、フラグ出力コマンドに応答して、フラグデータをメモリコントローラ200に送る(ステップS916)。続いて、メモリコントローラ200は、フラグデータとカウントレジスタに格納されたカウント値と比較し、この比較結果に基づいて読み出しレベルを算出する(ステップS917)。
続いて、メモリコントローラ200は、補正読み出しを指示する(外部から読み出しレベルを指示する)シフトリードコマンドをNAND型フラッシュメモリ100に発行するとともに、ステップS917における読み出しレベルをNAND型フラッシュメモリ100に送る(ステップS918)。NAND型フラッシュメモリ100は、メモリコントローラ200からのシフトリードコマンドに応答して、読み出し準備を開始する(ステップS919)。
続いて、メモリコントローラ200は、読み出しコマンド及びアドレスをNAND型フラッシュメモリ100に発行する(ステップS920)。続いて、メモリコントローラ200は、読み出し実行コマンドをNAND型フラッシュメモリ100に発行する(ステップS921)。その後、NAND型フラッシュメモリ100は、補正読み出しを実行する(ステップS922)。補正読み出し動作は、第2実施形態と同じである。
[3−3] 効果
第3実施形態によれば、ビットカウント動作をメモリコントローラ200で行うことができ、また、カウント結果をNAND型フラッシュメモリ100で管理することができる。これにより、NAND型フラッシュメモリ100がビットカウント動作用のカウンタを備える必要がないため、NAND型フラッシュメモリ100の回路サイズを低減することができ、また、NAND型フラッシュメモリ100の処理負荷を低減することができる。さらに、NAND型フラッシュメモリ100の書き込み時間を低減することができる。その他の効果は、第2実施形態と同じである。
第3実施形態によれば、ビットカウント動作をメモリコントローラ200で行うことができ、また、カウント結果をNAND型フラッシュメモリ100で管理することができる。これにより、NAND型フラッシュメモリ100がビットカウント動作用のカウンタを備える必要がないため、NAND型フラッシュメモリ100の回路サイズを低減することができ、また、NAND型フラッシュメモリ100の処理負荷を低減することができる。さらに、NAND型フラッシュメモリ100の書き込み時間を低減することができる。その他の効果は、第2実施形態と同じである。
[第4実施形態]
第4実施形態は、第3実施形態の変形例であり、ビットカウント及びフラグデータの管理をメモリコントローラ200が行うようにしている。
第4実施形態は、第3実施形態の変形例であり、ビットカウント及びフラグデータの管理をメモリコントローラ200が行うようにしている。
[4−1] 書き込み動作
第4実施形態に係る書き込み動作について説明する。図38は、第4実施形態に係るメモリコントローラ200及びNAND型フラッシュメモリ100の書き込み動作を示すタイミングチャートである。図39は、メモリコントローラ200及びNAND型フラッシュメモリ100の書き込み動作を示すフローチャートである。
第4実施形態に係る書き込み動作について説明する。図38は、第4実施形態に係るメモリコントローラ200及びNAND型フラッシュメモリ100の書き込み動作を示すタイミングチャートである。図39は、メモリコントローラ200及びNAND型フラッシュメモリ100の書き込み動作を示すフローチャートである。
図39のステップS1000〜S1002は、図35のステップS800〜S802と同じである。続いて、メモリコントローラ200は、ビットカウントモードを行うか否かを判定する(ステップS1003)。ビットカウントモードを行わない場合、メモリコントローラ200は、通常の書き込み処理を行う。すなわち、メモリコントローラ200は、NAND型フラッシュメモリ100にデータを入力する(ステップS1007)。これに応答して、NAND型フラッシュメモリ100は、データをデータキャッシュXDLにセットする(ステップS1008)。続いて、メモリコントローラ200は、書き込み実行コマンド“15/10”をNAND型フラッシュメモリ100に発行する(ステップS1009)。これに応答して、NAND型フラッシュメモリ100は、書き込みを実行する(ステップS1010)。
ステップS1003においてビットカウントモードを行う場合、メモリコントローラ200は、サンプリング領域に書き込まれるデータのうち対応する書き込みレベルのビット数をカウントする(ステップS1003)。続いて、メモリコントローラ200は、ステップS1004におけるカウント値をカウントレジスタにセットする(ステップS1005)。
続いて、メモリコントローラ200は、書き込みレベルとカウント値とを関連付けてRAM240に記憶する(ステップS1006)。その後、前述したステップS1007〜S1010が行われる。
[4−2] 読み出し動作
次に、第4実施形態に係る読み出し動作について説明する。図40は、メモリコントローラ200及びNAND型フラッシュメモリ100の読み出し動作を示すフローチャートである。第4実施形態のステップS900〜S914は、第3実施形態の読み出し動作で説明したステップS900〜S914(図36及び図37)と同じである。図40には、ステップS913以降のフローチャートを示している。
次に、第4実施形態に係る読み出し動作について説明する。図40は、メモリコントローラ200及びNAND型フラッシュメモリ100の読み出し動作を示すフローチャートである。第4実施形態のステップS900〜S914は、第3実施形態の読み出し動作で説明したステップS900〜S914(図36及び図37)と同じである。図40には、ステップS913以降のフローチャートを示している。
ステップS914においてビットカウントモードを行う場合、メモリコントローラ200は、ステップS911においてカウントレジスタに格納されたカウント値と、ステップS1006においてRAM240に記憶されたカウント値とを比較する(ステップS1100)。続いて、メモリコントローラ200は、ステップS1100の比較結果に基づいて読み出しレベルを算出する(ステップS1101)。
続いて、メモリコントローラ200は、シフトリードコマンドをNAND型フラッシュメモリ100に発行するとともに、ステップS1101における読み出しレベルをNAND型フラッシュメモリ100に送る(ステップS1102)。その後のステップS1103〜S1106は、第3実施形態のステップS919〜S922と同じである。
[4−3] 効果
第4実施形態によれば、ビットカウント動作及びカウント結果の管理をメモリコントローラ200で行うことができる。これにより、NAND型フラッシュメモリ100は、カウント値を記憶する必要がないため、NAND型フラッシュメモリ100の処理負荷を低減することができる。また、NAND型フラッシュメモリ100の書き込み時間を低減することができる。その他の効果は、第2実施形態と同じである。
第4実施形態によれば、ビットカウント動作及びカウント結果の管理をメモリコントローラ200で行うことができる。これにより、NAND型フラッシュメモリ100は、カウント値を記憶する必要がないため、NAND型フラッシュメモリ100の処理負荷を低減することができる。また、NAND型フラッシュメモリ100の書き込み時間を低減することができる。その他の効果は、第2実施形態と同じである。
なお、本発明に関する各実施形態において、
(1)読み出し動作では、
Aレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば0V〜0.55Vの間である。これに限定されることなく、0.1V〜0.24V, 0.21V〜0.31V, 0.31V〜0.4V, 0.4V〜0.5V, 0.5V〜0.55Vいずれかの間にしてもよい。
(1)読み出し動作では、
Aレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば0V〜0.55Vの間である。これに限定されることなく、0.1V〜0.24V, 0.21V〜0.31V, 0.31V〜0.4V, 0.4V〜0.5V, 0.5V〜0.55Vいずれかの間にしてもよい。
Bレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば1.5V〜2.3Vの間である。これに限定されることなく、1.65V〜1.8V, 1.8V〜1.95V, 1.95V〜2.1V, 2.1V〜2.3Vいずれかの間にしてもよい。
Cレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば3.0V〜4.0Vの間である。これに限定されることなく、3.0V〜3.2V, 3.2V〜3.4V, 3.4V〜3.5V, 3.5V〜3.6V, 3.6V〜4.0Vいずれかの間にしてもよい。
読み出し動作の時間(tR)としては、例えば25μs〜38μs, 38μs〜70μs, 70μs〜80μsの間にしてもよい。
(2)書き込み動作は、上述したとおりプログラム動作とベリファイ動作を含む。書き込み動作では、
プログラム動作時に選択されたワード線に最初に印加される電圧は、例えば13.7V〜14.3Vの間である。これに限定されることなく、例えば13.7V〜14.0V, 14.0V〜14.6Vいずれかの間としてもよい。
プログラム動作時に選択されたワード線に最初に印加される電圧は、例えば13.7V〜14.3Vの間である。これに限定されることなく、例えば13.7V〜14.0V, 14.0V〜14.6Vいずれかの間としてもよい。
奇数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧と、偶数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧を変えてもよい。
プログラム動作をISPP方式(Incremental Step Pulse Program)としたとき、ステップアップの電圧として、例えば0.5V程度が挙げられる。
非選択のワード線に印加される電圧としては、例えば6.0V〜7.3Vの間としてもよい。この場合に限定されることなく、例えば7.3V〜8.4Vの間としてもよく、6.0V以下としてもよい。
非選択のワード線が奇数番目のワード線であるか、偶数番目のワード線であるかで、印加するパス電圧を変えてもよい。
書き込み動作の時間(tProg)としては、例えば1700μs〜1800μs, 1800μs〜1900μs, 1900μs〜2000μsの間にしてもよい。
(3)消去動作では、
半導体基板上部に形成され、かつ、上記メモリセルが上方に配置されたウェルに最初に印加する電圧は、例えば12V〜13.6Vの間である。この場合に限定されることなく、例えば13.6V〜14.8V, 14.8V〜19.0V, 19.0〜19.8V, 19.8V〜21Vの間であってもよい。
半導体基板上部に形成され、かつ、上記メモリセルが上方に配置されたウェルに最初に印加する電圧は、例えば12V〜13.6Vの間である。この場合に限定されることなく、例えば13.6V〜14.8V, 14.8V〜19.0V, 19.0〜19.8V, 19.8V〜21Vの間であってもよい。
消去動作の時間(tErase)としては、例えば3000μs〜4000μs, 4000μs〜5000μs, 4000μs〜9000μsの間にしてもよい。
(4)メモリセルの構造は、
半導体基板(シリコン基板)上に膜厚が4〜10nmのトンネル絶縁膜を介して配置された電荷蓄積層を有している。この電荷蓄積層は膜厚が2〜3nmのSiN、またはSiONなどの絶縁膜と膜厚が3〜8nmのポリシリコンとの積層構造にすることができる。また、ポリシリコンにはRuなどの金属が添加されていても良い。電荷蓄積層の上には絶縁膜を有している。この絶縁膜は、例えば、膜厚が3〜10nmの下層High−k膜と膜厚が3〜10nmの上層High−k膜に挟まれた膜厚が4〜10nmのシリコン酸化膜を有している。High−k膜はHfOなどが挙げられる。また、シリコン酸化膜の膜厚はHigh−k膜の膜厚よりも厚くすることができる。絶縁膜上には膜厚が3〜10nmの仕事関数調整用の材料を介して膜厚が30nm〜70nmの制御電極が形成されている。ここで仕事関数調整用の材料はTaOなどの金属酸化膜、TaNなどの金属窒化膜である。制御電極にはWなどを用いることができる。
半導体基板(シリコン基板)上に膜厚が4〜10nmのトンネル絶縁膜を介して配置された電荷蓄積層を有している。この電荷蓄積層は膜厚が2〜3nmのSiN、またはSiONなどの絶縁膜と膜厚が3〜8nmのポリシリコンとの積層構造にすることができる。また、ポリシリコンにはRuなどの金属が添加されていても良い。電荷蓄積層の上には絶縁膜を有している。この絶縁膜は、例えば、膜厚が3〜10nmの下層High−k膜と膜厚が3〜10nmの上層High−k膜に挟まれた膜厚が4〜10nmのシリコン酸化膜を有している。High−k膜はHfOなどが挙げられる。また、シリコン酸化膜の膜厚はHigh−k膜の膜厚よりも厚くすることができる。絶縁膜上には膜厚が3〜10nmの仕事関数調整用の材料を介して膜厚が30nm〜70nmの制御電極が形成されている。ここで仕事関数調整用の材料はTaOなどの金属酸化膜、TaNなどの金属窒化膜である。制御電極にはWなどを用いることができる。
また、メモリセル間にはエアギャップを形成することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
40…セル電流測定回路、100…NAND型フラッシュメモリ、111…メモリセルアレイ、112…ロウデコーダ、113…センスアンプ部、114…NANDストリング、115…ページバッファ、116…カラムデコーダ、117…ドライバ、118…電圧発生回路、119…入出力回路、120…制御回路、121…アドレス・コマンドレジスタ、122…レジスタ、200…メモリコントローラ、210…ホストインターフェース回路、220…CPU、230…ROM、240…RAM、250…ECC回路、260…NANDインターフェース回路、300…メモリシステム、400…ホスト機器。
Claims (7)
- 複数のメモリストリングを備え、前記複数のメモリストリングの各々は直列接続された複数のメモリセルを有する、メモリセルアレイと、
前記複数のメモリストリングに共通接続された複数のワード線と、
前記複数のワード線の各々に接続された複数のメモリセルからなるページに対して書き込み動作及び読み出し動作を制御する制御回路と、
を具備し、
前記制御回路は、
メモリストリングに流れるセル電流を測定し、
セル電流の測定結果に基づいて、ワード線に印加される書き込み電圧を補正する、
ことを特徴とする半導体記憶装置。 - 前記制御回路は、
前記測定結果をフラグデータとして、前記ページの冗長領域に書き込み、
第1読み出しにおいて、前記冗長領域から前記フラグデータを読み出し、
第2読み出しにおいて、前記フラグデータに基づいて、ワード線に印加される読み出し電圧を補正する、
ことを特徴とする請求項1に記載の半導体記憶装置。 - 前記制御回路は、
第1書き込みにおいて、前記測定結果をフラグデータとして、前記ページの冗長領域に書き込み、
第2書き込みにおいて、前記冗長領域から前記フラグデータを読み出し、
前記第2書き込みにおいて、前記フラグデータに基づいて、ワード線に印加される書き込み電圧を補正する、
ことを特徴とする請求項1又は2に記載の半導体記憶装置。 - 書き込み電圧の情報を含む複数のパラメータを格納するレジスタをさらに具備し、
前記制御回路は、前記測定結果に基づいて、前記複数のパラメータの1つを選択し、前記選択されたパラメータを用いて、前記書き込み電圧を決定する、
ことを特徴とする請求項1乃至3のいずれかに記載の半導体記憶装置。 - 複数のページを備え、前記複数のページの各々は複数のメモリセルを有する、メモリセルアレイと、
前記複数のページにそれぞれ接続された複数のワード線と、
ページに対して書き込み動作及び読み出し動作を制御する制御回路と、
を具備し、
前記制御回路は、
前記ページの一部であるサンプリング領域に書き込むべき第1レベルのビット数をカウントし、前記カウント値をフラグデータとして前記ページの冗長領域に書き込み、
第1読み出しにおいて、前記冗長領域から前記フラグデータを読み出すと共に、前記サンプリング領域から読み出された第1レベルのビット数をカウントし、
第2読み出しにおいて、前記フラグデータと前記第1読み出しによるカウント値との差に基づいて、ワード線に印加される読み出し電圧を補正する、
ことを特徴とする半導体記憶装置。 - 前記第1読み出しによる読み出しデータを保持する第1データキャッシュと、
前記第2読み出しによる読み出しデータを保持する第2データキャッシュと、
をさらに具備し、
前記制御回路は、外部から受けるコマンドに応じて、前記第1データキャッシュのデータ及び前記第2データキャッシュのデータの一方を出力する、
ことを特徴とする請求項5に記載の半導体記憶装置。 - 前記第1読み出しによる読み出しデータを保持する第1データキャッシュと、
前記第2読み出しによる読み出しデータを保持する第2データキャッシュと、
をさらに具備し、
前記制御回路は、
第1タイミングで前記第1データキャッシュのデータを出力し、
第2タイミングで外部からコマンドを受けた場合に、前記第2データキャッシュのデータを出力する、
ことを特徴とする請求項5に記載の半導体記憶装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014180577A JP2016054017A (ja) | 2014-09-04 | 2014-09-04 | 半導体記憶装置 |
US14/841,459 US9892040B2 (en) | 2014-09-04 | 2015-08-31 | Semiconductor memory device |
CN201510555667.2A CN105405464B (zh) | 2014-09-04 | 2015-09-02 | 半导体存储装置 |
TW104128931A TWI552317B (zh) | 2014-09-04 | 2015-09-02 | Semiconductor memory device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014180577A JP2016054017A (ja) | 2014-09-04 | 2014-09-04 | 半導体記憶装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016054017A true JP2016054017A (ja) | 2016-04-14 |
Family
ID=55438115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014180577A Pending JP2016054017A (ja) | 2014-09-04 | 2014-09-04 | 半導体記憶装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9892040B2 (ja) |
JP (1) | JP2016054017A (ja) |
CN (1) | CN105405464B (ja) |
TW (1) | TWI552317B (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018028956A (ja) * | 2016-08-19 | 2018-02-22 | 東芝メモリ株式会社 | 半導体記憶装置及びメモリシステム |
JP2018028958A (ja) * | 2016-08-19 | 2018-02-22 | 東芝メモリ株式会社 | 半導体記憶装置及びメモリシステム |
JP2021508904A (ja) * | 2017-12-22 | 2021-03-11 | マイクロン テクノロジー,インク. | 自動参照のメモリセル読み出し技術 |
US11282571B2 (en) | 2017-12-22 | 2022-03-22 | Micron Technology, Inc. | Auto-referenced memory cell read techniques |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10230396B1 (en) | 2013-03-05 | 2019-03-12 | Microsemi Solutions (Us), Inc. | Method and apparatus for layer-specific LDPC decoding |
US9813080B1 (en) | 2013-03-05 | 2017-11-07 | Microsemi Solutions (U.S.), Inc. | Layer specific LDPC decoder |
US9847135B2 (en) * | 2015-01-30 | 2017-12-19 | Toshiba Memory Corporation | Memory device and method of reading data |
US10332613B1 (en) | 2015-05-18 | 2019-06-25 | Microsemi Solutions (Us), Inc. | Nonvolatile memory system with retention monitor |
US9799405B1 (en) | 2015-07-29 | 2017-10-24 | Ip Gem Group, Llc | Nonvolatile memory system with read circuit for performing reads using threshold voltage shift read instruction |
US9620509B1 (en) * | 2015-10-30 | 2017-04-11 | Taiwan Semiconductor Manufacturing Co., Ltd. | Static random access memory device with vertical FET devices |
US9886214B2 (en) | 2015-12-11 | 2018-02-06 | Ip Gem Group, Llc | Nonvolatile memory system with erase suspend circuit and method for erase suspend management |
US9892794B2 (en) | 2016-01-04 | 2018-02-13 | Ip Gem Group, Llc | Method and apparatus with program suspend using test mode |
US9899092B2 (en) * | 2016-01-27 | 2018-02-20 | Ip Gem Group, Llc | Nonvolatile memory system with program step manager and method for program step management |
US10096366B2 (en) * | 2016-01-28 | 2018-10-09 | Toshiba Memory Corporation | Memory system including multi-plane flash memory and controller |
US9972383B2 (en) | 2016-03-08 | 2018-05-15 | Macronix International Co., Ltd. | Reading memory cells |
KR102469680B1 (ko) * | 2016-05-04 | 2022-11-22 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 |
US10291263B2 (en) | 2016-07-28 | 2019-05-14 | Ip Gem Group, Llc | Auto-learning log likelihood ratio |
US10283215B2 (en) | 2016-07-28 | 2019-05-07 | Ip Gem Group, Llc | Nonvolatile memory system with background reference positioning and local reference positioning |
US10236915B2 (en) | 2016-07-29 | 2019-03-19 | Microsemi Solutions (U.S.), Inc. | Variable T BCH encoding |
JP2018032141A (ja) * | 2016-08-23 | 2018-03-01 | 東芝メモリ株式会社 | 半導体装置 |
US10026486B1 (en) | 2017-03-06 | 2018-07-17 | Sandisk Technologies Llc | First read countermeasures in memory |
US10347315B2 (en) | 2017-10-31 | 2019-07-09 | Sandisk Technologies Llc | Group read refresh |
JP2020009509A (ja) * | 2018-07-03 | 2020-01-16 | キオクシア株式会社 | 半導体記憶装置 |
CN111354732B (zh) * | 2018-09-14 | 2021-04-27 | 长江存储科技有限责任公司 | 三维存储器件以及用于形成三维存储器件的方法 |
JP2020149742A (ja) | 2019-03-12 | 2020-09-17 | キオクシア株式会社 | 半導体記憶装置 |
US11315649B2 (en) | 2019-04-16 | 2022-04-26 | Samsung Electronics Co., Ltd. | Memory controller, memory device and memory system having improved threshold voltage distribution characteristics and related operating methods |
KR102671402B1 (ko) | 2019-04-16 | 2024-05-31 | 삼성전자주식회사 | 문턱전압 산포 특성을 향상한 메모리 컨트롤러, 메모리 시스템 및 그 동작방법 |
JP2021047939A (ja) * | 2019-09-17 | 2021-03-25 | キオクシア株式会社 | 半導体記憶装置 |
US10861537B1 (en) | 2019-10-30 | 2020-12-08 | Sandisk Technologies Llc | Countermeasures for first read issue |
CN116189744A (zh) | 2021-03-22 | 2023-05-30 | 长江存储科技有限责任公司 | 存储器件及其编程操作 |
WO2022204916A1 (en) * | 2021-03-30 | 2022-10-06 | Yangtze Memory Technologies Co., Ltd. | Memory device and operation method thereof |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3935139B2 (ja) * | 2002-11-29 | 2007-06-20 | 株式会社東芝 | 半導体記憶装置 |
US7436733B2 (en) | 2006-03-03 | 2008-10-14 | Sandisk Corporation | System for performing read operation on non-volatile storage with compensation for coupling |
JP4791912B2 (ja) * | 2006-08-31 | 2011-10-12 | 株式会社東芝 | 不揮発性半導体記憶装置及び不揮発性記憶システム |
US7518923B2 (en) | 2006-12-29 | 2009-04-14 | Sandisk Corporation | Margined neighbor reading for non-volatile memory read operations including coupling compensation |
US8073648B2 (en) | 2007-05-14 | 2011-12-06 | Sandisk Il Ltd. | Measuring threshold voltage distribution in memory using an aggregate characteristic |
JP4510060B2 (ja) | 2007-09-14 | 2010-07-21 | 株式会社東芝 | 不揮発性半導体記憶装置の読み出し/書き込み制御方法 |
JP5142692B2 (ja) | 2007-12-11 | 2013-02-13 | 株式会社東芝 | 不揮発性半導体記憶装置 |
JP4510072B2 (ja) * | 2007-12-20 | 2010-07-21 | 力晶半導体股▲ふん▼有限公司 | 不揮発性半導体記憶装置とその書き込み方法 |
JP2009238874A (ja) | 2008-03-26 | 2009-10-15 | Toshiba Corp | 半導体メモリ及びその製造方法 |
JP5283960B2 (ja) | 2008-04-23 | 2013-09-04 | 株式会社東芝 | 三次元積層不揮発性半導体メモリ |
JP2009266944A (ja) | 2008-04-23 | 2009-11-12 | Toshiba Corp | 三次元積層不揮発性半導体メモリ |
JP2009266349A (ja) * | 2008-04-28 | 2009-11-12 | Toshiba Corp | 不揮発性半導体記憶装置 |
US7855913B2 (en) * | 2008-06-10 | 2010-12-21 | Micron Technology, Inc. | Dynamically configurable MLC state assignment |
US8036035B2 (en) * | 2009-03-25 | 2011-10-11 | Micron Technology, Inc. | Erase cycle counter usage in a memory device |
US8355286B2 (en) * | 2009-05-08 | 2013-01-15 | Hynix Semiconductor Inc. | Method of operating nonvolatile memory device controlled by controlling coupling resistance value between a bit line and a page buffer |
US8315092B2 (en) * | 2010-01-27 | 2012-11-20 | Fusion-Io, Inc. | Apparatus, system, and method for determining a read voltage threshold for solid-state storage media |
US8233324B2 (en) | 2010-03-25 | 2012-07-31 | Sandisk Il Ltd. | Simultaneous multi-state read or verify in non-volatile storage |
US8149624B1 (en) * | 2010-09-09 | 2012-04-03 | Macronix International Co., Ltd. | Method and apparatus for reducing read disturb in memory |
KR20120046868A (ko) * | 2010-10-29 | 2012-05-11 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치, 반도체 시스템 및 데이터 감지방법 |
US8693252B2 (en) * | 2011-07-12 | 2014-04-08 | Samsung Electronics Co., Ltd. | Method and system for adjusting read voltage in flash memory device |
KR20130034522A (ko) * | 2011-09-28 | 2013-04-05 | 삼성전자주식회사 | 비휘발성 메모리 장치의 데이터 리드 방법, 및 이를 수행하는 장치 |
KR101809202B1 (ko) * | 2012-01-31 | 2017-12-14 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 읽기 방법 |
JP2014010875A (ja) | 2012-07-02 | 2014-01-20 | Toshiba Corp | 半導体記憶装置 |
TWI475565B (zh) * | 2012-09-06 | 2015-03-01 | Univ Nat Chiao Tung | 靜態隨機存取記憶體的控制電路及其操作方法 |
KR102069864B1 (ko) * | 2012-11-05 | 2020-01-23 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 이의 동작 방법 |
US9099202B2 (en) * | 2012-11-06 | 2015-08-04 | Sandisk Technologies Inc. | 3D stacked non-volatile storage programming to conductive state |
US8964480B2 (en) * | 2013-07-01 | 2015-02-24 | Sandisk Technologies Inc. | Detecting programmed word lines based on NAND string current |
US9343171B1 (en) * | 2015-02-09 | 2016-05-17 | Sandisk Technologies Inc. | Reduced erase-verify voltage for first-programmed word line in a memory device |
-
2014
- 2014-09-04 JP JP2014180577A patent/JP2016054017A/ja active Pending
-
2015
- 2015-08-31 US US14/841,459 patent/US9892040B2/en active Active
- 2015-09-02 TW TW104128931A patent/TWI552317B/zh active
- 2015-09-02 CN CN201510555667.2A patent/CN105405464B/zh active Active
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018028956A (ja) * | 2016-08-19 | 2018-02-22 | 東芝メモリ株式会社 | 半導体記憶装置及びメモリシステム |
JP2018028958A (ja) * | 2016-08-19 | 2018-02-22 | 東芝メモリ株式会社 | 半導体記憶装置及びメモリシステム |
JP2021508904A (ja) * | 2017-12-22 | 2021-03-11 | マイクロン テクノロジー,インク. | 自動参照のメモリセル読み出し技術 |
US11282571B2 (en) | 2017-12-22 | 2022-03-22 | Micron Technology, Inc. | Auto-referenced memory cell read techniques |
US11282574B2 (en) | 2017-12-22 | 2022-03-22 | Micron Technology, Inc. | Auto-referenced memory cell read techniques |
US12009028B2 (en) | 2017-12-22 | 2024-06-11 | Micron Technology, Inc. | Auto-referenced memory cell read techniques |
Also Published As
Publication number | Publication date |
---|---|
US20160071601A1 (en) | 2016-03-10 |
CN105405464B (zh) | 2019-08-02 |
TWI552317B (zh) | 2016-10-01 |
TW201611248A (zh) | 2016-03-16 |
CN105405464A (zh) | 2016-03-16 |
US9892040B2 (en) | 2018-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI552317B (zh) | Semiconductor memory device | |
JP6783682B2 (ja) | 半導体記憶装置及びメモリシステム | |
JP6856400B2 (ja) | 半導体記憶装置及びメモリシステム | |
JP6581019B2 (ja) | 半導体記憶装置 | |
CN110085272B (zh) | 半导体存储装置 | |
JP6290124B2 (ja) | 半導体記憶装置 | |
US11561736B2 (en) | Memory system | |
CN108573728B (zh) | 半导体存储装置及存储器*** | |
JP6199838B2 (ja) | 半導体記憶装置 | |
JP2017224370A (ja) | 半導体記憶装置及びメモリシステム | |
JP2017224374A (ja) | 半導体記憶装置 | |
JP2019029045A (ja) | 半導体記憶装置 | |
JP2015204126A (ja) | 半導体記憶装置 | |
US9361998B2 (en) | Semiconductor memory device and data writing method of the same | |
US9640265B1 (en) | Semiconductor memory device | |
US9990998B2 (en) | Semiconductor memory device and memory system | |
JP2018113084A (ja) | 半導体記憶装置 | |
JP6679739B2 (ja) | 記憶装置 | |
JP2017054567A (ja) | 半導体記憶装置 | |
JP6437421B2 (ja) | 不揮発性半導体記憶装置 | |
TWI567746B (zh) | Nonvolatile semiconductor memory device | |
JP2017152066A (ja) | 不揮発性半導体記憶装置及びメモリシステム | |
JP2019050071A (ja) | 半導体記憶装置及びメモリシステム | |
JP2017168155A (ja) | 半導体記憶装置 | |
JP2020102293A (ja) | 半導体記憶装置 |