JP2022038392A - 半導体記憶装置及び半導体記憶装置におけるコマンド処理方法 - Google Patents
半導体記憶装置及び半導体記憶装置におけるコマンド処理方法 Download PDFInfo
- Publication number
- JP2022038392A JP2022038392A JP2020142881A JP2020142881A JP2022038392A JP 2022038392 A JP2022038392 A JP 2022038392A JP 2020142881 A JP2020142881 A JP 2020142881A JP 2020142881 A JP2020142881 A JP 2020142881A JP 2022038392 A JP2022038392 A JP 2022038392A
- Authority
- JP
- Japan
- Prior art keywords
- temperature
- command
- control circuit
- read
- storage device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01K—MEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR
- G01K1/00—Details of thermometers not specially adapted for particular types of thermometer
- G01K1/02—Means for indicating or recording specially adapted for thermometers
- G01K1/022—Means for indicating or recording specially adapted for thermometers for recording
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/344—Arrangements for verifying correct erasure or for detecting overerased cells
- G11C16/3445—Circuits or methods to verify correct erasure of nonvolatile memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/04—Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
-
- 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
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C2029/5002—Characteristic
Abstract
【課題】コマンドに応じた動作が連続して実行されるときに、温度の変動により出力結果が変わらない半導体記憶装置を提供する。【解決手段】実施形態の半導体記憶装置は、メモリセルアレイ110と、制御回路105とを有する。制御回路105は、温度センサ106により測定された温度に基づく補正値を用いて、受信したコマンドに応答してメモリセルアレイ110に対する動作を実行すると共に、コマンドの受信に応じて温度センサ106により測定された最新の温度Tnが最新の温度Tnよりも前に温度センサ106により測定された前の温度T(n-1)に対して所定の範囲内にないときは、最新の温度Tnに基づく補正値を用いて動作を実行し、最新の温度Tnが前の温度T(n-1)に対して所定の範囲内にあるときは、前の温度T(n-1)に基づく補正値を用いて動作を実行する。【選択図】図2
Description
本発明の実施形態は、半導体記憶装置及び半導体記憶装置におけるコマンド処理方法に関する。
半導体記憶装置では、読み出し動作等のための設定パラメータは、半導体記憶装置の温度に応じて補正される場合がある。そのため、半導体記憶装置自体の温度は温度センサを用いて測定される。半導体記憶装置では、測定された温度に基づいて、必要な設定パラメータの値は補正される。
しかし、コマンドに応じた動作が連続して実行されるときに、測定された温度の変動により設定パラメータが補正されると、同じ動作を実行しても出力結果が異なってしまう場合がある。例えば、読み出しコマンドに応じた動作が連続して実行されるとき、測定された温度の変動により読み出しデータが変わってしまう場合がある。
そこで、実施形態は、コマンドに応じた動作が連続して実行されるときに、温度の変動により出力結果が変わらない半導体記憶装置及び半導体記憶装置におけるコマンド処理方法を提供することを目的とする。
実施形態の半導体記憶装置は、メモリセルと、温度センサにより測定された温度に基づく補正値を用いて、受信したコマンドに応答して前記メモリセルに対する動作を実行すると共に、前記コマンドの受信に応じて前記温度センサにより測定された第1の温度が前記第1の温度よりも前に前記温度センサにより測定された第2の温度に対して所定の範囲内にないときは、前記第1の温度に基づく第1の補正値を用いて前記動作を実行し、前記第1の温度が前記第2の温度に対して前記所定の範囲内にあるときは、前記第2の温度に基づく第2の補正値を用いて前記動作を実行する制御回路と、を有する。
以下、図面を参照して本発明に係る実施形態を説明する。明細書と図面において、既出の図面に関して前述したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
(第1の実施形態)
図1は、第1の実施形態に係る半導体記憶装置を含むメモリシステムの構成の一例を示すブロック図である。メモリシステム1は、NAND型フラッシュメモリ(半導体記憶装置)100及びメモリコントローラ200を備えている。NAND型フラッシュメモリ100(以下、メモリ100ともいう)及びメモリコントローラ200は、例えばそれらの組み合わせにより一つの半導体装置を構成しても良く、その例としてはSDカードのようなメモリカードや、SSD(Solid State Drive)等が挙げられる。メモリシステム1は、ホストデバイス(不図示) を更に備える構成であっても良い。
(第1の実施形態)
図1は、第1の実施形態に係る半導体記憶装置を含むメモリシステムの構成の一例を示すブロック図である。メモリシステム1は、NAND型フラッシュメモリ(半導体記憶装置)100及びメモリコントローラ200を備えている。NAND型フラッシュメモリ100(以下、メモリ100ともいう)及びメモリコントローラ200は、例えばそれらの組み合わせにより一つの半導体装置を構成しても良く、その例としてはSDカードのようなメモリカードや、SSD(Solid State Drive)等が挙げられる。メモリシステム1は、ホストデバイス(不図示) を更に備える構成であっても良い。
メモリコントローラ200は、メモリ100の動作に必要なコマンドなどをメモリ100に出力する。メモリコントローラ200は、当該コマンドをメモリ100に出力することでメモリ100からのデータの読み出し、メモリ100へのデータの書き込み、またはメモリ100のデータの消去等を行う。
メモリコントローラ200とメモリ100とは、入出力インターフェース101及び制御信号入力インターフェース102を介して接続される。
入出力インターフェース101は、入出力制御回路103から供給される信号に応じてデータストローブ信号DQS、BDQS(DQSの相補信号)を生成する。入出力インターフェース101は、データ入出力線(DQ0~DQ7)からデータを出力する際に、データストローブ信号DQS及びBDQSを出力する。そして、メモリコントローラ200は、データストローブ信号DQS及びBDQSのタイミングに合わせて、データ入出力線(DQ0~DQ7)からデータを受信する。また、入出力インターフェース101は、例えばコマンド入力端子、及びアドレス入力端子等を備えている。
制御信号入力インターフェース102は、メモリコントローラ200からチップイネーブル信号BCE、コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALE、ライトイネーブル信号BWE、リードイネーブル信号RE、BRE(REの相補信号)、ライトプロテクト信号BWP、データストローブ信号DQS、BDQS(DQSの相補信号)を受信する。
チップイネーブル信号BCEは、メモリ100の選択信号として用いられる。コマンドラッチイネーブル信号CLEは、動作コマンドをレジスタ104に取り込む際に使用される信号である。アドレスラッチイネーブル信号ALEは、アドレス情報もしくは入力データを、レジスタ104に取り込む際に使用される信号である。ライトイネーブル信号BWEは、入出力インターフェース101上のコマンド、アドレス、およびデータをメモリ100に取り込むための信号である。リードイネーブル信号RE、BREは、データを入出力インターフェース101からシリアルに出力させる際に使用される信号である。ライトプロテクト信号BWPは、メモリ100の電源投入時、もしくは電源遮断時などの入力信号が不確定な場合に、予期できない消去や書き込みからデータを保護するために使用される。
図1では図示しないが、NAND型フラッシュメモリ100の内部動作状態を示すR/B端子、電力供給用のVcc/Vss/Vccq/Vssq端子等もNAND型フラッシュメモリ100に設けられる。
入出力制御回路103は、入出力インターフェース101を介してメモリコントローラ200に、メモリセルアレイ110から読み出したデータを出力する。入出力制御回路103は、入出力インターフェース101を介して、書き込み、読み出し、消去、及びステータス・リード等ための各種コマンド、アドレス、及び書き込みデータを受信する。
制御回路105は、制御信号入力インターフェース102を介して入力される制御信号を入出力制御回路103に供給する。制御回路105は、温度センサ106 、電圧生成回路107、センス回路111、データレジスタ112、カラムデコーダ113、ロウデコーダ114、及びレジスタ104を制御する。
制御回路105は、制御信号、及びレジスタ104を介して入力されるコマンドに応じて動作する。制御回路105は、データのプログラム、ベリファイ、読み出し、消去時に、電圧生成回路107を用いて、メモリセルアレイ110、センス回路111、及びロウデコーダ114に所望の電圧を供給する。
制御回路105は、発振器OSCを有し、メモリセルアレイ110を動作させるために用いられるクロックCLKを生成する。発振器OSCは、例えば、制御信号入力インターフェース102を介してチップイネーブル信号BCEを受け取ったときに起動し、クロックの生成を開始する。発振器OSCからのクロックに基づいて、電圧生成回路107はメモリセルアレイ110に電圧を印加し、データのプログラム、ベリファイ、読み出し、消去等が実行可能となる。即ち、発振器OSCは、メモリ100が選択されていない待機状態(レディ状態)においてはクロックを生成しない。一方、発振器OSCは、メモリ100が選択されて起動状態(ビジー状態)になったときにクロックの生成を開始する。
なお、本実施形態では、入出力制御回路103、及び制御回路105を、それぞれ機能別に説明した。しかしながら、入出力制御回路103、及び制御回路105は同じハードウェア資源によって実現されても良い。
レジスタ104は、入出力制御回路103から入力されるコマンドを制御回路105に出力する。レジスタ104は、例えばメモリコントローラ200から供給されたアドレスをラッチする。そして、レジスタ104は、ラッチしたアドレスを内部物理アドレス(カラムアドレス及びロウアドレス)へ変換する。そしてレジスタ104は、カラムアドレスをカラムデコーダ113に供給し、且つロウアドレスをロウデコーダ114に供給する。
レジスタ104は、メモリ100内部の種々の状態を外部に知らせるためのものである。レジスタ104は、メモリ100がレディ/ビジー状態のいずれにあるかを示すデータを保持するレディ/ビジーレジスタ、書き込みのパス/フェイルを示すデータを保持する書き込みステータスレジスタ(不図示)を有する。さらに、レジスタ104には、温度データも格納される。
温度センサ106は、メモリ100と制御回路105が搭載された半導体チップに設けられ、半導体記憶装置であるメモリ100の温度を測定する。温度センサ106は、制御回路105の命令に基づいてメモリ100の温度を測定し、メモリ100の温度に応じた温度コードを生成する。温度センサ106は、生成した温度コードを制御回路105に出力することができる。温度コードは、複数ビットデータで示される。制御回路105は、温度センサ106から温度コードを取得し、レジスタ104内に温度コードに対応する温度のデータを格納する。
レジスタ104には、直近の2つの温度のデータが格納される。レジスタ104は、最新の温度コードに対応する温度データを格納するレジスタ104aと、その最新の温度コードのよりも前に得られた温度コードに対応する温度を格納するレジスタ104bとを含む。すなわち、レジスタ104には、制御回路105の命令により測定して得られた最新の温度コードに対応する温度と、その最新の温度コードの1つ前に得られた温度コードに対応する温度の2つのデータが格納される。
なお、温度センサ106は、ここでは、メモリ100内に設けられているが、二点鎖線で示すように、メモリコントローラ200内に設けても良い。
また、制御回路105は、温度コードに基づいた電圧生成信号TOUTを電圧生成回路107に供給する。電圧生成回路107は、電圧生成信号TOUTに基づいて、各種電圧を生成する。電圧生成回路107は、データの消去時、データの書き込み時(すなわちプログラム時)、データ読み出し時に用いられる各種電圧を生成する。
メモリセルアレイ110は、複数のビット線BLと、複数のワード線WLと、ソース線SLとを含む。メモリセルアレイ110は、電気的に書き換えが可能な複数のメモリセルトランジスタ(単にメモリセルともいう)MCがマトリクス状に配置された複数のブロックBLKを含む。データの消去は、ブロックBLK単位で行われる。
メモリセルMCは、例えば、制御ゲート電極及び電荷蓄積層(例えば浮遊ゲート電極)を含む積層ゲートを有し、浮遊ゲート電極に注入された電荷量により定まるトランジスタの閾値の変化によって二値、あるいは多値データを記憶する。即ち、メモリセルMCは、SLC(Single Level Cell) 、MLC(Multi-Level Cell)又はTLC(Triple Level Cell)であってもよい。また、メモリセルMCは、窒化膜に電子をトラップするMONOS(Metal-Oxide-Nitride-Oxide-Silicon)構造を有するものであっても良い。
データの書き込み及び読み出しは、所定数のメモリセルのページ単位で行われる。ページは、同一のワード線WLに接続された複数のメモリセルMCの保持するビットの集合である。
メモリセルアレイ110の構成についてはその他の構成であっても良い。すなわちメモリセルアレイ110の構成については、例えば、 “THREE DIMENSIONAL STACKED NONVOLATILE SEMICONDUCTOR MEMORY”という2009年3月19日に出願された米国特許出願12/407,403号に記載されている。また、“THREE DIMENSIONAL STACKED NONVOLATILE SEMICONDUCTOR MEMORY”という2009年3月18日に出願された米国特許出願12/406,524号、“NONVOLATILE SEMICONDUCTOR MEMORY DEVICE AND METHOD OF MANUFACTURING THE SAME”という2010年3月25日に出願された米国特許出願12/679,991号、“NONVOLATILE SEMICONDUCTOR MEMORY DEVICE”という2011年9月22日に出願された米国特許出願13/816,799号、“SEMICONDUCTOR MEMORY AND METHOD FOR MANUFACTURING THE SAME” という2009年3月23日に出願された米国特許出願12/532,030号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
また、メモリセルアレイ110の構成については、例えば、“SEMICONDUCTOR MEMORY DEVICE HAVING PLURALITY OF TYPES OF MEMORIES INTEGRATED ON ONE CHIP”という2009年3月3日に出願された米国特許出願12/397,711号に記載されている。また、“SEMICONDUCTOR MEMORY DEVICE INCLUDING STACKED GATE HAVING CHARGE ACCUMULATION LAYER AND CONTROL GATE AND METHOD OF WRITING DATA TO SEMICONDUCTOR MEMORY DEVICE”という2012年4月19日に出願された米国特許出願13/451,185号、“NONVOLATILE SEMICONDUCTOR MEMORY ELEMENT,NONVOLATILE SEMICONDUCTOR MEMORY,AND METHOD FOR OPERATING NONVOLATILE SEMICONDUCTOR MEMORY ELEMENT”という2009年3月17日に出願された米国特許出願12/405,626号、及び“NONVOLATILE SEMICONDUCTOR MEMORY DEVICE HAVING ELEMENT ISOLATING REGION OF TRENCH TYPE AND METHOD OF MANUFACTURING THE SAME” という2001年9月21日に出願された米国特許出願09/956,986号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
センス回路111は、データの読み出し動作時に、各メモリセルMCからビット線に読み出されたデータをセンスする。データの読み出しは、ページ単位で行われる。
データレジスタ112は、SRAM等で構成される。データレジスタ112は、メモリコントローラ200から供給されたデータや、センス回路111によって検知されたベリファイ結果等を記憶する。
カラムデコーダ113は、カラムアドレス信号をデコードし、ビット線BLの何れかを選択する選択信号をセンス回路111に出力する。
ロウデコーダ114は、ロウアドレス信号をデコードする。そして、ロウデコーダ114は、メモリセルアレイ110のワード線WL及び選択ゲート線SGD、SGSを選択して駆動する。
メモリコントローラ200は、図示しないホストから書き込み要求を受信すると、制御信号入力インターフェース102に対して各種信号を出力し、入出力インターフェース101へ書き込みコマンド、ホストからのユーザデータを出力する。制御回路105は、書き込みコマンドに応じて、NAND型フラッシュメモリ100内の各回路を制御して、ユーザデータをメモリセルアレイ110に書き込む。
また、メモリコントローラ200は、図示しないホストから読み出し要求を受信すると、制御信号入力インターフェース102に対して各種信号を出力し、入出力インターフェース101を介して読み出しコマンド、アドレスを出力する。制御回路105は、読み出しコマンドに応じて、NAND型フラッシュメモリ100内の各回路を制御して、読み出し要求のユーザデータをメモリセルアレイ110から読み出し、入出力インターフェース101を介してメモリコントローラ200へ出力する。
制御回路105は、メモリコントローラ200から各種コマンドを受信すると、温度センサ106により温度を測定し、測定された温度に応じて、読み出し電圧等を補正する温度補正を実行する。
制御回路105は、読み出しコマンドを受信したとき、温度センサ106により温度を測定し、測定された温度に応じて、読み出し電圧(すなわち読み出しレベル)を補正する温度補正を実行する。読み出し電圧は、メモリセルMCの閾値電圧分布に基づいてデータを正しく読み出せるいわゆる谷位置電圧である。読み出し電圧は、メモリセルMCが閾値電圧に応じて8個の状態を取ることが出来るとき、この8個の状態に対応する7個ある。
温度補正では、読み出しコマンドの場合、読み出し電圧を、所定の読み出しレベルから所定のシフト量だけシフトした電圧の設定変更などが行われる。書き込みコマンドの場合、温度補正では、ベリファイ電圧の設定変更などが行われる。消去コマンドの場合、温度補正では、消去時に印加する電圧の変更、ベリファイ電圧の変更などが行われる。
本実施形態では、コマンドが読み出しコマンドであるとき、温度センサ106により今回測定された温度Tnが前回測定された温度T(n-1)に対して所定の範囲TH内になければ、今回測定された温度Tnに基づいて温度補正を行い、温度センサ106により今回測定された温度Tnが前回測定された温度T(n-1)に対して所定の範囲TH内にあれば、前回測定された温度T(n-1)に基づいて温度補正を行う。所定の範囲THは、前回測定された温度T(n-1)に対して±kの温度の範囲である。
例えば、kを5とすれば、今回測定された温度Tnが、前回測定された温度T(n-1)に対してプラス5度とマイナス5度の範囲(TH)内にあるとき、制御回路105は、前回測定された温度T(n-1)に基づいて温度補正を行う。
また、コマンドが書き込みコマンドあるいは消去コマンドであるときは、制御回路105は、温度センサ106により温度を測定し、測定された温度に応じて、ワード線WLへの印加電圧、ベリファイ電圧などを補正する温度補正を実行する。
制御回路150は、温度補正により補正された設定パラメータの補正値を用いて、コマンドに応じた動作を実行する。すなわち、制御回路150は、温度センサ106により測定された温度に基づく補正値を用いて、受信したコマンドに応答してメモリ100に対する動作を実行する。
図2は、メモリコントローラ200からデータの読み出しコマンドを受信したときの制御回路105の処理の流れの例を示すフローチャートである。図2の処理は、制御回路105において、メモリコントローラ200からコマンドを受信したときに実行される。
制御回路105は、受信したコマンドをレジスタ104に入力する(ステップ(以下、Sと略す)1)。
S1の後、制御回路105は、温度センサ106に対して温度測定を指示し、測定結果である温度コードを取得する(S2)。S2で取得された温度コードはレジスタ104に供給され、温度コードに対応する温度データが最新の温度Tnとしてレジスタ104aに格納される。
制御回路105は、レジスタ104に格納されたコマンドを読み出し、S1で受信したコマンドが読み出しコマンドであるかを判定する(S3)。
S1で受信したコマンドが読み出しコマンドでないとき(S3:NO)、制御回路105は、今回測定した温度で温度補正を行う(S4)。すなわち、制御回路105は、S2で取得した温度コードに応じた最新の温度Tnに基づいて、ワード線WLへの印加電圧、ベリファイ電圧などを設定変更する温度補正を実行する(S4)。
S4の後、温度補正により補正された補正値を用いて、制御回路105は、書き込みコマンドなどのコマンドに応じた動作を実行する(S5)。例えば、S1で受信したコマンドが書き込みコマンドあるいは消去コマンドであるときは、最新の温度Tnに基づく補正値を用いて、データの書き込みあるいはデータの消去が実行される。
S1で受信したコマンドが読み出しコマンドであるとき(S3:YES)、制御回路105は、S2で取得された温度コードに応じた最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にあるかを判定する(S6)。
最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にないとき(S6:NO)、処理は、S4に移行する。
すなわち、温度が所定の範囲THを超えて変化しているので、S2で取得した温度コードに対応する最新の温度Tnで、温度補正が行われ(S4)、最新の温度Tnに基づく読み出し電圧の補正値を用いて、読み出し動作が実行される(S5)。
最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にあるとき(S6:YES)、制御回路105は、前回測定された温度T(n-1)を用いて温度補正を行う(S7)。S7の後、制御回路105は、前回測定された温度T(n-1)に基づく読み出し電圧の補正値を用いて、読み出しコマンドに応じた動作を実行する(S5)。
よって、最新の温度Tnが、前回測定された温度T(n-1)とは異なっていても、前回測定された温度T(n-1)に対して所定の範囲TH内にあるとき(S6:YES)、温度補正では、前回と同じ設定パラメータが選択されるので、読み出し結果が異なることはない。
なお、温度センサ106による温度測定が初回のときは、前回測定された温度T(n-1)は存在しないので、S6でNOとなり、S4の処理が実行される。すなわち、コマンドが読み出しコマンドであっても、初回は、最新の温度Tnを用いて、温度補正が行われ(S4)、読み出し動作が実行される(S5)。
以上のように、制御回路105は、コマンドの受信に応じて温度センサ106により測定された最新の温度Tnが最新の温度Tnよりも前に温度センサ106により測定された温度T(n-1)に対して所定の範囲内にないときは、最新の温度Tnに基づく補正値を用いてコマンドに応じた動作を実行し、最新の温度Tnが温度T(n-1)に対して所定の範囲内にあるときは、温度T(n-1)に基づく補正値を用いてコマンドに応じた動作を実行する。
よって、上述した実施形態によれば、読み出しコマンドが実行されるとき、測定された最新の温度Tnが前回測定された温度T(n-1)に対して所定の範囲TH内にあるときは、温度補正において前回と同じシフト量による補正値が用いられるので、読み出しデータが温度変化の影響を受けない。すなわち、補正値は、シフト量を用いて補正された読み出し電圧である。
読み出しコマンドの場合、リトライリードが実行される場合がある。リトライリードは、読み出しコマンドに応じて読み出したデータがエラー訂正において失敗したときに、読み出し電圧を変更して読み出しを実行する読み出し方式である。
リトライリード時の読み出し電圧のシフト量も、温度に応じて異なるため、リトライリードが行われるときに、温度の変動によりシフト量等の設定パラメータが切り替わってしまうと、読み出しデータが変わってしまう場合がある。
図3は、リトライリードが実行されるときの制御回路105の処理の流れの例を示すフローチャートである。図3において、S1~S7は、図2の処理と同様である。
S7の処理後、メモリコントローラ200において ECC(Error Check and Correct)回路によりエラー訂正が失敗すると、メモリコントローラ200は、読み出し電圧を変更した読み出しコマンド(リトライリードのための読み出しコマンド)をメモリ100に出力する。
この場合、制御回路105は、再びコマンドを受信すると、受信したコマンドをレジスタ104に入力する(S11)。リトライリードの場合、制御回路105は、読み出しコマンドを受信する。
S11の後、制御回路105は、温度センサ106に対して温度測定を指示し、測定結果である温度コードを取得する(S12)。S12で取得された温度コードはレジスタ104に供給され、温度コードに対応する温度データが最新の温度Tnとしてレジスタ104aに格納される。S2で取得された温度コードに対応する温度データは、前回測定された温度T(n-1)としてレジスタ104bに格納される。
制御回路105は、レジスタ104に格納されたコマンドを読み出し、S11で受信したコマンドが読み出しコマンドであるかを判定する(S13)。
S11で受信したコマンドが読み出しコマンドであるとき(S13:YES)、制御回路105は、S12で取得された温度コードに応じた最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にあるかを判定する(S16)。
S12で取得された最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にないとき(S16:NO)、処理は、S14に移行する。
すなわち、最新の温度Tnが前回測定された温度T(n-1)に対して所定の範囲THを超えて変化しているので、S12で取得した最新の温度に基づいて、温度補正が行われ(S14)、最新の温度Tnに基づく読み出し電圧の補正値を用いて、読み出し動作が実行される(S15)。
S12で取得された最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にあるとき(S16:YES)、制御回路105は、前回測定された温度T(n-1)を用いて温度補正を行う(S17)。S17の後、制御回路105は、前回測定された温度T(n-1)に基づく読み出し電圧の補正値を用いて、読み出しコマンドに応じた動作(リトライリード)を実行する(S15)。
S11で受信したコマンドが読み出しコマンドでないとき(S13:NO)、制御回路105は、S12で取得した温度コードに応じた最新の温度Tnに基づいて、ワード線WLへの印加電圧、ベリファイ電圧などを補正する温度補正を実行する(S14)。
S14の後、制御回路105は、最新の温度Tnに基づく補正値を用いて、書き込みコマンドなどのコマンドに応じた動作を実行する(S15)。
例えば、S11で受信したコマンドが書き込みコマンドあるいは消去コマンドであるときは、レジスタ104aに格納されている最新の温度Tnに基づく補正値を用いて、データの書き込みあるいはデータの消去が実行される。
以上のように、受信したコマンドがメモリ100からのデータの読み出しコマンドである場合、制御回路105は、最新の温度Tnが前回測定された温度T(n-1)に対して所定の範囲内にないときは、最新の温度Tnに基づく補正値を用いてデータ読み出し動作を実行し、最新の温度Tnが前回測定された温度T(n-1)に対して所定の範囲内にあるときは、温度T(n-1)に基づく補正値を用いてデータの読み出し動作を実行する。
よって、上述した実施形態によれば、コマンドに応じた動作が連続して実行されるときに、温度の変動により出力結果が変わらない半導体記憶装置を提供することができる。
(第2の実施形態)
第1の実施形態では、読み出しコマンドに対してのみ、最新の温度が前回の温度に対して所定の範囲内にあるか否かが判断されているが、第2の実施形態では、読み出しコマンドに限定しないで、最新の温度が前回の温度に対して所定の範囲内にあるか否かが判断される。
(第2の実施形態)
第1の実施形態では、読み出しコマンドに対してのみ、最新の温度が前回の温度に対して所定の範囲内にあるか否かが判断されているが、第2の実施形態では、読み出しコマンドに限定しないで、最新の温度が前回の温度に対して所定の範囲内にあるか否かが判断される。
本実施形態のメモリシステム1の構成は、第1の実施形態のメモリシステム1の構成と同じであるので、同じ構成要沿については同じ符号を用いて説明は省略し、異なる構成についてのみ説明する。
図4は、メモリコントローラ200からデータの読み出しコマンドを受信したときの制御回路105の処理の流れの例を示すフローチャートである。図4の処理は、制御回路105において、メモリコントローラ200からコマンドを受信したときに実行される。
制御回路105は、受信したコマンドをレジスタ104に入力する(S21)。
S21の後、制御回路105は、温度センサ106に対して温度測定を指示し、測定結果である温度コードを取得する(S22)。S22で取得された温度コードはレジスタ104に供給され、温度コードに対応する温度データが最新の温度Tnとしてレジスタ104aに格納される。
制御回路105は、S22で取得された温度コードに応じた最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にあるかを判定する(S23)。
最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にないとき(S23:NO)、処理は、S24に移行する。
すなわち、温度が所定の範囲THを超えて変化しているので、S22で取得した温度コードに対応する温度で、温度補正が行われ(S24)、最新の温度Tnに基づく補正値を用いて、受信したコマンドに応じた動作が実行される(S26)。
最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にあるとき(S23:YES)、制御回路105は、前回測定された温度T(n-1)を用いて温度補正を行う(S25)。S25の後、制御回路105は、前回測定された温度T(n-1)に基づく補正値を用いて、受信したコマンドに応じた動作を実行する(S26)。
図4の場合、連続して受信した2つのコマンドにおいて、後のコマンドを受信したときの最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にあるとき(S23:YES)、前回測定された温度T(n-1)を用いて温度補正が行われ(S25)、前回測定された温度T(n-1)に基づく補正値を用いて、コマンドが実行される(26)。
また、連続して受信した2つのコマンドにおいて、後のコマンドを受信したときの最新の温度Tnが、前回測定された温度T(n-1)に対して所定の範囲TH内にないとき(S23:NO)、今回測定された最新の温度Tnを用いて温度補正が行われ(S24)、最新の温度Tnに基づく補正値を用いて、コマンドが実行される(26)。
データの書き込みコマンドを受信したときも、データの消去コマンドを受信したときも、データの読み出しコマンドを受信したときも、図4の処理が実行される。
例えば、受信したコマンドがリトライリードのための読み出しコマンドであるとき、最新の温度Tnが前回測定された温度T(n-1)に対して所定の範囲TH内にあるとき(S23:YES)、温度補正において前回と同じシフト量が選択されるので、読み出しデータが温度変化の影響を受けない。
本実施形態では、コマンドが読み出しコマンドであるかを判定していないが、リトライリードのときにも、第1の実施形態と同様に、動作するので、リトライリードのときに出力結果が異なることもなくなる。
以上のように、制御回路105は、コマンドの受信に応じて温度センサ106により測定された最新の温度Tnが最新の温度Tnよりも前に温度センサ106により測定された温度T(n-1)に対して所定の範囲内にないときは、最新の温度Tnに基づく補正値を用いてコマンドに応じた動作を実行し、最新の温度Tnが温度T(n-1)に対して所定の範囲内にあるときは、温度T(n-1)に基づく補正値を用いてコマンドに応じた動作を実行する。
よって、上述した実施形態によれば、コマンドに応じた動作が連続して実行されるときに、温度の変動により出力結果が変わらない半導体記憶装置を提供することができる。
従来は、コマンドの受信に応じて温度センサからの温度コードの取得処理を実行させていたため、コマンドの受信の度に取得された温度に応じた温度補正が行われる。同じコマンドが連続して受信されたときに、取得された温度が前回取得した温度と異なっていると、温度補正によっては、設定パラメータが前回とは異なる値に切り替わってしまい、出力結果(例えば読み出しデータ)が、前回の値とは異なってしまう場合があった。
このような問題を回避するためには、連続して同じコマンドが受信されたときに、温度コードを取得する場合と取得しない場合の2つの場合を分けた動作シーケンスを実行するようにすることも考えられるが、種々の場合を考慮して2つの場合を含む動作シーケンスを作成するあるいは書き換える必要があり、その作業量は多くかつ作業は煩雑である。
しかし、上述した各実施形態によれば、コマンドの実行時に取得した温度が、前回に取得した温度に対して所定の範囲TH内であるかによって、設定パラメータを前回の値を用いるかの判断をするだけであるので、簡単な動作シーケンスの作成又は変更で済む。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として例示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 メモリシステム、100 NAND型フラッシュメモリ、101 入出力インターフェース、102 制御信号入力インターフェース、103 入出力制御回路、104、104a、104b レジスタ、105 制御回路、106 温度センサ、107 電圧生成回路、110 メモリセルアレイ、111 センス回路、112 データレジスタ、113 カラムデコーダ、114 ロウデコーダ、200 メモリコントローラ。
Claims (6)
- メモリセルと、
温度センサにより測定された温度に基づく補正値を用いて、受信したコマンドに応答して前記メモリセルに対する動作を実行すると共に、前記コマンドの受信に応じて前記温度センサにより測定された第1の温度が前記第1の温度よりも前に前記温度センサにより測定された第2の温度に対して所定の範囲内にないときは、前記第1の温度に基づく第1の補正値を用いて前記動作を実行し、前記第1の温度が前記第2の温度に対して前記所定の範囲内にあるときは、前記第2の温度に基づく第2の補正値を用いて前記動作を実行する制御回路と、
を有する、半導体記憶装置。 - 前記コマンドが前記メモリセルからのデータの読み出しコマンドである場合、前記制御回路は、前記第1の温度が前記第2の温度に対して前記所定の範囲内にないときは、前記第1の補正値を用いて前記動作としてのデータ読み出し動作を実行し、前記第1の温度が前記第2の温度に対して前記所定の範囲内にあるときは、前記第2の補正値を用いて前記データの読み出し動作を実行する、請求項1に記載の半導体記憶装置。
- 前記温度センサは、前記メモリセルと前記制御回路が搭載された半導体チップに設けられ、前記半導体記憶装置の温度を測定する、請求項1に記載の半導体記憶装置。
- 前記読み出しコマンドは、リトライリードのための読み出しコマンドであり、
前記第1及び前記第2の補正値は、シフト量を用いて補正された読み出し電圧である、請求項1に記載の半導体記憶装置。 - 前記第1の温度を記憶する第1のレジスタと、
前記第2の温度を記憶する第2のレジスタと、
を有する、請求項1に記載の半導体記憶装置。 - メモリセルと制御回路を有する半導体記憶装置におけるコマンド処理方法において、
前記制御回路は、
温度センサにより測定された温度に基づく補正値を用いて受信したコマンドに応答して前記メモリセルに対する動作を実行し、
前記コマンドの受信に応じて前記温度センサにより測定された第1の温度が前記第1の温度よりも前に前記温度センサにより測定された第2の温度に対して所定の範囲内にないときは、前記第1の温度に基づく第1の補正値を用いて前記動作を実行し、
前記第1の温度が前記第2の温度に対して前記所定の範囲内にあるときは、前記第2の温度に基づく第2の補正値を用いて前記動作を実行する、
半導体記憶装置におけるコマンド処理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020142881A JP2022038392A (ja) | 2020-08-26 | 2020-08-26 | 半導体記憶装置及び半導体記憶装置におけるコマンド処理方法 |
TW110104688A TWI784408B (zh) | 2020-08-26 | 2021-02-08 | 半導體記憶裝置及半導體記憶裝置之動作方法 |
CN202110219522.0A CN114121118A (zh) | 2020-08-26 | 2021-02-26 | 半导体存储装置及半导体存储装置的动作方法 |
US17/189,140 US11486767B2 (en) | 2020-08-26 | 2021-03-01 | Semiconductor storage device, method of controlling semiconductor storage device, and memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020142881A JP2022038392A (ja) | 2020-08-26 | 2020-08-26 | 半導体記憶装置及び半導体記憶装置におけるコマンド処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022038392A true JP2022038392A (ja) | 2022-03-10 |
Family
ID=80358407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020142881A Pending JP2022038392A (ja) | 2020-08-26 | 2020-08-26 | 半導体記憶装置及び半導体記憶装置におけるコマンド処理方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11486767B2 (ja) |
JP (1) | JP2022038392A (ja) |
CN (1) | CN114121118A (ja) |
TW (1) | TWI784408B (ja) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008097758A (ja) | 2006-10-13 | 2008-04-24 | Renesas Technology Corp | 半導体記憶装置 |
US8472274B2 (en) * | 2011-03-02 | 2013-06-25 | Apple Inc. | Using temperature sensors with a memory device |
GB2520708A (en) | 2013-11-28 | 2015-06-03 | Ibm | Multi-stage codeword detector |
US10564900B2 (en) * | 2016-03-04 | 2020-02-18 | Western Digital Technologies, Inc. | Temperature variation compensation |
JP2018147543A (ja) | 2017-03-09 | 2018-09-20 | 東芝メモリ株式会社 | 不揮発性半導体記憶装置 |
JP2019128829A (ja) | 2018-01-25 | 2019-08-01 | 東芝メモリ株式会社 | 半導体記憶装置及びメモリシステム |
-
2020
- 2020-08-26 JP JP2020142881A patent/JP2022038392A/ja active Pending
-
2021
- 2021-02-08 TW TW110104688A patent/TWI784408B/zh active
- 2021-02-26 CN CN202110219522.0A patent/CN114121118A/zh active Pending
- 2021-03-01 US US17/189,140 patent/US11486767B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
TWI784408B (zh) | 2022-11-21 |
CN114121118A (zh) | 2022-03-01 |
US20220065702A1 (en) | 2022-03-03 |
US11486767B2 (en) | 2022-11-01 |
TW202209315A (zh) | 2022-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5214896B2 (ja) | プログラム速度を向上させることができる不揮発性メモリ装置及びそれのプログラム方法 | |
JP4901348B2 (ja) | 半導体記憶装置およびその制御方法 | |
TWI408686B (zh) | 程式化一記憶體裝置以增加資料可靠性 | |
JP5349256B2 (ja) | メモリシステム | |
US8050101B2 (en) | Nonvolatile memory devices having erased-state verify capability and methods of operating same | |
KR101950758B1 (ko) | 반도체 장치 | |
TWI602187B (zh) | Semiconductor memory devices and memory systems | |
US10170202B2 (en) | Memory system | |
US8607120B2 (en) | Semiconductor memory device for performing additional ECC correction according to cell pattern and electronic system including the same | |
JP2009146474A (ja) | 不揮発性半導体記憶装置 | |
KR101464256B1 (ko) | 온도 센서를 포함하는 메모리 시스템 | |
JP6164712B1 (ja) | フラッシュメモリ | |
JP2012059349A (ja) | 半導体メモリ装置及びその動作方法 | |
JP2012203957A (ja) | メモリシステム | |
KR102386242B1 (ko) | 전원 전압 변동에 독립적인 워드 라인 불량 검출 회로를 포함하는 메모리 장치 및 그 구동 방법 | |
JP2008269775A (ja) | プログラムディスターブを減少させることができるフラッシュメモリ装置及びそのプログラム方法 | |
JP2018037123A (ja) | 半導体記憶装置及びメモリシステム | |
JP2006155871A (ja) | 不揮発性メモリ装置 | |
TW201535399A (zh) | 半導體記憶裝置及nand型快閃記憶體的程式化方法 | |
US9213592B2 (en) | Semiconductor memory device and method of operating the same | |
JP4919775B2 (ja) | 不揮発性半導体記憶装置 | |
KR20100004771A (ko) | 공통 소스 라인 전압을 제어하는 플래시 메모리 장치,그것의 프로그램 검증 방법, 그리고 그것을 포함하는메모리 시스템 | |
JP2019211861A (ja) | メモリシステム | |
US11486767B2 (en) | Semiconductor storage device, method of controlling semiconductor storage device, and memory system | |
JP2010108548A (ja) | 不揮発性半導体記憶装置とその制御方法 |