JP2021507422A - 温度ベースのメモリ動作 - Google Patents

温度ベースのメモリ動作 Download PDF

Info

Publication number
JP2021507422A
JP2021507422A JP2020536271A JP2020536271A JP2021507422A JP 2021507422 A JP2021507422 A JP 2021507422A JP 2020536271 A JP2020536271 A JP 2020536271A JP 2020536271 A JP2020536271 A JP 2020536271A JP 2021507422 A JP2021507422 A JP 2021507422A
Authority
JP
Japan
Prior art keywords
block
data
operating temperature
temperature
memory
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.)
Granted
Application number
JP2020536271A
Other languages
English (en)
Other versions
JP6802947B1 (ja
Inventor
エマヌエーレ コンファロニエーリ
エマヌエーレ コンファロニエーリ
ステファーノ ラッティ
ステファーノ ラッティ
ゲイリー ジー. ラザロウィクス
ゲイリー ジー. ラザロウィクス
ステファン フレデリック シッパーズ
ステファン フレデリック シッパーズ
ステファーノ クラウディオ ロッシーニ
ステファーノ クラウディオ ロッシーニ
アンジェロ クレメンテ スカーディラ
アンジェロ クレメンテ スカーディラ
Original Assignee
マイクロン テクノロジー,インク.
マイクロン テクノロジー,インク.
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 マイクロン テクノロジー,インク., マイクロン テクノロジー,インク. filed Critical マイクロン テクノロジー,インク.
Application granted granted Critical
Publication of JP6802947B1 publication Critical patent/JP6802947B1/ja
Publication of JP2021507422A publication Critical patent/JP2021507422A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01KMEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR
    • G01K3/00Thermometers giving results other than momentary value of temperature
    • G01K3/005Circuits arrangements for indicating a predetermined temperature
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0033Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • 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/26Sensing or reading circuits; Data output 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3431Circuits or methods to detect disturbed nonvolatile memory cells, e.g. which still read as programmed but with threshold less than the program verify threshold or read as erased but with threshold greater than the erase verify threshold, and to reverse the disturbance via a refreshing programming or erasing step
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7204Capacity control, e.g. partitioning, end-of-life degradation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)

Abstract

温度ベースのメモリ動作を提供するために利用することができる装置、方法、及びデバイスを記載する。1つ以上の装置は、メモリデバイスと、このメモリデバイスに結合され、装置の動作温度を判定すること、装置の動作温度とデータのサイズとに基づいてデータを書き込むために、メモリデバイスの複数の指定された開ブロックのうちの1つを判定すること、及びメモリデバイスの複数の指定されたブロックのうちの判定された1つにデータを書き込むことを行うように構成されたコントローラとを含むことができる。

Description

