JP2020047340A - 不揮発性メモリ及びメモリシステム - Google Patents

不揮発性メモリ及びメモリシステム Download PDF

Info

Publication number
JP2020047340A
JP2020047340A JP2018174423A JP2018174423A JP2020047340A JP 2020047340 A JP2020047340 A JP 2020047340A JP 2018174423 A JP2018174423 A JP 2018174423A JP 2018174423 A JP2018174423 A JP 2018174423A JP 2020047340 A JP2020047340 A JP 2020047340A
Authority
JP
Japan
Prior art keywords
command
memory
memory controller
result
training
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
Application number
JP2018174423A
Other languages
English (en)
Inventor
健介 山本
Kensuke Yamamoto
健介 山本
康輔 柳平
Kosuke Yanagidaira
康輔 柳平
郁弥 渡邊
Fumiya Watanabe
郁弥 渡邊
正一 尾崎
Shoichi Ozaki
正一 尾崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kioxia Corp
Original Assignee
Kioxia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kioxia Corp filed Critical Kioxia Corp
Priority to JP2018174423A priority Critical patent/JP2020047340A/ja
Priority to TW107144321A priority patent/TWI709898B/zh
Priority to CN201811552726.0A priority patent/CN110931066B/zh
Priority to US16/280,323 priority patent/US10916276B2/en
Publication of JP2020047340A publication Critical patent/JP2020047340A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/20Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2254Calibration

Abstract

【課題】トレーニング結果の設定に要する時間の増加を抑制する。【解決手段】一実施形態の不揮発性メモリは、第1記憶領域及び第2記憶領域を含むメモリセルアレイと、メモリコントローラと通信可能に構成された入出力回路と、制御回路と、を備える。上記制御回路は、上記メモリコントローラから第1コマンドを受けると、上記入出力回路に関する第1トレーニング動作を実行し、上記メモリコントローラから第2コマンドを受けると、上記第1トレーニング動作の第1結果を前記第1記憶領域に記憶するように構成される。【選択図】図12

Description

