(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024044777
(43)【公開日】2024-04-02
(54)【発明の名称】半導体記憶装置及びメモリシステム
(51)【国際特許分類】
G06F 12/06 20060101AFI20240326BHJP
G06F 3/06 20060101ALI20240326BHJP
G11C 16/04 20060101ALI20240326BHJP
G11C 16/34 20060101ALI20240326BHJP
G06F 12/00 20060101ALI20240326BHJP
【FI】
G06F12/06 550A
G06F3/06 301Y
G11C16/04 170
G11C16/34 163
G06F12/00 597U
【審査請求】未請求
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2022150518
(22)【出願日】2022-09-21
(71)【出願人】
【識別番号】318010018
【氏名又は名称】キオクシア株式会社
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100118843
【弁理士】
【氏名又は名称】赤岡 明
(74)【代理人】
【識別番号】100103263
【弁理士】
【氏名又は名称】川崎 康
(72)【発明者】
【氏名】田上 信一郎
【テーマコード(参考)】
5B160
5B225
【Fターム(参考)】
5B160CD07
5B225BA01
5B225DA01
5B225DB08
5B225DB22
5B225DB24
5B225DE08
5B225DE20
5B225EA05
5B225FA01
(57)【要約】
【課題】ユーザの希望に応じて最適な動作条件で動作させる。
【解決手段】半導体記憶装置は、不揮発メモリと、前記不揮発メモリにそれぞれ異なる動作条件を設定するための複数のパラメータを記憶するパラメータ記憶部と、ホスト装置からのコマンドにより前記不揮発メモリにアクセスする傾向を示すアクセスパターンを解析するアクセスパターン解析部と、前記アクセスパターン解析部で解析されたアクセスパターンに基づいて、前記複数のパラメータの中から最適なパラメータを選択するパラメータ選択部と、前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスするアクセス制御部と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
不揮発メモリと、
前記不揮発メモリにそれぞれ異なる動作条件を設定するための複数のパラメータを記憶するパラメータ記憶部と、
ホスト装置からのコマンドにより前記不揮発メモリにアクセスする傾向を示すアクセスパターンを解析するアクセスパターン解析部と、
前記アクセスパターン解析部で解析されたアクセスパターンに基づいて、前記複数のパラメータの中から最適なパラメータを選択するパラメータ選択部と、
前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスするアクセス制御部と、を備える、半導体記憶装置。
【請求項2】
前記アクセスパターン解析部は、前記ホスト装置からのコマンドにより前記不揮発メモリにデータを書き込む場合のアクセスパターンと、前記ホスト装置からのコマンドにより前記不揮発メモリからデータを読み出す場合のアクセスパターンとの少なくとも一方を解析する、請求項1に記載の半導体記憶装置。
【請求項3】
前記パラメータ記憶部は、前記ホスト装置から送信された前記複数のパラメータを記憶する、請求項1に記載の半導体記憶装置。
【請求項4】
前記アクセス制御部は、前記パラメータ選択部により前記最適なパラメータが選択された場合に、前記ホスト装置に確認することなく、前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスする、請求項1に記載の半導体記憶装置。
【請求項5】
前記最適なパラメータを前記ホスト装置に提示する提示部を備え、
前記アクセス制御部は、前記提示部による提示に対して、前記ホスト装置から前記最適なパラメータへの変更が指示された場合に、前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスする、請求項1に記載の半導体記憶装置。
【請求項6】
前記提示部は、UFS(Universal Flash Storage)規格に準拠したリードコマンド、ライトコマンド、シンクロナイズ・キャッシュコマンド、又はUNMAPコマンドのレスポンスに前記最適なパラメータの情報を含めて前記ホスト装置に送信する、請求項5に記載の半導体記憶装置。
【請求項7】
前記ホスト装置からの前記最適なパラメータへの変更指示情報を記憶するUFS規格に準拠したライトバッファを備え、
前記アクセス制御部は、前記ライトバッファに前記変更指示情報が記憶されている場合に、前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスする、請求項5に記載の半導体記憶装置。
【請求項8】
前記アクセスパターン解析部は、前記不揮発メモリに対する単位時間あたりのアクセス量が所定の閾値より多い第1アクセスパターン、又は前記不揮発メモリに対する単位時間あたりのアクセス量が前記閾値以下である第2アクセスパターンのいずれかであることを解析する、請求項1に記載の半導体記憶装置。
【請求項9】
前記パラメータ選択部は、前記アクセスパターン解析部にて前記第1アクセスパターンであると解析された場合、エラーレートの低下よりもアクセス速度の向上を優先させる第1パラメータを選択し、前記第2アクセスパターンであると解析された場合、アクセス速度の向上よりもエラーレートの低下を優先させる第2パラメータを選択する、請求項8に記載の半導体記憶装置。
【請求項10】
前記アクセス速度は、前記不揮発メモリへの書き込み速度であり、
前記第1パラメータは、前記第2パラメータよりも、前記不揮発メモリにデータを書き込む際のプログラム回数を減らすか、又は、ベリファイリード時に読出しを省略するビット数を増やす、請求項9に記載の半導体記憶装置。
【請求項11】
前記アクセス速度は、前記不揮発メモリからの読出し速度であり、
前記第1パラメータは、前記第2パラメータよりも、前記不揮発メモリの寿命を短くする、請求項9に記載の半導体記憶装置。
【請求項12】
前記アクセスパターン解析部は、前記不揮発メモリに対する前記ホスト装置からのコマンド送信間隔が所定の閾値より短い第3アクセスパターン、又は前記不揮発メモリに対する前記ホスト装置からのコマンド送信間隔が前記閾値以上の第4アクセスパターンのいずれかであることを解析する、請求項1に記載の半導体記憶装置。
【請求項13】
前記パラメータ選択部は、前記アクセスパターン解析部にて前記第3アクセスパターンであると解析された場合には、前記第4アクセスパターンであると解析された場合よりも、省電力モードに移行する時間をより長くする、請求項12に記載の半導体記憶装置。
【請求項14】
前記閾値は、前記ホスト装置にて指定される、請求項8に記載の半導体記憶装置。
【請求項15】
前記不揮発メモリは、NAND型フラッシュメモリである、請求項1に記載の半導体記憶装置。
【請求項16】
半導体記憶装置と、
前記半導体記憶装置に対する書き込み及び読出しを含むアクセスを行うためのコマンドを発行するホスト装置と、を備えるメモリシステムにおいて、
前記半導体記憶装置は、
不揮発メモリと、
前記不揮発メモリにそれぞれ異なる動作条件を設定するための複数のパラメータを記憶するパラメータ記憶部と、
ホスト装置からのコマンドにより前記不揮発メモリにアクセスする傾向を示すアクセスパターンを解析するアクセスパターン解析部と、
前記アクセスパターン解析部で解析されたアクセスパターンに基づいて、前記複数のパラメータの中から最適なパラメータを選択するパラメータ選択部と、
前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスするアクセス制御部と、を有する、メモリシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の一実施形態は、半導体記憶装置及びメモリシステムに関する。
【背景技術】
【0002】
従来の半導体メモリでは、製品出荷時又は起動時に、半導体メモリの動作条件を指定するパラメータが予め初期値に設定される。パラメータの値は、一つしか設定できないため、半導体メモリが平均的な動作をするような値に設定される。このため、半導体メモリを特殊な動作条件で使用したい場合には、半導体メモリを最適に動作させることが困難になりうる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許公報第7953940号
【特許文献2】米国特許公報第9477679号
【特許文献3】米国特許公報第11119654号
【発明の概要】
【発明が解決しようとする課題】
【0004】
そこで、本発明の一実施形態では、必要に応じて最適な動作条件で動作させることが可能な半導体記憶装置及びメモリシステムを提供するものである。
【課題を解決するための手段】
【0005】
上記の課題を解決するために、本発明の一実施形態によれば、不揮発メモリと、
前記不揮発メモリにそれぞれ異なる動作条件を設定するための複数のパラメータを記憶するパラメータ記憶部と、
ホスト装置からのコマンドにより前記不揮発メモリにアクセスする傾向を示すアクセスパターンを解析するアクセスパターン解析部と、
前記アクセスパターン解析部で解析されたアクセスパターンに基づいて、前記複数のパラメータの中から最適なパラメータを選択するパラメータ選択部と、
前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスするアクセス制御部と、を備える、半導体記憶装置が提供される。
【図面の簡単な説明】
【0006】
【
図1】第1の実施形態による半導体記憶装置を備えたメモリシステムの概略構成を示すブロック図。
【
図2】UFSデバイスとUFSホストを備えるUFSシステムのブロック図。
【
図3】不揮発メモリのアクセス速度又は寿命のどちらを優先させるかを決定する処理動作を示すフローチャート。
【
図4】不揮発メモリが省電力モードに移行する時間の長短を決定する処理動作を示すフローチャート。
【
図5】第2の実施形態による半導体記憶装置を備えたメモリシステムの概略構成を示すブロック図。
【
図6】第2の実施形態による半導体記憶装置の処理動作を示すフローチャート。
【発明を実施するための形態】
【0007】
以下、図面を参照して、半導体記憶装置及びメモリシステムの実施形態について説明する。以下では、半導体記憶装置及びメモリシステムの主要な構成部分を中心に説明するが、半導体記憶装置及びメモリシステムには、図示又は説明されていない構成部分や機能が存在しうる。以下の説明は、図示又は説明されていない構成部分や機能を除外するものではない。
【0008】
(第1の実施形態)
図1は第1の実施形態による半導体記憶装置1を備えたメモリシステム2の概略構成を示すブロック図である。
図1のメモリシステム2は、半導体記憶装置1とホスト装置3とを備えている。
【0009】
半導体記憶装置1は、不揮発メモリ4と、メモリコントローラ5とを有する。不揮発メモリ4は、例えばNAND型フラッシュメモリのような半導体メモリである。なお、不揮発メモリ4は、NAND型フラッシュメモリ以外のMRAM(Magnetoresistive Random Access Memory)、PRAM(Phase Change RAM)、ReRAM(Resistive RAM)、FeRAM(Ferroelectric RAM)などでもよい。
【0010】
不揮発メモリ4は、特定の書き込み単位でデータの書き込み動作及び読み出し動作を行う。さらに、不揮発メモリ4は、複数の書き込み単位からなる消去単位でデータを消去する。例えば、不揮発メモリ4がNAND型フラッシュメモリである場合、不揮発メモリ4は、ページ単位で書き込み動作及び読み出し動作を行い、ブロック単位でデータを消去する。
【0011】
メモリコントローラ5は、不揮発メモリ4の制御に関する処理を行う。この処理には、論理アドレスと物理アドレスの変換が含まれる。論理アドレスは、ホスト装置3によって、ホスト装置3が半導体記憶装置1に書き込むためのデータまたはホスト装置3が半導体記憶装置1から読み出すためのデータに割り当てられるアドレスである。物理アドレスは、不揮発メモリ4における書き込み領域または消去領域を特定するためのアドレスである。
【0012】
不揮発メモリ4は、入出力回路、ロジック制御回路、ステータスレジスタ、アドレスレジスタ、コマンドレジスタ、シーケンサ、レディ/ビジー回路、電圧発生回路、メモリセルアレイ、ロウデコーダ、センスアンプ、データレジスタ、及びカラムデコーダを含む。
【0013】
入出力回路は、メモリコントローラ5との信号DQの入出力を制御する。より具体的には、入出力回路は、メモリコントローラ5から受信したデータDAT(書き込みデータ)を、データレジスタに送信し、物理アドレスADDをアドレスレジスタに送信し、コマンドCMDをコマンドレジスタに送信する。また、入出力回路は、ステータスレジスタから受信したステータス情報STS、データレジスタから受信したデータDAT(読み出しデータ)、及びアドレスレジスタから受信した物理アドレスADDをメモリコントローラ5に送信する。
【0014】
ロジック制御回路は、メモリコントローラ5から各種制御信号を受信する。そしてロジック制御回路は、受信した制御信号に応じて、入出力回路及びシーケンサを制御する。
【0015】
ステータスレジスタは、例えば、書き込み動作、読み出し動作、及び消去動作におけるステータス情報STSを一時的に保持し、メモリコントローラ5に動作が正常に終了したか否かを通知する。
【0016】
アドレスレジスタは、入出力回路を介してメモリコントローラ5から受信した物理アドレスADDを一時的に保持する。そしてアドレスレジスタは、ロウアドレスRAをロウデコーダへ転送し、カラムアドレスCAをカラムデコーダに転送する。
【0017】
コマンドレジスタは、入出力回路を介してから受信したコマンドCMDを一時的に保存し、シーケンサに転送する。
【0018】
シーケンサは、不揮発メモリ4全体の動作を制御する。より具体的には、シーケンサは、コマンドレジスタが保持するコマンドCMDに応じて、例えばステータスレジスタ、レディ/ビジー回路、電圧発生回路、ロウデコーダ、センスアンプ、データレジスタ、及びカラムデコーダ等を制御し、書き込み動作、読み出し動作、及び消去動作等を実行する。
【0019】
レディ/ビジー回路は、シーケンサの動作状況に応じて、レディ/ビジー信号R/Bnを105に送信する。
【0020】
電圧発生回路は、シーケンサの制御に応じて、書き込み動作、読み出し動作、及び消去動作に必要な電圧を発生させ、この発生した電圧を例えばメモリセルアレイ、ロウデコーダ、及びセンスアンプ等に供給する。 メモリセルアレイは、ロウ及びカラムに対応付けられた複数の不揮発性のメモリセルトランジスタを含む。センスアンプは、電圧発生回路より供給された電圧をメモリセルアレイ内のメモリセルトランジスタに印加する。ロウデコーダは、ロウアドレスRAをデコードする。ロウデコーダは、デコード結果に基づき、メモリセルアレイに、必要な電圧を印加する。
【0021】
不揮発メモリ4は複数のワード線を備える。書き込み動作及び読み出し動作は、メモリセルアレイに含まれるメモリセルトランジスタのうち1つのワード線に接続される複数のメモリセルトランジスタに対して一括して行われる。
【0022】
不揮発メモリ4がNAND型フラッシュメモリである場合、1つのメモリセルトランジスタが多値(多ビット)を記憶できるように不揮発メモリ4が構成されていてもよい。メモリセルトランジスタは、制御ゲートと電荷蓄積層とを備え、データを不揮発に保持する。メモリセルトランジスタは、電荷蓄積層に蓄えられた電子の数に応じて閾値電圧が変化し、この閾値電圧の違いに応じた情報を記憶する。多値を記憶可能なメモリセルトランジスタの場合、1つのワード線WLに接続される複数のメモリセルに複数ページが割り当てられる。
【0023】
センスアンプは、読み出し動作のときには、メモリセルアレイから読み出されたデータをセンスする。そして、センスアンプは、読み出しデータをデータレジスタに送信する。また、センスアンプは、書き込み動作のときには、書き込みデータをメモリセルアレイに送信する。
【0024】
データレジスタは、複数のラッチ回路を備える。ラッチ回路は、書き込みデータまたは読み出しデータを一時的に保持する。例えば書き込み動作において、データレジスタは、入出力回路から受信した書き込みデータを一時的に保持し、センスアンプに送信する。また例えば、読み出し動作において、データレジスタは、センスアンプから受信した読み出しデータを一時的に保持し、入出力回路に送信する。
【0025】
カラムデコーダは、例えば書き込み動作、読み出し動作、及び消去動作の際、カラムアドレスCAをデコードし、デコード結果に応じてデータレジスタ内のラッチ回路を選択する。
【0026】
メモリコントローラ5は、パラメータ記憶部6と、アクセスパターン解析部7と、パラメータ選択部8と、アクセス制御部9とを有する。
【0027】
パラメータ記憶部6は、不揮発メモリ4にそれぞれ異なる動作条件を設定するための複数のパラメータを記憶する。動作条件とは、例えば、不揮発メモリ4に対する書き込み及び読み出しを行う際のワード線電圧のパルス幅及び電圧振幅などである。本実施形態による不揮発メモリ4は、不揮発メモリ4の動作条件をパラメータによって指定することを前提としている。パラメータは、プロファイルと呼ばれることもあるが、本明細書では、パラメータと呼ぶ。
【0028】
パラメータによって指定可能な不揮発メモリ4の動作条件は任意であり、種々のパラメータを設けることができる。例えば、パラメータ記憶部6は、不揮発メモリ4に書き込んだデータを読み出す際のエラーレートの低下よりもアクセス速度の向上を優先させる第1パラメータと、アクセス速度の向上よりもエラーレートの低下を優先させる第2パラメータと、不揮発メモリ4が省電力モードに移行する時間をより長くする第3パラメータと、不揮発メモリ4が省電力モードに移行する時間をより短くする第4パラメータとを記憶する。なお、第1~第4パラメータは、パラメータの一例に過ぎない。省電力モードは、ハイバネーションと呼ばれることもある。省電力モードは、半導体記憶装置1内の少なくとも一部の回路に供給する電源電圧を下げて消費電力を削減するモードである。省電力モードに移行する際に、ホスト装置3が管理する不図示の揮発メモリ内のデータを、不揮発メモリ4に記憶する処理を行う場合もある。通常モードは、半導体記憶装置1内の各部に、予め定めた電源電圧を供給するモードである。
【0029】
アクセス速度の向上とは、不揮発メモリ4に対する高速書き込み又は高速読出しを行うことを意味する。アクセス速度の向上は、アクセス性能の向上と言い換えることもできる。
【0030】
アクセス速度の向上は、エラーレートを上昇させる要因になりうる。例えば、不揮発メモリ4に対して高速書き込みを行うには、不揮発メモリ4にデータを書き込む際のプログラム電圧の印加とベリファイ電圧の印加を繰り返すプログラムループの回数を減らしたり、又は不揮発メモリ4にデータを書き込んだ後のベリファイに読出しを省略するメモリセル数を増やしたり、又はベリファイパスと判定する際のエラービット数を増やしたりする必要があり、エラーレートを上昇させてしまう。また、不揮発メモリ4から高速読出しを行うと、通常の読出しよりも読出し電圧を高くする必要があり、その読出し電圧が周囲のメモリセルに悪影響を与えるおそれがある。具体的には、読出し電圧を高くすることで、周囲のメモリセルの電荷蓄積領域に蓄積されている電荷量が変化し、ビット化けが生じるおそれがある。プログラム電圧の印加動作は、書き込み対象の1つ以上のメモリセルMT(以下「選択メモリセル」と称する)に接続されたワード線(以下「選択ワード線」と称する)に対してプログラム電圧を印加し、所望のデータ値に対応する閾値電圧に向けて選択メモリセルMTの閾値電圧を上昇させる動作である。プログラムベリファイは、選択メモリセルMTの閾値電圧が所望のデータ値に対応する閾値電圧まで達したか否か、即ち、選択メモリセルMTに所望のデータ値が書き込まれたか否かを検証する動作であり、ベリファイ電圧は検証の際に選択ワード線に印加される電圧である。
【0031】
このように、高速読出しを実行すると、エラーレートが高くなるおそれがある。エラーレートが高くなると、エラー訂正処理の頻度が高くなり、不揮発メモリ4に対する書き込み回数と消去回数が全体的に増えることから、不揮発メモリ4の寿命が低下する。
【0032】
以上をまとめると、不揮発メモリ4のアクセス性能を上げると、エラーレートが高くなって寿命も短くなる。また、不揮発メモリ4のアクセス性能を下げると、エラーレートが低下して寿命が長くなる。
【0033】
なお、本明細書では、不揮発メモリ4に対するデータの書き込みと読出しの双方を総称してアクセスと呼ぶが、「アクセス」という用語には、書き込み又は読出しの一方だけを行う場合も含まれるものとする。
【0034】
一方、半導体記憶装置1は、ホスト装置3から一定期間以上コマンドが送られて来ないときに、自発的に省電力モードに移行する。省電力モードにいったん移行すると、通常モードに復帰するのに、ある程度の時間を要する。例えば、半導体記憶装置1が省電力モードのときにホスト装置3からライトコマンド又はリードコマンドが送られてきた場合、そのコマンドに対するレスポンスを返すまでの時間には、省電力モードからの復帰時間が含まれるため、ライトコマンド又はリードコマンドのレイテンシが悪化する。
【0035】
よって、省電力モードに移行するまでの時間を短くすると、所定期間内における省電力モードである期間が長くなり、半導体記憶装置1の消費電力を削減できるものの、省電力モードから通常モードへの復帰に時間がかかるため、ホスト装置3からのコマンドに対するレイテンシが悪化する。逆に、省電力モードに移行するまでの時間を長くすると、半導体記憶装置1の消費電力は増えるものの、省電力モードから通常モードへの復帰回数が減るため、ホスト装置3からのコマンドに対するレイテンシは向上する。
【0036】
このように、パラメータ記憶部6に記憶されている複数のパラメータのうち、どれを選択して不揮発メモリ4に設定するかで、不揮発メモリ4の性能を相違させることができる。
【0037】
パラメータ記憶部6は、例えばホスト装置3から送信された複数のパラメータを記憶する。ホスト装置3は、パラメータ記憶部6に記憶可能な複数のパラメータをメモリシステム2の電源投入時などに不揮発メモリ4に送信する。あるいはホスト装置3とは別個に、メモリシステム2の製造時等に、複数のパラメータをパラメータ記憶部6に記憶してもよい。
【0038】
アクセスパターン解析部7は、ホスト装置3からのコマンドにより不揮発メモリ4にアクセスする傾向を示すアクセスパターンを解析する。アクセスする傾向とは、例えば、単位時間あたりのアクセス量が標準よりも多いとか、読出しよりも書き込みを頻繁に行うとか、特定のメモリ領域からの読出しを集中的に行うなどである。あるいは、アクセスする傾向には、ホスト装置3が不揮発メモリ4に送信するコマンドの送信間隔が長い又は短いなども含まれる。アクセスパターン解析部7は、ホスト装置3からのコマンドによる不揮発メモリ4へのアクセスを継続してモニタした結果に基づいて、ホスト装置3のアクセスパターンを解析する。アクセスパターン解析部7は、ホスト装置3のアクセスパターンを常時解析してもよいし、間欠的にアクセスパターンを解析してもよい。
【0039】
アクセスパターン解析部7により解析されるアクセスパターンは、例えば、不揮発メモリ4に対する単位時間あたりのアクセス量が所定の閾値より多い第1アクセスパターン、不揮発メモリ4に対する単位時間あたりのアクセス量が所定の閾値以下の第2アクセスパターン、不揮発メモリ4に対するホスト装置3からのコマンド送信間隔が所定の閾値より短い第3アクセスパターン、及び不揮発メモリ4セルに対するホスト装置3からのコマンド送信間隔が所定の閾値以上の第4アクセスパターンなどを含んでいる。上述した第1~第4アクセスパターンは、アクセスパターンの一例であり、アクセスパターンの種類は任意である。
【0040】
パラメータ選択部8は、アクセスパターン解析部7で解析されたアクセスパターンに基づいて、複数のパラメータの中から最適なパラメータを選択する。パラメータ選択部8は、ホスト装置3からのコマンドによる不揮発メモリ4にアクセスする傾向をモニタした結果に応じて、最適なパラメータを選択する。
【0041】
パラメータ選択部8は、ホスト装置3からのコマンドによる不揮発メモリ4に対するアクセス傾向が、単位時間あたりのアクセス量が多い第1アクセスパターンであると解析された場合には、エラーレートの低下よりもアクセス速度の向上を優先させる第1パラメータを最適なパラメータとして選択する。また、パラメータ選択部8は、不揮発メモリ4に対する単位時間あたりのアクセス量が閾値以下である第2アクセスパターンであると解析された場合には、アクセス速度の向上よりもエラーレートの低下を優先させる第2パラメータを最適なパラメータとして選択する。また、パラメータ選択部8は、不揮発メモリ4に対するホスト装置3からのコマンド送信間隔が所定の閾値より短い第3アクセスパターンであると解析された場合には、省電力モードに移行する時間をより長くする第3パラメータを最適なパラメータとして選択する。また、パラメータ選択部8は、不揮発メモリ4に対するホスト装置3からのコマンド送信間隔が所定の閾値以上の第4アクセスパターンであると解析された場合には、省電力モードに移行する時間をより短くする第4パラメータを最適なパラメータとして選択する。
【0042】
アクセス制御部9は、最適なパラメータを不揮発メモリ4に設定した状態で不揮発メモリ4にアクセスする。第1の実施形態による半導体記憶装置1内のアクセス制御部9は、パラメータ選択部8にて最適なパラメータが選択されると、ホスト装置3に確認することなく、最適なパラメータにて不揮発メモリ4にアクセスする。
【0043】
アクセス制御部9は、例えば、ホスト装置3からのコマンドによる不揮発メモリ4に対するアクセス傾向が、単位時間あたりのアクセス量が多い第1アクセスパターンであると解析された場合には、エラーレートの低下よりもアクセス速度の向上を優先させる第1パラメータに基づいて不揮発メモリ4にアクセスする。これにより、アクセス制御部9は、ホスト装置3の不揮発メモリ4に対するアクセス傾向に合致する動作条件で不揮発メモリ4を動作させることができる。
【0044】
本実施形態による半導体記憶装置1は、例えばUFS(Universal Flash Storage)規格に準拠していてもよい。UFS規格は、デジタルカメラ、スマートフォン、及び家電機器向けのNAND型フラッシュメモリの規格であり、JEDEC(Joint Electron Device Engineering Councils)で策定されている。
【0045】
図2はUFSデバイス11とホスト装置3(UFSホスト12とも呼ばれる)を備えるメモリシステム2(UFSシステム13とも呼ばれる)のブロック図である。
【0046】
図2のUFSデバイス11は、インタフェース部(I/F)14と、メモリコントローラ15と、メモリ部16とを有する。インタフェース部14は、MIPI UniPro(Mobile Industry Processor Interface Unified Protocol)を用いるトランスポート層17と、MIPI M-PHY物理層18とを有する。インタフェース部14は、
図1では省略されているが、UFSデバイス11とUFSホスト12との間で送受される各種信号のプロトコルの変換を行う。メモリコントローラ15は、
図1のメモリコントローラ5と同様の機能を有する。メモリ部16は、NAND型フラッシュメモリを用いて構成されており、
図1の不揮発メモリ4と同様の機能を有する。
【0047】
図2のUFSホスト12は、インタフェース部(I/F)19と、ホストコントローラ20と、ドライバ21と、アプリケーション部22とを有する。インタフェース部19は、MIPI UniProを用いるトランスポート層23と、MIPI M-PHY物理層24とを有する。ホストコントローラ20は、UFSホスト12の動作を制御する。ホストコントローラ20の中には、各種のデータを保持するレジスタ25が設けられている。ドライバ21は、アプリケーション部22からの指示により、ホストコントローラ20を駆動する。
【0048】
図3及び
図4は第1の実施形態による半導体記憶装置1の処理動作を示すフローチャートである。
図3は不揮発メモリ4のアクセス速度又は寿命のどちらを優先させるかを決定する処理動作を示している。
図4は不揮発メモリ4が省電力モードに移行する時間の長短を決定する処理動作を示している。ホスト装置3が半導体記憶装置1に対するアクセスを開始する際に、
図3又は
図4の処理が開始される。
【0049】
まずは、
図3の処理を説明する。ホスト装置3がコマンドを発行して半導体記憶装置1に対するアクセスを開始すると、アクセスパターン解析部7はホスト装置3のアクセスパターンを解析する(ステップS1)。
【0050】
パラメータ選択部8は、アクセスパターン解析部7が所定期間にわたってアクセスパターンを解析した結果に基づいて、パラメータ記憶部6に記憶された複数のパラメータの中から、最適なパラメータを選択する(ステップS2~S4)。より具体的には、単位時間あたりのアクセス量が所定の閾値より多いか否かを判定し(ステップS2)、所定の閾値より多い場合には、エラーレートの低下よりもアクセス速度の向上を優先させる第1パラメータを選択する(ステップS3)。一方、所定の閾値以下の場合には、アクセス速度の向上よりもエラーレートの低下を優先させる第2パラメータを選択する(ステップS4)。
【0051】
アクセス制御部9は、ステップS3で選択された第1パラメータ、又はステップS4で選択された第2パラメータに基づいて、不揮発メモリ4に対するアクセスを行う(ステップS5)。
【0052】
このように、
図3の処理では、ホスト装置3のアクセスパターンに基づいて、不揮発メモリ4に対するアクセス速度を優先させるか、又は寿命を優先させるかを選択することができる。
【0053】
次に、
図4の処理を説明する。ステップS11はステップS1と同様である。パラメータ選択部8は、アクセスパターン解析部7が所定期間にわたってアクセスパターンを解析した結果に基づいて、パラメータ記憶部6に記憶された複数のパラメータの中から、最適なパラメータを選択する(ステップS12~S14)。より具体的には、不揮発メモリ4に対するホスト装置3からのコマンド送信間隔が所定の閾値より短いか否かを判定し(ステップS12)、所定の閾値より短い場合には、不揮発メモリ4が省電力モードに移行する時間をより長くする第3パラメータを選択する(ステップS13)。一方、所定の閾値以上の場合には、不揮発メモリ4が省電力モードに移行する時間をより短くする第4パラメータを選択する(ステップS14)。
【0054】
アクセス制御部9は、ステップS13で選択された第3パラメータ、又はステップS14で選択された第4パラメータに基づいて、不揮発メモリ4に対するアクセスを行う(ステップS15)。
【0055】
上述した説明では、パラメータ選択部8が選択した最適なパラメータに基づいて、ホスト装置3の了承を得ることなく、不揮発メモリ4のパラメータを変更する例を示したが、不揮発メモリ4が複数の動作モードを備えていてもよい。以下では、不揮発メモリ4が第1~第4動作モードを有する例を説明する。
【0056】
第1動作モードは、上述したように、不揮発メモリ4自身でホスト装置3のアクセスパターンを解析して、その解析結果に基づいてパラメータを変更するモードである。
【0057】
第2動作モードは、ホスト装置3が強制的に不揮発メモリ4のパラメータを設定するモードである。この場合、不揮発メモリ4は、ホスト装置3からの指示に従ってパラメータを設定するため、不揮発メモリ4自身の判断ではパラメータの変更を行わない。
【0058】
第3動作モードは、不揮発メモリ4のパラメータをデフォルト設定することをホスト装置3が強制するモードである。デフォルト設定するパラメータは、不揮発メモリ4の平均的な動作条件である。
【0059】
第4動作モードは、アクセスパターン解析部7が解析に使用する閾値をホスト装置3が決定するモードである。ホスト装置3は、上述した閾値を、例えばUFS規格のライトバッファ・コマンドにて設定する。ホスト装置3が決定した閾値に基づいて、不揮発メモリ4は、上述した
図3又は
図4の処理を行う。
【0060】
ホスト装置3は、上述した第1~第4動作モードのいずれかを任意に選択できるようにしてもよい。例えば、ホスト装置3は、UFS規格のフラグを用いて、不揮発メモリ4の動作モードの変更と確認を行ってもよい。具体的には、上述したフラグの設定値により第1~第4動作モードを識別できるようにしておくことで、ホスト装置3は、フラグの設定値を読み出して、不揮発メモリ4の現在の動作モードを確認できる。また、ホスト装置3は、フラグの設定値を更新することで、不揮発メモリ4を任意の動作モードに変更できる。
【0061】
あるいは、ホスト装置3は、UFS規格のクエリ要求UPIU(UFS Protocol Information Units)のQUERY FUNCTIONS=7Fh(40h~7Fhのうち任意の値を割り当てる)のVendor Specific Read Functionsを使用して、不揮発メモリ4の動作モードを確認してもよい。この場合、不揮発メモリ4は、クエリ応答UPIUを介して、動作モード情報をホスト装置3に返送してもよい。
【0062】
上述した第2~第4動作モードは、第1の実施形態による半導体記憶装置1の処理動作にとって必須ではないため、ホスト装置3が不揮発メモリ4の複数の動作モードを任意に選択できる機能を設けることは必須ではない。
【0063】
このように、第1の実施形態では、不揮発記憶装置1内のメモリコントローラ5は、ホスト装置3の不揮発メモリ4に対するアクセスパターンを解析して、解析結果に基づいて最適なパラメータを選択して、不揮発メモリ4に対するアクセスを行う。これにより、ホスト装置3のアクセス状況に応じて不揮発メモリ4の動作条件を自発的に切り替えることができる。
【0064】
(第2の実施形態)
第1の実施形態では、パラメータ選択部8が選択した最適なパラメータをホスト装置3に確認することなく不揮発メモリ4に設定する。これに対して、第2の実施形態では、パラメータ選択部8が選択した最適なパラメータを採用するか否かをホスト装置3に確認することを特徴とする。
【0065】
図5は第2の実施形態による半導体記憶装置1aを備えたメモリシステム2aの概略構成を示すブロック図である。
図5では、
図1と共通する構成部分には同一符号を付しており、以下では相違点を中心に説明する。
【0066】
図5の半導体記憶装置1a内のメモリコントローラ5は、
図1のメモリコントローラ5の構成に加えて、提示部31と、指示受領部32とを有する。
【0067】
提示部31は、パラメータ選択部8が選択した最適なパラメータをホスト装置3に提示する。例えば、提示部31は、UFS規格のリードコマンド、ライトコマンド、シンクロナイズ・キャッシュコマンド、又はUNMAPコマンドに対するレスポンスに、上述した最適なパラメータの情報を含めてもよい。
【0068】
ホスト装置3は、提示された最適なパラメータへの切替を行うか否かを検討して、最適なパラメータへの変更を行うか否かの指示情報を半導体記憶装置1aに送信する。例えば、ホスト装置3は、提示された最適なパラメータを許諾する場合は、ライトバッファに記憶されるコマンドのMODE=01h Vendor Specificコマンドにて、最適なパラメータへの変更を指示してもよい。
【0069】
メモリコントローラ5内の指示受領部32は、ホスト装置3の指示情報を受領する。アクセス制御部9は、指示受領部32で受領されたホスト装置3の指示情報に基づいて、不揮発メモリ4のパラメータを最適なパラメータに変更するか否かを決定する。
【0070】
図6は第2の実施形態による半導体記憶装置1aの処理動作を示すフローチャートである。
図6のフローチャートのステップS21~S24は、
図3のステップS1~S4と同じである。提示部31は、ステップS23で選択された第1パラメータ、又はステップS24で選択された第2パラメータをホスト装置3に提示する(ステップS25)。
【0071】
その後、指示受領部32は、ホスト装置3からの指示情報を受領する(ステップS26)。次に、アクセス制御部9は、ホスト装置3からの指示情報に基づいて、不揮発メモリ4のパラメータを最適なパラメータに変更するか否かを決定し、不揮発メモリ4に対するアクセスを行う(ステップS27)。
【0072】
このように、第2の実施形態では、不揮発記憶装置1a内のメモリコントローラ5は、ホスト装置3のアクセスパターンに基づいて、不揮発メモリ4の最適なパラメータを選択し、選択された最適なパラメータを採用するか否かをホスト装置3に提示して、ホスト装置3の判断を仰ぐ。ホスト装置3から最適なパラメータへの変更が指示された場合に、不揮発メモリ4のパラメータを変更する。これにより、ホスト装置3の了承の下で不揮発メモリ4のパラメータを最適化することができる。
【0073】
[付記]
[項目1]
不揮発メモリと、
前記不揮発メモリにそれぞれ異なる動作条件を設定するための複数のパラメータを記憶するパラメータ記憶部と、
ホスト装置からのコマンドにより前記不揮発メモリにアクセスする傾向を示すアクセスパターンを解析するアクセスパターン解析部と、
前記アクセスパターン解析部で解析されたアクセスパターンに基づいて、前記複数のパラメータの中から最適なパラメータを選択するパラメータ選択部と、
前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスするアクセス制御部と、を備える、半導体記憶装置。
[項目2]
前記アクセスパターン解析部は、前記ホスト装置からのコマンドにより前記不揮発メモリにデータを書き込む場合のアクセスパターンと、前記ホスト装置からのコマンドにより前記不揮発メモリからデータを読み出す場合のアクセスパターンとの少なくとも一方を解析する、項目1に記載の半導体記憶装置。
[項目3]
前記パラメータ記憶部は、前記ホスト装置から送信された前記複数のパラメータを記憶する、項目1又は2に記載の半導体記憶装置。
[項目4]
前記アクセス制御部は、前記パラメータ選択部により前記最適なパラメータが選択された場合に、前記ホスト装置に確認することなく、前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスする、項目1乃至3のいずれか一項に記載の半導体記憶装置。
[項目5]
前記最適なパラメータを前記ホスト装置に提示する提示部を備え、
前記アクセス制御部は、前記提示部による提示に対して、前記ホスト装置から前記最適なパラメータへの変更が指示された場合に、前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスする、項目1乃至3のいずれか一項に記載の半導体記憶装置。
[項目6]
前記提示部は、UFS(Universal Flash Storage)規格に準拠したリードコマンド、ライトコマンド、シンクロナイズ・キャッシュコマンド、又はUNMAPコマンドのレスポンスに前記最適なパラメータの情報を含めて前記ホスト装置に送信する、項目5に記載の半導体記憶装置。
[項目7]
前記ホスト装置からの前記最適なパラメータへの変更指示情報を記憶するUFS規格に準拠したライトバッファを備え、
前記アクセス制御部は、前記ライトバッファに前記変更指示情報が記憶されている場合に、前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスする、項目5又は6に記載の半導体記憶装置。
[項目8]
前記アクセスパターン解析部は、前記不揮発メモリに対する単位時間あたりのアクセス量が所定の閾値より多い第1アクセスパターン、又は前記不揮発メモリに対する単位時間あたりのアクセス量が前記閾値以下である第2アクセスパターンのいずれかであることを解析する、項目1乃至7のいずれか一項に記載の半導体記憶装置。
[項目9]
前記パラメータ選択部は、前記アクセスパターン解析部にて前記第1アクセスパターンであると解析された場合、エラーレートの低下よりもアクセス速度の向上を優先させる第1パラメータを選択し、前記第2アクセスパターンであると解析された場合、アクセス速度の向上よりもエラーレートの低下を優先させる第2パラメータを選択する、項目8に記載の半導体記憶装置。
[項目10]
前記アクセス速度は、前記不揮発メモリへの書き込み速度であり、
前記第1パラメータは、前記第2パラメータよりも、前記不揮発メモリにデータを書き込む際のプログラム回数を減らすか、又は、ベリファイリード時に読出しを省略するビット数を増やす、項目9に記載の半導体記憶装置。
[項目11]
前記アクセス速度は、前記不揮発メモリからの読出し速度であり、
前記第1パラメータは、前記第2パラメータよりも、前記不揮発メモリの寿命を短くする、項目9に記載の半導体記憶装置。
[項目12]
前記アクセスパターン解析部は、前記不揮発メモリに対する前記ホスト装置からのコマンド送信間隔が所定の閾値より短い第3アクセスパターン、又は前記不揮発メモリに対する前記ホスト装置からのコマンド送信間隔が前記閾値以上の第4アクセスパターンのいずれかであることを解析する、項目1乃至7のいずれか一項に記載の半導体記憶装置。
[項目13]
前記パラメータ選択部は、前記アクセスパターン解析部にて前記第3アクセスパターンであると解析された場合には、前記第4アクセスパターンであると解析された場合よりも、省電力モードに移行する時間をより長くする、項目12に記載の半導体記憶装置。
[項目14]
前記閾値は、前記ホスト装置にて指定される、項目8乃至13のいずれか一項に記載の半導体記憶装置。
[項目15]
前記不揮発メモリは、NAND型フラッシュメモリである、項目1乃至14のいずれか一項に記載の半導体記憶装置。
[項目16]
半導体記憶装置と、
前記半導体記憶装置に対する書き込み及び読出しを含むアクセスを行うためのコマンドを発行するホスト装置と、を備えるメモリシステムにおいて、
前記半導体記憶装置は、
不揮発メモリと、
前記不揮発メモリにそれぞれ異なる動作条件を設定するための複数のパラメータを記憶するパラメータ記憶部と、
ホスト装置からのコマンドにより前記不揮発メモリにアクセスする傾向を示すアクセスパターンを解析するアクセスパターン解析部と、
前記アクセスパターン解析部で解析されたアクセスパターンに基づいて、前記複数のパラメータの中から最適なパラメータを選択するパラメータ選択部と、
前記最適なパラメータを前記不揮発メモリに設定した状態で前記不揮発メモリにアクセスするアクセス制御部と、を有する、メモリシステム。
【0074】
本開示の態様は、上述した個々の実施形態に限定されるものではなく、当業者が想到しうる種々の変形も含むものであり、本開示の効果も上述した内容に限定されない。すなわち、特許請求の範囲に規定された内容およびその均等物から導き出される本開示の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更および部分的削除が可能である。
【符号の説明】
【0075】
1、1a 半導体記憶装置、2、2a メモリシステム、3 ホスト装置、4 不揮発メモリ、5 メモリコントローラ、6 パラメータ記憶部、7 アクセスパターン解析部、8 パラメータ選択部、9 アクセス制御部、11 UFSデバイス、12 UFSホスト、13 UFSシステム、14 インタフェース部、15 メモリコントローラ、16 メモリ部、17 トランスポート層、18 M-PHY物理層、19 インタフェース部、20 ホストコントローラ、21 ドライバ、22 アプリケーション部、23 トランスポート層、24 M-PHY物理層、25 レジスタ、31 提示部、32 指示受領部