本開示は、一般に、半導体メモリデバイス及び方法に関し、より詳細には、温度ベースのメモリ動作を提供するために利用され得る装置及び方法に関する。
メモリデバイスは、一般的には、コンピュータまたはその他の電子デバイスの内部回路、半導体回路、集積回路として提供される。揮発性メモリ及び不揮発性メモリといった多種多様なメモリがある。揮発性メモリは、データを保持するために電力を必要とし得る。揮発性メモリには、特に、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、及び同期ダイナミックランダムアクセスメモリ(SDRAM)などが含まれる。不揮発性メモリは、電力が供給されていないときでも、記憶された情報を保持することによって、永続的データを提供することができる。不揮発性メモリには、特に、NAND型フラッシュメモリ、NOR型フラッシュメモリ、読み出し専用メモリ(ROM)、電気的に消去可能でプログラム可能なROM(EEPROM)、消去可能でプログラム可能なROM(EPROM)、及び相変化ランダムアクセスメモリ(PCRAM)などが含まれる。メモリは、シングルレベルセル(SLC)及び/またはマルチレベルセル(MLC)としてプログラム可能なメモリセルを含むことができる。
一部の用途(例えば、自動車、航空、監視)に用いられるメモリは、動作温度が変動する可能性がある。このような変動する動作温度には、広範囲の温度が含まれてもよい。メモリ(例えば、NANDフラッシュメモリ)の中には、温度変化がデータの信頼性に影響を与え得るような、温度の影響を受けやすいものもあり得る。例えば、第1の温度でデータを書き込んだ後、第1の温度とは異なる第2の温度でデータを読み出すとき、データの書き込みと、その後のデータの読み出しとを同じ温度で行う場合と比較して、生のビット不良率(RBER)が増加する場合がある。
本開示の1つ以上の実施形態によるメモリデバイスの一部のブロック図である。 本開示の1つ以上の実施形態による、少なくとも1つのメモリシステムを含むコンピューティングシステムの形態の装置の機能ブロック図である。 本開示の1つ以上の実施形態による、温度ベースのメモリ動作に関連する機能ブロック図である。
メモリデバイスは、ストレージデバイスを、他にも様々なものがあるが、中でも、ソリッドステートドライブ(SSD)、組み込み用マルチメディアカード(eMMC)デバイス、及び/またはユニバーサルフラッシュストレージ(UFS)デバイスを形成するために、一体に組み合わされ得る。例えば、そのようなデバイスは、いくつかのメモリチップを含むことができ、これらのメモリチップは、いくつかのダイ及び/または論理ユニット(LUN)を含むことができる。各ダイは、その上にいくつかのメモリアレイ及び周辺回路を含み得る。メモリアレイは、いくつかの物理ページに編成されたいくつかのメモリセルを含むことができ、この物理ページは、いくつかのブロックに編成され得る。
本開示は、温度ベースのメモリ動作を提供するために利用され得る装置及び方法を含む。一例として、装置は、メモリデバイスと、このメモリデバイスに結合され、装置の動作温度を判定すること、装置の動作温度に基づいてデータを書き込むために、メモリデバイスの複数の指定された開ブロックのうちの1つを判定すること、及びメモリデバイスの複数の指定されたブロックのうちの判定された1つにデータを書き込むことを行うように構成されたコントローラとを含み得る。
先述のように、一部の用途に用いられるメモリ(例えば、eMMC、UFS、SSDなど)は、動作温度が変動する可能性がある。例えば、動作温度が変動する用途には、他のアプリケーションの中でも特に、自動車、航空、及び監視が含まれ得る。このような変動する動作温度には、広範囲の温度が含まれてもよい。例えば、メモリデバイスの変動する動作温度は、他にも様々な動作温度があるが、特に、−40℃〜125℃であってもよい。NANDフラッシュメモリは、温度に敏感であり得る。例えば、NANDフラッシュメモリでは、第1の温度でデータを書き込んだ後、第1の温度とは異なる第2の温度でデータを読み出すとき、データの書き込みと、その後のデータの読み出しとを同じ温度で行う場合と比較して、生のビット不良率(RBER)が増加する場合がある。
以前のアプローチの中には、温度補償方式(例えば、組み込まれた温度補償方式)を利用しているものもある。組み込みの温度補償方式は、NANDの現下の温度に基づいて読み出し電圧を調節するのに利用される。しかしながら、NANDフラッシュメモリで生じる電圧シフトは、特に、例えば、自動車用途で遭遇するような極端な異温度条件では、内部の読み出し電圧調節と相関関係を持たない場合がある。そのため、極端な異温度条件下では、NANDフラッシュメモリに、RBERの増加を招く、読み出し電圧位置に対する電圧分布シフトが生じ得る。その上、マルチレベルセルの状況では、RBERに対する電圧分布シフトの影響がさらに大きくなる可能性がある。
RBERが増加すると、故障ビットの量を増やす訂正可能なエラー、及び/または訂正不可能なエラーがもたらされ得る。故障ビットの量を増やす訂正可能なエラー、及び/または訂正不可能なエラーは、エラー処理動作及び/またはデータリフレッシュ動作の原因となる場合があり、どちらも性能の低下につながり得る。さらに、RBERが増加するとライトアンプリフィケーションが増加し、NANDフラッシュメモリの予想される使用寿命を減少させる場合がある。本開示の実施形態は、以前のアプローチに比べて、RBERを低減させるなどの便益を提供することができる。
マルチレベルセル(MLC)ストレージは、シングルレベルセル(SLC)ストレージに比べて、記憶密度が高くなる。また一方、本明細書の実施形態は、特に温度が変動する状況において、SLCストレージによって提供される信頼性を活かすことができる。先述のように、例えば、インフォテインメントシステム、インストルメントクラスタシステム、及びブラックボックスデータ記録システムなどを含む自動車用途では、動作温度の変動が生じる。本開示の実施形態は、動作温度を考慮に入れ、それに応じて書き込み方式を選択することができる。
例えば、ある実施形態は、書き込み温度を追跡すること、及び複数の温度範囲を識別することを含み得る。なお、本明細書では3つの温度範囲について折々に論じられるが、そのような論考は限定的な意味に取られるべきではないことを理解すべきである。そして、他の量の動作範囲は、本開示に従う。3つの温度範囲の例では、3つの温度範囲は、低T、中間T、及び高Tとラベル付けされ得る。低T及び高Tにおいて、本明細書の実施形態は、データ(例えば、ホストデータ)をSLCのみに書き込み得る。中間Tにおいて、本明細書の実施形態は、例えば、データのサイズなどの要因に応じて、SLCまたはMLCのいずれかにデータを書き込み得る。また、中間Tでは、本明細書の実施形態は、SLCデータがMLCデータに書き換えられるフォールディング動作及び/またはガベージコレクション動作を実行することができる。言い換えれば、低温または高温が中温に戻るとき、以前に書き込まれたSLCデータがMLCデータに変換され得る。したがって、本開示による実施形態は、低温及び高温でのSLCの信頼性を利用することができ、MLCによって提供される増大した記憶能力を利用することもできる。
本開示の実施形態は、メモリデバイスの温度範囲を、自動車の状況で遭遇する温度範囲に拡張することができる。例えば、ある実施形態では、メモリ動作は、−40℃〜125℃の間で実行され得る。本明細書の実施形態は、以前のアプローチと比べて、デバイスの信頼性が向上する(例えば、エラーが減少する)などの便益を提供することができる。
本開示の以下の詳細な説明では、本明細書の一部を形成する添付の図面を参照し、本開示の1つ以上の実施形態がどのようにして実施され得るかを、その図面に実例として示す。これらの実施形態は、当業者が本開示の実施形態を実施できるようにするために十分詳細に説明しており、本開示の範囲から逸脱することなく、他の実施形態を利用してもよいこと、及びプロセス変更、電気的変更、及び/または構造的変更を行ってもよいことを理解すべきである。
本明細書で使用するとき、特に図中の参照番号に関する「N」、「M」、及び「X」という指定子は、そのように指定されるいくつかの特定の特徴を、本開示の1つ以上の実施形態に含み得ることを示す。さらに、本明細書で使用するとき、「いくつかの」あるものは、1つ以上のそのようなもののことを指し得る。例えば、いくつかのメモリデバイスは、1つ以上のメモリデバイスのことを指し得る。
本明細書の図は、最初の桁が図面の図番号に対応し、残りの桁が図面中の要素または構成要素を識別する番号付けの規則に従う。種々の図の間の同様の要素または構成要素を、同様の数字を使用することによって識別する場合がある。例えば、120は、図1の要素「20」を参照することができ、同様の要素を、図2の220として参照することができる。理解されるように、本明細書の様々な実施形態に示される要素は、本開示のいくつかの追加の実施形態を提供するために、追加、交換、及び/または削除を行ってもよい。さらに、理解されるように、図に提供される要素の比率及び/または相対的な大きさは、本発明の実施形態を例示することを意図したものであり、限定的な意味に取るべきことではない。
図1は、本開示のいくつかの実施形態による、いくつかの物理ブロックを有するメモリアレイ100の一部分の図を示す。メモリアレイ100は、例えば、NANDフラッシュメモリアレイであってもよい。しかしながら、本開示の実施形態は、特定のタイプのメモリまたはメモリアレイに限定されない。例えば、メモリアレイ100は、他にも様々なタイプのメモリアレイがあるが、その中でも、RRAMアレイ、PCRAMアレイ、または3Dクロスポイント技術を利用するアレイであってもよい。さらに、図1には示していないが、メモリアレイ100は、その動作に関連する様々な周辺回路と共に特定の半導体ダイ上に配置され得る。
図1に示すように、メモリアレイ100は、メモリセルのいくつかの物理ブロック116−0(ブロック0)、116−1(ブロック1)、・・・、116−B(ブロックB)を有する。メモリセルは、セルごとにシングルビットを格納するシングルレベルセル(SLC)、及び/またはセルごとにシングルビット以上を格納することができ、各セルが3つ以上の区別できる状態にプログラム可能なマルチレベルセル(MLC)であってもよい。例えば、MLCとしては、8つの区別できるセル状態にプログラム可能な3ビットセル(TLC)、または16の区別できるセル状態にプログラム可能な4ビットセル(QLC)があり得る。本明細書で使用するとき、用語MLCは、2ビットセル、3ビットセル、4ビットセルなどのマルチレベルセルのことを一般的に指すために使用され得る。メモリアレイ100内の物理ブロックの数を、128ブロック、512ブロック、または1024ブロックにしてもよいが、実施形態は、128の特定の倍数や、またはメモリアレイ100内の物理ブロックのどんな特定の数にも限定されない。第1の数のブロック116−0、116−1、・・・、116−Bが、メモリブロックの第1の部分またはプールとして割り当てられ得、第2の数のブロック116−0、116−1、・・・、116−Bが、メモリブロックの第2の部分またはプールとして割り当てられ得、及び/または第3の数のブロック116−0、116−1、・・・、116−Bが、メモリブロックの第3の部分またはプールとして割り当てられ得る。
メモリセルのいくつかの物理ブロック(例えば、ブロック116−0、116−1、・・・、116−B)がメモリセル面内に含まれ得、いくつかのメモリセル面がダイ上に含まれ得る。例えば、図1に示す例では、各物理ブロック116−0、116−1、・・・、116−Bは、単一のダイの一部であってもよい。すなわち、図1に示すメモリアレイ100の一部は、メモリセルのダイであってもよい。
図1に示すように、各物理ブロックは、アクセスライン(例えば、ワードライン)に結合されたメモリセルのいくつかの物理行(例えば、120−0、120−1、・・・、120−R)を含む。各物理ブロックの行(例えば、ワードライン)の数を32にしてもよいが、実施形態は、物理ブロック当たりの特定の行120−0、120−1、・・・、120−Rの数に限定されない。さらに、図1には示さないが、メモリセルは、センスライン(例えば、データライン及び/またはディジットライン)に結合され得る。
各行120−0、120−1、・・・、120−Rは、メモリセルのいくつかのページ(例えば、物理ページ)を含むことができる。物理ページとは、プログラミング及び/またはセンシングの単位(例えば、機能グループとしてまとめてプログラム及び/またはセンスされるいくつかのメモリセル)を指す。図1に示す実施形態では、各行120−0、120−1、・・・、120−Rは、メモリセルの1つの物理ページを含む。ただし、本開示の実施形態はこれに限定されない。例えば、いくつかの実施形態では、各行は、メモリセルの複数の物理ページ(例えば、偶数番号のビットラインに結合されたメモリセルの1つ以上の偶数ページ、及び奇数番号のビットラインに結合されたメモリセルの1つ以上の奇数ページ)を含み得る。さらに、MLCを含む実施形態では、メモリセルの物理ページは、データの複数のページ(例えば、論理ページ)、例えば、データの上位ページとデータの下位ページのデータとを格納することができ、物理ページ中の各セルが、データの上位ページに対して1つ以上のビットを格納すると共に、データの下位ページに対して1つ以上のビットを格納する。
プログラム動作(例えば、書き込み動作)は、選択されたワードラインに結合されている選択セルの閾値電圧(Vt)を、目標の(例えば、所望の)データ状態に対応する所望のプログラム電圧レベルに増加させるために、その選択されたワードラインにいくつかのプログラムパルス(例えば、16V〜20V)を印加することを含み得る。読み出し動作またはプログラム検証動作などのセンス動作は、選択されたセルのデータ状態を判定するために、この選択されたセルに結合されているセンスラインの電圧変化及び/または電流変化をセンスすることを含み得る。
本開示のいくつかの実施形態では、図1に示すように、メモリセルのページは、いくつかの物理セクタ122−0、122−1、・・・、122−S(例えば、メモリセルのサブセット)を含み得る。セルの各物理セクタ122−0、122−1、・・・、122−Sは、いくつかのデータの論理セクタ(例えば、データワード)を格納してもよい。さらに、データの各論理セクタは、データの特定のページの一部に対応することができる。一例として、特定の物理セクタに格納されたデータの第1の論理セクタが、データの第1のページに対応する論理セクタに対応してもよく、その特定の物理セクタに格納されたデータの第2の論理セクタが、データの第2のページに対応してもよい。各物理セクタ122−0、122−1、・・・、122−Sは、システムデータ及び/またはユーザデータを格納してもよく、及び/またはエラー訂正コード(ECC)データ、論理ブロックアドレス(LBA)データ、及び繰り返しエラーデータなどのオーバーヘッドデータを含んでもよい。
論理ブロックアドレス指定は、データの論理セクタを識別するためにホストによって使用され得る方式である。例えば、各論理セクタが、一意の論理ブロックアドレス(LBA)に対応し得る。さらに、LBAが、物理アドレスに対応してもよい。データの論理セクタは、いくらかのデータのバイト(例えば、256バイト、512バイト、または1,024バイト)にすることができる。しかしながら、実施形態は、これらの例に限定されない。
物理ブロック116−0、116−1、・・・、116−B、行120−0、120−1、・・・、120−R、セクタ122−0、122−1、・・・、122−S、及びページの他の構成が可能であることに留意されたい。例えば、物理ブロック116−0、116−1、・・・、116−Bの行120−0、120−1、・・・、120−Rが、それぞれ、例えば、4096バイトよりも多いかまたは少ないデータを含むことができる単一の論理セクタに対応するデータを格納してもよい。
図2は、本開示のいくつかの実施形態による、メモリシステム204を備えるコンピューティングシステム201の形態の装置の機能ブロック図である。本明細書で使用するとき、「装置」とは、例えば、回路もしくは回路構成、1つもしくは複数のダイ、1つもしくは複数のモジュール、1つもしくは複数のデバイス、または1つもしくは複数のシステムなど、様々な構造のいずれかまたは構造の組み合わせを指し得るが、これらに限定されない。
メモリシステム204は、例えば、eMMCデバイス、UFSデバイス、またはSSDであり得る。図2に示す実施形態では、メモリシステム204は、ホストインタフェース206、メモリ(例えば、いくつかのメモリデバイス210−1、210−2、・・・、210−N)、及び物理ホストインタフェース206及びメモリデバイス210−1、210−2、・・・、210−Nに結合されたコントローラ208を含む。
メモリデバイス210−1、210−2、・・・、210−Nは、例えば、いくつかの不揮発性メモリアレイ(例えば、不揮発性メモリセルのアレイ)を含んでもよい。例えば、メモリデバイス210−1、210−2、・・・、210−Nは、図1に関連して前に述べたメモリアレイ100に類似しているいくつかのメモリアレイを含んでもよい。
ある実施形態では、メモリデバイス210−1、・・・、210−Nは、メモリセル(例えば、不揮発性メモリセル)のいくつかのアレイを含み得る。アレイは、例えば、NAND構造を有するフラッシュアレイであってもよい。ただし、実施形態は、特定のタイプのメモリアレイまたはアレイ構造に限定されない。図1に関連して上に述べたように、メモリセルは、例えば、メモリセルのいくつかの物理ページを含むいくつかのブロックにグループ化することができる。いくつかの実施形態では、ブロックは、ユニットとしてまとめて消去されるメモリセルのグループを指す。メモリセルの面内にいくつかのブロックを含むことができ、いくつかの面をアレイが含むことができる。一例として、メモリデバイスは、ページ当たり8KB(キロバイト)のユーザデータ、ブロック当たり128ページのユーザデータ、面当たり2048ブロック、及びデバイス当たり16面を格納するように構成されてもよい。別の例として、メモリデバイスは、ページ当たり16KBのユーザデータ、ブロック当たり512ページのユーザデータ、面当たり544ブロック、及びデバイス当たり2面を格納するように構成されてもよい。
動作中、データは、例えば、データのページとして、メモリシステムのメモリデバイス(例えば、メモリシステム204のメモリデバイス210−1、・・・、210−N)に書き込まれ、及び/またはそのメモリデバイスから読み出すことができる。そのため、データのページは、メモリシステムのデータ転送サイズとして見なされ得る。データは、セクタ(例えば、ホストセクタ)と呼ばれるデータセグメントずつ、ホスト202との間で転送することができる。そのため、データのセクタは、ホストのデータ転送サイズとして見なされ得る。ある実施形態では、NANDブロックが消去ブロックとして見なされる場合があり、ブロックが消去の単位であり、かつページが読み出し及び/または書き込みの分量である。
ホストインタフェース206は、メモリシステム204とホスト202などの別のデバイスとの間で情報を通信するのに用いることができる。ホスト202は、メモリアクセスデバイス(例えば、プロセッサ)を含み得る。本明細書で使用するとき、「プロセッサ」は、並列処理システムや、いくつかのコプロセッサなどの、いくつかのプロセッサを意図し得る。ホストの例には、パーソナルラップトップコンピュータ、デスクトップコンピュータ、デジタルカメラ、デジタル記録再生デバイス、携帯電話(例えば、スマートフォン)、PDA、メモリカードリーダ、インタフェースハブなどが含まれ得る。
ホストインタフェース206は、好適なプロトコル及び/または仕様に準拠する標準化された物理インタフェースの形態であってよい。例えば、メモリシステム204がコンピューティングシステム201の情報ストレージに使用される場合、ホストインタフェース206は、他にも様々なインタフェースがあるが、その中でも、eMMCインタフェース、UFSインタフェース、シリアル・アドバンスド・テクノロジ・アタッチメント(SATA)インタフェース、ペリフェラル・コンポーネント・インターコネクト・エクスプレス(PCIe)インタフェース、ユニバーサルシリアルバス(USB)インタフェースであってもよい。また一方、一般に、ホストインタフェース206は、メモリシステム204と、ホストインタフェース206に対する互換性のある受容器を有するホスト(例えば、ホスト202)との間で、制御、アドレス、情報(例えば、データ)、及びその他の信号を受け渡すためのインタフェースを提供することができる。
コントローラ208は、例えば、制御回路及び/または制御ロジック(例えば、ハードウェア及びファームウェア)を含み得る。コントローラ208は、メモリ210−1、210−2、・・・、210−Nと同じ物理的デバイス(例えば、同じダイ)に搭載することができる。例えば、コントローラ208は、物理ホストインタフェース206及びメモリ210−1、210−2、・・・、210−Nを含むプリント回路基板に結合された特定用途向け集積回路(ASIC)であってもよい。あるいは、コントローラ208は、メモリ210−1、210−2、・・・、210−Nを含む物理的デバイスに通信可能に結合された別個の物理的デバイスに搭載してもよい。いくつかの実施形態では、コントローラ208の構成要素を、分散コントローラとして、複数の物理的デバイス(例えば、メモリと同じダイ上の何らかの構成要素、及び異なるダイ、モジュール、またはボード上の何らかの構成要素)に散在させてもよい。
コントローラ208は、メモリデバイス210−1、210−2、・・・、210−Nと通信して、他にも様々な動作があるが特に、情報のセンス(例えば、読み出し)、プログラム(例えば、書き込み)、及び/または消去を行うことができる。コントローラ208は、いくつかの集積回路及び/または別々の構成要素であり得る回路構成を有してもよい。いくつかの実施形態では、コントローラ208内の回路構成は、メモリデバイス210−1、210−2、・・・、210−N全体にわたってアクセスを制御するための制御回路構成、及び/またはホスト202とメモリシステム204との間に変換層(例えば、フラッシュ変換層)を提供するための回路構成を含み得る。
コントローラ208は、ブロックアドレス指定部分などの、それぞれの個別のメモリデバイス210−1、210−2、・・・、210−Nの専用領域の動作を、静的(例えば、専用)シングルレベルセル(SLC)キャッシュ及び/または動的SLCキャッシュとして(例えば、それぞれの個別のメモリデバイス210−1、210−2、・・・、210−Nの一部分が、静的SLCキャッシュ及び/または動的SLCキャッシュとして動作する構成となるように)制御することができる。例えば、それぞれの個別のメモリデバイス210−1、210−2、・・・、210−Nの一部分が、SLCモードで静的キャッシュとして、及び/またはSLCモードで動的キャッシュとして動作するように構成してもよい。それぞれの個別のメモリデバイス210−1、210−2、・・・、210−Nのこの部分を、例えば、それぞれの個別のメモリにおけるメモリセルの第1の複数ブロック(例えば、物理ブロック)としてもよく、本明細書では、メモリの第1の部分と呼ぶことがある。さらに、それぞれの個別のメモリデバイス210−1、210−2、・・・、210−Nの部分は、第2の複数ブロック、第3の複数ブロックなどを含むことがある。
本明細書で使用するとき、MLCメモリ(例えば、MLC)とは、3つ以上のデータ状態のうちの対象となる1つにプログラムすることができるメモリ(例えば、メモリセル)(例えば、1ビット以上のデータを格納できるメモリセル)のことを指す場合がある。例えば、MLCメモリは、セル当たり2ビットのデータを格納するメモリセル、セル当たり3ビットのデータを格納するメモリセル(例えば、TLC)、及び/またはセル当たり4ビットのデータを格納するメモリセル(例えば、QLC)を指す場合がある。
ある実施形態では、静的SLCブロックは、MLCモードでは決してプログラムされない。例えば、ある実施形態では、静的SLCブロックのSLC耐久性を、MLC消耗率とは無関係に高めることができる。適宜に、混合モードブロックを、SLCモードまたはMLCモードで互換的に使用してよい。ある実施形態では、SLCモードで混合モードブロックを使用するとき、MLC消耗率はSLC耐久性に関係なく増加し得る。ある実施形態では、静的SLCブロックについては、MLC消耗率とは無関係に、高いSLC耐久性が達成され得るが、混合モードブロックについては、高いMLC率と相まって低いSLC耐久性が達成され得る。単一のSLCトリム設定を使用する混合モードブロックでは、高いMLC消耗率と相まって低いSLC耐久性が達成され得る。ある実施形態では、MLCモードで消去された混合モードブロックは、SLCモードでプログラムするために使用することができ、SLCモードで消去された混合モードブロックは、MLCモードでプログラムするために使用することができない。
ある実施形態では、コントローラ208は、複数のメモリブロックのうちのメモリブロックに関連する特定のメモリブロックがシングルレベルセル(SLC)モードで書き込まれるべきであることを判定し、この特定のメモリブロックがSLCモードで書き込まれるべきであるという判定に応答して、その特定のメモリブロックに格納されたデータをSLCモードで消去するように構成され得る。特定のメモリブロックは、ホストメモリブロックであってもよく、及び/または特定のブロックがSLCモードで書き込まれるべきであるという判定の前に、MLCモードで書き込まれていてもよい。
ある実施形態では、コントローラ208は、特定のブロックに格納されたデータがSLCモードで消去されることに応答して、特定のメモリブロック用のSLC消去カウンタをインクリメントするように構成され得る。少なくとも1つの実施形態では、複数のメモリブロックのうちの少なくとも1つのメモリブロックが、装置204のアイドル時間の間中に消去されてもよい。
コントローラ208は、特定のメモリブロックに格納されたデータがSLCモードで消去された後に、SLCモードで特定のメモリブロックにデータを書き込むように構成され得る。コントローラ208は、複数のメモリブロックのうちのメモリブロックの空きブロック数を判定するように構成されてもよい。ある実施形態では、フォアグラウンドのガベージコレクションは、空きブロック数が空きブロックの閾値数未満に減少することに応答して呼び出されてもよい。
図2に示す実施形態は、本開示の実施形態を不明瞭にしないために図示していない別途の回路構成、ロジック、及び/または構成要素を含むことができる。例えば、メモリデバイス204は、I/Oコネクタを通りI/O回路を介して提供されるアドレス信号をラッチするためのアドレス回路を含んでもよい。メモリ210−1、210−2、・・・、210−Nにアクセスするために、アドレス信号を行デコーダ及び列デコーダで受け取ってデコードすることができる。
図3は、本開示の1つ以上の実施形態による、温度ベースのメモリ動作に関連する機能ブロック図である。コントローラ308は、書き込み要求を受け取り、324で温度チェックを実行して、装置の動作温度を判定することができる。温度チェックは、温度センサ(例えば、組み込み型温度センサ)を使用して実行することができるが、温度を判定する他の方法は、本明細書の実施形態に従う。温度は、コントローラ308によって発行される組み込み型温度センサへのコマンドを用いて判定することができ、ほぼリアルタイムで更新され得る。
温度チェックは、動作温度(本明細書では単に「温度」と呼ばれることもある)が収まる所定の範囲の判定を可能にし得る。先述のように、図3に示すように、3つの温度範囲を判定することができる。しかしながら、本明細書の実施形態は、これに限定されないことに再度留意されたい。第1の温度範囲(「低T」または単に「LT」)は、第1の温度閾値未満の温度または温度範囲に対応してもよい。第1の温度閾値は、特定の値に限定されないが、説明のために、本明細書では0℃の値が与えられる。ある実施形態では、例えば、第1の温度範囲は、−40℃〜0℃の間である。第2の温度範囲(「高T」または単に「HT」)は、第2の温度閾値を超える温度または温度範囲に対応してもよい。第2の温度閾値は、特定の値に限定されないが、説明のために、本明細書では70℃の値が与えられる。ある実施形態では、例えば、第2の温度範囲は、70℃〜125℃の間である。第3の温度範囲(「中間T」または単に「MT」)は、第1の温度閾値と第2の温度閾値との間の温度に対応してもよい。説明のために、第3の温度範囲は、0℃〜70℃の間に指定される。温度範囲及び/または温度閾値は、乗り物(例えば、自動車)の目標動作温度に基づいて決定してもよい。例えば、温度範囲は、乗り物が、各範囲内に収まる温度を受けると予想される時間の長さに基づいて決定してもよい。本明細書では、乗り物という状況に言及する場合があるが、本開示の実施形態は、これに限定されないことに留意されたい。つまり、そのような言及は、説明及び/または例示の目的で行われ、限定的な意味に解釈されるべきではない。
いくつかの実施形態は、温度範囲が異なった幅を有し得ることを提供する。例えば、−40℃〜0℃の温度範囲には、40℃の幅がある。0℃〜70℃の温度範囲には、70℃の幅がある。70℃〜125℃の温度範囲には、55℃の幅がある。これらの幅は、例示のために提供されたものであり、限定的な意味で捉えられるものではない。ある実施形態では、幅の1つ以上が同じであってもよい。
多くの実施形態は、異なる温度範囲で書き込まれるデータに対して指定された複数の開ブロックを画定することができる。図3に示すように、開ブロックは、第1のタイプ336の開ブロックを含むことができる。ある実施形態では、ブロックの第1のタイプ336は、SLCタイプであってもよい。開ブロックは、第2のタイプ338の開ブロックを含むことができる。ある実施形態では、ブロックの第2のタイプ338は、MLCタイプであってもよい。
第1のタイプ336に含まれるのは、第1の温度範囲に対応するLTブロック330、第2の温度範囲に対応するHTブロック328、及び第3の温度範囲に対応するMTブロック332である。第2のタイプ338に含まれるのは、同様に第3の温度範囲に対応するMLCブロックである。
コントローラ308は、動作温度が、第1の温度閾値(例えば、0℃)未満であるか、または第1の温度範囲(例えば、−40℃〜0℃)内であるという判定に応答して、LTブロック330にデータを書き込み得る。コントローラ308は、動作温度が、第2の温度閾値(例えば、70℃)を超えるか、または第2の温度範囲(例えば、70℃〜125℃)内であるという判定に応答して、HTブロック328にデータを書き込み得る。
動作温度が(第3の温度範囲内の)第1の温度閾値と第2の温度閾値との間にあるとき、コントローラは326でデータのサイズを判定することができる。ある実施形態では、データのサイズを判定することは、データがサイズ閾値を下回るかまたは上回るかを判定することを指してもよい。データがサイズ閾値未満である場合、コントローラ308は、データをMTブロック332に書き込む。データがサイズ閾値を超える場合、コントローラ308は、データをMLCブロック334に書き込む。したがって、いくつかの実施形態では、温度が中程度である場合に、かつデータが十分なサイズである場合にのみ、データはMLCデータとして書き込まれてもよく、その他の場合は、データはSLCデータとして書き込まれる。
いくつかの実施形態では、データは温度情報でタグ付けされない。言い換えれば、個々のデータ項目が、温度インジケータでタグ付けされない場合がある。データを適切な指定開ブロックに配置することにより、本明細書の実施形態は、データが書き込まれた条件を後で決定するという追加のステップを回避することができる。したがって、ブロックごとの単位で、複数の異なる温度範囲を追跡することにより、本明細書の実施形態は、書き込まれたデータと共にインジケータを格納することなく、データが書き込まれた温度範囲を知ることができるようになる。
HTブロック328が満杯になると(例えば、完全に書き込まれると)、HTブロック328は、閉じることができ、340で他の閉じたHTブロックと共にプールすることができる。LTブロック330が満杯になると、LTブロック330は、閉じることができ、342で他の閉じたLTブロックと共にプールすることができる。MTブロック332が満杯になると、MTブロック332は、閉じることができ、344で他の閉じたMTブロックと共にプールすることができる。MLCブロック334が満杯になると、MLCブロック334は、閉じることができ、344で他の閉じたMTブロックと共にプールすることができる。したがって、指定された温度範囲によって、別個の閉じたブロックのプールを維持し、及び/または組織することができる。
いくつかの実施形態では、高温または低温のいずれかが中温(例えば、0℃〜70℃の間)に戻るときに、SLCデータは、空きMLCブロックにフォールディングされ、及び/またはフラッシュされ、SLCブロックがクリーニングされ得る。温度が中間範囲(例えば、第3の温度範囲)内に戻ったことを判定するために、コントローラ308は、348で別の温度チェックを実行することができる。戻った場合、ガベージコレクション(GC)及びフォールディングのための犠牲ブロック選択が、350で示すように実行され得る。
本明細書の1つ以上の実施形態によるガベージコレクションは、HT閉ブロックプール340、LT閉ブロックプール342、及びMT閉ブロックプール344の中のブロックの有効ページ数に基づいて、犠牲ブロックを選択することを含み得る。有効ページの閾値未満の有効ページ数を持つブロックを含むプールのいずれかが、犠牲ブロックとして選択され得る。ある実施形態では、有効ページ数が最も少ないブロックを含むプールのいずれかが犠牲ブロックとして選択され得る。
いくつかの実施形態では、ガベージコレクションは、現在の動作温度に基づいて犠牲ブロックを選択することを含み得る。本明細書の実施形態は、中間の温度範囲のみでガベージコレクションを実行することができるが、現在の動作温度は、一方の温度閾値に、他方の温度閾値よりも近い場合があると予想される。例えば、現在の動作温度が65℃である(第2の閾値よりも約5℃低い)場合、HT閉ブロックプール340からのブロックは、ガベージコレクション動作のために優先されてもよい。同様に、例えば、現在の動作温度が5℃である(第1の閾値よりも約5℃高い)場合、LT閉ブロックプール342からのブロックは、ガベージコレクション動作のために優先されてもよい。
352では、閉じたブロックでフォールディング及びガベージコレクションが実行されており、ブロックがクリーニングされる。有効なページを再要求し、334で空きMLCブロックに書き込むことができ、クリーニングされたブロックは、空きブロックのプール346に配置され得る。空きブロック346のそれぞれは、コントローラ308によって、HT開ブロック328、LT開ブロック330、MT開ブロック332、またはMLC開ブロック324として、タグ付けされ、及び/または指定され得る。言い換えれば、コントローラ308は、空きブロックが、HT開ブロック328、LT開ブロック330、MT開ブロック332、及びMLC開ブロック324のうちの1つと見なされるようになるという指定で、その空きブロックにタグを付けることができる。
その後(例えば、第2の時点で)、読み出し要求が受け取られると、本開示の実施形態は、本明細書で説明されるブロックから読み出すことができる。例えば、高温(例えば、88℃)で書き込まれたデータを対象として、低温(例えば、−12℃)で受け取られる読み出しの要求が、HTブロックまたはTLCブロックで起こる可能性がある。低温(例えば、−20℃)で書き込まれたデータを対象として、高温(例えば、100℃)で受け取られる読み出しの要求が、LTブロックまたはTLCブロックで起こる可能性がある。125℃で書き込まれたデータを対象として、−40℃で受け取られる読み出し要求などの過酷な異温度シナリオは、ある実施形態では、SLC(MLCではない)ブロック上でのみ受け入れられ得る。
本明細書に特定の実施形態を図示し説明してきたが、当業者は、同じ結果を達成するように計算された構成が、示された特定の実施形態の代わりになり得ることを理解するであろう。本開示は、本開示の1つ以上の実施形態の適合形態または変形形態を包含することが意図されている。上記の説明は例示的な様式で行われたものであり、限定的なものではないことが理解されよう。上記説明を検討すれば、上記実施形態の組み合わせ、及び本明細書で具体的に説明されていない他の実施形態が当業者にとって明らかになるであろう。本開示の1つ以上の実施形態の範囲は、上記の構造及び方法が用いられる他の用途を含む。したがって、本開示の1つ以上の実施形態の範囲は、添付の特許請求の範囲を、これらの特許請求の範囲が権利を与えられる均等物の全範囲と併せて参照して決定されるべきである。
前述の詳細な説明では、開示を合理化する目的で、いくつかの特徴が単一の実施形態に集められる。本開示の方法は、本開示の開示された実施形態が、各請求項で明示的に想起されるよりも多くの特徴を使用しなければならないという意図を反映していると解釈されるものではない。むしろ、以下の特許請求の範囲が反映するように、発明の主題は、開示された単一の実施形態の全ての特徴よりも少ない部分にある。したがって、以下の特許請求の範囲は、本明細書によって詳細な説明に組み込まれ、各請求項は別個の実施形態としてそれ自体で成立する。

