JP2018045741A - 半導体記憶装置及びメモリシステム - Google Patents
半導体記憶装置及びメモリシステム Download PDFInfo
- Publication number
- JP2018045741A JP2018045741A JP2016177985A JP2016177985A JP2018045741A JP 2018045741 A JP2018045741 A JP 2018045741A JP 2016177985 A JP2016177985 A JP 2016177985A JP 2016177985 A JP2016177985 A JP 2016177985A JP 2018045741 A JP2018045741 A JP 2018045741A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory device
- semiconductor memory
- latch circuit
- sense amplifier
- 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
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/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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
- 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/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
- 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/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1048—Data bus control circuits, e.g. precharging, presetting, equalising
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1087—Data input latches
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1096—Write circuits, e.g. I/O line write drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/12—Reading and writing aspects of erasable programmable read-only memories
- G11C2216/20—Suspension of programming or erasing cells in an array in order to read other cells in it
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Read Only Memory (AREA)
Abstract
【課題】書込み動作再開に必要なデータが保持されたラッチ回路を使用して読出し動作を実行した後に、書込み動作を再開する。【解決手段】一実施形態の半導体記憶装置は、データを保持可能な第1ラッチ回路を含む第1センスアンプユニットと、制御部とを備える。上記制御部は、書込み動作の中断後かつ読出し動作を指示する第1コマンドの受信前に、上記第1ラッチ回路に保持され、上記中断した書込み動作によるベリファイ結果を含む第1データを上記第1センスアンプユニットの外部に転送させる第1動作、及び上記読出し動作の終了後かつ上記中断した書込み動作再開を指示する第2コマンドの受信前に、上記第1センスアンプユニットの外部に転送された第1データを上記第1ラッチ回路に転送させる第2動作を実行させる。【選択図】図9
Description
実施形態は、半導体記憶装置及びメモリシステムに関する。
半導体記憶装置としてのNAND型フラッシュメモリと、当該NAND型フラッシュメモリを制御するコントローラと、を備えるメモリシステムが知られている。
書込み動作再開に必要なデータが保持されたラッチ回路を使用して読出し動作を実行した後に、書込み動作を再開する。
実施形態の半導体記憶装置は、データを保持可能な第1ラッチ回路を含む第1センスアンプユニットと、制御部とを備える。上記制御部は、書込み動作の中断後かつ読出し動作を指示する第1コマンドの受信前に、上記第1ラッチ回路に保持され、上記中断した書込み動作によるベリファイ結果を含む第1データを上記第1センスアンプユニットの外部に転送させる第1動作、及び上記読出し動作の終了後かつ上記中断した書込み動作再開を指示する第2コマンドの受信前に、上記第1センスアンプユニットの外部に転送された第1データを上記第1ラッチ回路に転送させる第2動作を実行させる。
以下、図面を参照して実施形態について説明する。なお、以下の説明において、同一の機能及び構成を有する構成要素については、共通する参照符号を付す。また、共通する参照符号を有する複数の構成要素を区別する場合、当該共通する参照符号に添え字を付して区別する。なお、複数の構成要素について特に区別を要さない場合、当該複数の構成要素には、共通する参照符号のみが付され、添え字は付さない。
1.第1実施形態
第1実施形態に係る半導体記憶装置について説明する。
第1実施形態に係る半導体記憶装置について説明する。
1.1 構成について
まず、第1実施形態に係る半導体記憶装置の構成について説明する。
まず、第1実施形態に係る半導体記憶装置の構成について説明する。
1.1.1 メモリシステムの全体構成について
第1実施形態に係るメモリシステムの構成例について、図1を用いて説明する。図1は、第1実施形態に係るメモリシステムの構成の一例を示すブロック図である。メモリシステム1は、例えば、外部の図示しないホスト機器と通信する。メモリシステム1は、ホスト機器(図示せず)からのデータを保持し、また、データをホスト機器に読み出す。
第1実施形態に係るメモリシステムの構成例について、図1を用いて説明する。図1は、第1実施形態に係るメモリシステムの構成の一例を示すブロック図である。メモリシステム1は、例えば、外部の図示しないホスト機器と通信する。メモリシステム1は、ホスト機器(図示せず)からのデータを保持し、また、データをホスト機器に読み出す。
図1に示すように、メモリシステム1は、コントローラ10及び半導体記憶装置(NAND型フラッシュメモリ)20を備えている。コントローラ10は、ホスト機器から命令を受取り、受け取られた命令に基づいて半導体記憶装置20を制御する。具体的には、コントローラ10は、ホスト機器から書込みを指示されたデータを半導体記憶装置20に書込み、ホスト機器から読出しを指示されたデータを半導体記憶装置20から読み出してホスト機器に送信する。コントローラ10は、NANDバスによって半導体記憶装置20に接続される。半導体記憶装置20は、複数のメモリセルを備え、データを不揮発に記憶する。
NANDバスは、NANDインタフェースに従った信号/CE、CLE、ALE、/WE、/RE、/WP、/RB、及びI/Oの送受信を行う。信号/CEは、半導体記憶装置20をイネーブルにするための信号である。信号CLE及びALEは、信号CLE及びALEと並行して半導体記憶装置20に流れる信号I/OがそれぞれコマンドCMD及びアドレスADDであることを半導体記憶装置20に通知する。また、信号CLE及びALEは、例えば、いずれも“L(Low)”レベルの場合、信号CLE及びALEと並行して半導体記憶装置20に流れる信号I/OがデータDATであることを半導体記憶装置20に通知する。信号/WEは、信号/WEと並行して半導体記憶装置20に流れる信号I/Oを半導体記憶装置20に取り込むことを指示する。信号/REは、半導体記憶装置20に信号I/Oを出力することを指示する。信号/WPは、データ書込み及び消去の禁止を半導体記憶装置20に指示する。信号/RBは、半導体記憶装置20がレディ状態(外部からの命令を受け付ける状態)であるか、ビジー状態(外部からの命令を受け付けない状態)であるかを示す。信号I/Oは、例えば8ビットの信号である。信号I/Oは、半導体記憶装置20とコントローラ10との間で送受信されるデータの実体であり、コマンドCMD、アドレスADD、データDAT、並びにステータスSTSを含む。データDATは、書込みデータ及び読出しデータを含む。
1.1.2 コントローラの構成について
引き続き図1を用いて、第1実施形態に係るメモリシステムのコントローラについて説明する。コントローラ10は、プロセッサ(CPU:Central Processing Unit)11、内蔵メモリ(RAM:Random Access Memory)12、NANDインタフェース回路13、バッファメモリ14、及びホストインタフェース回路15を備えている。
引き続き図1を用いて、第1実施形態に係るメモリシステムのコントローラについて説明する。コントローラ10は、プロセッサ(CPU:Central Processing Unit)11、内蔵メモリ(RAM:Random Access Memory)12、NANDインタフェース回路13、バッファメモリ14、及びホストインタフェース回路15を備えている。
プロセッサ11は、コントローラ10全体の動作を制御する。プロセッサ11は、例えば、ホスト機器から受信したデータの書込み命令に応答して、NANDインタフェースに基づく書込み命令を半導体記憶装置20に対して発行する。この動作は、読出し及び消去の場合についても同様である。
内蔵メモリ12は、例えば、DRAM(Dynamic RAM)等の半導体メモリであり、プロセッサ11の作業領域として使用される。内蔵メモリ12は、半導体記憶装置20を管理するためのファームウェア、及び各種の管理テーブル等を保持する。
NANDインタフェース回路13は、NANDバスを介して半導体記憶装置20と接続され、半導体記憶装置20との通信を司る。NANDインタフェース回路13は、プロセッサ11の指示により、コマンドCMD、アドレスADD、及び書込みデータを半導体記憶装置20に送信する。また、NANDインタフェース回路13は、半導体記憶装置20からステータスSTS、及び読出しデータを受信する。
バッファメモリ14は、コントローラ10が半導体記憶装置20及びホスト機器から受信したデータ等を一時的に保持する。バッファメモリ14は、例えば、半導体記憶装置20へ一旦転送された書込みデータを、半導体記憶装置20から退避させる記憶領域としても使用される。
ホストインタフェース回路15は、ホスト機器と接続され、ホスト機器との通信を司る。ホストインタフェース回路15は、例えば、ホスト機器から受信した命令及びデータを、それぞれプロセッサ11及びバッファメモリ14に転送する。
1.1.3 半導体記憶装置の構成について
次に、第1実施形態に係る半導体記憶装置の構成例について、図2を用いて説明する。図2は、第1実施形態に係る半導体記憶装置の構成の一例を示すブロック図である。
次に、第1実施形態に係る半導体記憶装置の構成例について、図2を用いて説明する。図2は、第1実施形態に係る半導体記憶装置の構成の一例を示すブロック図である。
半導体記憶装置20は、メモリセルアレイ21、入出力回路22、ロジック制御回路23、レジスタ24、シーケンサ25、電圧生成回路26、ロウデコーダ27、及びセンスアンプモジュール28を備えている。また、半導体記憶装置20は、プレーンを含む。プレーンは、メモリセルアレイ21、ロウデコーダ27、及びセンスアンプモジュール28を含む。図2の例では、半導体記憶装置20は、1つのプレーンを含むシングルプレーン形式が示されるが、これに限らず、2つのプレーンを含むマルチプレーン形式、又は3つ以上のプレーンを含んでもよい。2つ以上のプレーンを含む場合、半導体記憶装置20は、当該プレーンの数に応じた数のメモリセルアレイ21、ロウデコーダ27、及びセンスアンプモジュール28の組を含む。
メモリセルアレイ21は、複数のブロックBLK(BLK0、BLK1、…)を備えている。ブロックBLKは、ワード線及びビット線に関連付けられた複数の不揮発性メモリセルトランジスタ(図示せず)を含む。ブロックBLKは、例えばデータの消去単位となり、同一のブロックBLK内のデータは、一括して消去される。各ブロックBLKは、複数のストリングユニットSU(SU0、SU1、SU2、…)を備えている。各ストリングユニットSUは、NANDストリングNSの集合である。NANDストリングNSは、複数のメモリセルトランジスタを含む。なお、メモリセルアレイ21内のブロック数、1ブロックBLK内のストリングユニット数、及び1ストリングユニットSU内のNANDストリング数は、任意の数に設定出来る。
入出力回路22は、コントローラ10と信号I/O(I/O1〜I/O8)を送受信する。入出力回路22は、信号I/O内のコマンドCMD及びアドレスADDをレジスタ24に転送する。入出力回路22は、書き込みデータ及び読み出しデータをセンスアンプモジュール28と送受信する。入出力回路22は、ステータスSTSをレジスタ24から受信する。
ロジック制御回路23は、コントローラ10から信号/CE、CLE、ALE、/WE、/RE、及び/WPを受信する。また、ロジック制御回路23は、信号/RBをコントローラ10に転送して半導体記憶装置20の状態を外部に通知する。
レジスタ24は、コマンドCMD及びアドレスADDを保持する。レジスタ24は、アドレスADDをロウデコーダ27及びセンスアンプモジュール28に転送すると共に、コマンドCMDをシーケンサ25に転送する。また、レジスタ24は、メモリセルアレイ21への書込み動作の際に、ベリファイをパスしたレベルについての情報を保持してもよい。
シーケンサ25は、コマンドCMDを受け取り、受け取ったコマンドCMDに基づくシーケンスに従って半導体記憶装置20の全体を制御する。
電圧生成回路26は、シーケンサ25からの指示に基づき、データの書込み、読出し、及び消去等の動作に必要な電圧を生成する。電圧生成回路26は、生成した電圧をロウデコーダ27及びセンスアンプモジュール28に供給する。
ロウデコーダ27は、レジスタ24からアドレスADD中のロウアドレスを受取り、当該ロウアドレスに基づいてブロックBLKを選択する。そして、選択されたブロックBLKには、ロウデコーダ27を介して電圧生成回路26からの電圧が転送される。
センスアンプモジュール28は、データの読出し時には、メモリセルトランジスタからビット線に読み出された読出しデータをセンスし、センスした読出しデータを入出力回路22に転送する。センスアンプモジュール28は、データの書込み時には、ビット線を介して書込まれる書込みデータをメモリセルトランジスタに転送する。また、センスアンプモジュール28は、レジスタ24からアドレスADD中のカラムアドレスを受取り、当該カラムアドレスに基づくカラムのデータを出力する。センスアンプモジュール28の詳細については、後述する。
1.1.4 メモリセルアレイの構成について
次に、第1実施形態に係る半導体記憶装置のメモリセルアレイの構成について、図3を用いて説明する。図3は、第1実施形態に係る半導体記憶装置のメモリセルアレイの構成を説明するための回路図の一例である。
次に、第1実施形態に係る半導体記憶装置のメモリセルアレイの構成について、図3を用いて説明する。図3は、第1実施形態に係る半導体記憶装置のメモリセルアレイの構成を説明するための回路図の一例である。
図3に示すように、NANDストリングNSの各々は、例えば8個のメモリセルトランジスタMT(MT0〜MT7)と、選択トランジスタST1と、選択トランジスタST2とを備える。なお、メモリセルトランジスタMTの個数は8個に限られず、16個や32個、64個、128個等であってもよく、その数は限定されるものではない。メモリセルトランジスタMTは、制御ゲートと電荷蓄積層とを含む積層ゲートを備える。各メモリセルトランジスタMTは、選択トランジスタST1及びST2の間に、直列接続される。なお、以下の説明では『接続』とは、間に別の導電可能な要素が介在する場合も含む。
或るブロックBLK内において、ストリングユニットSU0〜SU3の選択トランジスタST1のゲートは、それぞれ選択ゲート線SGD0〜SGD3に接続される。また、ブロックBLK内の全てのストリングユニットSUの選択トランジスタST2のゲートは、選択ゲート線SGSに共通接続される。同一のブロックBLK内のメモリセルトランジスタMT0〜MT7の制御ゲートは、それぞれワード線WL0〜WL7に接続される。すなわち、同じアドレスのワード線WLは、同一のブロックBLK内の全てのストリングユニットSUに共通接続されており、選択ゲート線SGSは、同一のブロックBLK内の全てのストリングユニットSUに共通接続されている。一方、選択ゲート線SGDは、同一のブロックBLK内のストリングユニットSUの1つのみに接続される。
また、メモリセルアレイ21内でマトリクス状に配置されたNANDストリングNSのうち、同一行にあるNANDストリングNSの選択トランジスタST1の他端は、m本のビット線BL(BL0〜BL(m−1)(mは自然数))のいずれかに接続される。また、ビット線BLは、複数のブロックBLKにわたって、同一列のNANDストリングNSに共通接続される。
また、選択トランジスタST2の他端は、ソース線CELSRCに接続される。ソース線CELSRCは、複数のブロックBLKにわたって、複数のNANDストリングNSに共通接続される。
前述のとおり、データの消去は、例えば、同一のブロックBLK内にあるメモリセルトランジスタMTに対して一括して行われる。これに対して、データの読出し及び書込みは、いずれかのブロックBLKのいずれかのストリングユニットSUにおける、いずれかのワード線WLに共通接続された複数のメモリセルトランジスタMTにつき、一括して行われ得る。このように一括して書込まれる単位を「ページ」と言う。1ページのデータサイズは、例えば、16KB(KByte)である。なお、データの読出し及び書込みは、1/2ページ(8KB)又は1/4ページ(4KB)でも実行可能である。このような1ページに満たないデータ領域を書込み動作及び読み出す動作は、それぞれPPP(Partial Page Program)及びPPR(Partial Page Read)とも言う。
次に、メモリセルアレイ21の断面構造について図4を用いて説明する。図4は、第1実施形態に係る半導体記憶装置のメモリセルアレイの一部の断面構造の一例を示している。特に、図4は、1つのブロックBLK内の2つのストリングユニットSUに関する部分を示している。具体的には、図4は、2つのストリングユニットSUのそれぞれの2つのNANDストリングNSと、その周辺の部分と、を示している。そして、図4に示される構成が、X方向に複数配列されており、例えばX方向に並ぶ複数のNANDストリングNSの集合が1つのストリングユニットSUに相当する。
半導体記憶装置20は、半導体基板30上に設けられている。以下の説明では、半導体基板30の表面と平行な面をXY平面とし、XY平面に垂直な方向をZ方向とする。また、X方向とY方向は、互いに直交するものとする。
半導体基板30の上部には、p型ウェル領域30pが設けられる。p型ウェル領域30p上に、複数のNANDストリングNSが設けられる。すなわち、p型ウェル領域30p上には、例えば、選択ゲート線SGSとして機能する配線層31、ワード線WL0〜WL7として機能する8層の配線層32(WL0〜WL7)、及び選択ゲート線SGDとして機能する配線層33が、順次積層される。配線層31及び33は、複数層積層されていてもよい。積層された配線層31〜33間には、図示せぬ絶縁膜が設けられる。
配線層31は、例えば、1つのブロックBLK内の複数のNANDストリングNSの各々の選択トランジスタST2のゲートに共通接続される。配線層32は、各層毎に、1つのブロックBLK内の複数のNANDストリングNSの各々のメモリセルトランジスタMTの制御ゲートに共通接続される。配線層33は、1つのストリングユニットSU内の複数のNANDストリングNSの各々の選択トランジスタST1のゲートに共通接続される。
メモリホールMHは、配線層33、32、31を通過してp型ウェル領域30pに達するように設けられる。メモリホールMHの側面上には、ブロック絶縁膜34、電荷蓄積層(絶縁膜)35、及びトンネル酸化膜36が順に設けられる。メモリホールMH内には、半導体ピラー(導電膜)37が埋め込まれる。半導体ピラー37は、例えばノンドープのポリシリコンであり、NANDストリングNSの電流経路として機能する。半導体ピラー37の上端上には、ビット線BLとして機能する配線層38が設けられる。
以上のように、p型ウェル領域30pの上方には、選択トランジスタST2、複数のメモリセルトランジスタMT、及び選択トランジスタST1が順に積層されており、1つのメモリホールMHが、1つのNANDストリングNSに対応している。
p型ウェル領域30pの上部には、n+型不純物拡散領域39及びp+型不純物拡散領域40が設けられる。n+型不純物拡散領域39の上面上には、コンタクトプラグ41が設けられる。コンタクトプラグ41の上面上には、ソース線CELSRCとして機能する配線層42が設けられる。p+型不純物拡散領域40の上面上にはコンタクトプラグ43が設けられる。コンタクトプラグ43の上面上には、ウェル線CPWELLとして機能する配線層44が設けられる。
なお、メモリセルアレイ21の構成については、その他の構成であってもよい。メモリセルアレイ21の構成については、例えば“三次元積層不揮発性半導体メモリ”という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.5 メモリセルトランジスタの閾値分布について
次に、メモリセルトランジスタMTの取り得る閾値電圧の分布について、図5を用いて説明する。図5は、第1実施形態に係る半導体記憶装置のメモリセルトランジスタの閾値電圧の分布の一例を示すダイアグラムである。
次に、メモリセルトランジスタMTの取り得る閾値電圧の分布について、図5を用いて説明する。図5は、第1実施形態に係る半導体記憶装置のメモリセルトランジスタの閾値電圧の分布の一例を示すダイアグラムである。
図5に示すように、メモリセルトランジスタMTの閾値電圧は、上位(Upper)ビット(上位データ)、中位(Middle)ビット(中位データ)、及び下位(Lower)ビット(下位データ)による3ビットデータ、すなわち“111”、“110”、“100”、“000”、“010”、“011”、“001”、及び“101”データを保持可能である。なお、図5では、メモリセルトランジスタMTに保持されるデータが3ビットデータの場合について説明しているが、これに限らず、メモリセルトランジスタMTは、2ビットデータ、又は4ビット以上のデータ等、任意の数のビットデータを保持可能である。
“111”データの閾値電圧は、“Er”レベルであり、例えば、データの消去状態に相当する。そして、“Er”レベルに含まれる閾値電圧は、電圧ARより小さく、正又は負の値を有する。
“110”、“100”、“000”、“010”、“011”、“001”、及び“101”データの閾値電圧は、それぞれ“A”、“B”、“C”、“D”、“E”、“F”、及び“G”レベルである。“A”レベル〜“G”レベルは、電荷蓄積層45に電荷が注入されてメモリセルトランジスタMTにデータが書込まれた状態に相当し、各分布に含まれる閾値電圧は、例えば正の値を有する。“A”レベルに含まれる閾値電圧は、読出し電圧ARより大きいベリファイ電圧VAより大きく、かつ読出し電圧BRより小さい。“B”レベルに含まれる閾値電圧は、読出し電圧BRより大きいベリファイ電圧VBより大きく、かつ読出し電圧CRより小さい。“C”レベルに含まれる閾値電圧は、読出し電圧CRより大きいベリファイ電圧VCより大きく、かつ読出し電圧DRより小さい。“D”レベルに含まれる閾値電圧は、読出し電圧DRより大きいベリファイ電圧VDより大きく、かつ読出し電圧ERより小さい。“E”レベルに含まれる閾値電圧は、読出し電圧ERより大きいベリファイ電圧VEより大きく、かつ読出し電圧FRより小さい。“F”レベルに含まれる閾値電圧は、読出し電圧FRより大きいベリファイ電圧VFより大きく、かつ読出し電圧GRより小さい。そして、“G”レベルに含まれる閾値電圧は、読出し電圧GRより大きいベリファイ電圧VGより大きく、電圧VREADより小さい。電圧VREADは、或るブロックBLK内へのデータの読出しの際に、読出しの対象ではないワード線WLに印加される電圧である。
以上のように、各メモリセルトランジスタMTは、8個の閾値電圧の分布のいずれかを有することで、8種類の状態を取ることができる。なお、各データと閾値レベルとの関係は上記に限定されるものではなく、適宜変更可能である。
また、上述の通り、データの書込み及び読出しは、ページサイズで行われる。この際、データは下位ビット毎、中位ビット毎、又は上位ビット毎に書込まれ、読み出される。したがって、メモリセルトランジスタMTが3ビットデータを保持している場合には、1つのページに、上位ビット、中位ビット、及び下位ビットの各々に対応するデータが割当てられる。以下の説明では、上位ビット、中位ビット、及び下位ビットについて一括して書込み又は読み出されるページは、それぞれ、上位ページ、中位ページ、及び下位ページと言う。
1.1.6 センスアンプモジュールの構成について
次に、第1実施形態に係る半導体記憶装置のセンスアンプモジュールの構成について説明する。図6は、第1実施形態に係る半導体記憶装置のセンスアンプモジュールの構成の一例を説明するための平面図である。図6に示すように、センスアンプモジュール28は、複数のセンスアンプユニット群SAU<15:0>と、複数のラッチ回路群XDL<15:0>とを含む。
次に、第1実施形態に係る半導体記憶装置のセンスアンプモジュールの構成について説明する。図6は、第1実施形態に係る半導体記憶装置のセンスアンプモジュールの構成の一例を説明するための平面図である。図6に示すように、センスアンプモジュール28は、複数のセンスアンプユニット群SAU<15:0>と、複数のラッチ回路群XDL<15:0>とを含む。
複数のセンスアンプユニット群SAU<15:0>は、X方向に沿って並ぶ。図6の例では、各センスアンプユニット群SAU<15:0>は、Y方向に沿って並ぶ16個のセンスアンプユニットSAU(SAU<0>、SAU<1>、…、SAU<15>)を含む。
センスアンプユニットSAUは、例えば、ビット線BL毎に設けられる。センスアンプユニットSAUは、対応するビット線BLに読み出されたデータをセンスし、対応するビット線BLに書込みデータを転送する。また、センスアンプユニットSAUは、バスLBUSに接続されている。センスアンプユニット群SAU<15:0>内の互いに隣り合う2つのセンスアンプユニットSAU(SAU<0>及びSAU<1>、SAU<2>及びSAU<3>、…)は、各々が接続されたバスLBUSを介して互いに接続されている。また、センスアンプユニット群SAU<15:0>内の各センスアンプユニットSAUは、各々が接続されたバスLBUSを介して、1つのバスDBUSに共通に接続されている。
ラッチ回路群XDL<15:0>は、X方向に沿って並ぶ。ラッチ回路群XDL<15:0>は、16個のラッチ回路XDL(XDL<0>、XDL<1>、…、XDL<15>)を含む。ラッチ回路群XDL<15:0>は、センスアンプユニット群SAU<15:0>毎に設けられる。そして、16個のセンスアンプユニットSAU<0>〜SAU<15>にそれぞれ対応する16個のラッチ回路XDL<0>〜XDL<15>が、1つのバスDBUSに共通に接続されている。各ラッチ回路XDLは、対応するセンスアンプユニットSAUに接続されたビット線BLに関連するデータを一時的に保持する。また、各ラッチ回路XDLは、信号I/Oを転送する配線IOに接続される。ラッチ回路XDLは、当該配線IO、及びバスDBUS並びにLBUSを介してセンスアンプユニットSAUと外部との間のデータの送受信に使用される。具体的には、コントローラ10から受信したデータは、配線IOを介してラッチ回路XDLに保持された後、バスDBUS及びLBUSを介してセンスアンプユニットSAUに転送される。また、センスアンプユニットSAUから転送されたデータは、バスLBUS及びDBUSを介してラッチ回路XDLに保持された後、配線IOを介してコントローラ10に読み出される。
なお、1ページ(16KB)にわたる読出し動作の場合、複数のセンスアンプユニット群SAU<15:0>及び複数のラッチ回路群XDL<15:0>は、その全てが駆動の対象となる。また、1/2ページ(8KB)及び1/4(4KB)にわたる読出し動作の場合、複数のセンスアンプユニット群SAU<15:0>及び複数のラッチ回路群XDL<15:0>はそれぞれ、このうち半分及び1/4が駆動の対象となる。
具体的には、例えば、1/2ページの読出し動作の場合、Y方向に沿って偶数番目に並ぶセンスアンプユニットSAU<e>(SAU<0>、SAU<2>、…、SAU<14>)、又は奇数番目に並ぶセンスアンプユニットSAU<o>(SAU<1>、SAU<3>、…、SAU<15>)のいずれか一方が駆動の対象となる。ラッチ回路XDLについても同様である。
また、例えば、1/4ページの読出し動作の場合、センスアンプユニットSAU<e>のうちの半数(センスアンプユニットSAU<e1>若しくはSAU<e2>)、又はセンスアンプユニットSAU<o>のうちの半数(センスアンプユニットSAU<o1>若しくはSAU<o2>)の4種類の中のいずれか1種類が駆動の対象となる。センスアンプユニットSAU<e1>は、例えば、SAU<0>、SAU<4>、SAU<8>、及びSAU<12>を含む。センスアンプユニットSAU<e2>は、例えば、SAU<2>、SAU<6>、SAU<10>、及びSAU<14>を含む。センスアンプユニットSAU<o1>は、例えば、SAU<1>、SAU<5>、SAU<9>、及びSAU<13>を含む。センスアンプユニットSAU<o2>は、例えば、SAU<3>、SAU<7>、SAU<11>、及びSAU<15>を含む。ラッチ回路XDLについても同様である。また、特に区別するときは、センスアンプユニットSAU<e>及びSAU<o>、又はSAU<e1>、SAU<o1>、SAU<e2>、及びSAU<o2>内の構成要素についてもそれぞれ、<e>及び<o>、又は<e1>、<o1>、<e2>、及び<o2>を付して区別するものとする。
なお、上述の駆動対象の割当て方は一例であり、その他の任意の割当て方が適用可能である。以下の説明では、1ページ未満の読出しに際するセンスアンプユニットSAU及びラッチ回路XDLは、上述した割当て方に基づいて駆動するものとして説明をする。
続いて、第1実施形態に係る半導体記憶装置のラッチ回路群及びセンスアンプユニット群の間の接続について、図7を用いて説明する。図7は、第1実施形態に係る半導体記憶装置のラッチ回路群及びセンスアンプユニット群の間の接続の一例を説明するための回路図である。図7では、このうち、4つのラッチ回路XDL<e1>、XDL<o1>、XDL<e2>、並びにXDL<o2>、及び4つのセンスアンプユニットSAU<e1>、SAU<o1>、SAU<e2>、並びにSAU<o2>の間の接続関係を示している。他の4つのラッチ回路XDL、及び他の4つのセンスアンプユニットSAUも、図7と同様の接続関係を有する。
図7に示すように、バススイッチ群SWAは、ラッチ回路群XDL<15:0>(XDL<e1>、XDL<o1>、XDL<e2>、XDL<o2>、…)及びバスDBUSの間に設けられ、例えばトランジスタ50〜53を含む。トランジスタ50〜53はそれぞれ、ゲートに信号XSWe1、XSWo1、XSWe2、及びXSWo2が入力される。ラッチ回路XDL<e1>、XDL<o1>、XDL<e2>、及びXDL<o2>はそれぞれ、トランジスタ50〜53を介してバスDBUSに共通接続される。
バススイッチ群SWBは、バスDBUS及びセンスアンプユニット群SAU<15:0>(SAU<e1>、SAU<o1>、SAU<e2>、SAU<o2>、…)の間に設けられ、例えばバススイッチ群SWBa及びSWBbを含む。
バススイッチ群SWBaは、例えばトランジスタ54〜56を含む。トランジスタ54は、ゲートに信号DSWe1が入力され、一端がバスDBUSに接続され、他端がバスLBUS<e1>を介してセンスアンプユニットSAU<e1>に接続される。トランジスタ55は、ゲートに信号DSWo1が入力され、一端がバスDBUSに接続され、他端がバスLBUS<o1>を介してセンスアンプユニットSAU<o1>に接続される。トランジスタ56は、ゲートに信号LSWaが入力され、バスLBUS<e1>及びLBUS<o1>の間を接続する。
バススイッチ群SWBbは、例えばトランジスタ57〜59を含む。トランジスタ57は、ゲートに信号DSWe2が入力され、一端がバスDBUSに接続され、他端がバスLBUS<e2>を介してセンスアンプユニットSAU<e2>に接続される。トランジスタ58は、ゲートに信号DSWo2が入力され、一端がバスDBUSに接続され、他端がバスLBUS<o2>を介してセンスアンプユニットSAU<o2>に接続される。トランジスタ59は、ゲートに信号LSWbが入力され、バスLBUS<e2>及びLBUS<o2>の間を接続する。
このように接続することにより、ラッチ回路XDL<e1>、XDL<o1>、XDL<e2>、及びXDL<o2>の各々は、バスDBUSを介して、センスアンプユニットSAU<e1>、SAU<o1>、SAU<e2>、及びSAU<o2>のいずれの間でデータ転送が可能となる。また、センスアンプユニットSAU<e1>及びSAU<o1>は、バスDBUSを介することなく(バスLBUS<e1>及びLBUS<o1>を介して)、互いにデータ転送が可能となる。更に、センスアンプユニットSAU<e1>又はSAU<o1>は、バスDBUSを介してセンスアンプユニットSAU<e2>又は<o2>とも互いにデータ転送が可能となる。
1.1.7 センスアンプユニットの構成について
次に、第1実施形態に係る半導体記憶装置のセンスアンプユニットの構成について説明する。図8は、第1実施形態に係る半導体記憶装置のセンスアンプユニットの構成の一例を示す回路図である。
次に、第1実施形態に係る半導体記憶装置のセンスアンプユニットの構成について説明する。図8は、第1実施形態に係る半導体記憶装置のセンスアンプユニットの構成の一例を示す回路図である。
図8に示すように、センスアンプユニットSAUは、センスアンプ部SA、5個のラッチ回路SDL、ADL、BDL、CDL、及びDDL、並びにLBUSプリチャージャLPを含む。センスアンプユニットSAUは、バスLBUS及びビット線BLに接続される。
センスアンプ部SAは、高耐圧nチャネルMOSトランジスタ60、低耐圧nチャネルMOSトランジスタ61〜68、低耐圧pチャネルMOSトランジスタ69、及びキャパシタ素子70を備えている。以下の説明では、高耐圧nチャネルMOSトランジスタ、低耐圧nチャネルMOSトランジスタ、及び低耐圧pチャネルMOSトランジスタは、特に区別しない場合、単にトランジスタと言う。
トランジスタ60は、ゲートに信号BLSが入力され、一端が対応するビット線BLに接続され、他端がトランジスタ61の一端に接続される。
トランジスタ61は、ゲートに信号BLCが入力され、他端がノードSCOMに接続される。トランジスタ61は、対応するビット線BLを、信号BLCに応じた電位にクランプする。
トランジスタ62は、ゲートに信号BLXが入力され、一端がノードSCOMに接続され、他端がトランジスタ69の一端に接続される。
トランジスタ63は、ゲートに信号XXLが入力され、一端がノードSCOMに接続され、他端がノードSENに接続される。
トランジスタ64は、ゲートに信号BLQが入力され、一端がノードSENに接続され、他端がバスLBUSに接続される。
トランジスタ65は、ゲートがノードSENに接続され、一端にクロックCLKが入力され、他端にトランジスタ66の一端が接続される。トランジスタ66は、ゲートに信号STBが入力され、他端がバスLBUSに接続される。
トランジスタ67は、ゲートがバスLBUSに接続され、一端が接地され、他端にトランジスタ68の一端が接続される。トランジスタ68は、ゲートに信号LSLが入力され、他端がノードSENに接続される。
トランジスタ69は、ゲートがノードINV_Sに接続され、他端に電圧VHSAが印加される。
キャパシタ素子70は、一方の電極がノードSENに接続され、他方の電極にクロックCLKが入力される。
センスアンプ部SAは、ラッチ回路SDLの保持データに応じて、ビット線BLを制御する。ラッチ回路SDL、ADL、BDL、CDL、及びDDLは、書込みデータ及び読出しデータを一時的に保持する。データの読出し動作において、ラッチ回路SDL、ADL、BDL、CDL、及びDDLは、コントローラ10に読み出される読出しデータに限らず、データ読出しの際に生成されるデータを一時的に保持可能である。また、データの書込み動作において、その他のラッチ回路ADL、BDL、CDL、及びDDLは、例えば、個々のメモリセルトランジスタMTが2ビット以上のデータを保持する多値動作用に使用される。
ラッチ回路SDLは、低耐圧nチャネルMOSトランジスタ80〜83及び低耐圧pチャネルMOSトランジスタ84〜87を含む。
トランジスタ80は、ゲートに信号STLが入力され、一端がバスLBUSに接続され、他端がノードLAT_Sに接続される。
トランジスタ81は、ゲートに信号STIが入力され、一端がバスLBUSに接続され、他端がノードINV_Sに接続される。
トランジスタ82は、ゲートがノードINV_Sに接続され、一端が接地され、他端がノードLAT_Sに接続される。
トランジスタ83は、ゲートがノードLAT_Sに接続され、一端が接地され、他端がノードINV_Sに接続される。
トランジスタ84は、ゲートがノードINV_Sに接続され、一端がノードLAT_Sに接続され、他端がトランジスタ86の一端に接続される。
トランジスタ85は、ゲートがノードLAT_Sに接続され、一端がノードINV_Sに接続され、他端がトランジスタ87の一端に接続される。
トランジスタ86は、ゲートに信号SLLが入力され、他端に電圧VDDSAが印加される。
トランジスタ87は、ゲートに信号SLIが入力され、他端に電圧VDDSAが印加される。
ラッチ回路SDLでは、トランジスタ82及び84で第1インバータが構成され、トランジスタ83及び85で第2インバータが構成されている。そして、第1インバータの出力及び第2インバータの入力(ノードLAT_S)が、データ転送用のトランジスタ80を介してバスLBUSに接続される。また、第1インバータの入力および第2インバータの出力(ノードINV_S)が、データ転送用のトランジスタ81を介してバスLBUSに接続される。ラッチ回路SDLは、データをノードLAT_Sで保持し、その反転データをノードINV_Sで保持する。
ラッチ回路ADL、BDL、CDL、及びDDLは、例えば、ラッチ回路SDLと同様の構成を有しているため、その説明を省略する。各センスアンプユニットSAUにおいて、センスアンプ部SA、並びに5個のラッチ回路SDL、ADL、BDL、CDL、及びDDLは、互いにデータを送受信可能なようにバスLBUSによって接続される。
センスアンプユニットSAU内のラッチ回路間におけるデータ送受信の詳細については、例えば“不揮発性半導体記憶装置、メモリコントローラ、及びメモリシステム”という2013年3月25日に出願された日本国特許出願2013−06215号に記載されている。この特許出願は、その全体が本願明細書において参照により援用されている。
LBUSプリチャージャLPは、例えば、低耐圧nチャネルMOSトランジスタ71を含む。トランジスタ71は、ゲートに信号LPCが入力され、一端がバスLBUSに接続され、他端に電圧VHLBが印加される。LBUSプリチャージャLPは、バスLBUSに電圧VHLBを転送することで、バスLBUSをプリチャージする。
なお、上記構成のセンスアンプユニットSAUにおける各種信号は、例えば、シーケンサ25によって与えられる。
1.2 動作について
次に、第1実施形態に係る半導体記憶装置の動作について説明する。
次に、第1実施形態に係る半導体記憶装置の動作について説明する。
1.2.1 読出し動作の割込みを伴う書込み動作の概要について
第1実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要について説明する。図9は、第1実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要を示すコマンドシーケンスである。図9に示すように、当該コマンドシーケンスは、データ退避動作の開始からデータ復元動作終了までの書込み動作中断期間を含む。そして、当該書込み動作中断期間内において、読出し動作が割込んで実行される。
第1実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要について説明する。図9は、第1実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要を示すコマンドシーケンスである。図9に示すように、当該コマンドシーケンスは、データ退避動作の開始からデータ復元動作終了までの書込み動作中断期間を含む。そして、当該書込み動作中断期間内において、読出し動作が割込んで実行される。
コントローラ10は、書込みコマンド“80h”を発行し、半導体記憶装置20に送信する。コマンド“80h”は、半導体記憶装置20へのデータの書込みを命令するコマンドである。
コントローラ10は、例えば5サイクルにわたってアドレスADD1を発行し、半導体記憶装置20に送信する。このアドレスADD1は、例えば、書込み対象のブロックBLK内の或る領域のアドレスを指定するものである。続いてコントローラ10は、書込みデータDinを半導体記憶装置20に送信する。コントローラ10は、例えばコマンド“15h”を発行し、半導体記憶装置20に送信する。コマンド“15h”は、直前に送信されたアドレスADD1及び書込みデータDinに基づいて半導体記憶装置20にデータの書込みを実行させるためのコマンドである。また、コマンド“15h”は、書込み動作に使用されていないラッチ回路がある場合、次ページの書込みデータの一部を当該使用されていないラッチ回路に書込ませるためのコマンドである。このような書込み手法は、キャッシュプログラムとも言い、先行してラッチ回路に書込まれた次ページの書込みデータは、キャッシュデータとも言う。
コマンド“15h”がレジスタ24に格納されると、シーケンサ25は、電圧生成回路26、ロウデコーダ27、及びセンスアンプモジュール28等を制御して、書込み動作を開始する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。半導体記憶装置20がビジー状態である期間tPROGaは、書込み動作中断前に書込み動作が行われている期間を示している。
コントローラ10は、期間tPROGaの間に、中断コマンド“XXh”を発行し、半導体記憶装置20に送信する。コマンド“XXh”は、半導体記憶装置20において実行中であるデータ書込み動作の中断を命令するコマンドである。コマンド“XXh”がレジスタ24に格納されると、シーケンサ25は、データ書込み動作を中断させる。書込み動作が中断した後、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
続いて、コントローラ10は、半導体記憶装置20にデータ退避動作を実行させる。具体的には、シーケンサ25は、コントローラ10からの指示に応じて、後の読出し動作においてデータが読み出されるセンスアンプモジュール28内のラッチ回路SDL、ADL、BDL、CDL、DDL、及びXDLに保持されたデータの一部を退避させる。これにより、ラッチ回路SDL、ADL、BDL、CDL、DDL、及びXDLのうちの複数のラッチ回路が上書可能な状態になる。そして、これら上書可能な状態のラッチ回路を使用してデータ読出しを実行することが可能となる。なお、データ退避動作の詳細については後述する。
データ退避動作が終了した後、コントローラ10は、プリフィックスコマンド“BBh”及び読出しコマンド“00h”を発行し、半導体記憶装置20に送信する。コマンド“00h”は、半導体記憶装置20に通常の読出しデータの読出しを命令するコマンドである。半導体記憶装置20は、連続するコマンド“BBh”及びコマンド“00h”を受け取ると、特殊な読出し動作が指示されたことを認識する。コマンド“BBh”は、特殊な読出し動作の種類も指定する。
なお、特殊な読出し動作は、読出し動作の際に作業領域として複数のラッチ回路にデータを保持する必要がある読出し動作を含む。このような特殊な読出し動作の例としては、例えば、データを読み出すべきメモリセルトランジスタMTに隣接するメモリセルトランジスタMTのデータを事前に読出し、当該事前に読み出したデータに基づき対象のメモリセルトランジスタMTから読み出されるデータを補正するような読出し動作(第1読出し動作)が挙げられる。また、例えば、或るページ内のメモリセルトランジスタMTに対して複数通りの読出し電圧を用いてデータを読出し、正しいデータをより多く読み出せる最適な読出し電圧を探索する読出し動作(第2読出し動作)が挙げられる。
第1読出し動作及び第2読出し動作の詳細については、例えば“半導体記憶装置”という2016年3月17日に出願された米国特許出願14/645,740号に記載されている。この特許出願は、その全体が本願明細書において参照により援用されている。
コントローラ10は、例えば5サイクルにわたってアドレスADD2を発行し、半導体記憶装置20に送信する。このアドレスADD2は、読出し対象の或る領域のアドレスを指定するものであり、例えば、書込み動作の際に指定されたアドレスADD1とは異なる。コントローラ10は、コマンド“30h”を発行し、半導体記憶装置20に送信する。コマンド“30h”は、直前に送信されたアドレスADD2に基づいて半導体記憶装置20にデータの読出しを実行させるためのコマンドである。
コマンド“30h”がレジスタ24に格納されると、シーケンサ25は、電圧生成回路26、ロウデコーダ27、及びセンスアンプモジュール28等を制御して、読出し動作を開始する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。半導体記憶装置20がビジー状態である期間tRは、読出し動作が行われている期間を示している。期間tRにおいて、半導体記憶装置20から読み出されたデータ、及びデータの読出しに際して生成される中間データ(読出しオプションデータとも言う。)は、センスアンプモジュール28内の複数のラッチ回路SDL、ADL、BDL、CDL、DDL、及びXDLのいずれかに保持される。
読出し動作が完了した後、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。続いて、入出力回路22は、センスアンプモジュール28内に読み出された読出しデータDoutを、ラッチ回路XDLを介してコントローラ10に出力する。
続いて、コントローラ10は、退避したデータを元の場所に戻すデータ復元動作を、半導体記憶装置20に実行させる。具体的には、シーケンサ25は、コントローラ10からの指示に応じて、センスアンプモジュール28内のラッチ回路から退避させたデータの一部を、データ退避動作以前に保持されていたラッチ回路内に再度保持させる。これにより、データ読出し動作を実行する前の状態を復元することができ、中断していた書込み動作を再開させることが可能となる。なお、データ復元動作の詳細については後述する。
コントローラ10は、再開コマンド“YYh”を発行し、半導体記憶装置20に送信する。コマンド“YYh”は、中断している書込み動作の再開を命令するコマンドである。コマンド“YYh”がレジスタ24に格納されると、シーケンサ25は、書込み動作を再開させる。
このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。半導体記憶装置20がビジー状態である期間tPROGbは、再開した書込み動作が行われている期間を示している。
書込み動作が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
以上で、読出し動作の割込みを伴う書込み動作が終了する。
図10は、第1実施形態に係る半導体記憶装置の読出し動作の割込みを伴う書込み動作の動作を説明するためのタイミングチャートである。図10は、書込み動作中断期間の前後の書込み動作において選択ワード線WLに印加される電圧の大きさが示される。
図10に示すように、選択ワード線WLには、プログラム動作の際に書込み電圧VPGMが印加され、ベリファイ動作の際にベリファイ電圧VA〜VGが印加される。プログラム動作は、メモリセルトランジスタMTの閾値電圧を上昇させるための動作であり、ベリファイ動作は、プログラム動作によって上昇した閾値電圧が“Er”レベルから“G”レベルのうちのターゲットとするものに達したかを判定するための動作である。プログラム動作及びベリファイ動作の組は、複数回繰り返して実行される。当該プログラム動作及びベリファイ動作の繰り返し単位は、ループとも言う。或るレベル(例えば“A”レベル)へとプログラムされる全メモリセルトランジスタMTのうち、“A”レベル未満の閾値電圧を有するメモリセルトランジスタMTのビットの数、又はそのようなメモリセルトランジスタMTを含むバイトの数が或る基準値を下回ると、当該レベル(“A”レベル)のベリファイがパスしたと判断される。
書込み電圧VPGMは、電荷をメモリセルトランジスタMTの電荷蓄積層45に注入するための電圧であり、ベリファイ電圧VA〜VGより大きい。また、書込み電圧VPGMの値は、ループ数が増えるごとに階段状に上昇する。書込み電圧VPGMの値は、書込み動作中断期間を経ても、継続して階段状に上昇する。これにより、メモリセルトランジスタMTの閾値電圧は、書込み動作中断期間の有無に依らず徐々に上昇し、最終的にターゲットとするレベルの閾値電圧に達する。
また、ベリファイ電圧VA〜VGは、低いレベルのベリファイがパスするにつれて、より高いレベルのベリファイ電圧が印加される。図10の例では、1回目及び2回目のループのベリファイ動作では、ベリファイ電圧VAのみが印加されている。そして、書込み動作中断期間直前のループまでに、“A”レベルのベリファイがパスする。書込み動作中断期間直前のループのベリファイ動作では、“A”レベルのベリファイがパスしたことに伴い、ベリファイ電圧VB〜VDが印加されている。
そして、図10(A)に示すように、書込み動作中断期間直前のループのベリファイ動作でいまだ“B”レベルのベリファイがパスしていない場合、書込み動作中断期間直後のループのベリファイ動作でもベリファイ電圧VB〜VDが印加される。
また、図10(B)に示すように、書込み動作中断期間直前のループのベリファイ動作で“B”レベルのベリファイがパスした場合、書込み動作中断期間直後のループのベリファイ動作では、より高いベリファイ電圧としてベリファイ電圧VC〜VEが印加されてもよい。つまり、ベリファイ動作は、書込み動作中断期間の有無に依らず、直近のループのベリファイ結果に基づき実行される。
また、図10(C)に示すように、プログラム動作とベリファイ動作の間に書込み動作中断期間が挿入されてもよい。図10(C)に示された例の場合、書込み動作中断期間直後のベリファイ動作は、書込み動作中断期間直前のプログラム動作に対して実行される。
1.2.2 データ退避動作について
次に、第1実施形態に係る半導体記憶装置のデータ退避動作について説明する。図11は、第1実施形態に係る半導体記憶装置のデータ退避動作を説明するためのコマンドシーケンスである。
次に、第1実施形態に係る半導体記憶装置のデータ退避動作について説明する。図11は、第1実施形態に係る半導体記憶装置のデータ退避動作を説明するためのコマンドシーケンスである。
図11に示すように、コントローラ10は、コマンド“05h”を発行し、半導体記憶装置20に送信する。コマンド“05h”は、ラッチ回路XDLに保持されているデータをコントローラ10に出力するためのコマンドである。コントローラ10は、例えば5サイクルにわたってアドレスADD2を発行し、半導体記憶装置20に送信する。アドレスADD2は、カラムを指定し、ここでは、例えばラッチ回路XDLに格納されたデータの全体を出力するために全カラムが指定される。コントローラ10は、コマンド“E0h”を発行し、半導体記憶装置20に送信する。コマンド“E0h”は、直前に送信されたアドレスADD2に基づいてラッチ回路XDLに格納されたデータの出力を実行させるためのコマンドである。コマンド“E0h”がレジスタ24に格納されると、シーケンサ25は、入出力回路22等を制御して、センスアンプモジュール28内のラッチ回路XDLに格納されたデータDoutをコントローラ10に出力する。コントローラ10は、例えば、出力されたデータDoutをバッファメモリ14に退避させ、保持する。
コントローラ10は、コマンド“ZZh”を発行し、半導体記憶装置20に送信する。コマンド“ZZh”は、ラッチ回路ADL、BDL、CDL、DDL、SDL、及びXDLの間でのデータ転送を指示するためのコマンドである。コントローラ10は、例えばkサイクル(kは任意の正の整数)にわたってアドレスADD3を発行し、半導体記憶装置20に送信する。アドレスADD3は、例えば、転送されるデータの転送元及び転送先のラッチ回路を示すラッチ回路を示す情報を含む。
コマンド“ZZh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路間のデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。半導体記憶装置20がビジー状態である期間は、ラッチ回路間でのデータ転送が行われている期間を示している。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
コントローラ10は、例えば、データ退避動作開始後の動作と同様に、コマンド“05h”、アドレスADD2、及びコマンド“E0h”を順次発行し、半導体記憶装置20に送信する。シーケンサ25は、再び入出力回路22等を制御して、センスアンプモジュール28内のラッチ回路XDLに格納されたデータDoutをコントローラ10に出力する。
なお、続けてコントローラ10へのデータ退避を行う場合は、更にコマンド“ZZh”を発行することでラッチ回路XDLへのデータ転送を行う。そして、当該ラッチ回路XDLへ格納されたデータをコントローラ10へ出力する動作を繰り返せばよい。
以上で、データ退避動作が終了する。
図12は、第1実施形態に係る半導体記憶装置のラッチ回路間のデータ転送を設定する情報の一例を示すテーブルである。当該設定情報は、例えば、コマンド“ZZh”の後に発行されるアドレスADD3に含まれる。
図12に示すように、ラッチ回路間のデータ転送を設定する情報は、転送元及び転送先のラッチ回路識別情報を含む。具体的には、例えば、転送元及び転送先のラッチ回路識別情報には、ラッチ回路ADL、BDL、CDL、DDL、SDL、及びXDLに対して、それぞれ“000”、“001”、“010”、“011”、“100”、“101”が対応付けられて、各々が一意に識別可能となっている。なお、各ラッチ回路に設定された転送元及び転送先のラッチ回路識別情報は、これに限らず、各々が一意に識別可能であれば任意の値が設定可能である。
図13は、第1実施形態に係る半導体記憶装置のデータ退避動作の前後におけるラッチ回路内のデータの変化の一例を示すテーブルである。図13では、データ退避動作の開始前からデータ読出し後までのラッチ回路内のデータの変化が行方向に時系列に示されている。
上述の通り、データ退避動作は、6つのラッチ回路XDL、ADL、BDL、CDL、DDL、及びSDLのうち、2以上のラッチ回路を上書可能な状態にする。第1実施形態における以下の説明では、ラッチ回路XDL、ADL、及びSDLの3つのラッチ回路を上書可能な状態にする場合のデータ退避動作について説明する。
図13に示すように、データ退避動作が開始される前(書込み動作が中断した直後)では、各ラッチ回路XDL、ADL、BDL、CDL、DDL、及SDLには、例えば、以下に示す如き、書込み動作の際に用いられるデータが格納されている。
ラッチ回路XDLには、キャッシュデータ(図13では、“C”と略記されている)が格納される。
ラッチ回路ADL、BDL、及びCDLにはそれぞれ、対応するメモリセルトランジスタMTに書込まれる3ビットデータのうち、下位データ、中位データ、及び上位データ(図13ではそれぞれ、“L”、“M”、及び“U”と略記されている)が格納される。なお、下位データ、中位データ、及び上位データは、「コントローラ10から転送された書込みデータ」に限らず、ベリファイ結果を含んでいてもよい。つまり、ラッチ回路ADL、BDL、及びCDLに格納されるデータは、対応するメモリセルトランジスタMTに書込まれる閾値電圧のレベルを判定できるだけでなく、当該メモリセルトランジスタMTがベリファイ動作にパスしたレベルを判定できる。したがって、下位データ、中位データ、及び上位データは、書込み動作のループ毎にベリファイ結果に基づいて更新される。具体的には、例えば、メモリセルトランジスタMTへの書込みが完了した場合、対応するセンスアンプユニットSAU内のラッチ回路ADL、BDL、及びCDLに格納されるデータは、これ以上の書込み動作が不要であることを示す情報として、データ“111”に更新されてもよい。
ラッチ回路DDLには、メモリセルトランジスタMTの閾値電圧の分布を急峻にするためのデータ書込み方式(第1書込み方式)の際に用いられるデータQ(図13では、“Q”と略記されている)が格納される。第1書込み方式では、例えば、ターゲットとする閾値電圧よりも低い電圧でベリファイ動作を行う。そして、当該ベリファイ動作をパスしたメモリセルトランジスタMTに対して、通常よりも閾値電圧の上昇量が小さいプログラム動作を実行する。これにより、ターゲットの閾値電圧付近まで閾値電圧が上昇したメモリセルトランジスタMTの閾値電圧上昇量を細かく制御でき、閾値電圧の分布範囲を狭くすることができる。
ラッチ回路SDLには、例えば、書込み動作の際にビット線BLを選択するか否かを判定するための書込み指示データ(図13では、“W”と略記されている)が格納されている。書込み指示データは、例えば、ループ毎に、下位データ、中位データ、及び上位データに基づく演算処理から算出される。なお、書込み指示データは、上述の通り、下位データ、中位データ、及び上位データから算出可能であるため、読出し動作の際には上書可能なデータである。なお、図13では、上書可能なデータについては、“(WE)”を付すことで上書き不可なデータと区別している。
図13に示すように、図11に示されたコマンドシーケンスに基づくデータ退避動作では、まず、ラッチ回路XDLに格納されたキャッシュデータがコントローラ10へ転送される。キャッシュデータは、例えば、バッファメモリ14に一時的に保持される。これにより、ラッチ回路XDLは、上書可能な状態となる。
続いて、ラッチ回路ADLに格納された下位データが、ラッチ回路XDLへ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“000”が指定され、転送先のラッチ回路識別情報として“101”が指定される。これにより、ラッチ回路ADLは、ラッチ回路XDLに代えて、上書可能な状態となる。
続いて、ラッチ回路XDLに格納された下位データがコントローラ10へ転送される。下位データは、例えば、キャッシュデータと同様にバッファメモリ14に一時的に格納される。これにより、ラッチ回路XDLは、上書可能な状態となる。以上のデータ退避動作により、3つのラッチ回路XDL、ADL、SDLが上書可能な状態となる。
データ退避動作後の読出し動作では、ラッチ回路XDL、ADL、及びSDLには、読出しに必要なデータが格納される。具体的には、ラッチ回路XDL及びADLには、読出しオプションデータ(図13では、“ROP”と略記されている)が格納される。また、ラッチ回路SDLには、コントローラ10に出力される読出しデータ(図13では、“R”と略記されている)が格納される。当該読出しデータは、例えば、ラッチ回路XDL及びADLに格納された読出しオプションデータに基づく演算処理によって算出される。そして、ラッチ回路SDLに読み出された読出しデータは、ラッチ回路XDLを介してコントローラ10に出力される。
1.2.3 データ復元動作について
次に、第1実施形態に係る半導体記憶装置のデータ復元動作について説明する。図14は、第1実施形態に係る半導体記憶装置のデータ復元動作を説明するためのコマンドシーケンスである。
次に、第1実施形態に係る半導体記憶装置のデータ復元動作について説明する。図14は、第1実施形態に係る半導体記憶装置のデータ復元動作を説明するためのコマンドシーケンスである。
図14に示すように、コントローラ10は、コマンド“80h”を発行し、半導体記憶装置20に送信する。コントローラ10は、例えば5サイクルにわたってアドレスADD2を発行し、半導体記憶装置20に送信する。続いてコントローラ10は、書込みデータDinを半導体記憶装置20に送信する。書込みデータDinは、例えば、データ退避動作においてバッファメモリ14に格納された下位データである。すなわち、当該下位データは、書込み動作が中断する直前におけるベリファイ結果の情報を含む。
コントローラ10は、コマンド“11h”を発行し、半導体記憶装置20に送信する。コマンド“11h”は、直前に送信されたアドレスADD2に基づいてラッチ回路XDLへデータの書込みを実行させるためのコマンドである。コマンド“11h”がレジスタ24に格納されると、シーケンサ25は、データの書込みを完了する。
このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。ラッチ回路XDLへの下位データの書込みが完了した後、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
コントローラ10は、コマンド“ZZh”を発行し、半導体記憶装置20に送信する。コントローラ10は、例えばkサイクルにわたってアドレスADD3を発行し、半導体記憶装置20に送信する。コマンド“ZZh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路間のデータ転送を実行する。具体的には、例えば、アドレスADD3の転送元のラッチ回路識別情報に“101”が指定され、転送先のラッチ回路識別情報に“000”が指定される。これにより、シーケンサ25は、ラッチ回路XDLに格納された下位データを、ラッチ回路ADLへ転送する。
このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
コントローラ10は、例えば、データ復元動作開始後の動作と同様に、コマンド“80h”、アドレスADD2、書込みデータDin、及びコマンド“11h”を順次発行し、半導体記憶装置20に送信する。ここでの書込みデータDinは、例えば、データ退避動作においてバッファメモリ14に格納されたキャッシュデータである。シーケンサ25は、ラッチ回路XDLへのキャッシュデータの書込みを実行する。
なお、更にデータ復元を行う場合は、更にコマンド“ZZh”を発行することでラッチ回路XDLから他のラッチ回路ADL、BDL、CDL、DDL、及びSDLのいずれかへのデータ転送を行う。そして、コントローラ10からラッチ回路XDLへデータを書込む動作を繰り返せばよい。
以上で、データ復元動作が終了する。
図15は、第1実施形態に係る半導体記憶装置のデータ復元動作前後におけるラッチ回路内のデータの変化の一例を示すテーブルである。図15では、データ復元動作の開始前からデータ復元後までのラッチ回路内のデータの変化が行方向に時系列に示されている。なお、図15では、図13と同様の略記によって各データが示されている。
図15に示すように、データ復元動作の前では、データ読出が終了している。このため、ラッチ回路SDLに格納された読出しデータ、及びラッチ回路XDL並びにADLに格納された読出しオプションデータは、上書可能なデータである。
データ復元動作では、まず、バッファメモリ14に格納された下位データがラッチ回路XDLへ転送される。これにより、ラッチ回路XDLに保持されていたデータは、下位データに上書きされる。
続いて、ラッチ回路XDLに書込まれた下位データがラッチ回路ADLへ転送される。これにより、ラッチ回路ADLには下位データが格納され、データ退避動作前の状態に復元する。続いて、バッファメモリ14に格納されたキャッシュデータがラッチ回路XDLへ転送される。これにより、ラッチ回路XDL内のデータは、データ退避動作前の状態に復元される。
その後、書込み動作の再開に先立って、下位データ、中位データ、及び上位データに基づく演算処理によって書込み指示データを生成し、ラッチ回路SDLに格納する。以上のデータ復元動作により、ラッチ回路XDL、ADL、BDL、CDL、DDL、及びSDL内のデータは、全て復元される。
1.3 本実施形態に係る効果
第1実施形態によれば、書込み動作再開に必要なデータが保持されたラッチ回路を使用して読出し動作を実行した後に、書込み動作を再開することが出来る。本効果につき、以下説明する。
第1実施形態によれば、書込み動作再開に必要なデータが保持されたラッチ回路を使用して読出し動作を実行した後に、書込み動作を再開することが出来る。本効果につき、以下説明する。
メモリセルトランジスタ内に保持されたデータを読み出す際には、読み出されたデータが外部のコントローラに転送されるまで、ラッチ回路に一時的に保持される。一方、書込み動作が中断された場合、ラッチ回路内には、書込み動作を再開させるために必要なデータが既に保持されている。このため、書込み動作の中断時に読出し動作を実行した場合、外部のコントローラに転送するまで読み出されたデータを一時的に保持するラッチ回路が不足する可能性がある。
従来の技術は、例えば、センスアンプユニット内の複数のラッチ回路のうち、書込み動作の再開に必ずしも必要ないデータが保持されているラッチ回路に読出しデータを上書きする手法が知られている。
しかしながら、従来の技術は、読出しデータに加えて、当該読出しデータを生成するための読出しオプションデータを更に保持する必要がある場合に、ラッチ回路が不足する可能性がある。すなわち、第1読出し動作及び第2読出し動作の如き特殊な読出し動作が実行された場合、読出しデータの他に複数の読出しオプションデータを、複数のラッチ回路を用いて保持する必要がある。このような場合に、書込み動作の再開に必要なデータを失うことなく、読出し動作を実行することができない、という点について検討の余地がある。つまり、従来の技術は、書込み動作再開に必要なデータが保持されたラッチ回路を使用して読出し動作を実行した後に、書込み動作を再開できない、という点について検討の余地がある。
第1実施形態に係る半導体記憶装置は、シーケンサ25が、書込み動作の中断後かつ読出しコマンドの受信前に、センスアンプユニットSAU内のラッチ回路ADL及びXDLに保持されたデータをコントローラ10内のバッファメモリ14に保持させるようにしている。これにより、読出しコマンドが実行される段階では、書込み動作の再開に必要なデータの一部は、センスアンプユニットSAUの外部に退避されている。このため、データが退避されたラッチ回路ADL及びXDLは、読出しオプションデータが保持可能となる。
また、シーケンサ25は、読出し動作の間に、メモリセルトランジスタMTから読み出された読出しオプションデータを、データを退避させたラッチ回路ADL及びXDL内に保持させるようにしている。当該ラッチ回路ADL及びXDL内のデータは、読出しオプションデータに上書きされるものの、当該上書されたデータは、既にコントローラ10内のバッファメモリ14に退避済みであるため、後の復元動作によって復元することができる。このため、書込み動作中断中の読出し動作において、書込み動作再開に必要なデータを保持したラッチ回路を使用することができる。
また、シーケンサ25は、読出し動作の終了後かつ書込み動作を再開させるコマンド“YYh”の受信前に、コントローラ10に転送されたデータを、元のラッチ回路ADL及びXDLに転送させるようにしている。これにより、書込み動作が再開する前に、書込み動作の再開に必要なデータを、当該データが保持されていたラッチ回路に復元させることができる。したがって、書込み動作再開に必要なデータが保持されたラッチ回路を使用した読出し動作を実行した後に、書込み動作を再開させることができる。
また、センスアンプモジュール28は、ラッチ回路XDLを含む。ラッチ回路XDLは、他のラッチ回路ADL、BDL、CDL、DDL、及びSDLとコントローラ10との間のデータ転送の際に、必ず当該データが経由するラッチ回路である。つまり、ラッチ回路ADL、BDL、CDL、DDL、及びSDLに保持されたデータをコントローラ10へ退避させる場合、ラッチ回路XDLへデータを転送する動作を要する。シーケンサ25は、コマンド“ZZh”を受信することにより、当該ラッチ回路間の転送動作を実行するようにしている。これにより、ラッチ回路間のデータ転送を容易に実行することができる。
また、シーケンサ25は、コマンド“ZZh”の受信後、アドレスADD3を受信する。そして、シーケンサ25は、当該アドレスADD3に基づいてラッチ回路間の転送動作の転送元及び転送先を特定するようにしている。これにより、センスアンプモジュール28内のラッチ回路ADL、BDL、CDL、DDL、SDL、及びXDL間の任意のラッチ回路間でのデータ転送を容易に実行することができる。
1.4 第1実施形態の変形例
なお、第1実施形態に係る半導体記憶装置は、上述の例に限らず、種々の変形が適用可能である。
なお、第1実施形態に係る半導体記憶装置は、上述の例に限らず、種々の変形が適用可能である。
例えば、第1実施形態に係る半導体記憶装置では、データ退避動作及びデータ復元動作におけるラッチ回路間のデータ転送において、コマンド“ZZh”及びアドレスADD3を発行したが、これに限られない。具体的には、アドレスADD3を発行することなく、コマンドのみを発行することにより、転送元及び転送先のラッチ回路を指定したデータ転送が実行されてもよい。
図16は、第1実施形態の変形例に係る半導体記憶装置のデータ退避動作を説明するためのコマンドシーケンスである。図16に示すように、コントローラ10は、コマンド“05h”を発行し、半導体記憶装置20に送信する。コントローラ10は、例えば5サイクルにわたってアドレスADD2を発行し、半導体記憶装置20に送信する。コントローラ10は、コマンド“E0h”を発行し、半導体記憶装置20に送信する。
コントローラ10は、コマンド“Z1sh”を発行し、半導体記憶装置20に送信する。コマンド“Z1sh”は、例えば、ラッチ回路ADLからラッチ回路XDLへのデータ転送を指示するためのコマンドである。
コマンド“Z1sh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路ADLからラッチ回路XDLへのデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
コントローラ10は、例えば、データ退避動作開始後の動作と同様に、コマンド“05h”、アドレスADD2、及びコマンド“E0h”を順次発行し、半導体記憶装置20に送信する。シーケンサ25は、入出力回路22等を制御して、センスアンプモジュール28内のラッチ回路XDLに格納されたデータDoutをコントローラ10に出力する。
なお、更にコントローラ10へのデータ退避を行う場合は、例えば、他のラッチ回路BDL、CDL、DDL、及びSDLからラッチ回路XDLへのデータ転送を実行する固有のコマンド(例えば、“Z2sh”、“Z3sh”、“Z4sh”、及び“Z5sh”(いずれも図示せず))を発行することで、ラッチ回路XDLへのデータ転送を行う。そして、当該ラッチ回路XDLへ格納されたデータをコントローラ10へ出力する動作を繰り返せばよい。
以上で、データ退避動作が終了する。
図17は、第1実施形態の変形例に係る半導体記憶装置のデータ復元動作を説明するためのコマンドシーケンスである。図17に示すように、コントローラ10は、コマンド“80h”を発行し、半導体記憶装置20に送信する。コントローラ10は、例えば5サイクルにわたってアドレスADD2を発行し、半導体記憶装置20に送信する。続いてコントローラ10は、バッファメモリ14に格納された下位データを書込みデータDinとして半導体記憶装置20に送信する。
コントローラ10は、コマンド“11h”を発行し、半導体記憶装置20に送信する。ロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。ラッチ回路XDLへの下位データの書込みが完了した後、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
コントローラ10は、コマンド“Z1rh”を発行し、半導体記憶装置20に送信する。コマンド“Z1rh”は、例えば、ラッチ回路XDLからラッチ回路ADLへのデータ転送を指示するためのコマンドである。コマンド“Z1rh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路XDLからラッチ回路ADLへのデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
コントローラ10は、例えば、データ復元動作開始後の動作と同様に、コマンド“80h”、アドレスADD2、バッファメモリ14に格納されたキャッシュデータである書込みデータDin、及びコマンド“11h”を順次発行し、半導体記憶装置20に送信する。シーケンサ25は、ラッチ回路XDLへのキャッシュデータの書込みを実行する。
なお、更にデータ復元を行う場合は、例えば、ラッチ回路XDLからラッチ回路BDL、CDL、DDL、及びSDLに対してデータ転送を実行する固有のコマンド(例えば、“Z2rh”、“Z3rh”、“Z4rh”、及び“Z5rh”(いずれも図示せず))を発行することで、ラッチ回路XDLから他のラッチ回路BDL、CDL、DDL、及びSDLのいずれかへのデータ転送を行う。そして、コントローラ10からラッチ回路XDLへデータを書込む動作を繰り返せばよい。
以上で、データ復元動作が終了する。
第1実施形態の変形例によれば、より簡便なコマンドシーケンスによってデータ退避動作及びデータ復元動作を実行することが出来る。本効果につき、以下説明する。
任意のラッチ回路間でのデータ転送が想定される場合、第1実施形態で説明した通り、コマンド“ZZh”の発行後にアドレスADD3を発行することで転送元及び転送先のラッチ回路を特定することが有効である。しかしながら、データ転送が実行されるラッチ回路が相互に特定されている場合、アドレスADD3には常に同じ情報が含まれることとなる。毎回変化しない情報は、省略されることが望ましい。
第1実施形態の変形例に係る半導体記憶装置によれば、ラッチ回路間のデータ転送動作は、アドレスADD3を受信することなく、コマンド“Z1sh”及び“Z1rh”を受信することにより実行されるようにしている。これにより、アドレスADD3の発行を省略することができる。このため、より簡便かつ動作速度の速いデータ回復動作及び復元動作を実行することができると共に、ユーザの利便性の向上が期待できる。
2.第2実施形態
次に、第2実施形態に係る半導体記憶装置について説明する。第1実施形態に係る半導体記憶装置がセンスアンプモジュール28の外部であるコントローラ10にデータを退避させたのに対し、第2実施形態に係る半導体記憶装置は、センスアンプモジュール28の内部の上書可能な領域にデータを退避させるものである。また、第2実施形態では、書込み動作中に割込む読出し動作は、1/2ページに対して実行される。以下では、第1実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第1実施形態と異なる部分についてのみ説明する。
次に、第2実施形態に係る半導体記憶装置について説明する。第1実施形態に係る半導体記憶装置がセンスアンプモジュール28の外部であるコントローラ10にデータを退避させたのに対し、第2実施形態に係る半導体記憶装置は、センスアンプモジュール28の内部の上書可能な領域にデータを退避させるものである。また、第2実施形態では、書込み動作中に割込む読出し動作は、1/2ページに対して実行される。以下では、第1実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第1実施形態と異なる部分についてのみ説明する。
2.1 読出し動作の割込みを伴う書込み動作の概要について
第2実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要について説明する。図18は、第2実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要を示すコマンドシーケンスである。
第2実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要について説明する。図18は、第2実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要を示すコマンドシーケンスである。
図18に示すように、書込み動作を中断するまでのシーケンスは、第1実施形態と同様であるため、説明を省略する。そして、書込み動作が中断された後、データ退避動作が実行される。なお、データ退避動作の詳細については後述する。
データ退避動作が終了した後、コントローラ10は、コマンド“AAh”を発行し、半導体記憶装置20に送信する。コマンド“AAh”は、後続の読出しコマンド“00h”と協働で、PPRを命令するコマンドであり、すなわち1ページ内の部分的な読出し動作を命令するコマンドである。第2実施形態では、コマンド“AAh”は、1/2ページ(8KB)のデータの読出しを命令するコマンドとして機能する。コントローラ10は、例えば1サイクルのアドレスADD4を発行し、半導体記憶装置20に送信する。このアドレスADD4は、例えば、1ページ内の2つの1/2ページの領域のうち、どちらの領域を読み出すかを指定する。読み出される領域は、種々の定義の仕方が可能である。1/2ページは、例えば、センスアンプユニットSAU<e>に接続されたメモリセルトランジスタMTに対応するデータ領域か、又はセンスアンプユニットSAU<o>に接続されたメモリセルトランジスタMTに対応するデータ領域か、で指定され得る。
続いて、コントローラ10は、コマンド“BBh”及び“00h”を続けて発行した後、アドレスADD2及びコマンド“30h”を発行する。このように第1実施形態と同様の読出し動作を実行した後、シーケンサ25は、データ復元動作を実行する。なお、データ復元動作の詳細については後述する。
以降の書込み再開動作を実行するシーケンスは、第1実施形態と同様であるため、説明を省略する。以上で、読出し動作の割込みを伴う書込み動作が終了する。
図19は、第2実施形態に係る半導体記憶装置の読出し動作の際における読出し領域の設定例を示すテーブルである。図19に示される読出し領域を設定する情報は、例えば、アドレスADD4に含まれる。図19に示すように、読出し領域を設定する情報は、読出し対象が1ページ内のどの領域かを識別する情報(ページ内領域識別情報)を含む。具体的には、例えば、ページ内領域識別情報は、1ページのうちセンスアンプユニットSAU<e>に対応付けられる部分のデータを読み出す場合、“0”が設定され、センスアンプユニットSAU<o>に対応付けられる部分のデータを読み出す場合、“1”が設定される。
2.2 データ退避動作及びデータ復元動作について
次に、第2実施形態に係る半導体記憶装置のデータ退避及びデータ復元動作について説明する。なお、第2実施形態における以下の説明では、ラッチ回路ADL及びSDLの2つのラッチ回路を上書可能な状態にする場合のデータ退避動作、及び当該データ退避動作前の状態に復元させるデータ復元動作について説明する。また、1/2ページの読出し動作では、センスアンプユニットSAU<e>に対応するメモリセルトランジスタMTからデータが読み出されるものとして説明する。
次に、第2実施形態に係る半導体記憶装置のデータ退避及びデータ復元動作について説明する。なお、第2実施形態における以下の説明では、ラッチ回路ADL及びSDLの2つのラッチ回路を上書可能な状態にする場合のデータ退避動作、及び当該データ退避動作前の状態に復元させるデータ復元動作について説明する。また、1/2ページの読出し動作では、センスアンプユニットSAU<e>に対応するメモリセルトランジスタMTからデータが読み出されるものとして説明する。
図20は、第2実施形態に係る半導体記憶装置のデータ退避動作又はデータ復元動作を説明するためのコマンドシーケンスである。第2実施形態におけるデータ退避動作及びデータ復元動作は、例えば同一のコマンドシーケンスで示される。
図20に示すように、コントローラ10は、コマンド“ZZh”を発行し、半導体記憶装置20に送信する。コントローラ10は、例えばkサイクルにわたってアドレスADD3を発行し、半導体記憶装置20に送信する。アドレスADD3は、1/2ページ分のラッチ回路を指定してデータを転送可能な情報を含む点で第1実施形態と相違する。
コマンド“ZZh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路間のデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
以上で、データ退避動作又はデータ復元動作が終了する。
図21は、第2実施形態に係る半導体記憶装置のラッチ回路間のデータ転送を設定する情報の一例を示すテーブルである。図21に示されるラッチ回路間のデータ転送を設定する情報は、例えば、アドレスADD3に含まれる。
図21に示すように、転送元及び転送先のラッチ回路を示す情報は、ラッチ回路識別情報に加えて、転送対象のラッチ回路が1ページ内のどの領域かを識別する情報(ページ内領域識別情報)を含む。
ここで、図21において示されたアドレスADD3内で指定される、転送元のページ内領域識別情報の値は、図19において示されたアドレスADD4内で指定されるページ内領域識別情報の値と一致する。こうすることにより、読出しの対象は、ラッチ回路SDLの退避データを受け入れなかった部分と接続されたメモリセルトランジスタMTとなり、ひいてはラッチ回路SDLの退避データを受け入れなかった部分に読出しデータが保持されることになる。このように、コントローラ10は、転送元のページ内領域識別情報の値と一致するページ内領域識別情報の値を、アドレスADD4においても指定する制限を課される。
図22は、第2実施形態に係る半導体記憶装置のデータ退避動作及びデータ復元動作の前後におけるラッチ回路内のデータの変化の一例を示すテーブルである。図22では、データ退避前からデータ復元後までにおけるラッチ回路内のデータの変化が行方向に時系列に示されている。なお、図22では、第1実施形態に係る図13及び図15と同様の略記によって各データが示されている。
図22に示すように、データ退避動作が開始される前(書込み動作が中断した直後)では、各ラッチ回路XDL、ADL、BDL、CDL、DDL、及SDLには、それぞれ、キャッシュデータ、下位データ、中位データ、上位データ、データQ、及び上書可能な書込み指示データが格納されている。
データ退避動作では、ラッチ回路ADL<e>に格納された下位データが、ラッチ回路SDL<o>へ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“000”が指定されると共に、ページ内領域識別情報として“0”が指定される。また、転送先のラッチ回路識別情報として“100”が指定されると共に、ページ内領域識別情報として“1”が指定される。これにより、ラッチ回路ADL<e>は、上書可能な状態となる。以上のデータ退避動作により、1/2ページの領域内の2つのラッチ回路ADL<e>及びSDL<e>が上書可能な状態となる。
データ退避動作後の読出し動作では、ラッチ回路ADL<e>及びSDL<e>には、読出しに必要なデータが格納される。具体的には、ラッチ回路ADL<e>には、読出しオプションデータが格納され、ラッチ回路SDL<e>には、コントローラ10に読み出されるべき読出しデータが格納される。
データ復元動作では、ラッチ回路SDL<o>に格納された下位データが、ラッチ回路ADL<e>へ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“100”が指定されると共に、ページ内領域識別情報として“1”が指定される。また、転送先のラッチ回路識別情報として“000”が指定されると共に、ページ内領域識別情報として“0”が指定される。これにより、ラッチ回路ADL内の下位データは、データ退避動作前の状態に復元される。
その後、書込み動作の再開に先立って、下位データ、中位データ、及び上位データに基づく演算処理によって書込み指示データを生成し、ラッチ回路SDLに格納する。以上のデータ復元動作により、ラッチ回路XDL、ADL、BDL、CDL、DDL、及びSDL内のデータは、全て復元される。
2.3 本実施形態に係る効果
第2実施形態によれば、シーケンサ25は、書込み動作の中断後かつ読出しコマンドの受信前に、センスアンプユニットSAU<e>内のラッチ回路に保持されたデータを、センスアンプユニットSAU<o>内のラッチ回路に保持させるようにしている。これにより、読出しコマンドが実行される段階では、書込み動作の再開に必要なデータの一部は、センスアンプユニットSAU<e>の外部に退避されている。このため、データが退避されたラッチ回路ADLは、読出しオプションデータが保持可能となる。
第2実施形態によれば、シーケンサ25は、書込み動作の中断後かつ読出しコマンドの受信前に、センスアンプユニットSAU<e>内のラッチ回路に保持されたデータを、センスアンプユニットSAU<o>内のラッチ回路に保持させるようにしている。これにより、読出しコマンドが実行される段階では、書込み動作の再開に必要なデータの一部は、センスアンプユニットSAU<e>の外部に退避されている。このため、データが退避されたラッチ回路ADLは、読出しオプションデータが保持可能となる。
また、シーケンサ25は、読出し動作の間に、メモリセルトランジスタMTから読み出された読出しオプションデータを、データを退避させたセンスアンプユニットSAU<e>内のラッチ回路ADL内に保持させるようにしている。当該ラッチ回路ADL内のデータは、読出しオプションデータに上書きされるものの、当該上書されたデータは、既にセンスアンプユニット<o>に退避済みであるため、後の復元動作によって復元することができる。このため、書込み動作中断中の読出し動作において、書込み動作再開に必要なデータを保持したラッチ回路を使用することができる。
また、シーケンサ25は、読出し動作の終了後かつ書込み動作を再開させるコマンド“YYh”の受信前に、センスアンプユニットSAU<o>内のラッチ回路SDLに転送されたデータを、センスアンプユニットSAU<e>内のラッチ回路ADLに転送させるようにしている。これにより、書込み動作が再開する前に、書込み動作の再開に必要なデータを、当該データが保持されていたラッチ回路に復元させることができる。したがって、書込み動作再開に必要なデータが保持されたラッチ回路を使用した読出し動作を実行した後に、書込み動作を再開させることができる。
また、上述の通り、センスアンプユニットSAU<o>内のラッチ回路SDLには、センスアンプユニットSAU<e>内のラッチ回路ADLに保持されていた、書込み動作の再開に必要なデータが退避されている。このため、読出し動作の際にセンスアンプユニットSAU<o>でデータが読み出された場合、当該退避されたデータが読出しデータによって上書きされ、失われてしまう可能性がある。第2実施形態では、コントローラ10は、読出し動作において、アドレスADD4内のページ内領域識別情報の値を、アドレスADD3内の転送元のページ内領域識別情報の値と一致させる。こうすることにより、ラッチ回路SDLの退避データを受け入れなかった部分に読出しデータが保持されることになる。こうして、センスアンプユニットSAU<o>へのデータの読出しが制限されるようにしている。このため、データの読出しによる退避データの消失を防ぐことができる。これにより、読出し動作後に書込み動作を再開させることができる。
また、読出し動作は、1/2ページのサイズのデータを読み出すようにしている。具体的には、センスアンプモジュール28内のセンスアンプユニットSAUは、同数のセンスアンプユニットSAU<e>及びSAU<o>を含む。これにより、センスアンプユニットSAU<e>で読出し動作を実行している間にセンスアンプユニットSAU<o>へのデータ読出しが制限された場合、全てのセンスアンプユニットSAUで読出し動作を実行させた場合のデータサイズ(16KB)の半分(8KB)のデータを読み出すことができる。
なお、センスアンプユニットSAU<e>及びSAU<o>は、バスLBUSを介して接続されている。このため、センスアンプユニットSAU<e>及びSAU<o>間のデータ退避は、バスDBUSを介することなく、バスLBUSのみを介して実行することができる。これにより、バスDBUSを介して行うデータ退避と比較して、データ退避に要する時間を短縮することができ、ひいては、動作速度を向上させることができる。
また、シーケンサ25は、コマンド“ZZh”の受信後、アドレスADD3を受信する。そして、シーケンサ25は、当該アドレスADD3に基づいてラッチ回路間の転送動作の転送元及び転送先を特定するようにしている。これにより、センスアンプモジュール28内のラッチ回路ADL、BDL、CDL、DDL、SDL、及びXDL間の任意のラッチ回路間でのデータ転送を容易に実行することができる。
2.4 第2実施形態の変形例
なお、第2実施形態に係る半導体記憶装置は、上述の例に限らず、種々の変形が適用可能である。
なお、第2実施形態に係る半導体記憶装置は、上述の例に限らず、種々の変形が適用可能である。
例えば、第2実施形態に係る半導体記憶装置では、データ退避動作及びデータ復元動作におけるラッチ回路間のデータ転送において、コマンド“ZZh”及びアドレスADD3を発行したが、これに限られない。具体的には、第1実施形態の変形例と同様、アドレスADD3を発行することなく、コマンドのみを発行することにより、転送元及び転送先のラッチ回路を指定したデータ転送が実行されてもよい。
図23は、第2実施形態の変形例に係る半導体記憶装置のデータ退避動作を説明するためのコマンドシーケンスである。図24に示すように、コントローラ10は、コマンド“Z1esh”を発行し、半導体記憶装置20に送信する。コマンド“Z1esh”は、例えば、ラッチ回路ADL<e>からラッチ回路SDL<o>へのデータ転送を指示するためのコマンドである。
コマンド“Z1esh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路ADL<e>からラッチ回路SDL<o>へのデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
なお、ラッチ回路ADL<o>からラッチ回路SDL<e>へのデータ退避を行う場合は、例えば、固有のコマンド“Z1osh”(図示せず)を発行することで、ラッチ回路ADL<o>からラッチ回路SDL<e>へのデータ転送を行うようにしてもよい。
また、他のラッチ回路BDL<e>、CDL<e>、及びDDL<e>からラッチ回路SDL<o>へのデータ退避を行う場合は、固有のコマンド(例えば、“Z2esh”、“Z3esh”、及び“Z4esh”(いずれも図示せず))を発行することで、それぞれラッチ回路BDL<e>、CDL<e>、及びDDL<e>からラッチ回路SDL<o>へのデータ転送を行うようにしてもよい。
以上で、データ退避動作が終了する。
図24は、第2実施形態の変形例に係る半導体記憶装置のデータ復元動作を説明するためのコマンドシーケンスである。
図24に示すように、コントローラ10は、コマンド“Z1erh”を発行し、半導体記憶装置20に送信する。コマンド“Z1erh”は、例えば、ラッチ回路SDL<o>からラッチ回路ADL<e>へのデータ転送を指示するためのコマンドである。コマンド“Z1erh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路SDL<o>からラッチ回路ADL<e>へのデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
なお、ラッチ回路SDL<e>からラッチ回路ADL<o>へのデータ退避を行う場合は、例えば、固有のコマンド“Z1orh”(図示せず)を発行することで、ラッチ回路SDL<e>からラッチ回路ADL<o>へのデータ転送を行うようにしてもよい。
また、ラッチ回路SDL<o>から他のラッチ回路BDL<e>、CDL<e>、及びDDL<e>へのデータ復元を行う場合は、固有のコマンド(例えば、“Z2erh”、“Z3erh”、及び“Z4erh”(いずれも図示せず))を発行することで、それぞれラッチ回路SDL<o>からラッチ回路BDL<e>、CDL<e>、及びDDL<e>へのデータ転送を行うようにしてもよい。
以上で、データ復元動作が終了する。
第2実施形態の変形例によれば、より簡便なコマンドシーケンスによってデータ退避動作及び復元動作を実行することが出来る。本効果につき、以下説明する。
任意のラッチ回路間でのデータ転送が想定される場合、第2実施形態で説明した通り、コマンド“ZZh”の発行後にアドレスADD3を発行することで転送元及び転送先のラッチ回路を特定することが有効である。しかしながら、データ転送が実行されるラッチ回路が相互に特定されている場合、アドレスADD3には常に同じ情報が含まれることとなる。毎回変化しない情報は、省略されることが望ましい。
第2実施形態の変形例に係る半導体記憶装置によれば、ラッチ回路間のデータ転送動作は、アドレスADD3を受信することなく、コマンド“Z1esh”及び“Z1erh”を受信することにより実行されるようにしている。これにより、アドレスADD3の発行を削除することができる。このため、より簡便かつ動作速度の速いデータ回復動作及び復元動作を実行することができると共に、ユーザの利便性の向上が期待できる。
3.第3実施形態
次に、第3実施形態に係る半導体記憶装置について説明する。第2実施形態に係る半導体記憶装置がセンスアンプモジュール28の内部に8KBのデータを退避させたのに対し、第3実施形態に係る半導体記憶装置は、センスアンプモジュール28の内部に4KBのデータを退避させるものである。以下では、第2実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第2実施形態と異なる部分についてのみ説明する。
次に、第3実施形態に係る半導体記憶装置について説明する。第2実施形態に係る半導体記憶装置がセンスアンプモジュール28の内部に8KBのデータを退避させたのに対し、第3実施形態に係る半導体記憶装置は、センスアンプモジュール28の内部に4KBのデータを退避させるものである。以下では、第2実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第2実施形態と異なる部分についてのみ説明する。
3.1 読出し動作の割込みを伴う書込み動作の概要について
第3実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要について説明する。第3実施形態における読出し動作の割込みを伴う書込み動作のコマンドシーケンスでは、コマンド“AAh”が1/4ページ(4KB)のデータの読出しを命令するコマンドとして機能する。また、アドレスADD4は、1/4ページ分のセンスアンプユニットSAUを指定する情報を含む点で、第2実施形態と異なる。コマンドシーケンスのその他の部分については、第2実施形態において示された図18と同様である。なお、データ退避動作及びデータ復元動作の詳細については後述する。
第3実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要について説明する。第3実施形態における読出し動作の割込みを伴う書込み動作のコマンドシーケンスでは、コマンド“AAh”が1/4ページ(4KB)のデータの読出しを命令するコマンドとして機能する。また、アドレスADD4は、1/4ページ分のセンスアンプユニットSAUを指定する情報を含む点で、第2実施形態と異なる。コマンドシーケンスのその他の部分については、第2実施形態において示された図18と同様である。なお、データ退避動作及びデータ復元動作の詳細については後述する。
図25は、第3実施形態に係る半導体記憶装置の読出し動作の際における読出し領域の設定例を示すテーブルである。図25に示される読出し領域を設定する情報は、例えば、アドレスADD4に含まれる。図25に示すように、読出し領域を設定する情報は、ページ内領域識別情報を含む。具体的には、例えば、ページ内領域識別情報は、1ページのうちセンスアンプユニットSAU<e1>、SAU<e2>、<o1>、及び<o2>に対応付けられる部分のデータを読み出す場合、それぞれ“00”、“01”、“10”、及び“11”が設定される。
3.2 データ退避動作及びデータ復元動作について
次に、第3実施形態に係る半導体記憶装置のデータ退避及びデータ復元動作について説明する。なお、第3実施形態における以下の説明では、ラッチ回路XDL、ADL、BDL、及びSDLの4つのラッチ回路を上書可能な状態にする場合のデータ退避動作、及びデータ復元動作について説明する。また、1/4ページの読出し動作では、センスアンプユニットSAU<e1>に対応するメモリセルトランジスタMTからデータが読み出されるものとして説明する。
次に、第3実施形態に係る半導体記憶装置のデータ退避及びデータ復元動作について説明する。なお、第3実施形態における以下の説明では、ラッチ回路XDL、ADL、BDL、及びSDLの4つのラッチ回路を上書可能な状態にする場合のデータ退避動作、及びデータ復元動作について説明する。また、1/4ページの読出し動作では、センスアンプユニットSAU<e1>に対応するメモリセルトランジスタMTからデータが読み出されるものとして説明する。
図26は、第3実施形態に係る半導体記憶装置のデータ退避動作又はデータ復元動作を説明するためのコマンドシーケンスである。第3実施形態におけるデータ退避動作及びデータ復元動作は、同一のコマンドシーケンスで示される。
図26に示すように、コントローラ10は、コマンド“ZZh”を発行し、半導体記憶装置20に送信する。コントローラ10は、例えばkサイクルにわたってアドレスADD3を発行し、半導体記憶装置20に送信する。アドレスADD3は、1/4ページ分のラッチ回路を指定してデータを転送可能な情報を含む点で第2実施形態と相違する。
コマンド“ZZh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路間のデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
以上の動作が所望のデータ退避動作又はデータ復元動作の形態に応じて定まる回数だけ繰り返される。図26は、例えばコマンド“ZZh”及びアドレスADD3の組の送信を合計3回繰り返すことで、データ退避動作又はデータ復元動作が終了する例が示されている。
図27は、第3実施形態に係る半導体記憶装置のラッチ回路間のデータ転送を設定する情報の一例を示すテーブルである。図27に示されるラッチ回路間のデータ転送を設定する情報は、例えば、アドレスADD3に含まれる。
図27に示すように、転送元及び転送先のラッチ回路を示す情報は、ラッチ回路識別情報及びページ内領域識別情報を含む。
ここで、図27において示されたアドレスADD3内で指定される、転送元のページ内領域識別情報の値は、図25において示されたアドレスADD4内で指定されるページ内領域識別情報の値と一致する。こうすることにより、読出しの対象は、ラッチ回路SDLの退避データを受け入れなかった部分と接続されたメモリセルトランジスタMTとなり、ひいてはラッチ回路SDLの退避データを受け入れなかった部分位読出しデータを保持されることになる。このように、コントローラ10は、転送元のページ内領域識別情報の値と一致するページ内領域識別情報の値を、アドレスADD4においても指定する制限を課される。
図28は、第3実施形態に係る半導体記憶装置のデータ退避動作及びデータ復元動作の前後におけるラッチ回路内のデータの動きの一例を示すテーブルである。図28では、データ退避前からデータ復元後までにおけるラッチ回路内のデータの変化が行方向に時系列に示されている。なお、図28では、第2実施形態に係る図22と同様の略記によって各データが示されている。
図28に示すように、データ退避動作が開始される前(書込み動作が中断した直後)では、各ラッチ回路XDL、ADL、BDL、CDL、DDL、及SDLには、それぞれ、キャッシュデータ、下位データ、中位データ、上位データ、データQ、及び上書可能な書込み指示データが格納されている。
データ退避動作では、まず、ラッチ回路XDL<e1>に格納されたキャッシュデータが、ラッチ回路SDL<o2>へ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“101”が指定されると共に、ページ内領域識別情報として“00”が指定される。また、転送先のラッチ回路識別情報として“100”が指定されると共に、ページ内領域識別情報として“11”が指定される。これにより、ラッチ回路XDL<e1>は、上書可能な状態となる。
続いて、ラッチ回路ADL<e1>に格納された下位データが、ラッチ回路SDL<o1>へ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“000”が指定されると共に、ページ内領域識別情報として“00”が指定される。また、転送先のラッチ回路識別情報として“100”が指定されると共に、ページ内領域識別情報として“10”が指定される。これにより、ラッチ回路ADL<e1>は、上書可能な状態となる。
続いて、ラッチ回路BDL<e1>に格納された中位データが、ラッチ回路SDL<e2>へ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“001”が指定されると共に、ページ内領域識別情報として“00”が指定される。また、転送先のラッチ回路識別情報として“100”が指定されると共に、ページ内領域識別情報として“01”が指定される。これにより、ラッチ回路BDL<e1>は、上書可能な状態となる。
以上のデータ退避動作により、1/4ページの領域内の4つのラッチ回路XDL<e1>、ADL<e1>、BDL<e1>、及びSDL<e1>が上書可能な状態となる。
データ退避動作後の読出し動作では、ラッチ回路XDL<e1>、ADL<e1>、BDL<e1>、及びSDL<e1>には、読出しに必要なデータが格納される。具体的には、ラッチ回路XDL<e1>、ADL<e1>、及びBDL<e1>には、読出しオプションデータが格納され、ラッチ回路SDL<e1>には、コントローラ10に読み出されるべき読出しデータが格納される。
データ復元動作では、まず、ラッチ回路SDL<e2>に格納された中位データが、ラッチ回路BDL<e1>へ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“100”が指定されると共に、ページ内領域識別情報として“01”が指定される。また、転送先のラッチ回路識別情報として“001”が指定されると共に、ページ内領域識別情報として“00”が指定される。これにより、ラッチ回路BDL内の中位データは、データ退避動作前の状態に復元する。
続いて、ラッチ回路SDL<o1>に格納された下位データが、ラッチ回路ADL<e1>へ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“100”が指定されると共に、ページ内領域識別情報として“10”が指定される。また、転送先のラッチ回路識別情報として“000”が指定されると共に、ページ内領域識別情報として“00”が指定される。これにより、ラッチ回路ADL内の下位データは、データ退避動作前の状態に復元する。
続いて、ラッチ回路SDL<o2>に格納されたキャッシュデータが、ラッチ回路XDL<e1>へ転送される。具体的には、アドレスADD3において、転送元のラッチ回路識別情報として“100”が指定されると共に、ページ内領域識別情報として“11”が指定される。また、転送先のラッチ回路識別情報として“101”が指定されると共に、ページ内領域識別情報として“00”が指定される。これにより、ラッチ回路XDL内のキャッシュデータは、データ退避動作前の状態に復元する。
その後、書込み動作の再開に先立って、下位データ、中位データ、及び上位データに基づく演算処理によって書込み指示データを生成し、ラッチ回路SDLに格納する。以上のデータ復元動作により、ラッチ回路XDL、ADL、BDL、CDL、DDL、及びSDL内のデータは、全て復元する。
3.3 本実施形態に係る効果
第3実施形態によれば、シーケンサ25は、書込み動作の中断後かつ読出しコマンドの受信前に、センスアンプユニットSAU<e1>内のラッチ回路ADL<e1>及びBDL<e1>、並びにラッチ回路XDL<e1>に保持されたデータを、センスアンプユニットSAU<e2>内のラッチ回路SDL<e2>、SAU<o1>内のラッチ回路SDL<o1>、及びSAU<o2>内のラッチ回路SDL<o2>に保持させるようにしている。これにより、読出しコマンドが実行される段階では、書込み動作の再開に必要なデータの一部は、センスアンプユニットSAU<e1>の外部に退避されている。このため、データが退避されたラッチ回路XDL、ADL、及びBDLは、読出しオプションデータが保持可能となる。
第3実施形態によれば、シーケンサ25は、書込み動作の中断後かつ読出しコマンドの受信前に、センスアンプユニットSAU<e1>内のラッチ回路ADL<e1>及びBDL<e1>、並びにラッチ回路XDL<e1>に保持されたデータを、センスアンプユニットSAU<e2>内のラッチ回路SDL<e2>、SAU<o1>内のラッチ回路SDL<o1>、及びSAU<o2>内のラッチ回路SDL<o2>に保持させるようにしている。これにより、読出しコマンドが実行される段階では、書込み動作の再開に必要なデータの一部は、センスアンプユニットSAU<e1>の外部に退避されている。このため、データが退避されたラッチ回路XDL、ADL、及びBDLは、読出しオプションデータが保持可能となる。
また、シーケンサ25は、読出し動作の間に、メモリセルトランジスタMTから読み出された読出しオプションデータを、データを退避させたセンスアンプユニットSAU<e1>内のラッチ回路XDL、ADL、及びBDL内に保持させるようにしている。当該ラッチ回路XDL、ADL、及びBDL内のデータは、読出しオプションデータに上書きされるものの、当該上書されたデータは、既にセンスアンプユニットSAU<o2>、SAU<o1>、及びSAU<e2>に退避済みであるため、後の復元動作によって復元することができる。このため、書込み動作中断中の読出し動作において、書込み動作再開に必要なデータを保持したラッチ回路を使用することができる。
また、シーケンサ25は、読出し動作の終了後かつ書込み動作を再開させるコマンド“YYh”の受信前に、センスアンプユニットSAU<e2>内のラッチ回路SDL<e2>、SAU<o1>内のラッチ回路SDL<o1>、及びSAU<o2>内のラッチ回路SDL<o2>に転送されたデータを、それぞれセンスアンプユニットSAU<e1>内のラッチ回路BDL<e1>、ADL<e1>、及びXDL<e1>に転送させるようにしている。これにより、書込み動作が再開する前に、書込み動作の再開に必要なデータを、当該データが保持されていたラッチ回路に復元させることができる。したがって、書込み動作再開に必要なデータが保持されたラッチ回路を使用した読出し動作を実行した後に、書込み動作を再開させることができる。
また、上述の通り、センスアンプユニットSAU<e2>内のラッチ回路SDL<e2>、SAU<o1>内のラッチ回路SDL<o1>、及びSAU<o2>内のラッチ回路SDL<o2>には、それぞれセンスアンプユニットSAU<e1>内のラッチ回路BDL<e1>、ラッチ回路ADL<e1>、及びラッチ回路XDL<e1>に保持されていた、書込み動作の再開に必要なデータが退避されている。このため、読出し動作の際にセンスアンプユニットSAU<e2>、SAU<o1>、及びSAU<o2>でデータが読み出された場合、当該退避されたデータが読出しデータによって上書きされ、失われてしまう可能性がある。第3実施形態では、コントローラ10は、読出し動作において、アドレスADD4内のページ内領域識別情報の値を、アドレスADD3内の転送元のページ内領域識別情報の値と一致させる。こうすることにより、ラッチ回路SDLの退避データを受け入れなかった部分に読出しデータが保持されることになる。こうして、センスアンプユニットSAU<e2>、SAU<o1>、及びSAU<o2>へのデータの読出しが制限されるようにしている。このため、データの読出しによる退避データの消失を防ぐことができる。これにより、読出し動作後に書込み動作を再開させることができる。
また、読出し動作は、1/4ページのサイズのデータを読み出すようにしている。具体的には、センスアンプモジュール28内のセンスアンプユニットSAUは、同数のセンスアンプユニットSAU<e1>、SAU<e2>、SAU<o1>、及びSAU<o2>を含む。これにより、センスアンプユニットSAU<e1>で読出し動作を実行している間にセンスアンプユニットSAU<e2>、SAU<o1>、及びSAU<o2>の読出し動作が制限された場合、全てのセンスアンプユニットSAUで読出し動作を実行させた場合のデータサイズ(16KB)の1/4(4KB)のデータを読み出すことができる。
また、シーケンサ25は、コマンド“ZZh”の受信後、アドレスADD3を受信する。そして、シーケンサ25は、当該アドレスADDに基づいてラッチ回路間の転送動作の転送元及び転送先を特定するようにしている。これにより、センスアンプモジュール28内のラッチ回路ADL、BDL、CDL、DDL、SDL、及びXDL間の任意のラッチ回路間でのデータ転送を容易に実行することができる。
3.4 第3実施形態の変形例
なお、第3実施形態に係る半導体記憶装置は、上述の例に限らず、種々の変形が適用可能である。
なお、第3実施形態に係る半導体記憶装置は、上述の例に限らず、種々の変形が適用可能である。
例えば、第3実施形態に係る半導体記憶装置では、データ退避動作及びデータ復元動作におけるラッチ回路間のデータ転送において、コマンド“ZZh”及びアドレスADD3を発行したが、これに限られない。具体的には、第1実施形態及び第2実施形態の変形例と同様、アドレスADD3を発行することなく、コマンドのみを発行することにより、転送元及び転送先のラッチ回路を指定したデータ転送が実行されてもよい。
図29は、第3実施形態の変形例に係る半導体記憶装置のデータ退避動作を説明するためのコマンドシーケンスである。図29に示すように、コントローラ10は、コマンド“Z0qsh”を発行し、半導体記憶装置20に送信する。コマンド“Z0qsh”は、例えば、ラッチ回路XDL<e1>からラッチ回路SDL<o2>へのデータ転送を指示するためのコマンドである。コマンド“Z0qsh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路XDL<e1>からラッチ回路SDL<o2>へのデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
続いて、コントローラ10は、コマンド“Z1qsh”を発行し、半導体記憶装置20に送信する。コマンド“Z1qsh”は、例えば、ラッチ回路ADL<e1>からラッチ回路SDL<o1>へのデータ転送を指示するためのコマンドである。
続いて、コントローラ10は、コマンド“Z2qsh”を発行し、半導体記憶装置20に送信する。コマンド“Z2qsh”は、例えば、ラッチ回路BDL<e1>からラッチ回路SDL<e2>へのデータ転送を指示するためのコマンドである。
以上で、データ退避動作が終了する。
図30は、第3実施形態の変形例に係る半導体記憶装置のデータ復元動作を説明するためのコマンドシーケンスである。
図30に示すように、コントローラ10は、コマンド“Z2qrh”を発行し、半導体記憶装置20に送信する。コマンド“Z2qrh”は、例えば、ラッチ回路SDL<e2>からラッチ回路BDL<e1>へのデータ転送を指示するためのコマンドである。コマンド“Z2qrh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路SDL<e2>からラッチ回路BDL<e1>へのデータ転送を実行する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
続いて、コントローラ10は、コマンド“Z1qrh”を発行し、半導体記憶装置20に送信する。コマンド“Z1qrh”は、例えば、ラッチ回路SDL<o1>からラッチ回路ADL<e1>へのデータ転送を指示するためのコマンドである。
続いて、コントローラ10は、コマンド“Z0qrh”を発行し、半導体記憶装置20に送信する。コマンド“Z0qrh”は、例えば、ラッチ回路SDL<o2>からラッチ回路XDL<e1>へのデータ転送を指示するためのコマンドである。
以上で、データ復元動作が終了する。
第3実施形態の変形例によれば、より簡便なコマンドシーケンスによってデータ退避動作及び復元動作を実行することが出来る。本効果につき、以下説明する。
任意のラッチ回路間でのデータ転送が想定される場合、第3実施形態で説明した通り、コマンド“ZZh”の発行後にアドレスADD3を発行することで転送元及び転送先のラッチ回路を特定することが有効である。しかしながら、データ転送が実行されるラッチ回路が相互に特定されている場合、アドレスADD3には常に同じ情報が含まれることとなる。毎回変化しない情報は、省略されることが望ましい。
第3実施形態の変形例に係る半導体記憶装置によれば、データ退避動作は、アドレスADD3を受信することなく、コマンド“Z0qsh”、“Z1qsh”、及び“Z2qsh”を受信することにより実行されるようにしている。同様に、データ復元動作は、アドレスADD3を受信することなく、コマンド“Z0qrh”、“Z1qrh”、及び“Z2qrh”を受信することにより実行されるようにしている。これにより、アドレスADD3の発行を削除することができる。このため、より簡便かつ動作速度の速いデータ回復動作及び復元動作を実行することができると共に、ユーザの利便性の向上が期待できる。
4.第4実施形態
次に、第4実施形態に係る半導体記憶装置について説明する。第4実施形態に係る半導体記憶装置は、データ退避動作を行わずに読出し動作を実行し、失われた書込み情報をデータ復元動作によって復元するものである。以下では、第1実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第1実施形態と異なる部分についてのみ説明する。
次に、第4実施形態に係る半導体記憶装置について説明する。第4実施形態に係る半導体記憶装置は、データ退避動作を行わずに読出し動作を実行し、失われた書込み情報をデータ復元動作によって復元するものである。以下では、第1実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第1実施形態と異なる部分についてのみ説明する。
4.1 読出し動作の割込みを伴う書込み動作の概要について
第4実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要について説明する。図31は、第4実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要を示すコマンドシーケンスである。
第4実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要について説明する。図31は、第4実施形態に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要を示すコマンドシーケンスである。
図31に示すように、書込み動作を中断するまでのシーケンスは、第1実施形態と同様であるため、説明を省略する。
書込み動作が中断された後、データ退避動作が実行されることなく、第1実施形態と同様の読出し動作が実行される。この読出し動作において、ラッチ回路XDL、ADL、BDL、CDL、DDL、及びSDLのうちの使用されたものに保持されていたデータは、上書により消失する。データ読出し動作が実行された後、データ復元動作が実行される。なお、データ復元動作の詳細については後述する。
以降の書込み再開動作を実行するシーケンスは、第1実施形態と同様であるため、説明を省略する。以上で、読出し動作の割込みを伴う書込み動作が終了する。
4.2 データ復元動作について
次に、第4実施形態に係る半導体記憶装置のデータ復元動作について説明する。なお、第4実施形態における以下の説明では、ラッチ回路XDL、ADL及びSDLの3つのラッチ回路を使用した読出し動作が実行されたものとし、当該読出し動作が実行される前の状態に復元させる場合のデータ復元動作について説明する。
次に、第4実施形態に係る半導体記憶装置のデータ復元動作について説明する。なお、第4実施形態における以下の説明では、ラッチ回路XDL、ADL及びSDLの3つのラッチ回路を使用した読出し動作が実行されたものとし、当該読出し動作が実行される前の状態に復元させる場合のデータ復元動作について説明する。
図32は、第4実施形態に係る半導体記憶装置のデータ復元動作を説明するためのコマンドシーケンスである。図32に示されるコマンドシーケンスは、第1実施形態において示された図14と同様であるが、書込みデータDinの内容が異なる。
図32に示すように、コントローラ10は、コマンド“80h”を発行し、半導体記憶装置20に送信する。コントローラ10は、例えば5サイクルにわたってアドレスADD2を発行し、半導体記憶装置20に送信する。続いてコントローラ10は、書込みデータDinを半導体記憶装置20に送信する。書込みデータDinは、例えば、最初に書込み動作の実行を指示した際に、コントローラ10から半導体記憶装置20に転送された下位データである。すなわち、当該下位データは、書込み動作中断までに実行されたベリファイの結果を含まない。コントローラ10は、コマンド“11h”を発行し、半導体記憶装置20に送信する。コマンド“11h”がレジスタ24に格納されると、シーケンサ25は、当該ベリファイの結果を含まない下位データのラッチ回路XDLへの書込みを完了する。このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。ラッチ回路XDLへの下位データの書込みが完了した後、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
コントローラ10は、コマンド“ZZh”を発行し、半導体記憶装置20に送信する。コントローラ10は、例えばkサイクルにわたってアドレスADD3を発行し、半導体記憶装置20に送信する。コマンド“ZZh”がレジスタ24に格納されると、シーケンサ25は、ラッチ回路間のデータ転送を実行する。具体的には、例えば、アドレスADD3の転送元のラッチ回路識別情報に“101”が指定され、転送先のラッチ回路識別情報に“000”が指定される。これにより、シーケンサ25は、ラッチ回路XDLに格納された下位データを、ラッチ回路ADLへ転送する。
このときロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。データ転送が終了すると、ロジック制御回路23は、信号/RBを“H”レベルにして、半導体記憶装置20がレディ状態であることをコントローラ10に知らせる。
コントローラ10は、例えばデータ復元動作開始後の動作と同様に、コマンド“80h”、アドレスADD2、書込みデータDin、及びコマンド“11h”を順次発行し、半導体記憶装置20に送信する。ここでの書込みデータDinは、例えば、予めバッファメモリ14に格納されたキャッシュデータである。シーケンサ25は、ラッチ回路XDLへのキャッシュデータの書込みを実行する。
以上で、データ復元動作が終了する。
なお、図32に示す例では、ラッチ回路ADLから消失したデータが、コントローラ10から入力される書込みデータDinと同一のデータ割付で保持されていた場合について説明したが、これに限られない。例えば、ラッチ回路ADLから消失したデータが、コントローラ10から入力される書込みデータDinと異なるデータ割付で保持されていた場合、コントローラ10は、キャッシュデータをラッチ回路XDLに入力する前に、中位データ及び上位データについてもそれぞれラッチ回路BDL及びCDLに入力し直すデータ復元動作を実行する。中位データ及び上位データのラッチ回路BDL及びCDLへのデータ復元動作は、下位データのラッチ回路ADLへのデータ復元動作と、転送先のラッチ回路識別情報を除いて同様である。そして、全てのデータについてのデータ復元動作が完了した後、データ割付変換動作(図示せず)を実行することで、最終的なデータの復元が可能である。
図33は、第4実施形態に係る半導体記憶装置の読出し動作の割込みを伴う書込み動作を説明するためのタイミングチャートである。図33(A)及び図33(B)は、書込み動作中断期間の前後の書込み動作において選択ワード線WLに印加される電圧の大きさが示される。
図33(A)及び図33(B)に示すように、書込み動作中断期間の終了までは、選択ワード線WLには、第1実施形態において示された図10と同様に電圧が印加される。
図33(A)及び図33(B)の例では、書込み動作中断期間の終了後、書込み動作のループが再開する前に、プリベリファイ動作が実行される。プリベリファイ動作は、書込み動作中断前にメモリセルトランジスタMTの閾値電圧がどの程度まで上昇していたかを把握するための動作である。第4実施形態では、書込み動作中断前のベリファイ結果を含むデータが、書込み動作中断期間において失われている。このため、書込み動作を再開させるに際して、プリベリファイ動作を実行する必要がある。
上述の通り、レジスタ24は、書込み動作の際にどのレベルまでベリファイがパスしたかについての情報を保持する。プリベリファイ動作では、レジスタ24に保持された当該情報に基づき、ベリファイ電圧が印加される。図33(A)の例では、書き込み動作中断の直前では“A”レベルのベリファイがパスしている。このため、プリベリファイ動作では、各メモリセルトランジスタMTの閾値電圧が“B”レベルに達しているかを確認することによって、ベリファイ結果を復元することができる。したがって、図33(A)の例におけるプリベリファイ動作では、ベリファイ電圧VBが印加される。当該プリベリファイ動作の実行の結果がデータ復元動作に際してコントローラ10から受信されたデータに反映されることにより、書込み動作中断前のベリファイ結果を含むデータが復元される。
なお、図33(A)の例では、“B”レベルのみを対象としたプリベリファイ動作について説明したが、これに限られない。例えば、図33(B)に示すように、プリベリファイ動作は、“B”レベルに加えて、“C”レベル及び“D”レベルを更に対象として実行されてもよい。この場合、プリベリファイ動作では、ベリファイ電圧VBが印加された後、ベリファイ電圧VC及びVDが続いて印加される。これにより、より高いレベルの書込みが終了していた場合においても、書込み動作中断前のベリファイ結果を含むデータを復元することができる。
プリベリファイ動作の後、第1実施形態において示された図10と同様に、書込み動作のループが再開する。
図34は、第4実施形態に係る半導体記憶装置のデータ退避動作及びデータ復元動作の前後におけるラッチ回路内のデータの変化の一例を示すテーブルである。図34では、データ退避動作の開始前からデータ読出し後までのラッチ回路内のデータの変化が行方向に時系列に示されている。
図34に示すように、データ退避動作が開始される前(書込み動作が中断した直後)では、各ラッチ回路XDL、ADL、BDL、CDL、DDL、及SDLには、それぞれ、キャッシュデータ、下位データ、中位データ、上位データ、データQ、及び上書可能な書込み指示データが格納されている。
データ読出し動作では、ラッチ回路SDL、及びXDL並びにADLには、それぞれ読出しデータ及び読出オプションデータが格納される。そして、ラッチ回路SDLに読み出された読出しデータは、ラッチ回路XDLを介してコントローラ10に出力される。
データ復元動作では、バッファメモリ14に格納されたキャッシュデータ及び下位データがそれぞれラッチ回路XDL及びADLへ転送される。ただし、ラッチ回路ADLへ転送された下位データは、書込み動作中断前のベリファイ結果を含まない(図34では、“(NUP)”を付して他のデータと区別している。)。
その後、書込み動作のループの再開に先立って、プリベリファイ動作が実行される。具体的には、書込み動作中断前のベリファイ結果を含む下位データを生成し、ラッチ回路ADLに格納する。
そして、書込み動作の再開に先立って、下位データ、中位データ、及び上位データに基づく演算処理によって書込み指示データを生成し、ラッチ回路SDLに格納する。以上のデータ復元動作により、ラッチ回路XDL、ADL、BDL、CDL、DDL、及びSDL内のデータは、全て復元する。
4.3 本実施形態に係る効果
第4実施形態によれば、シーケンサ25は、読出し動作において、ラッチ回路内に保持されている書込み動作の再開に必要なデータに読出しデータ及び読出しオプションデータを上書きさせる。これにより、データ退避動作を実行することなく、読出し動作を実行することができる。一方で、データ退避動作が実行されないため、書込み動作中断前のメモリセルトランジスタMTへのデータの書込み状況に関する情報が失われてしまう。つまり、読出し動作が終了した後、ラッチ回路内には、書込み動作を再開させるために必要なデータが保持されていない状態となる。そこで、第4実施形態では、シーケンサ25は、データ復元動作において、メモリセルトランジスタMTに書込まれるべきデータを再度ラッチ回路内に書込ませるようにしている。これにより、書込み動作によってメモリセルトランジスタMTに最終的に書き込まれるべきデータが復元できる。
第4実施形態によれば、シーケンサ25は、読出し動作において、ラッチ回路内に保持されている書込み動作の再開に必要なデータに読出しデータ及び読出しオプションデータを上書きさせる。これにより、データ退避動作を実行することなく、読出し動作を実行することができる。一方で、データ退避動作が実行されないため、書込み動作中断前のメモリセルトランジスタMTへのデータの書込み状況に関する情報が失われてしまう。つまり、読出し動作が終了した後、ラッチ回路内には、書込み動作を再開させるために必要なデータが保持されていない状態となる。そこで、第4実施形態では、シーケンサ25は、データ復元動作において、メモリセルトランジスタMTに書込まれるべきデータを再度ラッチ回路内に書込ませるようにしている。これにより、書込み動作によってメモリセルトランジスタMTに最終的に書き込まれるべきデータが復元できる。
しかしながら、ラッチ回路内には、依然としてメモリセルトランジスタMTが書込み動作の中断までにどのレベルまで書込まれたかについての情報が存在しない。そこで、第4実施形態では、シーケンサ25は、書込み動作の再開後、最初のループに入る前にプリベリファイ動作を実行させるようにしている。このため、メモリセルトランジスタMTがどのレベルまで書込まれたかについての情報をラッチ回路内に復元される。これにより、書込み動作のループを実行する際に、既に書込みが完了したメモリセルトランジスタMTへ更に書込み電圧を印加してしまうといった誤書込み動作を防止することができる。
なお、このようなデータの復元を行うために、コントローラ10は、書込み動作の当初に半導体記憶装置20へ転送した書込みデータを保持しておく必要がある。これにより、書込み動作中に急きょ読出し動作を実行する必要が生じた場合においても、シーケンサ25に上述のデータ復元動作を実行させることができる。
4.4 第4実施形態に係る変形例
なお、第4実施形態に係る半導体記憶装置は、上述の例に限らず、種々の変形が適用可能である。
なお、第4実施形態に係る半導体記憶装置は、上述の例に限らず、種々の変形が適用可能である。
例えば、第4実施形態は、データ退避動作を行わずに読出し動作を実行し、かつデータ復元動作を行わずに書込み動作を再開してもよい。第4実施形態に係る変形例は、具体的には、例えば、読出しデータの他に、ラッチ回路1つ分の読出しオプションデータを生成する必要がある場合に適用される。第4実施形態の変形例における以下の説明では、ラッチ回路ADL及びSDLの2つのラッチ回路を使用した読出し動作が実行されたものとして説明する。
図35は、第4実施形態の変形例に係る半導体記憶装置における読出し動作の割込みを伴う書込み動作の概要を示すコマンドシーケンスである。
図35に示すように、書込み動作を中断するまでのシーケンスは、第1実施形態と同様であるため、説明を省略する。
書込み動作が中断された後、データ退避動作が実行されることなく、第1実施形態と同様の読出し動作が実行される。データ読出し動作が実行された後、データ復元動作が実行されることなく、第1実施形態と同様の書込み再開動作が実行される。
図36は、第4実施形態の変形例に係る半導体記憶装置のデータ退避動作及びデータ復元動作の前後におけるラッチ回路内のデータの変化の一例を示すテーブルである。図36では、データ退避動作の開始前からデータ読出し後までのラッチ回路内のデータの変化が行方向に時系列に示されている。
図36に示すように、データ退避動作が開始される前(書込み動作が中断した直後)では、各ラッチ回路XDL、ADL、BDL、CDL、DDL、及SDLには、それぞれ、キャッシュデータ、下位データ、中位データ、上位データ、データQ、及び上書可能な書込み指示データが格納されている。
データ読出し動作では、ラッチ回路SDL及びADLには、それぞれ読出しデータ及び読出オプションデータが格納される。そして、ラッチ回路SDLに読み出された読出しデータは、ラッチ回路XDLを介してコントローラ10に出力される。
再開後の書込み動作の1ループ目では、データQを考慮しないプログラム動作が実行される。そして、当該1ループ目のベリファイ結果に基づき、データQが生成される。生成されたデータQは、ラッチ回路DDLに格納される。以上の動作により、ラッチ回路XDL、ADL、BDL、CDL、DDL、及びSDL内のデータは、全て復元する。そして、2ループ目以降では、第1書込み動作が実行される。
第4実施形態の変形例に係る半導体記憶装置によれば、シーケンサ25は、読出し動作において、データQが格納されたラッチ回路DDLに読出しオプションデータを上書きするようにしている。データQは、書込み動作における閾値電圧の分布を狭めることができるが、書込み動作を再開させるために必須ではない。このため、再開後の1回目のループでは、データQを使用した第1書込み動作を行うことができないが、シーケンサ25は、データ復元動作及びプリベリファイ動作を実行することなく、書込み動作を再開させることができる。なお、失われたデータQは、書込み動作再開後の最初のループが終了した時点で、ベリファイ結果に基づき復元することができる。このため、再開後の2回目のループ以降の書込み動作では、第1書込み動作を実行することができる。
なお、再開後最初のループから第1書込み動作を実行したい場合は、プリベリファイ動作を実行すればよい。
5.その他の変形例等
実施形態は、上述の第1乃至第4実施形態で述べた形態に限らず、種々の変形が可能である。
実施形態は、上述の第1乃至第4実施形態で述べた形態に限らず、種々の変形が可能である。
5.1 第1変形例
第1変形例に係る半導体記憶装置について説明する。第1変形例に係る半導体記憶装置は、事前にセットフィーチャコマンドを受信することにより、データ退避動作に係るデータの退避先をコントローラ10にするか、センスアンプユニットSAU内にするか、を設定するものである。第1変形例に係る半導体記憶装置は、第1実施形態に係る半導体記憶装置と同様の構成を備える。以下の説明では、第1実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第1実施形態と異なる部分についてのみ説明する。
第1変形例に係る半導体記憶装置について説明する。第1変形例に係る半導体記憶装置は、事前にセットフィーチャコマンドを受信することにより、データ退避動作に係るデータの退避先をコントローラ10にするか、センスアンプユニットSAU内にするか、を設定するものである。第1変形例に係る半導体記憶装置は、第1実施形態に係る半導体記憶装置と同様の構成を備える。以下の説明では、第1実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第1実施形態と異なる部分についてのみ説明する。
図37は、第1変形例に係る半導体記憶装置のセットフィーチャ動作を示すコマンドシーケンスの一例である。図37に示されるセットフィーチャ動作は、例えば、書込み動作が実行される前に、予め実行される。
図37に示すように、コントローラ10は、コマンド“EFh”を発行し、半導体記憶装置20に送信する。コマンド“EFh”は、例えば、半導体記憶装置20に対して、セットフィーチャの実行を命令するコマンドである。セットフィーチャは、例えば、半導体記憶装置20の各種動作を規定するパラメタを変更する動作である。続いて、コントローラ10は、コマンド“CCh”を発行し、半導体記憶装置20に送信する。コマンド“CCh”は、データ退避動作に係るデータの退避先の設定を命令するためのコマンドである。
コントローラ10は、例えば4サイクルにわたってデータB0〜B3を発行し、半導体記憶装置20に送信する。このデータB0〜B3は、例えば、データ退避動作に係るデータの退避先をコントローラ10にするか、センスアンプユニットSAU内にするかを設定するものである。続いて、ロジック制御回路23は、信号/RBを“L”レベルにして、半導体記憶装置20がビジー状態であることをコントローラ10に知らせる。半導体記憶装置20がビジー状態である期間tFEATは、セットフィーチャ動作が行われている期間を示している。期間tFEATにおいて、データ退避動作に係るデータの退避先の設定が更新される。
図38は、第1変形例に係る半導体記憶装置のセットフィーチャ動作においてデータ退避先を設定する情報の一例を示すテーブルである。図38に示されるデータ退避先を設定する情報は、例えば、データB0〜B3に含まれる。図38に示すように、データ退避先を設定する情報は、データ退避先設定情報を含む。具体的には例えば、データ退避先設定情報は、データの退避先としてコントローラ10を設定する場合“0”となり、センスアンプユニットSAUを設定する場合“1”となる。
第1変形例に係る半導体記憶装置は、セットフィーチャコマンドを受信し、データ退避動作に係るデータの退避先を設定するようにしている。これにより、事前に当該設定を行うことにより、シーケンサ25は、コマンド“ZZh”を受信した後のアドレスADD3内において、ページ内領域識別情報が設定されるか否かを事前に判断することができる。このため、同一のコマンド“ZZh”を用いつつ、データ退避先をコントローラ10にするか、センスアンプユニットSAU内にするかを使い分けることができる。したがって、コントローラ10側の負担を軽減することができる。
5.2 第2変形例
第1変形例では、セットフィーチャ動作によってデータ退避先を設定したが、データ退避先の設定の仕方はこれに限られない。以下に示す第2変形例のように、データ退避動作に係るデータの退避先をコントローラ10にするか、センスアンプユニットSAU内にするかを設定する情報を、アドレスADD3内に含めてもよい。第2変形例に係る半導体記憶装置は、第1実施形態に係る半導体記憶装置と同様の構成を備える。以下の説明では、第1実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第1実施形態と異なる部分についてのみ説明する。
第1変形例では、セットフィーチャ動作によってデータ退避先を設定したが、データ退避先の設定の仕方はこれに限られない。以下に示す第2変形例のように、データ退避動作に係るデータの退避先をコントローラ10にするか、センスアンプユニットSAU内にするかを設定する情報を、アドレスADD3内に含めてもよい。第2変形例に係る半導体記憶装置は、第1実施形態に係る半導体記憶装置と同様の構成を備える。以下の説明では、第1実施形態と同様の構成要素には同一の符号を付してその説明を省略し、第1実施形態と異なる部分についてのみ説明する。
図39は、第2変形例に係る半導体記憶装置のラッチ回路間のデータ転送を設定する情報の一例を示すテーブルである。図39に示されるラッチ回路間のデータ転送を設定する情報は、例えば、アドレスADD3に含まれる。図39に示すように、ラッチ回路間のデータ転送を設定する情報は、データ退避先設定情報、転送元及び転送先のラッチ回路識別情報、及び必要に応じてページ内領域識別情報を含む。なお、転送元及び転送先のページ内領域識別情報については、データ退避先設定情報が“0”の場合、すなわちデータ退避動作においてコントローラ10にデータ退避を行う場合には未使用とされる。そして、データ退避先設定情報が“1”の場合、すなわちデータ退避動作においてセンスアンプユニットSAU内にデータ退避を行う場合には、ページ内領域識別情報が設定される。
このように、第2変形例に係る半導体記憶装置は、データ退避先設定情報をアドレスADD3に含めるようにしている。これにより、データ退避動作におけるデータ退避先を状況に応じて柔軟に選択することができる。また、コントローラ10は、セットフィーチャコマンドを事前に発行する必要がないため、ユーザ側で必要な手順を軽減させることができる。
なお、第2変形例に係る半導体記憶装置は、図39に示す例に限らず、図40に示すように、第3実施例において示したような複数のセンスアンプユニットSAUへのデータ退避を伴う場合にも適用可能である。
また、データ退避先設定情報、ページ内領域識別情報及びラッチ回路識別情報は、アドレスADD3内の異なるデータブロックに保持されてもよい。この場合、ページ内領域識別情報及びラッチ回路識別情報は、転送元又は転送先毎に、異なるデータブロックに保持されてもよい。
5.3 第3変形例
また、上述の第1実施形態〜第4実施形態及び第1変形例〜第2変形例に係る半導体記憶装置は、シングルプレーンの場合について説明したが、これに限られない。例えば、第3変形例として、半導体記憶装置20は、1回の書込み動作で2つのメモリセルアレイ21に同時に書込みを実行するマルチプレーンの構成であってもよい。マルチプレーンの構成を有する半導体記憶装置は、例えば、1つのシーケンサ25からの指示に応じて2つのセンスアンプモジュール28を選択的に駆動させ、2つのメモリセルアレイ21のいずれかに対して選択的にデータの書込み及び読出しを実行可能である。このようにいずれか1つのプレーンに対して書込み動作中断中の読出し動作を行う場合、いずれのプレーンに対してデータ退避動作及びデータ復元動作を実行するか、を指定する必要がある。以下の説明では、第3変形例に係る半導体記憶装置20は、2つのプレーン(プレーン0及びプレーン1)を含む構成であるとして説明する。
また、上述の第1実施形態〜第4実施形態及び第1変形例〜第2変形例に係る半導体記憶装置は、シングルプレーンの場合について説明したが、これに限られない。例えば、第3変形例として、半導体記憶装置20は、1回の書込み動作で2つのメモリセルアレイ21に同時に書込みを実行するマルチプレーンの構成であってもよい。マルチプレーンの構成を有する半導体記憶装置は、例えば、1つのシーケンサ25からの指示に応じて2つのセンスアンプモジュール28を選択的に駆動させ、2つのメモリセルアレイ21のいずれかに対して選択的にデータの書込み及び読出しを実行可能である。このようにいずれか1つのプレーンに対して書込み動作中断中の読出し動作を行う場合、いずれのプレーンに対してデータ退避動作及びデータ復元動作を実行するか、を指定する必要がある。以下の説明では、第3変形例に係る半導体記憶装置20は、2つのプレーン(プレーン0及びプレーン1)を含む構成であるとして説明する。
図41は、第3変形例に係る半導体記憶装置のラッチ回路間のデータ転送を設定する情報の一例を示すテーブルである。図41に示されるラッチ回路間のデータ転送を設定する情報は、例えば、アドレスADD3に含まれる。
図41に示すように、ラッチ回路間のデータ転送を設定する情報は、例えば、転送元及び転送先のラッチ回路識別情報及びページ内領域識別情報、並びにプレーン選択情報を含む。プレーン選択情報は、例えば、データ退避動作及びデータ復元動作を実行する対象としてプレーン0のみが選択される場合“00”となり、プレーン1のみが選択される場合“01”となる。また、プレーン0及びプレーン1が同時に選択されるマルチプレーンの場合、“10”となる。
なお、第2変形例に係る半導体記憶装置は、図41に示す例に限らず、図42に示すように、第3実施例において示したような複数のセンスアンプユニットSAUへのデータ退避を伴う場合にも適用可能である。
このように、第3変形例に係る半導体記憶装置は、プレーン選択情報をアドレスADD3に含めるようにしている。これにより、マルチプレーンへの書込み動作が中断された際においても、いずれか一方のプレーンのみからデータの読出しを実行することができる。
5.4 その他
その他、各実施形態及び各変形例において、以下の事項が適用されることが可能である。
その他、各実施形態及び各変形例において、以下の事項が適用されることが可能である。
多値レベルの読み出し動作(リード)において、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.75V〜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.7V、及び3.7V〜4.0Vのいずれかの間にしてもよい。
読み出し動作の時間(tR)としては、例えば25μs〜38μs、38μs〜70μs、及び70μs〜80μsのいずれかの間にしてもよい。
書き込み動作は、プログラム動作及びベリファイ動作を含む。書き込み動作では、プログラム動作時に選択されたワード線に最初に印加される電圧は、例えば13.7V〜14.3Vの間である。これに限定されることなく、例えば13.7V〜14.0V、及び14.0V〜14.7Vのいずれかの間としてもよい。
奇数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧と、偶数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧とを変えてもよい。
プログラム動作をISPP(Incremental Step Pulse Program)方式としたとき、ステップアップの電圧として、例えば0.5V程度が挙げられる。
非選択のワード線に印加される電圧としては、例えば7.0V〜7.3Vの間としてもよい。この場合に限定されることなく、例えば7.3V〜8.4Vの間としてもよく、7.0V以下としてもよい。
非選択のワード線が奇数番目のワード線であるか、又は偶数番目のワード線であるかによって印加するパス電圧を変えてもよい。
書き込み動作の時間(tProg)としては、例えば1700μs〜1800μs、1800μs〜1900μs、及び1900μs〜2000μsのいずれかの間にしてもよい。
消去動作では、半導体基板上部に形成され、かつ、メモリセルが上方に配置されたウェルに最初に印加する電圧は、例えば12V〜13.7Vの間である。この場合に限定されることなく、例えば13.7V〜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〜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などを用いてもよい。
また、メモリセル間にはエアギャップを形成することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1…メモリシステム、10…コントローラ、11…プロセッサ、12…内蔵メモリ、13…NANDインタフェース回路、14…バッファメモリ、15…ホストインタフェース回路、20…半導体記憶装置、21…メモリセルアレイ、22…入出力回路、23…ロジック制御回路、24…レジスタ、25…シーケンサ、26…電圧生成回路、27…ロウデコーダ、28…センスアンプモジュール、30…半導体基板、31〜33、38、42、44…配線層、34…ブロック絶縁膜、35…電荷蓄積層、36…トンネル酸化膜、37…半導体ピラー、39…n+型不純物拡散領域、40…p+型不純物拡散領域、41、43…コンタクトプラグ、50〜58、60〜69、71、80〜87…トランジスタ、70…キャパシタ素子。
Claims (20)
- データを保持可能な第1ラッチ回路を含む第1センスアンプユニットと、
制御部と、を備え、
前記制御部は、
書込み動作の中断後かつ読出し動作を指示する第1コマンドの受信前に、前記第1ラッチ回路に保持され、前記中断した書込み動作によるベリファイ結果を含む第1データを前記第1センスアンプユニットの外部に転送させる第1動作、及び
前記読出し動作の終了後かつ前記中断した書込み動作の再開を指示する第2コマンドの受信前に、前記第1センスアンプユニットの外部に転送された第1データを前記第1ラッチ回路に転送させる第2動作、
を実行させる、半導体記憶装置。 - 前記第1センスアンプユニットからデータを書込まれ又は読み出されるメモリセルを更に備え、
前記制御部は、前記読出し動作の間に、前記メモリセルから読み出されたデータ(読出しオプションデータ)を前記第1ラッチ回路に転送させる動作を更に実行させる、
請求項1記載の半導体記憶装置。 - 前記第1センスアンプユニットは、データを保持可能な第2ラッチ回路を更に含み、
前記第1動作は、前記第2ラッチ回路に保持され、前記中断した書込み動作によるベリファイ結果を含む第2データを前記第1センスアンプユニットの外部に更に転送させ、
前記第2動作は、前記第1センスアンプユニットの外部に転送された第2データを前記第2ラッチ回路に更に転送させる、
請求項1記載の半導体記憶装置。 - 前記第1センスアンプユニットの外部は、前記半導体記憶装置に接続されたコントローラを含む、請求項1記載の半導体記憶装置。
- 前記第1センスアンプユニットの外部は、前記第1センスアンプユニットに接続された第2センスアンプユニットを含む、請求項1記載の半導体記憶装置。
- 前記第1センスアンプユニットは、データを保持可能な第2ラッチ回路を更に含み、
前記第1センスアンプユニットの外部は、前記第1センスアンプユニットに接続された第3センスアンプユニットを更に含み、
前記第1動作は、前記第1データを前記第2センスアンプユニットに転送させ、かつ前記第2ラッチ回路に保持され、前記中断した書込み動作によるベリファイ結果を含む第2データを前記第3センスアンプユニットに更に転送させ、
前記第2動作は、前記第2センスアンプユニットに保持された第1データを前記第1ラッチ回路に転送させ、前記第3センスアンプユニットに保持された第2データを前記第2ラッチ回路に更に転送させる、
請求項5記載の半導体記憶装置。 - 前記制御部は、前記読出し動作において、前記第2センスアンプユニットによるデータの読出しが制限される、請求項5記載の半導体記憶装置。
- 前記読出し動作は、前記半導体記憶装置から、ページサイズの1/2のサイズのデータを読み出す、請求項7記載の半導体記憶装置。
- 前記制御部は、前記読出し動作において、前記第3センスアンプユニットによるデータの読出しが更に制限される、請求項6記載の半導体記憶装置。
- 前記読出し動作は、前記半導体記憶装置から、ページサイズの1/4のサイズのデータを読み出す、請求項9記載の半導体記憶装置。
- 前記半導体記憶装置は、データを保持可能な第3ラッチ回路を更に含み、
前記第1動作は、第3コマンドを受信すると前記第1ラッチ回路から前記第3ラッチ回路へ前記第1データを転送させる動作を含む、
請求項1記載の半導体記憶装置。 - 前記半導体記憶装置は、データを保持可能な第3ラッチ回路を更に含み、
前記第2動作は、第3コマンドを受信すると前記第3ラッチ回路から前記第1ラッチ回路へ前記第1データを転送させる動作を含む、
請求項1記載の半導体記憶装置。 - 前記制御部は、前記第3コマンドに後続して、第1情報及び第2情報を更に受信すると、前記第1情報に基づいて前記第1データの転送元を特定し、前記第2情報に基づいて前記第1データの転送先を特定する、請求項11又は請求項12記載の半導体記憶装置。
- 前記制御部は、前記第3コマンドに後続して第3情報を更に受信すると、前記第3情報に基づいて、前記第1センスアンプユニットの外部が前記第1センスアンプユニットに接続された第2センスアンプユニットであるか否かを特定する、請求項13記載の半導体記憶装置。
- 前記半導体記憶装置は、第1プレーン及び第2プレーンを含み、
前記第1プレーン及び前記第2プレーンの各々は、前記第1センスアンプユニットを備え、
前記制御部は、前記第3コマンドに後続して第4情報を更に受信すると、前記第4情報に基づいて、前記第1動作及び前記第2動作を前記第1プレーンに対して実行するか、前記第2プレーンに対して実行するかを特定する、請求項13記載の半導体記憶装置。 - 前記制御部は、前記第1情報及び前記第2情報を異なるサイクルで受信する、請求項13記載の半導体記憶装置。
- 請求項11又は請求項12記載の半導体記憶装置と、
前記第1コマンド、前記第2コマンド、及び前記第3コマンドを出力可能なコントローラと、
を備えるメモリシステム。 - データを保持可能な第1ラッチ回路を含む第1センスアンプユニットと、
制御部と、を備え、
前記制御部は、
読出し動作の終了後かつ中断された書込み動作の再開を指示するコマンドの受信前に、前記第1センスアンプユニットの外部に保持された第1データを前記第1ラッチ回路に転送させる第1動作、及び
前記再開された書込み動作においてプリベリファイを行う第2動作
を実行させる、半導体記憶装置。 - データを保持可能な第1ラッチ回路及び第2ラッチ回路と、
コマンド、及び前記コマンドに後続し、前記第1ラッチ回路を特定する第1情報並びに前記第2ラッチ回路を特定する第2情報を受信すると、前記第1ラッチ回路に保持されたデータを前記第2ラッチ回路に転送する動作を実行させる制御部と、
を備える半導体記憶装置。 - 前記制御部は、前記コマンドに後続して第3情報を更に受信すると、前記第3情報に基づいて、前記第1ラッチ回路及び前記第2ラッチ回路が同一のセンスアンプユニット内に含まれるか否かを特定する、請求項19記載の半導体記憶装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016177985A JP2018045741A (ja) | 2016-09-12 | 2016-09-12 | 半導体記憶装置及びメモリシステム |
TW106104394A TWI665682B (zh) | 2016-09-12 | 2017-02-10 | Semiconductor memory device and memory system |
US15/445,987 US10026491B2 (en) | 2016-09-12 | 2017-03-01 | Semiconductor memory device and memory system |
CN201710136131.6A CN107818809B (zh) | 2016-09-12 | 2017-03-08 | 半导体存储装置及存储器系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016177985A JP2018045741A (ja) | 2016-09-12 | 2016-09-12 | 半導体記憶装置及びメモリシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018045741A true JP2018045741A (ja) | 2018-03-22 |
Family
ID=61560320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016177985A Pending JP2018045741A (ja) | 2016-09-12 | 2016-09-12 | 半導体記憶装置及びメモリシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US10026491B2 (ja) |
JP (1) | JP2018045741A (ja) |
CN (1) | CN107818809B (ja) |
TW (1) | TWI665682B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021180062A (ja) * | 2020-05-15 | 2021-11-18 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019029045A (ja) * | 2017-07-26 | 2019-02-21 | 東芝メモリ株式会社 | 半導体記憶装置 |
US10481816B2 (en) * | 2017-10-18 | 2019-11-19 | Western Digital Technologies, Inc. | Dynamically assigning data latches |
JP2019204565A (ja) * | 2018-05-22 | 2019-11-28 | 東芝メモリ株式会社 | 半導体記憶装置及びメモリシステム |
JP2020042889A (ja) * | 2018-09-13 | 2020-03-19 | キオクシア株式会社 | 半導体記憶装置 |
CN112655044B (zh) * | 2018-11-06 | 2023-12-19 | 铠侠股份有限公司 | 半导体存储装置 |
JP2020091930A (ja) * | 2018-12-07 | 2020-06-11 | キオクシア株式会社 | 半導体記憶装置 |
JP7313889B2 (ja) | 2019-04-24 | 2023-07-25 | キオクシア株式会社 | 半導体記憶装置及びメモリシステム |
KR20200139496A (ko) * | 2019-06-04 | 2020-12-14 | 에스케이하이닉스 주식회사 | 메모리 장치 및 이의 동작 방법 |
US10832789B1 (en) * | 2019-06-13 | 2020-11-10 | Western Digital Technologies, Inc. | System countermeasure for read operation during TLC program suspend causing ADL data reset with XDL data |
JP2021072313A (ja) * | 2019-10-29 | 2021-05-06 | キオクシア株式会社 | 半導体記憶装置 |
KR20210061171A (ko) * | 2019-11-19 | 2021-05-27 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
JP2021152779A (ja) * | 2020-03-24 | 2021-09-30 | キオクシア株式会社 | 半導体記憶装置 |
JP2021174564A (ja) * | 2020-04-24 | 2021-11-01 | キオクシア株式会社 | 半導体記憶装置 |
US20230037665A1 (en) * | 2021-08-04 | 2023-02-09 | Samsung Electronics Co., Ltd. | Method and apparatus for configuring a non-volatile memory device without data transfer |
EP4207199A3 (en) * | 2021-12-28 | 2023-08-09 | Samsung Electronics Co., Ltd. | Memory device, memory system including the same, and operating method of the memory system |
US12087366B2 (en) | 2022-08-18 | 2024-09-10 | Yangtze Memory Technologies Co., Ltd. | Memory device and read operation during suspension of program operation thereof |
TWI847690B (zh) * | 2023-05-12 | 2024-07-01 | 慧榮科技股份有限公司 | 記憶體控制器、橋接裝置及指令與資料轉移方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100297726B1 (ko) * | 1999-04-29 | 2001-09-26 | 윤종용 | 기입 인터럽트 기입 기능을 갖는 동기식 디램반도체 장치 |
US7120051B2 (en) * | 2004-12-14 | 2006-10-10 | Sandisk Corporation | Pipelined programming of non-volatile memories using early data |
JP5367210B2 (ja) * | 2006-01-20 | 2013-12-11 | 株式会社東芝 | 半導体記憶装置 |
KR100816748B1 (ko) * | 2006-03-16 | 2008-03-27 | 삼성전자주식회사 | 프로그램 서스펜드/리줌 모드를 지원하는 상 변화 메모리장치 및 그것의 프로그램 방법 |
US8850103B2 (en) * | 2009-08-28 | 2014-09-30 | Microsoft Corporation | Interruptible NAND flash memory |
US8645637B2 (en) * | 2010-11-16 | 2014-02-04 | Micron Technology, Inc. | Interruption of write memory operations to provide faster read access in a serial interface memory |
US9792989B2 (en) * | 2013-02-07 | 2017-10-17 | Toshiba Memory Corporation | Memory system including nonvolatile memory |
JP2014186787A (ja) * | 2013-03-25 | 2014-10-02 | Toshiba Corp | 不揮発性半導体記憶装置、メモリコントローラ、及びメモリシステム |
JP6304007B2 (ja) * | 2014-12-09 | 2018-04-04 | 株式会社デンソー | マイクロコントローラ |
-
2016
- 2016-09-12 JP JP2016177985A patent/JP2018045741A/ja active Pending
-
2017
- 2017-02-10 TW TW106104394A patent/TWI665682B/zh active
- 2017-03-01 US US15/445,987 patent/US10026491B2/en active Active
- 2017-03-08 CN CN201710136131.6A patent/CN107818809B/zh active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021180062A (ja) * | 2020-05-15 | 2021-11-18 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US11868654B2 (en) | 2020-05-15 | 2024-01-09 | Renesas Electronics Corporation | Semiconductor device |
JP7461794B2 (ja) | 2020-05-15 | 2024-04-04 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
Also Published As
Publication number | Publication date |
---|---|
TWI665682B (zh) | 2019-07-11 |
TW201812750A (zh) | 2018-04-01 |
CN107818809A (zh) | 2018-03-20 |
CN107818809B (zh) | 2021-06-25 |
US10026491B2 (en) | 2018-07-17 |
US20180075917A1 (en) | 2018-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI665682B (zh) | Semiconductor memory device and memory system | |
US10643693B2 (en) | Semiconductor memory device and memory system | |
JP6783682B2 (ja) | 半導体記憶装置及びメモリシステム | |
US12096628B2 (en) | Semiconductor memory device | |
JP5072723B2 (ja) | 不揮発性半導体記憶装置 | |
US9761307B2 (en) | Semiconductor memory device | |
JP4510072B2 (ja) | 不揮発性半導体記憶装置とその書き込み方法 | |
US10796764B2 (en) | Semiconductor memory device | |
JP2013200932A (ja) | 不揮発性半導体記憶装置 | |
JP2012133833A (ja) | 不揮発性半導体記憶装置 | |
TWI713034B (zh) | 快閃記憶體及其控制方法 | |
JP2010218623A (ja) | 不揮発性半導体記憶装置 | |
US10014064B2 (en) | Non-volatile semiconductor storage device | |
JP6682471B2 (ja) | 半導体記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20170525 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20180831 |