(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6961759
(24)【登録日】2021年10月15日
(45)【発行日】2021年11月5日
(54)【発明の名称】メモリデバイスにおけるリフレッシュ管理を実行するための方法、関連するメモリデバイス及びそのコントローラ
(51)【国際特許分類】
G11C 16/34 20060101AFI20211025BHJP
G11C 13/00 20060101ALI20211025BHJP
G11C 7/04 20060101ALI20211025BHJP
G06F 12/00 20060101ALI20211025BHJP
G06F 11/30 20060101ALI20211025BHJP
【FI】
G11C16/34 120
G11C16/34 110
G11C13/00 340
G11C7/04
G06F12/00 597U
G06F11/30 158
【請求項の数】20
【全頁数】13
(21)【出願番号】特願2020-101554(P2020-101554)
(22)【出願日】2020年6月11日
(62)【分割の表示】特願2018-153022(P2018-153022)の分割
【原出願日】2018年8月16日
(65)【公開番号】特開2020-144974(P2020-144974A)
(43)【公開日】2020年9月10日
【審査請求日】2020年6月11日
(31)【優先権主張番号】106139599
(32)【優先日】2017年11月16日
(33)【優先権主張国】TW
(73)【特許権者】
【識別番号】508157130
【氏名又は名称】慧榮科技股▲分▼有限公司
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】簡 介信
(72)【発明者】
【氏名】包 鎰華
【審査官】
酒井 恭信
(56)【参考文献】
【文献】
米国特許出願公開第2016/0117216(US,A1)
【文献】
特開2014−098978(JP,A)
【文献】
特開2006−301993(JP,A)
【文献】
米国特許出願公開第2017/0255403(US,A1)
【文献】
米国特許出願公開第2015/0301932(US,A1)
【文献】
特表2009−519420(JP,A)
【文献】
特開平09−318160(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G11C 16/34
G11C 13/00
G11C 7/04
G06F 12/00
G06F 11/30
(57)【特許請求の範囲】
【請求項1】
メモリデバイス内のリフレッシュ管理を実行するための方法であって、該メモリデバイスは不揮発性(NV)メモリを含み、該NVメモリは複数のNVメモリ素子を含み、当該方法は、
前記メモリデバイス内のコントローラが、最高温度及び最低温度の両方の記録値を第1の所定値に初期化するステップと、
前記コントローラが、前記メモリデバイスの温度を監視するステップであって、該温度が温度センサを介して検出される、監視するステップと、
前記コントローラが、監視された前記温度に従って、記録された前記最高温度及び記録された前記最低温度を更新するステップと、
前記コントローラが、記録された前記最高温度と記録された前記最低温度との差分値が所定の温度閾値よりも大きいかどうかをチェックするステップと、
前記コントローラが、前記差分値が前記所定の温度閾値よりも大きいときに、前記メモリデバイスのリフレッシュをトリガするステップと、を含み、
前記コントローラは、前記メモリデバイスの以前のリフレッシュのリフレッシュプロセスの際に記録されていた前記温度の以前の値を前記第1の所定値として用いる、方法。
【請求項2】
前記以前の値は、前記以前のリフレッシュの前記リフレッシュプロセスにおける第1の時点での前記温度の最新の値を表す、請求項1に記載の方法。
【請求項3】
前記コントローラが、前記メモリデバイスのリフレッシュをトリガするステップの後に、監視された温度が目標範囲内にあるかどうかをチェックするステップであって、該目標範囲とは所定の温度範囲である、チェックするステップと、
前記コントローラが、監視された前記温度が前記目標範囲内にあるときに、前記メモリデバイスのリフレッシュを実行するステップと、をさらに含む、請求項2に記載の方法。
【請求項4】
監視された前記温度が前記目標範囲内にあるときに、前記コントローラが、記録された前記最高温度と記録された前記最低温度の両方を第2の所定値にリセットするステップをさらに含み、該第2の所定値は前記目標範囲内にある、請求項3に記載の方法。
【請求項5】
前記コントローラは、前記メモリデバイスの前記リフレッシュのリフレッシュプロセスにおける前記温度の現在の値を前記第2の所定値として用いる、請求項4に記載の方法。
【請求項6】
前記現在の値は、前記メモリデバイスの前記リフレッシュの前記リフレッシュプロセスにおける第2の時点での前記温度の最新の値を表し、前記第1の時点が、前記第2の時点よりも前である、請求項5に記載の方法。
【請求項7】
前記トリガの動作は、前記リフレッシュプロセスに入ることを表し、
当該方法は、
前記コントローラが、前記リフレッシュプロセス中に、記録された前記最高温度と記録された前記最低温度の両方をリセットするステップをさらに含む、請求項1に記載の方法。
【請求項8】
前記トリガの動作がリフレッシュプロセスに入ることを表し、
当該方法は、
前記リフレッシュプロセス後、直ちに、記録された前記最高温度と記録された前記最低温度の両方をリセットするステップをさらに含む、請求項1に記載の方法。
【請求項9】
メモリデバイスであって、
情報を記憶するようにアレンジされた不揮発性(NV)メモリであって、該NVメモリは複数のNVメモリ素子を含む、NVメモリと、
前記NVメモリに結合されたコントローラであって、該コントローラは当該メモリデバイスの動作を制御するようにアレンジされた、コントローラと、を含み、
前記コントローラは、ホストデバイスが前記コントローラを介して前記NVメモリにアクセスすることができるように、該ホストデバイスからの複数のホストコマンドに従って前記コントローラを制御するようにアレンジされた処理回路を含み、
前記コントローラは、最高温度及び最低温度の両方の記録値を第1の所定値に初期化し、
前記コントローラは、当該メモリデバイスの温度を監視し、該温度は、温度センサによって検出され、
前記コントローラは、監視された前記温度に基づいて、記録された前記最高温度及び記録された前記最低温度を更新し、
前記コントローラは、記録された前記最高温度と記録された前記最低温度との差分値が所定の温度閾値よりも大きいかどうかをチェックし、
前記差分値が所定の温度閾値よりも大きいときは、前記コントローラは、当該メモリデバイスのリフレッシュをトリガし、
前記コントローラは、前記メモリデバイスの以前のリフレッシュのリフレッシュプロセスの際に記録されていた前記温度の以前の値を前記第1の所定値として用いる、メモリデバイス。
【請求項10】
前記以前の値は、前記以前のリフレッシュの前記リフレッシュプロセスにおける第1の時点での前記温度の最新の値を表す、請求項9に記載のメモリデバイス。
【請求項11】
前記メモリデバイスのリフレッシュをトリガした後に、前記コントローラは、監視された前記温度が目標範囲内にあるかどうかをチェックし、該目標範囲とは所定の温度範囲であり、監視された前記温度が前記目標範囲内にあるときに、前記コントローラは、前記メモリデバイスのリフレッシュを実行する、請求項10に記載のメモリデバイス。
【請求項12】
前記コントローラは、監視された前記温度が前記目標範囲内にあるときに、記録された前記最高温度と記録された前記最低温度の両方を第2の所定値にリセットし、該第2の所定値は前記目標範囲内にある、請求項11に記載のメモリデバイス。
【請求項13】
前記コントローラは、前記メモリデバイスの前記リフレッシュのリフレッシュプロセスにおける前記温度の現在の値を前記第2の所定値として用いる、請求項12に記載のメモリデバイス。
【請求項14】
前記現在の値は、前記メモリデバイスの前記リフレッシュの前記リフレッシュプロセスにおける第2の時点での前記温度の最新の値を表し、前記第1の時点が、前記第2の時点よりも前である、請求項13に記載のメモリデバイス。
【請求項15】
メモリデバイスのコントローラであって、該メモリデバイスは当該コントローラと不揮発性(NV)メモリとを含み、該NVメモリは複数のNVメモリ素子を含み、当該コントローラは、
ホストデバイスが前記コントローラを介して前記NVメモリにアクセスすることができるように、該ホストデバイスからの複数のホストコマンドに従って前記コントローラを制御するようにアレンジされた処理回路を含み、
前記コントローラは、最高温度及び最低温度の両方の記録値を第1の所定値に初期化し、
当該コントローラは、前記メモリデバイスの温度を監視し、前記温度は、温度センサを介して検出され、
当該コントローラは、監視された前記温度に基づいて、記録された前記最高温度及び記録された前記最低温度を更新し、
当該コントローラは、記録された前記最高温度と記録された前記最低温度との差分値が所定の温度閾値よりも大きいかどうかをチェックし、
前記差分値が前記所定の温度閾値よりも大きいときに、前記コントローラは前記メモリデバイスのリフレッシュをトリガし、
前記コントローラは、前記メモリデバイスの以前のリフレッシュのリフレッシュプロセスの際に記録されていた前記温度の以前の値を前記第1の所定値として用いる、コントローラ。
【請求項16】
前記以前の値は、前記以前のリフレッシュの前記リフレッシュプロセスにおける第1の時点での前記温度の最新の値を表す、請求項15に記載のコントローラ。
【請求項17】
前記メモリデバイスのリフレッシュをトリガした後に、当該コントローラが、監視された温度が目標範囲内にあるかどうかをチェックし、該目標範囲とは所定の温度範囲であり、監視された前記温度が前記目標範囲内にあるときに、当該コントローラが、前記メモリデバイスのリフレッシュを実行する、請求項16に記載のコントローラ。
【請求項18】
当該コントローラが、監視された前記温度が前記目標範囲内にあるときに、記録された前記最高温度と記録された前記最低温度の両方を第2の所定値にリセットし、該第2の所定値は前記目標範囲内にある、請求項17に記載のコントローラ。
【請求項19】
前記コントローラは、前記メモリデバイスの前記リフレッシュのリフレッシュプロセスにおける前記温度の現在の値を前記第2の所定値として用いる、請求項18に記載のコントローラ。
【請求項20】
前記現在の値は、前記メモリデバイスの前記リフレッシュの前記リフレッシュプロセスにおける第2の時点での前記温度の最新の値を表し、前記第1の時点が、前記第2の時点よりも前である、請求項19に記載のコントローラ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フラッシュメモリのアクセスに関し、より詳細には、メモリデバイスにおけるリフレッシュ管理を実行するための方法、関連するメモリデバイス、及びそのコントローラに関連する。
【背景技術】
【0002】
メモリ技術における発展により、SD/MMC、CF、MS及びXD仕様に準拠したメモリカード、ソリッドステートドライブ(SSD)、UFS又はEMMC仕様に準拠した組み込みストレージデバイス等、ポータブルメモリデバイス(又は非ポータブルメモリデバイス)の幅広い用途が可能になっている。これらのポータブルメモリデバイスにおけるメモリのアクセス制御を改善することがこの技術分野で解決すべき課題として依然として残っている。
【0003】
NANDフラッシュメモリは、単一のレベルセル(SLC)及び複数のレベルセル(MLC)フラッシュメモリを含むことができる。SLCフラッシュメモリでは、メモリセルとして使用される各トランジスタは、2つの電荷値、論理値0及び1のいずれかを有することができる。これと比較して、MLCフラッシュメモリにおいてメモリセルとして使用される各トランジスタの記憶能力は、十分に利用することができる。トランジスタは、SLCフラッシュメモリにおけるものよりも高い電圧によって駆動され、異なる電圧レベルを利用して少なくとも2ビット(00、01、11、10等)の情報を記録する。理論的には、MLCフラッシュメモリの記録密度は、SLCフラッシュメモリの記録密度の少なくとも2倍に達することができるため、NANDフラッシュメモリの製造者により好まれる。
【0004】
MLCフラッシュメモリ手段がより低いコスト及びより大きい容量であることは、SLCフラッシュメモリよりもポータブルメモリデバイスに適用される可能性が高いことを意味する。しかし、MLCフラッシュメモリは不安定性の問題をかかえている。ポータブルメモリデバイスにおけるフラッシュメモリのアクセス制御が要求仕様を満たすことを保証するため、フラッシュメモリのコントローラは、データアクセスを適切に管理するための管理機構を適用するように構成される。
【0005】
メモリデバイスは、上記の管理機構を有するものであっても、必然的に特定の欠点を有する。例えば、温度が急激に変化する状況下では、データエラー率が大幅に増加する可能性がある。したがって、副作用をもたらすことなく、又は副作用をもたらしにくい方法で、最適な性能を提供することができるメモリデバイスの新規な方法及びメモリアクセス機構が必要である。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】米国特許第8762656号明細書
【発明の概要】
【0007】
本発明の目的のうちの1つは、上述の問題を解決するために、リフレッシュ管理を実行するための方法、関連するメモリデバイス及びそのコントローラ並びに関連する電子デバイスを提供することである。
【0008】
本発明の別の目的は、副作用をもたらすことなく、又は副作用をもたらしにくい方法で、メモリデバイスが最適な性能に到達するように、リフレッシュ管理を実行するための方法、関連するメモリデバイス及びそのコントローラ並びに関連する電子デバイスを提供することである。
【0009】
本発明の少なくとも1つの実施形態は、メモリデバイスにおいてリフレッシュ管理を実行するための方法を提供する。メモリデバイスは、複数のNVメモリ素子を含む不揮発性(NV)メモリを含む。本方法は、メモリデバイスの温度を監視するステップであって、温度が温度センサを介して検出される、監視するステップと、監視された温度に従って、記録された最高温度及び記録された最低温度を更新するステップと、記録された最高温度と記録された最低温度との差分値が所定の温度閾値よりも大きいかどうかをチェックするステップと、差分値が所定の温度閾値よりも大きいときに、メモリデバイスのリフレッシュをトリガするステップと、を含む方法。
【0010】
本発明の少なくとも1つの実施形態は、NVメモリとコントローラとを含むメモリデバイスを提供する。NVメモリは情報を記憶するようにアレンジされ、NVメモリは複数のNVメモリ素子を含む。コントローラはNVメモリに結合され、コントローラはメモリデバイスの動作を制御するようにアレンジされ、コントローラは処理回路を含む。処理回路は、ホストデバイスがコントローラを介してNVメモリにアクセスすることができるように、ホストデバイスからの複数のホストコマンドに従ってコントローラを制御するようにアレンジされる。コントローラは、メモリデバイスの温度を監視し、温度は温度センサによって検出され、コントローラは、監視された温度に従って、記録された最高温度及び記録された最低温度を更新し、コントローラは、記録された最高温度と記録された最低温度との差分値が所定の温度閾値よりも大きいかどうかをチェックし、差分値が所定の温度閾値よりも大きい場合、コントローラは、メモリデバイスのリフレッシュをトリガする。
【0011】
本発明の少なくとも1つの実施形態は、メモリデバイスのコントローラを提供し、メモリデバイスは、コントローラ及びNVメモリを含む。NVメモリは、複数のNVメモリ素子を含む。コントローラは、ホストデバイスがコントローラを介してNVメモリにアクセスすることができるように、ホストデバイスからの複数のホストコマンドに従ってコントローラを制御するようにアレンジされた処理回路を含み、コントローラは、メモリデバイスの温度を監視し、温度は温度センサを介して検出され、コントローラは、監視された温度に従って、記録された最高温度及び最低温度を更新し、コントローラは、記録された最高温度と記録された最低温度との差分値が所定の温度閾値よりも大きいかどうかをチェックし、差分値が所定の温度閾値よりも大きい場合、コントローラは、メモリデバイスのリフレッシュをトリガする。
【0012】
本発明により提供する利点は、急激な温度変化によるデータエラーを防止するために、リフレッシュ管理を実行することによってメモリデバイスの動作を適切に制御できることである。追加的には、本発明の実施形態に従った実装は、追加コストを大幅に増加させないため、全体的なコストを大幅に上げることなく関連技術に存在する問題を解決することができる。さらに、本発明は、副作用をもたらすことなく、又は副作用をもたらしにくい方法で、最適な性能を達成することができる。
【0013】
本発明のこれら及び他の目的は、様々な図面及び図表に示す好ましい実施形態についての以下の発明を実施するための形態を読めば、当業者には間違いなく明らかになるであろう。
【図面の簡単な説明】
【0014】
【
図1】本発明の一実施形態によるメモリデバイス及びホストデバイスを示す図である。
【
図2】本発明の一実施形態による
図1に示すメモリデバイスの分布シフト効果を示す。
【
図3】本発明の別の実施形態による
図1に示すメモリデバイスの分布シフト効果を示す。
【
図4】本発明の一実施形態によるメモリデバイスにおけるリフレッシュ管理を実行するための方法のワークフローである。
【発明を実施するための形態】
【0015】
I.メモリシステム
図1を参照する。本発明の一実施形態によるメモリデバイス100及びホストデバイス50を示す図である。ホストデバイス50は、ホストデバイス50の動作を制御するようにアレンジされた少なくとも1つのプロセッサ(図示せず)と、プロセッサに結合され、プロセッサ及びメモリデバイス100に電力を供給するようにアレンジされた電源回路(図示せず)と、を含み、メモリデバイス100は、ホストデバイス50のために記憶空間を提供することができる。ホストデバイス50の例としては、多機能モバイルデバイス、タブレット、ウェアラブルデバイス、及びパーソナルコンピュータ(例えば、デスクトップコンピュータ又はラップトップコンピュータ)を含むことができる(が、これらに限定されない)。メモリデバイス100の例としては、ポータブルメモリデバイス(例えば、SD/MMC、CF、MS、XD又はUFS仕様に準拠するメモリカード)、ソリッドステートドライブ(SSD)及びあらゆる種類の組み込みストレージデバイス(例えば、UFS又はEMMC仕様に準拠したもの)を含むことができる(が、これらに限定されない)。この実施形態によれば、メモリデバイス100は、メモリコントローラ110のようなコントローラを含むことができ、不揮発性(NV)メモリ120をさらに含むことができ、コントローラは、NVメモリ120にアクセスするようにアレンジされ、NVメモリ120は情報を記憶するようにアレンジされる。NVメモリ120は、複数のNVメモリ素子122−1,122−2,…,122−Nを含むことができ、記号「N」は、1より大きい整数を表すことができる。例えば、NVメモリ120は、フラッシュメモリとすることができ、NVメモリ素子122−1,122−2,…,122−Nは、複数のフラッシュメモリチップ(すなわち、フラッシュチップ)又は複数のフラッシュメモリダイ(すなわち、フラッシュダイ)とすることができるが、本発明はこれらに限定されない。
【0016】
図1に示すように、メモリコントローラ110は、マイクロプロセッサ112などの処理回路と、リードオンリメモリ(ROM)112Mと、制御論理回路114と、バッファメモリ116と、温度センサ117と、伝送インタフェース回路と、を含むことができ、これらのコンポーネントは、バスを介して互いに結合することができる。バッファメモリ116は、ランダムアクセスメモリ(RAM)、例えば、スタティックRAM(SRAM)で実装され、データをバッファするために利用することができ、温度センサ117は、温度を検出するようにアレンジされることができる。さらに、この実施形態におけるROM112Mは、プログラムコード112Cを記憶するようにアレンジされ、マイクロプロセッサ112は、NVメモリ120へのアクセスを制御するためにプログラムコード112Cを実行するようにアレンジされる。なお、プログラムコード112Cをバッファメモリ116又は任意の他のタイプのメモリにも記憶することができる。追加的に、制御論理回路114は、データを保護し、及び/又はエラー訂正を実行するために、エラー訂正回路(図示せず)を含むことができる。伝送インタフェース回路118は、SATA(Serial Advanced Technology Attachment)、PATA(Parallel Advanced Technology Attachment)、USB(Universal Serial Bus)、又はPCIE(Peripheral Component Interconnect Express)仕様などの特定の通信仕様に準拠することができ、特定の通信仕様に従って通信を実行することができる。
【0017】
この実施形態では、ホストデバイス50は、複数のホストコマンド及び対応する論理アドレスをメモリコントローラ110に送信することによって、メモリデバイス100のNVメモリ120に間接的にアクセスすることができる。メモリコントローラ110は、ホストコマンド及び論理アドレスを受信し、ホストコマンドをメモリ動作コマンド(簡略化のために動作コマンドと呼ぶことができる)に変換し、動作コマンドを利用して、NVメモリ120内の特定の物理アドレスのメモリユニット又はデータページを読み出す又は書き込む/プログラムするようにNVメモリを制御し、物理アドレスは論理アドレスに対応する。例えば、メモリコントローラ110は、論理アドレスと物理アドレスとの関係を管理するための少なくとも1つの論理−物理アドレスマッピングテーブルを生成又は更新することができる。さらに、制御論理回路114は、ランダム化/非ランダム化動作を実行するようにアレンジされたランダマイザ/非ランダマイザ(図示せず)を含むことができる。メモリコントローラ110がNVメモリ120にデータを書き込むとき、メモリコントローラ110は、NVメモリ120にランダム化データを記憶させるために、データにランダム化動作を実行することができる。メモリコントローラ110がNVメモリ120からデータを読み出す場合、メモリコントローラ110は、以前に書き込まれたデータを取得するために、読み出されたランダム化データに非ランダム化動作を実行することができる。
【0018】
II.温度変化に対応した分布シフト
図2は、本発明の一実施形態による
図1に示すメモリデバイス100の分布シフト効果を示す。
図2における横軸は、閾値電圧Vthのデジタル制御値Vth_DACを表し、縦軸は、閾値電圧Vthを介して読み出されるNVメモリ120(例えば、NVメモリ素子122−1,122−2,…,122−N)において0ビットを搬送するメモリセルのセルカウントCCb0を表すことができ、デジタル制御値Vth_DACは「閾値電圧デジタル制御値」とも呼ばれることがあり、セルカウントCCb0は「ゼロビットセルカウント」とも呼ばれることがある。メモリコントローラ110は、ランダム化/非ランダム化機構(ランダム化/非ランダム化動作を実行するために、ランダマイザ/非ランダマイザを利用することによって実現され得る)を備えることができるため、NVメモリ120に記憶されるデータは、ランダム化されていることがある。
【0020】
表1は、閾値電圧Vthとデジタル制御値Vth_DACとの関係の一例を示し、表1において記号「…」は、それのいくつかの表コンテンツの省略を表すが、本発明はこれに限定されない。この例においてデジタル制御値Vth_DACは、ゼロ以上の整数とすることができ、各変化ステップは20ミリボルト(mV)とすることができる。例えば、Vth_DAC=0のとき、Vth=0mVであり、Vth_DAC=1のとき、Vth=20mV等である。別の例では、デジタル制御値Vth_DACが255に増加するとき、Vth=5100mV(5.1ボルト(V)に等しい)である。
【0021】
閾値電圧Vthは、著しく温度による影響を受ける。室温でNVメモリ120にアクセスする分布(例えば、書き込みと読み出しの両方が25℃で実行され、これは「W25℃/R25℃」とラベル付けされている)と比較して、異常な温度でNVメモリ120にアクセスする分布(例えば、−40℃で書き込みが行われ、85℃で読み取りが行われ、これは「W−40℃/R85℃」とラベル付けされている)は右にシフトし、同じ閾値電圧Vthだが、異常な温度でのNVメモリ120にアクセスすると、データエラーが生じやすくなる。
【0022】
図3は、本発明の別の実施形態による、
図1に示すメモリデバイス100の分布シフト効果を示す。本発明の別の実施形態による、室温でNVメモリ120にアクセスする分布(例えば、書き込みと読み出しの両方が25℃で実行され、これは「W25℃/R25℃」とラベル付けされている)と比較して、異常な温度でNVメモリ120にアクセスする分布(例えば、85℃での書き込みと−40℃での読み取りであり、これは「W85℃/R−40℃」とラベル付けされている)は左にシフトし、同じ閾値電圧Vthだが、異常な温度でのNVメモリ120にアクセスすると、データエラーが生じやすくなることをさらに示している。
【0023】
III.データリフレッシュ管理
分布シフトに関して、メモリコントローラ110は、メモリデバイス100のリフレッシュを実行することができ、より詳細には、NVメモリ120からのデータ(例えば、NVメモリ素子122−1,122−2,…,122−N内のデータ)を読み出し、NVメモリ120にデータを書き出すために、メモリデバイス100の記憶空間全体(例えば、NVメモリ素子122−1,122−2,…,122−Nの記憶空間)のリフレッシュを実行することができ、同じデータセットの論理アドレスは通常変化しないままであるが、データセットの物理アドレスは変更してもよい。リフレッシュ動作の例は、再充電、再プログラミング、データ交換、データ移動等を含むことができる(が、これらに限定されない)。
【0024】
図4は、本発明の一実施形態による、メモリデバイスにおけるリフレッシュ管理を実行するための方法をのワークフロー300であり、本方法はメモリデバイス100に適用してもよく、メモリコントローラなどのコントローラに適用してもよい。
【0025】
ステップS10では、メモリコントローラ110は、メモリデバイス100に初期化を実行することができる。例えば、メモリコントローラ110は、温度Tの記録された最高温度Tmaxと記録された最低温度Tminの両方を所定値T0(すなわち、Tmax=T0、Tmin=T0であり、所定値T0をそれぞれの初期値として使用する)として設定することができ、メモリコントローラ110は、そのハードウェア資源(例えば、バッファメモリ116又は任意のタイプのメモリ)を利用して、所定値T0、記録された最高温度Tmax、及び記録された最低温度Tminを記憶することができる。記号「Tmax」及び「Tmin」の記号は、記録された最高温度Tmax及び記録された最低温度Tminが、監視されている温度Tの記録された最大値及び記録された最小値(例えば、記録された最高温度及び記録された最低温度)としてそれぞれみなされることを示す。
【0026】
ステップS21では、メモリコントローラ110は、メモリデバイス100が通常モードで動作するように制御することができる。例えば、マイクロプロセッサ112は、ホストデバイス50がメモリコントローラ110を介してNVメモリ120にアクセスすることができるように、ホストデバイス50からのホストコマンドに従ってメモリコントローラ110を制御することができる。
【0027】
ステップS22では、メモリコントローラ110は、温度センサ117等の内蔵センサを利用して、メモリデバイス100の温度Tを監視することができる。例えば、メモリコントローラ110は、内蔵センサによって検出された最新の温度を使用して、温度Tを更新することができ、メモリコントローラ110は、そのハードウェア資源(例えば、バッファメモリ116又は任意の他のタイプのメモリ)を利用して、温度Tを記憶することができる。
【0028】
ステップS31では、メモリコントローラ110は、温度Tが、記録された最高温度Tmax(「T>Tmax?」とラベル付けされている)よりも高いかどうかをチェックすることができる。温度Tが、記録された最高温度Tmaxよりも高いときは、ステップS41に進み、そうでなければ、ステップS32に進む。
【0029】
ステップS32では、メモリコントローラ110は、温度Tが、記録された最低温度Tmin(「T<Tmin?」とラベル付けされている)よりも低いかどうかをチェックすることができる。温度Tが、記録された最低温度Tminよりも低いときは、ステップS42に進み、そうでなければ、ステップS21に進む。
【0030】
ステップS41では、メモリコントローラ110は、記録された最高温度Tmaxを更新することができ、より詳細には、記録された最高温度Tmaxを、内蔵センサにより検出された最新の温度などの温度Tの最新の値に更新することができる。
【0031】
ステップS42では、メモリコントローラ110は、記録された最低温度Tminを更新することができ、より詳細には、記録された最低温度Tminを、内蔵センサにより検出された最新の温度などの温度Tの最新の値に更新することができる。
【0032】
ステップS50では、メモリコントローラ110は、記録された最高温度Tmaxと記録された最低温度Tminとの差分値(Tmax−Tmin)が所定の温度閾値Th1(「(Tmax−Tmin)>Th1?」とラベル付けされている)より大きいかどうかをチェックすることができる。差分値(Tmax−Tmin)が所定の温度閾値Th1より大きい場合、ステップS61に進み、そうでなければ、ステップS21に進む。
【0033】
ステップS61では、メモリコントローラ110は、記録された最高温度Tmaxと記録された最低温度Tminをリセットすることができる。例えば、メモリコントローラ110は、記録された最高温度Tmaxと記録された最低温度Tminを所定値T0(つまり、Tmax=T0であり、Tmin=T0)としてリセットすることができる。
【0034】
ステップS62では、メモリコントローラ110は、メモリデバイス100の記憶空間全体(例えば、NVメモリ素子122−1,122−2,…,122−Nの記憶空間)のリフレッシュをトリガすることができ、このトリガ動作は、(例えば、リフレッシュプロセスを初期化することによって)リフレッシュプロセスに入ることを表すことができる。例えば、リフレッシュプロセスは、ステップS70及びステップS80の動作を含んでいてもよいが、本発明はこれに限定されない。
【0035】
ステップS70では、メモリコントローラ110は、温度Tが目標範囲内にあるかどうかをチェックすることができ、目標範囲は所定の温度範囲とすることができ、より詳細には、室温に対応する範囲とすることができる。例えば、目標範囲は、20℃から30℃(例えば、区間[20,30](℃))内とすることができる。別の例では、所定値T0は目標範囲内とすることができ、より詳細には、目標範囲の中央値又は目標範囲の2つの境界値(例えば、20℃及び30℃)の平均値とすることができ、例えば、25℃である。温度Tが目標範囲内であるときは、ステップS80に進み、そうでなければ、もう一度、ステップS70に進む。この実施形態によれば、メモリコントローラ110は、もう一度、ステップS70を実行することにより、温度Tが目標範囲内になるのを待つことができ、温度Tが目標範囲内になるまでメモリデバイス100のリフレッシュを開始しないため、リフレッシュプロセスにおいて、温度Tが目標範囲内にあるときにメモリデバイス100のリフレッシュを実行する。
【0036】
ステップS80では、メモリコントローラ110は、メモリデバイス100の記憶空間全体(例えば、NVメモリ素子122−1,122−2,…,122−Nの記憶空間)をリフレッシュすることができる。
【0037】
いくつかの実施形態によれば、フローチャート300において、1つ以上のステップの変更、追加及び/又は削除などの調整が許可される。例えば、ステップS61の動作のタイミングをリフレッシュプロセス中に実行するように調整することができる(例えば、他の実施形態においては、ステップS61の動作を、ステップS62の動作後まで、又はステップS70の動作後まで延期することができる)が、本発明はこれに限定されない。別の例では、ステップS61の動作のタイミングをリフレッシュプロセスに続いて実行するように調整することができる(例えば、ステップS61の動作を、ステップS80の動作後まで延期することができる)。
【0038】
いくつかの実施形態によれば、目標範囲及び/又は所定値T0を修正することができる。例えば、より高い温度を有するいくつかの国及び/又は地理的領域に関しては、目標範囲は、35℃〜45℃(例えば、区間[35,45](℃))のようなより高い温度範囲に調整することができ、所定値T0を40(℃)などのより高い値に調整することができる。別の例では、より低い温度を有するいくつかの国及び/又は地理的領域に関しては、目標範囲は、5℃〜15℃(例えば、区間[5,15](℃))のようなより低い温度範囲に調整することができ、所定値T0を10(℃)などのより低い値に調整することができる。簡潔にするために、これらの実施形態に関する同様の説明はここでは詳細に繰り返さない。
【0039】
いくつかの実施形態によれば、メモリコントローラ110は、温度センサ117などの内蔵センサを介して温度Tの現在値を所定値T0として決定することができる。この状況では、ステップS61の動作は、ステップS80の動作に続いて実行することができる。例えば、ステップS61の動作の実行は、ステップS80の動作後まで延期することができる。簡潔にするために、これらの実施形態に関する同様の説明はここでは詳細に繰り返さない。
【0040】
いくつかの実施形態によれば、内蔵センサは、温度センサのような外部センサ(図示せず)と置き換えることができる。外部センサは、メモリデバイス100の外部に配置することができ、より詳細には、ホストデバイス50内に配置することができる。別の例では、外部センサは、メモリデバイス100内ではあるが、メモリコントローラ110の外部に配置することができる。簡潔にするために、これらの実施形態に関する同様の説明はここでは詳細に繰り返さない。
【0041】
当業者であれば、装置及び方法への多様な変更及び変形は発明の教示を保持しながら行ってよいことに容易に気づくだろう。したがって、上記の開示は、添付の特許請求の範囲の境界によってのみ制限されるものとして解釈されるべきである。