Claims (24)

  1. 装置であって、
    メモリデバイスと、
    コントローラであって、前記メモリデバイスに結合され、
    前記装置の動作温度を判定すること、
    前記装置の前記動作温度に基づいてデータを書き込むために、前記メモリデバイスの複数の指定された開ブロックのうちの1つを判定すること、及び
    前記メモリデバイスの前記複数の指定されたブロックのうちの前記判定された1つに前記データを書き込むこと
    を行うように構成された、前記コントローラと
    を備える、前記装置。
  2. 前記コントローラが、前記装置の前記動作温度と前記データのサイズとに基づいてデータを書き込むために、前記メモリデバイスの前記複数の指定された開ブロックのうちの前記1つを判定するように構成された、請求項1に記載の装置。
  3. 前記複数のブロックが、
    第1の温度閾値未満の第1の動作温度範囲に対応する第1のブロックと、
    第2の温度閾値を超える第2の動作温度範囲に対応する第2のブロックと、
    前記第1の温度閾値を超えて、かつ前記第2の温度閾値未満である第3の動作温度範囲に対応する第3のブロックと、
    前記第3の動作温度範囲に対応する第4のブロックと
    を含む、請求項1に記載の装置。
  4. 前記コントローラは、前記データのサイズがサイズ閾値未満であることに応答して、前記データを書き込むための前記第3のブロックを判定するように構成されている、請求項3に記載の装置。
  5. 前記コントローラは、前記データのサイズが前記サイズ閾値を超えることに応答して、前記データを書き込むための前記第4のブロックを判定するように構成されている、請求項4に記載の装置。
  6. 前記第1の温度閾値及び前記第2の温度閾値が、乗り物の目標動作温度に基づいて決定される、請求項3に記載の装置。
  7. 前記第1の温度閾値が0℃であり、前記第2の温度閾値が70℃である、請求項3に記載の装置。
  8. 前記メモリデバイスが不揮発性メモリを含む、請求項1〜7のいずれか1項に記載の装置。
  9. 前記メモリデバイスがNANDフラッシュメモリを含む、請求項1〜7のいずれか1項に記載の装置。
  10. 前記装置が乗り物内の電子システムの一部である、請求項1〜7のいずれか1項に記載の装置。
  11. 温度ベースのメモリ動作の方法であって、
    シングルレベルセル(SLC)及びマルチレベルセル(MLC)として動作可能なメモリセルを含むメモリ装置にデータを書き込むための要求を受け取ること、
    前記メモリ装置に関連する温度を判定すること、ならびに
    前記判定された温度に基づいて書き込み動作を実行する複数の開ブロックの1つを選択することを含み、
    前記複数の開ブロックの前記選択された1つは、SLCブロックとして指定され、それぞれの複数の異なる温度範囲に対応する複数の開ブロックを含む、維持された複数の開ブロックの中から選択される、前記方法。
  12. 前記複数の開ブロックが、MLCブロックとして指定された開ブロックも含む、請求項11に記載の方法。
  13. 前記方法は、データが書き込まれる温度範囲が、前記書き込まれるデータと共にインジケータを格納することなく分かるように、ブロックごとの単位で、前記複数の異なる温度範囲を追跡することを含む、請求項11〜12のいずれか1項に記載の方法。
  14. 前記方法が、
    前記複数の開ブロックのうちの1つが閉じられたことを判定すること、及び
    前記閉じられたブロックを、空きブロックのプールからのブロックで置き換えること
    を含む、請求項11〜12のいずれか1項に記載の方法。
  15. 前記方法が、指定された温度範囲によって編成された別個の閉じたブロックのプールを維持することを含む、請求項11〜12のいずれか1項に記載の方法。
  16. 温度ベースのメモリ動作の方法であって、
    第1の時点における乗り物のメモリデバイスの第1の動作温度を判定すること、
    前記メモリデバイスの前記動作温度及びデータのサイズに基づいた書き込み要求に応答して、前記メモリデバイスの複数の指定された開ブロックの1つに前記データを書き込むことであって、前記複数のブロックは、
    第1の温度閾値未満の第1の動作温度範囲に対応する第1のブロックタイプの第1のブロックと、
    第2の温度閾値を超える第2の動作温度範囲に対応する前記第1のブロックタイプの第2のブロックと、
    前記第1の温度閾値を超えて、かつ前記第2の温度閾値未満である第3の動作温度範囲に対応すると共に、データサイズ閾値未満のデータサイズに対応する前記第1のブロックタイプの第3のブロックと、
    前記第3の動作温度範囲に対応すると共に、データサイズ閾値を超えるデータサイズに対応する第2のブロックタイプの第4のブロックと
    を含む、前記データを書き込むこと、
    第2の時点における前記乗り物の前記メモリデバイスの第2の動作温度を判定すること、ならびに
    前記第2の動作温度が前記第3の動作温度範囲の範囲内であるという判定に応答して、前記第1のブロックタイプの閉じたブロックから、前記第2のブロックタイプの少なくとも1つの空きブロックにデータをフォールディングすること
    を含む、前記方法。
  17. 前記第1のブロックタイプはシングルレベルセルのブロックタイプであり、
    前記第2のブロックタイプはマルチレベルセルのブロックタイプである、請求項16に記載の方法。
  18. 前記方法は、前記第2の動作温度が前記第3の動作温度範囲の範囲内であるという前記判定に応答して、前記第1のブロックタイプの閉じたブロックでガベージコレクションを実行することを含む、請求項16〜17のいずれか1項に記載の方法。
  19. 前記方法は、組み込み型温度センサを使用して前記動作温度を判定することを含む、請求項16〜17のいずれか1項に記載の方法。
  20. 前記方法は、前記第2の動作温度が前記第3の動作温度範囲の範囲内にないという判定に応答して、前記第1のブロックタイプの閉じたブロックから、前記第2のブロックタイプの少なくとも1つの空きブロックにデータをフォールディングしないこと、及び前記第1のブロックタイプの閉じたブロックでガベージコレクションを実行しないことを含む、請求項16〜17のいずれか1項に記載の方法。
  21. 第1の時点における乗り物のメモリデバイスの第1の動作温度を判定すること、
    前記メモリデバイスの複数の指定された開ブロックと通信することであって、前記複数の指定されたブロックが、
    第1の温度閾値未満の第1の動作温度範囲に対応する第1のブロックと、
    第2の温度閾値を超える第2の動作温度範囲に対応する第2のブロックと、
    前記第1の温度閾値を超えて、かつ前記第2の温度閾値未満である第3の動作温度範囲に対応する第3のブロックと、
    前記第3の動作温度範囲に対応する第4のブロックと
    を含む、前記開ブロックと通信すること、
    前記第1の時点における前記動作温度が、前記第1の温度閾値未満であるという判定に応答して、前記第1のブロックにデータを書き込むこと、
    前記第1の時点における前記動作温度が、前記第2の温度閾値を超えているという判定に応答して、前記第2のブロックにデータを書き込むこと、
    前記第3のブロックにデータを書き込むことであって、
    前記第1の時点における前記動作温度が、前記第1の温度閾値を超えており、前記第2の温度閾値未満であるという判定と、
    前記データのサイズが、サイズ閾値未満であるという判定と
    に応答して、前記第3のブロックに前記データを書き込むこと、及び
    前記第4のブロックに前記データを書き込むことであって、
    前記第1の時点における前記動作温度が、前記第1の温度閾値を超えており、前記第2の温度閾値未満であるという前記判定と、
    前記データの前記サイズが、前記サイズ閾値を超えているという判定と
    に応答して、前記第4のブロックに前記データを書き込むこと
    を行うように構成された回路を備える、コントローラ。
  22. 前記第1のブロック、前記第2のブロック、及び前記第3のブロックはシングルレベルセルのブロックを備え、前記第4のブロックがマルチレベルセルのブロックを備える、請求項21に記載のコントローラ。
  23. 前記コントローラが、前記乗り物のインフォテインメントシステム、前記乗り物のインストルメントクラスタシステム、及び前記乗り物のブラックボックスデータ記録システムのうちの1つのシステムの一部分である、請求項21〜22のいずれか1項に記載のコントローラ。
  24. 前記コントローラは、
    空きブロックが、前記第1のブロック、前記第2のブロック、前記第3のブロック、及び前記第4のブロックのうちの1つであることを示す指定で、前記空きブロックにタグ付けするように構成されている、請求項21〜22のいずれか1項に記載のコントローラ。