実施形態は、不揮発性メモリ及びメモリシステムに関する。
不揮発性メモリとしてのNAND型フラッシュメモリと、NAND型フラッシュメモリを制御するメモリコントローラと、を含むメモリシステムが知られている。
米国特許第8081527号明細書 米国特許第8897083号明細書
トレーニング結果の設定に要する時間の増加を抑制する。
実施形態の不揮発性メモリは、第1記憶領域及び第2記憶領域を含むメモリセルアレイと、メモリコントローラと通信可能に構成された入出力回路と、制御回路と、を備える。上記制御回路は、上記メモリコントローラから第1コマンドを受けると、上記入出力回路に関する第1トレーニング動作を実行し、上記メモリコントローラから第2コマンドを受けると、上記第1トレーニング動作の第1結果を前記第1記憶領域に記憶するように構成される。
第1実施形態に係るメモリシステムの電源系統の構成を説明するためのブロック図。 第1実施形態に係るメモリシステムの信号系統の構成を説明するためのブロック図。 第1実施形態に係る半導体記憶装置の構成を説明するためのブロック図。 第1実施形態に係る半導体記憶装置のメモリセルアレイの構成を説明するための回路図。 第1実施形態に係る半導体記憶装置のメモリセルアレイの記憶領域を説明するためのブロック図。 第1実施形態に係る半導体記憶装置の入出力回路の構成を説明するためのブロック図。 第1実施形態に係る半導体記憶装置の入力回路の構成を説明するための回路図。 第1実施形態に係る半導体記憶装置の出力回路の構成を説明するための回路図。 第1実施形態に係るメモリシステムにおけるインタフェーストレーニング動作のトレーニング項目を説明するためのコマンドシーケンス。 第1実施形態に係るメモリシステムにおけるインタフェーストレーニング動作のトレーニング項目を説明するためのコマンドシーケンス。 第1実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作を説明するためのフローチャート。 第1実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を説明するためのコマンドシーケンス。 第2実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作を説明するためのフローチャート。 第2実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を説明するためのコマンドシーケンス。 第2実施形態に係るメモリシステムにおけるインタフェーストレーニング結果の設定変更動作を説明するためのコマンドシーケンス。 第2実施形態に係るメモリシステムにおけるインタフェーストレーニング結果の設定変更動作を説明するためのコマンドシーケンス。 第2実施形態の変形例に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作を説明するためのフローチャート。 第3実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作を説明するためのフローチャート。 第4実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作を説明するためのフローチャート。 第5実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作を説明するためのフローチャート。 第6実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作を説明するためのフローチャート。 第7実施形態に係るメモリシステムにおける詳細インタフェーストレーニング動作を含む一連の動作を説明するためのフローチャート。 第7実施形態に係るメモリシステムにおける詳細インタフェーストレーニング動作を説明するためのコマンドシーケンス。
以下、図面を参照して実施形態について説明する。なお、以下の説明において、同一の機能及び構成を有する構成要素については、共通する参照符号を付す。
なお、以下の説明では、信号X<n:0>(nは自然数)とは、(n+1)ビットの信号であり、各々が1ビットの信号である信号X<0>、X<1>、…、及びX<n>の集合を意味する。また、構成要素Y<n:0>とは、信号X<n:0>の入力又は出力に1対1に対応する構成要素Y<0>、Y<1>、…、及びY<n>の集合を意味する。
また、以下の説明では、「信号Zのデューティ比」とは、信号Zにおけるパルスの1周期に対する、パルスが立ち上がってから立ち下がるまでの時間の割合を示す。また、信号/Zは、信号Zの反転信号であることを示す。
1.第1実施形態
第1実施形態に係るメモリシステムについて説明する。第1実施形態に係るメモリシステムは、例えば、不揮発性メモリ(半導体記憶装置)としてのNAND型フラッシュメモリと、当該NAND型フラッシュメモリを制御するメモリコントローラと、を含む。
1.1 構成
1.1.1 メモリシステムの全体構成
第1実施形態に係るメモリシステムの全体構成について、図1及び図2を用いて説明する。メモリシステム1は、例えば、外部の図示しないホスト機器と通信する。メモリシステム1は、ホスト機器からのデータを保持し、また、データをホスト機器に読出す。
図1は、第1実施形態に係るメモリシステムの電源系統を説明するためのブロック図である。図1に示すように、メモリシステム1は、メモリコントローラ2と、NANDパッケージ3と、パワーマネージャ4と、を備えている。NANDパッケージ3は、例えば、複数の半導体記憶装置3A、3B、…を含む。半導体記憶装置3A、3B、…の各々は、例えば、同等の構成を有するため、以下の説明では、主に半導体記憶装置3A、3B、…のうちの半導体記憶装置3A及び3Bについて説明する。半導体記憶装置3A及び3Bはそれぞれ、チップA及びチップBと読み替えてもよい。
パワーマネージャ4は、メモリコントローラ2及びNANDパッケージ3に供給される電圧を管理するためのIC(Integrated circuit)である。パワーマネージャ4は、例えば、電圧VCCQをメモリコントローラ2及びNANDパッケージ3に供給する。電圧VCCQは、メモリコントローラ2とNANDパッケージ3との間で通信される入出力信号の基準電圧として用いられる。また、パワーマネージャ4は、例えば、NANDパッケージ3に電圧VCCを供給する。電圧VCCは、NANDパッケージ3内で用いられる基準電圧として用いられる。
図2は、第1実施形態に係るメモリシステムの信号系統を説明するためのブロック図である。図2に示すように、メモリコントローラ2は、半導体記憶装置3A及び3Bを制御する。具体的には、メモリコントローラ2は、データを半導体記憶装置3A及び3Bに書込み、データを半導体記憶装置3A及び3Bから読出す。メモリコントローラ2は、NANDバスによって半導体記憶装置3A及び3Bに接続される。
半導体記憶装置3A及び3Bの各々は、複数のメモリセルを備え、データを不揮発に記憶する。半導体記憶装置3A及び3Bの各々は、例えば、チップアドレスが予め割当てられることで一意に識別可能な半導体チップであり、メモリコントローラ2の指示によって独立に動作可能に構成される。
半導体記憶装置3A及び3Bの各々と接続されたNANDバス上では、同種の信号が送受信される。NANDバスは、複数の信号線を含み、NANDインタフェースに従った信号/CE0及び/CE1、CLE、ALE、/WE、/RE、/WP、/RB0及び/RB1、DQ<7:0>、DQS、並びに/DQSの送受信を行う。信号CLE、ALE、/WE、/RE、及び/WPは、半導体記憶装置3A及び3Bによって受け取られ、信号/RB0及び/RB1は、メモリコントローラ2によって受け取られる。また、信号/CE0及び/CE1はそれぞれ、半導体記憶装置3A及び3Bによって受け取られる。
信号/CE0及び/CE1はそれぞれ、半導体記憶装置3A及び3Bをイネーブルにするための信号である。信号CLEは、信号CLEが“H(High)”レベルである間に半導体記憶装置3A及び3Bに流れる信号DQ<7:0>がコマンドであることを半導体記憶装置3A及び3Bに通知する。信号ALEは、信号ALEが“H”レベルである間に半導体記憶装置3A及び3Bに流れる信号DQ<7:0>がアドレスであることを半導体記憶装置3A及び3Bに通知する。信号/WEは、信号/WEが“L(Low)”レベルである間に半導体記憶装置3A及び3Bに流れる信号DQ<7:0>を半導体記憶装置3A及び3Bに取り込むことを指示する。信号/REは、半導体記憶装置3A及び3Bに信号DQ<7:0>を出力することを指示し、例えば、信号DQ<7:0>を出力する際の半導体記憶装置3A及び3Bの動作タイミングを制御するために使用される。信号/WPは、データ書込み及び消去の禁止を半導体記憶装置3A及び3Bに指示する。信号/RB0及び/RB1はそれぞれ、半導体記憶装置3A及び3Bがレディ状態(外部からの命令を受け付ける状態)であるか、ビジー状態(外部からの命令を受け付けない状態)であるかを示す。信号DQ<7:0>は、例えば8ビットの信号である。信号DQ<7:0>は、半導体記憶装置3A及び3Bとメモリコントローラ2との間で送受信されるデータの実体であり、コマンド、アドレス、及びデータを含む。信号DQS及び/DQSは、例えば、信号DQ<7:0>に係る半導体記憶装置3A及び3Bの動作タイミングを制御するために使用される。
1.1.2 コントローラの構成
引き続き図2を用いて、第1実施形態に係るメモリシステムのコントローラについて説明する。メモリコントローラ2は、プロセッサ(CPU:Central Processing Unit)11、内蔵メモリ(RAM:Random Access Memory)12、NANDインタフェース回路13、バッファメモリ14、及びホストインタフェース回路15を備えている。
プロセッサ11は、メモリコントローラ2全体の動作を制御する。プロセッサ11は、例えば、外部から受信したデータの書込み命令に応答して、NANDインタフェースに基づく書込み命令を半導体記憶装置3A及び3Bに対して発行する。この動作は、読出し、消去、及び較正動作等のその他の動作の場合についても同様である。
内蔵メモリ12は、例えば、DRAM(Dynamic RAM)等の半導体メモリであり、プロセッサ11の作業領域として使用される。内蔵メモリ12は、半導体記憶装置3A及び3Bを管理するためのファームウェア、及び各種の管理テーブル等を保持する。
NANDインタフェース回路13は、上述のNANDバスを介して半導体記憶装置3A及び3Bと接続され、半導体記憶装置3A及び3Bとの通信を司る。NANDインタフェース回路13は、プロセッサ11の指示により、コマンド、アドレス、及び書込みデータを半導体記憶装置3A及び3Bに送信する。また、NANDインタフェース回路13は、半導体記憶装置3A及び3Bからステータス、及び読出しデータを受信する。
バッファメモリ14は、コントローラ10が半導体記憶装置3A及び3B、並びに外部から受信したデータ等を一時的に保持する。
ホストインタフェース回路15は、外部の図示しないホスト機器と接続され、ホスト機器との通信を司る。ホストインタフェース回路15は、例えば、ホスト機器から受信した命令及びデータを、それぞれプロセッサ11及びバッファメモリ14に転送する。
1.1.3 半導体記憶装置の構成
次に、第1実施形態に係る半導体記憶装置の構成例について、図3を用いて説明する。なお、上述の通り、半導体記憶装置3A、3B、…は、例えば、同等の構成を有する。このため、以下の説明では、半導体記憶装置3A、3B、…のうち、半導体記憶装置3Aの構成について説明し、他の半導体記憶装置3B、…の構成については、その説明を省略する。
図3に示すように、半導体記憶装置3Aは、メモリセルアレイ21、入出力回路22、ロジック制御回路23、温度センサ24、レジスタ25、シーケンサ26、電圧生成回路27、ドライバセット28、ロウデコーダ29、センスアンプ30、入出力用パッド群31、及びロジック制御用パッド群32を備えている。
メモリセルアレイ21は、複数のブロックBLK(BLK0、BLK1、…)を備えている。ブロックBLKは、ワード線及びビット線に関連付けられた複数の不揮発性メモリセルトランジスタ(図示せず)を含む。ブロックBLKは、例えばデータの消去単位となり、同一のブロックBLK内のデータは、一括して消去される。各ブロックBLKは、複数のストリングユニットSU(SU0、SU1、…)を備えている。各ストリングユニットSUは、複数のNANDストリングNSを備えている。なお、メモリセルアレイ211内のブロック数、1ブロックBLK内のストリングユニット数、1ストリングユニットSU内のNANDストリング数は、任意の数に設定出来る。
入出力回路22は、メモリコントローラ2と信号DQ<7:0>を送受信する。入出力回路22は、信号DQ<7:0>内のコマンド及びアドレスをレジスタ25に転送する。入出力回路22は、書込みデータ及び読出しデータをセンスアンプ30と送受信する。
ロジック制御回路23は、メモリコントローラ2から信号/CE0、CLE、ALE、/WE、/RE、及び/WPを受信する。また、ロジック制御回路23は、信号/RB0をメモリコントローラ2に転送して半導体記憶装置3Aの状態を外部に通知する。
温度センサ24は、半導体記憶装置3A内の温度を測定可能な機能を有する。温度センサ24は、測定した温度に関する情報をシーケンサ26に送出する。なお、温度センサ24は、メモリセルアレイ21の温度とみなし得る温度が測定可能な範囲において、半導体記憶装置3A内の任意の場所に設けられることができる。
レジスタ25は、コマンド及びアドレスを保持する。レジスタ25は、アドレスをロウデコーダ29及びセンスアンプ30に転送すると共に、コマンドをシーケンサ26に転送する。
シーケンサ26は、コマンドを受け取り、受け取ったコマンドに基づくシーケンスに従って半導体記憶装置3Aの全体を制御する。また、シーケンサ26は、温度センサ24から受けた温度に関する情報を、入出力回路22を介してメモリコントローラ2に送出する。
電圧生成回路27は、シーケンサ26からの指示に基づき、データの書込み、読出し、及び消去等の動作に必要な電圧を生成する。電圧生成回路27は、生成した電圧をドライバセット28に供給する。
ドライバセット28は、複数のドライバを含み、レジスタ25からのアドレスに基づいて、電圧生成回路27からの種々の電圧をロウデコーダ29及びセンスアンプ30に供給する。ドライバセット28は、例えば、アドレス中のロウアドレスに基づき、ロウデコーダ29に種々の電圧を供給する。
ロウデコーダ29は、レジスタ25からアドレス中のロウアドレスを受取り、当該ロウアドレスに基づく行のメモリセルを選択する。そして、選択された行のメモリセルには、ロウデコーダ29を介してドライバセット28からの電圧が転送される。
センスアンプ30は、データの読出し時には、メモリセルからビット線に読出された読出しデータをセンスし、センスした読出しデータを入出力回路22に転送する。センスアンプ30は、データの書込み時には、ビット線を介して書込まれる書込みデータをメモリセルに転送する。また、センスアンプ30は、レジスタ25からアドレス中のカラムアドレスを受取り、当該カラムアドレスに基づくカラムのデータを出力する。
入出力用パッド群31は、メモリコントローラ2から受信した信号DQ<7:0>、DQS、及び/DQSを入出力回路22に転送する。また、入出力用パッド群31は、入出力回路22から送信された信号DQ<7:0>を半導体記憶装置3Aの外部に転送する。
ロジック制御用パッド群32は、メモリコントローラ2から受信した信号/CE0、CLE、ALE、/WE、/RE、及び/WPをロジック制御回路23に転送する。また、ロジック制御用パッド群32は、ロジック制御回路23から送信された/RB0を半導体記憶装置3Aの外部に転送する。
1.1.4 メモリセルアレイの構成
次に、第1実施形態に係る半導体記憶装置のメモリセルアレイの構成について説明する。図4は、第1実施形態に係る半導体記憶装置のメモリセルアレイの構成を説明するための回路図の一例である。図4では、メモリセルアレイ21のうちの1つのブロックBLKの回路図が示される。
図4に示すように、各ストリングユニットSUは、NANDストリングNSの集合により構成される。NANDストリングNSの各々は、例えば64個のメモリセルトランジスタMT(MT0〜MT63)と、選択トランジスタST1と、選択トランジスタST2とを備える。なお、1つのNANDストリングNS内に含まれるメモリセルトランジスタMTの個数は64個に限られず、8個、16個、32個、96個、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の他端は、ソース線SLに接続される。ソース線SLは、複数のブロックBLKにわたって、複数のNANDストリングNSに共通接続される。
上述のとおり、データの消去は、例えば、同一のブロックBLK内にあるメモリセルトランジスタMTに対して一括して行われる。これに対して、データの読出し動作及び書込み動作は、いずれかのブロックBLKのいずれかのストリングユニットSUにおける、いずれかのワード線WLに共通接続された複数のメモリセルトランジスタMTにつき、一括して行われ得る。このような、1つのストリングユニットSU中でワード線WLを共有するメモリセルトランジスタMTの組は、例えば、セルユニットCUと称される。つまり、セルユニットCUは、一括して書込み動作、又は読出し動作が実行され得るメモリセルトランジスタMTの組である。
なお、1つのメモリセルトランジスタMTは、例えば、複数のビットデータを保持可能である。そして、同一のセルユニットCU内において、メモリセルトランジスタMTの各々が同位のビットにおいて保持する1ビットの集合を「ページ」と呼ぶ。つまり、「ページ」とは、同一のセルユニットCU内のメモリセルトランジスタMTの組に形成されるメモリ空間の一部、と定義することも出来る。
図5は、第1実施形態に係る半導体記憶装置のメモリセルアレイの記憶領域の一例を説明するためのブロック図である。
図5に示すように、メモリセルアレイ21は、ユーザデータ領域21A及びシステムデータ領域21Bを含む。
ユーザデータ領域21Aは、例えば、メモリコントローラ2から入力されたユーザデータを記憶するためのメモリセルトランジスタMTを含む記憶領域である。すなわち、ユーザデータ領域21Aは、ユーザが自由にアクセス可能な領域を示し、一般的な書込みコマンド及び読出しコマンドによってデータを書込み及び読出し可能な領域である。
システムデータ領域21Bは、例えば、半導体記憶装置3Aの動作に必要な各種設定値(システムデータ)を記憶するためのメモリセルトランジスタMTを含む記憶領域である。システムデータ領域21Bは、ユーザデータ領域21Aとは異なり、通常動作時に発行される一般的な書込みコマンドを使用した書込み動作が禁止される。システムデータ領域21Bへの書込み動作には、一般的な書込みコマンドとは異なる専用のコマンドが必要である。
1.1.5 入出力回路の構成
次に、第1実施形態に係る半導体記憶装置の入出力回路の構成について説明する。
1.1.5.1 入出力回路の全体構成
まず、第1実施形態に係る半導体記憶装置の入出力回路の全体構成について説明する。図6は、第1実施形態に係る半導体記憶装置の入出力回路の構成を説明するためのブロック図である。
図6に示すように、入出力回路22は、信号DQ<7:0>に対応する入力回路41<7:0>及び出力回路42<7:0>の組を含む。1つの入力回路41<j>及び出力回路42<j>の組には、例えば、同種の信号DQ<j>が割当てられる(0≦j≦7)。すなわち、入力回路41<j>及び出力回路42<j>の組は、外部のメモリコントローラ2と、入出力用パッド群31内のパッド31<j>を介して信号DQ<j>を通信可能である。
また、入出力回路22は、信号DQS及び/DQSの組に対応する入力回路41_dqs及び出力回路42_dqsの組を含む。すなわち、入力回路41_dqs及び出力回路42_dqsの組は、外部のメモリコントローラ2と、入出力用パッド群31内のパッド31_dqs及び31_bdqsを介して信号DQS及び/DQSを通信可能である。
1.1.5.2 入力回路の構成
次に、第1実施形態に係る入出力回路のうち、入力回路の構成について、図7を用いて説明する。図7は、第1実施形態に係る半導体記憶装置の入力回路の構成を説明するための回路図である。図7では、パッド31<0>と、当該パッド31<0>に対応する入力回路41<0>と、の接続関係、並びにパッド31_dqs及び31_bdqsと、当該パッド31_dqs及び31_bdqsに対応する入力回路41_dqsと、の接続関係の一例が示される。なお、他の入力回路41<7:1>の構成は、入力回路41<0>と同等の構成を有しているため、その説明を省略する。
図7に示すように、入力回路41<0>は、コンパレータCOMP1、及びインバータ群INV1を含む。入力回路41_dqsは、コンパレータCOMP2、並びにインバータ群INV2及びINV3を含む。
コンパレータCOMP1は、信号DQ<0>が供給される第1入力端と、電圧VREFが供給される第2入力端と、インバータ群INV1の入力端に接続された出力端と、を含む。電圧VREFは、信号DQの増幅に用いられる、一定値を有する基準電圧(参照信号)であり、例えば、電圧VCCQ/2である。コンパレータCOMP1は、例えば、信号DQ<0>を電圧VREFと比較することにより、信号DQ<0>の波形(例えば、デューティ比)を調整しつつ、その比較結果を差動増幅する機能を有する。インバータ群INV1は、例えば、コンパレータCOMP1から出力された信号に任意の遅延量を加え、コンパレータCOMP1からの出力信号の位相が反転した信号Dinとして出力する機能を有する。
コンパレータCOMP2は、信号DQSが供給される第1入力端と、信号/DQSが供給される第2入力端と、インバータ群INV2の入力端に接続された第1出力端と、インバータ群INV3の入力端に接続された第2出力端と、を含む。コンパレータCOMP2は、例えば、信号DQSと信号/DQSとを比較することにより、信号DQS及び/DQSの波形(例えば、デューティ比)を調整しつつ、その比較結果を差動増幅する機能を有する。インバータ群INV2及びINV3はそれぞれ、例えば、コンパレータCOMP2から出力された信号に任意の遅延量を加え、コンパレータCOMP2からの出力信号の位相が同じ信号SIG及び/SIGとして出力する機能を有する。なお、信号SIG及び/SIGは、例えば、互いに逆位相の信号である。
データラッチ50は、信号SIG及び/SIGに基づき、信号Dinに含まれるデータを入力データとしてラッチする機能を有する。
以上のように構成されることにより、入力回路41<0>及び41_dqsは、信号DQ<0>、DQS、及び/DQSを適切な波形に調整しつつ、データをチップA内に入力することができる。
1.1.5.3 出力回路の構成
次に、第1実施形態に係る入出力回路のうち、出力回路の構成の詳細について図8を用いて説明する。
図8は、第1実施形態に係る半導体記憶装置の出力回路の構成を説明するための回路図である。図8では、パッド31<0>と、当該パッド31<0>に対応する出力回路42<0>と、の接続関係の一例が示される。なお、他の出力回路42<7:1>、及び42_dqsの構成は、出力回路42<0>と同等の構成を有しているため、その説明を省略する。
図8に示すように、出力回路42<0>は、例えば、i個の論理回路NAND<i:0>及びNOR<i:0>、並びにトランジスタTp<i:0>及びTn<i:0>を含む。ここで、iは、任意の自然数である。論理回路NAND<i:0>は、2つの入力信号のNAND演算結果を出力する。論理回路NOR<i:0>は、2つの入力信号のNOR演算結果を出力する。トランジスタTp<i:0>はp型の極性を有し、トランジスタTn<i:0>は、n型の極性を有する。
Ron制御回路52及び出力制御回路53はそれぞれ、パッド31<0>から出力信号として出力される信号DQ<0>を制御するための信号を送出する。具体的には、Ron制御回路52は、信号SELp<i:0>及びSELn<i:0>を、出力制御回路53は、信号Doutを、出力回路42<0>に送出する。
論理回路NAND<i:0>は、信号Doutが共通して供給される第1入力端を含み、信号SELp<i:0>がそれぞれ供給される第2入力端を含む。また、論理回路NAND<i:0>はそれぞれ、トランジスタTp<i:0>のゲートに接続される。
トランジスタTp<i:0>は、電圧VCCQが共通して供給される第1端と、パッド31<0>に共通して接続される第2端と、を含む。
論理回路NOR<i:0>は、信号Doutが共通して供給される第1入力端を含み、信号SELn<i:0>がそれぞれ供給される第2入力端を含む。また、論理回路NOR<i:0>はそれぞれ、トランジスタTn<i:0>のゲートに接続される。
トランジスタTn<i:0>は、電圧VSSが共通して供給される第1端と、パッド31<0>に共通して接続される第2端と、を含む。
以上のように構成することにより、出力回路42<0>は、信号Doutが“H”レベルの場合、トランジスタTp<i:0>のうち、信号SELp<i:0>によってオン抵抗となるように選択されたトランジスタの合成抵抗を、信号DQ<0>のプルアップ側の出力インピーダンスとして設定することができる。また、出力回路42<0>は、信号Doutが“L”レベルの場合、トランジスタTn<i:0>のうち、信号SELn<i:0>によってオン抵抗となるように選択されたトランジスタの合成抵抗を、信号DQ<0>のプルダウン側の出力インピーダンスとして設定することができる。このため、出力回路42<0>は、Ron制御回路52からの信号SELp<i:0>及びSELn<i:0>、並びに出力制御回路53からの信号Doutによって、適切なインピーダンス及びデューティ比の信号DQ<0>を出力することができる。
なお、図7及び図8を用いて説明した信号DQ<0>を入力及び出力するための各種設定パラメタは、例えば、通常動作の実行に先立って、上述したシステムデータ領域21B内に予め保持される。以下の説明では、最適な入力信号及び出力信号を生成可能な設定パラメタを得るための動作を、「インタフェーストレーニング動作」と呼ぶ。図7に示した入力制御回路51や、図8に示したRon制御回路52及び出力制御回路53は、通常動作に際して、トレーニング結果としてシステムデータ領域21Bに予め保持された各種設定パラメタを読み出すことによって、信号DQ<0>のデューティ比等を適切に制御することができる。他の信号DQ<7:1>、DQS、及び/DQSについても、信号DQ<0>と同様に、トレーニング結果としてシステムデータ領域21Bに予め保持された各種設定パラメタが読み出されることによって、適切な波形に調整されることができる。
1.2 動作
次に、第1実施形態に係るメモリシステムにおける動作について説明する。
1.2.1 インタフェーストレーニング動作のトレーニング項目
図9及び図10は、第1実施形態に係るメモリシステムにおけるインタフェーストレーニング動作のトレーニング項目を説明するためのコマンドシーケンスである。図9及び図10ではそれぞれ、通常動作の際に実行される一般的な読出し動作及び書込み動作におけるコマンドシーケンスを例に、信号DQ<7:0>、DQS、及び/DQSに関する設定パラメタがどのようにトレーニングされるか、が模式的に示される。なお、図9及び図10では、一例として、チップAに対する動作が示される。
まず、図9を参照して、読出し動作におけるトレーニング項目について説明する。
図9に示すように、読出し動作に際しては、メモリコントローラ2は、例えば、信号/WEをトグルさせつつ、読出しコマンド“00h”、5サイクルにわたるアドレスADD、及びコマンド“30h”を続けて発行し、チップAに送出する。コマンド“00h”は、チップA内のユーザデータ領域21Aからのデータの読出しを命令するコマンドであり、コマンド“30h”は、当該読出し動作の開始を命令するコマンドである。チップAは、コマンド“30h”を受けると、メモリセルアレイ21内のユーザデータ領域21Aからのデータの読出し動作を開始し、信号/RB0を“L”レベルにして、チップAがビジー状態であることをメモリコントローラ2に知らせる。ユーザデータ領域21Aからのデータの読出しが完了した後、チップAは、信号/RB0を“H”レベルにして、チップAがレディ状態であることをメモリコントローラ2に知らせる。
メモリコントローラ2は、チップAがレディ状態になったことを確認した後、信号/REをトグルさせる。チップAは、当該信号/REに同期させて、読み出したデータを信号DQ<7:0>としてメモリコントローラ2に転送する。転送の際には、チップAは、信号DQ<7:0>に同期させて信号DQS及び/DQSをトグルさせ、メモリコントローラ2に送出する。
ここで、上述の通り、信号/WEが“L”レベルとなることによって、信号DQ<7:0>をチップ内に取り込むことが指示される。このため、チップに信号DQ<0>としてコマンド“00h”及び“30h”、並びにアドレスADDが入力される期間が、信号/WEが“L”レベルとなる期間d1に含まれることが望ましい。このため、通常動作に際して、チップAには、信号DQ<0>が信号/WEに対して適切なタイミング及びデューティ比で入力されるように調整された制御パラメタを、インタフェーストレーニング動作によって、入力制御回路51に予め設定しておくことが望ましい。このような、信号/WEと信号DQ<7:0>との間の波形の整形(デスキュー(de‐skew)とも呼ぶ)を伴うインタフェーストレーニング動作のトレーニング項目は、例えば、「ライトイネーブルトレーニング(Write enable training)」とも呼ぶ。
また、上述した読出し動作において、信号/REに対して所定のタイミングで、読出しデータとしての信号DQ<7:0>とストローブ信号としての信号DQS及び/DQSとがメモリコントローラ2に出力されることが望ましい。より具体的には、信号DQSは、信号/REが“H”レベルから“L”レベルに立ち下がってから期間d2後に、“H”レベルから“L”レベルに立ち下がることが望ましい。また、信号DQ<7:0>は、例えば、信号DQS及び/DQSと同じ位相で(信号DQS及び/DQSがトグルする期間d3と一致する期間内に)チップAから出力されることが望ましい。このため、読出し動作に際して、チップAには、信号DQS及び/DQS、並びにDQ<7:0>が信号/REに対して適切なタイミング及びデューティ比でチップAに入力されるように調整されたパラメタを、インタフェーストレーニング動作によって、Ron制御回路52及び出力制御回路53に予め設定しておくことが望ましい。このような、読出し動作における信号/REと信号DQS及び/DQS、並びにDQ<7:0>との間の波形の整形を伴うインタフェーストレーニング動作のトレーニング項目は、例えば、「リードデータデスキュー(Read data de‐skew)」とも呼ぶ。
次に、図10を参照して、書込み動作におけるトレーニング項目について説明する。
図10に示すように、書込み動作に際しては、メモリコントローラ2は、例えば、信号/WEをトグルさせつつ、読出しコマンド“80h”、5サイクルにわたるアドレスADD、及びコマンド“10h”を続けて発行し、チップAに送出する。コマンド“80h”は、チップA内のユーザデータ領域21Aへのデータの書込みを命令するコマンドであり、コマンド“10h”は、当該書込み動作の開始を命令するコマンドである。なお、コマンド“80h”によるデータの書込み動作は、ユーザデータ領域21A内へは許可されるが、システムデータ領域21Bへは禁止される。
続いて、メモリコントローラ2は、コマンド“10h”の後に、チップAに書き込むデータを信号DQ<7:0>として送出する。書込みデータの送出の際には、メモリコントローラ2は、信号DQ<7:0>に同期させて信号DQS及び/DQSをトグルさせ、チップAに送出する。
チップAは、書込みデータを受けると、メモリセルアレイ21内のユーザデータ領域21Aへのデータの書込み動作を開始し、信号/RB0を“L”レベルにして、チップAがビジー状態であることをメモリコントローラ2に知らせる。ユーザデータ領域21Aへのデータの書込みが完了した後、チップAは、信号/RB0を“H”レベルにして、チップAがレディ状態であることをメモリコントローラ2に知らせる。
上述した書込み動作において、信号DQ<7:0>は、例えば、信号DQS及び/DQSから90度遅れた位相で(信号DQS及び/DQSがトグルする期間2×d4の中間において、信号DQ<7:0>のエッジが位置するように)チップAに入力されることが望ましい。このため、チップAには、書込み動作の際、信号DQ<7:0>が信号DQS及び/DQSに対して適切なタイミング及びデューティ比でチップAから出力されるように調整されたパラメタを、インタフェーストレーニング動作によってRon制御回路52及び出力制御回路53に予め設定しておくことが望ましい。このような、書込み動作における信号DQS及び/DQSと、信号DQ<7:0>との間の波形の整形を伴うインタフェーストレーニング動作のトレーニング項目は、例えば、「ライトデータデスキュー(Write data de‐skew)」とも呼ぶ。
なお、上述の書込み動作においても、読出し動作と同様、ライトイネーブルトレーニングが実行され得る。
第1実施形態に係るメモリシステムでは、例えば、以上のようなトレーニング項目を含むインタフェーストレーニング動作が、通常動作に先立って実行されることにより、通常動作時のチップ‐メモリコントローラ間の通信が保障される。
1.2.2 インタフェーストレーニング動作を含む一連の動作
次に、第1実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作について、図11に示すフローチャートを用いて説明する。
図11では、インタフェーストレーニング動作が実行されるテストフェーズと、当該インタフェーストレーニング動作の結果に基づく通常動作が実行される実運用フェーズと、を含むメモリシステム1における一連の動作フローが示される。なお、図11では、説明を簡単にするために、メモリコントローラ2と、半導体記憶装置3A及び3Bとの間の動作が示される。以下の説明では、半導体記憶装置3A及び3Bは、それぞれチップA及びチップBとして説明する。
図11に示すように、ステップST10〜ST28は、テストフェーズにおける動作を示し、ステップST30〜ST34は、実運用フェーズにおける動作を示す。なお、以下に示す各ステップは、テストフェーズ及び実運用フェーズではいずれも、メモリシステム1において、少なくともメモリコントローラ2及びNANDパッケージ3が組み上がった状態で実行されるものとする。
ステップST10において、メモリシステム1に電源が投入される。パワーマネージャ4は、メモリコントローラ2及びNANDパッケージ3に電圧VCCQを供給し、NANDパッケージ3に電圧VCCを更に供給する。
電源投入後、まず、チップAに対するインタフェーストレーニング動作が実行される。
ステップST12において、メモリコントローラ2は、インタフェーストレーニング動作を実行する旨のコマンド(I/Fトレーニング実行コマンド)を発行し、チップAに送出する。
ステップST14において、I/Fトレーニング実行コマンドを受けると、チップAは、インタフェーストレーニング動作を実行する。インタフェーストレーニング動作には、例えば、図9及び図10を用いて説明したような複数種類のトレーニング項目が含まれ得る。インタフェーストレーニング動作が終了すると、チップAは、メモリコントローラ2に対してトレーニングの終了通知を送出する。
ステップST16において、メモリコントローラ2は、トレーニング結果を記憶する旨のコマンド(トレーニング結果記憶コマンド)を発行し、チップAに送出する。
ステップST18において、トレーニング結果記憶コマンドを受けると、チップAは、ステップST14において実行したインタフェーストレーニング動作の結果をチップA内のシステムデータ領域21B内に記憶する。
以上により、チップAに対するインタフェーストレーニング動作が終了する。
続いて、チップBに対するインタフェーストレーニング動作が実行される。
ステップST20において、メモリコントローラ2は、I/Fトレーニング実行コマンドを発行し、チップBに送出する。
ステップST22において、I/Fトレーニング実行コマンドを受けると、チップBは、インタフェーストレーニング動作を実行する。チップBは、例えば、インタフェーストレーニング動作が終了すると、メモリコントローラ2に対してトレーニングの終了通知を送出する。
ステップST24において、メモリコントローラ2は、トレーニング結果記憶コマンドを発行し、チップBに送出する。
ステップST26において、トレーニング結果記憶コマンドを受けると、チップBは、ステップST22において実行したインタフェーストレーニング動作の結果をチップB内のシステムデータ領域21B内に記憶する。
以上により、チップBに対するインタフェーストレーニング動作が終了する。
このように、全てのチップに対して順次インタフェーストレーニング動作が実行され、各々のトレーニング結果が各々のメモリセルアレイ21内のシステムデータ領域21Bに不揮発に記憶される。
ステップST28において、パワーマネージャ4は、メモリコントローラ2及びNANDパッケージ3への電源供給を停止し、テストフェーズが終了する。この後、メモリシステム1が出荷され、フェーズは実運用フェーズに移行する。
ステップST30において、メモリシステム1に再度、電源が投入される。
ステップST32において、電源投入に伴い、NANDパッケージ3内に記憶された各種設定パラメタが読み出される(パワーオンリード処理)。パワーオンリード処理において、ステップST18及びST26で各々のチップ内のシステムデータ領域21Bに記憶されたトレーニング結果も読み出され、入出力回路22内の入力制御回路51、Ron制御回路52、及び出力制御回路53等に設定される。
ステップST34において、ユーザデータ領域21A内への書込み動作や、ユーザデータ領域21Aからの読出し動作を含む通常動作が実行される。通常動作に際しては、トレーニング結果が適用された入出力信号が生成される。これにより、メモリコントローラ2とNANDパッケージ3との間の通信にエラーが発生することを抑制することができる。
以上で、一連の処理が終了する。
1.2.3 インタフェーストレーニング動作のコマンドシーケンス
図12は、第1実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を説明するためのコマンドシーケンスである。図12は、図11におけるステップST12〜ST26に対応する。また、図12では、チップA及びチップBの各々に対して、2種類のトレーニング項目を含むインタフェーストレーニング動作が実行される場合の例が示される。
図12に示すように、メモリコントローラ2は、信号/CE0を“L”レベルにして、チップAをイネーブルにする。信号/CE1は、“H”レベルに維持される。
メモリコントローラ2は、インタフェーストレーニング実行コマンドとして、コマンド“X1h”を発行する。コマンド“X1h”は、例えば、1種類目のトレーニング項目に対応するインタフェーストレーニング動作(第1I/Fトレーニング動作)の実行を指示するコマンドである。続いて、メモリコントローラ2は、アドレスADDを発行する。当該アドレスADDには、例えば、トレーニング対象のチップ(すなわち、チップA)に対応するチップアドレスが含まれる。
チップAは、コマンド“X1h”及び後続するアドレスADDを受けると、第1I/Fトレーニング動作を開始し、信号/RB0を“L”レベルにして、チップAがビジー状態であることをメモリコントローラ2に知らせる。第1I/Fトレーニング動作が終了した後、チップAは、信号/RB0を“H”レベルにして、チップAがレディ状態であることをメモリコントローラ2に知らせる。
続いて、メモリコントローラ2は、インタフェーストレーニング実行コマンドとして、コマンド“X2h”を発行する。コマンド“X2h”は、例えば、2種類目のインタフェース項目に対応するインタフェーストレーニング動作(第2I/Fトレーニング動作)の実行を指示するコマンドである。続いて、メモリコントローラ2は、チップAに対応するチップアドレスが含まれるアドレスADDを発行する。
チップAは、コマンド“X2h”及び後続するアドレスADDを受けると、第2I/Fトレーニング動作を開始し、信号/RB0を“L”レベルにして、チップAがビジー状態であることをメモリコントローラ2に知らせる。第2I/Fトレーニング動作が終了した後、チップAは、信号/RB0を“H”レベルにして、チップAがレディ状態であることをメモリコントローラ2に知らせる。
続いて、メモリコントローラ2は、トレーニング結果記憶コマンドとして、コマンド“YYh”を発行する。続いて、メモリコントローラ2は、チップAに対応するチップアドレスが含まれるアドレスADDを発行する。
チップAは、コマンド“YYh”及び後続するアドレスADDを受けると、トレーニング結果の記憶動作を開始し、信号/RB0を“L”レベルにして、チップAがビジー状態であることをメモリコントローラ2に知らせる。第1I/Fトレーニング動作及び第2I/Fトレーニング動作の各々によるトレーニング結果をシステムデータ領域21B内に記憶した後、チップAは、信号/RB0を“H”レベルにして、チップAがレディ状態であることをメモリコントローラ2に知らせる。
メモリコントローラ2は、信号/CE0を“H”レベルにして、チップAをディセーブルにする。以上の動作により、図11におけるステップST12〜ST18が終了する。
以降、チップBについても、チップAと同様の動作が実行される。すなわち、メモリコントローラ2は、信号/CE1を“L”レベルにして、チップAをイネーブルにする。信号/CE0は、“H”レベルに維持される。
メモリコントローラ2は、インタフェーストレーニング実行コマンドとして、コマンド“X1h”、及びチップBに対応するチップアドレスが含まれるアドレスADDを発行する。
チップBは、コマンド“X2h”及び後続するアドレスADDを受けると、第1I/Fトレーニング動作を開始し、信号/RB1を“L”レベルにして、チップBがビジー状態であることをメモリコントローラ2に知らせる。第1I/Fトレーニング動作が終了した後、チップBは、信号/RB1を“H”レベルにして、チップBがレディ状態であることをメモリコントローラ2に知らせる。
続いて、メモリコントローラ2は、コマンド“X2h”、及びチップBに対応するチップアドレスが含まれるアドレスADDを発行する。
チップBは、コマンド“X2h”及び後続するアドレスADDを受けると、第2I/Fトレーニング動作を開始し、信号/RB1を“L”レベルにして、チップBがビジー状態であることをメモリコントローラ2に知らせる。第2I/Fトレーニング動作が終了した後、チップBは、信号/RB1を“H”レベルにして、チップBがレディ状態であることをメモリコントローラ2に知らせる。
続いて、メモリコントローラ2は、トレーニング結果記憶コマンドとして、コマンド“YYh”、及びチップBに対応するチップアドレスが含まれるアドレスADDを発行する。
チップBは、コマンド“YYh”及び後続するアドレスADDを受けると、トレーニング結果の記憶動作を開始し、信号/RB1を“L”レベルにして、チップBがビジー状態であることをメモリコントローラ2に知らせる。第1I/Fトレーニング動作及び第2I/Fトレーニング動作によるトレーニング結果をシステムデータ領域21B内に記憶した後、チップBは、信号/RB1を“H”レベルにして、チップBがレディ状態であることをメモリコントローラ2に知らせる。
メモリコントローラ2は、信号/CE1を“H”レベルにして、チップBをディセーブルにする。以上の動作により、図11におけるステップST20〜ST26が終了する。
1.3 本実施形態に係る効果
第1実施形態によれば、トレーニング結果の設定に要する時間の増加を抑制することができる。本効果について、以下に説明する。
メモリコントローラ2は、メモリシステム1の出荷前に相当するテストフェーズにおいて、NANDパッケージ3に対してI/Fトレーニング実行コマンドを発行する。NANDパッケージ3内のチップは、I/Fトレーニング実行コマンドを受けると、インタフェーストレーニング動作を実行し、メモリコントローラ2との通信に適用される最適なパラメタを取得する。メモリコントローラ2は、当該インタフェーストレーニング動作の後、NANDパッケージ3に対してトレーニング結果記憶コマンドを更に発行する。NANDパッケージ3内のチップは、トレーニング結果記憶コマンドを受けると、取得したパラメタをメモリセルアレイ21内のシステムデータ領域21Bに記憶する。これにより、テストフェーズの終了後にメモリシステム1の電源がオフされた後にも、トレーニング結果がNANDパッケージ3内に不揮発に記憶される。このため、メモリシステム1の出荷後に相当する実運用フェーズにおいて、電源オン後のパワーオンリード処理の際に、システムデータ領域21Bからトレーニング結果を読み出すことができる。すなわち、NANDパッケージ3は、実運用フェーズにインタフェーストレーニング動作を実行することなく、最適なトレーニング結果を入出力回路22に設定することができる。したがって、メモリシステム1を起動させる時間がインタフェーストレーニング動作の実行に伴って増加することを抑制できる。
補足すると、記憶容量の増加に伴い、メモリコントローラ2及びNANDパッケージ3間のインタフェースには高速に通信可能なことが要求される。インタフェースが高速化すると、インタフェース特性に対するマージンが少なくなるため、特性改善のためのインタフェーストレーニング動作の実行が必要となり得る。しかしながら、記憶容量の増加に伴ってNANDパッケージ3内のチップ数が増加すると、インタフェーストレーニング動作に要する時間は、チップ数に応じて増加し得る。また、特性を精度よく改善するためにトレーニング項目を増やすと、インタフェーストレーニング動作に要する時間は、トレーニング項目の数に応じて増加し得る。このように、インタフェーストレーニング動作に要する時間は増加傾向にあるため、実運用フェーズにおける電源オン時にインタフェーストレーニング動作を実行する場合、メモリシステム1の起動までの時間が長くなる可能性がある。
第1実施形態によれば、インタフェーストレーニング動作をテストフェーズ中に実行しておき、当該トレーニング結果をシステムデータ領域21B内に不揮発に記憶しておく。これにより、実運用フェーズにおけるインタフェーストレーニング動作の時間を省略でき、メモリシステム1の速やかな起動を実現できる。
2. 第2実施形態
次に、第2実施形態に係るメモリシステムについて説明する。
第1実施形態では、テストフェーズにおいて実行されたトレーニング結果が、実運用フェーズにおいて一意的に適用される場合について説明したが、これに限られない。例えば、テストフェーズにおいて、同一のトレーニング項目について、複数の環境下でインタフェーストレーニング動作が実行され、実運用フェーズにおける環境の変化に応じて、適応的にトレーニング結果が適用されてもよい。以下の説明では、第1実施形態と同等の構成及び動作については説明を省略し、第1実施形態と異なる構成及び動作について主に説明する。
2.1 インタフェーストレーニング動作を含む一連の動作
第2実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作について、図13に示すフローチャートを用いて説明する。
図13は、第1実施形態における図11に対応し、図11に示したステップST10及びST12の間にステップST11が追加され、ステップST26及びST28の間にステップST27が追加され、ステップST34以降にステップST40〜ST45が追加される場合が示される。
図13に示すように、ステップST10において、メモリシステム1に電源が投入される。
ステップST11において、メモリシステム1は、予め定められたテストケースにしたがって、メモリコントローラ2、並びにチップA及びチップBの温度環境を設定する。温度環境のテストケース(温度ケース)としては、任意のケースが設定可能であるが、例えば、常温ケース、高温ケース、及び低温ケース等が想定される。例えば、温度ケースとして常温ケースに設定された場合、メモリシステム1の温度環境は、実運用フェーズにおいてメモリシステム1が通常使用される温度環境に設定される。また、例えば、温度ケースとして高温ケース及び低温ケースに設定された場合、メモリシステム1の温度環境はそれぞれ、常温ケースよりも高温及び低温に設定される。
ステップST12〜ST26において、メモリシステム1は、インタフェーストレーニング動作の実行、及びトレーニング結果の記憶をする。なお、ステップST16及びST24において、メモリコントローラ2は、トレーニング結果記憶コマンドの発行に際し、トレーニング結果の記憶先を指定する。これにより、ステップST18及びST26において、チップA及びチップBは、システムデータ領域21B内に、トレーニング結果を温度ケース毎に個別に記憶することができる。
ステップST27において、メモリコントローラ2は、全ての温度ケースについてインタフェーストレーニング動作が実行されたか否かを判定する。インタフェーストレーニング動作が完了していない温度ケースがあると判定された場合(ステップST27;no)、処理はステップST11に戻り、ステップST11〜ST26が繰り返し実行される。全温度ケースについてインタフェーストレーニング動作が完了したと判定された場合(ステップST27;yes)、処理はステップST28に進む。
ステップST28において、メモリシステム1への電源供給が停止され、テストフェーズが終了する。
ステップST30において、メモリシステム1に再度、電源が投入される。
ステップST32において、電源投入に伴い、パワーオンリード処理が実行される。パワーオンリード処理に際し、ステップST18及びST26で各々のチップ内のシステムデータ領域21Bに記憶されたトレーニング結果も読み出され、入力制御回路51、Ron制御回路52、及び出力制御回路53等に設定される。なお、パワーオンリード処理では、例えば、デフォルトの温度状態(すなわち、常温ケース)におけるトレーニング結果が読み出され、各回路に設定されるものとする。
ステップST34において、ユーザデータ領域21A内への書込み動作や、ユーザデータ領域21Aからの読出し動作を含む通常動作が実行される。
ステップST40において、チップA及びチップBは、温度センサ24によって検出された温度情報を取得する。温度情報の取得は、任意のタイミングで実行可能であり、例えば、通常動作の際の書込み動作や読出し動作と併せて実行されてもよいし、メモリコントローラ2からの指示(図示せず)に応じて実行されてもよい。
ステップST41において、メモリコントローラ2は、チップA及びチップBに対して、温度情報の取得要求を発行する。
ステップST42において、チップA及びチップBは、温度情報の取得要求に応じて、ステップST40において取得した温度情報をメモリコントローラ2に出力する。
ステップST43において、メモリコントローラ2は、取得した温度情報に基づき、チップA及びチップB内の温度に有意な変化が生じたか否かを判定する。ここで、温度変化が「有意である」とは、チップ内の温度が、ステップST32において設定された現在の温度ケースに対応する範囲外(すなわち、他の温度ケースに対応する範囲内)にまで変化したことを意味する。チップ内の温度変化が有意であると判定された場合(ステップST43;yes)、トレーニング結果の設定変更が必要であると判定し、処理はステップST44に進む。一方、チップ内の温度変化が有意でないと判定された場合(ステップST43;no)、トレーニング結果の設定変更は不要であると判定し、一連の処理が終了する。
ステップST44において、メモリコントローラ2は、トレーニング結果における温度ケースの設定を変更する旨の設定変更コマンドを発行し、ステップST43においてチップ内の温度変化が有意であると判定されたチップに送出する。
ステップST45において、設定変更コマンドを受けたチップは、当該設定変更コマンドに応じて、トレーニング結果における温度ケースの設定変更を行う。
以上で、一連の処理が終了する。
2.2 インタフェーストレーニング動作のコマンドシーケンス
図14は、第2実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を説明するためのコマンドシーケンスである。図14は、第1実施形態における図12のうち、信号DQ<7:0>及び/RBが簡略化して示されている。また、図14では、説明を簡単にするため、一例として、チップAに対する第1I/Fトレーニング動作に対して、3つの温度ケースに対応するインタフェーストレーニング動作が実行される場合が抽出して示されている。なお、図14の例では、温度ケースが、低温ケース、常温ケース、及び高温ケースの順に実行される場合が示される。
まず、メモリシステム1は、低温ケースに対応する温度状態に設定される。
そして、図14に示すように、メモリコントローラ2は、コマンド“X1h”及びチップAのチップアドレスを含むアドレスADDを発行し、第1I/Fトレーニング動作の実行をチップAに指示する。チップAは、当該コマンド“X1h”及びアドレスADDに応じて、低温状態における第1I/Fトレーニング動作を開始する。
続いて、メモリコントローラ2は、コマンド“YYh”を発行する。続いて、メモリコントローラ2は、チップAに対応するチップアドレスを含むアドレスADDと、トレーニング結果の格納先をテストケース毎に指定可能なアドレス(トレーニング結果指定アドレス)00hと、を続けて発行する。図14の例では、アドレス00hは、低温ケースに対応付けられており、当該アドレス00hに対応するシステムデータ領域21B内に、低温ケースのトレーニング結果が記憶される。
以下、同様にして、常温ケース、及び高温ケースについてもトレーニング動作が実行され、トレーニング結果が各々の格納先に記憶される。
メモリシステム1は、常温ケースに対応する温度状態に設定される。
メモリコントローラ2は、コマンド“X1h”及びチップAのチップアドレスを含むアドレスADDを発行する。チップAは、当該コマンド“X1h”及びアドレスADDに応じて、常温状態における第1I/Fトレーニング動作を開始する。
続いて、メモリコントローラ2は、コマンド“YYh”、チップAに対応するチップアドレスを含むアドレスADD、及び手印のケースに対応付けられたトレーニング結果指定アドレス01hを続けて発行する。これにより、アドレス01hに対応するシステムデータ領域21B内に、常温ケースのトレーニング結果が記憶される。
次に、メモリシステム1は、高温ケースに対応する温度状態に設定される。
メモリコントローラ2は、コマンド“X1h”及びチップAのチップアドレスを含むアドレスADDを発行する。チップAは、当該コマンド“X1h”及びアドレスADDに応じて、高温状態における第1I/Fトレーニング動作を開始する。
続いて、メモリコントローラ2は、コマンド“YYh”、チップAに対応するチップアドレスを含むアドレスADD、及び高温ケースに対応付けられたトレーニング結果指定アドレス02hを続けて発行する。これにより、アドレス02hに対応するシステムデータ領域21B内に、高温ケースのトレーニング結果が記憶される。
以上のように動作することにより、温度ケースの各々に対応するトレーニング結果を、個別にシステムデータ領域21B内に記憶させることができる。
2.3 トレーニング結果の設定変更動作のコマンドシーケンス
次に、第2実施形態に係るメモリシステムにおけるトレーニング結果の設定変更動作について、図15及び図16に示すコマンドシーケンスを用いて説明する。
図15及び図16はいずれも、トレーニング結果の設定変更を実現可能なコマンドシーケンスの一例である。図15では、設定変更動作に専用コマンドが用いられる場合が示され、図16では、汎用コマンドであるセットフィーチャコマンドが用いられる場合が示される。
まず、専用コマンドで設定変更する場合について、図15を参照して説明する。
図15に示すように、メモリコントローラ2は、コマンド“ZZh”をチップAへ送信する。コマンド“ZZh”は、トレーニング結果を指定した温度ケースに設定変更する旨をチップAに指示するコマンド(設定変更コマンド)である。引き続き、メモリコントローラ2は、チップAのチップアドレスを含むアドレスADDと、トレーニング結果指定アドレス00h〜02hのいずれかと、を続けて送出する。これにより、チップAにおいて、現状の設定値が、指定された温度ケースに対応するトレーニング結果に設定変更され、以降の処理に適用される。
次に、セットフィーチャコマンドで設定変更する場合について、図16を参照して説明する。
図16に示すように、メモリコントローラ2は、コマンド“EFh”をチップAへ送信する。コマンド“EFh”は、トレーニング結果を含む、各種設定を変更する旨をチップAに指示するセットフィーチャコマンドである。引き続き、メモリコントローラ2は、チップAのチップアドレスを含むアドレスADDを送出した後、データを4サイクルにわたって送出する(“D0”〜“D3”)。このデータ“D0”〜“D3”が、セットフィーチャコマンドにより変更される設定値に関する情報であり、ここではトレーニング結果のうち、いずれかの温度ケースを指定するデータを含む。これにより、チップAにおいて、現状の設定値が、指定された温度ケースに対応するトレーニング結果に設定変更され、以降の処理に適用される。
以上のように動作することにより、図15及び図16のいずれの手法によっても、トレーニング結果を温度ケースに応じて設定変更することができる。
2.3 本実施形態に係る効果
第2実施形態によれば、メモリシステム1は、テストフェーズにおいて、互いに異なる温度ケースについてインタフェーストレーニング動作を実行し、各々についてメモリセルアレイ21内のシステムデータ領域21Bに記憶する。メモリコントローラ2は、温度センサ24によって取得されたNANDパッケージ3の温度情報に基づき、NANDパッケージ3内の温度が現在設定されている温度ケースの範囲内にあるか否かを判定する。そして、NANDパッケージ3内の温度が現在設定されている温度ケースから外れている場合、適切な温度ケースのトレーニング結果に変更するための設定変更コマンド“ZZh”を発行する。これにより、メモリシステム1は、NANDパッケージ3内の温度が変化することによって入出力回路22に設定されたパラメタが最適でなくなることを回避することができ、温度変化に応じて適応的に最適なトレーニング結果を適用することができる。
2.4 変形例
第2実施形態では、メモリコントローラ2から設定変更コマンド“ZZh”又はセットフィーチャコマンド“EFh”が発行されることによって、NANDパッケージ3内のトレーニング結果の設定が変更される場合について説明したが、これに限られない。例えば、NANDパッケージ3は、内部の温度センサ24の情報に基づき、自律的にトレーニング結果の設定を変更するように構成されていてもよい。以下では、第2実施形態と同等の構成及び動作については説明を省略し、第2実施形態と異なる構成及び動作について主に説明する。
図17は、第2実施形態に係るメモリシステムにおけるテストフェーズと実運用フェーズとを含むメモリシステムにおける一連の動作を説明するためのフローチャートである。図17は、第2実施形態における図13に対応する。
図17に示すように、ステップST10〜ST28におけるテストフェーズの動作は、図13の場合と同等であるため、説明を省略する。
また、実運用フェーズのうち、ステップST30〜ST34までの動作は、図13の場合と同等であるため、説明を省略する。
ステップST40において、チップA及びチップBは、温度センサ24によって検出された温度情報を取得する。温度情報の取得は、任意のタイミングで実行可能であり、例えば、通常動作の際の書込み動作や読出し動作と併せて実行されてもよいし、メモリコントローラ2からの指示(図示せず)に応じて実行されてもよい。
ステップST43Aにおいて、チップA及びチップBはそれぞれ、取得した温度情報に基づき、内部の温度に有意な変化が生じたか否かを判定する。チップ内の温度変化が有意であると判定された場合(ステップST43A;yes)、トレーニング結果の設定変更が必要であると判定し、処理はステップST45Aに進む。なお、設定変更に際して、チップA及びチップBの各々は、チップ内の温度が、現在設定されている温度ケースの範囲の上限を上回っているか、下限を下回っているか、に応じて、高温ケースへ設定変更するか、低温ケースへ設定変更するかを判定してもよい。一方、チップ内の温度変化が有意でないと判定された場合(ステップST43A;no)、トレーニング結果の設定変更は不要であると判定し、一連の処理が終了する。
ステップST45Aにおいて、内部の温度変化が有意であると判定されたチップは、ステップST43Aにおける判定結果に基づき、トレーニング結果の温度ケースに関する設定変更を行う。
以上で、一連の処理が終了する。
以上のように動作することにより、NANDパッケージ3は、メモリコントローラ2からの設定変更コマンド“ZZh”又はセットフィーチャコマンド“EFh”を受けることなく、自律的にトレーニング結果を変更することができる。
3. 第3実施形態
第2実施形態では、NANDパッケージ3内の温度に基づいて、トレーニング結果を変更する場合について説明したが、これに限られない。例えば、トレーニング結果は、入出力回路22に用いられる電圧(例えば、電圧VCCQ)の変化に応じて、適応的に変更されてもよい。以下の説明では、第2実施形態と同等の構成及び動作については説明を省略し、第2実施形態と異なる構成及び動作について主に説明する。
3.1 インタフェーストレーニング動作を含む一連の動作
第3実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作について、図18に示すフローチャートを用いて説明する。
図18は、第2実施形態における図13に対応し、図13に示したステップST11、及びST27に代えてステップST11A、及びST27Aが実行され、ST40〜ST45に代えて、ステップST50A、ST52A、ST54A、及びST56Aが実行される場合が示される。
図18に示すように、ステップST10において、メモリシステム1に電源が投入される。
ステップST11Aにおいて、メモリシステム1は、予め定められたテストケースにしたがって、メモリコントローラ2、並びにチップA及びチップBの電源電圧環境を設定する。電源電圧環境のテストケース(電源電圧ケース)としては、任意のケースが設定可能であるが、例えば、低電圧ケース、通常電圧ケース、及び高電圧ケース等が想定される。例えば、電源電圧ケースとして通常電圧ケースに設定された場合、メモリシステム1の電源電圧環境は、実運用フェーズにおいてメモリシステム1が通常使用される(デフォルトの)電源電圧環境に設定される。また、例えば、電源電圧ケースとして低電圧ケース及び高電圧ケースに設定された場合、メモリシステム1の電源電圧環境はそれぞれ、通常電圧ケースよりも低電圧及び高電圧に設定される。
ステップST12〜ST26において、メモリシステム1は、インタフェーストレーニング動作の実行、及びトレーニング結果の記憶をする。なお、ステップST16及びST24において、メモリコントローラ2は、トレーニング結果記憶コマンドの発行に際し、トレーニング結果が電源電圧ケース毎に識別可能に記憶されるように、トレーニング結果の記憶先を指定する。これにより、ステップST18及びST26において、チップA及びチップBは、システムデータ領域21B内に、トレーニング結果を電源電圧ケース毎に個別に記憶する。
ステップST27Aにおいて、メモリコントローラ2は、全ての電源電圧ケースについてインタフェーストレーニング動作が実行されたか否かを判定する。インタフェーストレーニング動作が完了していない電源電圧ケースがあると判定された場合(ステップST27A;no)、処理はステップST11Aに戻り、ステップST11A〜ST26が繰り返し実行される。全電源電圧ケースについてインタフェーストレーニング動作が完了したと判定された場合(ステップST27A;yes)、処理はステップST28に進む。
ステップST28において、メモリシステム1への電源供給が停止され、テストフェーズが終了する。
ステップST30において、メモリシステム1に再度、電源が投入される。
ステップST32において、電源投入に伴い、パワーオンリード処理が実行される。パワーオンリード処理に際し、ステップST18及びST26で各々のチップ内のシステムデータ領域21Bに記憶されたトレーニング結果も読み出され、入力制御回路51、Ron制御回路52、及び出力制御回路53等に設定される。なお、パワーオンリード処理では、例えば、デフォルトの電源電圧状態(すなわち、通常電圧ケース)におけるトレーニング結果が読み出され、各回路に設定されるものとする。
ステップST34において、ユーザデータ領域21A内への書込み動作や、ユーザデータ領域21Aからの読出し動作を含む通常動作が実行される。
ステップST50Aにおいて、メモリコントローラ2は、パワーマネージャ4から供給される電圧VCCQをモニタする。電圧VCCQのモニタは、定期又は不定期に、任意のタイミングで実行可能である。
ステップST52Aにおいて、メモリコントローラ2は、電圧VCCQのモニタ結果に基づき、NANDパッケージ3との通信に用いられる電圧VCCQに有意な変化が生じたか否かを判定する。電源電圧変化が有意であると判定された場合(ステップST52A;yes)、トレーニング結果の設定変更が必要であると判定し、処理はステップST54Aに進む。一方、電源電圧変化が有意でないと判定された場合(ステップST52A;no)、トレーニング結果の設定変更は不要であると判定し、一連の処理が終了する。
ステップST54Aにおいて、メモリコントローラ2は、トレーニング結果における電源電圧ケースの設定を変更する旨の設定変更コマンドを発行し、NANDパッケージ3内の各チップに送出する。なお、ステップST54Aにおいて発行される設定変更コマンドは、インタフェーストレーニング動作の専用コマンドである設定変更コマンド“ZZh”でもよいし、他の設定変更にも用いられる汎用コマンドであるセットフィーチャコマンド“EFh”でもよい。
ステップST56Aにおいて、設定変更コマンドを受けたチップは、当該設定変更コマンドに応じて、トレーニング結果における電源電圧ケースの設定変更を行う。
以上で、一連の処理が終了する。
3.2 本実施形態に係る効果
第3実施形態によれば、メモリシステム1は、テストフェーズにおいて、互いに異なる電源電圧ケースについてインタフェーストレーニング動作を実行し、各々についてメモリセルアレイ21内のシステムデータ領域21Bに記憶する。メモリコントローラ2は、パワーマネージャ4から供給される電圧VCCQのモニタ結果に基づき、電圧VCCQが現在設定されている電源電圧ケースの範囲内にあるか否かを判定する。そして、電圧VCCQが現在設定されている電源電圧ケースから外れている場合、適切な電源電圧ケースのトレーニング結果に変更するための設定変更コマンド“ZZh”を発行する。これにより、メモリシステム1は、電圧VCCQが変化することによって入出力回路22に設定されたパラメタが最適でなくなることを回避することができ、電源電圧変化に応じて適応的に最適なトレーニング結果を適用することができる。
なお、第3実施形態では、第2実施形態と同様に、電源電圧ケースのトレーニング結果に変更するためのコマンドとして、設定変更コマンド“ZZh”に限らず、セットフィーチャコマンド“EFh”も適用可能である。これにより、専用コマンドを使用することなく、電源電圧の変化に応じてトレーニング結果を変更することができる。
4. 第4実施形態
第3実施形態では、メモリコントローラ2が電源電圧をモニタすることによって、当該モニタ結果に応じてトレーニング結果を変更する場合について説明したが、これに限られない。例えば、トレーニング結果は、NANDパッケージ3との通信における周波数(又はデータレート)の変化に応じて、適応的に変更されてもよい。以下の説明では、第3実施形態と同等の構成及び動作については説明を省略し、第3実施形態と異なる構成及び動作について主に説明する。
4.1 インタフェーストレーニング動作を含む一連の動作
第4実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作について、図19に示すフローチャートを用いて説明する。
図19は、第3実施形態における図18に対応し、図18に示したステップST11A、ST27A、及びST50A〜ST56Aに代えて、ステップST11B、ST27B、及びST50B〜ST56Bが実行される場合が示される。なお、図18では、一例として、ステップST50B〜ST56BがステップST32及びST34の間に実行される場合が示される。
図19に示すように、ステップST10において、メモリシステム1に電源が投入される。
ステップST11Bにおいて、メモリシステム1は、予め定められたテストケースにしたがって、メモリコントローラ2、並びにチップA及びチップBの周波数環境を設定する。周波数環境のテストケース(周波数ケース)としては、任意のケースが設定可能であるが、例えば、低周波数ケース、通常周波数ケース、及び高周波数ケース等が想定される。例えば、周波数ケースとして通常周波数ケースに設定された場合、メモリシステム1の周波数環境は、実運用フェーズにおいてメモリシステム1が通常使用される(デフォルトの)周波数環境に設定される。また、例えば、周波数ケースとして低周波数ケース及び高周波数ケースに設定された場合、メモリシステム1の周波数環境はそれぞれ、通常周波数ケースよりも低周波数及び高周波数に設定される。
ステップST12〜ST26において、メモリシステム1は、インタフェーストレーニング動作の実行、及びトレーニング結果の記憶をする。なお、ステップST16及びST24において、メモリコントローラ2は、トレーニング結果記憶コマンドの発行に際し、トレーニング結果が周波数ケース毎に識別可能に記憶されるように、トレーニング結果の記憶先を指定する。これにより、ステップST18及びST26において、チップA及びチップBは、システムデータ領域21B内に、トレーニング結果を周波数ケース毎に個別に記憶する。
ステップST27Bにおいて、メモリコントローラ2は、全ての周波数ケースについてインタフェーストレーニング動作が実行されたか否かを判定する。インタフェーストレーニング動作が完了していない周波数ケースがあると判定された場合(ステップST27B;no)、処理はステップST11Bに戻り、ステップST11B〜ST26が繰り返し実行される。全周波数ケースについてインタフェーストレーニング動作が完了したと判定された場合(ステップST27B;yes)、処理はステップST28に進む。
ステップST28において、メモリシステム1への電源供給が停止され、テストフェーズが終了する。
ステップST30において、メモリシステム1に再度、電源が投入される。
ステップST32において、電源投入に伴い、パワーオンリード処理が実行される。パワーオンリード処理に際し、ステップST18及びST26で各々のチップ内のシステムデータ領域21Bに記憶されたトレーニング結果も読み出され、入力制御回路51、Ron制御回路52、及び出力制御回路53等に設定される。なお、パワーオンリード処理では、例えば、デフォルトの周波数状態(すなわち、周波数ケース)におけるトレーニング結果が読み出され、各回路に設定されるものとする。
ステップST50Bにおいて、メモリコントローラ2は、NANDパッケージ3との間の通信に用いられる周波数を決定する。周波数の決定は、電源オンの直後に限らず、任意のタイミングで実行可能である。
ステップST52Bにおいて、メモリコントローラ2は、周波数の決定結果に基づき、NANDパッケージ3との通信に用いられる周波数が直前の(例えば、デフォルトの)設定から変更されたか否かを判定する。周波数が直前の設定から変更されたと判定された場合(ステップST52B;yes)、トレーニング結果の設定変更が必要であると判定し、処理はステップST54Bに進む。一方、周波数が直前の設定から変更ないと判定された場合(ステップST52B;no)、トレーニング結果の設定変更は不要であると判定し、一連の処理が終了する。
ステップST54Bにおいて、メモリコントローラ2は、トレーニング結果における周波数ケースの設定を変更する旨の設定変更コマンドを発行し、NANDパッケージ3内の各チップに送出する。なお、ステップST54Bにおいて発行される設定変更コマンドは、インタフェーストレーニング動作の専用コマンドである設定変更コマンド“ZZh”でもよいし、他の設定変更にも用いられる汎用コマンドであるセットフィーチャコマンド“EFh”でもよい。
ステップST56Bにおいて、設定変更コマンドを受けたチップは、当該設定変更コマンドに応じて、トレーニング結果における周波数ケースの設定変更を行う。
ステップST34において、通信に適用すると決定された周波数に基づくユーザデータ領域21A内への書込み動作や、ユーザデータ領域21Aからの読出し動作を含む通常動作が実行される。
以上で、一連の処理が終了する。
4.2 本実施形態に係る効果
第4実施形態によれば、メモリシステム1は、テストフェーズにおいて、互いに異なる周波数ケースについてインタフェーストレーニング動作を実行し、各々についてメモリセルアレイ21内のシステムデータ領域21Bに記憶する。メモリコントローラ2は、NANDパッケージ3との通信に用いられる周波数の決定結果に基づき、周波数が直前に設定された周波数ケースから変更されたか否かを判定する。そして、周波数が直前に設定されている周波数ケースから変更された場合、適切な周波数ケースのトレーニング結果に変更するための設定変更コマンド“ZZh”又は“EFh”を発行する。これにより、メモリシステム1は、周波数が変化することによって入出力回路22に設定されたパラメタが最適でなくなることを回避することができ、周波数変化に応じて適応的に最適なトレーニング結果を適用することができる。
5.第5実施形態
第2実施形態〜第4実施形態では、メモリコントローラ2及びNANDパッケージ3間の通信における最適な設定パラメタが変動し得る種々の要因をモニタすることにより、トレーニング結果を変更するか否かを判定する場合について説明したが、これに限られない。例えば、メモリコントローラ2は、通信モードのような、最適な設定パラメタが変動し得る他の設定変更の指示に伴い、併せてトレーニング結果を変更してもよい。以下の説明では、第3実施形態と同等の構成及び動作については説明を省略し、第3実施形態と異なる構成及び動作について主に説明する。
5.1 インタフェーストレーニング動作を含む一連の動作
第5実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作について、図20に示すフローチャートを用いて説明する。
図20は、第3実施形態における図18に対応し、図18に示したステップST11A及びST27Aに代えてステップST11C及びST27Cが実行され、ST50A〜ST56Aに代えてステップST54C、及びST56Cが実行される場合が示される。
図20に示すように、ステップST10において、メモリシステム1に電源が投入される。
ステップST11Cにおいて、メモリシステム1は、予め定められたテストケースにしたがって、メモリコントローラ2、並びにチップA及びチップBの通信モードを設定する。通信モードのテストケース(通信モードケース)としては、任意のケースが設定可能であるが、例えば、SDR(Single data rate)ケース、及びDDR(Double date rate)ケース等が想定される。また、その他の通信モードケースとしては、信号/REに加え、当該/REの反転信号である信号REを更にNANDインタフェースに加える場合等が更に加えられてもよい。
ステップST12〜ST26において、メモリシステム1は、インタフェーストレーニング動作の実行、及びトレーニング結果の記憶をする。なお、ステップST16及びST24において、メモリコントローラ2は、トレーニング結果記憶コマンドの発行に際し、トレーニング結果が通信モード毎に識別可能に記憶されるように、トレーニング結果の記憶先を指定する。これにより、ステップST18及びST26において、チップA及びチップBは、システムデータ領域21B内に、トレーニング結果を通信モード毎に個別に記憶する。
ステップST27Cにおいて、メモリコントローラ2は、全ての通信モードについてインタフェーストレーニング動作が実行されたか否かを判定する。インタフェーストレーニング動作が完了していない通信モードがあると判定された場合(ステップST27C;no)、処理はステップST11Cに戻り、ステップST11C〜ST26が繰り返し実行される。全通信モードについてインタフェーストレーニング動作が完了したと判定された場合(ステップST27C;yes)、処理はステップST28に進む。
ステップST28において、メモリシステム1への電源供給が停止され、テストフェーズが終了する。
ステップST30において、メモリシステム1に再度、電源が投入される。
ステップST32において、電源投入に伴い、パワーオンリード処理が実行される。パワーオンリード処理に際し、ステップST18及びST26で各々のチップ内のシステムデータ領域21Bに記憶されたトレーニング結果も読み出され、入力制御回路51、Ron制御回路52、及び出力制御回路53等に設定される。
ステップST34において、ユーザデータ領域21A内への書込み動作や、ユーザデータ領域21Aからの読出し動作を含む通常動作が実行される。
ステップST54Cにおいて、メモリコントローラ2は、通信モードを変更する旨の通信モード変更コマンドを発行し、NANDパッケージ3内の各チップに送出する。なお、当該通信モード変更コマンドでは、NANDパッケージ3に対して、当該通信モード変更に伴うトレーニング結果の設定変更も併せて指示する。通信モード変更コマンドは、例えば、セットフィーチャコマンド“EFh”である。
ステップST56Cにおいて、通信モード変更コマンドを受けたチップは、通信モードを変更すると共に、通信モード変更に応じたトレーニング結果の設定変更を行う。
以上で、一連の処理が終了する。
5.2 本実施形態に係る効果
第5実施形態によれば、メモリシステム1は、テストフェーズにおいて、互いに異なる通信モードについてインタフェーストレーニング動作を実行し、各々についてメモリセルアレイ21内のシステムデータ領域21Bに記憶する。メモリコントローラ2は、実運用フェーズにおいて、通信モードの変更に際して発行されるセットフィーチャコマンド“EFh”に、通信モード変更に伴うトレーニング結果の設定変更の指示を含める。これにより、メモリシステム1は、通信モードが変化することによって入出力回路22に設定されたパラメタが最適でなくなることを回避することができ、通信モードの変化に応じて適応的に最適なトレーニング結果を適用することができる。
6.第6実施形態
第2実施形態〜第5実施形態では、テストフェーズで所定のテストケース毎に異なるトレーニング結果を取得しておき、取得された複数のトレーニング結果の中から最適な設定値を選択する場合について説明したが、これに限られない。例えば、1つのトレーニング結果を基準値として取得しておき、当該基準値をオフセットさせることで最適な設定値となるようにしてもよい。以下では、第2実施形態と同等の構成及び動作については説明を省略し、第2実施形態と異なる構成及び動作について主に説明する。
6.1 インタフェーストレーニング動作を含む一連の動作
第6実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作について、図21に示すフローチャートを用いて説明する。
図21に示すように、ステップST10において、メモリシステム1に電源が投入される。
ステップST12〜ST26において、メモリシステム1は、インタフェーストレーニング動作の実行、及びトレーニング結果の記憶をする。これにより、ステップST18及びST26において、チップA及びチップBは、システムデータ領域21B内に、基準値となるトレーニング結果を記憶する。
ステップST28において、メモリシステム1への電源供給が停止され、テストフェーズが終了する。
ステップST30において、メモリシステム1に再度、電源が投入される。
ステップST32において、電源投入に伴い、パワーオンリード処理が実行される。パワーオンリード処理に際し、ステップST18及びST26で各々のチップ内のシステムデータ領域21Bに記憶されたトレーニング結果も読み出され、入力制御回路51、Ron制御回路52、及び出力制御回路53等に設定される。なお、パワーオンリード処理では、例えば、デフォルトの状態(すなわち、基準値に対してオフセットされていない状態)におけるトレーニング結果が読み出され、各回路に設定されるものとする。
ステップST34において、ユーザデータ領域21A内への書込み動作や、ユーザデータ領域21Aからの読出し動作を含む通常動作が実行される。
ステップST50Dにおいて、メモリコントローラ2は、ステップST34において実行された読出し動作及び/又は書込み動作の回数をモニタする。
ステップST52Dにおいて、メモリコントローラ2は、読出し動作及び/書込み動作の回数のモニタ結果に基づき、当該回数が閾値を上回ったか否かを判定する。読出し動作及び/又は読出し動作の回数が閾値を上回っている場合(ステップST52D;yes)、トレーニング結果の設定変更が必要であると判定し、処理はステップST54Dに進む。一方、読出し動作及び/又は読出し動作の回数が閾値を下回って場合(ステップST52D;no)、トレーニング結果の設定変更は不要であると判定し、一連の処理が終了する。
ステップST54Dにおいて、メモリコントローラ2は、トレーニング結果の設定値を基準値からオフセットさせる旨のコマンド(設定値オフセットコマンド)を発行し、ステップST52Dにおいて読出し動作及び/書込み動作の回数が閾値を上回ったと判定されたチップに送出する。なお、ステップST54Dにおいて発行される設定値オフセットコマンドは、インタフェーストレーニング動作の専用コマンドである設定変更コマンド“ZZh”でもよいし、他の設定変更にも用いられる汎用コマンドであるセットフィーチャコマンド“EFh”でもよい。
具体的には、例えば、設定値オフセットコマンドとして設定変更コマンド“ZZh”が発行された場合、第2実施形態の図15において示した、ケース毎のトレーニング結果の格納先を指定するアドレス00h〜02hに代えて、基準値に対するオフセット量(DAC値)を示すデータを送出すればよい。また、例えば、設定値オフセットコマンドとしてセットフィーチャコマンド“EFh”が発行された場合、第2実施形態の図16において示した、適用ケースを指定するデータの代わりに、基準値に対するオフセット量を示すデータを送出すればよい。
ステップST56Dにおいて、設定値オフセットコマンドを受けたチップは、当該設定値オフセットコマンドに応じて、トレーニング結果の設定値を基準値からオフセットさせる。
以上で、一連の処理が終了する。
6.2 本実施形態に係る効果
第6実施形態によれば、メモリシステム1は、テストフェーズにおいて、基準値を定めるインタフェーストレーニング動作を実行し、メモリセルアレイ21内のシステムデータ領域21Bに記憶する。メモリコントローラ2は、読出し動作や書込み動作の実行回数をモニタし、当該実行回数が閾値を超えていないかを判定する。そして、読出し動作や書込み動作の実行回数が閾値を超えている場合、メモリコントローラ2は、設定値オフセットコマンドを発行する。これにより、NANDパッケージ3は、読出し動作や書込み動作が何度も実行されることによって生じるインタフェース特性の劣化を考慮したパラメタを入出力回路22に設定することができる。
7.第7実施形態
第1実施形態〜第6実施形態では、テストフェーズに取得したトレーニング結果を実運用フェーズにおいて適用する場合について説明したが、これに限られない。例えば、テストフェーズにおいて取得したトレーニング結果に基づき、実運用フェーズにおいて更に詳細なインタフェーストレーニング動作を実行し、より実際の動作環境に即したトレーニング結果を取得するようにしても良い。以下の説明では、第1実施形態と同等の構成及び動作については説明を省略し、第1実施形態と異なる構成及び動作について主に説明する。
7.1 インタフェーストレーニング動作を含む一連の動作
第7実施形態に係るメモリシステムにおけるインタフェーストレーニング動作を含む一連の動作について、図22に示すフローチャートを用いて説明する。
図22は、第1実施形態における図11に対応し、図11に示したステップST32及びST34の間にステップST60〜ST65が追加される場合が示される。
図22に示すように、ステップST10〜ST32の動作は、図11の場合と同等であるため、説明を省略する。
実運用フェーズに移行し、テストフェーズのインタフェーストレーニング動作で記憶されたトレーニング結果を設定した後、更なるインタフェーストレーニング動作(詳細インタフェーストレーニング動作)が実行される。詳細インタフェーストレーニング動作は、テストフェーズにおけるインタフェーストレーニング動作よりも、補正可能な幅(解像度)をより細かく刻むことにより、精度よくパラメタを取得できる動作である。詳細インタフェーストレーニング動作は、単体で実行するとステップST12〜ST26におけるインタフェーストレーニング動作よりも長い時間を要する。しかしながら、詳細インタフェーストレーニング動作は、ステップST12〜ST26におけるインタフェーストレーニング動作のトレーニング結果に基づいて実行することにより、比較的短時間で実行可能となる。
具体的には、ステップST60において、メモリコントローラ2は、詳細インタフェーストレーニング動作を実行するか否かを判定する。詳細インタフェーストレーニング動作を実行する場合(ステップST60;yes)、処理はステップST61に進み、実行しない場合(ステップST60;no)、処理はステップST34に進む。
ステップST61において、メモリコントローラ2は、詳細インタフェーストレーニング動作を実行する旨のコマンド(詳細I/Fトレーニング実行コマンド)を発行し、チップA及びチップBに送出する。詳細I/Fトレーニング実行コマンドは、例えば、テストフェーズに発行されるI/Fトレーニング実行コマンドとは異なる専用コマンドである。
ステップST62において、詳細I/Fトレーニング実行コマンドを受けると、チップA及びチップBの各々は、ステップST32において設定されたトレーニング結果に基づき、詳細インタフェーストレーニング動作を実行する。
ステップST63において、チップA及びチップBの各々は、詳細インタフェーストレーニング動作のトレーニング結果(詳細トレーニング結果)を入出力回路22に設定する。
ステップST64において、メモリコントローラ2は、NANDパッケージ3内のシステムデータ領域21Bに記憶されたトレーニング結果を詳細トレーニング結果で上書きするか否かを判定する。トレーニング結果を上書きする場合(ステップST64;yes)、処理はステップST65に進み、トレーニング結果を上書きしない場合(ステップST64;no)、処理はステップS34に進む。
ステップST65において、メモリコントローラ2は、トレーニング結果記憶コマンドを発行し、チップA及びチップBに送出する。
ステップST66において、トレーニング結果記憶コマンドを受けると、チップA及びチップBは、ステップST62において実行した詳細インタフェーストレーニング動作の詳細トレーニング結果をシステムデータ領域21B内に記憶する。
ステップST34において、ユーザデータ領域21A内への書込み動作や、ユーザデータ領域21Aからの読出し動作を含む通常動作が実行される。
以上で、一連の処理が終了する。
7.2 インタフェーストレーニング動作のコマンドシーケンス
図23は、第7実施形態に係るメモリシステムにおける詳細インタフェーストレーニング動作を説明するためのコマンドシーケンスである。図23は、図22におけるステップST61及びST62に対応する。図23では、チップA及びチップBの各々に対して、2種類の詳細インタフェーストレーニングが実行される場合の例が示される。
図23に示すように、詳細インタフェーストレーニング動作のコマンドシーケンスは、第1実施形態における図12で示したインタフェーストレーニング動作のコマンドシーケンスと、発行されるコマンドが異なる。
具体的には、メモリコントローラ2は、1種類目のトレーニング項目に対応する詳細インタフェーストレーニング動作(第1詳細I/Fトレーニング動作)の実行を指示する際には、コマンド“X1h”に代えて、コマンド“W1h”を発行する。また、メモリコントローラ2は、2種類目のトレーニング項目に対応する詳細インタフェーストレーニング動作(第2詳細I/Fトレーニング動作)の実行を指示する際には、コマンド“X2h”に代えて、コマンド“W2h”を発行する。
以上のように、テストフェーズにおけるI/Fトレーニング実行コマンドと異なる詳細I/Fトレーニング実行コマンドを発行することにより、図22におけるステップST61及びST62を実行することができる。
7.3 本実施形態に係る効果
第7実施形態によれば、メモリコントローラ2は、実運用フェーズにおいて、詳細I/Fトレーニング動作を実行するか否かを判定する。これにより、メモリコントローラ2は、テストフェーズにおけるI/Fトレーニング動作の結果を通常動作に適用するか、それとも追加の詳細I/Fトレーニング動作の結果を通常動作に適用するか、を選択することができる。一般に、テストフェーズは、実運用フェーズの動作環境に即して各種動作が実行されるため、テストフェーズにおけるI/Fトレーニング動作の結果は、実運用フェーズにおいても適切な設定値となり得る。しかしながら、実運用フェーズの動作環境は、テストフェーズと完全には一致しないため、実運用フェーズにおける入出力回路22の最適な設定値は、テストフェーズにおけるトレーニング結果からずれが生じ得る。第7実施形態では、実運用フェーズにおいて詳細I/Fトレーニング動作を実行することにより、実際の動作環境における最適な設定値を精度よく取得することができる。したがって、テストフェーズと実運用フェーズとの動作環境の違い等に起因する設定値のずれを補正することができる。
また、詳細I/Fトレーニング動作は、テストフェーズにおいてシステムデータ領域21B内に記憶されたトレーニング結果に基づき実行される。これにより、詳細I/Fトレーニング動作に要する時間を短縮することができ、電源オンから通常動作の実行までに要する時間を短縮することができる。
また、メモリコントローラ2は、詳細I/Fトレーニング動作による詳細トレーニング結果を、システムデータ領域21B内に上書きするか否かを判定する。これにより、詳細トレーニング動作の実行後に電源のオフ‐オンが実行された際に、ステップST64において入出力回路22に設定した詳細トレーニング結果を、再度利用するか否か、を選択することができる。詳細トレーニング結果を再度利用しない場合、当該詳細トレーニング結果は破棄される。そして、その後電源のオフ‐オンが発生すると、再度詳細I/Fトレーニング動作が実行される。これにより、電源がオフ‐オンされるたびに、最適な詳細トレーニング結果を適用することができる。一方、詳細トレーニング結果を再度利用する場合、前回電源オン時の最適な設定値を持ち越すことができる。このため、持ち越した設定値が今回電源オン時にも引き続き適用できる場合には、詳細I/Fトレーニング動作の実行を省略することができる。したがって、状況に応じて、電源オフ‐オンに伴って実行されるインタフェーストレーニング動作の回数の増加を抑制することができる。
8. その他
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1…メモリシステム、2…メモリコントローラ、3…NANDパッケージ、3A、3B…半導体記憶装置、4…パワーマネージャ、11…プロセッサ、12…内蔵メモリ、13…NANDインタフェース回路、14…バッファメモリ、15…ホストインタフェース回路、21…メモリセルアレイ、21A…ユーザデータ領域、21B…システムデータ領域、22…入出力回路、23…ロジック制御回路、24…温度センサ、25…レジスタ、26…シーケンサ、27…電圧生成回路、28…ドライバセット、29…ロウデコーダ、30…センスアンプ、31…入出力用パッド群、32…ロジック制御用パッド群、41…入力回路、42…出力回路、50…データラッチ、51…入力制御回路、52…Ron制御回路、53…出力制御回路。

