JP6679739B2 - 記憶装置 - Google Patents

記憶装置 Download PDF

Info

Publication number
JP6679739B2
JP6679739B2 JP2018540564A JP2018540564A JP6679739B2 JP 6679739 B2 JP6679739 B2 JP 6679739B2 JP 2018540564 A JP2018540564 A JP 2018540564A JP 2018540564 A JP2018540564 A JP 2018540564A JP 6679739 B2 JP6679739 B2 JP 6679739B2
Authority
JP
Japan
Prior art keywords
data
memory cell
read
latch circuit
voltage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018540564A
Other languages
English (en)
Other versions
JPWO2018055733A1 (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.)
Kioxia Corp
Original Assignee
Kioxia 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 Kioxia Corp filed Critical Kioxia Corp
Publication of JPWO2018055733A1 publication Critical patent/JPWO2018055733A1/ja
Application granted granted Critical
Publication of JP6679739B2 publication Critical patent/JP6679739B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital 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/5621Digital 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/5642Sensing 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
    • 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
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5642Multilevel memory with buffers, latches, registers at input or output

Description

実施形態は記憶装置に関する。
記憶装置として、NAND型フラッシュメモリが知られている。
実施形態に係る記憶装置は、第1メモリセル及び前記第1メモリセルに隣り合う第2メモリセルと、前記第1メモリセルからデータを読み出す場合、前記第2メモリセルに対して第1読み出しを行い、前記第1メモリセルに対して第2読み出しを行い、前記第2メモリセルのゲートに前記第2読み出し時とは異なる電圧を印加し、前記第1メモリセルに対して第3読み出しを行い、前記第1〜第3読み出しの結果に基づいて、前記第1メモリセルに記憶された第1データと、前記第1データを補正するための第2データと、を生成するシーケンサと、を備える。
図1は、第1の実施形態に係るメモリシステムのブロック図である。 図2は、NAND型フラッシュメモリのブロック図である。 図3は、ブロック及びセンス回路の回路図である。 図4は、センスアンプ部の回路図である。 図5は、メモリセルトランジスタの取りうるデータ及び閾値分布を示す図である。 図6は、第1の実施形態に係るメモリシステムの読み出し動作を示すフローチャートである。 図7は、第1動作を示すフローチャートである。 図8は、第1読み出し動作時におけるNANDストリングの回路図であり、各配線の電圧を示している。 図9は、第1動作時におけるデータの流れを示した図である。 図10は、第2動作を示すフローチャートである。 図11は、第2読み出し動作時におけるNANDストリングの回路図であり、各配線の電圧を示している。 図12は、第2動作時におけるデータの流れを示した図である。 図13は、第3動作を示すフローチャートである。 図14は、第3読み出し動作時におけるNANDストリングの回路図であり、各配線の電圧を示している。 図15は、第3動作時におけるデータの流れを示した図である。 図16は、第3動作時におけるデータの流れを示した図である。 図17は、第3動作時におけるデータの流れを示した図である。 図18は、メモリセルトランジスタの閾値分布の変動例を示す図である。 図19は、メモリセルトランジスタの閾値分布の変動例を示す図である。 図20は、メモリセルトランジスタの閾値分布の変動例を示す図である。 図21は、第2動作におけるラッチ回路内に記憶されるデータを示す図である。 図22は、第2動作におけるラッチ回路内に記憶されるデータを示す図である。 図23は、第3動作におけるラッチ回路内に記憶されるデータを示す図である。 図24は、第3動作におけるラッチ回路内に記憶されるデータを示す図である。 図25は、第3動作におけるラッチ回路内に記憶されるデータを示す図である。 図26は、メモリセルトランジスタの閾値分布と、ラッチ回路に記憶されるデータとの関係を示した図である。 図27は、第1の実施形態に係るメモリシステムの読み出し動作を示すコマンドシーケンスである。 図28は、メモリセルトランジスタの取りうるデータ及び閾値分布を示す図である。 図29は、第2の実施形態に係るメモリシステムの読み出し動作を示すフローチャートである。 図30は、下位ページ読み出し動作を示すフローチャートである。 図31は、第4動作を示すフローチャートである。 図32は、第4動作時におけるデータの流れを示した図である。 図33は、第5動作を示すフローチャートである。 図34は、第5動作時におけるデータの流れを示した図である。 図35は、第6動作を示すフローチャートである。 図36は、第6動作時におけるデータの流れを示した図である。 図37は、第6動作時におけるデータの流れを示した図である。 図38は、第6動作時におけるデータの流れを示した図である。 図39は、上位ページ読み出し動作を示すフローチャートである。 図40は、第7動作を示すフローチャートである。 図41は、第7動作時におけるデータの流れを示した図である。 図42は、第8動作を示すフローチャートである。 図43は、第8動作時におけるデータの流れを示した図である。 図44は、第9動作を示すフローチャートである。 図45は、第9動作時におけるデータの流れを示した図である。 図46は、第9動作時におけるデータの流れを示した図である。 図47は、第10動作を示すフローチャートである。 図48は、第10動作時におけるデータの流れを示した図である。 図49は、第11動作を示すフローチャートである。 図50は、第11動作時におけるデータの流れを示した図である。 図51は、第11動作時におけるデータの流れを示した図である。 図52は、第11動作時におけるデータの流れを示した図である。 図53は、第12動作を示すフローチャートである。 図54は、第12動作時におけるデータの流れを示した図である。 図55は、第12動作時におけるデータの流れを示した図である。 図56は、第12動作時におけるデータの流れを示した図である。 図57は、メモリセルトランジスタの閾値分布の変動例を示す図である。 図58は、メモリセルトランジスタの閾値分布の変動例を示す図である。 図59は、メモリセルトランジスタの閾値分布の変動例を示す図である。 図60は、第5動作におけるラッチ回路内に記憶されるデータを示す図である。 図61は、第5動作におけるラッチ回路内に記憶されるデータを示す図である。 図62は、第6動作におけるラッチ回路内に記憶されるデータを示す図である。 図63は、第6動作におけるラッチ回路内に記憶されるデータを示す図である。 図64は、第6動作におけるラッチ回路内に記憶されるデータを示す図である。 図65は、メモリセルトランジスタの閾値分布と、ラッチ回路に記憶されるデータとの関係を示した図である。 図66は、第8動作におけるラッチ回路内に記憶されるデータを示す図である。 図67は、第8動作におけるラッチ回路内に記憶されるデータを示す図である。 図68は、第9動作におけるラッチ回路内に記憶されるデータを示す図である。 図69は、第9動作におけるラッチ回路内に記憶されるデータを示す図である。 図70は、第9動作におけるラッチ回路内に記憶されるデータを示す図である。 図71は、第11動作におけるラッチ回路内に記憶されるデータを示す図である。 図72は、第11動作におけるラッチ回路内に記憶されるデータを示す図である。 図73は、第11動作におけるラッチ回路内に記憶されるデータを示す図である。 図74は、第12動作におけるラッチ回路内に記憶されるデータを示す図である。 図75は、第12動作におけるラッチ回路内に記憶されるデータを示す図である。 図76は、第12動作におけるラッチ回路内に記憶されるデータを示す図である。 図77は、メモリセルトランジスタの閾値分布と、ラッチ回路に記憶されるデータとの関係を示した図である。 図78は、第2の実施形態に係るメモリシステムの読み出し動作を示すコマンドシーケンスである。 図79は、第2の実施形態に係るメモリシステムの読み出し動作を示すコマンドシーケンスである。 図80は、変形例に係るメモリシステムの読み出し動作を示すコマンドシーケンスである。 図81は、メモリセルトランジスタの閾値分布と、ラッチ回路に記憶されるデータとの関係を示した図である。
実施形態
以下、実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
<1>第1実施形態
第1実施形態に係る半導体記憶装置について説明する。以下では半導体記憶装置として、メモリセルトランジスタが半導体基板の上方に積層された三次元積層型NAND型フラッシュメモリを例に挙げて説明する。
<1−1>構成
<1−1−1>メモリシステムの構成について
まず、本実施形態に係る半導体記憶装置を含むメモリシステムの構成について、図1を用いて説明する。
図1に示すようにメモリシステム1は、NAND型フラッシュメモリ(NAND flash memory)100及びメモリコントローラ200を備えている。メモリコントローラ200とNAND型フラッシュメモリ100は、例えばそれらの組み合わせにより一つの半導体装置を構成しても良い。その例としてはSDTMカードのようなメモリカードや、SSD(solid state drive)等が挙げられる。なお、メモリシステム1は、ホストデバイス300を更に備える構成であっても良い。
NAND型フラッシュメモリ100は、複数のメモリセルトランジスタを備え、データを不揮発に記憶する。NAND型フラッシュメモリ100の構成の詳細は後述する。
メモリコントローラ200は、ホストデバイス300からの命令に応答して、NAND型フラッシュメモリ100に対して読み出し、書き込み、消去等を命令する。
メモリコントローラ200は、ホストインターフェイス回路(Host I/F)201、内蔵メモリ(RAM: Random access memory)202、プロセッサ(CPU:Central processing unit)203、バッファメモリ204、NANDインターフェイス回路(NAND I/F)205、及びECC回路(エラー訂正回路またはECC)206を備えている。
ホストインターフェイス回路201は、コントローラバスを介してホストデバイス300と接続され、メモリコントローラ200と、ホストデバイス300との通信を司る。そして、ホストインターフェイス回路201は、ホストデバイス300から受信した命令及びデータを、それぞれCPU203及びバッファメモリ204に転送する。ホストインターフェイス回路201は、CPU203の命令に応答して、バッファメモリ204内のデータをホストデバイス300へ転送する。
NANDインターフェイス回路205は、NANDバスを介してNAND型フラッシュメモリ100と接続される。そして、NANDインターフェイス回路205は、NAND型フラッシュメモリ100とメモリコントローラ200の通信を司る。そして、NANDインターフェイス回路205は、CPU203から受信した命令をNAND型フラッシュメモリ100に転送する。更に、NANDインターフェイス回路205は、データの書き込み時にはバッファメモリ204内の書き込みデータをNAND型フラッシュメモリ100へ転送する。更に、NANDインターフェイス回路205は、データの読み出し時には、NAND型フラッシュメモリ100から読み出されたデータをバッファメモリ204へ転送する。
NANDバスは、NANDインターフェイスに従った信号の送受信を行う。この信号の具体例は、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号WEn、リードイネーブル信号REn、レディ・ビジー信号RBn、及び入出力信号I/Oである。
信号CLE及びALEは、NAND型フラッシュメモリ100への入力信号I/Oがそれぞれコマンド及びアドレスであることをNAND型フラッシュメモリ100に通知する信号である。信号WEnはlowレベルでアサートされ、入力信号I/OをNAND型フラッシュメモリ100に取り込ませるための信号である。「アサート」とは、信号(または論理)が有効(アクティブ)な状態とされていることを意味し、これに相対する用語として「ネゲート」は信号(または論理が無効(インアクティブ)な状態とされていることを意味する。信号REnもlowレベルでアサートされ、NAND型フラッシュメモリ100から出力信号I/Oを読み出すための信号である。レディ・ビジー信号RBnは、NAND型フラッシュメモリ100がレディ状態(メモリコントローラ200からの命令を受信出来る状態)であるか、それともビジー状態(メモリコントローラ200からの命令を受信出来ない状態)であるかを示す信号であり、lowレベルがビジー状態を示す。入出力信号I/Oは、例えば8ビットの信号である。そして入出力信号I/Oは、NAND型フラッシュメモリ100とメモリコントローラ200との間で送受信されるデータの実体であり、コマンド、アドレス、書き込みデータ、及び読み出しデータ等である。
CPU203は、メモリコントローラ200全体の動作を制御する。例えば、CPU203は、ホストデバイス300から書き込み命令を受信した際には、NANDインターフェイス回路205に基づく書き込み命令を発行する。読み出し及び消去の際も同様である。CPU203は、ウェアレベリング等、NAND型フラッシュメモリ100を管理するための様々な処理を実行する。更にCPU203は、各種の演算を実行する。例えば、データの暗号化処理やランダマイズ処理等を実行する。尚、上述したように、ホストデバイス300が、メモリシステム1に含まれる場合においても、CPU203は、メモリシステム1全体の動作を司る。
ECC回路206は、データの誤り訂正(ECC:Error Checking and Correcting)処理を実行する。すなわちECC回路206は、データの書き込み時には書き込みデータに基づいてパリティを生成する。そして、ECC回路206は、データの読み出し時には前記パリティからシンドロームを生成して誤りを検出し、誤りを訂正する。なお、CPU203がECC回路206の機能を有していても良い。
ところで、NAND型フラッシュメモリは、素子の微細化に伴い、閾値分布の間の間隔が狭くなる。このため、データ読み出しの際に、誤ったデータが読み出され、データの信頼性が低下する可能性がある。そこでECC回路206に、例えばLDPC(Low density parity check)符号を用いたエラー訂正方法を採用することが考えられる。
このLDPC符号を用いたエラー訂正方法では、通常の読み出し動作で読み出された値(硬値またはハードビットデータ)以外に、別の値(軟値またはソフトビットデータ)が必要である。
本実施形態では、後述する第1〜第3動作により、通常の読み出しデータと、ソフトビットデータを生成することができる。ECC回路206は、ソフトビットデータを用いて、エラー訂正動作を行うことができる。ソフトビットデータとは、メモリセルトランジスタMTの閾値電圧値がどの位置にあるか(例えば、あるレベルの閾値分布の中心付近にあるのか、分布の右側にあるのか、分布の左側にあるのか等)を示す情報である。換言すれば、ソフトビットデータは、読み出されたデータの「確からしさ」を示す情報である。
内蔵メモリ202は、例えばDRAM等の半導体メモリであり、CPU203の作業領域として使用される。そして内蔵メモリ202は、NAND型フラッシュメモリ100を管理するためのファームウェアや、各種の管理テーブル等を記憶する。
<1−1−2>NAND型フラッシュメモリの構成について
次に、図2を用いてNAND型フラッシュメモリ100の構成について説明する。
図2に示すようにNAND型フラッシュメモリ100は、周辺回路110及びコア部120を備えている。
コア部120は、メモリセルアレイ130、センス回路140、及びロウデコーダ(R/D)150を備えている。
メモリセルアレイ130は、複数の不揮発性メモリセルトランジスタを備えており、複数の不揮発性メモリセルトランジスタのそれぞれがワード線及びビット線に関連付けられている。そして、メモリセルアレイ130は、複数の不揮発性メモリセルトランジスタの集合である複数(図2の例では3個)のブロックBLK(BLK0、BLK1、BLK2、…)を備えている。ブロックBLKは例えばデータの消去単位となり、同一ブロックBLK内のデータは一括して消去される。
データの消去は、ブロックBLK単位、またはブロックBLKよりも小さい単位で行うことが出来る。消去方法に関しては、例えば“NONVOLATILE SEMICONDUCTOR MEMORY DEVICE”という2011年9月18日に出願された米国特許出願13/235,389号に記載されている。また、“NON-VOLATILE SEMICONDUCTOR STORAGE DEVICE”という2010年1月27日に出願された米国特許出願12/694,690号に記載されている。更に、“NONVOLATILE SEMICONDUCTOR MEMORY DEVICE AND DATA ERASE METHOD THEREOF”という2012年5月30日に出願された米国特許出願13/483,610号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
ブロックBLKの各々は、メモリセルトランジスタが直列接続されたNANDストリング131の集合である複数(図2の例では3個)のストリングユニットSU(SU0、SU1、SU2、…)を備えている。もちろん、メモリセルアレイ130内のブロック数や、1ブロックBLK内のストリングユニット数は任意である。メモリセルアレイ130内のブロックの物理的な位置を示すものをブロックアドレスと呼ぶ。
ロウデコーダ150は、ブロックアドレスに対応するブロックのいずれかのワード線を選択する。
センス回路140は、複数のセンスアンプユニットSAUを備える。複数のセンスアンプユニットSAUは、データの読み出し時には、メモリセルトランジスタからビット線に読み出されたデータをセンスする。
周辺回路110は、シーケンサ111、レジスタ112、及びドライバ113を備える。
シーケンサ111は、NAND型フラッシュメモリ100全体の動作を制御する。
レジスタ112は、種々の信号を記憶する。例えば、レジスタ112は、データの書き込みや消去動作のステータスを記憶し、これによってコントローラに動作が正常に完了したか否かを通知する。なお、レジスタ112は、種々のテーブルを記憶することも可能である。
ドライバ113は、データの書き込み、読み出し、及び消去に必要な電圧を、ロウデコーダ150、センス回路140、及び図示せぬソース線ドライバに供給する。
<1−1−3>ブロックBLKの構成について
次に、上記ブロックBLKの構成について、図3を用いて説明する。
図3に示すようにブロックBLKは、複数のNANDストリング131を含む。NANDストリング131の各々は、複数(図3の例では8個)のメモリセルトランジスタMT(MT0〜MT7)及び選択トランジスタST1、ST2を含んでいる。メモリセルトランジスタMTは、制御ゲートと電荷蓄積層とを備え、データを不揮発に記憶する。そしてメモリセルトランジスタMTは、選択トランジスタST1のソースと選択トランジスタST2のドレインとの間に直列接続されている。
同一ブロック内の選択トランジスタST1及びST2のゲートは、それぞれセレクトゲート線SGD及びSGSに共通接続される。同様に、同一ブロック内のメモリセルトランジスタMT0〜MT7の制御ゲートは、それぞれワード線WL0〜WL7に共通接続される。
メモリセルアレイ130内において同一列にあるNANDストリング131の選択トランジスタST1のドレインは、ビット線BL(BL0〜BL(L−1):Lは2以上の自然数)に共通接続される。すなわちビット線BLは、複数のブロックBLK間でNANDストリング131を共通に接続する。更に、複数の選択トランジスタST2のソースは、ソース線SLに共通に接続されている。
本例では、1つのメモリセルトランジスタMTが例えば1ビットデータを記憶可能である。同一のワード線に接続されたメモリセルの記憶するビットの集合をページと呼ぶ。つまり、1本のワード線WLには1ページが割り当てられ、8本のワード線WLを含むブロックBLKは8ページ分の容量を有することになる。あるいは言い換えるならば、「ページ」とは、同一ワード線に接続されたメモリセルによって形成されるメモリ空間の一部、と定義することも出来る。データの書き込み及び読み出しは、このページ毎に行っても良い(この読み出し方法をpage-by-page readingと呼ぶ)。
なおメモリセルアレイ130は、メモリセルトランジスタが半導体基板の上方に三次元に積層された構成であっても良い。このような構成については、例えば、“三次元積層不揮発性半導体メモリ”という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−4>センス回路の構成について
<1−1−4−1>センス回路の概要について
次に、センス回路140の構成について、図3を用いて説明する。
図3に示すようにセンス回路140は、ビット線BL毎に設けられたセンスアンプユニットSAU(SAU0〜SAU(L−1))を備えている。
センスアンプユニットSAUの各々は、センスアンプ部SA、演算部OP、及び例えば4つのラッチ回路SDL、LDL、UDL、及びXDLを備えている。
センスアンプ部SAは、対応するビット線BLに読み出されたデータをセンスし、書き込みデータに応じてビット線BLに電圧を印加する。すなわちセンスアンプ部SAは、ビット線BLを直接的に制御するモジュールである。そしてセンスアンプ部SAには、例えばシーケンサ111によって制御信号STBが与えられる。センスアンプ部SAは、信号STBがアサートされるタイミングで読み出しデータを確定させ(“0”または“1”)、これをラッチ回路SDL、LDL、UDL、及びXDLのいずれかに転送する。
ラッチ回路SDL、LDL、UDL、及びXDLは、読み出しデータ及び書き込みデータを一時的に記憶する。演算部OPは、ラッチ回路SDL、LDL、UDL、及びXDLに記憶されているデータにつき、否定(NOT)演算、論理和(OR)演算、論理積(AND)演算、排他的論理和(XOR)演算など、種々の論理演算を行う。なお、シーケンサ111が、ラッチ回路SDL、LDL、UDL、及びXDLに記憶されているデータにつき、種々の論理演算を行っても良い。シーケンサ111、及び演算部OPをまとめてシーケンサとして取り扱っても良い。
これらのセンスアンプ部SA、ラッチ回路SDL、LDL、UDL、及びXDL並びに演算部OPは、互いにデータを送受信可能なようにバスによって接続されている。
センス回路140におけるデータの入出力は、ラッチ回路XDLを介して行われる。すなわち、メモリコントローラ200から受信したデータは、ラッチ回路XDLを介して、ラッチ回路SDL、LDL、UDL、またはセンスアンプ部SAに転送される。またラッチ回路SDL、LDL、UDL、またはセンスアンプ部SAのデータは、ラッチ回路XDLを介してメモリコントローラ200へ送信される。そしてラッチ回路XDLは、NAND型フラッシュメモリ100のキャッシュメモリとして機能する。従って、ラッチ回路SDL、LDL、及びUDLが使用中であったとしても、ラッチ回路XDLが空いていれば、NAND型フラッシュメモリ100はレディ状態となることが出来る。
<1−1−4−2>センスアンプ部SAの構成について
図4を用いて、センスアンプ部SAの構成について説明をする。
図4に示すように、センスアンプ部SAは、センス部16、及び接続部15を備えている。
接続部15は、対応するビット線BLとセンス部16とを接続し、ビット線BLの電位を制御する。具体的には、接続部15は、nチャネルMOSトランジスタ15a及び15bを備えている。トランジスタ15aは、ゲートに信号BLSが印加され、ソースが、対応するビット線BLに接続される。トランジスタ15bは、ソースがトランジスタ15aのドレインに接続され、ゲートに信号BLCが印加され、ドレインがノードSCOMに接続される。トランジスタ15bは、対応するビット線BLを、信号BLCに応じた電位にクランプするためのものである。
センス部16は、ビット線BLに読み出されたデータをセンスする。センス部16は、nチャネルMOSトランジスタ16a〜16g、pチャネルMOSトランジスタ16h、及び容量素子16iを備えている。
トランジスタ16hは、ゲートにノードINV_Sが接続され、ドレインがノードSSRCに接続され、ソースに電源電圧VDDが与えられる。トランジスタ16hは、ビット線BL及び容量素子16iを充電するためのものである。トランジスタ16aは、ゲートに信号BLXが与えられ、ドレインがノードSSRCに接続され、ソースがノードSCOMに接続される。トランジスタ16aは、ビット線BLをプリチャージするためのものである。トランジスタ16cは、ゲートに信号HLLが与えられ、ドレインがノードSSRCに接続され、ソースがノードSENに接続される。トランジスタ16cは、容量素子16iを充電するためのものである。トランジスタ16bは、ゲートに信号XXLが与えられ、ドレインがノードSENに接続され、ソースがノードSCOMに接続される。トランジスタ16bは、データセンスの際にノードSENをディスチャージするためのものである。トランジスタ16gは、ゲートがノードINV_Sに接続され、ドレインがノードSCOMに接続され、ソースがノードSRCGNDに接続される。トランジスタ16gは、ビット線BLを一定電位に固定するためのものである。
容量素子16iは、ビット線BLのプリチャージの際に充電され、一方電極がノードSENに接続され、他方電極には信号CLKが与えられる。
トランジスタ16dは、ゲートに信号BLQが与えられ、ソースがノードSENに接続され、ドレインがノードLBUSに接続される。ノードLBUSは、センス部16とラッチ回路とを接続するための信号経路である。トランジスタ16eは、ゲートに信号STBが与えられ、ドレインがノードLBUSに接続される。トランジスタ16eは、データのセンスタイミングを決定すると共に、読み出しデータをラッチ回路に記憶するためのものである。
トランジスタ16fは、ゲートがノードSENに接続され、ドレインがトランジスタ16eのソースに接続され、ソースが接地される。トランジスタ16fは、読み出しデータが“0”であるか“1”であるかをセンスするためのものである。
ノードINV_Sは、ラッチ回路内のノードであり、ラッチ回路の記憶データに応じたレベルを取り得る。例えば、データの読み出し時に選択メモリセルがオン状態となり、ノードSENが十分に低下すれば、ノードINV_Sは“H”レベルとなる。他方、選択メモリセルがオフ状態であり、ノードSENが一定電位を保持していれば、ノードINV_Sは“L”レベルとなる。
以上の構成において、信号STBがアサートされるタイミングで、トランジスタ16fがノードSENの電位に基づいて読み出しデータをセンスし、トランジスタ16eは読み出しデータをラッチ回路に転送する。信号STBを含め、各種の制御信号は、例えばシーケンサ111によって与えられる。
なお、センスアンプ部SAとしては種々の構成が適用出来、例えば“THRESHOLD DETECTING METHOD AND VERIFY METHOD OF MEMORY CELL”と表題され、2011年3月21日に出願された米国特許出願13/052,148に記載された構成が適用出来る。この特許出願の内容は、その全体が本願明細書において参照により援用されている。
<1−1−5>メモリセルトランジスタの閾値分布について
図5を用いて、本実施態様に従ったメモリセルトランジスタMTの取りうるデータ及び閾値分布について説明する。
図5に示すように、各々のメモリセルトランジスタMTは、その閾値に応じて例えば1ビットのデータを記憶可能である。
この1ビットデータは、閾値の低いものから順番に、例えば“1”、“0”である。
“1”データを記憶するメモリセルの閾値は、“E”レベルである。Eレベルは、電荷蓄積層内の電荷が引き抜かれて、データが消去された状態における閾値であり、正または負の値である(例えば電圧VA未満)。
“0”は、電荷蓄積層内に電荷が注入されて、データが書き込まれた状態の閾値である。“0”データを記憶するメモリセルの閾値は“A”レベルであり、Eレベルよりも高い(例えば電圧VA以上)。
<1−2>データの読み出し動作について
次に、本実施態様に従った読み出し動作について説明する。ここでは、通常の読み出しデータと、ソフトビットデータと、を読み出す動作について説明する。
<1−2−1>読み出し動作の流れについて
図8を用いて、本実施形態のメモリシステム1の読み出し動作のおおまかな流れについて説明する。
[ステップS101]
メモリコントローラ200は、ホストデバイス300から読み出し命令を受けると、NAND型フラッシュメモリ100に対して読み出し要求を行う。
[ステップS102]
NAND型フラッシュメモリ100は、メモリコントローラ200からの読み出し要求を受けると、第1動作を実行する。第1動作は、後述する第3動作用のデータを取得するための動作である。第1動作に関する詳細な説明は後述する。
[ステップS103]
NAND型フラッシュメモリ100は、第1動作が終了すると、第2動作を実行する。第2動作は、後述する第3動作用のデータを取得するための動作である。第2動作に関する詳細な説明は後述する。
[ステップS104]
NAND型フラッシュメモリ100は、第2動作が終了すると、第3動作を実行する。第3動作に関する詳細な説明は後述する。この第3動作により、通常の読み出しデータと、ソフトビットデータと、がセンス回路140のラッチ回路に記憶される。
[ステップS105]
NAND型フラッシュメモリ100は、第1〜第3動作の結果に基づいて通常の読み出しデータを出力する。
[ステップS106]
ECC回路206は、通常の読み出しデータを受信すると、エラー訂正動作を行う。
[ステップS107]
メモリコントローラ200は、ECC回路206による受信データのエラー訂正が完了したか否かを判定する。
[ステップS108]
メモリコントローラ200は、受信データのエラー訂正が完了したと判定する場合(ステップS107、YES)、読み出し命令が完了したか否かを判定する。メモリコントローラ200は、読み出し命令が完了したと判定する場合(ステップS108、YES)、読み出し動作を完了する。メモリコントローラ200は、読み出し命令が完了していないと判定する場合(ステップS108、NO)、ステップS101を再度実行する。
[ステップS109]
メモリコントローラ200は、受信データのエラー訂正が完了していないと判定する場合(ステップS107、NO)、NAND型フラッシュメモリ100に対して、ソフトビットデータの読み出し要求を行う。
[ステップS110]
NAND型フラッシュメモリ100は、ステップS104で読み出されたソフトビットデータを所定のラッチ回路に転送する。転送動作に関する詳細な説明は後述する。
[ステップS111]
NAND型フラッシュメモリ100は、ソフトビットデータを出力する。
[ステップS112]
ECC回路206は、ソフトビットデータを受信すると、LPDC符号を用いたエラー訂正動作を行う。
[ステップS113]
メモリコントローラ200は、ソフトビットデータを用いたエラー訂正が完了したか否かを判定する。
[ステップS114]
メモリコントローラ200は、ソフトビットデータを用いたエラー訂正が完了していないと判定する場合(ステップS113、NO)、ホストデバイス300に対して、“フェイル”を発行する。
[ステップS115]
メモリコントローラ200は、ソフトビットデータを用いたエラー訂正が完了したと判定する場合(ステップS113、YES)、読み出し命令が完了したか否かを判定する。メモリコントローラ200は、読み出し命令が完了したと判定する場合(ステップS115、YES)、読み出し動作を完了する。メモリコントローラ200は、読み出し命令が完了していないと判定する場合(ステップS115、NO)、ステップS101を再度実行する。
<1−2−2>第1動作について
図7を用いて、図6のステップS102の第1動作について説明する。
[ステップS201]
シーケンサ111は、メモリセルアレイ130に対して第1読み出し動作を行う。
図8を用いて第1読み出し動作について説明する。
第1読み出しとは、選択ワード線WLnにドレイン側で隣り合うワード線(仮選択ワード線とも呼ぶ)WLn+1に接続されたメモリセルトランジスタMTn+1からデータを読み出す動作である。
選択メモリセルトランジスタMTnは、隣り合うメモリセルトランジスタMTn+1からセル間干渉効果を受けて、閾値分布が変動することがある。この第1読み出しは、上記セル間干渉効果を補正するための読み出し動作である。第1読み出し動作で読み出されたデータは、読み出しデータを補正するために後述する第3動作で用いられる。
本例では、ワード線WL2が選択ワード線WLnである場合について説明する。
図8に示すように、第1読み出し時において、センスアンプ部SAは、ビット線BLに電流を供給し、例えば電圧VBLにプリチャージする。ロウデコーダ150は、仮選択ワード線WL3に正電圧VCGRVを印加し、その他の選択ワード線WL0〜WL2及びWL4〜WL7に正電圧VREADを印加する。電圧VCGRVは、読み出し対象となるデータに応じて変化し、例えば図5で説明した電圧VAとされる。電圧VREADは、記憶データに関わらずメモリセルトランジスタMTをオンさせる電圧であり、VCGRV<VREADである。
そしてロウデコーダ150は、選択したセレクトゲート線SGD及びSGSに正電圧VSGを印加する。
以上の結果、選択トランジスタST及びメモリセルトランジスタMT0〜MT2及びMT4〜MT7はオン状態となり、メモリセルトランジスタMT3は、記憶データとVCGRVとの関係に基づいて、オン状態またはオフ状態となる。
図9に示すように、第1読み出しでは、ワード線WL3に接続されたメモリセルトランジスタMTn+1からデータ(X)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(X)は、セル間干渉効果を補正するためのデータとなる。
[ステップS202]
シーケンサ111は、データ(X)がセンスアンプ部SA(ノードSEN)に読み出されると、制御信号STBをセンスアンプ部SAに供給する。図9に示すように、センスアンプ部SAは、信号STBがアサートされるタイミングで、ノードSENの読み出しデータ(X)をラッチ回路UDLに転送する。これにより、ラッチ回路UDLに読み出しデータ(X)が記憶される。
<1−2−3>第2動作について
図10を用いて、図6のステップS103の第2動作について説明する。
[ステップS301]
シーケンサ111は、メモリセルアレイ130に対して第2読み出し動作を行う。
図11を用いて第2読み出し動作について説明する。
第2読み出しとは、本来の読み出し対象である選択ワード線WL2からデータを読み出す動作である。
図11に示すように、第2読み出し時において、センスアンプ部SAは、ビット線BLを、例えば電圧VBLにプリチャージする。ロウデコーダ150は、選択ワード線WL2に正電圧VCGRVを印加し、その他の非選択ワード線WL0〜WL1及びWL3〜WL7に正電圧VREADを印加する。
図12に示すように、第2読み出しでは、ワード線WL2に接続された選択メモリセルトランジスタMT2からデータ(Y)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(Y)は、通常の読み出しデータと、ソフトビットデータと、を生成するときに用いられる。
[ステップS302]
シーケンサ111は、データ(Y)がセンスアンプ部SA(ノードSEN)に読み出されると、制御信号STBをセンスアンプ部SAに供給する。図12に示すように、センスアンプ部SAは、信号STBがアサートされるタイミングで、ノードSENの読み出しデータ(Y)をラッチ回路LDLに転送する。そして、演算部OPは、ラッチ回路LDLのデータ(Y)を反転させ、データ(~Y)を生成する。これにより、ラッチ回路LDLにデータ(~Y)が記憶される。
[ステップS303]
図12に示すように、シーケンサ111は、ラッチ回路LDLに記憶されたデータ(~Y)をラッチ回路XDLに転送する。これにより、ラッチ回路XDLにデータ(~Y)が記憶される。
<1−2−4>第3動作について
図13を用いて、図6のステップS104の第3動作について説明する。
[ステップS401]
シーケンサ111は、メモリセルアレイ130に対して第3読み出し動作を行う。
図14を用いて第3読み出し動作について説明する。
第3読み出しとは、本来の読み出し対象であるワード線WL2からデータを読み出す動作である。
図14に示すように、第3読み出し時において、センスアンプ部SAは、ビット線BLを、例えば電圧VBLにプリチャージする。ロウデコーダ150は、選択ワード線WL2に正電圧VCGRVを印加し、選択ワード線WL2にドレイン側で隣り合う非選択ワード線WL3に、電圧VREADLAを印加し、その他の非選択ワード線WL0〜WL1及びWL4〜WL7に正電圧VREADを印加する。
第3読み出しが第2読み出しと異なる点は、第1読み出し対象とされた非選択ワード線WL3に、電圧VREADLAが印加される点である。
電圧VREADLAは、電圧VREADと同様に、記憶データに関わらずメモリセルトランジスタMTをオンさせる電圧である。そして電圧VREADLAは、後述するセル間干渉効果による閾値変動の影響を補正するための電圧であり、VREADとは異なる値である。
図15に示すように、第3読み出しでは、選択ワード線WL2に接続された選択メモリセルトランジスタMT2からデータ(Z)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(Z)は、通常の読み出しデータと、ソフトビットデータと、を生成するときに用いられる。
[ステップS402]
シーケンサ111は、データ(Z)がセンスアンプ部SA(ノードSEN)に読み出されると、制御信号STBをセンスアンプ部SAに供給する。図15に示すように、センスアンプ部SAは、信号STBがアサートされるタイミングで、ノードSENの読み出しデータ(Z)をラッチ回路SDLに転送する。これにより、ラッチ回路SDLにデータ(Z)が記憶される。
[ステップS403]
図16に示すように、演算部OPは、ラッチ回路SDLに記憶されたデータ(Z)と、ラッチ回路LDLに記憶されたデータ(~Y)と、の論理和演算(SDL|LDL)を行い、データ(Z|~Y)を生成してラッチ回路LDLに記憶させる。本実施形態において、ラッチ回路LDLに記憶されるデータ(Z|~Y)は、ソフトビットデータとして取り扱われる。
[ステップS404]
図17に示すように、演算部OPは、ラッチ回路SDLに記憶されたデータ(Z)の反転データ(~Z)と、ラッチ回路UDLに記憶されたデータ(X)と、の論理積演算(~SDL&UDL)を行う。引き続き演算部OPは、論理積演算の結果(~Z&X)と、ラッチ回路XDLに記憶されたデータ(~Y)と、の論理和演算(~SDL&UDL|XDL)を行い、データ(~Z&X|~Y)を生成してラッチ回路XDLに記憶させる。ラッチ回路XDLに記憶されたデータ(~Z&X|~Y)は、選択ワード線WLnに隣り合うワード線WLn+1に接続されるメモリセルトランジスタMTからのセル間干渉効果による閾値変動を考慮したデータ(通常の読み出しデータ)となる。
<1−2−5>データ転送動作について
図6のステップS110のデータ転送動作について説明する。
シーケンサ111は、メモリコントローラ200から、ソフトビットデータの読み出し要求を受信すると、ラッチ回路LDLに記憶されるデータ(Z|~Y)を、ラッチ回路XDLに転送する。
<1−3>ソフトビットデータ生成方法について
<1−3−1>選択メモリセルトランジスタの閾値分布の変動について
ここで、ソフトビットデータが生成される原理の理解を容易にするために、選択メモリセルトランジスタMTの閾値分布の変動について説明する。
図18を用いて、選択メモリセルトランジスタMTの閾値分布の変動について説明する。
図18に示す分布E1は、“E−level”の理想的な閾値分布である。
分布E1は、隣り合うメモリセルトランジスタからセル間干渉効果を受けて閾値が変動することがある。図18に示すように、分布E2は、隣り合うメモリセルトランジスタからセル間干渉効果を受けて閾値が変動する場合の“E−level”の閾値分布である。分布E2は、隣り合うメモリセルトランジスタからセル間干渉効果を受けるため、分布E1よりも閾値が高くなる。
分布E2は、第3読み出し動作の際に、隣り合うワード線WLに電圧VREADLAが印加されることにより、閾値が変動することがある。図18に示すように、分布E3は、第3読み出し動作の場合に想定される“E−level”の閾値分布である。分布E3は、選択ワード線WLnに隣り合うワード線WLn+1に電圧VREADLAが印加されることにより、選択ワード線WLnに印加される電圧VCGRVの電位が見かけ上、上昇する。そのため、分布E3は、分布E2よりも閾値が高くなる。
図18に示す分布A1は、“A−level”の理想的な閾値分布である。
図18に示す分布A2は、隣り合うメモリセルトランジスタからセル間干渉効果を受けて閾値が変動する場合の“A−level”の閾値分布である。分布A2は、隣り合うメモリセルトランジスタからセル間干渉効果を受けるため、分布A1よりも閾値が高くなる。
図18に示す分布A3は、第3読み出し動作の場合に想定される“A−level”の閾値分布である。分布A3は、選択ワード線WLnに隣り合うワード線WLn+1に電圧VREADLAが印加されることにより、閾値分布が見かけ上、上昇する。そのため、分布A3は、分布A2よりも閾値が高くなる。
図18に示すように、第2読み出し動作の際は選択ワード線WLnに電圧VCGRV(VA)が印加される。そして、第3読み出し動作の際は、選択ワード線WLnに隣り合うワード線WLn+1に電圧VREADLAが印加されるので、選択ワード線WLnに印加される電圧VCGRVの電位がVAD(VA<VAD)へと上昇する。
一方で、選択メモリセルトランジスタMTにおいて、隣り合うメモリセルトランジスタから受けるセル間干渉効果が想定よりも大きいことがある。
このような場合、図19に示すように、分布E2、分布E3、分布A2、及び分布A3のシフト量は、想定しているシフト量よりも大きくなる。
図19に示す場合、第3読み出しにおいて、分布E2が電圧VA以上となることがある。このような場合、ミス(誤り)M1として取り扱う。
他方で、選択メモリセルトランジスタMTにおいて、隣り合うメモリセルトランジスタから受けるセル間干渉効果が想定よりも小さいことがある。
このような場合、図20に示すように、分布E2、分布E3、分布A2、及び分布A3のシフト量は、想定しているシフト量よりも小さくなる。
図20に示す場合、第3読み出しにおいて、分布A3が電圧VAD以下となることがある。このような場合、ミスM2として取り扱う。
<1−3−2>ラッチ回路の動作例について
図21〜図25を用いて、ラッチ回路に記憶されるデータの具体例について説明する。
図21は、選択ワード線WLnに接続された選択メモリセルトランジスタMTnのデータと、選択ワード線WLnに隣り合うワード線WLn+1に接続されたメモリセルトランジスタMTn+1のデータと、の関係を示している。更に、図21では選択メモリセルトランジスタMTnが、メモリセルトランジスタMTn+1から受けるセル間干渉効果の大小と、選択メモリセルトランジスタMTnに記憶されるデータとの関係を示している。以下では、単に「セル間干渉効果」と呼ぶ場合は、選択メモリセルトランジスタMTnが、メモリセルトランジスタMTn+1から受けるセル間干渉効果を意味する。
図21は、図6のステップS102により、ラッチ回路UDLに、メモリセルトランジスタMTn+1の反転データが記憶された後の図である。
ここで、図21の一部に着目して、選択メモリセルトランジスタMTnのデータと、メモリセルトランジスタMTn+1のデータと、セル間干渉効果との関係について説明する。
例えば、メモリセルトランジスタMTn+1が“E”を記憶しており(UDLに“0”が記憶されており)、且つセル間干渉効果が小さい場合(図中のEffectの“小”参照)、センスアンプ部SAは、“E”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。
同様に、メモリセルトランジスタMTn+1が“A”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“E”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。
一方で、セルトランジスタMTn+1が“E”を記憶しており、且つセル間干渉効果が大きい場合(図中のEffectの“大”参照)、センスアンプ部SAは、“E”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。これは、図19のミスM1に示すような、誤ったデータである。
メモリセルトランジスタMTn+1が“A”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“E”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。これは、図19のミスM1に示すような、誤ったデータである。
このように、選択ワード線WLnに接続される選択メモリセルトランジスタMTnに記憶されているデータと、選択ワード線WLnに隣り合うワード線WLn+1に接続されるメモリセルトランジスタMTn+1に記憶されているデータと、に基づいて、読み出されるデータは異なることがある。
図21に示すように、図10で説明したステップS302において、ラッチ回路LDLに、センスアンプ部SA(ノードSEN)の反転データが入力される。そのため、ミスM1のデータは、“0”データとしてラッチ回路LDLに記憶される。
そして図22に示すように、図10で説明したステップS303において、ラッチ回路XDLに、ラッチ回路LDLのデータが転送される。
図23を用いて、第3読み出し時におけるラッチ回路に記憶されるデータについて説明する。
図23に示すように、例えば、メモリセルトランジスタMTn+1が“E”を記憶しており(UDLに“0”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。これは、図20のミスM2に示すような、誤ったデータである。
同様に、メモリセルトランジスタMTn+1が“A”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。これは、図20のミスM2に示すような、誤ったデータである。
一方で、メモリセルトランジスタMTn+1が“E”を記憶しており、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。
メモリセルトランジスタMTn+1が“A”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。
図23に示すように、図13で説明したステップS402において、ラッチ回路SDLに、センスアンプ部SA(ノードSEN)のデータが入力される。そのため、ミスM2のデータは、“0”データとしてラッチ回路SDLに記憶される。
図24に示すように、図13で説明したステップS403において、論理和演算(SDL|LDL)が行われ、ラッチ回路LDLに演算結果が記憶される。ミスM1及びミスM2のデータは、“0”データとしてラッチ回路LDLに記憶される。
図25に示すように、図13で説明したステップS404において、論理演算(~SDL&UDL|XDL)が行われ、ラッチ回路XDLに演算結果が記憶される。ラッチ回路XDLに記憶されたデータは、通常の読み出しデータとして出力される。
図25に示すように、ラッチ回路XDLに読み出しデータが記憶され、ラッチ回路LDLにソフトビットデータが記憶される。
図26に示すように、本実施形態によれば、ミスM1が発生する場合、または、ミスM2が発生する場合、ラッチ回路LDLに記憶されるデータが“0”となる。つまり、本実施形態において、異なる種類のミス(ミスM1及びミスM2)が発生した場合でも、特定の値(“0”データ)としてラッチ回路LDLに記憶される。つまり、メモリシステム1は、新たにソフトビットデータを読み出す為の読み出し動作を行うことなく、ソフトビットデータを取得することができる。その結果、ECCを行う際において、ソフトビットのための読み出し時間を抑制することができる。
<1−4>コマンドシーケンスについて
図27を用いて、本実施形態に係るメモリシステム1の読み出し動作におけるコマンドシーケンスについて説明する。
本実施形態に係るメモリコントローラ200は、読み出し動作につき、読み出し動作を命令するprefixコマンド(例えば“XXh”)をNAND型フラッシュメモリ100に対して発行する。引き続きメモリコントローラ200は、コマンド(例えば“00h”)及びアドレス(カラムアドレス、ブロックアドレス、ページアドレスを含む)をNAND型フラッシュメモリ100に対して発行する。その後メモリコントローラ200は、コマンド(例えば“30h”)をNAND型フラッシュメモリ100に対して発行する。
コマンド“30h”がレジスタ112にセットされると、NAND型フラッシュメモリ100はメモリセルアレイ130からのデータの読み出し動作を開始してビジー状態となる。
そして、NAND型フラッシュメモリ100は、図6で説明したステップS102〜S105を実行する。
その後、NAND型フラッシュメモリ100がレディ状態になると、メモリセルアレイ130から読み出されたデータが、メモリコントローラ200へ送信される。
メモリコントローラ200は、図6で説明したステップS109において、読み出し要求を実行する場合、NAND型フラッシュメモリ100に対してコマンド(例えば“YYh”)を発行する。
コマンド“YYh”がレジスタ112にセットされると、NAND型フラッシュメモリ100は、図6で説明したステップS110、及びS111の動作を行う。
<1−5>効果
上述した実施形態によれば、第1〜第3読み出し動作によって得られる結果をラッチ回路を用いて演算することにより、一連の読み出し動作で、通常の読み出しデータと、ソフトビットデータと、を得ることが可能となる。
ソフトビットデータを読み出す場合、通常の読み出し動作とは別に、電圧VA−、VA+を選択ワード線WLに印加して読み出す方法(比較例)も考えられる。つまり、比較例の場合、上記実施形態の図6のステップS110の際に、NAND型フラッシュメモリは、ソフトビットデータを読み出すための読み出し動作を行う必要がある。
しかし、本実施形態に係るメモリシステムでは、上述した第1〜第3読み出しを行うことによって、ソフトビットデータを生成する。より具体的には、本実施形態では、セル間干渉効果による閾値分布の変動と、第3読み出し動作による閾値分布の変動と、を利用し、通常の読み出しデータと、ソフトビットデータを導出している。換言すると、本実施形態では、1連の読み出し動作で、2種類のデータを読み出している。
つまり、本実施形態では、図6のステップS110の際に、既にソフトビットデータが読み出されている。そして、図6のステップS110の転送動作は、通常の読み出し動作よりも高速に行われる。そのため、本実施形態に係るNAND型フラッシュメモリは、比較例に係るNAND型フラッシュメモリに比べて、より高速にソフトビットデータを出力することが可能となる。
<2>第2の実施形態
次に、第2の実施形態について説明する。第2の実施形態では、メモリセルトランジスタMTが2ビットのデータを記憶可能な場合について説明している。尚、第2の実施形態に係るメモリシステムの基本的な構成及び基本的な動作は、上述した第1の実施形態に係るメモリシステムと同様である。従って、上述した第1の実施形態で説明した事項及び上述した第1の実施形態から容易に類推可能な事項についての説明は省略する。
<2−1>メモリセルトランジスタの閾値分布について
図28を用いて、第2の実施態様に従ったメモリセルトランジスタMTの取りうるデータ及び閾値分布について説明する。
本例では、1つのメモリセルトランジスタMTが例えば2ビットデータを保持可能である。この2ビットデータを、下位ビット及び上位ビットと呼ぶことにする。そして、同一のワード線に接続されたメモリセルの保持する下位ビットの集合を下位ページと呼び、上位ビットの集合を上位ページと呼ぶ。
図28に示すように、各々のメモリセルトランジスタMTは、その閾値に応じて例えば2ビットのデータを保持可能である。この2ビットデータは、閾値の低いものから順番に、例えば“11”、“01”、“00”、“10”である。
“11”データを保持するメモリセルの閾値は、“E”レベルである。Eレベルは、電荷蓄積層内の電荷が引き抜かれて、データが消去された状態における閾値であり、正または負の値である(例えば電圧VA未満)。
“01”、“00”、及び“10”も、電荷蓄積層内に電荷が注入されて、データが書き込まれた状態の閾値である。“01”データを保持するメモリセルの閾値は“A”レベルであり、Eレベルよりも高い(例えば電圧VA以上、VB未満であり、VA<VB)。“00”データを保持するメモリセルの閾値は“B”レベルであり、Aレベルよりも高い(例えば電圧VB以上、VC未満であり、VB<VC)。“10”データを保持するメモリセルの閾値は“C”レベルであり、Bレベルよりも高い(例えば電圧VC以上)。
もちろん、2ビットデータと閾値との関係はこの関係に限定されるものでは無く、例えば“11”データが“C”レベルに対応するような場合であっても良く、両者の関係については適宜選択出来る。
選択ワード線WLnに電圧VBが印加されることによって、下位ビットのデータが読み出し可能となる。選択ワード線WLnに電圧VA、及びVCが印加されることによって、上位ビットのデータが読み出し可能となる。
<2−2>データの読み出し動作について
次に、本実施態様に従った読み出し動作について説明する。ここでは、通常の読み出しデータと、ソフトビットデータと、を読み出す動作について説明する。
<2−2−1>読み出し動作の流れについて
図29を用いて、本実施形態のメモリシステム1の読み出し動作のおおまかな流れについて説明する。
[ステップS501]
メモリコントローラ200は、ステップS101と同様の動作を行う。
[ステップS502]
NAND型フラッシュメモリ100は、受信した読み出し要求が、下位ページ読み出しか否かを判定する。
[ステップS503]
NAND型フラッシュメモリ100は、受信した読み出し要求が、下位ページ読み出しであると判定する場合(ステップS502、YES)、下位ページの読み出し動作を行う。下位ページの読み出し動作の詳細な説明は後述する。
[ステップS504]
NAND型フラッシュメモリ100は、受信した読み出し要求が、下位ページ読み出しでないと判定する場合(ステップS502、NO)、上位ページの読み出し動作を行う。上位ページの読み出し動作の詳細な説明は後述する。
[ステップS505〜S515]
メモリシステム1はS105〜S115と同様の動作を行う。
<2−2−2>下位ページ読み出し動作について
<2−2−2−1>下位ページ読み出し動作の流れについて
図30を用いて、本実施形態のメモリシステム1の下位ページ読み出し動作のおおまかな流れについて説明する。
[ステップS601]
NAND型フラッシュメモリ100は、メモリコントローラ200からの読み出し要求を受けると、第4動作を実行する。第4動作は、後述する第6動作用のデータを取得するための動作である。第4動作に関する詳細な説明は後述する。
[ステップS602]
NAND型フラッシュメモリ100は、第4動作が終了すると、第5動作を実行する。第5動作は、後述する第6動作用のデータを取得するための動作である。第5動作に関する詳細な説明は後述する。
[ステップS603]
NAND型フラッシュメモリ100は、第5動作が終了すると、第6動作を実行する。第6動作に関する詳細な説明は後述する。この第6動作により、通常の読み出しデータと、ソフトビットデータと、がセンス回路140のラッチ回路に記憶される。
<2−2−2−2>第4動作について
図31を用いて、図30のステップS601の第4動作について説明する。
[ステップS701]
シーケンサ111は、メモリセルアレイ130の下位ページに対して第1読み出し動作を行う。第1読み出し動作に関して、仮選択ワード線WLn+1に電圧VCGRV(VB)が印加される以外は、図8を用いて説明した動作と同様である。本例では、ワード線WL2が選択ワード線WLn、ワード線WL3が仮選択ワード線WLn+1である場合について説明する。
図32に示すように、第1読み出しでは、仮選択ワード線WL3に接続されたメモリセルトランジスタMTn+1から下位ページ(下位ビット)データ(XL)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(XL)は、セル間干渉効果を補正するためのデータとなる。
[ステップS702]
図32に示すように、ステップS202と同様にして、ラッチ回路UDLに読み出しデータ(XL)が記憶される。
<2−2−2−3>第5動作について
図33を用いて、図30のステップS602の第5動作について説明する。
[ステップS801]
シーケンサ111は、メモリセルアレイ130の下位ページに対して第2読み出し動作を行う。第2読み出し動作に関して、選択ワード線WLnに電圧VCGRV(VB)が印加される以外は、図11を用いて説明した動作と同様である。
図34に示すように、第2読み出しでは、ワード線WL2に接続された選択メモリセルトランジスタMT2から下位ページ(下位ビット)データ(YL)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(YL)は、通常の読み出しデータと、ソフトビットデータと、を生成するときに用いられる。
[ステップS802]
図34に示すように、ステップS302と同様にして、ラッチ回路LDLにデータ(~YL)が記憶される。
[ステップS803]
図34に示すように、ステップS303と同様にして、ラッチ回路XDLにデータ(~YL)が記憶される。
<2−2−2−4>第6動作について
図35を用いて、図30のステップS603の第6動作について説明する。
[ステップS901]
シーケンサ111は、メモリセルアレイ130の下位ページに対して第3読み出し動作を行う。第3読み出し動作に関して、選択ワード線WLnに電圧VCGRV(VB)が印加される以外は、図14を用いて説明した動作と同様である。
図36に示すように、第3読み出しでは、選択ワード線WL2に接続された選択メモリセルトランジスタMT2から下位ページ(下位ビット)データ(ZL)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(ZL)は、通常の読み出しデータと、ソフトビットデータと、を生成するときに用いられる。
[ステップS902]
図36に示すように、ステップS402と同様にして、ラッチ回路SDLにデータ(ZL)が記憶される。
[ステップS903]
図37に示すように、ステップS403と同様にして、ラッチ回路LDLに、データ(ZL|~YL)を記憶させる。本実施形態において、ラッチ回路LDLに記憶されるデータ(ZL|~YL)は、ソフトビットデータとして取り扱われる。
[ステップS904]
図38に示すように、ステップS404と同様にして、ラッチ回路XDLに、データ(~ZL&XL|~YL)を記憶させる。ラッチ回路XDLに記憶されたデータ(~ZL&XL|~YL)は、選択ワード線WLnに隣り合うワード線WLn+1に接続されるメモリセルトランジスタMTからのセル間干渉効果による閾値変動を考慮したデータ(通常の読み出しデータ)となる。
<2−2−3>上位ページ読み出し動作について
<2−2−3−1>上位ページ読み出し動作の流れについて
図39を用いて、本実施形態のメモリシステム1の上位ページ読み出し動作のおおまかな流れについて説明する。
[ステップS1001]
NAND型フラッシュメモリ100は、メモリコントローラ200からの読み出し要求を受けると、第7動作を実行する。第7動作は、後述する第12動作用のデータを取得するための動作である。第7動作に関する詳細な説明は後述する。
[ステップS1002]
NAND型フラッシュメモリ100は、第7動作が終了すると、第8動作を実行する。第8動作は、後述する第12動作用のデータを取得するための動作である。第8動作に関する詳細な説明は後述する。
[ステップS1003]
NAND型フラッシュメモリ100は、第8動作が終了すると、第9動作を実行する。第9動作は、後述する第12動作用のデータを取得するための動作である。第9動作に関する詳細な説明は後述する。
[ステップS1004]
NAND型フラッシュメモリ100は、第9動作が終了すると、第10動作を実行する。第10動作は、後述する第12動作用のデータを取得するための動作である。第10動作に関する詳細な説明は後述する。
[ステップS1005]
NAND型フラッシュメモリ100は、第10動作が終了すると、第11動作を実行する。第11動作は、後述する第12動作用のデータを取得するための動作である。第11動作に関する詳細な説明は後述する。
[ステップS1006]
NAND型フラッシュメモリ100は、第11動作が終了すると、第12動作を実行する。第12動作に関する詳細な説明は後述する。この第12動作により、通常の読み出しデータと、ソフトビットデータと、がセンス回路140のラッチ回路に記憶される。
<2−2−3−2>第7動作について
図40を用いて、図39のステップS1001の第7動作について説明する。
[ステップS1101]
シーケンサ111は、メモリセルアレイ130の上位ページに対して第1読み出し動作を行う。第1読み出し動作に関して、仮選択ワード線WLn+1に電圧VCGRV(VA)が印加される以外は、図8を用いて説明した動作と同様である。本例では、ワード線WL2が選択ワード線WLn、ワード線WL3が仮選択ワード線WLn+1である場合について説明する。
図41に示すように、第1読み出しでは、仮選択ワード線WL3に接続されたメモリセルトランジスタMTn+1から上位ページ(上位ビット)データ(XU1)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(XU1)は、セル間干渉効果を補正するためのデータとなる。
[ステップS1002]
図41に示すように、ステップS202と同様にして、ラッチ回路UDLに読み出しデータ(XU1)が記憶される。
<2−2−3−3>第8動作について
図42を用いて、図39のステップS1002の第8動作について説明する。
[ステップS1201]
シーケンサ111は、メモリセルアレイ130の上位ページに対して第2読み出し動作を行う。第2読み出し動作に関して、選択ワード線WLnに電圧VCGRV(VA)が印加される以外は、図11を用いて説明した動作と同様である。
図43に示すように、第2読み出しでは、ワード線WL2に接続された選択メモリセルトランジスタMT2から上位ページ(上位ビット)データ(YU1)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(YU1)は、通常の読み出しデータと、ソフトビットデータと、を生成するときに用いられる。
[ステップS1202]
シーケンサ111は、データ(YU1)がセンスアンプ部SA(ノードSEN)に読み出されると、制御信号STBをセンスアンプ部SAに供給する。図43に示すように、センスアンプ部SAは、信号STBがアサートされるタイミングで、ノードSENの読み出しデータ(YU1)をラッチ回路SDLに転送する。ラッチ回路SDLには、データ(YU1)が記憶される。
[ステップS1203]
図43に示すように、シーケンサ111は、ラッチ回路SDLに記憶されたデータ(YU1)をラッチ回路LDLに転送する。そして、演算部OPは、ラッチ回路LDLに記憶されたデータ(YU1)を反転させてデータ(~YU1)を生成する。それにより、ラッチ回路LDLには、データ(~YU1)が記憶される。
<2−2−3−4>第9動作について
図44を用いて、図39のステップS1003の第9動作について説明する。
[ステップS1301]
シーケンサ111は、メモリセルアレイ130の上位ページに対して第3読み出し動作を行う。第3読み出し動作に関して、選択ワード線WLnに電圧VCGRV(VA)が印加される以外は、図14を用いて説明した動作と同様である。
図45に示すように、第3読み出しでは、選択ワード線WL2に接続された選択メモリセルトランジスタMT2から上位ページ(上位ビット)データ(ZU1)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(ZU1)は、通常の読み出しデータと、ソフトビットデータと、を生成するときに用いられる。
[ステップS1302]
図45に示すように、ステップS402と同様にして、ラッチ回路SDLにデータ(ZU1)が記憶される。
[ステップS1303]
図45に示すように、演算部OPは、ラッチ回路SDLに記憶されたデータ(ZU1)の反転データ(~ZU1)と、ラッチ回路UDLに記憶されたデータ(XU1)と、の論理積演算(~SDL&UDL)を行う。引き続き演算部OPは、論理積演算の結果(~ZU1&XU1)と、ラッチ回路LDLに記憶されたデータ(~YU1)と、の論理和演算(~SDL&UDL|LDL)を行い、データ(~ZU1&XU1|~YU1)を生成しラッチ回路XDLに記憶させる。
[ステップS1303]
図46に示すように、演算部OPは、ラッチ回路SDLに記憶されたデータ(ZU1)と、ラッチ回路LDLに記憶されたデータ(~YU1)と、の論理和演算(SDL|LDL)を行い、データ(ZU1|~YU1)を生成しラッチ回路LDLに記憶させる。
<2−2−3−5>第10動作について
図47を用いて、図39のステップS1004の第10動作について説明する。
[ステップS1401]
シーケンサ111は、メモリセルアレイ130の上位ページに対して第1読み出し動作を行う。第1読み出し動作に関して、仮選択ワード線WLn+1に電圧VCGRV(VC)が印加される以外は、図8を用いて説明した動作と同様である。
図48に示すように、第1読み出しでは、仮選択ワード線WL3に接続されたメモリセルトランジスタMTn+1から上位ページ(上位ビット)データ(XU2)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(XU2)は、セル間干渉効果を補正するためのデータとなる。
[ステップS1402]
図48に示すように、ステップS202と同様にして、ラッチ回路UDLに読み出しデータ(XU2)が記憶される。
<2−2−3−6>第11動作について
図49を用いて、図39のステップS1005の第11動作について説明する。
[ステップS1501]
シーケンサ111は、メモリセルアレイ130の上位ページに対して第2読み出し動作を行う。第2読み出し動作に関して、選択ワード線WLnに電圧VCGRV(VC)が印加される以外は、図11を用いて説明した動作と同様である。
図50に示すように、第2読み出しでは、ワード線WL2に接続された選択メモリセルトランジスタMT2から上位ページ(上位ビット)データ(YU2)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(YU2)は、通常の読み出しデータと、ソフトビットデータと、を生成するときに用いられる。
[ステップS1502]
図50に示すように、ステップS1202と同様にして、ラッチ回路SDLにデータ(YU2)が記憶される。
[ステップS1503]
図51に示すように、演算部OPは、ラッチ回路SDLに記憶されたデータ(YU2)の反転データ(~YU2)と、ラッチ回路LDLに記憶されたデータ(ZU1|~YU1)と、の論理積演算(~SDL&LDL)を行う。演算部OPは、論理積演算の結果(~YU2&(ZU1|~YU1))をラッチ回路LDLに記憶させる。
[ステップS1504]
図52に示すように、演算部OPは、ラッチ回路SDLに記憶されたデータ(YU2)と、ラッチ回路UDLに記憶されたデータ(XU2)の反転データ(~XU2)と、の論理積演算(SDL&~UDL)を行う。引き続き演算部OPは、論理積演算の結果(YU2&~XU2)と、ラッチ回路XDLに記憶されたデータ(~ZU1&XU1|~YU1)と、の論理和演算(SDL&~UDL|XDL)を行い、データ((YU2&~XU2)|(~ZU1&XU1|~YU1))を生成しラッチ回路XDLに記憶させる。
<2−2−3−7>第12動作について
図53を用いて、図39のステップS1006の第12動作について説明する。
[ステップS1601]
シーケンサ111は、メモリセルアレイ130の上位ページに対して第3読み出し動作を行う。第3読み出し動作に関して、選択ワード線WLnに電圧VCGRV(VC)が印加される以外は、図14を用いて説明した動作と同様である。
図54に示すように、第3読み出しでは、選択ワード線WL2に接続された選択メモリセルトランジスタMT2から上位ページ(上位ビット)データ(ZU2)がセンスアンプ部SA(ノードSEN)に読み出される。このデータ(ZU2)は、通常の読み出しデータと、ソフトビットデータと、を生成するときに用いられる。
[ステップS1602]
図54に示すように、ステップS402と同様にして、ラッチ回路SDLにデータ(ZU2)が記憶される。
[ステップS1603]
図55に示すように、演算部OPは、ラッチ回路SDLに記憶されたデータ(ZU2)と、ラッチ回路LDLに記憶されたデータ(~YU2&(ZU1|~YU1))と、の論理和演算(SDL|LDL)を行う。演算部OPは、論理和演算の結果(ZU2|(~YU2&(ZU1|~YU1)))をラッチ回路LDLに記憶させる。本実施形態において、ラッチ回路LDLに記憶されるデータ(ZU2|(~YU2&(ZU1|~YU1)))は、ソフトビットデータとして取り扱われる。
[ステップS1604]
図56に示すように、演算部OPは、ラッチ回路SDLに記憶されたデータ(ZU2)と、ラッチ回路XDLに記憶されたデータ((YU2&~XU2)|(~ZU1&XU1|~YU1))と、の論理和演算(SDL|XDL)を行う。引き続き演算部OPは、論理和演算の結果(ZU2|((YU2&~XU2)|(~ZU1&XU1|~YU1)))をラッチ回路XDLに記憶させる。ラッチ回路XDLに記憶されたデータ(ZU2|((YU2&~XU2)|(~ZU1&XU1|~YU1)))は、選択ワード線WLnに隣り合うワード線WLn+1に接続されるメモリセルトランジスタMTからのセル間干渉効果による閾値変動を考慮したデータ(通常の読み出しデータ)となる。
<2−3>ソフトビットデータ生成方法について
<2−3−1>選択メモリセルトランジスタの閾値分布の変動について
ここで、ソフトビットデータが生成される原理の理解を容易にするために、選択メモリセルトランジスタMTの閾値分布の変動について説明する。
図57を用いて、選択メモリセルトランジスタMTの閾値分布の変動について説明する。
図57に示す分布E1〜E3、A1〜A3は、図18で説明した分布と同様である。
図57に示す分布B1は、“B−level”の理想的な閾値分布である。
分布B1は、隣り合うメモリセルトランジスタからセル間干渉効果を受けて閾値が変動することがある。図57に示すように、分布B2は、隣り合うメモリセルトランジスタからセル間干渉効果を受けて閾値が変動する場合の“B−level”の閾値分布である。分布B2は、隣り合うメモリセルトランジスタからセル間干渉効果を受けるため、分布B1よりも閾値が高くなる。
分布B2は、第3読み出し動作の際に、隣り合うワード線WLに電圧VREADLAが印加されることにより、閾値が変動することがある。図57に示すように、分布B3は、第3読み出し動作の場合に想定される“B−level”の閾値分布である。分布B3は、選択ワード線WLnに隣り合うワード線WLn+1に電圧VREADLAが印加されることにより、選択ワード線WLnに印加される電圧VCGRVの電位が見かけ上、上昇する。そのため、分布B3は、分布B2よりも閾値が高くなる。
図57に示す分布C1は、“C−level”の理想的な閾値分布である。
図57に示す分布C2は、隣り合うメモリセルトランジスタからセル間干渉効果を受けて閾値が変動する場合の“C−level”の閾値分布である。分布C2は、隣り合うメモリセルトランジスタからセル間干渉効果を受けるため、分布C1よりも閾値が高くなる。
図57に示す分布C3は、第3読み出し動作の場合に想定される“C−level”の閾値分布である。分布C3は、選択ワード線WLnに隣り合うワード線WLn+1に電圧VREADLAが印加されることにより、閾値分布が見かけ上、上昇する。そのため、分布C3は、分布C2よりも閾値が高くなる。
図57に示すように、第2読み出し動作の際は選択ワード線WLnに電圧VCGRV(VA、VB、VC)が印加される。そして、第3読み出し動作の際は、選択ワード線WLnに隣り合うワード線WLn+1に電圧VREADLAが印加されるので、選択ワード線WLnに印加される電圧VCGRVの電位が、それぞれVAD(VA<VAD)、VBD(VB<VBD)、VCD(VC<VCD)へと上昇する。
一方で、選択メモリセルトランジスタMTにおいて、隣り合うメモリセルトランジスタから受けるセル間干渉効果が想定よりも大きいことがある。
このような場合、図58に示すように、分布E2、E3、A2、A3、B2、B3、C2、及びC3のシフト量は、想定しているシフト量よりも大きくなる。
図58に示す場合、第3読み出しにおいて、分布E2が電圧VA以上となることがある。このような場合、ミスM3として取り扱う。更に第3読み出しにおいて、分布A2が電圧VB以上となることがある。このような場合、ミスM4として取り扱う。同様に、第3読み出しにおいて、分布B2が電圧VC以上となることがある。このような場合、ミスM5として取り扱う。
他方で、選択メモリセルトランジスタMTにおいて、隣り合うメモリセルトランジスタから受けるセル間干渉効果が想定よりも小さいことがある。
このような場合、図59に示すように、分布E2、E3、A2、A3、B2、B3、C2、及びC3のシフト量は、想定しているシフト量よりも小さくなる。
図59に示す場合、第3読み出しにおいて、分布A3が電圧VAD以下となることがある。このような場合、ミスM6として取り扱う。更に第3読み出しにおいて、分布B3が電圧VBD以下となることがある。このような場合、ミスM7として取り扱う。同様に第3読み出しにおいて、分布C3が電圧VCD以下となることがある。このような場合、ミスM8として取り扱う。
<2−3−2>下位ページに関するラッチ回路の動作例について
図60〜図64を用いて、第4〜第6動作に係るラッチ回路の動作の具体例について説明する。
図60は、図31のステップS702により、ラッチ回路UDLに、メモリセルトランジスタMTn+1の反転データが記憶された後の図である。
ここで、図60の一部に着目して、選択メモリセルトランジスタMTnのデータと、メモリセルトランジスタMTn+1のデータと、セル間干渉効果との関係について説明する。
例えば、メモリセルトランジスタMTn+1が“E”または“A”を記憶しており(UDLに“0”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。
同様にメモリセルトランジスタMTn+1が“B”または“C”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。
一方で、セルトランジスタMTn+1が“E”または“A”を記憶しており、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。これは、図58のM4に示すような、誤ったデータである。
メモリセルトランジスタMTn+1が“B”または“C”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。これは、図58のミスM4に示すような、誤ったデータである。
図60に示すように、図33で説明したステップS802において、ラッチ回路LDLに、センスアンプ部SA(ノードSEN)の反転データが入力される。そのため、ミスM4のデータは、“0”データとしてラッチ回路LDLに記憶される。
そして図61に示すように、図33で説明したステップS803において、ラッチ回路XDLに、ラッチ回路LDLのデータが転送される。
図62を用いて、第3読み出し時におけるラッチ回路に記憶されるデータについて説明する。
図62に示すように、例えば、メモリセルトランジスタMTn+1が“E”または“A”を記憶しており(UDLに“0”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“B”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。これは、図59のミスM7に示すような、誤ったデータである。
同様に、メモリセルトランジスタMTn+1が“B”または“C”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“B”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。これは、図59のミスM7に示すような、誤ったデータである。
一方で、メモリセルトランジスタMTn+1が“E”または“A”を記憶しており、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“B”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。
メモリセルトランジスタMTn+1が“B”または“C”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“B”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。
図62に示すように、図35で説明したステップS902において、ラッチ回路SDLに、センスアンプ部SA(ノードSEN)のデータが入力される。そのため、ミスM7のデータは、“0”データとしてラッチ回路SDLに記憶される。
図63に示すように、図35で説明したステップS903において、論理和演算(SDL|LDL)が行われ、ラッチ回路LDLに演算結果が記憶される。ミスM4及びミスM7のデータは、“0”データとしてラッチ回路LDLに記憶される。
図64に示すように、図35で説明したステップS904において、論理演算(~SDL&UDL|XDL)が行われ、ラッチ回路XDLに演算結果が記憶される。ラッチ回路XDLに記憶されたデータは、通常の読み出しデータとして出力される。
図64に示すように、ラッチ回路XDLに読み出しデータが記憶され、ラッチ回路LDLにソフトビットデータが記憶される。
図65に示すように、本実施形態によれば、ミスM4が発生する場合、または、ミスM7が発生する場合、ラッチ回路LDLに記憶されるデータが“0”となる。つまり、本実施形態において、異なる種類のミス(ミスM4及びミスM7)が発生した場合でも、特定の値(“0”データ)としてラッチ回路LDLに記憶される。つまり、メモリシステム1は、新たにソフトビットデータを読み出す為の読み出し動作を行うことなく、ソフトビットデータを取得することができる。その結果、ECCを行う際において、ソフトビットのための読み出し時間を抑制することができる。
<2−3−3>上位ページに関するラッチ回路の動作例について
図66〜図70を用いて、第7〜第9動作に係るラッチ回路の動作の具体例について説明する。
図66は、図40のステップS1102により、ラッチ回路UDLに、メモリセルトランジスタMTn+1の反転データが記憶された後の図である。
ここで、図66の一部に着目して、選択メモリセルトランジスタMTnのデータと、メモリセルトランジスタMTn+1のデータと、セル間干渉効果との関係について説明する。
例えば、メモリセルトランジスタMTn+1が“E”または“C”を記憶しており(UDLに“0”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“E”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。
同様にメモリセルトランジスタMTn+1が“A”または“B”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“E”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。
一方で、セルトランジスタMTn+1が“E”または“C”を記憶しており、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“E”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。これは、図58のミスM3に示すような、誤ったデータである。
メモリセルトランジスタMTn+1が“A”または“B”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“E”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。これは、図58のミスM3に示すような、誤ったデータである。
図66に示すように、図42で説明したステップS1202において、ラッチ回路SDLに、センスアンプ部SA(ノードSEN)のデータが入力される。そのため、ミスM3のデータは、“0”データとしてラッチ回路SDLに記憶される。
続いて、図67に示すように、図42で説明したステップS1203において、ラッチ回路LDLに、ラッチ回路SDLの反転データが入力される。そのため、ミスM3のデータは、“0”データとしてラッチ回路LDLに記憶される。
図68を用いて、第3読み出し時におけるラッチ回路に記憶されるデータについて説明する。
図68に示すように、例えば、メモリセルトランジスタMTn+1が“E”または“C”を記憶しており(UDLに“0”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。これは、図59のミスM6に示すような、誤ったデータである。
同様に、メモリセルトランジスタMTn+1が“A”または“B”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。これは、図59のミスM6に示すような、誤ったデータである。
一方で、メモリセルトランジスタMTn+1が“E”または“C”を記憶しており、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。
メモリセルトランジスタMTn+1が“A”または“B”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“A”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。
図68に示すように、図44で説明したステップS1302において、ラッチ回路SDLに、センスアンプ部SA(ノードSEN)のデータが入力される。そのため、ミスM6のデータは、“0”データとしてラッチ回路SDLに記憶される。
図69に示すように、図44で説明したステップS1303において、論理演算(~SDL&UDL|LDL)が行われ、ラッチ回路XDLに演算結果が記憶される。
図70に示すように、図44で説明したステップS1304において、論理和演算(LDL|SDL)が行われ、ラッチ回路LDLに演算結果が記憶される。ミスM3及びミスM6のデータは、“0”データとしてラッチ回路LDLに記憶される。
図71〜図76を用いて、第10〜第12動作に係るラッチ回路の動作の具体例について説明する。
図71は、図47のステップS1402により、ラッチ回路UDLに、メモリセルトランジスタMTn+1の反転データが記憶された後の図である。
ここで、図71の一部に着目して、選択メモリセルトランジスタMTnのデータと、メモリセルトランジスタMTn+1のデータと、セル間干渉効果との関係について説明する。
例えば、メモリセルトランジスタMTn+1が“E”または“C”を記憶しており(UDLに“0”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“B”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。
同様にメモリセルトランジスタMTn+1が“A”または“B”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“B”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。
一方で、セルトランジスタMTn+1が“E”または“C”を記憶しており、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“B”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。これは、図58のミスM5に示すような、誤ったデータである。
メモリセルトランジスタMTn+1が“A”または“B”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“B”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。これは、図58のミスM5に示すような、誤ったデータである。
図71に示すように、図49で説明したステップS1502において、ラッチ回路SDLに、センスアンプ部SA(ノードSEN)のデータが入力される。そのため、ミスM5のデータは、“0”データとしてラッチ回路SDLに記憶される。
図72に示すように、図49で説明したステップS1503において、論理演算(~SDL&LDL)が行われ、ラッチ回路LDLに演算結果が記憶される。この演算により、ミス5のデータは、“0”データとしてラッチ回路LDLに記憶される。
図73に示すように、図49で説明したステップS1504において、論理演算(SDL&~UDL|XDL)が行われ、ラッチ回路XDLに演算結果が記憶される。
図74を用いて、第3読み出し時におけるラッチ回路に記憶されるデータについて説明する。
図74に示すように、例えば、メモリセルトランジスタMTn+1が“E”または“C”を記憶しており(UDLに“0”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“C”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。これは、図59のM8に示すような、誤ったデータである。
同様に、メモリセルトランジスタMTn+1が“A”または“B”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が小さい場合、センスアンプ部SAは、“C”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“0”となる。これは、図59のM8に示すような、誤ったデータである。
一方で、メモリセルトランジスタMTn+1が“E”または“C”を記憶しており、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“C”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。
メモリセルトランジスタMTn+1が“A”または“B”を記憶しており(UDLに“1”が記憶されており)、且つセル間干渉効果が大きい場合、センスアンプ部SAは、“C”が記憶されている選択メモリセルトランジスタMTnから読み出すデータは“1”となる。
図74に示すように、図53で説明したステップS1602において、ラッチ回路SDLに、センスアンプ部SA(ノードSEN)のデータが入力される。そのため、ミスM8のデータは、“0”データとしてラッチ回路SDLに記憶される。
図75に示すように、図53で説明したステップS1604において、論理和演算(LDL|SDL)が行われ、ラッチ回路LDLに演算結果が記憶される。ミスM3、ミスM5、ミスM6及びミスM8のデータは、“0”データとしてラッチ回路LDLに記憶される。
図76に示すように、図53で説明したステップS1604において、論理和演算(SDL|XDL)が行われ、ラッチ回路XDLに演算結果が記憶される。ラッチ回路XDLに記憶されるデータは、通常の読み出しデータとなる。
図77に示すように、本実施形態によれば、ミスM3、ミスM5、ミスM6及びミスM8の少なくとも一つが発生する場合ラッチ回路LDLに記憶されるデータが“0”となる。つまり、本実施形態において、異なる種類のミス(ミスM3、ミスM5、ミスM6及びミスM8)が発生した場合でも、特定の値(“0”データ)としてラッチ回路LDLに記憶される。つまり、メモリシステム1は、新たにソフトビットデータを読み出す為の読み出し動作を行うことなく、ソフトビットデータを取得することができる。その結果、ECCを行う際において、ソフトビットのための読み出し時間を抑制することができる。
<2−4>コマンドシーケンスについて
<2−4−1>下位ページに関するコマンドシーケンスについて
図78を用いて、本実施形態に係るメモリシステム1の下位ページ読み出し動作におけるコマンドシーケンスについて説明する。
基本的な流れは、図27で説明した動作と同様である、図27で説明した流れと異なる点は、アドレスの中身と、選択ワード線WLnに印加される電圧VCGRVである。
本実施形態に係るメモリコントローラ200は、読み出し動作につき、コマンドセットCS1をNAND型フラッシュメモリ100に対して発行する。
コマンド“30h”がレジスタ112にセットされると、NAND型フラッシュメモリ100はメモリセルアレイ130からのデータの読み出し動作を開始してビジー状態となる。
そして、NAND型フラッシュメモリ100は、図29のステップS502〜S505、図30のステップS601〜S603を実行する。
その後、NAND型フラッシュメモリ100がレディ状態になると、メモリセルアレイ130から読み出されたデータが、メモリコントローラ200へ送信される。
メモリコントローラ200は、図29で説明したステップS509において、読み出し要求を実行する場合、NAND型フラッシュメモリ100に対してコマンド(例えば“YYh”)を発行する。
コマンド“YYh”がレジスタ112にセットされると、NAND型フラッシュメモリ100は、図29で説明したステップS510、及びS511の動作を行う。
<2−4−2>上位ページに関するコマンドシーケンスについて
図79を用いて、本実施形態に係るメモリシステム1の上位ページ読み出し動作におけるコマンドシーケンスについて説明する。
基本的な流れは、図27で説明した動作と同様である、図27で説明した流れと異なる点は、アドレスの中身と、選択ワード線WLnに印加される電圧VCGRVである。
本実施形態に係るメモリコントローラ200は、読み出し動作につき、コマンドセットCS1をNAND型フラッシュメモリ100に対して発行する。
コマンド“30h”がレジスタ112にセットされると、NAND型フラッシュメモリ100はメモリセルアレイ130からのデータの読み出し動作を開始してビジー状態となる。
そして、NAND型フラッシュメモリ100は、図29のステップS502〜S505、図39のステップS1001〜S1003を実行する。
その後、NAND型フラッシュメモリ100がレディ状態になると、メモリセルアレイ130から読み出されたデータが、メモリコントローラ200へ送信される。
<2−5>効果
上述した実施形態によれば、第4〜第6読み出し動作によって得られる結果をラッチ回路を用いて演算することにより、一連の読み出し動作で、下位ページに関する通常の読み出しデータと、下位ページに関するソフトビットデータと、を得ることが可能となる。同様に、上述した実施形態によれば、第7〜第12読み出し動作によって得られる結果をラッチ回路を用いて演算することにより、一連の読み出し動作で、上位ページに関する通常の読み出しデータと、上位ページに関するソフトビットデータと、を得ることが可能となる。これにより、上述した第1の実施形態と同様の効果を得ることが可能となる。
<3>変形例
なお、上述した第2動作、第5動作、第8動作、及び第11動作における第2読み出し動作、または第3動作、第6動作、第9動作、及び第12動作における第3読み出し動作において、選択ワード線WLnに印加する電圧VCGRVは適宜変更可能である。
図80を用いて、電圧VCGRVの変更する方法を説明する。図80では、第1の実施形態に適用した場合について示している。
図80に示すように、変形例に係るメモリコントローラ200は、読み出し動作につき、読み出し動作を命令するprefixコマンド(例えば“XAh”)をNAND型フラッシュメモリ100に対して発行する。引き続きメモリコントローラ200は、アドレス(カラムアドレス、ブロックアドレス、ページアドレスを含む)、及び電圧VCGRVの変動量(shift value)を示すデータをNAND型フラッシュメモリ100に対して発行する。続いて、メモリコントローラ200は、コマンド(例えば“XBh”)、コマンド(例えば“00h”)、及びアドレス(カラムアドレス、ブロックアドレス、ページアドレスを含む)をNAND型フラッシュメモリ100に対して発行する。その後メモリコントローラ200は、コマンド(例えば“30h”)をNAND型フラッシュメモリ100に対して発行する。
コマンド“30h”がレジスタ112にセットされると、NAND型フラッシュメモリ100はメモリセルアレイ130からのデータの読み出し動作を開始してビジー状態となる。
そして、NAND型フラッシュメモリ100は、図6で説明したステップS102〜S105を実行する。NAND型フラッシュメモリ100は、ステップS103〜S104の際に、受信した電圧VCGRVの変動量(shift value)に基づいて、選択ワード線WLnに印加する電圧VCGRVを変化させる。
図81を用いて、本変形例の具体例について説明する。
図81では、電圧VCGRV(VA)を変動させなかった場合のソフトビットデータの値を図中のLDL1に示している。同様に図81では、電圧VCGRV(VA)を電圧dV1だけ変動させた場合のソフトビットデータの値を図中のLDL2に示している。更に図81では、電圧VCGRV(VA)を電圧dV2(dV2>dV1)だけ変動させた場合のソフトビットデータの値を図中のLDL3に示している。
図81に示すように、電圧VCGRV(VA)を変動させない場合は、第1の実施形態で説明した読み出し動作と同様に動作する。
図81に示すように、電圧VCGRV(VA)を電圧dV1だけ変動させる場合は、第2読み出し動作において、選択ワード線WLnに印加される電圧は電圧VA+dV1となる。更に、第3読み出し動作において、選択ワード線WLnに印加される電圧は電圧VA−dV1となる。しかしながら、ワード線WLn+1に印加される電圧が電圧VREADLAとなるので、実質的に選択ワード線WLnに印加される電圧は、電圧VAD−dV1となる。そして、電圧VA+dV1以上の“E”データ、または電圧VAD−dV1以下の“A”データは、ミスとなり、ラッチ回路LDLに“0”として記憶される。
図81に示すように、電圧VCGRV(VA)を電圧dV2だけ変動させる場合は、第2読み出し動作において、選択ワード線WLnに印加される電圧は電圧VA+dV2となる。更に、第3読み出し動作において、選択ワード線WLnに印加される電圧は電圧VA−dV2となる。しかしながら、ワード線WLn+1に印加される電圧が電圧VREADLAとなるので、実質的に選択ワード線WLnに印加される電圧は、電圧VAD−dV2となる。そして、電圧VA+dV2以上の“E”データ、または電圧VAD−dV2以下の“A”データは、ミスとなり、ラッチ回路LDLに“0”として記憶される。
以上のように、電圧VCGRVを細かく変動させることも可能である。
同様にして、本変形例は第2の実施形態にも適用可能である。
なお、上述した各実施形態によれば、センスアンプユニットは、4つのラッチ回路を備えているが、必ずしもこれに限らず、センスアンプユニットは、5つ以上のデータラッチを備える構成であっても良い。
また、上述した各実施形態によれば、ラッチ回路LDLにソフトビットデータを記憶しているが、必ずしもこれに限らず、適宜変更可能である。
また、本発明に関する各実施形態において、
(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いずれかの間としてもよい。
奇数番目のワード線を書込む際の、選択されたワード線に最初に印加される電圧と、偶数番目のワード線を書込む際の、選択されたワード線に最初に印加される電圧と、を変えてもよい。
プログラム動作を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の間であってもよい。
消去動作の時間(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などを用いることができる。
また、メモリセル間にはエアギャップを形成することができる。
以上、本発明の実施形態を説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない範囲内において種々変形して実施することが可能である。さらに、上記実施形態には種々の段階の発明が含まれており、開示された構成要件を適宜組み合わせることによって種々の発明が抽出される。例えば、開示された構成要件からいくつかの構成要件が削除されても、所定の効果が得られるものであれば、発明として抽出され得る。

Claims (16)

  1. 第1メモリセル及び前記第1メモリセルに隣り合う第2メモリセルと、
    前記第1メモリセルからデータを読み出す場合、
    前記第2メモリセルに対して第1読み出しを行い、
    前記第1メモリセルに対して第2読み出しを行い、
    前記第2メモリセルのゲートに前記第2読み出し時とは異なる電圧を印加し、前記第1メモリセルに対して第3読み出しを行い、
    前記第1〜第3読み出しの結果に基づいて、
    前記第1メモリセルに記憶された第1データと、前記第1データを補正するための第2データと、を生成するシーケンサと、
    を備える記憶装置。
  2. 前記シーケンサは、
    前記第1読み出しの際、前記第2メモリセルから第3データを読み出し、
    前記第2読み出しの際、前記第1メモリセルから読み出されたデータを反転させて第4データを生成し、
    前記第3読み出しの際、前記第1メモリセルから第5データを読み出し、
    前記第5データと、前記第4データとの論理和演算を行い、前記第2データを生成し、
    前記第5データの反転データと、前記第3データとの論理積演算を行い、前記論理積演算の結果と、前記第4データとの論理和演算を行い、前記第1データを生成する請求項1に記載の記憶装置。
  3. 前記シーケンサは、
    前記第2メモリセルのゲートに第1電圧を印加する前記第1読み出しの際、前記第2メモリセルから第3データを読み出し、
    前記第1メモリセルのゲートに前記第1電圧を印加する前記第2読み出しの際、前記第1メモリセルから第4データを読み出し、
    前記第4データを反転させた第5データを生成し、
    前記第1メモリセルのゲートに前記第1電圧を印加する前記第3読み出しの際、前記第1メモリセルから第6データを読み出し、
    前記第6データを反転させたデータと、前記第3データとの論理積演算を行い、前記論理積演算の結果と、前記第5データとの論理和演算を行い、第7データを生成し、
    前記第5データと、前記第6データとの論理和演算を行い、第8データを生成し、
    前記第2メモリセルのゲートに前記第1電圧と異なる第2電圧を印加する前記第1読み出しの際、前記第2メモリセルから第9データを読み出し、
    前記第1メモリセルのゲートに前記第2電圧を印加する前記第2読み出しの際、前記第1メモリセルから第10データを読み出し、
    前記第10データを反転させたデータと、前記第8データとの論理積演算を行い、第11データを生成し、
    前記第10データと、前記第9データを反転させたデータとの論理積演算を行い、前記論理積演算の結果と、前記第7データとの論理和演算を行い、第12データを生成し、
    前記第1メモリセルのゲートに前記第2電圧を印加する前記第3読み出しの際、前記第1メモリセルから第13データを読み出し、
    前記第13データと、前記第11データとの論理和演算を行い、前記第1データを生成し、
    前記第13データと、前記第12データとの論理和演算を行い、前記第2データを生成する請求項1に記載の記憶装置。
  4. 前記シーケンサは、
    前記第2メモリセルからデータを読み出す前記第1読み出し動作において、
    前記第2メモリセルのゲートに第1電圧を印加し、前記第1メモリセルのゲートに前記第1電圧よりも大きい第2電圧を印加し、
    前記第1メモリセルからデータを読み出す前記第2読み出し動作において、
    前記第2メモリセルのゲートに前記第2電圧を印加し、前記第1メモリセルのゲートに前記第1電圧を印加し、
    前記第1メモリセルからデータを読み出す前記第3読み出し動作において、
    前記第2メモリセルのゲートに前記第2電圧よりも大きい第3電圧を印加し、前記第1メモリセルのゲートに前記第1電圧を印加する請求項1に記載の記憶装置。
  5. 記憶部と、
    前記記憶部を制御する制御部と、
    を更に備え、
    前記第2メモリセル及び前記第1メモリセルと、前記シーケンサは、前記記憶部に設けられる請求項1に記載の記憶装置。
  6. 前記制御部は、
    前記第1データを読み出す場合、前記記憶部に読み出し要求を行う
    請求項5に記載の記憶装置。
  7. 前記記憶部は、
    前記読み出し要求に基づいて、
    前記第1〜第3読み出しを行い、
    前記第1及び前記第2データを生成する
    請求項6に記載の記憶装置。
  8. 前記制御部は、前記第1データのエラー訂正を行うエラー訂正回路を更に備える請求項7に記載の記憶装置。
  9. 前記エラー訂正回路は、前記第1データのエラー訂正が完了しなかった場合、
    前記シーケンサに対して、前記第2データの読み出し要求を行う請求項8に記載の記憶装置。
  10. 前記記憶部は、前記第2データの読み出し要求を受信すると、
    前記第2データを、前記制御部に出力する請求項9に記載の記憶装置。
  11. 前記エラー訂正回路は、前記第2データに基づいて前記第1データのエラー訂正を行う
    請求項10に記載の記憶装置。
  12. 前記記憶部は、
    前記第1及び第2メモリセルが、それぞれ複数ビットのデータを記憶可能な場合、
    ビット毎に前記第1〜第3読み出しを行い、
    ビット毎に前記第1及び前記第2データを生成する
    請求項11に記載の記憶装置。
  13. 前記記憶部は、
    第1ラッチ回路と、
    第2ラッチ回路と、
    第3ラッチ回路と、
    第4ラッチ回路と、
    を更に備え
    前記シーケンサは、
    前記第1読み出しの際、前記第2メモリセルから読み出された第3データを前記第1ラッチ回路に記憶し、
    前記第2読み出しの際、前記第1メモリセルから読み出されたデータを反転させた第4データを前記第2ラッチ回路に記憶し、
    前記第2ラッチ回路に記憶された前記第4データを前記第3ラッチ回路に記憶し、
    前記第3読み出しの際、前記第1メモリセルから読み出された第5データを前記第4ラッチ回路に記憶し、
    前記第5データと、前記第4データとの論理和演算を行い、前記第2データを生成し、前記第2ラッチ回路に記憶し、
    前記第5データの反転データと、前記第3データとの論理積演算を行い、前記論理積演算の結果と、前記第4データとの論理和演算を行い、前記第1データを生成し、前記第3ラッチ回路に記憶する請求項5に記載の記憶装置。
  14. 前記記憶部は、前記第2データの読み出し要求を受信すると、
    前記第2ラッチ回路に記憶された前記第2データを、前記制御部に出力する請求項13に記載の記憶装置。
  15. 前記記憶部は、
    第1ラッチ回路と、
    第2ラッチ回路と、
    第3ラッチ回路と、
    第4ラッチ回路と、
    を更に備え、
    前記シーケンサは、
    前記第2メモリセルのゲートに第1電圧を印加する前記第1読み出しの際、前記第2メモリセルから読み出された第3データを前記第1ラッチ回路に記憶し、
    前記第1メモリセルのゲートに前記第1電圧を印加する前記第2読み出しの際、前記第1メモリセルから読み出された第4データを前記第2ラッチ回路に記憶し、
    前記第2ラッチ回路に記憶された前記第4データを反転させた第5データを前記第3ラッチ回路に記憶し、
    前記第1メモリセルのゲートに前記第1電圧を印加する前記第3読み出しの際、前記第1メモリセルから読み出された第6データを前記第2ラッチ回路に記憶し、
    前記第6データを反転させたデータと、前記第3データとの論理積演算を行い、前記論理積演算の結果と、前記第5データとの論理和演算を行い、前記論理和演算の結果である第7データを前記第4ラッチ回路に記憶し、
    前記第5データと、前記第6データとの論理和演算を行い、前記論理和演算の結果である第8データを前記第3ラッチ回路に記憶し、
    前記第2メモリセルのゲートに前記第1電圧と異なる第2電圧を印加する前記第1読み出しの際、前記第2メモリセルから読み出された第9データを前記第1ラッチ回路に記憶し、
    前記第1メモリセルのゲートに前記第2電圧を印加する前記第2読み出しの際、前記第1メモリセルから読み出された第10データを前記第2ラッチ回路に記憶し、
    前記第10データを反転させたデータと、前記第8データとの論理積演算を行い、前記論理積演算の結果である第11データを前記第3ラッチ回路に記憶し、
    前記第10データと、前記第9データを反転させたデータとの論理積演算を行い、前記論理積演算の結果と、前記第7データとの論理和演算を行い、前記論理和演算の結果である第12データを前記第4ラッチ回路に記憶し、
    前記第1メモリセルのゲートに前記第2電圧を印加する前記第3読み出しの際、前記第1メモリセルから読み出された第13データを前記第2ラッチ回路に記憶し、
    前記第13データと、前記第11データとの論理和演算を行い、前記論理和演算の結果である前記第1データを前記第3ラッチ回路に記憶し、
    前記第13データと、前記第12データとの論理和演算を行い、前記論理和演算の結果である前記第2データを前記第4ラッチ回路に記憶する請求項5に記載の記憶装置。
  16. 前記記憶部は、前記第2データの読み出し要求を受信すると、
    前記第3ラッチ回路に記憶された前記第2データを、前記制御部に出力する請求項15に記載の記憶装置。
JP2018540564A 2016-09-23 2016-09-23 記憶装置 Active JP6679739B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/078045 WO2018055733A1 (ja) 2016-09-23 2016-09-23 記憶装置

Publications (2)

Publication Number Publication Date
JPWO2018055733A1 JPWO2018055733A1 (ja) 2019-04-25
JP6679739B2 true JP6679739B2 (ja) 2020-04-15

Family

ID=61690306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018540564A Active JP6679739B2 (ja) 2016-09-23 2016-09-23 記憶装置

Country Status (5)

Country Link
US (2) US10839917B2 (ja)
JP (1) JP6679739B2 (ja)
CN (1) CN109791792B (ja)
TW (1) TWI648618B (ja)
WO (1) WO2018055733A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9430735B1 (en) * 2012-02-23 2016-08-30 Micron Technology, Inc. Neural network in a memory device
WO2018055733A1 (ja) * 2016-09-23 2018-03-29 東芝メモリ株式会社 記憶装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4177847B2 (ja) 2006-01-06 2008-11-05 株式会社東芝 不揮発性半導体記憶装置
US7894269B2 (en) 2006-07-20 2011-02-22 Sandisk Corporation Nonvolatile memory and method for compensating during programming for perturbing charges of neighboring cells
JP5142692B2 (ja) 2007-12-11 2013-02-13 株式会社東芝 不揮発性半導体記憶装置
JP2009238874A (ja) 2008-03-26 2009-10-15 Toshiba Corp 半導体メモリ及びその製造方法
JP2009266944A (ja) 2008-04-23 2009-11-12 Toshiba Corp 三次元積層不揮発性半導体メモリ
JP5283960B2 (ja) 2008-04-23 2013-09-04 株式会社東芝 三次元積層不揮発性半導体メモリ
JP2010192049A (ja) * 2009-02-19 2010-09-02 Toshiba Corp 半導体記憶装置
JP2010199235A (ja) 2009-02-24 2010-09-09 Toshiba Corp 不揮発性半導体記憶装置
JP2011197957A (ja) 2010-03-18 2011-10-06 Toshiba Corp 誤り訂正符号復号装置及び誤り訂正符号復号方法
JP2011258289A (ja) 2010-06-10 2011-12-22 Toshiba Corp メモリセルの閾値検出方法
JP2012069205A (ja) 2010-09-22 2012-04-05 Toshiba Corp 不揮発性半導体記憶装置
US8782495B2 (en) * 2010-12-23 2014-07-15 Sandisk Il Ltd Non-volatile memory and methods with asymmetric soft read points around hard read points
JP2012212483A (ja) * 2011-03-30 2012-11-01 Toshiba Corp 半導体記憶装置
JP2012252740A (ja) 2011-06-02 2012-12-20 Toshiba Corp 不揮発性半導体記憶装置
KR20130034522A (ko) 2011-09-28 2013-04-05 삼성전자주식회사 비휘발성 메모리 장치의 데이터 리드 방법, 및 이를 수행하는 장치
JP2013225364A (ja) * 2012-04-23 2013-10-31 Toshiba Corp 半導体記憶装置及びその演算方法
JP2014179142A (ja) * 2013-03-14 2014-09-25 Toshiba Corp 半導体記憶装置
JPWO2015037159A1 (ja) * 2013-09-13 2017-03-02 株式会社東芝 半導体記憶装置及びメモリシステム
JP6199838B2 (ja) * 2014-09-12 2017-09-20 東芝メモリ株式会社 半導体記憶装置
JP2016162466A (ja) * 2015-02-26 2016-09-05 株式会社東芝 半導体記憶装置及びメモリシステム
KR102370719B1 (ko) * 2015-03-04 2022-03-08 에스케이하이닉스 주식회사 반도체 장치
JP2017054562A (ja) * 2015-09-08 2017-03-16 株式会社東芝 半導体記憶装置
WO2018055733A1 (ja) * 2016-09-23 2018-03-29 東芝メモリ株式会社 記憶装置
JP2019169211A (ja) * 2018-03-22 2019-10-03 東芝メモリ株式会社 メモリシステム

Also Published As

Publication number Publication date
US20210074369A1 (en) 2021-03-11
US20190214096A1 (en) 2019-07-11
US11430525B2 (en) 2022-08-30
US10839917B2 (en) 2020-11-17
JPWO2018055733A1 (ja) 2019-04-25
CN109791792B (zh) 2023-08-22
TW201823987A (zh) 2018-07-01
TWI648618B (zh) 2019-01-21
CN109791792A (zh) 2019-05-21
WO2018055733A1 (ja) 2018-03-29

Similar Documents

Publication Publication Date Title
JP6783682B2 (ja) 半導体記憶装置及びメモリシステム
TWI552317B (zh) Semiconductor memory device
TWI717568B (zh) 半導體記憶裝置及記憶體系統
US20230282276A1 (en) Semiconductor memory device and memory system
JP6581019B2 (ja) 半導体記憶装置
JP6659478B2 (ja) 半導体記憶装置
TWI698869B (zh) 半導體記憶裝置
CN109599140B (zh) 用于存储设备的状态相关的感测电路和预充电操作
JP6545631B2 (ja) 不揮発性半導体記憶装置
US9990998B2 (en) Semiconductor memory device and memory system
US9361998B2 (en) Semiconductor memory device and data writing method of the same
JP6652470B2 (ja) 半導体記憶装置
US11430525B2 (en) Memory device
US9164893B2 (en) Nonvolatile semiconductor memory device
JP2013246849A (ja) メモリシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200318

R150 Certificate of patent or registration of utility model

Ref document number: 6679739

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150