JP2020536271A 2017-12-29 2018-12-05 温度ベースのメモリ動作 Active JP6802947B1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/857,704 US10339983B1 (en) 2017-12-29 2017-12-29 Temperature-based memory operations
US15/857,704 2017-12-29
PCT/US2018/063952 WO2019133202A1 (en) 2017-12-29 2018-12-05 Temperature-based memory operations

Publications (2)

Publication Number Publication Date
JP6802947B1 JP6802947B1 (ja) 2020-12-23
JP2021507422A true JP2021507422A (ja) 2021-02-22

Family

ID=67059779

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020536271A Active JP6802947B1 (ja) 2017-12-29 2018-12-05 温度ベースのメモリ動作

Country Status (6)

Country Link
US (2) US10339983B1 (ja)
EP (1) EP3732681A4 (ja)
JP (1) JP6802947B1 (ja)
KR (1) KR102214947B1 (ja)
CN (1) CN111527545B (ja)
WO (1) WO2019133202A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10509597B2 (en) * 2018-01-02 2019-12-17 Intel Corporation Memory block access modes for a storage device
EP3788644A4 (en) * 2018-05-03 2023-03-01 L. Pierre De Rochemont HIGH-SPEED/LOW-POWER COMPUTER CENTERS AND SERVER NETWORKS
US11163488B2 (en) 2018-07-20 2021-11-02 Micron Technology, Inc. Extended cross-temperature handling in a memory sub-system
US10650875B2 (en) * 2018-08-21 2020-05-12 Spin Memory, Inc. System for a wide temperature range nonvolatile memory
WO2020087211A1 (en) * 2018-10-29 2020-05-07 Micron Technology, Inc. Slc cache allocation
US10877882B1 (en) * 2019-06-19 2020-12-29 Micron Technology, Inc. Garbage collection adapted to user device access
DE112019007657T5 (de) * 2019-08-23 2022-05-19 Micron Technology, Inc. Temperaturbasierte speicherverwaltung
KR20210036593A (ko) * 2019-09-26 2021-04-05 삼성전자주식회사 스토리지 장치
US11062756B2 (en) * 2019-10-14 2021-07-13 Western Digital Technologies, Inc. Extending operating temperature of storage device
US11243711B2 (en) * 2020-02-05 2022-02-08 Micron Technology, Inc. Controlling firmware storage density based on temperature detection
JP7413908B2 (ja) * 2020-04-21 2024-01-16 富士通株式会社 ストレージ制御装置およびバックアップ制御プログラム
JP7513445B2 (ja) 2020-07-07 2024-07-09 キオクシア株式会社 メモリシステム
US11556249B2 (en) * 2020-09-01 2023-01-17 Western Digital Technologies, Inc. Delaying random data relocation for reducing write amplification in storage devices
US11704217B2 (en) * 2021-01-25 2023-07-18 Micron Technology, Inc. Charge loss scan operation management in memory devices

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007242163A (ja) * 2006-03-09 2007-09-20 Toshiba Corp 半導体集積回路装置のデータ記録方式
KR20130072712A (ko) * 2011-12-22 2013-07-02 에스케이하이닉스 주식회사 비휘발성 메모리 장치 및 그 제어 방법
JP2016015060A (ja) * 2014-07-03 2016-01-28 キヤノン株式会社 電子機器
JP2016212745A (ja) * 2015-05-12 2016-12-15 株式会社東芝 半導体装置
US20170060425A1 (en) * 2015-08-27 2017-03-02 Kabushiki Kaisha Toshiba Memory system and method of controlling nonvolatile memory

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8027194B2 (en) * 1988-06-13 2011-09-27 Samsung Electronics Co., Ltd. Memory system and method of accessing a semiconductor memory device
JP2006286149A (ja) 2005-04-05 2006-10-19 Matsushita Electric Ind Co Ltd 半導体記憶装置
US8209504B2 (en) * 2007-01-30 2012-06-26 Panasonic Corporation Nonvolatile memory device, nonvolatile memory system, and access device having a variable read and write access rate
JP5224498B2 (ja) 2007-02-28 2013-07-03 学校法人早稲田大学 メモリ管理方法、情報処理装置、プログラムの作成方法及びプログラム
US8285918B2 (en) 2009-12-11 2012-10-09 Nimble Storage, Inc. Flash memory cache for data storage device
US8472274B2 (en) 2011-03-02 2013-06-25 Apple Inc. Using temperature sensors with a memory device
JP2012212486A (ja) 2011-03-30 2012-11-01 Toshiba Corp メモリシステム
US9141528B2 (en) * 2011-05-17 2015-09-22 Sandisk Technologies Inc. Tracking and handling of super-hot data in non-volatile memory systems
US9176864B2 (en) * 2011-05-17 2015-11-03 SanDisk Technologies, Inc. Non-volatile memory and method having block management with hot/cold data sorting
US8873323B2 (en) * 2012-08-16 2014-10-28 Transcend Information, Inc. Method of executing wear leveling in a flash memory device according to ambient temperature information and related flash memory device
US9224478B2 (en) 2013-03-06 2015-12-29 Freescale Semiconductor, Inc. Temperature-based adaptive erase or program parallelism
US20150092488A1 (en) * 2013-09-27 2015-04-02 Yogesh Wakchaure Flash memory system endurance improvement using temperature based nand settings
KR20150121562A (ko) * 2014-04-21 2015-10-29 삼성전자주식회사 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템의 동작방법
US10078546B2 (en) 2014-10-24 2018-09-18 Micron Technology, Inc. Temperature related error management
US9996297B2 (en) 2014-11-14 2018-06-12 SK Hynix Inc. Hot-cold data separation method in flash translation layer
JP2017027540A (ja) * 2015-07-28 2017-02-02 株式会社東芝 半導体装置及び電子機器
US20170053714A1 (en) 2015-08-19 2017-02-23 Micron Technology, Inc. Read voltage offset
US9996281B2 (en) * 2016-03-04 2018-06-12 Western Digital Technologies, Inc. Temperature variation compensation
US10228872B2 (en) * 2016-03-10 2019-03-12 Toshiba Memory Corporation Semiconductor device, and information-processing device
KR102669687B1 (ko) * 2016-12-05 2024-05-28 삼성전자주식회사 메모리의 온도에 따라 상이하게 동작하는 스토리지 장치
US10032488B1 (en) * 2016-12-29 2018-07-24 Sandisk Technologies Llc System and method of managing data in a non-volatile memory having a staging sub-drive

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007242163A (ja) * 2006-03-09 2007-09-20 Toshiba Corp 半導体集積回路装置のデータ記録方式
KR20130072712A (ko) * 2011-12-22 2013-07-02 에스케이하이닉스 주식회사 비휘발성 메모리 장치 및 그 제어 방법
JP2016015060A (ja) * 2014-07-03 2016-01-28 キヤノン株式会社 電子機器
JP2016212745A (ja) * 2015-05-12 2016-12-15 株式会社東芝 半導体装置
US20170060425A1 (en) * 2015-08-27 2017-03-02 Kabushiki Kaisha Toshiba Memory system and method of controlling nonvolatile memory

