IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マイクロン テクノロジー, インク.の特許一覧

特開2022-164611メモリデバイスの電圧ビンを較正するための閾値電圧決定
<>
  • 特開-メモリデバイスの電圧ビンを較正するための閾値電圧決定 図1
  • 特開-メモリデバイスの電圧ビンを較正するための閾値電圧決定 図2
  • 特開-メモリデバイスの電圧ビンを較正するための閾値電圧決定 図3
  • 特開-メモリデバイスの電圧ビンを較正するための閾値電圧決定 図4
  • 特開-メモリデバイスの電圧ビンを較正するための閾値電圧決定 図5
  • 特開-メモリデバイスの電圧ビンを較正するための閾値電圧決定 図6
  • 特開-メモリデバイスの電圧ビンを較正するための閾値電圧決定 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022164611
(43)【公開日】2022-10-27
(54)【発明の名称】メモリデバイスの電圧ビンを較正するための閾値電圧決定
(51)【国際特許分類】
   G11C 16/34 20060101AFI20221020BHJP
   G06F 12/00 20060101ALI20221020BHJP
   G11C 16/26 20060101ALI20221020BHJP
   G11C 16/04 20060101ALI20221020BHJP
【FI】
G11C16/34 163
G06F12/00 597U
G11C16/26 100
G11C16/04 170
【審査請求】有
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022066649
(22)【出願日】2022-04-14
(31)【優先権主張番号】17/233,317
(32)【優先日】2021-04-16
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】595168543
【氏名又は名称】マイクロン テクノロジー,インク.
(74)【代理人】
【識別番号】100121083
【弁理士】
【氏名又は名称】青木 宏義
(74)【代理人】
【識別番号】100138391
【弁理士】
【氏名又は名称】天田 昌行
(74)【代理人】
【識別番号】100074099
【弁理士】
【氏名又は名称】大菅 義之
(72)【発明者】
【氏名】ムチェラ キショール クマール
(72)【発明者】
【氏名】ラトナム サムパス ケー.
(72)【発明者】
【氏名】ノーウェル シェーン
(72)【発明者】
【氏名】フィーリー ピーター
(72)【発明者】
【氏名】パルタサラティ シヴァグナナム
(72)【発明者】
【氏名】ケイナック ムスタファ エヌ.
【テーマコード(参考)】
5B160
5B225
【Fターム(参考)】
5B160AA06
5B225BA01
5B225CA28
5B225DA03
5B225DA10
5B225DD06
5B225EA05
5B225FA01
(57)【要約】
【課題】メモリデバイスの電圧ビンを較正するための閾値電圧決定を提供すること。
【解決手段】メモリサブシステムの処理デバイスは、メモリデバイスの複数の電圧ビンのうちの第1の電圧ビンに割り当てられた複数のブロックを識別し、複数の電圧ビンのうちの第1の電圧ビンと後続の電圧ビンとの間の遷移境界と関連付けられた第2のプログラム後の時間(TAP)から既定の閾値時間期間内のTAPを有する複数のブロックのサブセットを識別し、ブロックのサブセットと関連付けられた閾値電圧オフセットを決定し、閾値電圧オフセットを後続の電圧ビンと関連付けるように構成される。
【選択図】図5
【特許請求の範囲】
【請求項1】
メモリデバイスと、
処理デバイスと
を備えるシステムであって、前記処理デバイスは、
メモリデバイスの複数の電圧ビンのうちの第1の電圧ビンに割り当てられた複数のブロックを識別すること、
前記複数の電圧ビンの前記第1の電圧ビンと後続の電圧ビンとの間の遷移境界と関連付けられた第2のプログラム後の時間(TAP)から既定の閾値時間期間内のTAPを有する前記複数のブロックのサブセットを識別すること、
ブロックの前記サブセットと関連付けられた閾値電圧オフセットを決定すること、および
前記閾値電圧オフセットを前記後続の電圧ビンと関連付けること
を含む動作を実施するように、前記メモリデバイスに動作可能に結合される、システム。
【請求項2】
前記複数のブロックの前記サブセットは、前記第1の電圧ビンの第1の複数の読み出しレベルのうちの第1の読み出しレベルと関連付けられ、前記閾値電圧オフセットは、前記後続の電圧ビンの第2の複数の読み出しレベルのうちの第2の読み出しレベルと関連付けられる、請求項1に記載のシステム。
【請求項3】
前記複数のブロックの前記サブセットは、第1の時間点において前記後続の電圧ビンへと遷移されることになり、前記複数のブロックの前記サブセット以外のブロックは、第2の時間点において前記後続の電圧ビンへと遷移され、前記第1の時間点は、前記第2の時間点に先行する、請求項1に記載のシステム。
【請求項4】
前記閾値電圧オフセットを決定することは、
ブロックの前記サブセットに格納されるデータに対して読み出し動作を実施すること、および
前記読み出し動作の結果に基づいて前記閾値電圧オフセットを決定することを含み、
前記読み出し動作は、複数のページタイプに対応し、前記閾値読み出しオフセットは、前記ページタイプの谷に対応する複数の閾値電圧オフセットのうちの1つである、請求項1に記載のシステム。
【請求項5】
前記処理デバイスは、
前記閾値電圧オフセットを前記後続の電圧ビンと関連付けることに応答して、前記閾値電圧オフセットに基づいて、ホストデータを格納するブロックを前記後続の電圧ビンに割り当てることを含む動作をさらに実施する、請求項1に記載のシステム。
【請求項6】
前記処理デバイスは、
前記閾値電圧オフセットを使用して前記後続の電圧ビンに割り当てられたブロックのための読み出し動作を実施すること、
前記読み出し動作の結果に基づいて、前記後続の電圧ビンの前記閾値電圧オフセットを更新すること、および
更新された前記閾値電圧オフセットが既定の電圧閾値を超えるという決定に応答して、前記既定の電圧閾値の値を、前記後続の電圧ビンと関連付けられた前記閾値電圧オフセットに割り当てること、を含む動作をさらに実施する、請求項1に記載のシステム。
【請求項7】
前記複数のブロックの前記TAPは、基準温度に関する正規化時間に対応する、請求項1に記載のシステム。
【請求項8】
メモリデバイスの複数の電圧ビンのうちの1つの電圧ビンに割り当てられた複数のブロックを識別すること、
前記複数のブロックに格納されるデータに対して読み出し動作のセットを実施すること、
読み出し動作の前記セットの結果に基づいて、前記電圧ビンと関連付けられた閾値電圧オフセットを更新すること、
更新された前記閾値電圧オフセットが既定の電圧閾値を超えるかどうかを決定すること、および
更新された前記閾値電圧オフセットが前記既定の電圧閾値を超えるという決定に応答して、前記既定の電圧閾値の値を、前記電圧ビンと関連付けられた前記閾値電圧オフセットに割り当てることを含む、方法。
【請求項9】
前記閾値電圧オフセットは、前記電圧ビンの複数の読み出しレベルのうちの同じ読み出しレベルを有する前記複数のブロックのサブセットと関連付けられ、前記第2の閾値電圧オフセットは、前記電圧ビンの前記複数の読み出しレベルのうちの対応する読み出しレベルと関連付けられる、請求項8に記載の方法。
【請求項10】
前記複数のブロックと関連付けられた前記閾値電圧オフセットを決定することは、
ブロックの前記サブセットに格納されるデータに対して読み出し動作を実施すること、および
前記読み出し動作の結果に基づいて、前記閾値電圧オフセットを決定することを含む、請求項8に記載の方法。
【請求項11】
前記閾値電圧オフセットを更新することに応答して、更新された前記閾値電圧オフセットを使用して前記電圧ビンに割り当てられたブロックのための読み出し動作を実施することをさらに含む、請求項8に記載の方法。
【請求項12】
前記閾値電圧オフセットを更新することに応答して、更新された前記閾値電圧オフセットに基づいて、前記メモリデバイスのブロックを前記電圧ビンに割り当てることをさらに含む、請求項8に記載の方法。
【請求項13】
前記電圧ビンの前記第2の閾値電圧オフセットは、前記メモリデバイスの前記複数の電圧ビンのうちの前記1つの電圧ビンと先行する電圧ビンとの間の遷移境界と関連付けられた第2のプログラム後の時間(TAP)から既定の閾値時間点内のTAPを有するブロックのセットと関連付けられた対応する閾値電圧オフセットに基づいて、決定される、請求項8に記載の方法。
【請求項14】
命令を含む非一時的なコンピュータ可読記憶媒体であって、前記命令は、処理デバイスによって実行されるとき、
メモリデバイスの複数の電圧ビンのうちの第1の電圧ビンに割り当てられた複数のブロックを識別すること、
前記複数の電圧ビンのうちの前記第1の電圧ビンと後続の電圧ビンとの間の遷移境界と関連付けられた第2のプログラム後の時間(TAP)から既定の閾値時間点内のTAPを有する前記複数のブロックのサブセットを決定すること、
ブロックの前記サブセットと関連付けられた閾値電圧オフセットを決定すること、および
前記閾値電圧オフセットを前記後続の電圧ビンと関連付けること
を含む動作を、前記処理デバイスに実施させる、非一時的なコンピュータ可読記憶媒体。
【請求項15】
前記複数のブロックの前記サブセットは、前記第1の電圧ビンの第1の複数の読み出しレベルのうちの第1の読み出しレベルと関連付けられ、前記閾値電圧オフセットは、前記後続の電圧ビンの第2の複数の読み出しレベルのうちの第2の読み出しレベルと関連付けられる、請求項14に記載の非一時的なコンピュータ可読記憶媒体。
【請求項16】
前記複数のブロックの前記サブセットは、第1の時間点において前記後続の電圧ビンへと遷移されることになり、前記複数のブロックの前記サブセット以外のブロックは、第2の時間点において前記後続の電圧ビンへと遷移され、前記第1の時間点は、前記第2の時間点に先行する、請求項14に記載の非一時的なコンピュータ可読記憶媒体。
【請求項17】
前記閾値電圧オフセットを決定することは、
ブロックの前記サブセットに格納されるデータに対して読み出し動作を実施すること、および
前記読み出し動作の結果に基づいて前記閾値電圧オフセットを決定することを含む、請求項14に記載の非一時的なコンピュータ可読記憶媒体。
【請求項18】
前記閾値電圧オフセットは、前記メモリデバイスのブロックが前記後続の電圧ビンに割り当てられる前に、前記後続の電圧ビンに割り当てられる、請求項14に記載の非一時的なコンピュータ可読記憶媒体。
【請求項19】
前記処理デバイスが、
前記閾値電圧オフセットを前記後続の電圧ビンと関連付けることに応答して、前記閾値電圧オフセットに基づいて、ホストデータを格納するブロックを前記後続の電圧ビンに割り当てることを含む動作をさらに実施する、請求項14に記載の非一時的なコンピュータ可読記憶媒体。
【請求項20】
前記処理デバイスが、
前記閾値電圧オフセットを使用して前記後続の電圧ビンに割り当てられたブロックのための読み出し動作を実施すること、
前記読み出し動作の結果に基づいて前記後続の電圧ビンの前記閾値電圧オフセットを更新すること、および
更新された前記閾値電圧オフセットが既定の電圧閾値を超えるという決定に応答して、前記既定の電圧閾値の値を、前記後続の電圧ビンと関連付けられた前記閾値電圧オフセットに割り当てることを含む動作をさらに実施する、請求項14に記載の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の実施形態は、一般に、メモリサブシステムに関し、より詳細には、メモリデバイスの電圧ビンを較正するための閾値電圧決定に関する。
【背景技術】
【0002】
メモリサブシステムは、データを格納する1つまたは複数のメモリデバイスを含み得る。メモリデバイスは、例えば、不揮発性メモリデバイスおよび揮発性メモリデバイスであり得る。一般に、ホストシステムは、メモリデバイスにデータを格納するため、およびメモリデバイスからデータを取得するために、メモリサブシステムを利用し得る。
【0003】
本開示は、以下に提供される詳細な説明から、および本開示のいくつかの実施形態の添付の図面からより完全に理解される。
【図面の簡単な説明】
【0004】
図1】本開示のいくつかの実施形態によるメモリサブシステムを含む例示的なコンピューティングシステムを示す図である。
図2】本開示の実施形態による、ブロックを電圧ビンと関連付けるためのメモリサブシステムコントローラによって管理される例示的なメタデータを概略的に示す図である。
図3】本開示の1つまたは複数の態様による、電圧ビン間の遷移境界に接近するブロックの閾値電圧オフセットに基づいてメモリデバイスの電圧ビンを較正する例示的な方法を示す図である。
図4】本開示の1つまたは複数の態様による、電圧ビンの閾値電圧オフセットを閾値電圧オフセットの範囲内にあるように調整することによって、メモリデバイスの電圧ビンを較正する例示的な方法を示す図である。
図5】本開示のいくつかの実施形態による、メモリデバイスの電圧ビンを較正するための閾値電圧決定の例示的な方法のフロー図である。
図6】本開示の1つまたは複数の態様による、電圧閾値に基づいて電圧ビンの閾値電圧オフセットを調整することによって、メモリデバイスの電圧ビンを較正する例示的な方法のフロー図である。
図7】コンピュータシステムの例示的なマシンであって、コンピュータシステム内で、本明細書内で論じられた方法論のうちの任意の1つまたは複数をマシンに実施させるための命令のセットが実行され得る、マシンを示す図である。
【発明を実施するための形態】
【0005】
本開示の実施形態は、メモリデバイスの電圧ビンを較正するための閾値電圧決定を対象とする。メモリサブシステムは、ストレージデバイス、メモリモジュール、またはストレージデバイスおよびメモリモジュールのハイブリッドであり得る。ストレージデバイスおよびメモリモジュールの例は、図1と併せて以下に説明される。一般に、ホストシステムは、データを格納するメモリデバイスなど、1つまたは複数のコンポーネントを含むメモリサブシステムを利用し得る。ホストシステムは、メモリサブシステムに格納されるべきデータを提供し得、メモリサブシステムから取得されるべきデータを要求し得る。
【0006】
メモリサブシステムは、ホストシステムによって提供されるデータを格納するために、異なるタイプの不揮発性メモリデバイスおよび/または揮発性メモリデバイスの任意の組み合わせを含む1つまたは複数のメモリデバイスを利用し得る。いくつかの実施形態において、不揮発性メモリデバイスは、否定論理積(NAND)タイプのフラッシュメモリデバイスによって提供され得る。不揮発性メモリデバイスの他の例は、図1と併せて以下に説明される。不揮発性メモリデバイスは、1つまたは複数のダイのパッケージである。各ダイは、1つまたは複数のプレーンからなり得る。プレーンは、論理単位(LUN)へとグループ化され得る。いくつかのタイプの不揮発性メモリデバイス(例えば、NANDデバイス)では、各プレーンは、物理的なブロックのセットからなる。本明細書における「ブロック」とは、連続または不連続のメモリページのセットを指すものとする。「ブロック」の例は、メモリの最小の消去可能単位である「消去可能ブロック」である一方、「ページ」は、メモリの最小の書き込み可能単位である。各ページは、メモリセルのセットを含む。メモリセルは、情報を格納する電子回路である。
【0007】
データ操作は、メモリサブシステムによって実施され得る。データ操作は、ホストによって開始される操作であり得る。例えば、ホストシステムは、メモリサブシステムに対してデータ操作(例えば、書き込み、読み出し、消去など)を開始することができる。ホストシステムは、メモリサブシステムにおいてメモリデバイス上にデータを格納するため、およびメモリサブシステム上のメモリデバイスからデータを読み出すためなど、アクセス要求(例えば、書き込みコマンド、読み出しコマンド)をメモリサブシステムに送信することができる。ホスト要求によって指定されるような読み出されるべきデータまたは書き込まれるべきデータは、以後、「ホストデータ」と称される。ホスト要求は、ホストデータのための論理アドレス情報(例えば、論理ブロックアドレス(LBA)、名前空間)を含み得、これは、ホストシステムがホストデータと関連付ける場所である。論理アドレス情報(例えば、LBA、名前空間)は、ホストデータについてのメタデータの一部であり得る。メタデータはまた、エラー処理データ(例えば、エラー訂正符号(ECC)パリティ符号)、データバージョン(例えば、書き込まれたデータの時期を区別するために使用される)、有効ビットマップ(そのLBAまたは論理転送装置が有効データを含む)などを含み得る。
【0008】
メモリデバイスは、複数のメモリセルを含み、これらの各々が、メモリセルタイプに応じて、1つまたは複数のビットの情報を格納することができる。メモリセルは、メモリセルにある電圧を印加することによってプログラムされ(書き込まれ)得、これにより、電荷がメモリセルによって保持されることになり、したがって、メモリセルによって生成される電圧分布の調節を可能にする。さらには、メモリセルによって格納される電荷の量を正確に制御することは、異なる論理レベルに対応する複数の閾値電圧レベルの確立を可能にし、したがって、単一のメモリセルが複数ビットの情報を格納することを効果的に可能にする:2個の異なる弁別閾値電圧レベルで動作されるメモリセルは、nビットの情報を格納することができる。したがって、読み出し動作は、単一レベルセルのための2つの論理レベル間および多レベルセルのための複数の論理レベル間を区別するために、メモリセルによって呈される測定された電圧を1つまたは複数の参照読み出し電圧レベルと比較することによって実施され得る。
【0009】
遅い電荷損失として知られる現象に起因して、メモリセルの閾値電圧は、セルの電荷が低下しているとやがて変化し、これは、「時間的な電圧シフト」と称される(低下している電荷が、電圧分布をより低い電圧レベルの方へ電圧軸に沿ってシフトさせるため)。閾値電圧は、最初(メモリセルがプログラムされた直後)は急速に変化し、次いで、セルプログラミング事象から経過した時間に対してほぼ線形対数的に減速する。したがって、遅い電荷損失によって引き起こされる時間的な電圧シフトを軽減することができないということは、読み出し動作における増大されたビット誤り率をもたらし得る。
【0010】
しかしながら、様々な一般的な実装形態は、時間的な電圧シフトに適切に対処することができないか、または、高いビット誤り率をもたらす、および/もしくは他の欠点を呈する、不効率な戦略を採用するかのいずれかである。本開示の実施形態は、読み出し閾値電圧ビン(本明細書内では以後、電圧ビン)のセットを採用するメモリサブシステムを実装し、各ブロックのプログラム後の時間および/またはブロックの効率的な読み出し動作をもたらす閾値電圧オフセットに基づいて、メモリサブシステム電圧のメモリデバイスに格納される各ブロックに電圧ビンのうちの1つを割り当てることによって、上記および他の欠陥に対処する。効率的な読み出し動作は、低エラー回復での読み出し動作を指し、したがって低レイテンシをもたらす。例として、所与の読み出し動作が、高い誤り率に起因して失敗したとき、後続の読み出し動作は、エラーを訂正するためにエラー処理/エラー回復ステップを経る場合がある。このエラー回復プロセスは、時間がかかり、したがって、ホストへデータを戻すレイテンシを増大させる。したがって、効率的な読み出し動作は、低い誤り率に対応し、これは、SCLを考慮することにより適切な読み出し閾値電圧を使用することによって達成され得る。電圧ビンは、各読み出しレベル閾値電圧が谷に対応するように、所与のブロックにおいて読み出し動作を実施するために使用され得る読み出しレベル閾値電圧のセットを表し、各谷は、読み出されるべきブロックの2つの隣接するデータ状態の間の距離である。例えば、3ビットを格納するTLCブロックでは、8つのデータ状態(例えば、本明細書では読み出しレベルとして参照され得るレベル)および7つの谷が存在し得る。したがって、TLCブロックの各電圧ビンは、各谷に1つずつ7つのオフセットを有する。いくつかの実装形態において、読み出しは、ページと関連付けられ得、各ページタイプが特定の谷に対応する。ページ読み出しでは、適切なオフセットが、そのページを含むブロックに割り当てられるビンから読み出される。各ページタイプの1つまたは複数の谷は、グレーコードなど、データ状態(レベル)をビットにマッピングするために使用されるコードによって決定される。グレーコードは、2つの連続した谷が1ビット(例えば、二進数字)のみ異なる二進数システムを指す。TLCブロックでは、ブロックのいくつかの部分は、メモリセルあたり2ビットを格納する多レベルセル(MLC)(結果として4つのデータ状態をもたらす)、またはメモリセルあたり1ビットを格納する単一レベルセル(SLC)であってもよい。MLCおよびSLC部分について、それぞれ3つおよび1つのオフセットが存在し得る。ブロックのダイとのおよび電圧ビンとの関連性は、メモリサブシステムコントローラによって管理されるそれぞれのメタデータテーブルに格納され得る。
【0011】
上に説明されるように、電圧ビンへのメモリデバイスのブロックの割り当ては、メモリデバイスのブロックの読み出し動作の効率性に対する、遅い電荷損失によって引き起こされる時間的な電圧シフトの影響を低減し得る。しかしながら、遅い電荷損失は、経時的に、単一電圧ビン内のブロックのための読み出し動作の効率性にも影響を及ぼし得る。したがって、効率的な読み出し動作を維持し、ビット誤り率を最小限にするため、電圧ビン較正プロセスが、各電圧ビンと関連付けられた閾値電圧オフセットを調整するために実施され得る。較正は、各電圧オフセットビンについて、電圧ビンと関連付けられたブロックを、例えば、特定の時間間隔で、スキャンすること、読み出し動作に基づいて、更新された閾値電圧オフセットを決定すること、および読み出し動作の結果に基づいてビンの閾値電圧オフセットを更新することを伴い得る。しかしながら、メモリデバイスの各ブロックをスキャンすることは、メモリデバイスに著しい性能低下をもたらし得、メモリデバイスのかなりのバンド幅を消費し得る。したがって、本開示の実施形態は、所与の電圧ビンと先行する電圧ビンとの間の境界に接近するブロックの較正を効率的かつ事前対応的に実施するための技術を提供することにより、このような制限に対処し、したがって、メモリデバイスの全ブロックをスキャンする性能およびバンド幅問題を最小限にする。
【0012】
本開示の実施形態によると、所与の電圧ビンについて、所与の電圧ビンと後続の電圧ビンとの間の遷移境界に接近している(例えば、遷移境界から既定の距離以内の)ブロックのサブセットが識別され得る。1つの実施形態において、メモリデバイスの電圧ビンの各々は、対応する範囲のプログラム後の時間(TAP)を、電圧ビンのTAPの範囲内のTAP値を有するプログラムされたブロックが電圧ビンに割り当てられ得るように、有し得る。電圧ビンと後続の電圧ビンとの間の遷移境界は、電圧ビンのTAPの範囲の一端におけるあるTAP値に対応する。電圧ビンに割り当てられるブロックが、この電圧ビンと後続の電圧ビンとの間の遷移境界に対応する特定のTAP値よりも大きいTAP値に達するとき、ブロックは、後続の電圧ビンに再割り当てされることになる。特定の実施形態において、SCLは、温度にも依存し得る。この場合、TAPは、ブロックが経験した温度により調整されたプログラム後の時間であり得る。例として、30℃でのSCLは、90℃でのSCLよりも小さい。したがって、90℃での30分のTAPは、30℃での30分後の別のSCLよりも高いSCLをもたらす。この場合、調整されたTAPは、温度、すなわち、30℃などの基準温度に対する正規化時間を考慮して計算され得る。例として、90℃での30分は、例えば、およそ2時間の正規化時間に対応し得る。
【0013】
したがって、遷移境界に接近するブロックのサブセットが識別されるとき、ブロックのサブセットの読み出し動作に効率的である閾値電圧オフセットが決定され、次いで、後続の電圧ビンのための初期閾値電圧オフセットとして使用され得る。1つの実施形態において、ブロックのサブセットの効率的な閾値電圧オフセットは、ブロックのセブセットに格納されたデータの読み出し動作を実施し、読み出し動作の最小ビット誤り率をもたらす閾値電圧オフセットを決定することによって、決定され得る。遷移境界に接近するブロックのサブセットは、同じ電圧ビンに割り当てられる他のブロックよりも早く後続の電圧ビンに割り当てられるため、決定された閾値電圧オフセットは、後続の電圧ビンの閾値電圧オフセットの初期値として割り当てられる。
【0014】
実施形態において、電圧ビンと関連付けられた読み出しレベルのセットの各読み出しレベルについて遷移境界に接近するブロックのサブセットが決定され得、ブロックのサブセットの閾値電圧オフセットは、電圧ビンの対応する読み出しレベルの初期閾値電圧オフセットとして割り当てられ得る。初期閾値電圧オフセットを割り当てるプロセスは、後続の電圧ビンの読み出しレベルのセットの各読み出しレベルに対して繰り返され得る。
【0015】
特定の実施形態において、閾値電圧オフセットは、ホストデータを格納するブロックを後続のビンに割り当てる前に、後続の電圧ビンに割り当てられ得る。この場合、閾値電圧オフセットが決定されて、後続の電圧ビンに割り当てられるとき、ホストデータを格納するブロックは、後続の電圧ビンに割り当てられ得る。実施形態において、ブロックは、ブロックの閾値電圧オフセット、例えば、ブロックのデータの効率的な読み出し動作をもたらす閾値電圧オフセットを、後続の電圧ビンの閾値電圧オフセットと一致させることに基づいて、後続の電圧ビンに割り当てられ得る。1つの実施形態において、後続の電圧ビンに割り当てられたブロックの読み出し動作は、後続の電圧ビンの閾値電圧オフセットを使用して実施され得る。
【0016】
いくつかの実施形態において、ブロックが経時的に所与の電圧ビンに割り当てられるとき、電圧ビンの閾値電圧オフセットの値は、割り当てられたブロックのデータの効率的な読み出し動作を可能にするように調整され続けることができる。閾値電圧オフセットの調整により、調整された閾値電圧オフセットを所与の電圧ビンと後続の電圧ビンとの間の遷移境界の方へシフトさせ、したがって、閾値電圧オフセットを電圧ビンと前の電圧ビンとの間の境界に対応するその初期値からずらすことになり得る。閾値電圧オフセットにおけるこのようなシフトは、電圧ビンに新たに割り当てられるブロックの非効率的な読み出し動作をもたらし得るが、これは、閾値電圧オフセットが大きくシフトされている場合があり、したがって、新たに割り当てられたブロックのための効率的な閾値電圧オフセットにもはや一致しない場合があるためである。電圧ビンの閾値電圧オフセットにおける著しいシフトを軽減するために、電圧ビン較正中の閾値電圧オフセットの調整は、調整された閾値電圧オフセットが既定の電圧閾値を超えることがないように、制限され得る。この場合、調整された閾値電圧オフセットが電圧ビンの既定の電圧閾値を超えると、電圧ビンの調整された閾値電圧オフセットの値は、電圧ビンの既定の電圧閾値へとリセットされ得る。
【0017】
したがって、本開示のいくつかの実施形態に従って実装されるシステムおよび方法の利点は、限定されるものではないが、メモリサブシステムにおける性能およびバンド幅オーバーヘッドを最小限にしながら、電圧ビンの閾値電圧オフセットがブロックの限られたセットをスキャンすることに基づいて調整され得るように、電圧ビン較正プロセスの性能を最適化することを含む。メモリサブシステムは、電圧ビンへの遷移に近いブロックのセットをスキャンすることに基づいて電圧ビンの初期閾値電圧オフセットを決定することができるため、初期閾値電圧オフセットは、電圧ビンに割り当てられたブロックの読み出し動作を実施するのに効率的であると見なされ得る。加えて、遷移境界に接近するブロックのセットのみがスキャンされるため、電圧ビン較正中のスキャンプロセスの性能低下は、著しく低減される。さらに、所与の電圧ビンの閾値電圧オフセットの経時的なシフトをある最大閾値に制限することによって、ビンに新たに割り当てられたブロックの非効率的な読み出し動作を引き起こす、所与の電圧ビンのための閾値電圧オフセットを著しくシフトする可能性は、最小限にされる。
【0018】
図1は、本開示のいくつかの実施形態によるメモリサブシステム110を含む例示的なコンピューティングシステム100を示す。メモリサブシステム110は、1つもしくは複数の揮発性メモリデバイス(例えば、メモリデバイス140)、1つもしくは複数の不揮発性メモリデバイス(例えば、メモリデバイス130)、またはそのようなものの組み合わせなどの媒体を含み得る。
【0019】
メモリサブシステム110は、ストレージデバイス、メモリモジュール、またはストレージデバイスおよびメモリモジュールのハイブリッドであり得る。ストレージデバイスの例としては、ソリッドステートドライブ(SSD)、フラッシュドライブ、ユニバーサルシリアルバス(USB)フラッシュドライブ、埋め込み型マルチメディアコントローラ(eMMC)ドライブ、ユニバーサルフラッシュストレージ(UFS)ドライブ、セキュアデジタル(SD)カード、およびハードディスクドライブ(HDD)が挙げられる。メモリモジュールの例としては、デュアルインラインメモリモジュール(DIMM)、スモールアウトラインDIMM(SO-DIMM)、および様々なタイプの不揮発性デュアルインラインメモリモジュール(NVDIMM)が挙げられる。
【0020】
コンピューティングシステム100は、デスクトップコンピュータ、ラップトップコンピュータ、ネットワークサーバ、モバイルデバイス、輸送手段(例えば、航空機、ドローン、列車、自動車、または他の運輸機関)、モノのインターネット(IoT)が可能なデバイス、埋め込み型コンピュータ(例えば、輸送手段、産業機器、またはネットワーク化された商用デバイスに含まれるもの)、またはメモリおよび処理デバイス(例えば、プロセッサ)を含むそのようなコンピューティングデバイスなどの、コンピューティングデバイスであり得る。
【0021】
コンピューティングシステム100は、1つまたは複数のメモリサブシステム110に結合されるホストシステム120を含み得る。いくつかの実施形態において、ホストシステム120は、異なるタイプのメモリサブシステム110に結合される。図1は、1つのメモリサブシステム110に結合されたホストシステム120の一例を示す。本明細書で使用される場合、「~に結合される」または「~と結合される」は、一般的に、コンポーネント間の接続を指し、これは、有線またはワイヤレスにしろ、電気、光学、磁気などの接続を含め、間接通信接続または直接通信接続(例えば、介在するコンポーネントなし)であり得る。
【0022】
ホストシステム120は、プロセッサチップセット、およびプロセッサチップセットによって実行されるソフトウェアスタックを含み得る。プロセッサチップセットは、1つまたは複数のコア、1つまたは複数のキャッシュ、メモリコントローラ(例えば、NVDIMMコントローラ)、およびストレージプロトコルコントローラ(例えば、PCIeコントローラ、SATAコントローラ)を含み得る。ホストシステム120は、例えば、メモリサブシステム110にデータを書き込み、メモリサブシステム110からデータを読み出すために、メモリサブシステム110を使用する。
【0023】
ホストシステム120は、物理的なホストインターフェースを介してメモリサブシステム110に結合され得る。物理的なホストインターフェースの例としては、限定されるものではないが、シリアルアドバンストテクノロジアタッチメント(SATA)インターフェース、PCIe(Peripheral Component Interconnect Express)インターフェース、ユニバーサルシリアルバス(USB)インターフェース、ファイバチャネル、シリアルアタッチドSCSI(SAS)、ダブルデータレート(DDR)メモリバス、スモールコンピュータシステムインターフェース(SCSI)、デュアルインラインメモリモジュール(DIMM)インターフェース(例えば、ダブルデータレート(DDR)をサポートするDIMMソケットインターフェース)、オープンNANDフラッシュインターフェース(ONFI)、ダブルデータレート(DDR)、低電力ダブルデータレート(LPDDR)などが挙げられる。物理的なホストインターフェースは、ホストシステム120とメモリサブシステム110との間でデータを送信するために使用され得る。ホストシステム120はさらに、メモリサブシステム110がPCIeインターフェースによってホストシステム120と結合されるとき、コンポーネント(例えば、メモリデバイス130)にアクセスするためにNVM Express(NVMe)インターフェースを利用し得る。物理的なホストインターフェースは、メモリサブシステム110とホストシステム120との間で制御信号、アドレス信号、データ信号、および他の信号を渡すためのインターフェースを提供し得る。図1は、例としてメモリサブシステム110を示す。一般に、ホストシステム120は、同じ通信接続、複数の別個の通信接続、および/または通信接続の組み合わせを介して、複数のメモリサブシステムにアクセスし得る。
【0024】
メモリデバイス130、140は、異なるタイプの不揮発性メモリデバイスおよび/または揮発性メモリデバイスの任意の組み合わせを含み得る。揮発性メモリデバイス(例えば、メモリデバイス140)は、限定されるものではないが、ダイナミックランダムアクセスメモリ(DRAM)およびシンクロナスダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)であってもよい。
【0025】
不揮発性メモリデバイス(例えば、メモリデバイス130)のいくつかの例としては、否定論理積(NAND)タイプのフラッシュメモリ、および不揮発性メモリセルのクロスポイントアレイである3次元クロスポイント(「3Dクロスポイント」)メモリデバイスなど書き込みインプレイスメモリが挙げられる。不揮発性メモリのクロスポイントアレイは、積層可能なクロスグリッドデータアクセスアレイと併せて、バルク抵抗の変化に基づいてビット格納を実施し得る。加えて、多くのフラッシュベースのメモリと対照的に、クロスポイント不揮発性メモリは、書き込みインプレイス動作を実施することができ、ここでは、不揮発性メモリセルは、不揮発性メモリセルが先に消去されることなく、プログラムされ得る。NANDタイプのフラッシュメモリとしては、例えば、2次元NAND(2D NAND)、および3次元NAND(3D NAND)が挙げられる。
【0026】
メモリデバイス130の各々は、メモリセルの1つまたは複数のアレイを含み得る。メモリセルの1つのタイプ、例えば、単一レベルセル(SLC)は、セルあたり1ビットを格納することができる。多レベルセル(MLC)、3レベルセル(TLC)、および4レベルセル(QLC)などの他のタイプのメモリセルは、セルあたり複数ビットを格納することができる。いくつかの実施形態において、メモリデバイス130の各々は、SLC、MLC、TLC、QLC、またはそのようなものの任意の組み合わせなどのメモリセルの1つまたは複数のアレイを含み得る。いくつかの実施形態において、特定のメモリデバイスは、メモリセルのSLC部分、およびMLC部分、TLC部分、またはQLC部分を含み得る。メモリデバイス130のメモリセルは、データを格納するために使用されるメモリデバイスの論理単位を指し得るページとしてグループ化され得る。いくつかのタイプのメモリ(例えば、NAND)では、ページは、ブロックを形成するためにグループ化され得る。
【0027】
不揮発性メモリセルの3DクロスポイントアレイおよびNANDタイプのメモリ(例えば、2D NAND、3D NAND)などの不揮発性メモリデバイスが説明されるが、メモリデバイス130は、リードオンリメモリ(ROM)、相変化メモリ(PCM)、自己選択メモリ、他のカルコゲナイドベースのメモリ、強誘電体トランジスタランダムアクセスメモリ(FeTRAM)、強誘電体ランダムアクセスメモリ(FeRAM)、磁気ランダムアクセスメモリ(MRAM)、スピントランスファトルク(STT)-MRAM、導電性ブリッジRAM(CBRAM)、抵抗ランダムアクセスメモリ(RRAM)、酸化物ベースのRRAM(OxRAM)、否定論理和(NOR)フラッシュメモリ、および電気的に消去可能なプログラマブルリードオンリメモリ(EEPROM)など、任意の他のタイプの不揮発性メモリに基づき得る。
【0028】
メモリサブシステムコントローラ115(または簡略のためコントローラ115)は、メモリデバイス130においてデータを読み出すこと、データを書き込むこと、またはデータを消去することなどの動作、および他のそのような動作を実施するために、メモリデバイス130と通信することができる。メモリサブシステムコントローラ115は、1つもしくは複数の集積回路および/もしくは個別部品、バッファメモリ、またはそれらの組み合わせなどのハードウェアを含み得る。ハードウェアは、本明細書に説明される動作を実施するために専用(例えば、ハードコードされた)論理を有するデジタル回路を含み得る。メモリサブシステムコントローラ115は、マイクロコントローラ、特殊目的論理回路(例えば、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)など)、または他の好適なプロセッサであり得る。
【0029】
メモリサブシステムコントローラ115は、ローカルメモリ119に格納された命令を実行するように構成されるプロセッサ117(例えば、処理デバイス)を含み得る。示された例において、メモリサブシステムコントローラ115のローカルメモリ119は、メモリサブシステム110とホストシステム120との間の通信を処理することを含む、メモリサブシステム110の動作を制御する様々なプロセス、動作、論理フロー、およびルーチンを実施するための命令を格納するように構成される埋め込み型メモリを含む。
【0030】
いくつかの実施形態において、ローカルメモリ119は、メモリポインタ、取り出したデータなどを格納するメモリレジスタを含み得る。ローカルメモリ119は、マイクロコードを格納するためのリードオンリメモリ(ROM)も含み得る。図1の例示的なメモリサブシステム110は、コントローラ115を含んで示されているが、本開示の別の実施形態において、メモリサブシステム110は、コントローラ115を含まず、代わりに、外部制御(例えば、外部ホストによって、またはメモリサブシステムとは別個のプロセッサもしくはコントローラによって提供される)に依拠し得る。
【0031】
一般に、メモリサブシステムコントローラ115は、ホストシステム120からコマンドまたは動作を受信することができ、メモリデバイス130への所望のアクセスを達成するために、そのコマンドまたは動作を命令または適切なコマンドへと変換することができる。メモリサブシステムコントローラ115は、ウェアレベリング動作、ガベージコレクション動作、エラー検出および誤り訂正符号(ECC)動作、暗号化動作、キャッシング動作、ならびに、論理アドレス(例えば、論理ブロックアドレス(LBA)、名前空間)とメモリデバイス130と関連付けられる物理アドレス(例えば、物理ブロックアドレス)との間のアドレス変換など、他の動作を担当し得る。メモリサブシステムコントローラ115は、ホストインターフェース回路をさらに含み、この物理的なホストインターフェースを介してホストシステム120と通信し得る。ホストインターフェース回路は、ホストシステムから受信したコマンドを、メモリデバイス130にアクセスするためのコマンド命令へと変換し、ならびにメモリデバイス130と関連付けられた応答を、ホストシステム120のための情報へと変換し得る。
【0032】
いくつかの実装形態において、メモリサブシステム110は、ストライピングスキームを使用することができ、これに従って、全データペイロード(例えば、ユーザデータ)は、ペイロードがダイのサブセット全体に分布するように、メモリデバイス130(例えば、NANDタイプのフラッシュメモリデバイス)の複数のダイを利用する一方で、残りの1つまたは複数のダイは、誤り訂正情報(例えば、パリティビット)を格納するために使用される。したがって、ストライピングスキームを使用してメモリデバイスのダイのセットにわたって分布するブロックのセットは、本明細書では「スーパーブロック」と称される。
【0033】
メモリサブシステム110は、示されない追加の回路またはコンポーネントも含み得る。いくつかの実施形態において、メモリサブシステム110は、キャッシュまたはバッファ(例えば、DRAM)、およびコントローラ115からアドレスを受信し、メモリデバイス130にアクセスするためにそのアドレスを復号することができるアドレス回路(例えば、行デコーダおよび列デコーダ)を含み得る。
【0034】
いくつかの実施形態において、メモリデバイス130は、メモリデバイス130の1つまたは複数のメモリセルに対して動作を実行するためにメモリサブシステムコントローラ115と併せて動作するローカルメディアコントローラ135を含む。外部コントローラ(例えば、メモリサブシステムコントローラ115)は、メモリデバイス130を外部から管理する(例えば、メモリデバイス130に対して媒体管理動作を実施する)ことができる。いくつかの実施形態において、メモリデバイス130は、被管理メモリデバイスであり、これは、同じメモリデバイスパッケージ内の媒体管理のためのローカルコントローラ(例えば、ローカルコントローラ135)と組み合わされた生の(raw)メモリデバイスである。被管理メモリデバイスの例は、被管理NAND(MNAND)デバイスである。
【0035】
メモリサブシステム110は、電圧ビン較正コンポーネント113を含み、これは、本開示の実施形態による、電圧ビンの閾値電圧オフセットを調整することによってメモリデバイス130~140の電圧ビンを較正するための技術を実装するために使用され得る。1つの実装形態において、電圧ビンを較正することは、ブロックのプログラム後の時間(TAP)、ブロックを格納するメモリデバイス130~140の温度、および/または他のパラメータを含む、電圧ビンに割り当てられたブロックと関連付けられたパラメータに基づいて、電圧ビンに割り当てられた1つまたは複数の閾値電圧オフセットを更新するプロセスを指し得る。例として、電圧ビンは、最初に、ある読み出しレベルのためのある閾値電圧オフセットを有するように較正され得、この特定の閾値電圧オフセットは、この特定の読み出しレベルに対応するブロックの読み出し動作を実施するために使用され得る。ある時間期間の後、および、例えば、遅い電荷損失に起因して、電圧ビンに割り当てられたブロックは、効率的な読み出し動作のために異なる閾値電圧オフセットを必要とし得、したがって、電圧ビンは、電圧ビンのブロックの効率的な読み出し動作を提供するために電圧ビンの1つまたは複数の閾値電圧オフセットを調整することによって較正され得る。加えて、電圧ビン較正は、メモリデバイス130~140のダイごとの変動に基づいて電圧ビンの閾値電圧オフセットを調整するために実施され得る。例として、所与のダイのブロックのための効率的な読み出しレベル電圧閾値は、ダイの場所、ダイの物理的特性などに起因して、同じメモリデバイスの別のダイの効率的な読み出しレベル電圧オフセットとは異なり得る。したがって、電圧ビン較正は、特定のダイの効率的な閾値電圧オフセットに達するために、その特定のダイに対応する読み出しレベルの初期閾値電圧オフセットを調整することができる。
【0036】
電圧ビン較正は、メモリデバイス130~140の事前特徴付けプロセスの間、例えば、ホストデータを格納するブロックを電圧ビンに割り当てる前、および/または、例えば、ホストデータを格納しながらの使用の分野における、メモリデバイス130~140の通常使用の間、実施され得る。メモリデバイスの事前特徴付けプロセスの間に使用されるとき、電圧ビン較正は、初期閾値電圧オフセットをメモリデバイスの電圧ビンに割り当てるプロセスを指し得る。実装形態において、電圧ビン較正コンポーネント113は、メモリデバイス130~140の電圧ビンのうちの所与の電圧ビンに割り当てられたブロックのセットを識別し、識別されたブロックから、電圧ビンと後続の電圧ビンとの間の遷移境界に接近しているブロックのサブセットを決定することができる。例として、電圧ビン較正コンポーネント113は、遷移境界におけるTAPから既定の距離内にTAPを有するブロックのセットを識別することができる。1つの実装形態において、メモリデバイス130~140の電圧ビンの各々は、対応する範囲のプログラム後の時間(TAP)を有し、電圧ビンと後続の電圧ビンとの間の遷移境界は、あるTAP値に対応する。この場合、所与の電圧ビンに割り当てられたブロックが、所与の電圧ビンと後続の電圧ビンとの間の遷移境界に対応する特定のTAP値よりも大きいTAP値に達するとき、ブロックは、後続の電圧ビンに割り当てられる。
【0037】
遷移境界に接近するブロックのサブセットが決定されるとき、電圧ビン較正コンポーネント113は、遷移境界に接近するブロックのサブセットが電圧ビンに割り当てられる他のブロックよりも早くに後続の電圧ビンに割り当てられるため、ブロックのサブセットの読み出し動作に効率的である閾値電圧オフセットが、後続の電圧ビンのための初期閾値電圧オフセットとして使用され得るということを決定することができる。1つの実装形態において、ブロックのサブセットの効率的な閾値電圧オフセットは、ブロックのセブセットに格納されたデータの読み出し動作を実施し、読み出し動作の最小ビット誤り率をもたらす閾値電圧オフセットを決定することによって、決定され得る。電圧ビン較正コンポーネント113は、次いで、効率的な閾値電圧オフセットを、後続の電圧ビンの閾値電圧オフセットの初期値として割り当てることができる。実装形態において、電圧ビン較正コンポーネント113は、電圧ビンと関連付けられた読み出しレベルのセットの各読み出しレベルについて遷移境界に接近するブロックのサブセットを決定し、ブロックのサブセットの閾値電圧オフセットを、電圧ビンの対応する読み出しレベルの初期閾値電圧オフセットとして割り当てることができる。電圧ビン較正コンポーネント113は、次いで、後続の電圧ビンの読み出しレベルのセットの各読み出しレベルのための初期閾値電圧オフセットを割り当てるプロセスを繰り返すことができる。
【0038】
特定の実装形態において、閾値電圧オフセットが後続の電圧ビンに割り当てられているとき、電圧ビン較正コンポーネント113は、ホストデータを格納するブロックを後続の電圧ビンに割り当てることができる。実装形態において、電圧ビン較正コンポーネント113は、ブロックの閾値電圧オフセットを一致させることに基づいて、ブロックを後続の電圧ビンに割り当てることができる。例として、ブロックのデータの効率的な読み出し動作をもたらす閾値電圧オフセットが決定され得、次いで、ブロックは、ブロックの決定された閾値電圧オフセットが後続の電圧ビンの閾値電圧オフセットに一致する場合、後続の電圧ビンに割り当てられ得る。1つの実装形態において、電圧ビン較正コンポーネント113は、電圧ビンの閾値電圧オフセットを使用して、後続の電圧ビンに割り当てられたブロックの読み出し動作を実施することもできる。例として、ある読み出しレベル(例えば、L7)からブロックの読み出し動作を実施するため、電圧ビン較正コンポーネント113は、後続の電圧ビンの読み出しレベルのセットの中から、対応する読み出しレベル(例えば、L7)の閾値電圧オフセットを使用することができる。
【0039】
いくつかの実装形態において、ブロックが経時的に所与の電圧ビンに割り当てられるとき、電圧ビンの所与の閾値電圧オフセットの値は、割り当てられたブロックのデータの効率的な読み出し動作を可能にするように調整され続けることができる。所与の閾値電圧オフセットの調整は、調整された閾値電圧オフセットの、電圧ビンと後続の電圧ビンとの間の遷移境界の方へのシフトをもたらし、したがって、閾値電圧オフセットを電圧ビンと前の電圧ビンとの間の境界に対応するその初期値からずらすことになり得る。閾値電圧オフセットにおけるこのようなシフトは、電圧ビンに新たに割り当てられるブロックの非効率的な読み出し動作をもたらし得るが、これは、シフトされた閾値電圧オフセットが大きくシフトされている場合があり、したがって、新たに割り当てられたブロックの効率的な閾値電圧オフセットにもはや一致しない場合があるためである。電圧ビンの閾値電圧オフセットにおける著しいシフトを軽減するために、電圧ビン較正コンポーネント113は、調整された閾値電圧オフセットが既定の電圧閾値を超えることがないように、電圧ビン較正の間、閾値電圧オフセットの調整を制限し得る。この場合、電圧ビン較正に基づいた調整された閾値電圧オフセットが、電圧ビンの既定の電圧閾値を超えると、電圧ビン較正コンポーネント113は、電圧ビンの調整された閾値電圧オフセットの値を、電圧ビンの既定の電圧閾値に設定することができる。
【0040】
図2は、本開示の実施形態による、ブロックおよび/またはパーティションを電圧ビンと関連付けるためのメモリサブシステムコントローラによって管理される例示的なメタデータを概略的に示す。図2によって概略的に示されるように、メモリサブシステムコントローラは、スーパーブロックテーブル210、ブロックテーブル220、およびオフセットテーブル230を管理することができる。スーパーブロックテーブル210の各記録は、指定したスーパーブロックおよびパーティション組み合わせと関連付けられたブロックを指定する。いくつかの実装形態において、スーパーブロックテーブル記録は、指定したスーパーブロックおよびパーティション組み合わせと関連付けられた時間および温度値をさらに含み得る。
【0041】
ブロックテーブル220は、ブロックテーブル220の各記録が、記録のインデックスによって参照されるブロックについて、ブロックのそれぞれのダイと関連付けられた電圧ビンのセットを指定するように、ブロック番号によりインデックスされる。言い換えると、ブロックテーブル220の各記録は、ベクトルを含み、ベクトルの各要素が、ベクトル要素のインデックスにより参照されるダイと関連付けられた電圧ビンを指定する。
【0042】
最後に、オフセットテーブル230は、ビン番号によってインデックスされる。オフセットテーブル230の各記録は、電圧ビンと関連付けられた閾値電圧オフセットのセット(例えば、TLC、MLC、および/またはSLCのための)を指定する。メタデータテーブル210~230は、図1の1つまたは複数のメモリデバイス130に格納され得る。いくつかの実装形態において、メタデータテーブルの少なくとも一部は、図1のメモリサブシステムコントローラ115のローカルメモリ119においてキャッシュされ得る。
【0043】
動作中、読み出しコマンドを受信すると、メモリサブシステムコントローラは、読み出しコマンドによって指定された論理ブロックアドレス(LBA)に対応する物理アドレスを決定する。物理ブロック番号およびダイ識別子などの物理アドレスの構成要素は、メタデータテーブルウォークを実施するために利用され、まず、スーパーブロックテーブル210が、物理ブロック番号に対応するブロックファミリ識別子を識別するために使用され、次いで、ブロック識別子が、ブロックおよびダイと関連付けられた電圧ビンを決定するために、ブロックテーブル220へのインデックスとして使用され、最後に、識別された電圧ビンが、ビンに対応する閾値電圧オフセットを決定するために、オフセットテーブル230へのインデックスとして使用される。メモリサブシステムコントローラは、次いで、要求された読み出し動作を実施するために、識別された閾値電圧オフセットをベース電圧読み出しレベルに追加的に適用することができる。
【0044】
図2の例示的な例において、スーパーブロックテーブル210は、スーパーブロック0のパーティション0をブロック4にマッピングし、これは、ダイ0が電圧ビン3にマッピングされることを決定するために、ブロックテーブル220へのインデックスとして利用される。後者の値は、電圧ビン3のための閾値電圧オフセット値を決定するためにオフセットテーブルへのインデックスとして使用される。
【0045】
図3は、本開示の1つまたは複数の態様による、電圧ビン間の遷移境界に接近するブロックの閾値電圧オフセットに基づいてメモリデバイスの電圧ビンを較正する例示的な方法を示す。方法300は、ハードウェア(例えば、回路、専用論理、プログラマブル論理、マイクロコードなど)、ソフトウェア(例えば、ハードウェアシミュレーションを実施するためにプロセッサ上で実行する命令)、またはそれらの組み合わせを含む処理論理によって実施され得る。いくつかの実施形態において、方法300は、図1の電圧ビン較正コンポーネント113によって実施される。1つの実装形態において、グラフ310は、選択された読み出しレベルについて、本開示の実施形態による電圧ビンのセット(ビン0~ビン3)を概略的に示す。閾値電圧オフセット曲線315は、選択された読み出しレベルについて、y軸上の、閾値電圧オフセットの、x軸上の、ブロックがプログラムされてから経過した時間期間であるプログラム後の時間(特定の温度に対して正規化された時間であり得る)に対する依存を示す。1つの実装形態において、指定の時間窓内でプログラムされているメモリデバイスのブロックが、ブロックのプログラム後の時間に対応する電圧ビンに割り当てられる。本明細書内で上に記載されるように、ウェアレベリングがプログラム/消去サイクルをすべてのブロックにおいて同様に維持することができるとすると、プログラミン後に経過した時間および温度は、時間的な電圧シフトに影響を及ぼす主な因子である。正規化時間を使用することは、温度プロファイルを考慮し、したがって、温度情報がTAPに組み込まれる。したがって、特定の時間窓(すなわち、正規化時間窓)内でプログラムされるすべてのブロックは、メモリセル内で同様の閾値電圧分布を呈すると推定され、したがって、同じ電圧ビンに割り当てられ得、読み出し動作のために同じ電圧オフセットを利用し得る。
【0046】
1つの実装形態において、新たにプログラムされたブロックは、ビン0と関連付けられ得る。次いで、メモリサブシステムコントローラは、全ブロックの各ダイを所定の閾値電圧ビン(図3の例示的な例ではビン0~3)のうちの1つと関連付けるために、フォアグラウンドまたはバックグラウンド較正プロセスを周期的に実施することができ、そしてこの所定の閾値電圧ビンは、読み出し動作のために適用されるべき電圧オフセットと関連付けられる。ブロックの電圧ビンおよびダイとの関連性は、図2に関して本明細書内でより詳細に説明されるように、メモリサブシステムコントローラによって管理されるそれぞれのメタデータテーブルに格納され得る。図3の閾値電圧オフセットは、単一の谷と関連付けられる。閾値電圧オフセット値は、y軸を下ってよりマイナスになり、これは、より高いSCLに対応する。各電圧ビンについて、別個の閾値電圧オフセットが、各谷に割り当てられ得る。
【0047】
図3によって概略的に示されるように、グラフ310は、各電圧ビンが電圧ビンの対応する範囲のTAPに基づいて既定の範囲の閾値電圧オフセットに対応するように、複数の電圧ビン320へと細分され得る。図3の例示的な例は、4つの電圧ビンを規定するが、他の実装形態において、様々な他の数の電圧ビンが、用いられ得る(例えば、10個のビン)。周期的に実施された較正プロセスに基づいて、メモリサブシステムコントローラは、全ブロックの各ダイを電圧ビンと関連付け、このことは、本明細書内で以下により詳細に説明されるように、ブロックのデータの読み出し動作を実施するために、ベース電圧読み出しレベルに適用されるべき閾値電圧オフセットのセットを規定する。
【0048】
図3のグラフ325は、電圧ビン間の遷移境界に接近するブロックの閾値電圧オフセットに基づいて、電圧ビンの閾値電圧オフセットを割り当てることによって電圧ビンを較正するプロセスを示す。実装形態において、方法300を実行する処理論理は、ビン1とビン2との間の遷移境界に対応するプログラム後の時間(TAP)330を決定することができる。実装形態において、TAP330は、ブロックをプログラムしてから経過した時間の特定の値であり得る。他の実装形態において、TAP330は、TAP330範囲内にあるTAP値を有するブロックが電圧ビン1から電圧ビン2へ遷移され得るような、値の範囲であり得る。
【0049】
特定の実装形態において、処理論理は、電圧ビン1と電圧ビン2との間の境界TAP330に接近している電圧ビン1に割り当てられたブロックのセットを決定することができる。例として、処理論理は、TAP330から既定の距離内にあるTAP値を有するブロックのセットを決定することができる。TAP330に対応する遷移境界に接近しているブロックのセットが決定されるとき、処理論理は、電圧ビン2の選択された読み出しレベルのための初期閾値電圧オフセットとして使用されるように、ブロックの決定されたセットの読み出し動作に効率的である閾値電圧オフセットを決定することができる。実装形態において、ブロックのセットの効率的な閾値電圧オフセットのセット(各谷に1つ)は、ブロックのセットに格納されたデータの読み出し動作を実施し、読み出し動作の最小ビット誤り率をもたらす閾値電圧オフセットのセットを決定することによって、決定され得る。ブロックのセットの閾値電圧オフセットのセットが決定されるとき、処理論理は、電圧ビン2の選択された読み出しレベルの閾値電圧オフセットの初期値として設定される決定された閾値電圧オフセットを割り当てることができる。実装形態において、処理論理は、次いで、ブロックを電圧ビン2に割り当てることができ、閾値電圧オフセットの初期値を利用して、選択された読み出しレベルと関連付けられる新たに割り当てられたブロックの読み出し動作を実施することができる。各電圧ビンについて、読み出しオフセットのセットは、例えば、TLCワードラインの場合は7つのオフセットなど、谷あたり1つのオフセットを含む。ページ読み出しは、異なる谷に対応し、そのようなものとして、対応する読み出しオフセットを使用することができる。読み出しのオフセットのセットを決定するために使用される読み出し動作は、すべての谷を網羅するために異なるページを使用することができる。
【0050】
同様に、処理論理は、電圧ビン2と電圧ビン3との間の遷移境界に対応するTAP340を決定することができる。実装形態において、TAP340は、ブロックをプログラムしてから経過した時間の特定の値であり得る。他の実装形態において、TAP340は、TAP340範囲内にあるTAP値を有するブロックが電圧ビン2から電圧ビン3へ遷移され得るような、値の範囲であり得る。特定の実装形態において、処理論理は、電圧ビン2と電圧ビン3との間の境界TAP340に接近している電圧ビン2に割り当てられたブロックのセットを決定することができる。例として、処理論理は、TAP340から既定の距離内にあるTAP値を有するブロックのセットを決定することができる。TAP340に対応する遷移境界に接近しているブロックのセットが決定されるとき、処理論理は、電圧ビン3の選択された読み出しレベルのための初期閾値電圧オフセットの初期セットとして使用されるように、ブロックの決定されたセットの読み出し動作に効率的である閾値電圧オフセットのセットを決定することができる。ブロックのセットの閾値電圧オフセットのセットが決定されるとき、処理論理は、電圧ビン3の選択された読み出しレベルの閾値電圧オフセットの初期値として設定される決定された閾値電圧オフセットを割り当てることができる。実装形態において、処理論理は、次いで、ブロックを電圧ビン3に割り当てることができ、閾値電圧オフセットの初期値を利用して、選択された読み出しレベルと関連付けられる新たに割り当てられたブロックの読み出し動作を実施することができる。
【0051】
図4は、本開示の1つまたは複数の態様による、電圧ビンの閾値電圧オフセットを閾値電圧オフセットの範囲内にあるように調整することによって、メモリデバイスの電圧ビンを較正する例示的な方法400を示す。方法400は、ハードウェア(例えば、回路、専用論理、プログラマブル論理、マイクロコードなど)、ソフトウェア(例えば、ハードウェアシミュレーションを実施するためにプロセッサ上で実行する命令)、またはそれらの組み合わせを含む処理論理によって実施され得る。いくつかの実施形態において、方法400は、図1の電圧ビン較正コンポーネント113によって実施される。1つの実装形態において、グラフ410は、選択された読み出しレベルについて、本開示の実施形態による電圧ビンのセット(ビン0~ビン3)を概略的に示す。1つの実装形態において、指定の時間窓内でプログラムされているメモリデバイスのブロックが、ブロックのプログラム後の時間に対応する電圧ビン0~3に割り当てられる。
【0052】
図4によって概略的に示されるように、グラフ410は、各電圧ビンが、各谷について電圧ビンの対応する範囲のTAPに基づいて既定の範囲の閾値電圧オフセットに対応するように、複数の電圧ビン0~3へと細分され得る。図4の例示的な例は4つの電圧ビンを規定するが、他の実装形態において、様々な他の数の電圧ビンが、用いられ得る(例えば、10個のビン)。特定の実装形態において、初期閾値電圧オフセット値は、各電圧ビン0~3の選択された読み出しレベルに割り当てられ得、メモリデバイスのブロックは、ブロックの効率的な閾値電圧オフセットおよび/またはブロックのTAPに基づいて、電圧ビン、ビン0~3のうちの1つに割り当てられ得る。
【0053】
特定の実装形態において、処理論理は、例えば、メモリデバイスのダイごとの変動を受け入れるために、電圧ビンの閾値電圧オフセットを調整するように電圧ビン較正を実施することができる。その一方で、単一の谷に対応するグラフ410に見られるように、閾値電圧オフセット対TAPの非線形性に起因して、効率的な閾値電圧オフセットも同様に、電圧ビン内のTAPの線形関数ではない。したがって、電圧ビンに現在割り当てられているブロックに基づいて、ビン電圧較正が実施されると、較正プロセスのためのより多くの統計的ブロックサンプルが、電圧ビン内のより大きいTAPから選択される傾向があり、したがって、較正された閾値電圧オフセットを、電圧ビン内のより高いTAPの方へシフトさせる。閾値電圧オフセットをシフトさせることは、電圧ビンに新たに割り当てられるブロックのあまり効率的でない読み出し動作をもたらし得る。較正に起因する電圧ビン0~3の閾値電圧オフセットにおける著しいシフトを軽減するために、処理論理は、調整された閾値電圧オフセットが既定の電圧閾値415を超えることがないように、較正の間、閾値電圧オフセットの調整を制限し得る。この場合、ビン2の較正された閾値電圧オフセットが閾値電圧415を超えると、処理論理は、ビン1の較正された閾値電圧オフセットの値を既定の電圧閾値415に設定することができる。実装形態において、電圧閾値415は、ビン1の閾値電圧オフセットの範囲内のほぼ中間にあり得、したがって、新たに割り当てられたブロックならびにビン1のより古いブロックのために改善された読み出し効率を提供する。
【0054】
図5は、本開示のいくつかの実施形態による、メモリデバイスの電圧ビンを較正するための閾値電圧決定の例示的な方法のフロー図である。方法500は、ハードウェア(例えば、処理デバイス、回路、専用論理、プログラマブル論理、マイクロコード、デバイスのハードウェア、集積回路など)、ソフトウェア(例えば、処理デバイス上で実行される(runまたはexecuted)命令)、またはそれらの組み合わせを含み得る処理論理によって実施され得る。いくつかの実施形態において、方法500は、図1の電圧ビン較正コンポーネント113によって実施される。特定のシーケンスまたは順序で示されるが、別段の記載のない限り、動作の順序は修正され得る。したがって、示された実施形態は、単に例として理解されるべきであり、示された動作は、異なる順序で実施され得る一方で、いくつかの動作が並行して実施され得る。加えて、1つまたは複数の動作は、いくつかの実施形態において、省略され得る。したがって、全実施形態においてすべての示された動作が必要とされるわけではなく、他のプロセスフローが可能である。
【0055】
動作510では、処理論理は、メモリデバイスの電圧ビンのセットのうちの1つの電圧ビンに割り当てられたブロックのセットを識別する。1つの実装形態において、メモリデバイスのブロックは、本明細書内で上により詳細に説明されるように、ブロックのTAPが電圧ビンのTAPに一致するように、ブロックがプログラムされた後に、各ブロックのプログラム後の時間(TAP)に基づいてメモリデバイスの電圧ビンに割り当てられる。
【0056】
動作520では、処理論理は、メモリデバイスの電圧ビンのうちの電圧ビンと後続の電圧ビンとの間の遷移境界におけるTAPから既定の閾値時間点内にあるTAPを有する電圧ビンに割り当てられたブロックのサブセットを識別する。1つの実装形態において、電圧ビンと後続の電圧ビンとの間の遷移境界に接近するブロックは、対応する効率的な閾値電圧オフセットを決定するためにスキャンされ得、これが次いで、本明細書内でより詳細に説明されるように、後続の電圧ビンのための初期閾値電圧オフセットとして使用され得る。
【0057】
動作530では、処理論理は、例えば、ブロックのサブセットの読み出し動作を実施し、ブロックのサブセットに格納されたデータの効率的な読み出しをもたらす閾値電圧オフセットを決定することによって、遷移境界に接近するブロックのサブセット関連付けられた閾値電圧オフセットを決定する。続いて、動作540では、処理論理は、決定された閾値電圧オフセットを後続の電圧ビンと関連付ける。実装形態において、処理論理は、次いで、本明細書内で上により詳細に説明されるように、ブロックを後続の電圧ビンに割り当てることを開始することができ、割り当てられた閾値電圧オフセットを使用して、後続の電圧ビンに割り当てられたブロックに格納されたデータの読み出し動作を実施することができる。特定の実装形態において、動作530および540が、オフセットのグループにおいて行われ得る。例として、特定のページタイプが谷iおよびjに対応する場合、動作530および540は、谷iおよびjのための効率的な閾値電圧オフセット決定する。動作は、後続の電圧ビンについてのすべての谷のための効率的な閾値電圧オフセットを決定するために、他のページタイプに対して繰り返される。
【0058】
図6は、本開示の1つまたは複数の態様による、電圧閾値に基づいて電圧ビンの閾値電圧オフセットを調整することによって、メモリデバイスの電圧ビンを較正する例示的な方法のフロー図である。方法600は、ハードウェア(例えば、処理デバイス、回路、専用論理、プログラマブル論理、マイクロコード、デバイスのハードウェア、集積回路など)、ソフトウェア(例えば、処理デバイス上で実行される(runまたはexecuted)命令)、またはそれらの組み合わせを含み得る処理論理によって実施され得る。いくつかの実施形態において、方法600は、図1の電圧ビン較正コンポーネント113によって実施される。特定のシーケンスまたは順序で示されるが、別段の記載のない限り、動作の順序は修正され得る。したがって、示された実施形態は、単に例として理解されるべきであり、示された動作は、異なる順序で実施され得る一方で、いくつかの動作が並行して実施され得る。加えて、1つまたは複数の動作は、いくつかの実施形態において、省略され得る。したがって、全実施形態においてすべての示された動作が必要とされるわけではなく、他のプロセスフローが可能である。図5に関して説明されるように、図6によって規定される動作は、電圧ビンと関連付けられた谷のための効率的な閾値電圧オフセットを決定するために、異なるページタイプに対して行われ得る。
【0059】
動作610では、処理論理は、メモリデバイスの電圧ビンのうちの1つの電圧ビンに割り当てられたブロックのセットを識別する。1つの実装形態において、メモリデバイスのブロックは、本明細書内で上により詳細に説明されるように、ブロックの閾値電圧オフセットが電圧ビンの閾値電圧オフセットに一致するように、各ブロックの閾値電圧オフセットに基づいてメモリデバイスの電圧ビンに割り当てられる。
【0060】
動作620では、処理論理は、電圧ビンと関連付けられたブロックのセットと関連付けられた閾値電圧オフセットを決定する。1つの実装形態において、処理論理は、電圧ビンのブロックのセットの閾値電圧オフセットの平均である閾値電圧オフセットを決定することができる。
【0061】
動作630では、処理論理は、電圧ビンの閾値電圧オフセットを識別し、ブロックのセットと関連付けられた閾値電圧オフセットに基づいて電圧ビンの閾値電圧オフセットを更新する。1つの実装形態において、電圧ビンの閾値電圧オフセットは、本明細書内により詳細に説明されるように、電圧ビンの読み出しレベル(例えば、読み出しレベル7)に対応し、電圧ビンの閾値電圧オフセットを更新するために使用されるブロックのセットもまた、同じ読み出しレベルと関連付けられる。
【0062】
動作640では、処理論理は、電圧ビンの更新された閾値電圧オフセットが既定の電圧閾値を超えるかどうかを決定する。1つの実装形態において、電圧閾値は、本明細書内により詳細に説明されるように、電圧ビンの較正された閾値電圧オフセットが電圧ビンの閾値電圧オフセットの範囲の中間閾値を超えないように、電圧ビンの閾値電圧オフセットの範囲内のおよそ中間であり得る。
【0063】
動作650では、更新された閾値電圧オフセットが既定の電圧閾値を超えるという決定に応答して、処理論理は、既定の電圧閾値の値を電圧ビンの閾値電圧オフセットに割り当てることによって電圧ビンの閾値電圧オフセットをさらに更新する。
【0064】
図7は、コンピュータシステムの例示的なマシン700を示し、このコンピュータシステム内で、本明細書内で論じられた方法論のうちの任意の1つまたは複数をマシンに実施させるための命令のセットが実行され得る。いくつかの実施形態において、コンピュータシステム700は、メモリサブシステム(例えば、図1のメモリサブシステム110)を含むか、これに結合されるか、もしくはこれを利用するか、またはコントローラの動作を実施するために(例えば、図1の電圧ビン較正コンポーネント113に対応する動作を実施するためにオペレーティングシステムを実行するために)使用され得る、ホストシステム(例えば、図1のホストシステム120)に対応する。代替の実施形態において、マシンは、LAN、イントラネット、エクストラネット、および/またはインターネット内の他のマシンに接続(例えば、ネットワーク化)され得る。マシンは、ピアツーピア(または分散)ネットワーク環境内のピアマシンとして、またはクラウドコンピューティングインフラストラクチャもしくは環境内のサーバもしくはクライアントマシンとして、クライアント-サーバネットワーク環境内のサーバまたはクライアントマシンの能力内で動作することができる。
【0065】
マシンは、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、ウェブ電化製品、サーバ、ネットワークルータ、スイッチもしくはブリッジ、またはそのマシンによって取られるべき行動を指定する命令のセットを実行することができる(順次またはその他の方法で)任意のマシンであってもよい。さらに、単一のマシンが示されるが、用語「マシン」はまた、本明細書で論じられる方法論のうちの任意の1つまたは複数を実施するために命令のセット(または複数のセット)を個々に、またはまとめて実行するマシンの任意の集合を含むと見なされるものとする。
【0066】
例示的なコンピュータシステム700は、バス730を介して互いと通信する、処理デバイス702、メインメモリ704(例えば、リードオンリメモリ(ROM)、フラッシュメモリ、シンクロナスDRAM(SDRAM)またはRambus DRAM(RDRAM)などのダイナミックランダムアクセスメモリ(DRAM)など)、スタティックメモリ706(例えば、フラッシュメモリ、スタティックランダムアクセスメモリ(SRAM)など)、およびデータストレージシステム718を含む。
【0067】
処理デバイス702は、マイクロプロセッサ、中央処理装置、または同様のものなどの1つまたは複数の汎用処理デバイスを表す。より詳細には、処理デバイスは、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、または他の命令セットを実装するプロセッサ、または命令セットの組み合わせを実装するプロセッサであり得る。処理デバイス702はまた、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ、または同様のものなど、1つまたは複数の特別目的処理デバイスであり得る。処理デバイス702は、本明細書内で論じられる動作およびステップを実施するための命令726を実行するように構成される。コンピュータシステム700は、ネットワーク720を通じて通信するためにネットワークインターフェースデバイス708をさらに含み得る。
【0068】
データストレージシステム718は、命令726の1つもしくは複数のセット、または本明細書内に説明される方法論もしくは機能のうちの任意の1つまたは複数を具現化するソフトウェアが格納されるマシン可読記憶媒体724(コンピュータ可読媒体としても知られる)を含み得る。命令726はまた、コンピュータシステム700によるその実行中、メインメモリ704内に、および/または処理デバイス702内に、完全に、または少なくとも部分的に存在し得、メインメモリ704および処理デバイス702もまた、マシン可読記憶媒体を構成する。マシン可読記憶媒体724、データストレージシステム718、および/またはメインメモリ704は、図1のメモリサブシステム110に対応し得る。
【0069】
1つの実施形態において、命令726は、図1の電圧ビン較正コンポーネント113に対応する機能性を実装するための命令を含む。マシン可読記憶媒体724は、単一の媒体であると例示的な実施形態においては示されるが、用語「マシン可読記憶媒体」は、命令の1つまたは複数のセットを格納する単一の媒体または複数の媒体を含むと見なされるものとする。用語「マシン可読記憶媒体」はまた、マシンによる実行のための命令のセットを格納または符号化することができる、および本開示の方法論のうちの任意の1つまたは複数をマシンに実施させる、任意の媒体を含むと見なされるものとする。用語「マシン可読記憶媒体」は、したがって、限定されるものではないが、ソリッドステートメモリ、光学媒体、および磁気媒体を含むと見なされるものとする。
【0070】
先行する詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビットに対する動作のアルゴリズムおよび象徴的表現に関して提示されている。これらのアルゴリズムの説明および表現は、それらの作用の要旨を当業者に最も効果的に伝えるためにデータ処理技術において当業者により使用される方法である。アルゴリズムは、ここでは、および一般的には、所望の結果をもたらす動作の自己無撞着シーケンスであると考えられる。動作は、物理量の物理的処理を必要とするものである。通常、必須ではないが、これらの量は、格納される、組み合わされる、比較される、および別途処理されることができる電気または磁気信号の形態をとる。原則的には共通使用の理由から、これらの信号をビット、値、要素、符号、文字、項、数字、または同様のものと呼ぶことが時には簡便であることが証明されている。
【0071】
しかしながら、これらのすべておよび同様の用語は、適切な物理量と関連付けられるべきであり、これらの量に適用される簡便なラベルにすぎないということに留意しておくべきである。本開示は、コンピュータシステムのレジスタおよびメモリ内の物理(電子)量として表されるデータを、操作して、コンピュータシステムメモリもしくはレジスタまたは他のそのような情報ストレージシステム内の物理量として同様に表される他のデータへと変換する、コンピュータシステム、または同様の電子コンピューティングデバイスの行為およびプロセスを指し得る。
【0072】
本開示はまた、本明細書内の動作を実施するための装置に関する。この装置は、意図した目的のために特別に構築され得るか、またはそれは、コンピュータに格納されるコンピュータプログラムによって選択的に起動または再構成される汎用コンピュータを含み得る。そのようなコンピュータプログラムは、限定されるものではないが、フロッピディスク、光学ディスク、CD-ROM、および光磁気ディスクを含む任意のタイプのディスク、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気もしくは光学カード、または電子命令を格納するのに好適な任意のタイプの媒体などのコンピュータ可読記憶媒体に格納され得、これらの各々がコンピュータシステムバスに結合される。
【0073】
本明細書内に提示されるアルゴリズムおよびディスプレイは、任意の特定のコンピュータまたは他の装置に本質的に関連するものではない。様々な汎用システムが、本明細書内の教示に従ってプログラムと共に使用され得るか、またはそれは、本方法を実施するためにより専門化された装置を構築するのに簡便であることを証明し得る。様々なこれらのシステムの構造は、以下の説明に明記されるように見える。加えて、本開示は、任意の特定のプログラミング言語に関連して説明されるものではない。様々なプログラミング言語が本明細書内に説明されるような本開示の教示を実装するために使用され得るということを理解されたい。
【0074】
本開示は、本開示に従ってプロセスを実施するようにコンピュータシステム(または他の電子デバイス)をプログラムするために使用され得る、命令が格納されているマシン可読媒体を含み得るコンピュータプログラム製品、またはソフトウェアとして提供され得る。マシン可読媒体は、マシン(例えば、コンピュータ)によって読むことが可能な形態で情報を格納するための任意の機構を含む。いくつかの実施形態において、マシン可読(例えば、コンピュータ可読)媒体は、リードオンリメモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリコンポーネントなど、マシン(例えば、コンピュータ)可読記憶媒体を含む。
【0075】
先述の明細書において、本開示の実施形態は、それらの特定の例示的な実施形態に関して説明されている。様々な修正が、それらに対して、以下の請求項に明記されるような本開示の実施形態の幅広い趣旨および範囲から逸脱することなくなされ得ることは明らかである。したがって、本明細書および図面は、制限的意味よりもむしろ例示的意味と考えられるべきである。
【符号の説明】
【0076】
100 コンピューティングシステム
110 メモリサブシステム
113 電圧ビン較正コンポーネント
115 メモリサブシステムコントローラ
119 ローカルメモリ
120 ホストシステム
130 メモリデバイス
135 ローカルメディアコントローラ
140 メモリデバイス
210 スーパーブロックテーブル
220 ブロックテーブル
230 オフセットテーブル
700 マシン
702 処理デバイス
704 メインメモリ
706 スタティックメモリ
708 ネットワークインターフェースデバイス
718 データストレージシステム
720 ネットワーク
724 マシン可読記憶媒体
726 命令
730 バス
図1
図2
図3
図4
図5
図6
図7
【外国語明細書】