Claims (15)

  1. 第1記憶領域及び第2記憶領域を含むメモリセルアレイと、
    メモリコントローラと通信可能に構成された入出力回路と、
    制御回路と、
    を備え、
    前記制御回路は、
    前記メモリコントローラから第1コマンドを受けると、前記入出力回路に関する第1トレーニング動作を実行し、
    前記メモリコントローラから第2コマンドを受けると、前記第1トレーニング動作の第1結果を前記第1記憶領域に記憶する
    ように構成された、不揮発性メモリ。
  2. 前記制御回路は、前記第1結果を記憶した後に電源がオフされ、更にオンされた場合、前記第1記憶領域に記憶された前記第1結果を前記入出力回路に設定するように構成された、
    請求項1記載の不揮発性メモリ。
  3. 前記制御回路は、前記入出力回路に前記第1結果が設定された後、
    前記メモリコントローラから第3コマンドを受けると、前記第1結果に基づき、前記入出力回路に関する第2トレーニング動作を実行し、
    前記入出力回路の設定を前記第1結果から前記第2トレーニング動作の第2結果に変更する
    ように構成された、
    請求項1記載の不揮発性メモリ。
  4. 前記制御回路は、前記第2トレーニング動作を実行した後、
    前記メモリコントローラから前記第2コマンドを受けると、前記第1結果を前記第2結果に上書きする
    ように構成された、
    請求項3記載の不揮発性メモリ。
  5. 前記第1トレーニング動作は、前記入出力回路に入出力される信号をデスキューすることを含む、
    請求項1記載の不揮発性メモリ。
  6. 前記制御回路は、
    前記メモリコントローラから書込みデータを含む第4コマンドを受けると、前記書込みデータを前記第2記憶領域に記憶し、
    前記第4コマンドによる前記第1記憶領域への前記書込みデータを禁止する、
    請求項1記載の不揮発性メモリ。
  7. メモリコントローラと、
    第1記憶領域及び第2記憶領域を含むメモリセルアレイと、前記メモリコントローラと通信可能に構成された入出力回路と、制御回路と、を含む不揮発性メモリと、
    を備え、
    前記制御回路は、
    前記メモリコントローラから第1コマンドを受けると、前記入出力回路に関する第1トレーニング動作を実行し、
    前記メモリコントローラから第2コマンドを受けると、前記第1トレーニング動作の第1結果を前記第1記憶領域に記憶する
    ように構成された、メモリシステム。
  8. 前記メモリコントローラは、
    第1状態の前記不揮発性メモリに対して、前記第1コマンドを発行して前記第1トレーニング動作を実行させた後、前記第2コマンドを発行して前記第1状態における前記第1結果を前記第1記憶領域に記憶させ、
    第2状態の前記不揮発性メモリに対して、前記第1コマンドを発行して前記第1トレーニング動作を実行させた後、前記第2コマンドを発行して前記第2状態における第3結果を前記第1記憶領域に記憶させる
    ように構成された、
    請求項7記載のメモリシステム。
  9. 前記不揮発性メモリは、温度センサを更に備え、
    前記メモリコントローラは、前記温度センサからの温度情報が第1条件を満たすと、第5コマンドを発行して前記入出力回路の設定を前記第1結果から前記第3結果に変更させるように構成された、
    請求項8記載のメモリシステム。
  10. 前記不揮発性メモリは、温度センサを更に備え、
    前記制御回路は、前記温度センサからの温度情報が第1条件を満たすと、前記入出力回路の設定を前記第1結果から前記第3結果に変更するように構成された、
    請求項8記載のメモリシステム。
  11. 前記メモリコントローラは、前記メモリコントローラに供給される電圧が第2条件を満たすと、第6コマンドを発行して前記入出力回路の設定を前記第1結果から前記第3結果に変更させるように構成された、
    請求項8記載のメモリシステム。
  12. 前記メモリコントローラは、前記メモリコントローラと前記入出力回路との間で通信される信号の周波数が第3条件を満たすと、第7コマンドを発行して前記入出力回路の設定を前記第1結果から前記第3結果に変更させるように構成された、
    請求項8記載のメモリシステム。
  13. 前記メモリコントローラは、第8コマンドを発行して前記メモリコントローラと前記入出力回路との間の通信モードを変更しつつ、前記入出力回路の設定を前記第1結果から前記第3結果に変更させるように構成された、
    請求項8記載のメモリシステム。
  14. 前記メモリコントローラは、
    第4条件を満たすと、第8コマンドを発行して、前記入出力回路の設定を前記第1結果からオフセットさせる
    ように構成された、
    請求項7記載のメモリシステム。
  15. 前記メモリコントローラは、前記第2記憶領域からデータが読み出された第1回数又は前記第2記憶領域へデータが書き込まれた第2回数をカウントし、
    前記第1回数又は第2回数が前記第4条件を満たすと、前記第8コマンドを発行して、前記入出力回路の設定を前記第1結果からオフセットさせる
    ように構成された、
    請求項14記載のメモリシステム。