Also Published As

Publication number Publication date
EP3732681A4 (en) 2021-10-20
CN111527545B (zh) 2021-10-01
US20190279689A1 (en) 2019-09-12
US20190206452A1 (en) 2019-07-04
KR20200094226A (ko) 2020-08-06
EP3732681A1 (en) 2020-11-04
WO2019133202A1 (en) 2019-07-04
CN111527545A (zh) 2020-08-11
US10755751B2 (en) 2020-08-25
US10339983B1 (en) 2019-07-02
JP6802947B1 (ja) 2020-12-23
KR102214947B1 (ko) 2021-02-15

Similar Documents

Publication Publication Date Title
JP6802947B1 (ja) 温度ベースのメモリ動作
US11586357B2 (en) Memory management
US11586679B2 (en) Proactive corrective actions in memory based on a probabilistic data structure
US9666249B1 (en) Data storage device with temperature compensation and operating method thereof
CN110663033B (zh) 混合模块的操作
CN109815160B (zh) 最后写入页搜索
US20170053714A1 (en) Read voltage offset
US20210240395A1 (en) Determination of data integrity based on sentinel cells
US11113205B2 (en) Die addressing using a reduced size translation table entry
US12008249B2 (en) Memory system and method of performing background operation
US20230384970A1 (en) Storage device and operating method thereof
US11923014B2 (en) Memory system compensating for performance deterioration of a memory device
US11782644B2 (en) Memory system and method of operating the same

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200805

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200805

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200805

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20201028

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201127

R150 Certificate of patent or registration of utility model

Ref document number: 6802947

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250