(57)【要約】  本発明は、不揮発性メモリに保存されているデータをリフレッシュするサイクルを制御する装置に関する。当該装置は、複数のメモリブロックを含んでいる少なくとも１個の不揮発性メモリの温度を測定すると共に、測定された温度を表す情報を提供することが可能な温度センサと、当該温度センサに結合されていて、温度情報を、データ保持期間に及ぼす温度の影響のモデリングと共に用いてデータの消失が切迫しているか否かを判定し、判定結果が肯定的な場合、警報を生成する制御モジュールとを含んでいる。
2019530124.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリに保存されているデータをリフレッシュするリフレッシュサイクルを制御する装置であって、
−複数のメモリブロックを含んでいる少なくとも１個の不揮発性メモリの温度を測定すると共に、測定された温度を表す値を提供する温度センサと、
−前記温度センサに結合されていて、
−前記測定された温度を表す値を、前記少なくとも１個の不揮発性メモリの保持期間に及ぼす前記温度の影響に比例する値に変換する符号化器と、
−前記符号化器および１個の状態レジスタに結合されていて、前記符号化器の出力値および前記状態レジスタの状態値を入力として受信する加算器であって、前記状態レジスタが、前記状態レジスタに保存されている状態値が所定の量だけ増える毎に警報信号を生成すべく構成されている加算器とを含む制御モジュールと、
−制御モジュールに結合されていて、前記警報信号を受信して、前記少なくとも１個の不揮発性メモリの各メモリブロックについて、前記メモリブロックに対してデータリフレッシュサイクルを実行すべきか否かを、前記メモリブロックの残存保持期間の関数として決定するマイクロコントローラとを含む装置。
【請求項２】
前記制御モジュールが、
−前記データ保持期間の温度の関数としての変化のモデリングを表す値を保存するレジスタのバンクと、
−前記レジスタのバンクに結合されていて、前記レジスタのバンクの１個のレジスタを、前記温度センサから提供される温度情報の項目の関数として選択して、前記レジスタに保存されている値を提供するマルチプレクサと、
−前記マルチプレクサおよび１個の状態レジスタに結合されていて、前記マルチプレクサからの出力値および前記状態レジスタの状態値を入力として受信する加算器であって、前記状態レジスタが、前記状態レジスタに保存されている値が所定の量だけ増える毎に警報信号を生成すべく構成されている加算器とを含んでいる、請求項１に記載の装置。
【請求項３】
前記残存保持期間が、前記ブロックに対して実行されるプログラミング／消去サイクルの回数の関数として計算される、請求項１または２に記載の装置。
【請求項４】
前記データ保持期間の温度の関数としての変化のモデリングがアレニウス則に基づいている、請求項１〜３のいずれか１項に記載の装置。
【請求項５】
前記温度センサがアナログ／デジタルコンバータに結合されていて、前記温度情報の項目がアナログ／デジタルコンバータから提供される数値である、請求項１〜４のいずれか１項に記載の装置。
【請求項６】
前記アナログ／デジタルコンバータが、「温度計」符号の形式で数値を提供すべく構成されたコンバータである、請求項５に記載の装置。
【請求項７】
前記制御モジュールが更にクロック生成器を含んでいる、請求項１〜６のいずれか１項に記載の装置。
【請求項８】
前記クロック生成器が、前記状態レジスタに保存されている値の更新を調整すべく前記状態レジスタに結合されている、請求項７に記載の装置。
【請求項９】
マイクロコントローラおよび複数の不揮発性メモリを含んでいるＳＳＤディスクまたはメモリカードであって、前記複数の不揮発性メモリのデータリフレッシュサイクルを制御すべく請求項１〜８のいずれか１項に記載の少なくとも１個の装置を更に含んでいるＳＳＤディスクまたはメモリカード。
【請求項１０】
前記少なくとも１個の不揮発性メモリがフラッシュメモリである、請求項１〜９のいずれか１項に記載の装置。
【請求項１１】
不揮発性メモリに保存されているデータをリフレッシュするリフレッシュサイクルを制御する方法であって、
−複数のメモリブロックを含んでいる少なくとも１個の不揮発性メモリの温度を測定すると共に、測定された温度を表す値を提供するステップと、
−前記測定された温度を表す値を、データ保持期間に及ぼす温度の影響のモデリングと共に用いて、前記測定された温度を表す値を、前記少なくとも１個の不揮発性メモリの保持期間に及ぼす温度の影響に比例する値に変換するステップと、
−前記少なくとも１個の不揮発性メモリの保持期間に及ぼす温度の影響に比例する前記値を、状態レジスタの状態値に加算するステップと、
−結果的に生じた値が所定量だけ増大したか否かを判定するステップと、
−判定結果が肯定的な場合、データの消失が切迫していることを警告する警報信号を生成するステップを含む方法。
【請求項１２】
前記警報信号の生成後に、
−前記少なくとも１個の不揮発性メモリの各ブロックの残存保持期間を評価するステップと、
−前記残存保持期間が所定の閾値を下回る場合、前記少なくとも１個の不揮発性メモリの各ブロック内のデータのリフレッシュ動作を実行するステップを更に含んでいる、請求項１１に記載の方法。
【請求項１３】
マイクロプロセッサ上でプログラムが実行されたならば請求項１１または１２に記載の方法のステップを実行する符号命令を含むプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリの分野に関し、特に不揮発性メモリに保存されたデータの保持期間およびリフレッシュサイクルに関する。
【背景技術】
【０００２】
フラッシュメモリは、保存されたデータが電力遮断時に消失しない書き換え可能な不揮発性メモリ（ＭＮＶ）である。この種のメモリは、その高速性、寿命および低電力消費により、例えばデジタル静止画カメラ、携帯電話、プリンタ、携帯情報端末（ＰＤＡ）、ラップトップコンピュータ、または携帯音楽プレーヤー等の音声再生／録音装置、ＵＳＢキーにおける様々な用途に魅力的である。
【０００３】
英語で「ハードディスクドライブ（Ｈａｒｄ−Ｄｉｓｋ  Ｄｒｉｖｅ）」を意味する（ＨＤＤ）ディスクの名で知られる従来のハードディスクを代替することを目的とする、英語で「ソリッドステートドライブ（Ｓｏｌｉｄ−Ｓｔａｔｅ  Ｄｒｉｖｅ）」を意味する（ＳＳＤ）ディスクの名で知られる電子ディスクは静的記憶装置である。いくつかのＳＳＤは、１メモリセル当たり２ビットを保存する英語で「マルチレベルセル（Ｍｕｌｔｉ  Ｌｅｖｅｌ  Ｃｅｌｌ）」を意味する（ＭＬＣ）型のフラッシュメモリ、または１メモリセル当たり３ビットを保存する英語で「トリプルレベルセル（Ｔｒｉｐｌｅ  Ｌｅｖｅｌ  Ｃｅｌｌ）」を意味する（ＴＬＣ）型のフラッシュメモリを、１メモリセル当たり１ビットを保存する英語で「シングルレベルセル（Ｓｉｎｇｌｅ  Ｌｅｖｅｌ  Ｃｅｌｌ）」を意味する（ＳＬＣ）型のフラッシュメモリの代わりに用いる。１セル当たりのビット数を増大させることが、性能、消費、および耐衝撃性の観点からＨＤＤに対するＳＳＤの優位性を利用すべく、ＳＳＤとハードディスクＨＤＤとの間における１ギガバイト（ＧＢ）当たりの価格差を縮める手段の一つである。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、フラッシュメモリの弱点の一つは、メモリセルに保存されたデータの保持期間、すなわちデータの最長保持期間に対応する時間が、メモリ内で上昇する温度の影響を受ける点である。この現象は、１セル当たり複数のビットが保存されている場合に顕著になる。特定のＭＬＣメモリの最長保証保持期間は４０℃で２ヶ月である。当該期間は、温度上昇に伴い保持期間が指数関数的に増大すると予測するアレニウス則を適用すれば７０℃で２日間の保持期間に相当する。しかし、データセンター等の温度が制御された環境下であっても相当の動作負荷を伴うＳＳＤがそのような温度に達することあり得る。
【０００５】
保持期間が短くなる影響を軽減すべく、データを周期的にリフレッシュすることが知られている。このリフレッシュ動作は、固定位置リフレッシュ動作と称する、メモリセルのフローティングゲートで不足している電荷量だけを注入することにより、データの保存場所を変更せずに実行するか、または代替的に、再プログラミングによりデータを異なるアドレスに再書き込みすることによりリフレッシュ動作を行うことができる。固定位置リフレッシュ動作は、エネルギー消費および応答速度に及ぼす影響が少ない点が特徴的であり、実質的に、Ｐ／Ｅサイクルの持続時間に一切影響を及ぼさない。
【０００６】
一般に保証プログラミング／消去（Ｐ／Ｅ）サイクルの回数として測定されるフラッシュメモリの耐久性は、メモリセルに保存されるビットが追加される毎に平均１０年分低下する。この影響は、保証Ｐ／Ｅサイクルの回数の上限を緩めることにより緩和できるが、これは保証保持期間を犠牲にして実現される。
【０００７】
フラッシュメモリの耐久性と保持期間とは相互依存しているため、データの周期的リフレッシュを利用する解決策はメモリの耐久性の向上にも用いることができる。これは、フラッシュメモリにおいて可能なＰ／Ｅサイクルの最大回数を増やす一方で、周期的リフレッシュ動作により、この増加の影響を緩和することにより実現できる。
【０００８】
依然として残る短所として、頻度が一定のリフレッシュ動作には、環境条件の変化および／またはメモリの動作負荷に起因する温度変化の下で、応答待ち時間、エネルギー消費、および利用可能なＰ／Ｅサイクルの回数の観点から顕著な不都合が伴う場合がある。
【０００９】
従って、公知の方式の短所を軽減する解決策に対するニーズが存在する。本発明は、このニーズに対応するものである。
【課題を解決するための手段】
【００１０】
本発明の目的の一つは、不揮発性メモリの保持期間に及ぼす温度の影響の変化を追跡する装置を提案することである。
【００１１】
本発明の別の目的は、保持期間に及ぼす温度の影響の変化に応じて不揮発性メモリのリフレッシュ頻度を適合させる装置を提案することである。
【００１２】
本発明の装置は一般に、１個以上の不揮発性メモリの温度を測定する温度センサ、および測定された温度の変化のデータ保持期間に及ぼす影響を追跡する制御モジュールからなる。
【００１３】
一実施形態において、本発明の装置は、データ消失が切迫していることを検出した際に警報を生成する手段を含んでいる。
【００１４】
本発明の装置により、データのリフレッシュ動作を機械的かつ周期的にではなく、データ消失の切迫に関連して適切に起動することが可能になる。従って不揮発性メモリのリフレッシュサイクルの回数が大幅に減少する。
【００１５】
本発明は、例えばデータセンターで用いられるＳＳＤ等、高温に晒される不揮発性メモリを集中的に使用する全ての環境において有利に適用できよう。
【００１６】
求める結果を得るために、請求項に記載の装置および方法を提案する。
【００１７】
本発明は、マイクロプロセッサ上でプログラムが実行されたならば請求項に記載の方法のステップを実行する符号命令を含むプログラム製品の形式で動作可能である。
【００１８】
本発明の様々な態様および利点は、以下の図面を参照しながら、本発明の好適だが非限定的な実行モードの記述を精査することで明らかになろう。
【図面の簡単な説明】
【００１９】
【図１】本発明の装置を実装するホストＳＳＤディスクまたはメモリカード通信システムのブロック図である。
【図２】本発明の装置の第１の実施形態を示す。
【図３】本発明の装置の一変型実施形態を示す。
【図４】本発明の装置の動作モードに従い警報を生成する一連のステップを示す。
【図５】データリフレッシュ動作を伴う、または伴わない、複数の警報信号の生成を時間軸上に示す。
【発明を実施するための形態】
【００２０】
図１を参照するに、ホスト１００とＳＳＤディスクまたはメモリカード１１０との間の通信を司るシステムを模式的に示す。記述する例において、ＳＳＤディスク１１０は、複数のフラッシュメモリ１１２を含むものとして示す。一変型実装において、単一のフラッシュメモリがホストに接続されている。カード１１０は、ホストと接続するための接続インターフェースを含んでいる。当業者には公知の仕方で、このような外部カード（図示せず）用のインターフェースは、英語で「ユニバーサルシステムバス（Ｕｎｉｖｅｒｓａｌ  Ｓｙｓｔｅｍ  Ｂｕｓ）」を意味する（ＵＳＢ）型の、または英語で「シリアルアドバンストテクノロジーアタッチメント（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）」を意味する（ＳＡＴＡ）型のコネクタであってよい。メモリカード１１０は従って、様々なプロトコル、例えばＵＳＢまたはＳＡＴＡプロトコル、またはホストのより特定のプロトコルに従いデータを交換すべくホスト１００の対応するインターフェースにコネクタを介して接続することができる。一変型において、メモリカード１１０は、ホストが１個以上のメモリカードに対応すべく構成されているホストシステム内蔵カードであってよい。別の実装モードによれば、ホスト１００およびメモリカード１１０は、英語で「ワイヤレスフィデリティ（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）」を意味する（Ｗｉ−Ｆｉ）プロトコルに従い無線通信およびデータ交換を行う。
【００２１】
ホストは、メモリカード、ＳＳＤディスクを使用可能な、またはフラッシュメモリとデータ交換が可能な任意のシステムであってよい。従って、ホスト１００は、非限定的に、タブレット、携帯電話、スマートフォンその他の携帯情報端末を含む据え置きまたは可搬パソコンであってよい。ホストはまた、サーバであってよく、１個以上のメモリカードまたはＳＳＤディスクを収納する容器を含んでいる。
【００２２】
ＳＳＤディスク１１０は、ホスト／メモリ通信インターフェースを介したフラッシュメモリ１１２とホスト１００との間のデータおよび命令のやり取りを管理すると共にフラッシュメモリ内のデータを読み書きおよびリフレッシュ動作を管理する当業者には公知の要素を含む制御回路１１４を含んでいる。コントローラ１１４は、複数の通信バスまたはチャネル１１３を介してフラッシュメモリ１１２に結合されており、通信バスのうち１本は恐らく複数のフラッシュメモリに接続されている。フラッシュメモリ１１２は、ＳＬＣおよび／またはＭＬＣおよび／またはＴＬＣ型のメモリであってよい。
【００２３】
一実施形態において、制御回路１１４の要素の組は、英語で「特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）」を意味する（ＡＳＩＣ）等の専用モジュールとして実装することができる。
【００２４】
本発明によれば、ＳＳＤディスク１１０は、フラッシュメモリの保持期間に及ぼすＳＳＤディスク１１０の温度の影響を追跡すべく、以下で「Ａ−タイマ」と称する少なくとも１個の装置１１６を含んでいる。図１に記述する例において、Ａ−タイマ装置１１６は各フラッシュメモリに関連付けられている。
【００２５】
一変型実装において、単一のＡ−タイマ装置１１６には、同一の通信バスにより結合されていて内部温度が均一に分布しているフラッシュメモリの組に関連付けられていてよい。
【００２６】
別の変型によれば、全てのフラッシュメモリに跨って温度が均一な場合、ＳＳＤディスク１１０は単一のＡ−タイマ装置１１６を含んでいてよい。
【００２７】
一実装モードによれば、ＳＳＤディスク１１０に温度が異なる領域が存在する場合、各領域に位置するフラッシュメモリのグループに１個のＡ−タイマ装置１１６が割り当てられる。
【００２８】
ＳＳＤディスクの領域分割は、ディスクに対して実行される事前温度測定に基づいて行われても、またはディスク１１０の以前のバージョンに適用された分割を参考にしてもよい。
【００２９】
各Ａ−タイマ装置１１６は、通信バス１１５を介して制御回路１１４と通信する。制御回路１１４は、Ａ−タイマ装置の管理、および付随する１個以上のフラッシュメモリの各々とのやり取りを司る。
【００３０】
図２に本発明のＡ−タイマ装置の第１の実施形態を示す。Ａ−タイマ装置は、
−１個以上のフラッシュメモリの温度を測定する温度センサ２１０と、
−温度センサから提供された信号を数値に変換するアナログ／デジタルコンバータ（ＡＤＣ）２１２と、
−ＡＤＣから提供された数値を、制御されたメモリの保持期間に及ぼす瞬間温度の影響に比例する数値に符号化する符号化器２１４と、
−符号化器により生成された数値を状態レジスタ２１８に保存されている値に加算する加算器２１６と、
−符号化器２１４により生成された値を時間経過に伴い加算器を介して累算して、状態レジスタに保存されている値が所定の閾値（２１９）を上回る量だけ増大した場合に警報信号２２０を生成する状態レジスタ２１８と、
−状態レジスタに保存されている値の更新タイミングを調整するクロック信号生成器２２２と、を含んでいる。
【００３１】
一変型実装において、アナログ／デジタルコンバータ（ＡＤＣ）２１２へ送られた信号を増幅すべく増幅器（図示せず）が温度センサの出力端に接続されている。
【００３２】
温度センサ２１０は、自身が割り当てられたフラッシュメモリまたはフラッシュメモリのグループの温度を測定して、測定された温度に比例する電気信号を生成すべく構成されている。一変型によれば、温度センサは、アナログ／デジタルコンバータ２１２を含み、測定された温度を表す数値を出力として提供し、当該数値を加算器２１６または符号化器２１４が直接使用できる。
【００３３】
符号化器２１４は、ＡＤＣ２１２から提供された数値を、Ａ−タイマ装置が監視するメモリの保持期間に及ぼす温度の影響に比例するように符号化すべく構成されている。
【００３４】
別の実装変型において、アナログ／デジタルコンバータ（ＡＤＣ）２１２は加算器２１６の入力を直接提供する。この場合、保持期間に及ぼす温度の影響に比例する数値に温度を変換するのはＡＤＣ２１２である。
【００３５】
一実装によれば、ＡＤＣ２１２はフラッシュまたは並列変換器であって、以下の連鎖に従ういわゆる「温度計または単項」符号「０００．．．０」、「１００．．．０」、「１１０．．．０」、「１１１．．．０」、．．．、「１１１．．．１」の形式で数値を提供する。
【００３６】
有利な特徴として、一実装によれば、符号化器２１４は、アレニウス則を表すモデルに記述されているように、フラッシュメモリの保持期間に及ぼす温度の影響と同様に指数関数的に増大する値を提供すべく温度計符号を変更するように適合されている。
【００３７】
好適には、符号化器は、各状態に対して２進表現が一桁のみの値を用いて状態を表す、当分野で称する所のいわゆる「ワンホット」符号化を可能にする。
【００３８】
従って、フラッシュＡＤＣの出力は、以下に例として与える表を参照して符号化され、ここにＡＤＣの出力のビット数は、用途に対応する温度区間で保持期間が二分割される回数に依存する。
【００３９】
【表１】
2019530124.tif 000003
【００４０】
本実装において、上述の配列に示す符号化器２１４から出力された値は、ＡＤＣ２１２の対応する出力に値「１」を加算することにより得られる。本例では、符号化器２１４の出力は自身の入力よりも１ビット多く含んでいる。
【００４１】
符号化器の出力は、状態レジスタ２１８に保存した最後の状態値を自身の入力として受信する加算器２１６の複数の入力のうちの１個となる。
【００４２】
有利な特徴として、状態レジスタに保存されている値に周期的に加算された値が、フラッシュメモリの保持期間に及ぼす瞬間温度の影響に比例するため、状態レジスタの状態は保持期間に温度が及ぼす変化の全体的な影響に比例する。
【００４３】
状態レジスタの状態は読み取られて、フラッシュメモリの各ブロックまたは各ページに関連付けられていて最後のプログラミング／消去（Ｐ／Ｅ）動作に対応する、当分野で称する所の時間ラベルすなわち「タイムスタンプ」として使用されてよい。メモリブロックのラベルは、当該ブロックに対する消去動作の後で第１のプログラミング中に保存される。
【００４４】
状態レジスタ２１８は、状態レジスタに保存されている値が所定の閾値（２１９）を上回る量だけ増える毎に警報信号２２０を生成すべく適合されている。当該閾値は、複数のメモリブロックの最短保持期間、または当該時間の一部、例えば半分または三分の一に対応している。
【００４５】
従って、状態レジスタ２１８による警報信号２２０の発信は、温度センサが監視するフラッシュメモリ内のデータ消失の切迫度を示している。
【００４６】
警報信号は、対応する時間ラベルの関数として、各メモリブロックについてデータリフレッシュサイクルを実行すべきであるか否かを判定するＳＳＤディスク１１０のマイクロコントローラ１１４へ渡される。
【００４７】
一実施形態において、状態レジスタ２１８への保存は、２種類のメモリ技術、すなわちＤＲＡＭまたはＳＲＡＭ型の第１の揮発性メモリ、およびＥＥＰＲＯＭまたはフラッシュ型の第２の不揮発性メモリを同時に用いて実行することができる。
【００４８】
状態レジスタ２１８の揮発性メモリは、Ａ−タイマの動作中に周期的に更新される。システムが停止する毎に状態レジスタ２１８の揮発性メモリに保存されている値が不揮発性メモリへ転送され、システムが起動する毎に不揮発性メモリに保存されている値が揮発性メモリへ転送される。
【００４９】
状態レジスタ２１８に保存されている値の更新タイミングはクロック生成器２２２により調整される。一実施形態において、クロック生成器２２２は、システムクロック信号により入力が駆動される周波数分割器として実装された低周波生成器である。一変型実装において、低周波生成器は、低周波発振器、例えばＮＥ５５５型の回路等として実装されている。
【００５０】
図３に、図２に記述する本発明の装置の一変型実装を示しており、符号化器２１４がマルチプレクサ３１５に結合されたレジスタ３１４のバンクで代替されている。従って、図３の装置は、アナログ／デジタルコンバータＡＤＣ３１２に結合された温度センサ３１０、加算器３１６、状態レジスタ３１８、およびクロック生成器３２２を含んでいる。
【００５１】
ＡＤＣの出力によりマルチプレクサ３１５が駆動されて、レジスタ３１４のバンクのレジスタ群の出力を入力として受信する。ＡＤＣから提供された値に従い、マルチプレクサはレジスタ３１４のバンクのレジスタ群の組から１個のレジスタを選択する。選択されたレジスタの値は加算器３１６へ入力として転送される。加算器はまた、状態レジスタに保存されている値を入力として受信する。
【００５２】
状態レジスタ３１８は、状態レジスタに保存されている値が所定の閾値（３１９）を上回る量だけ増える毎に警報信号３２０を生成すべく適合されている。当該閾値は、監視された１個以上のメモリブロックの最短保持期間、または当該時間の一部、例えば半分または三分の一に対応している。
【００５３】
従って、状態レジスタ３１８による警報信号３２０の発信は、温度センサが監視する１個以上のメモリ内のデータ消失の切迫度を示している。
【００５４】
レジスタ３１４のバンクの各レジスタは、ＡＤＣの出力の関数として加算器へ転送可能な値を含んでいる。図３の変型は、レジスタバンクのレジスタ群の値を変更可能にすることにより本発明の装置をプログラム可能にするものである。従って、有利な特徴として、レジスタ３１４のバンクの値の選択を通じて、本発明の装置を、温度の変化およびフラッシュメモリの保持期間に及ぼす影響を記述する他のモデル、例えば複数のアレニウス曲線の重ね合せにより構築されたモデルに容易に適合させることができる。
【００５５】
有利な特徴として、本発明の装置は、抵抗メモリすなわちＤＲＡＭメモリ等の他の種類のメモリを監視すべく適合されていてよい。更に有利な特徴として、本発明の装置は、ＮＡＮＤ型のＭＬＣまたはＴＬＣフラッシュメモリでも動作可能である。
【００５６】
一実施形態によれば、レジスタ３１４のバンクは、２種類のメモリ技術、すなわちＤＲＡＭまたはＳＲＡＭ型の揮発性メモリ技術、およびＲＯＭ、ＥＥＰＲＯＭまたはフラッシュ型の不揮発性メモリ技術を同時に用いて実装することができる。動作モードにおいて、システムが起動する毎に所望の用途に応じてＡ−タイマ装置の動作に合わせて適合された値が、不揮発性メモリ域からレジスタのバンクの揮発性メモリ領域へ転送され、その後ＡＤＣ３１２から提供された値に応じて選択されて加算器３１６へ送ることができる。
【００５７】
Ａ−タイマ装置のプログラム可能な別の変型において、ＡＤＣの読み取り、増分値の選択、状態レジスタへの値の加算の機能の組がマイクロプロセッサまたはマイクロコントローラにより実行される。マイクロプロセッサは、ＡＤＣの出力（または温度センサが数値を直接提供する場合はその出力）を周期的に読み取り、ＡＤＣの出力端での値の関数として増分値を選択して、当該増分値を状態レジスタに保存されている値に加算すべく適合されている。
【００５８】
図４に、本発明の装置の動作モードに従い警報を生成する一連のステップ４００を示す。方法４００は、１個以上のメモリの温度を測定するステップ４０２から始まる。好適な実装において、１個以上のメモリがフラッシュメモリ型であり、温度測定は、ＳＳＤディスクまたはメモリカード１１０の１個以上のフラッシュメモリに割り当てられた温度センサにより行われる。後続ステップ（４０３〜４０５）において、本方法によりデータ消失が切迫しているか否かを検出して、切迫していれば警報を生成し４０６、さもなければ最初に戻ることができる。
【００５９】
データ消失が切迫していることを判定するステップは、本発明の装置の上述の実装の一つにより実行可能であり、測定された温度の値に基づいて、メモリの保持期間に瞬間温度が及ぼす影響に比例する値（ＡＦ）が決定されて（４０３）、状態レジスタに保存された最後の値（Ｖ）に加算（４０４）される。その結果得られた値（Ｖ’）はその後閾値（Ｔｈ）と比較（４０５）されて、データ消失が切迫しているか否かを示す。結果的に得られた値が閾値を下回っていればデータ消失が切迫していないことが示され、本方法は最初に戻る。結果的に得られた値が閾値よりも大きい場合、監視対象の１個以上のメモリの１個においてデータ消失が切迫していることを示しており、本方法により警報を生成して、監視対象の１個以上のメモリブロックの最短保持期間（または当該時間の一部）に対応する値だけ閾値Ｔｈを増分することにより閾値Ｔｈを更新することが可能になる（４０６）。本方法は、新たなサイクルへ戻ることができる。
【００６０】
警報信号を発信することで、本方法により注目する１個以上のメモリ内の各メモリブロックの残存保持期間の評価が可能になる。一実施形態によれば、残存保持期間の評価は、メモリカード１１０のマイクロコントローラ１１４等のマイクロコントローラにより行われる。所与のＡ−タイマの状態レジスタにより生成された警報信号は、有効なデータを有する１個以上のメモリの各メモリブロックまたはページの残存保持期間を評価するマイクロコントローラへ送られる。
【００６１】
一実施形態において、マイクロコントローラは、警報を生成したＡ−タイマの状態レジスタの現在の状態を、当該Ａ−タイマが監視するメモリ内の各ブロックのラベルと比較する。一実装によれば、各メモリブロックのラベルの記録は、直前に消去されたメモリブロック内でプログラムされた最初のページの後で実行することができる。
【００６２】
状態レジスタの現在の状態とメモリブロックの注目するラベルの差違が所与の閾値よりも大きい場合、本方法は、データ消失が切迫しているか否かを検出すべく、考慮するメモリブロック内のデータに対するリフレッシュサイクルの実行を後続メモリブロックに渡すことができるようにする。データリフレッシュサイクルを起動させるための閾値は、注目するメモリ内の各メモリブロックに対して既に実行されたＰ／Ｅサイクルの回数に依存する。
【００６３】
従って、有利な特徴として、本発明の装置は、正確な時点を示すラベルの提供、および保存されたデータのリフレッシュが必要なメモリブロックの識別を可能にする。
【００６４】
図５に、データリフレッシュ動作を伴う、または伴わない、複数の警報信号の生成を時間軸上に示す。上述のように、Ａ−タイマの状態レジスタの状態を、不揮発性メモリの各ブロックまたは各ページに関連付けられた時間ラベルとして用いることができる。警報に続いて、装置は、状態レジスタの現在の状態と各メモリブロックのラベルの差違を評価すべく構成されている。あるメモリブロックについて、差違が所与の閾値よりも大きい場合、考慮するメモリブロックのデータをリフレッシュする必要がある。しかし、警報が生成される都度全てのブロックのデータがリフレッシュされるのを防止すべく、警報間の期間「Ｔ」は、データの最短保持期間「τ」より短くなるように選ばれている。図示する例において、警報の間隔は、２個のメモリブロック（Ｂ１、Ｂ２）の保持期間が「τ」に等しい場合、「Ｔ＝τ／２」である。２個のメモリブロックへのアクセスが、時点ｔ（ｉ）およびｔ（ｉ＋１）で生成された２個の連続的な警報間にプログラムされていれば、時点ｔ（ｉ＋２）で生成された警報の直後にデータをリフレッシュする必要がある。メモリブロックＢ１のデータが自身の保持期間が満了する直前にリフレッシュされるのに対し、メモリブロックＢ２のデータは自身の保持期間が半分満了した時点直後にリフレッシュされる点に注意されたい。このことは、有効保存時間が保持期間よりも０〜Ｔの値だけ短いことを示しており、警報間でなるべく短い期間Ｔを有する利点を正当化するものである。「Ｔ＝τ／ｎ」の場合、各メモリブロックをｎ警報毎にリフレッシュする必要がある。これにより、異なる消耗状態にある、すなわち多くのＰ／Ｅサイクルおよび異なる保持期間を有するメモリブロックを考慮に入れることができる。従って、本発明の装置および方法は、１個以上の不揮発性メモリの全てのブロックの保持期間の監視に、たとえこれらのブロックが時間経過に伴い相関しない時点で書かれた不均一なデータを含んでいても、またはこれらのブロックが異なる消耗レベル、例えば異なるプログラミング／消去（Ｐ／Ｅ）サイクルの回数を有している場合であっても適用することができる。特定のメモリブロックは図５に示すように２個の警報毎にリフレッシュすべく構成されているのに対し、他のメモリブロックは３個以上の警報毎にリフレッシュすべく構成されている。有利な特徴として、Ａ−タイマ装置は、（ｉ）Ａ−タイマの状態レジスタが一切ゼロにリセットされることなく常に増分され、かつ（ｉｉ）状態レジスタに保存されている値が、警報信号の生成後に再計算される所定の閾値を上回る量だけ増大される毎に警報信号が生成されるという事実に起因して、複数の警報に跨る持続期間にわたり監視およびリフレッシュポリシーを決定すべく構成されている。本明細書の記述は本発明の好適な実装を示すが本発明を限定するものではない。各種の例は本発明の原理および具体的な用途を正しく理解いただけるよう選択されているが、一切網羅的ではなく、当業者において同一原理を維持しながら変更および変型実装を導入できる筈である。
【００６５】
本発明は、ハードウェアおよび／またはソフトウェア要素に基づいて実施できる。本発明はプログラム製品としても入手可能である。
【図１】
2019530124.tif 000004
【図２】
2019530124.tif 000005
【図３】
2019530124.tif 000006
【図４】
2019530124.tif 000007
【図５】
2019530124.tif 000008
【国際調査報告】
2019530124.tif 000009
2019530124.tif 000010
2019530124.tif 000011
2019530124.tif 000012
2019530124.tif 000013
2019530124.tif 000014