JP2018174423A 2018-09-19 2018-09-19 不揮発性メモリ及びメモリシステム Pending JP2020047340A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018174423A JP2020047340A (ja) 2018-09-19 2018-09-19 不揮発性メモリ及びメモリシステム
TW107144321A TWI709898B (zh) 2018-09-19 2018-12-10 非揮發性記憶體及記憶體系統
CN201811552726.0A CN110931066B (zh) 2018-09-19 2018-12-19 非易失性存储器及存储系统
US16/280,323 US10916276B2 (en) 2018-09-19 2019-02-20 Nonvolatile memory and memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018174423A JP2020047340A (ja) 2018-09-19 2018-09-19 不揮発性メモリ及びメモリシステム

Publications (1)

Publication Number Publication Date
JP2020047340A true JP2020047340A (ja) 2020-03-26

Family

ID=69774423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018174423A Pending JP2020047340A (ja) 2018-09-19 2018-09-19 不揮発性メモリ及びメモリシステム

Country Status (4)

Country Link
US (1) US10916276B2 (ja)
JP (1) JP2020047340A (ja)
CN (1) CN110931066B (ja)
TW (1) TWI709898B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11862254B2 (en) 2021-02-19 2024-01-02 Kioxia Corporation Semiconductor integrated circuit

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3089722B1 (fr) * 2018-12-11 2021-06-25 Commissariat Energie Atomique Calibration d'un circuit retardateur
JP2021012752A (ja) 2019-07-08 2021-02-04 キオクシア株式会社 半導体記憶装置
WO2021049033A1 (ja) 2019-09-13 2021-03-18 キオクシア株式会社 メモリシステム
JP2021149999A (ja) * 2020-03-23 2021-09-27 キオクシア株式会社 半導体記憶装置
KR20210136480A (ko) * 2020-05-07 2021-11-17 삼성전자주식회사 프로세싱 장치가 실장된 메모리 모듈을 포함하는 컴퓨팅 시스템의 부팅 방법
JP2022051364A (ja) 2020-09-18 2022-03-31 キオクシア株式会社 半導体記憶装置
JP2022051338A (ja) 2020-09-18 2022-03-31 キオクシア株式会社 半導体装置
US11967363B2 (en) * 2020-11-25 2024-04-23 Ap Memory Technology Corporation Display controller having a surge protection unit and display system thereof
JP2022094033A (ja) * 2020-12-14 2022-06-24 キオクシア株式会社 メモリシステム
KR20220085237A (ko) * 2020-12-15 2022-06-22 삼성전자주식회사 스토리지 컨트롤러, 스토리지 장치 및 스토리지 장치의 동작 방법
KR20220121385A (ko) 2021-02-25 2022-09-01 삼성전자주식회사 어플리케이션 프로세서 및 이를 포함하는 전자 장치

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6965537B1 (en) * 2004-08-31 2005-11-15 Micron Technology, Inc. Memory system and method using ECC to achieve low power refresh
US8135933B2 (en) * 2007-01-10 2012-03-13 Mobile Semiconductor Corporation Adaptive memory system for enhancing the performance of an external computing device
US7694196B2 (en) * 2007-11-20 2010-04-06 Qimonda North America Corp. Self-diagnostic scheme for detecting errors
US8081527B1 (en) 2009-05-08 2011-12-20 Juniper Networks, Inc. Per-bit de-skew mechanism for a memory interface controller
US8578086B2 (en) * 2009-09-25 2013-11-05 Intel Corporation Memory link initialization
JP2011128998A (ja) * 2009-12-18 2011-06-30 Toshiba Corp 半導体記憶装置
KR101791456B1 (ko) * 2010-10-11 2017-11-21 삼성전자주식회사 라이트 트레이닝 방법 및 이를 수행하는 반도체 장치
US8897083B1 (en) 2012-12-14 2014-11-25 Altera Corporation Memory interface circuitry with data strobe signal sharing capabilities
US9218575B2 (en) * 2013-09-04 2015-12-22 Intel Corporation Periodic training for unmatched signal receiver
JP6391172B2 (ja) * 2015-09-10 2018-09-19 東芝メモリ株式会社 メモリシステム
US9720439B2 (en) * 2015-09-26 2017-08-01 Intel Corporation Methods, apparatuses, and systems for deskewing link splits
JP6509711B2 (ja) * 2015-10-29 2019-05-08 東芝メモリ株式会社 不揮発性半導体記憶装置及びメモリシステム
US9715907B1 (en) 2016-05-09 2017-07-25 Invecas, Inc. Optimal data eye for improved Vref margin
EP3264276A1 (en) 2016-06-28 2018-01-03 ARM Limited An apparatus for controlling access to a memory device, and a method of performing a maintenance operation within such an apparatus
US10459855B2 (en) 2016-07-01 2019-10-29 Intel Corporation Load reduced nonvolatile memory interface
KR20180083975A (ko) * 2017-01-13 2018-07-24 삼성전자주식회사 트레이닝 동작을 수행하는 메모리 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11862254B2 (en) 2021-02-19 2024-01-02 Kioxia Corporation Semiconductor integrated circuit

