JP2023137230A - 半導体記憶装置 - Google Patents
半導体記憶装置 Download PDFInfo
- Publication number
- JP2023137230A JP2023137230A JP2022043340A JP2022043340A JP2023137230A JP 2023137230 A JP2023137230 A JP 2023137230A JP 2022043340 A JP2022043340 A JP 2022043340A JP 2022043340 A JP2022043340 A JP 2022043340A JP 2023137230 A JP2023137230 A JP 2023137230A
- Authority
- JP
- Japan
- Prior art keywords
- data
- read
- holding
- unit
- output
- 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
- 239000004065 semiconductor Substances 0.000 title claims abstract description 110
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 24
- 230000000052 comparative effect Effects 0.000 description 15
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 13
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 12
- 239000004020 conductor Substances 0.000 description 12
- 238000009826 distribution Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 12
- 102100040844 Dual specificity protein kinase CLK2 Human genes 0.000 description 11
- 101000749291 Homo sapiens Dual specificity protein kinase CLK2 Proteins 0.000 description 11
- 238000000034 method Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 239000000758 substrate Substances 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 230000007423 decrease Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 239000003990 capacitor Substances 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 1
- 229920005591 polysilicon Polymers 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
Images
Classifications
-
- 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/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1063—Control signal output circuits, e.g. status or busy flags, feedback command signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5642—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing 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/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1039—Read-write modes for single port memories, i.e. having either a random port or a serial port using pipelining techniques, i.e. using latches between functional memory parts, e.g. row/column decoders, I/O buffers, sense amplifiers
-
- 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/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/106—Data output 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/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1066—Output synchronization
-
- 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/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1069—I/O lines read out arrangements
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
- G11C7/222—Clock generating, synchronizing or distributing circuits within memory device
-
- 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/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2272—Latency related aspects
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【課題】読み出しデータの出力を安定して行うことのできる半導体記憶装置を提供する。【解決手段】半導体記憶装置2のシーケンサ41は、最初に所定回数だけ受信されたそれぞれの読み出し信号に対応するデータとして、メモリコントローラ1が要求するデータとは異なる非正規データを、第2保持部520から出力部へと送信させ、その後に受信された読み出し信号に対応するデータとして、メモリコントローラ1が要求するデータである正規データを、第2保持部520から前記出力部へと送信させるものである。シーケンサ41は、第2保持部520に保持されている複数のデータのうち、出力部に向けて次に送信されるデータ、の保持位置を示すリードポインタRptrを、上記の所定回数に応じて予め調整しておくことで、第2保持部520から非正規データを送信させる。【選択図】図13
Description
本発明の実施形態は、半導体記憶装置に関する。
例えばNAND型フラッシュメモリのような半導体記憶装置は、メモリコントローラから送信される信号に応じて読み出しデータを出力する。
開示された実施形態によれば、読み出しデータの出力を安定して行うことのできる半導体記憶装置が提供される。
実施形態に係る半導体記憶装置は、データを記憶するメモリセルアレイと、メモリセルアレイから読み出されたデータを一時的に複数保持する保持部と、保持部から繰り返し送信されるデータを外部のメモリコントローラに出力する出力部と、メモリコントローラから、データを読み出すための読み出し信号を繰り返し受信する受信部と、それぞれの読み出し信号に対応して、保持部から出力部へとデータを送信させる制御部と、を備える。制御部は、受信部によって最初に所定回数だけ受信されたそれぞれの読み出し信号に対応するデータとして、メモリコントローラが要求するデータとは異なる非正規データを、保持部から出力部へと送信させ、受信部によってその後に受信された読み出し信号に対応するデータとして、メモリコントローラが要求するデータである正規データを、保持部から出力部へと送信させるものである。制御部は、保持部に保持されている複数のデータのうち、出力部に向けて次に送信されるデータ、の保持位置を示すリードポインタを、所定回数に応じて予め調整しておくことで、保持部から非正規データを送信させる。
以下、添付図面を参照しながら本実施形態について説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を付して、重複する説明は省略する。
本実施形態に係る半導体記憶装置2は、NAND型フラッシュメモリとして構成された不揮発性の記憶装置である。図1には、半導体記憶装置2を含むメモリシステムの構成例がブロック図として示されている。このメモリシステムは、メモリコントローラ1と、半導体記憶装置2とを備える。
尚、実際のメモリシステムにおいては、図2に示されるように、1つのメモリコントローラ1に対し複数の半導体記憶装置2が設けられている。図1においては、複数ある半導体記憶装置2のうちの1つのみが図示されている。半導体記憶装置2の具体的な構成については後に説明する。
このメモリシステムは、不図示のホストと接続可能である。ホストは、例えば、パーソナルコンピュータや携帯端末等の電子機器である。メモリコントローラ1は、ホストからの書き込みリクエストに従って半導体記憶装置2へのデータの書き込みを制御する。また、メモリコントローラ1は、ホストからの読み出しリクエストに従って半導体記憶装置2からのデータの読み出しを制御する。
メモリコントローラ1と半導体記憶装置2との間では、チップイネーブル信号/CE、レディービジー信号R/B、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号/WE、リードイネーブル信号/RE、RE、ライトプロテクト信号/WP、データである信号DQ<7:0>、データストローブ信号DQS、/DQS、の各信号が送受信される。
チップイネーブル信号/CEは、半導体記憶装置2をイネーブルにするための信号である。レディービジー信号R/Bは、半導体記憶装置2がレディ状態であるか、ビジー状態であるかを示すための信号である。「レディ状態」とは、外部からの命令を受け付ける状態である。「ビジー状態」とは、外部からの命令を受け付けない状態である。
図2に示されるように、複数の半導体記憶装置2のそれぞれには、チップイネーブル信号/CEが個別に送信される。図2においては、それぞれのチップイネーブル信号/CEを互いに区別し得るよう、、例えば「/CE0」のように末尾に番号が付してある。
同様に、複数の半導体記憶装置2のそれぞれからは、レディービジー信号R/Bが個別に送信される。図2においては、それぞれのレディービジー信号R/Bを互いに区別し得るよう、例えば「R/B0」のように末尾に番号が付してある。
チップイネーブル信号/CEやレディービジー信号R/B以外の信号(コマンドラッチイネーブル信号CLE等)については、複数の半導体記憶装置2で共通となっている信号線を介して、メモリコントローラ1と半導体記憶装置2との間で送受信される。メモリコントローラ1は、個別のチップイネーブル信号/CEを用いて、通信の対象となる半導体記憶装置2を特定する。
コマンドラッチイネーブル信号CLEは、信号DQ<7:0>がコマンドであることを示す信号である。アドレスラッチイネーブル信号ALEは、信号DQ<7:0>がアドレスであることを示す信号である。ライトイネーブル信号/WEは、受信した信号を半導体記憶装置2に取り込むための信号であり、メモリコントローラ1によりコマンド、アドレス、及びデータを受信する都度アサートされる。メモリコントローラ1は、信号/WEが“L(Low)”レベルである間に信号DQ<7:0>を取り込むよう半導体記憶装置2に指示する。
リードイネーブル信号/REは、メモリコントローラ1が、半導体記憶装置2からデータを読み出すための信号である。信号REは信号/REの相補信号である。これらは例えば、信号DQ<7:0>を出力する際の半導体記憶装置2の動作タイミングを制御するために使用される。ライトプロテクト信号/WPは、データ書き込み及び消去の禁止を半導体記憶装置2に指示するための信号である。信号DQ<7:0>は、半導体記憶装置2とメモリコントローラ1との間で送受信されるデータの実体であり、コマンド、アドレス、及びデータを含む。データストローブ信号DQSは、信号DQ<7:0>の入出力のタイミングを制御するための信号である。信号/DQSは信号DQSの相補信号である。
メモリコントローラ1は、RAM11と、プロセッサ12と、ホストインターフェイス13と、ECC回路14と、メモリインターフェイス15と、を備える。RAM11、プロセッサ12、ホストインターフェイス13、ECC回路14、及びメモリインターフェイス15は、互いに内部バス16で接続されている。
ホストインターフェイス13は、ホストから受信したリクエスト、ユーザデータ(書き込みデータ)等を内部バス16に出力する。また、ホストインターフェイス13は、半導体記憶装置2から読み出されたユーザデータ、プロセッサ12からの応答等をホストへ送信する。
メモリインターフェイス15は、プロセッサ12の指示に基づいて、ユーザデータ等を半導体記憶装置2へ書き込む処理、及び、半導体記憶装置2から読み出す処理を制御する。
プロセッサ12は、メモリコントローラ1を統括的に制御する。プロセッサ12は、例えばCPUやMPU等である。プロセッサ12は、ホストからホストインターフェイス13経由でリクエストを受けた場合に、そのリクエストに従った制御を行う。例えば、プロセッサ12は、ホストからのリクエストに従って、半導体記憶装置2へのユーザデータ及びパリティの書き込みをメモリインターフェイス15へ指示する。また、プロセッサ12は、ホストからのリクエストに従って、半導体記憶装置2からのユーザデータ及びパリティの読み出しをメモリインターフェイス15へ指示する。
プロセッサ12は、RAM11に蓄積されるユーザデータに対して、半導体記憶装置2上の格納領域(メモリ領域)を決定する。ユーザデータは、内部バス16経由でRAM11に格納される。プロセッサ12は、メモリ領域の決定を、書き込み単位であるページ単位のデータ(ページデータ)に対して実施する。半導体記憶装置2の1ページに格納されるユーザデータのことを、以下では「ユニットデータ」とも称する。ユニットデータは、一般的には符号化されて、符号語として半導体記憶装置2に格納される。本実施形態では、符号化は必須ではない。メモリコントローラ1は、符号化せずにユニットデータを半導体記憶装置2に格納してもよいが、図1では、一構成例として符号化を行う構成を示している。メモリコントローラ1が符号化を行わない場合には、ページデータはユニットデータと一致する。また、1つのユニットデータに基づいて1つの符号語が生成されてもよいし、ユニットデータが分割された分割データに基づいて1つの符号語が生成されてもよい。また、複数のユニットデータを用いて1つの符号語が生成されてもよい。
プロセッサ12は、ユニットデータごとに書き込み先の半導体記憶装置2のメモリ領域を決定する。半導体記憶装置2のメモリ領域には物理アドレスが割当てられている。プロセッサ12は、ユニットデータの書き込み先のメモリ領域を、物理アドレスを用いて管理する。プロセッサ12は、決定したメモリ領域(物理アドレス)を指定してユーザデータを半導体記憶装置2へ書き込むようメモリインターフェイス15へ指示する。プロセッサ12は、ユーザデータの論理アドレス(ホストが管理する論理アドレス)と物理アドレスとの対応を管理する。プロセッサ12は、ホストからの論理アドレスを含む読み出しリクエストを受信した場合は、論理アドレスに対応する物理アドレスを特定し、物理アドレスを指定してユーザデータの読み出しをメモリインターフェイス15へ指示する。
ECC回路14は、RAM11に格納されたユーザデータを符号化して、符号語を生成する。また、ECC回路14は、半導体記憶装置2から読み出された符号語を復号する。ECC回路14は、例えばユーザデータに付与されたチェックサム等を利用することで、データにおけるエラーの検出、及び当該エラーの訂正を行う。
RAM11は、ホストから受信したユーザデータを半導体記憶装置2へ記憶するまでに一時格納したり、半導体記憶装置2から読み出したデータをホストへ送信するまでに一時格納したりする。RAM11は、例えば、SRAMやDRAM等の汎用メモリである。
図1では、メモリコントローラ1が、ECC回路14とメモリインターフェイス15をそれぞれ備える構成例が示されている。しかしながら、ECC回路14がメモリインターフェイス15に内蔵されていてもよい。また、ECC回路14が、半導体記憶装置2に内蔵されていてもよい。図1に示される各要素の具体的な構成や配置は、特に限定されない。
ホストから書き込みリクエストを受信した場合、図1のメモリシステムは次のように動作する。プロセッサ12は、書き込み動作の対象となるデータをRAM11に一時記憶させる。プロセッサ12は、RAM11にストアされたデータを読み出し、ECC回路14に入力する。ECC回路14は、入力されたデータを符号化し、符号語をメモリインターフェイス15に入力する。メモリインターフェイス15は、入力された符号語を半導体記憶装置2に書き込む。
ホストから読み出しリクエストを受信した場合、図1のメモリシステムは次のように動作する。メモリインターフェイス15は、半導体記憶装置2から読み出した符号語をECC回路14に入力する。ECC回路14は、入力された符号語を復号し、復号されたデータをRAM11にストアする。プロセッサ12は、RAM11にストアされたデータを、ホストインターフェイス13を介してホストに送信する。
半導体記憶装置2の構成について説明する。図3に示されるように、半導体記憶装置2は、2つのプレーンPL1、PL2と、入出力回路21と、ロジック制御回路22と、シーケンサ41と、レジスタ42と、電圧生成回路43と、入出力用パッド群31と、ロジック制御用パッド群32と、電源入力用端子群33と、を備えている。
プレーンPL1は、メモリセルアレイ110と、センスアンプ120と、ロウデコーダ130と、を備えている。また、プレーンPL2は、メモリセルアレイ210と、センスアンプ220と、ロウデコーダ230と、を備えている。プレーンPL1の構成とプレーンPL2の構成とは互いに同一である。つまり、メモリセルアレイ110の構成とメモリセルアレイ210の構成とは互いに同一であり、センスアンプ120の構成とセンスアンプ220の構成とは互いに同一であり、ロウデコーダ130の構成とロウデコーダ230の構成とは互いに同一である。半導体記憶装置2に設けられているプレーンの数は、本実施形態のように2つであってもよいが、1つでもよく、3つ以上であってもよい。
メモリセルアレイ110及びメモリセルアレイ210は、データを記憶する部分である。メモリセルアレイ110及びメモリセルアレイ210のそれぞれは、ワード線及びビット線に関連付けられた複数のメモリセルトランジスタを含んでいる。これらの具体的な構成については後に説明する。
入出力回路21は、メモリコントローラ1との間で、信号DQ<7:0>、及び、データストローブ信号DQS、/DQSを送受信する。入出力回路21は、信号DQ<7:0>内のコマンド及びアドレスをレジスタ42に転送する。また、入出力回路21は、書き込みデータ及び読み出しデータを、センスアンプ120やセンスアンプ220との間で送受信する。入出力回路21は、メモリコントローラ1からのコマンド等を受信する「入力回路」としての機能と、メモリコントローラ1にデータを出力する「出力回路」としての機能と、の両方を有している。このような態様に換えて、入力回路と出力回路とが互いに別の回路として構成されている態様としてもよい。
ロジック制御回路22は、メモリコントローラ1からチップイネーブル信号/CE、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号/WE、リードイネーブル信号RE、/RE、及びライトプロテクト信号/WPを受信する。また、ロジック制御回路22は、レディービジー信号R/Bをメモリコントローラ1に転送して、半導体記憶装置2の状態を外部に通知する。
入出力回路21及びロジック制御回路22は、いずれも、メモリコントローラ1との間で信号が入出力される部分として構成された回路である。つまり、入出力回路21及びロジック制御回路22は、半導体記憶装置2のインターフェイス回路として設けられている。
シーケンサ41は、メモリコントローラ1から半導体記憶装置2へと入力された制御信号に基づいて、プレーンPL1、PL2や電圧生成回路43等の各部の動作を制御する。シーケンサ41は、メモリセルアレイ110、210等の動作を制御する部分であり、半導体記憶装置2の「制御部」に該当する。シーケンサ41とロジック制御回路22の両方を上記の「制御部」と見なすこともできる。
レジスタ42は、コマンドやアドレスを一時的に保持する部分である。レジスタ42は、プレーンPL1、PL2のそれぞれの状態を示すステータス情報をも保持する部分となっている。ステータス情報は、メモリコントローラ1からの要求に応じて、状態信号として入出力回路21からメモリコントローラ1へと出力される。
電圧生成回路43は、シーケンサ41からの指示に基づき、メモリセルアレイ110、210におけるデータの書き込み動作、読み出し動作、及び、消去動作のそれぞれに必要な電圧を生成する部分である。このような電圧には、例えば、後述のワード線WLに対し印加されるVPGMやVPASS_PGM、VPASS_READのような電圧や、後述のビット線BLに印加される電圧等が含まれる。電圧生成回路43は、プレーンPL1及びプレーンPL2が互いに並列動作し得るように、各ワード線WLやビット線BL等のそれぞれに対し個別に電圧を印加することが可能となっている。
入出力用パッド群31は、メモリコントローラ1と入出力回路21との間で各信号の送受信を行うための、複数の端子(パッド)が設けられた部分である。それぞれの端子は、信号DQ<7:0>、及び、データストローブ信号DQS、/DQSのそれぞれに対応して個別に設けられている。
ロジック制御用パッド群32は、メモリコントローラ1とロジック制御回路22との間で各信号の送受信を行うための、複数の端子(パッド)が設けられた部分である。それぞれの端子は、チップイネーブル信号/CE、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号/WE、リードイネーブル信号RE、/RE、ライトプロテクト信号/WP、及び、レディービジー信号R/Bのそれぞれに対応して個別に設けられている。
電源入力用端子群33は、半導体記憶装置2の動作に必要な各電圧の印加を受けるための、複数の端子が設けられた部分である。それぞれの端子に印加される電圧には、電源電圧Vcc、VccQ、Vpp、及び接地電圧Vssが含まれる。
電源電圧Vccは、動作電源として外部から与えられる回路電源電圧であり、例えば3.3V程度の電圧である。電源電圧VccQは、例えば1.2Vの電圧である。電源電圧VccQは、メモリコントローラ1と半導体記憶装置2との間で信号を送受信する際に用いられる電圧である。電源電圧Vppは、電源電圧Vccよりも高圧の電源電圧であり、例えば12Vの電圧である。
メモリセルアレイ110、210へデータを書き込んだり、データを消去したりする際には、20V程度の高い電圧(VPGM)が必要となる。この際に、約3.3Vの電源電圧Vccを電圧生成回路43の昇圧回路で昇圧するよりも、約12Vの電源電圧Vppを昇圧するほうが、高速かつ低消費電力で所望の電圧を生成することができる。一方で、例えば、高電圧を供給することができない環境において半導体記憶装置2が用いられる場合、電源電圧Vppには電圧が供給されなくともよい。電源電圧Vppが供給されない場合であっても、半導体記憶装置2は、電源電圧Vccが供給されていれば、各種の動作を実行することができる。すなわち、電源電圧Vccは、半導体記憶装置2に標準的に供給される電源であり、電源電圧Vppは、例えば使用環境に応じて追加的・任意的に供給される電源である。
プレーンPL1、PL2の構成について説明する。尚、先に述べたように、プレーンPL1の構成とプレーンPL2の構成とは互いに同一である。このため、以下ではプレーンPL1の構成についてのみ説明し、プレーンPL2の構成については図示及び説明を省略する。
図4には、プレーンPL1に設けられたメモリセルアレイ110の構成が、等価回路図として示されている。メモリセルアレイ110は複数のブロックBLKにより構成されているのであるが、図4においては、これらのうちの1つのブロックBLKのみが図示されている。メモリセルアレイ110が有する他のブロックBLKの構成も、図4に示されるものと同じである。
図4に示されるように、ブロックBLKは、例えば4つのストリングユニットSU(SU0~SU3)を含む。また各々のストリングユニットSUは、複数のNANDストリングNSを含む。NANDストリングNSの各々は、例えば8個のメモリセルトランジスタMT(MT0~MT7)と、選択トランジスタST1、ST2とを含む。
尚、メモリセルトランジスタMTの個数は8個に限られず、例えば、32個、48個、64個、96個でもよい。例えばカットオフ特性を高めるために、選択トランジスタST1、ST2のそれぞれが、単一ではなく複数のトランジスタにより構成されていてもよい。さらに、メモリセルトランジスタMTと選択トランジスタST1、ST2との間には、ダミーセルトランジスタが設けられていてもよい。
メモリセルトランジスタMTは、選択トランジスタST1と選択トランジスタST2との間において、直列接続されるようにして配置されている。一端側のメモリセルトランジスタMT7が、選択トランジスタST1のソースに接続され、他端側のメモリセルトランジスタMT0が、選択トランジスタST2のドレインに接続されている。
ストリングユニットSU0~SU3の各々の選択トランジスタST1のゲートは、それぞれセレクトゲート線SGD0~SGD3に共通接続されている。選択トランジスタST2のゲートは、同一のブロックBLK内にある複数のストリングユニットSU間で同一のセレクトゲート線SGSに共通接続されている。同一のブロックBLK内にあるメモリセルトランジスタMT0~MT7のゲートは、それぞれワード線WL0~WL7に共通接続される。すなわち、ワード線WL0~WL7及びセレクトゲート線SGSは、同一ブロックBLK内の複数のストリングユニットSU0~SU3間で共通となっているのに対し、セレクトゲート線SGDは、同一ブロックBLK内であってもストリングユニットSU0~SU3毎に個別に設けられている。
メモリセルアレイ110には、m本のビット線BL(BL0、BL1、・・・、BL(m-1))が設けられている。上記の「m」は、1つのストリングユニットSUに含まれるNANDストリングNSの本数を表す整数である。それぞれのNANDストリングNSのうち、選択トランジスタST1のドレインは、対応するビット線BLに接続されている。選択トランジスタST2のソースは、ソース線SLに接続されている。ソース線SLは、ブロックBLKが有する複数の選択トランジスタST2のソースに対し、共通接続されている。
同一のブロックBLK内にある複数のメモリセルトランジスタMTに記憶されているデータは、一括して消去される。一方、データの読み出し及び書き込みは、1つのワード線WLに接続され、かつ1つのストリングユニットSUに属する複数のメモリセルトランジスタMTに対して一括して行われる。それぞれのメモリセルは、上位ビット、中位ビット、及び下位ビットからなる3ビットのデータを保持することができる。
つまり、本実施形態に係る半導体記憶装置2は、メモリセルトランジスタMTへのデータの書き込み方式として、1つのメモリセルトランジスタMTに3ビットデータを記憶させるTLC方式を採用している。このような態様に換えて、メモリセルトランジスタMTへのデータの書き込み方式としては、1つのメモリセルトランジスタMTに2ビットデータを記憶させるMLC方式等を採用してもよい。1つのメモリセルトランジスタMTに記憶されるデータのビット数は特に限定されない。
尚、以下の説明では、1つのワード線WLに接続され、かつ1つのストリングユニットSUに属する複数のメモリセルトランジスタMTが記憶する1ビットデータの集合のことを「ページ」と称する。図4では、上記のような複数のメモリセルトランジスタMTからなる集合の一つに、符号「MG」が付してある。
本実施形態のように、1つのメモリセルトランジスタMTに3ビットのデータが記憶される場合、1つのストリングユニットSU内で共通のワード線WLに接続された複数のメモリセルトランジスタMTの集合は、3ページ分のデータを記憶することができる。これらのうち、下位ビットデータの集合からなるページのことを以下では「下位ページ」とも称し、下位ページのデータのことを以下では「下位ページデータ」とも称する。同様に、中位ビットデータの集合からなるページのことを以下では「中位ページ」とも称し、中位ページのデータのことを以下では「中位ページデータ」とも称する。上位ビットデータの集合からなるページのことを以下では「上位ページ」とも称し、上位ページのデータのことを以下では「上位ページデータ」とも称する。
図5には、メモリセルアレイ110及びその周辺の構成が、模式的な断面図として示されている。同図に示されるように、メモリセルアレイ110では、導電体層320の上に複数のNANDストリングNSが形成されている。導電体層320は、埋め込みソース線(BSL)とも称されるものであり、図4のソース線SLに該当するものである。
導電体層320の上方には、セレクトゲート線SGSとして機能する複数の配線層333、ワード線WLとして機能する複数の配線層332、及びセレクトゲート線SGDとして機能する複数の配線層331が積層されている。積層された配線層333、332、331のそれぞれの間には、不図示の絶縁層が配置されている。
メモリセルアレイ110には複数のメモリホール334が形成されている。メモリホール334は、上記の配線層333、332、331、及びこれらの間にある不図示の絶縁層を上下方向に貫通しており、且つ導電体層320に達する穴である。メモリホール334の側面には、ブロック絶縁膜335、電荷蓄積層336、及びゲート絶縁膜337が順次形成され、更にその内側に導電体柱338が埋め込まれている。導電体柱338は、例えばポリシリコンからなり、NANDストリングNSに含まれるメモリセルトランジスタMT並びに選択トランジスタST1及びST2の動作時にチャネルが形成される領域として機能する。このように、メモリホール334の内側には、ブロック絶縁膜335、電荷蓄積層336、ゲート絶縁膜337、及び導電体柱338からなる柱状体が形成されている。
メモリホール334の内側に形成された柱状体のうち、積層された配線層333、332、331のそれぞれと交差している各部分は、トランジスタとして機能する。これら複数のトランジスタのうち、配線層331と交差している部分にあるものは、選択トランジスタST1として機能する。複数のトランジスタのうち、配線層332と交差している部分にあるものは、メモリセルトランジスタMT(MT0~MT7)として機能する。複数のトランジスタのうち、配線層333と交差している部分にあるものは、選択トランジスタST2として機能する。このような構成により、各メモリホール334の内側に形成された柱状体のそれぞれは、図4を参照しながら説明したNANDストリングNSとして機能する。柱状体の内側にある導電体柱338は、メモリセルトランジスタMTや選択トランジスタST1、ST2のチャンネルとして機能する部分である。
導電体柱338よりも上側には、ビット線BLとして機能する配線層が形成される。導電体柱338の上端には、導電体柱338とビット線BLとを接続するコンタクトプラグ339が形成されている。
図5に示される構成と同様の構成が、図5の紙面の奥行き方向に沿って複数配列されている。図5の紙面の奥行き方向に沿って一列に並ぶ複数のNANDストリングNSの集合によって、1つのストリングユニットSUが形成されている。
本実施形態に係る半導体記憶装置2では、メモリセルアレイ110の下方側、すなわち、メモリセルアレイ110と半導体基板300との間となる位置に、周辺回路PERが設けられている。周辺回路PERは、メモリセルアレイ110におけるデータの書き込み動作や読み出し動作、及び消去動作等を実現するために設けられた回路である。図3に示されるセンスアンプ120、ロウデコーダ130、及び電圧生成回路43等は、周辺回路PERの一部となっている。周辺回路PERは、各種のトランジスタやRC回路等を含んでいる。図5に示される例では、半導体基板300上に形成されたトランジスタTRと、メモリセルアレイ110の上方側にあるビット線BLとの間が、コンタクト924を介して電気的に接続されている。
尚、このような構成に換えて、半導体基板300の上に直接メモリセルアレイ110が設けられている構成としてもよい。この場合、半導体基板300のp型ウェル領域が、ソース線SLとして機能することとなる。また、周辺回路PERは、半導体基板300の表面に沿ってメモリセルアレイ110と隣り合う位置に設けられることとなる。
図3に戻って説明を続ける。先に述べたように、プレーンPL1には、上記のメモリセルアレイ110に加えて、センスアンプ120とロウデコーダ130とが設けられている。
センスアンプ120は、ビット線BLに印加される電圧を調整したり、ビット線BLの電圧を読み出してデータに変換したりするための回路である。センスアンプ120は、データの読み出し時には、メモリセルトランジスタMTからビット線BLに読み出された読み出しデータを取得し、取得した読み出しデータを入出力回路21に転送する。センスアンプ120は、データの書き込み時には、ビット線BLを介して書き込まれる書き込みデータをメモリセルトランジスタMTに転送する。
ロウデコーダ130は、ワード線WLのそれぞれに電圧を印加するための、不図示のスイッチ群として構成された回路である。ロウデコーダ130は、レジスタ42からブロックアドレス及びロウアドレスを受け取り、当該ブロックアドレスに基づいて対応するブロックBLKを選択するとともに、当該ロウアドレスに基づいて対応するワード線WLを選択する。ロウデコーダ130は、選択されたワード線WLに対して電圧生成回路43からの電圧が印加されるよう、上記のスイッチ群の開閉を切り換える。
図6には、センスアンプ120の構成例が示されている。センスアンプ120は、複数のビット線BLのそれぞれに関連付けられた複数のセンスアンプユニットSAUを含む。図6には、これらのうちの1つのセンスアンプユニットSAUの詳細な回路構成が抽出して示されている。
図6に示されるように、センスアンプユニットSAUは、センスアンプ部SAと、ラッチ回路SDL、ADL、BDL、CDL、XDLとを含んでいる。センスアンプ部SA、ラッチ回路SDL、ADL、BDL、CDL、XDLは、互いにデータを送受信可能なように、バスLBUSによって接続されている。
センスアンプ部SAは、例えば読み出し動作において、対応するビット線BLに読み出されたデータをセンスして、読み出したデータが“0”であるか“1”であるかを判定する。センスアンプ部SAは、例えば、pチャネルMOSトランジスタであるトランジスタTR1と、nチャネルMOSトランジスタであるトランジスタTR2~TR9と、キャパシタC10とを含んでいる。
トランジスタTR1の一端は電源線に接続されており、トランジスタTR1の他端はトランジスタTR2に接続されている。トランジスタTR1のゲートは、ラッチ回路SDL内のノードINVに接続されている。トランジスタTR2の一端はトランジスタTR1に接続されており、トランジスタTR2の他端はノードCOMに接続されている。トランジスタTR2のゲートには信号BLXが入力される。トランジスタTR3の一端はノードCOMに接続されており、トランジスタTR3の他端はトランジスタTR4に接続されている。トランジスタTR3のゲートには信号BLCが入力される。トランジスタTR4は、高耐圧のMOSトランジスタである。トランジスタTR4の一端はトランジスタTR3に接続されている。トランジスタTR4の他端は対応するビット線BLに接続されている。トランジスタTR4のゲートには信号BLSが入力される。
トランジスタTR5の一端はノードCOMに接続されており、トランジスタTR5の他端はノードSRCに接続されている。トランジスタTR5のゲートはノードINVに接続されている。トランジスタTR6の一端は、トランジスタTR1とトランジスタTR2との間に接続されており、トランジスタTR6の他端はノードSENに接続されている。トランジスタTR6のゲートには信号HLLが入力される。トランジスタTR7の一端はノードSENに接続されており、トランジスタTR7の他端はノードCOMに接続されている。トランジスタTR7のゲートには信号XXLが入力される。
トランジスタTR8の一端は接地されており、トランジスタTR8の他端はトランジスタTR9に接続されている。トランジスタTR8のゲートはノードSENに接続されている。トランジスタTR9の一端はトランジスタTR8に接続されており、トランジスタTR9の他端はバスLBUSに接続されている。トランジスタTR9のゲートには信号STBが入力される。キャパシタC10の一端はノードSENに接続されている。キャパシタC10の他端にはクロックCLKが入力される。
信号BLX、BLC、BLS、HLL、XXL、及びSTBは、例えばシーケンサ41によって生成される。また、トランジスタTR1の一端に接続された電源線には、例えば半導体記憶装置2の内部電源電圧である電圧Vddが印加され、ノードSRCには、例えば半導体記憶装置2の接地電圧である電圧Vssが印加される。
ラッチ回路SDL、ADL、BDL、CDL、XDLは、読み出しデータを一時的に保持する。ラッチ回路XDLは入出力回路21に接続され、センスアンプユニットSAUと入出力回路21との間のデータの入出力に使用される。読み出しデータは、ラッチ回路XDLに保持されることで、入出力回路21からメモリコントローラ1へと出力可能な状態となる。例えば、センスアンプユニットSAUによって読み出されたデータは、ラッチ回路ADL、BDL、CDLのいずれかに格納された後、ラッチ回路XDLへ転送され、ラッチ回路XDLから入出力回路21に出力される。また、例えば、メモリコントローラ1から入出力回路21に入力されたデータは、入出力回路21からラッチ回路XDLへ転送され、ラッチ回路XDLからラッチ回路ADL、BDL、CDLのいずれかに転送される。
ラッチ回路SDLは、例えば、インバータIV11、IV12と、nチャネルMOSトランジスタであるトランジスタTR13、TR14とを含んでいる。インバータIV11の入力ノードはノードLATに接続されている。インバータIV11の出力ノードはノードINVに接続されている。インバータIV12の入力ノードはノードINVに接続されている。インバータIV12の出力ノードはノードLATに接続されている。トランジスタTR13の一端はノードINVに接続されており、トランジスタTR13の他端はバスLBUSに接続されている。トランジスタTR13のゲートには信号STIが入力される。トランジスタTR13の一端はノードLATに接続されており、トランジスタTR14の他端はバスLBUSに接続されている。トランジスタTR14のゲートには信号STLが入力される。例えば、ノードLATにおいて保持されるデータがラッチ回路SDLに保持されるデータに相当する。また、ノードINVにおいて保持されるデータは、ノードLATに保持されるデータの反転データに相当する。ラッチ回路ADL、BDL、CDL、XDLの回路構成は、例えば、ラッチ回路SDLの回路構成と同様のため、説明を省略する。
図7は、メモリセルトランジスタMTの閾値分布等を模式的に示す図である。図7の中段にある図は、メモリセルトランジスタMTの閾値電圧(横軸)と、メモリセルトランジスタMTの個数(縦軸)との対応関係を表している。
本実施形態のようにTLC方式を採用した場合においては、複数のメモリセルトランジスタMTは、図7の中段に示されるように、8つの閾値分布を形成する。この8個の閾値分布(書き込みレベル)のことを、閾値電圧の低い方から順に“ER”レベル、“A”レベル、“B”レベル、“C”レベル、“D”レベル、“E”レベル、“F”レベル、“G”レベルと称する。
図7の上段にある表は、閾値電圧の上記各レベルのそれぞれに対応して、割り当てられるデータの例を表している。同表に示されるように、“ER”レベル、“A”レベル、“B”レベル、“C”レベル、“D”レベル、“E”レベル、“F”レベル、及び“G”レベルには、例えば以下に示すような、それぞれ異なる3ビットデータが割り当てられている。
“ER”レベル:“111”(“下位ビット/中位ビット/上位ビット”)
“A”レベル:“011”
“B”レベル:“001”
“C”レベル:“000”
“D”レベル:“010”
“E”レベル:“110”
“F”レベル:“100”
“G”レベル:“101”
“ER”レベル:“111”(“下位ビット/中位ビット/上位ビット”)
“A”レベル:“011”
“B”レベル:“001”
“C”レベル:“000”
“D”レベル:“010”
“E”レベル:“110”
“F”レベル:“100”
“G”レベル:“101”
このように、本実施形態におけるメモリセルトランジスタMTの閾値電圧は、予め設定された8つの候補レベルのうちの1つをとり得るものとなっており、それぞれの候補レベルに対応して、上記のようにデータが割り当てられている。
互いに隣り合う一対の閾値分布の間には、それぞれ書き込み動作で使用されるベリファイ電圧が設定される。具体的には、“A”レベル、“B”レベル、“C”レベル、“D”レベル、“E”レベル、“F”レベル、及び“G”レベルにそれぞれ対応して、ベリファイ電圧VfyA、VfyB、VfyC、VfyD、VfyE、VfyF、及びVfyGが設定される。
ベリファイ電圧VfyAは、“ER”レベルにおける最大の閾値電圧と“A”レベルにおける最小の閾値電圧との間に設定される。ワード線WLにベリファイ電圧VfyAが印加されると、当該ワード線WLに繋がるメモリセルトランジスタMTのうち、閾値電圧が“ER”レベルに含まれるメモリセルトランジスタMTがオン状態になり、閾値電圧が“A”レベル以上の閾値分布に含まれるメモリセルトランジスタMTがオフ状態になる。
その他のベリファイ電圧VfyB、VfyC、VfyD、VfyE、VfyF、及びVfyGも、上記のベリファイ電圧VfyAと同様に設定される。ベリファイ電圧VfyBは、“A”レベルと“B”レベルとの間に設定され、ベリファイ電圧VfyCは、“B”レベルと“C”レベルとの間に設定され、ベリファイ電圧VfyDは、“C”レベルと“D”レベルとの間に設定され、ベリファイ電圧VfyEは、“D”レベルと“E”レベルとの間に設定され、ベリファイ電圧VfyFは、“E”レベルと“F”レベルとの間に設定され、ベリファイ電圧VfyGは、“F”レベルと“G”レベルとの間に設定される。
例えば、ベリファイ電圧VfyAは0.8Vに、ベリファイ電圧VfyBは1.6Vに、ベリファイ電圧VfyCは2.4Vに、ベリファイ電圧VfyDは3.1Vに、ベリファイ電圧VfyEは3.8Vに、ベリファイ電圧VfyFは4.6Vに、ベリファイ電圧VfyGは5.6Vに、それぞれ設定してもよい。しかし、これに限定されることなく、ベリファイ電圧VfyA、VfyB、VfyC、VfyD、VfyE、VfyF、及びVfyGは、例えば、0V~7.0Vの範囲で、適宜、段階的に設定してもよい。
また、隣り合う閾値分布の間には、それぞれ読み出し動作で使用される読み出し電圧が設定される。「読み出し電圧」とは、読み出し動作時において、読み出し対象となるメモリセルトランジスタMTに繋がるワード線WL、すなわち選択ワード線に対し印加される電圧である。読み出し動作では、読み出し対象となるメモリセルトランジスタMTの閾値電圧が、印加された読み出し電圧よりも高いか否かの判定結果に基づいてデータが決定される。
図7の下段の図において模式的に示されるように、具体的には、メモリセルトランジスタMTの閾値電圧が“ER”レベルに含まれるのか“A”レベル以上に含まれるのかを判定する読み出し電圧VrAは、“ER”レベルにおける最大の閾値電圧と“A”レベルにおける最小の閾値電圧との間に設定される。
その他の読み出し電圧VrB、VrC、VrD、VrE、VrF、及びVrGも、上記の読み出し電圧VrAと同様に設定される。読み出し電圧VrBは、“A”レベルと“B”レベルとの間に設定され、読み出し電圧VrCは、“B”レベルと“C”レベルとの間に設定され、読み出し電圧VrDは、“C”レベルと“D”レベルとの間に設定され、読み出し電圧VrEは、“D”レベルと“E”レベルとの間に設定され、読み出し電圧VrFは、“E”レベルと“F”レベルとの間に設定され、読み出し電圧VrGは、“F”レベルと“G”レベルとの間に設定される。
そして、最も高い閾値分布(例えば“G”レベル)の最大の閾値電圧よりも高い電圧に、読み出しパス電圧VPASS_READが設定される。読み出しパス電圧VPASS_READがゲートに印加されたメモリセルトランジスタMTは、記憶するデータに依らずにオン状態になる。
尚、ベリファイ電圧VfyA、VfyB、VfyC、VfyD、VfyE、VfyF、及びVfyGは、例えば、読み出し電圧VrA、VrB、VrC、VrD、VrE、VrF、及びVrGよりもそれぞれ高い電圧に設定される。つまり、ベリファイ電圧VfyA、VfyB、VfyC、VfyD、VfyE、VfyF、及びVfyGは、それぞれ“A”レベル、“B”レベル、“C”レベル、“D”レベル、“E”レベル、“F”レベル、及び“G”レベルの閾値分布の下裾近傍に設定される。
以上に説明したようなデータの割り付けが適用された場合、読み出し動作において下位ビットの1ページデータ(下位ページデータ)は、読み出し電圧VrA及びVrEを用いた読み出し結果によって確定させることができる。中位ビットの1ページデータ(中位ページデータ)は、読み出し電圧VrB、VrD、及びVrFを用いた読み出し結果によって確定させることができる。上位ビットの1ページデータ(上位ページデータ)は、読み出し電圧VrC及びVrGを用いた読み出し結果によって確定させることができる。このように、下位ページデータ、中位ページデータ、及び上位ページデータがそれぞれ、2回、3回、及び2回の読み出し動作によって確定するため、以上のようなデータの割り付けは“2-3-2コード”と称される。
尚、以上で説明したようなデータの割り付けはあくまで一例であり、実際のデータの割り付けはこれに限定されない。例えば、2ビット又は4ビット以上のデータが1つのメモリセルトランジスタMTに記憶されてもよい。また、データが割り付けられる閾値分布の数(つまり、上記の「候補レベル」の数)は7以下であってもよく、9以上であってもよい。例えば、“2-3-2コード”に代えて、“1-3-3コード”又は“1-2-4コード”を用いてもよい。また、例えば、下位ビット/中位ビット/上位ビットの割り当てを変更してもよい。より具体的には、例えば、“2-3-2コード”において、下位ページデータを読み出し電圧VrC及びVrBを用いた読み出し結果によって確定させ、中位ページデータを読み出し電圧VrB、VrD、及びVrFを用いた読み出し結果によって確定させ、上位ページデータを読み出し電圧VrA及びVrEを用いた読み出し結果によって確定させるようにデータを割り当ててもよい。すなわち、例えば、下位ビットと上位ビットの割り当てを入れ換えてもよい。この場合、閾値電圧の各レベルのそれぞれに対応して、以下のようにデータが割り当てられる。
“ER”レベル:“111”(“下位ビット/中位ビット/上位ビット”)
“A”レベル:“110”
“B”レベル:“100”
“C”レベル:“000”
“D”レベル:“010”
“E”レベル:“011”
“F”レベル:“001”
“G”レベル:“101”
“ER”レベル:“111”(“下位ビット/中位ビット/上位ビット”)
“A”レベル:“110”
“B”レベル:“100”
“C”レベル:“000”
“D”レベル:“010”
“E”レベル:“011”
“F”レベル:“001”
“G”レベル:“101”
半導体記憶装置2において行われる書き込み動作について説明する。書き込み動作では、プログラム動作及びベリファイ動作が行われる。「プログラム動作」とは、一部のメモリセルトランジスタMTの電荷蓄積層336に電子を注入することにより、当該メモリセルトランジスタMTの閾値電圧を変化させる動作のことである。「ベリファイ動作」とは、上記のプログラム動作の後、データを読み出すことで、メモリセルトランジスタMTの閾値電圧がターゲットレベルまで達したか否かを判定し検証する動作である。閾値電圧がターゲットレベルまで達したメモリセルトランジスタMTは、その後、書き込み禁止とされる。ここでいう「ターゲットレベル」とは、先に述べた8つの候補レベルの中から、目標のレベルとして設定された特定の候補レベルのことである。
書き込み動作では、以上のプログラム動作及びベリファイ動作が繰り返し実行される。これにより、メモリセルトランジスタMTの閾値電圧がターゲットレベルまで上昇する。
複数のワード線WLのうち、書き込み動作の対象(つまり、閾値電圧を変化させる対象)であるメモリセルトランジスタMTに繋がっているワード線WLのことを、以下では「選択ワード線」とも称する。また、書き込み動作の対象ではないメモリセルトランジスタMTに繋がっているワード線WLのことを、以下では「非選択ワード線」とも称する。書き込み対象であるメモリセルトランジスタMTのことを、以下では「選択メモリトランジスタ」とも称する。
複数のストリングユニットSUのうち、書き込み動作の対象となるストリングユニットSUのことを、以下では「選択ストリングユニット」とも称する。また、書き込み動作の対象とはならないストリングユニットSUのことを、以下では「非選択ストリングユニット」とも称する。
選択ストリングユニットに含まれる各NANDストリングNSの導電体柱338、すなわち、選択ストリングユニットにおける各チャンネルのことを、以下では「選択チャンネル」とも称する。また、非選択ストリングユニットに含まれる各NANDストリングNSの導電体柱338、すなわち、非選択ストリングユニットにおける各チャンネルのことを、以下では「非選択チャンネル」とも称する。
複数のビット線BLのうち、選択メモリトランジスタに繋がっているビット線BLのことを、以下では「選択ビット線」とも称する。また、選択メモリトランジスタに繋がっていないビット線BLのことを、以下では「非選択ビット線」とも称する。
プログラム動作について説明する。以下では、プログラム動作の対象がプレーンPL1である場合の例について説明するが、プレーンPL2の場合も以下と同様である。図8は、プログラム動作時における各配線の電位変化を示している。プログラム動作では、センスアンプ120が、プログラムデータに対応して各ビット線BLの電位を変化させる。プログラム対象の(閾値電圧を上昇させるべき)メモリセルトランジスタMTに繋がるビット線BLには、“L”レベルとして例えば接地電圧Vss(0V)が印加される。プログラム対象ではない(閾値電圧を維持させるべき)メモリセルトランジスタMTに繋がるビット線BLには、“H”レベルとして、例えば2.5Vが印加される。前者のビット線BLは、図8においては「BL(0)」と表記されている。後者のビット線BLは、図8においては「BL(1)」と表記されている。
ロウデコーダ130は、書き込み動作の対象としていずれかのブロックBLKを選択し、更にいずれかのストリングユニットSUを選択する。より具体的には、選択されたストリングユニットSUにおけるセレクトゲート線SGD(選択セレクトゲート線SGDsel)には、電圧生成回路43からロウデコーダ130を介して例えば5Vが印加される。これにより、選択トランジスタST1はオン状態となる。他方で、セレクトゲート線SGSには、電圧生成回路43からロウデコーダ130を介して例えば電圧Vssが印加される。これにより、選択トランジスタST2はオフ状態となる。
また、選択ブロックBLKにおける非選択ストリングユニットSUのセレクトゲート線SGD(非選択セレクトゲート線SGDusel)には、電圧生成回路43からロウデコーダ130を介して例えば電圧5Vが印加される。これにより、選択トランジスタST1がオン状態となる。なお、各ブロックBLKに含まれるストリングユニットSUにおいて、セレクトゲート線SGSは共通に接続されている。従って、非選択ストリングユニットSUにおいても、選択トランジスタST2はオフ状態となる。
更に、非選択ブロックBLKにおけるセレクトゲート線SGD及びセレクトゲート線SGSには、電圧生成回路43からロウデコーダ130を介して例えば電圧Vssが印加される。これにより、選択トランジスタST1及び選択トランジスタST2はオフ状態となる。
ソース線SLは、セレクトゲート線SGSの電位よりも高い電位とされる。当該電位は、例えば1Vである。
その後、選択ブロックBLKにおける選択セレクトゲート線SGDselの電位を、例えば2.5Vとする。この電位は、上記の例で0Vが与えられたビット線BL(0)に対応する選択トランジスタST1はオンさせるが、2.5Vが与えられたビット線BL(1)に対応する選択トランジスタST1はカットオフさせる電圧である。これにより、選択ストリングユニットSUにおいては、ビット線BL(0)に対応する選択トランジスタST1はオンされ、2.5Vが与えられたビット線BL(1)に対応する選択トランジスタST1はカットオフされる。一方で、非選択セレクトゲート線SGDuselの電位を、例えば電圧Vssとする。これにより、非選択ストリングユニットSUにおいては、ビット線BL(0)及びビット線BL(1)の電位に関わらず、選択トランジスタST1はカットオフされる。
そしてロウデコーダ130は、選択ブロックBLKにおいて、書き込み動作の対象としていずれかのワード線WLを選択する。書き込み動作の対象となるワード線WL(選択ワード線WLsel)に、電圧生成回路43からロウデコーダ130を介して例えば電圧VPGMが印加される。一方で、その他のワード線WL(非選択ワード線WLusel)に、電圧生成回路43からロウデコーダ130を介して例えば電圧VPASS_PGMが印加される。電圧VPGMは、トンネル現象により電子を電荷蓄積層336に注入するための高電圧である。電圧VPASS_PGMは、ワード線WLに繋がるメモリセルトランジスタMTをONとする一方で、閾定電圧は変化させない程度の電圧である。VPGMはVPASS_PGMよりも高い電圧である。
プログラム対象のビット線BL(0)に対応するNANDストリングNSでは、選択トランジスタST1がオン状態となる。そのため、選択ワード線WLselに接続されたメモリセルトランジスタMTのチャネル電位は0Vとなる。制御ゲートとチャネルとの間の電位差が大きくなり、その結果、電子が電荷蓄積層336に注入されるので、メモリセルトランジスタMTの閾値電圧が上昇される。
プログラム対象ではないビット線BL(1)に対応するNANDストリングNSでは、選択トランジスタST1がカットオフ状態となる。そのため、選択ワード線WLselに接続されたメモリセルトランジスタMTのチャネルは電気的にフローティングとなり、ワード線WL等との容量カップリングによりチャネル電位は電圧VPGM近くまで上昇される。制御ゲートとチャネルとの間の電位差が小さくなり、その結果、電子は電荷蓄積層336に注入されないので、メモリセルトランジスタMTの閾値電圧は維持される。正確にいうと、閾値分布レベルがより高い分布に遷移するほどには、閾値電圧は変動しない。
読み出し動作について説明する。以下では、読み出し動作の対象がプレーンPL1である場合の例について説明するが、プレーンPL2の場合も以下と同様である。プログラム動作に続いて行われるベリファイ動作は、以下に説明する読み出し動作と同じである。図9は、読み出し動作時における各配線の電位変化を示している。読み出し動作では、読み出し動作の対象となるメモリセルトランジスタMT、を含むNANDストリングNSが選択される。あるいは、読み出し動作の対象となるページを含むストリングユニットSUが選択される。
まず、選択セレクトゲート線SGDsel、非選択セレクトゲート線SGDusel及びセレクトゲート線SGSには、電圧生成回路43からロウデコーダ130を介して例えば5Vが印加される。これにより、選択ブロックBLKに含まれる選択トランジスタST1及び選択トランジスタST2はオン状態となる。また、選択ワード線WLsel及び非選択ワード線には、電圧生成回路43からロウデコーダ130を介して例えば読み出しパス電圧VPASS_READが印加される。読み出しパス電圧VPASS_READは、メモリセルトランジスタMTの閾値電圧にかかわらず、メモリセルトランジスタMTをONとすることができ、かつ、閾定電圧は変化させない程度の電圧である。これにより、選択ストリングユニットSUであるか非選択ストリングユニットSUであるかにかかわらず、選択ブロックBLKに含まれる全てのNANDストリングNSにおいて、電流が導通する。
次に、読み出し動作の対象となるメモリセルトランジスタMTに繋がるワード線WL(選択ワード線WLsel)に対し、電圧生成回路43からロウデコーダ130を介して例えばVrAのような読み出し電圧Vrが印加される。それ以外のワード線(非選択ワード線WLusel)に対しては、読み出しパス電圧VPASS_READが印加される。
また、選択セレクトゲート線SGDsel及びセレクトゲート線SGSに印加する電圧は維持しつつ、非選択セレクトゲート線SGDuselには、電圧生成回路43からロウデコーダ130を介して例えば電圧Vssが印加される。これにより、選択ストリングユニットSUに含まれる選択トランジスタST1はオン状態を維持するが、非選択ストリングユニットSUに含まれる選択トランジスタST1はオフ状態となる。なお、選択ストリングユニットSUであるか非選択ストリングユニットSUであるかにかかわらず、選択ブロックBLKに含まれる選択トランジスタST2はオン状態となる。
これにより、非選択ストリングユニットSUに含まれるNANDストリングNSは、少なくとも選択トランジスタST1がオフ状態となるため、電流パスを形成しない。一方で、選択ストリングユニットSUに含まれるNANDストリングNSは、選択ワード線WLselに印加される読み出し電圧VrとメモリセルトランジスタMTの閾値電圧との関係に応じて、電流パスが形成され、または、形成されない。
センスアンプ120は、選択されたNANDストリングNSに繋がるビット線BLに対して電圧を印加する。この状態で、センスアンプ120は、当該ビット線BLを流れる電流の値に基づいてデータの読み出しを行う。具体的には、読み出し動作の対象となるメモリセルトランジスタMTの閾値電圧が、当該メモリセルトランジスタMTに印加された読み出し電圧よりも高いか否かを判定する。尚、データの読み出しは、ビット線BLを流れる電流の値に基づくのではなく、ビット線BLにおける電位の時間変化に基づいて行われてもよい。後者の場合、ビット線BLは、予め所定の電位となるようにプリチャージされる。
先に述べたベリファイ動作も、上記のような読み出し動作と同様に行われる。ベリファイ動作では、ベリファイの対象となるメモリセルトランジスタMTに繋がるワード線WLに対し、例えばVfyAのようなベリファイ電圧が電圧生成回路43からロウデコーダ130を介して印加されることとなる。
なお、先に述べたプログラム動作の初期段階における選択セレクトゲート線SGDsel及び非選択セレクトゲート線SGDuselに5Vの電圧を印加する動作は、省略される場合がある。同様に、先に述べた読み出し動作(ベリファイ動作)の初期段階における非選択セレクトゲート線SGDuselに5Vの電圧を印加し選択ワード線WLselに読み出しパス電圧VPASS_READを印加する動作は、省略される場合がある。
読み出し動作時において、半導体記憶装置2とメモリコントローラ1との間で送受信される具体的な信号の流れ等について説明する。以下では、読み出し動作の対象がプレーンPL1である場合の例について説明するが、プレーンPL2の場合も以下と同様である。
先ず、本実施形態の比較例について説明する。図10には、比較例に係る構成において、半導体記憶装置2とメモリコントローラ1との間で送受信される各種の信号等の例が示されている。
読み出し動作時においては、メモリコントローラ1から半導体記憶装置2に向けて、信号DQ<7:0>として、「05h」、複数の「ADD」、及び「E0h」からなる信号が順に入力される。「05h」は、メモリセルアレイ110からのデータの読み出し動作を実行させるためのコマンドである。「ADD」は、データの読み出し元となるアドレスを指定する信号である。「E0h」は、読み出し動作を開始させるためのコマンドである。
図10では、「E0h」が半導体記憶装置2に入力されたタイミングが時刻t0として示されている。時刻t0から所定期間が経過した時刻t1において、メモリコントローラ1は、リードイネーブル信号/REのトグルを開始させる。先に述べたように、リードイネーブル信号/REは、メモリコントローラ1が、半導体記憶装置2からデータを読み出すための信号であり、半導体記憶装置2の入出力用パッド群31に入力される。時刻t1以降は、リードイネーブル信号/REが、HレベルとLレベルとの間において交互に切り換えられる(トグルされる)。このように切り換えられるリードイネーブル信号/REのそれぞれが、データを読み出すための「読み出し信号」として用いられる。入出力用パッド群31は、メモリコントローラ1から「読み出し信号」を繰り返し受信する「受信部」に該当する。
半導体記憶装置2は、リードイネーブル信号/REが切り換わる毎に(すなわち、それぞれの読み出し信号が入力される毎に)、信号DQ<7:0>としてデータを出力すると共に、データストローブ信号DQSをHレベルとLレベルとの間で切り換える。図10においては、信号DQ<7:0>として出力されるデータのそれぞれが「D」として示されている。また、最初のデータが出力され、データストローブ信号DQSが切り換わるタイミングが、時刻t2として示されている。メモリコントローラ1から入力されるリードイネーブル信号/REの切り換えと、半導体記憶装置2から出力されるデータストローブ信号DQSの切り換えと、の対応関係が、図10では点線の矢印で示されている。
尚、半導体記憶装置2からの読み出しデータの出力は、1つのデータを、偶数ビットからなるイーブンデータと、奇数ビットからなるオッドデータと、に分けた上で、それぞれを交互に出力することで行われる。図10において「D」と示されるそれぞれのデータは、イーブンデータ及びオッドデータのいずれかとして出力されるものである。
ところで、読み出し動作時において、プレーンPL1では、メモリセルトランジスタMTを含む多数のトランジスタを開閉動作させる必要がある。このとき、電圧生成回路43から各部へと出力される電流が増加するため、電源電圧が一時的に低下してしまうことがある。より具体的には、電源転圧をフィードバック制御によって制御している場合、電圧生成回路43から各部へと出力される電流が増加することにより、電源電圧が一時的に低下してしまうことがある。図10の最上段には、このように変動する電源電圧の変化の一例が示されている。この例において、電源電圧は、リードイネーブル信号/REのトグルが開始される時刻t0もしくはその近くから低下し始め、時刻t2以降においてもしばらくの間は目標電圧よりも低下してしまっている。このような電源電圧の低下が生じると、半導体記憶装置2におけるI/O出力特性が悪化し、読み出しデータの出力が不安定になってしまうことが懸念される。
電源電圧の低下に対する対策としては、例えば、半導体記憶装置2を図11のように動作させることが考えられる。図11には、図10の比較例とは別の比較例において送受信される各種の信号等の例が示されている。
図11の比較例において、半導体記憶装置2は、図10の比較例と同様のタイミング(時刻t2)においてデータストローブ信号DQSのトグルを開始する。ただし、データストローブ信号DQSのトグルを開始してからしばらくの間は、半導体記憶装置2はメモリコントローラ1に向けてデータを出力しない。半導体記憶装置2からのデータの出力が開始されるのは、時刻t2よりも後の時刻t3からとなっている。この例における時刻t2から時刻t3までの期間の長さは、イーブンデータ又はオッドデータが計4つ出力され得る期間の長さ(換言すれば、2つのイーブンデータと2つのオッドデータが出力され得る期間の長さ)となっている。データストローブ信号DQSのトグルが開始されてから、メモリコントローラ1が要求するデータの出力が開始されるまでの期間のことを、以下では「レイテンシ期間」とも称する。
図11の比較例のようにレイテンシ期間を設けると、データの出力タイミングが時刻t2よりも遅くなるので、データ出力開始時点における電源電圧の一時的な低下を抑制できる。違う言い方をすると、図11の比較例のようにレイテンシ期間を設けると、データストローブ信号DQSのトグルが開始することによる電流の増加に起因する電源電圧の一時的な低下が抑制された状態で、データの出力を開始することができる。しかしながら、時刻t3においてデータの出力が開始されると、これによる電流の増加が生じることとなる。違う言い方をすると、図11の比較例のようにデータの出力開始をデータストローブ信号DQSのトグル開始から遅れさせたとしても、データの出願が開始することによる電流の増加に起因する電源電圧の一時的な低下による影響は避けることができない。
そこで、本実施形態に係る半導体記憶装置2では、読み出し動作時において以下のように動作する。図12には、本実施形態に係る半導体記憶装置2で送受信される各種の信号等の例が、図10や図11と同様の方法により示されている。
本実施形態においても、図11の例と同様のレイテンシ期間が設けられており、メモリコントローラ1が要求するデータの出力は時刻t3から開始される。ただし、本実施形態では、レイテンシ期間においても、半導体記憶装置2からメモリコントローラ1に向けてデータが出力される。この時出力されるデータは、メモリコントローラ1が要求するデータとは異なるダミーデータである。このようなダミーデータのことを、以下では「非正規データ」とも称する。また、メモリコントローラ1が要求する読み出しデータのことを、非正規データとは区別して以下では「正規データ」とも称する。図12では、信号DQ<7:0>として出力されるデータのうち、正規データを図10等と同様に「D」と表記しており、非正規データを「d」と表記している。尚、「d」として示されるそれぞれのデータは、イーブンデータ又はオッドデータのいずれかとして出力される個々のデータのことである。
本実施形態に係る半導体記憶装置2において、レイテンシ期間の開始時である時刻t2においては電圧生成回路43からの出力電流が増加するが、レイテンシ期間の終了時である時刻t3においては電圧生成回路43からの出力電流が増加しない。このため、図12に示すように、時刻t2の直後においては電源電圧が大きく低下するものの、時刻t3よりも前の時点では電源電圧がある程度回復している。本実施形態に係る半導体記憶装置2においては、図12に示すように、電源電圧が安定した後に、半導体記憶装置2からメモリコントローラ1に向けて正規データが送信されるので、I/O出力特性が悪化するという上記の問題を解消することができる。尚、メモリコントローラ1において、レイテンシ期間において入力される非正規データを無視する(例えば、受信後に破棄する)ように予め取り決めておけば、非正規データが読み出し動作に悪影響を及ぼしてしまうことは無い。
レイテンシ期間における非正規データ(d)の送信を可能とするための、半導体記憶装置2の具体的な構成について、図13を主に参照しながら説明する。同図においては、メモリセルアレイ110から入出力用パッド群31に至るまでの経路、すなわち、読み出しデータの流れる経路に沿った構成が模式的に描かれている。
センスアンプ120には、先に述べた複数のセンスアンプユニットSAUと、複数のラッチ回路XDLと、マルチプレクサ121と、が含まれる。メモリセルアレイ110から読み出されたデータは、センスアンプユニットSAUからラッチ回路XDLへと送信され一旦保持された後、マルチプレクサ121を介して第1保持部510へと転送される。マルチプレクサ121と第1保持部510との間は、例えば128本の配線からなる第1データバス501により接続されている。なお、第1データバス501に含まれる配線の数は128本に限られない。第1データバス501に含まれる配線の数は、複数のラッチ回路XDLとマルチプレクサ121との間を繋いでいる配線の数よりも少ない。マルチプレクサ121は、複数のラッチ回路XDLから送信されるそれぞれのデータを、第1データバス501を介して、後段の第1保持部510へと順次転送する。
第1保持部510は、メモリセルアレイ110から読み出されたデータを複数保持するものであり、所謂「先入れ先出し」(FIFO:First In First Out)の動作を行うように構成された記憶装置である。第1保持部510は、マルチプレクサ121から転送されてきたデータを一時的複数保持し、当該データを、先に入力されていたものから順に入出力回路21に向けて出力する。第1保持部510と入出力回路21との間は、例えば16本の信号線からなる第2データバス502を介して接続されている。なお、第2データバス502に含まれる配線の数は16本に限られない。第1保持部510から入出力回路21へと入力されたデータは、次に述べる第2保持部520によって一時的に保持された後、入出力用パッド群31から信号DQ<7:0>として外部に出力される。
入出力回路21は、第2保持部520と、ライトポインタ生成回路541と、リードポインタ生成回路542と、マルチプレクサ531と、ドライバ532と、を有しており、これらを組み合わせてなる回路が、入出力用パッド群31が有する8つのパッド、すなわち、DQ<7:0>に対応する8つパッドのそれぞれに対応して個別に設けられている。つまり、入出力回路21においては、第2保持部520やマルチプレクサ531等のそれぞれが8つずつ設けられている。図13においては、これらのうちDQ<0>のパッドに接続されるもののみが図示されており、その他については図示が省略されている。
第2保持部520は、第1保持部510から送信されるデータを受け入れて、当該データを複数保持するものである。本実施形態の第2保持部520には、イーブンデータを保持する部分と、オッドデータを保持する部分とに分けられている。前者のことを、以下では「第2保持部521」とも表記する。後者のことを、以下では「第2保持部522」とも表記する。
第2保持部520は、先に述べた第1保持部510と同様に、所謂「先入れ先出し」(FIFO:First In First Out)の動作を行うように構成された記憶装置である。第2保持部520は、第1保持部510から入力されるデータを上記のように一時的に受け入れた後、当該データを、入力されたものから順にDQ<0>のパッドへと出力する。このようなデータの出力は、マルチプレクサ531及びドライバ532を介して、第2保持部521及び第2保持部522のそれぞれから交互に行われる。
ライトポインタ生成回路541は、ライトポインタWptrを生成する回路である。「ライトポインタWptr」とは、第1保持部510から送信されるデータを第2保持部520に保持させる際において、その保持位置(つまり書き込み位置)を指示するポインタのことである。
リードポインタ生成回路542は、リードポインタRptrを生成する回路である。「リードポインタRptr」とは、第2保持部520からドライバ532に向けてデータを送信させる際において、第2保持部520における当該データの保持位置(つまり読み出し位置)を指示するポインタのことである。
ライトポインタ生成回路541及びリードポインタ生成回路542からなる一対の回路は、第2保持部521及び第2保持部522のそれぞれについて設けられている。ただし、図13においては、第2保持部522について設けられたライトポインタ生成回路541及びリードポインタ生成回路542のみが図示されており、第2保持部521について設けられたライトポインタ生成回路541及びリードポインタ生成回路542の図示が省略されている。
第1保持部510から第2保持部520へのデータの送信、及び、第2保持部520からマルチプレクサ531へのデータの送信、のそれぞれは、シーケンサ41によって制御される。
第2保持部520の構成、及びライトポインタ生成回路541やリードポインタ生成回路542の機能について説明する。図14には、第2保持部522の構成が模式的に描かれている。尚、第2保持部521の構成は、第2保持部522の構成と同じであるから、その説明を省略する。
図14に示されるように、第2保持部522は、マルチプレクサM1と、複数のフリップフロップFFと、マルチプレクサM2と、を有している。尚、フリップフロップFFは第2保持部522において複数設けられているが、図14においては、これらのうちの3つのみが「FF1」、「FF2」、「FF3」として描かれている。
マルチプレクサM1は、ライトポインタ生成回路541から入力されるライトポインタWptrに基づいて、いずれかのフリップフロップFFをデータの書き込み対象として選択し、当該フリップフロップFFにデータを送信する。
それぞれのフリップフロップFFは、第2保持部522における1ビットデータの記憶場所として機能する。フリップフロップFFは、入力されるクロック信号CLK1がLレベルからHレベルに立ち上がるタイミングで、それまで保持していたデータをマルチプレクサM2側へと出力すると共に、マルチプレクサM1側から入力される新たなデータを保持する。
クロック信号CLK1は、それぞれのフリップフロップFFがデータを取り込むタイミング、を規定する信号である。クロック信号CLK1はシーケンサ41により生成される。クロック信号CLK1は、後述のレイテンシ回路410及びライトポインタ生成回路541を介して、シーケンサ41からそれぞれのフリップフロップFFへと入力される。
ライトポインタ生成回路541は、入力されるクロック信号CLK1に基づいて、ライトポインタWptrを生成する。ライトポインタWptrは、クロック信号CLK1がLレベルからHレベルに立ち上がるタイミングで、ライトポインタ生成回路541によりインクリメントされる。ライトポインタWptrは、第1保持部510から入力されるデータを、どのフリップフロップFFに取り込むべきかを指定する信号である。ライトポインタWptrがインクリメントされて行くことで、データの書き込み対象となるフリップフロップFFが順次切り換えられて行くこととなる。
マルチプレクサM2は、リードポインタ生成回路542から入力されるリードポインタRptrに基づいて、いずれかのフリップフロップFFをデータの読み出し対象として選択し、当該フリップフロップFFからデータを受信する。マルチプレクサM2は、リードポインタRptrがインクリメントされるタイミングで、当該データをマルチプレクサ531側へと出力する。
リードポインタRptrは、どのフリップフロップFFからのデータをマルチプレクサ531側へと出力するか、を指定すると共に、データの出力タイミングを指定する信号である。リードポインタRptrは、リードポインタ生成回路542によって生成され、リードポインタ生成回路542からマルチプレクサM2へと入力される。
リードポインタ生成回路542は、入力されるクロック信号CLK2に基づいて、リードポインタRptrを生成する。リードポインタRptrは、クロック信号CLK2がLレベルからHレベルに立ち上がるタイミングで、リードポインタ生成回路542によりインクリメントされ、マルチプレクサM2へと入力される。リードポインタRptrがインクリメントされて行くことで、データの読み出し対象となるフリップフロップFFが順次切り換えられて行くこととなる。データの読み出し対象となるフリップフロップFFが切り換えられて行く順序は、データの書き込み対象となるフリップフロップFFが切り換えられて行く順序と同じである。これにより、第2保持部522による「先入れ先出し」の動作が実現される。
クロック信号CLK2は、上記のようにリードポインタRptrの元となる信号である。クロック信号CLK2は、メモリコントローラ1から入力されるリードイネーブル信号/REに基づいて、シーケンサ41により生成される。図13に示されるように、クロック信号CLK2は、シーケンサ41からリードポインタ生成回路542に入力されると共に、マルチプレクサ531にも入力される。
マルチプレクサ531は、第2保持部521から入力されるイーブンデータと、第2保持部522から入力されるオッドデータと、を交互に受け入れて、これをドライバ532へと出力するものである。
尚、マルチプレクサM1からマルチプレクサM2に向かって、複数のフリップフロップFFが多段に並んでいるような構成であってもよい。また、先に述べた第1保持部510も、以上のような第2保持部522と同様の構成とすることができる。
「先入れ先出し」の動作を行う第2保持部520は、複数のデータの記憶場所を所定順序に沿って並べたもの、であると理解することができる。図15には、このような第2保持部520の構成が模式的に描かれている。図15において横一列に並ぶよう描かれたそれぞれの矩形が、データの記憶場所(具体的にはフリップフロップFF)を表している。それぞれの記憶場所は、データの書き込み順序(及び読み込み順序)に沿って、図15では左から右へと一列に並ぶように描かれている。ライトポインタWptr及びリードポインタRptrのそれぞれは、矢印に沿って図15の右方向へとインクリメントされて行く。
図15(A)は、レイテンシ期間が設定されない場合において(レイテンシ期間の長さが0である場合において)、メモリコントローラ1からデータの読み出しコマンドが入力され、半導体記憶装置2においてデータの出力準備が完了した時点、における第2保持部520の状態を示している。図12の例においては、時刻t1の直前の状態である。半導体記憶装置2では、プリフェッチ動作(先読み動作)を行うことで、これから出力すべき一連のデータの一部を第2保持部520に保持した状態となっている。
図15(A)の例では、メモリコントローラ1の要求に応じて、正規データD0、D1、D2、D3・・・が出力される例が示されている。
図15(B)は、レイテンシ期間が設定される場合において、メモリコントローラ1からデータの読み出しコマンドが入力され、半導体記憶装置2においてデータの出力準備が完了した時点、における第2保持部520の状態を示している。この場合、正規データD0、D1、D2、D3・・・が出力される前に、レイテンシ期間の長さに対応して、非正規データ・・・d3、d2、d1、d0が出力される。より具体的には、レイテンシ期間の長さが8である場合には、オッドデータに対応する第2保持部522からは、正規データD0、D1、D2、D3・・・(D0o、D1o、D2o、D3o・・・)が出力される前に、非正規データd3、d2、d1、d0(d3o、d2o、d1o、d0o)が出力される。同様に、イーブンデータに対応する第2保持部521からも、正規データD0、D1、D2、D3・・・(D0e、D1e、D2e、D3e・・・)が出力される前に、非正規データd3、d2、d1、d0(d3e、d2e、d1e、d0e)が出力される。
レイテンシ期間が設定されない場合(レイテンシ期間の長さが0である場合)、図15(A)のように、リードポインタRptrは最初に出力されるD0の記憶場所を示す。しかしながら、本実施形態では、レイテンシ期間が設定された場合、その長さに応じてリードポインタRptrを予めマイナス側(図15では左側)の位置を示すように調整しておくことで、最初にD0とは異なるデータが出力されるようにする。当該処理は、例えば、シーケンサ41の制御によって行われる。
例えば、図15(B)の例のように、レイテンシ期間が設定されその長さが8である場合、オッドデータに対応する第2保持部522とイーブンデータに対応する第2保持部521とのそれぞれにおいて、最初の正規データ(D0)の保持位置から4回分だけマイナス側の位置となるようにリードポインタRptrを調整する。このようにリードポインタRptrをマイナス側の位置となるように調整することで、メモリコントローラ1には、正規データとしてD0e、D0o、D1e、D1o、D2o、D2e、D3o、D3e・・・が順に出力される前に、非正規データとしてd3e、d3o、d2e、d2o、d1e、d1o、d0e、d0oが順に出力される。
図15(B)のようにリードポインタRptrが調整された後に、データが出力される場合の信号の例が、図16に示されている。同図に示される「d3e」とは、第2保持部521からイーブンデータとして出力されるd3のデータを表しており、「d3o」とは、第2保持部522からオッドデータとして出力されるd3のデータを表している。「d2e」、「d2o」、「d1e」、「d1o」、「d0e」、「d0o」、や「D0e」、「D0o」、「D1e」、「D1o」、「D2e」、「D2o」、「D3e」、「D3o」、等のその他のデータについても同様である。
レイテンシ期間における、第2保持部520のフリップフロップ回路FF1、FF2、FF3が保持するデータと、第2保持部520から出力されるデータとの関係を図18に示す。
レイテンシ期間が終了すると、第2保持部520は正規データの出力を開始する。レイテンシ期間終了後のデータ出力期間における、第2保持部520のフリップフロップ回路FF1、FF2、FF3が保持するデータと、第2保持部520から出力されるデータとの関係を図19及び図20に示す。
この例では、時刻t2から時刻t3までのレイテンシ期間の長さが、イーブンデータ又はオッドデータが計8つ出力され得る期間の長さ(換言すれば、4つのイーブンデータと4つのオッドデータが出力され得る期間の長さ)として設定されている。このため、第2保持部521、522のそれぞれで、上位のようにリードポインタRptrをマイナス側に4回分移動させておくことで、レイテンシ期間においては非正規データを出力し、レイテンシ期間の後においては正規データを出力するような動作を実現することができる。
ところで、第2保持部520から非正規データが出力されているレイテンシ期間において、仮に、ライトポインタWptrがインクリメントされてしまうと、今後出力されるべきデータの一部が、出力されないまま上書きされてしまう可能性がある。そこで、本実施形態に係る半導体記憶装置2では、第2保持部520から非正規データを送信させているレイテンシ期間において、シーケンサ41が、第1保持部510から第2保持部520へのデータの送信を一時的に停止させておくこととしている。
図13に示されるレイテンシ回路410は、シーケンサ41から出力されるクロック信号CLK1を、後段の第1保持部510やライトポインタ生成回路541へと送信するものである。レイテンシ期間において、レイテンシ回路410は、クロック信号CLK1の送信を一時的に停止する。具体的には、シーケンサ41から入力されるクロック信号CLK1をカウントし、レイテンシ期間においてデータの更新を停止させておくべき所定回数だけカウントされた時点で、後段に向けたクロック信号CLK1の送出を開始する。
その結果、レイテンシ期間においては、第1保持部510から第2保持部520へのデータの送信が停止した状態となる。これにより、第2保持部520のデータが未送信のまま上書きされてしまうような事態が防止される。レイテンシ回路410は、シーケンサ41の一部として構成されてもよい。
以上のように、本実施形態に係る半導体記憶装置2は、メモリセルアレイ110から読み出されたデータを一時的に複数保持する第1保持部510及び第2保持部520と、第2保持部520から繰り返し送信されるデータを外部のメモリコントローラ1に出力する出力部(ドライバ532や入出力用パッド群31)と、メモリコントローラ1から、データを読み出すための読み出し信号(リードイネーブル信号/RE)を繰り返し受信する受信部(ロジック制御用パッド群32やロジック制御回路22)と、それぞれの読み出し信号に対応して、第2保持部520から出力部へとデータを送信させる制御部(シーケンサ41)と、を備える。
制御部であるシーケンサ41は、受信部によって最初に所定回数だけ受信されたそれぞれの読み出し信号に対応するデータとして、メモリコントローラ1が要求するデータとは異なる非正規データを、保持部から出力部へと送信させ、受信部によってその後に受信された読み出し信号に対応するデータとして、メモリコントローラ1が要求するデータである正規データを、保持部から出力部へと送信させる。これにより、正規データの送信開始時までには、低下していた電源電圧を正常値近くまで復帰させておくことができるので、メモリコントローラ1に向けたデータの出力を安定して行うことが可能となる。
制御部であるシーケンサ41は、第2保持部520に保持されている複数のデータのうち、出力部に向けて次に送信されるデータ、の保持位置を示すリードポインタRptrを、上記の「所定回数」に応じて予め調整しておくことで、保持部から非正規データを送信させる。具体的には、シーケンサ41は、リードポインタRptrを、正規データの保持位置から上記所定回数に応じた数だけマイナス側となる保持位置を示すように、予め調整しておく。これにより、レイテンシ期間における非正規データの出力を容易に実現することができる。
尚、レイテンシ期間において非正規データを送信するような半導体記憶装置2の構成としては、図17に示される比較例の構成とすることも考えられる。この比較例では、入出力回路21にレイテンシ回路543が設けられている点において、本実施形態と異なっている。
レイテンシ回路543は、シーケンサ41から出力されるクロック信号CLK2を、後段のリードポインタ生成回路542へと送信するものである。レイテンシ期間において、レイテンシ回路543は、クロック信号CLK2の送信を一時的に停止する。具体的には、シーケンサ41から入力されるクロック信号CLK2をカウントし、レイテンシ期間においてデータの更新を停止させておくべき所定回数だけカウントされた時点で、後段に向けたクロック信号CLK2の送出を開始する。尚、マルチプレクサ531には、レイテンシ期間においてもクロック信号CLK2が送信され続ける。
この場合、レイテンシ期間においては、第2保持部520から出力されるデータが更新されず、(移動せず止まったままの)リードポインタRptrで示された同じデータが、非正規データとして送信され続けることとなる。レイテンシ期間が終了すると、本実施形態と同様に正規データの送信が開始される。
しかしながら、上記のようなレイテンシ回路543は、高速で切り換わるクロック信号CLK2をカウントする必要があるため、消費電力の比較的大きな高速のトランジスタ等で構成する必要がある。更に、レイテンシ期間が長くなり、カウントすべき回数が多くなると、より多くのトランジスタ等が必要となり、レイテンシ回路543は更に大規模なものとなってしまう。その結果、消費電力の増大や、回路の大型化に繋がる可能性がある。また、レイテンシ期間において第2保持部520から出力されるデータが更新されず、移動せず止まったままのリードポインタRptrで示された同じデータが、非正規データとして送信され続けることから、電圧生成回路に適切な電流負荷をかけることができない。
これに対し、本実施形態では、レイテンシ期間において第2保持部520から出力されるデータの更新を一時的に停止する必要が無い。このため、比較例におけるレイテンシ回路543を設ける必要が無いため、消費電力の増大や、回路の大型化を回避できる。
実施形態においては、第2保持部520が入出力回路21の中に設けられていた。しかし、第2保持部520の構成はこれに限られない。第2保持部520は、例えば、図21に示される変形例のように、第2データバス502を跨ぐように設けられてもよい。
この変形例のように、例えば、第2保持部520のマルチプレクサM1と複数のフリップフロップFFを第1保持部510の直後に配置し、第2保持部520のマルチプレクサM2を入出力回路21の中に配置してもよい。この場合、ライトポインタ生成回路541はマルチプレクサM1と複数のフリップフロップFFの近傍に配置され、リードポインタ生成回路542はマルチプレクサM2の近傍に配置される。
第2保持部520を第2データバス502を跨ぐように配置する場合、第1保持部510と入出力回路21とを第2データバス502で接続する場合と比べて、配線数が増加する。例えば、第2データバス502が16本の配線で構成されているとすると、第2保持部520を第2データバス502を跨ぐように配置する場合、オッドデータに対応する第2保持部522とイーブンデータに対応する第2保持部521とがそれぞれ3つのフリップフロップFFを有している場合、第1保持部510と入出力回路21とを接続する配線は48本必要となる。しかし、配線数が増加したことに伴い、各配線を伝搬する信号の切り替え速度を遅くすることができる。これにより、信号を送受信するためのトランジスタの閾値電圧を低く設定する必要がなくなるため、データ転送に伴う半導体記憶装置2の消費電力を低減することができる。
その一方で、ライトポインタ生成回路541を第1保持部510の近傍に配置することができる。ライトポインタ生成回路541と第1保持部510には、高速で遷移するクロック信号CLK1が供給される。従って、第2保持部520を第2データバス502を跨ぐように配置することにより、ライトポインタ生成回路541と第1保持部510とを近接して配置することができるため、クロック信号CLK1を伝搬させるための制御信号線を短くすることができる。これにより、データ転送に伴う半導体記憶装置2の消費電力をさらに低減することができる。
また、実施形態においては、第1保持部510および第2保持部520のそれぞれが、複数のフリップフロップFFを含むものとして説明した。しかし、第1保持部510および第2保持部520の構成はこれに限られない。第1保持部510および第2保持部520のそれぞれは、複数のフリップフロップFFの代わりに、複数のラッチ回路によって構成されていてもよい。ライトポインタWptrに応じてデータを格納可能なデータ保持回路を用いることで、所謂「先入れ先出し」(FIFO:First In First Out)の動作を行うように構成されていればよい。
以上、具体例を参照しつつ本実施形態について説明した。しかし、本開示はこれらの具体例に限定されるものではない。これら具体例に、当業者が適宜設計変更を加えたものも、本開示の特徴を備えている限り、本開示の範囲に包含される。前述した各具体例が備える各要素およびその配置、条件、形状などは、例示したものに限定されるわけではなく適宜変更することができる。前述した各具体例が備える各要素は、技術的な矛盾が生じない限り、適宜組み合わせを変えることができる。
1:メモリコントローラ、2:半導体記憶装置、31:入出力用パッド群、32:ロジック制御用パッド群、41:シーケンサ、110,210:メモリセルアレイ、510:第1保持部、520:第2保持部。
Claims (5)
- データを記憶するメモリセルアレイと、
前記メモリセルアレイから読み出されたデータを一時的に複数保持する保持部と、
前記保持部から繰り返し送信されるデータを外部のメモリコントローラに出力する出力部と、
前記メモリコントローラから、データを読み出すための読み出し信号を繰り返し受信する受信部と、
それぞれの前記読み出し信号に対応して、前記保持部から前記出力部へとデータを送信させる制御部と、を備え、
前記制御部は、
前記受信部によって最初に所定回数だけ受信されたそれぞれの前記読み出し信号に対応するデータとして、前記メモリコントローラが要求するデータとは異なる非正規データを、前記保持部から前記出力部へと送信させ、
前記受信部によってその後に受信された前記読み出し信号に対応するデータとして、前記メモリコントローラが要求するデータである正規データを、前記保持部から前記出力部へと送信させるものであり、
前記制御部は、
前記保持部に保持されている複数のデータのうち、前記出力部に向けて次に送信されるデータ、の保持位置を示すリードポインタを、前記所定回数に応じて予め調整しておくことで、前記保持部から前記非正規データを送信させる、半導体記憶装置。 - 前記制御部は、
前記リードポインタを、前記正規データの保持位置から、前記所定回数に応じた数だけマイナス側となる保持位置を示すように、予め調整しておく、請求項1に記載の半導体記憶装置。 - 前記保持部は、
前記メモリセルアレイから読み出されたデータを複数保持する第1保持部と、
前記第1保持部から送信されるデータを複数保持する第2保持部と、を含み、
前記読み出し信号に対応した前記出力部へのデータの送信を、前記第2保持部から行うものであり、
前記制御部は、
前記第1保持部から前記第2保持部へのデータの送信、及び、前記第2保持部から前記出力部へのデータの送信、のそれぞれを制御する、請求項1又は2に記載の半導体記憶装置。 - 前記制御部は、
前記第2保持部から前記出力部へと前記非正規データを送信させている期間において、
前記第1保持部から前記第2保持部へのデータの送信を停止させる、請求項3に記載の半導体記憶装置。 - 前記第2保持部は複数設けられている、請求項3又は4に記載の半導体記憶装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022043340A JP2023137230A (ja) | 2022-03-18 | 2022-03-18 | 半導体記憶装置 |
TW111119512A TWI828162B (zh) | 2022-03-18 | 2022-05-25 | 半導體記憶裝置 |
CN202210704968.7A CN116798491A (zh) | 2022-03-18 | 2022-06-21 | 半导体存储装置 |
US17/896,907 US20230298641A1 (en) | 2022-03-18 | 2022-08-26 | Semiconductor memory device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022043340A JP2023137230A (ja) | 2022-03-18 | 2022-03-18 | 半導体記憶装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023137230A true JP2023137230A (ja) | 2023-09-29 |
Family
ID=88048606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022043340A Pending JP2023137230A (ja) | 2022-03-18 | 2022-03-18 | 半導体記憶装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230298641A1 (ja) |
JP (1) | JP2023137230A (ja) |
CN (1) | CN116798491A (ja) |
TW (1) | TWI828162B (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023027622A (ja) * | 2021-08-17 | 2023-03-02 | キオクシア株式会社 | メモリデバイス及びメモリシステム |
US12027211B2 (en) * | 2022-05-26 | 2024-07-02 | Micron Technology, Inc. | Partial block handling protocol in a non-volatile memory device |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6928494B1 (en) * | 2000-03-29 | 2005-08-09 | Intel Corporation | Method and apparatus for timing-dependant transfers using FIFOs |
TW563132B (en) * | 2001-10-09 | 2003-11-21 | Via Tech Inc | Common DRAM controller supports double-data-rate and quad-data-rate memory |
TWI433150B (zh) * | 2009-07-27 | 2014-04-01 | Sunplus Technology Co Ltd | 應用於同步動態隨機存取記憶體介面之資料截取及時序漂移偵測的裝置及方法 |
JP2013034133A (ja) * | 2011-08-02 | 2013-02-14 | Fujitsu Ltd | 送信装置、送受信システムおよび制御方法 |
CN114127697A (zh) * | 2019-09-13 | 2022-03-01 | 铠侠股份有限公司 | 存储器*** |
US11562780B2 (en) * | 2019-10-04 | 2023-01-24 | Samsung Electronics Co., Ltd. | Memory device and memory system including the same |
JP2021149659A (ja) * | 2020-03-19 | 2021-09-27 | キオクシア株式会社 | 半導体集積回路、メモリコントローラ、およびメモリシステム |
-
2022
- 2022-03-18 JP JP2022043340A patent/JP2023137230A/ja active Pending
- 2022-05-25 TW TW111119512A patent/TWI828162B/zh active
- 2022-06-21 CN CN202210704968.7A patent/CN116798491A/zh active Pending
- 2022-08-26 US US17/896,907 patent/US20230298641A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN116798491A (zh) | 2023-09-22 |
TWI828162B (zh) | 2024-01-01 |
TW202338801A (zh) | 2023-10-01 |
US20230298641A1 (en) | 2023-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11074969B2 (en) | Semiconductor memory device | |
US8625376B2 (en) | Semiconductor memory device and method of operation the same | |
JP5330136B2 (ja) | 半導体記憶装置 | |
JP2008140488A (ja) | 半導体記憶装置 | |
US10026484B2 (en) | High-speed readable semiconductor storage device | |
US20230298641A1 (en) | Semiconductor memory device | |
JP2007133995A (ja) | 半導体集積回路装置 | |
US20230092551A1 (en) | Semiconductor storage device | |
TWI713034B (zh) | 快閃記憶體及其控制方法 | |
JP6770140B1 (ja) | 半導体装置およびその動作方法 | |
JP7404203B2 (ja) | 半導体記憶装置 | |
JP2011044187A (ja) | 半導体記憶装置 | |
TWI767789B (zh) | 半導體記憶裝置 | |
US11901020B2 (en) | Semiconductor storage device comprising a control circuit for changing a rate of increase of a voltage applied to non-selected word lines | |
TWI804191B (zh) | 半導體記憶裝置 | |
US20230186984A1 (en) | Semiconductor memory device | |
US20240079067A1 (en) | Semiconductor memory device | |
JP2023149587A (ja) | 半導体記憶装置 | |
JP2023130590A (ja) | 半導体記憶装置 | |
CN114203241A (zh) | 半导体存储装置 |