Also Published As

Publication number Publication date
TW202013171A (zh) 2020-04-01
US20200089630A1 (en) 2020-03-19
US10916276B2 (en) 2021-02-09
CN110931066A (zh) 2020-03-27
TWI709898B (zh) 2020-11-11
CN110931066B (zh) 2023-10-27

Similar Documents

Publication Publication Date Title
JP2020047340A (ja) 不揮発性メモリ及びメモリシステム
KR102184260B1 (ko) 반도체 기억장치 및 이를 위한 연속 판독 방법
US10453524B2 (en) NAND flash memory device performing continuous reading operation using NOR compatible command, address and control scheme
US10089257B2 (en) Semiconductor storage device and control method thereof
US11177008B2 (en) Semiconductor storage device and memory system in which control circuit of the semiconductor storage device executes calibration operation according to timing at which data is read from another semiconductor storage device
US11114170B2 (en) Memory system
US10418112B2 (en) Semiconductor memory device
US9570182B1 (en) Semiconductor memory device and memory system
JP2018045743A (ja) 半導体装置及びメモリシステム
US11017837B2 (en) Memory system
US20200073555A1 (en) Storage device and control method
US9564185B1 (en) Semiconductor memory device
US20230040735A1 (en) Memory system and method of controlling non-volatile memory
US11769535B2 (en) Semiconductor memory device
US20230326498A1 (en) Semiconductor apparatus and semiconductor system having independent data input/output period, and operating method of the semiconductor system
US9466338B1 (en) Pulse generator, memory device, memory system having the same, and method of controlling an internal power of the memory device
US20150286417A1 (en) Memory system and semiconductor system