(57)【要約】【課題】不揮発性メモリの長寿命化が可能な記憶システムを得る。【解決手段】実施形態の記憶システム１００は、ディスク状記録媒体１４と、不揮発性メモリ１６と、少なくとも前記不揮発性メモリの近傍の温度を測定する温度測定手段１７と、閾値温度を保持する閾値温度記憶手段２１と、ホスト１からデータの書き込み命令を受けると、前記温度測定手段が測定した温度が前記閾値温度より高い場合は当該データを前記不揮発性メモリに書き込む制御手段と、を備える。【選択図】図１
2014026451.tif 000002
【特許請求の範囲】
【請求項１】
ディスク記録媒体と、
不揮発性メモリと、
前記不揮発性メモリの近傍の温度を測定する温度測定手段と、
閾値温度を保持する閾値温度記憶手段と、
ホストからデータの書き込み命令を受けると、前記温度測定手段が測定した温度が前記閾値温度より高い場合は当該データを前記不揮発性メモリに書き込む制御手段と、
を備える記憶システム。
【請求項２】
前記制御手段は、前記温度測定手段が測定した温度が前記閾値温度より低い場合は前記データを前記ディスク状記録媒体に書き込む
請求項１に記載の記憶システム。
【請求項３】
前記ディスク記録媒体と前記不揮発性メモリは近傍に設置され、
前記制御手段は、前記温度測定手段が測定した温度が前記閾値温度より低い場合は、前記ディスク記録媒体を回転させるモータが回転していない場合は回転させて、前記温度測定手段が測定した温度を再び確認し、前記閾値温度より高い場合は前記データを前記不揮発性メモリに書き込む
請求項１または２に記載の記憶システム。
【請求項４】
前記不揮発性メモリへの書き込み回数に関連する値を保持するライト回数カウンタと、
前記不揮発性メモリへの書き込み時の温度に対応する重み付け係数を保持する記憶手段と、
をさらに備え、
前記制御手段は、ホストからデータの書き込み命令を受けると、前記温度測定手段が測定した温度が前記閾値温度より高い場合は前記温度測定手段が測定した温度に対応する前記重み付け係数に基づく値を前記ライト回数カウンタに加算して前記データを前記不揮発性メモリへ書き込み、前記ライト回数カウンタの値が所定の値を超えた場合は前記不揮発性メモリへ書き込みを行わない
請求項１から３の何れか１項に記載の記憶システム。
【請求項５】
前記重み付け係数は、低い温度に対応するものになるほど同じか或いは小さい値となる
請求項４に記載の記憶システム。
【請求項６】
前記重み付け係数に基づく値は、前記データの書き込みブロック数に前記重み付け係数を乗じた値である
請求項４または５に記載の記憶システム。
【請求項７】
前記不揮発性メモリは前記ディスク状記録媒体のキャッシュメモリである
請求項１〜６のいずれか１項に記載の記憶システム。
【請求項８】
ディスク状記録媒体と、不揮発性メモリと、少なくとも前記不揮発性メモリの近傍の温度を測定する温度測定手段と、閾値温度を保持する閾値温度記憶手段と、を備えた記憶システムのデータ書き込み方法であって、
ホストからデータの書き込み命令を受けると、前記温度測定手段が測定した温度が前記閾値温度より高い場合は当該データを前記不揮発性メモリに書き込む
記憶システムのデータ書き込み方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、記憶システムおよび記憶システムのデータ書き込み方法に関する。
【背景技術】
【０００２】
例えば、ディスク状記録媒体と不揮発性メモリとを備えた情報記録装置において、書き換え回数や消去回数等の不揮発性メモリの状態を示すステータス情報を取得してそれに基づいて不揮発性メモリがエラーを発生し易い状態であるか否かを判断する技術が開示されている。また、不揮発性メモリへの書き込みを行う際、不揮発性メモリの温度が所定範囲内か否かを判定し、所定温度範囲外の場合は書き込みを禁止する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−１９３８６５号公報
【特許文献２】特開平１１−２０５７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
不揮発性メモリと他の記憶媒体を組み合わせたハイブリッド記憶システムにおいて、不揮発性メモリの書き込み劣化の温度依存性を考慮したシステムが求められていた。
【０００５】
本発明の一つの実施形態は、不揮発性メモリの長寿命化が可能な記憶システムおよび記憶システムのデータ書き込み方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一つの実施形態の記憶システムは、ディスク状記録媒体と、不揮発性メモリと、少なくとも前記不揮発性メモリの近傍の温度を測定する温度測定手段と、閾値温度を保持する閾値温度記憶手段と、ホストからデータの書き込み命令を受けると、前記温度測定手段が測定した温度が前記閾値温度より高い場合は当該データを前記不揮発性メモリに書き込む制御手段と、を備える。
【図面の簡単な説明】
【０００７】
【図１】図１は、第１の実施形態にかかる記憶システムの構成を示すブロック図である。
【図２】図２は、第１の実施形態にかかる記憶システムのデータ書き込み方法のフローチャートである。
【図３】図３は、第２の実施形態にかかる記憶システムの構成を示すブロック図である。
【図４】図４は、第２の実施形態にかかる記憶システムのデータ書き込み方法のフローチャートである。
【図５】図５は、第３の実施形態にかかる記憶システムの構成を示すブロック図である。
【図６】図６は、第３の実施形態にかかる記憶システムのデータ書き込み方法のフローチャートである。
【図７】図７は、第３の実施形態にかかる温度範囲毎の重み付け係数（α）をテーブル化した図である。
【発明を実施するための形態】
【０００８】
以下に添付図面を参照して、実施形態にかかる記憶システムおよび記憶システムのデータ書き込み方法を詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
【０００９】
（第１の実施形態）
本実施形態にかかる記憶システムは、例えば、磁気ディスクと不揮発性メモリを備えたハイブリッドドライブである。ハイブリッドドライブでは、不揮発性メモリは例えばライトキャッシュとして用いられる。即ち、ホストからのデータは、まず、キャッシュメモリとして用いられる不揮発性メモリに一旦書き込まれる。そして、その後ＨＤＤに書き込まれる。
【００１０】
図１は、第１の実施形態にかかる記憶システム１００の構成を示すブロック図である。記憶システム１００は、ホストインタフェース（ＩＦ）１１、コントローラ１２、ディスクインタフェース（ＩＦ）１３、磁気ディスク１４（ディスク状記録媒体）、不揮発性メモリコントローラ１５、不揮発性メモリ１６、温度計１７（温度測定手段）、および閾値温度メモリ２１を備える。記憶システム１００は、ホストインタフェース（ＩＦ）１１を介してホスト（機器）１と接続する。コントローラ１２は、ディスクインタフェース（ＩＦ）１３を介して磁気ディスク１４を制御し、不揮発性メモリコントローラ１５は、不揮発性メモリ１６を制御する。温度計１７は不揮発性メモリ１６の近傍に配置されることが好ましく、不揮発性メモリ１６或いはその近傍の温度を測定することができる。閾値温度メモリ２１は、後述する所定の閾値温度を保持するメモリであり、ＲＡＭ或いは不揮発性メモリであっても良いし、磁気ディスク１４または不揮発性メモリ１６の一部などであってもよい。
【００１１】
記憶システム１００の動作を、図１および図２のフローチャートを用いて説明する。まず、ホスト１からのライト（書き込み）命令をコントローラ１２が受ける（ステップＳ１１）。コントローラ１２は、温度計１７より不揮発性メモリ１６におけるデータ書き込み時の温度を検出して（ステップＳ１２）、不揮発性メモリ１６あるいは磁気ディスク１４のどちらに書き込むかを判断する（ステップＳ１３）。即ち、ホスト１からのライト命令があった場合に、温度計１７の温度が閾値温度メモリ２１に保持された所定の閾値温度以下（ステップＳ１３：Ｎｏ）であれば磁気ディスク１４へ書き込む（ステップＳ１４）。閾値温度以上の場合（ステップＳ１３：Ｙｅｓ）には不揮発性メモリ１６に書き込む（ステップＳ１５）。これにより、低温時に不揮発性メモリ１６への書き込みをしなくすることができ、不揮発性メモリ１６の劣化を低減して長寿命化を図ることができる。
【００１２】
（第２の実施形態）
図３は、第２の実施形態にかかる記憶システム２００の構成を示すブロック図である。図３は、図１にスピンドルモータ(SPM)１８が追記される構成を示す。第２の実施形態にかかる記憶システム２００の動作を、図３および図４のフローチャートを用いて説明する。本実施形態にかかる記憶システム２００において、磁気ディスク１４と不揮発性メモリ１６は近傍に設置されているものとする。本実施形態にかかる図４のステップＳ２１、Ｓ２２、Ｓ２３、およびＳ２５は、第１の実施形態にかかる図２のステップＳ１１、Ｓ１２、Ｓ１３、およびＳ１５と同様である。
【００１３】
第１の実施形態と異なる点を説明する。本実施形態においては、ステップＳ２３で、閾値温度以下であった場合（ステップＳ２３：Ｎｏ）に、磁気ディスク１４が備えるスピンドルモータ(SPM)１８が回転中かどうかを確認する（ステップＳ２４）。スピンドルモータ(SPM)１８が回転中であったら（ステップＳ２４：Ｙｅｓ）、磁気ディスク１４へ書き込む（ステップＳ２６）。スピンドルモータ(SPM)１８が回転していない場合（ステップＳ２４：Ｎｏ）には、スピンドルモータ(SPM)１８の起動を行う（ステップＳ２７）。これにより磁気ディスク装置の温度が上昇する。その結果、磁気ディスク１４の近傍に配置された不揮発性メモリ１６周辺の温度が上昇する可能性がある。この温度上昇は温度計１７により検出され得る。従って、スピンドルモータ(SPM)１８の起動後に再びステップＳ２２およびＳ２３に進むことで、温度計１７の温度が所定の閾値温度以上になった場合（ステップＳ２３：Ｙｅｓ）には不揮発性メモリ１６に書き込む（ステップＳ２５）ことが可能となる。これにより、低温環境でも、不揮発性メモリ１６の劣化を低減させかつ高速な書き込みが可能になる。なお、所定の閾値温度以下（ステップＳ２３：Ｎｏ）であれば、すでにスピンドルモータ(SPM)１８は起動しているので（ステップＳ２４：Ｙｅｓ）、磁気ディスク１４へ書き込む（ステップＳ２６）。
【００１４】
（第３の実施形態）
図５は、第３の実施形態にかかる記憶システム３００の構成を示すブロック図である。記憶システム３００は、ホストインタフェース（ＩＦ）１１、コントローラ１２、ディスクインタフェース（ＩＦ）１３、磁気ディスク１４、不揮発性メモリコントローラ１５、不揮発性メモリ１６、温度計１７（温度測定手段）、ライト回数カウンタ１９、閾値メモリ２２およびメモリ２０を備える。図１と異なる構成要素を以下に説明する。ライト回数カウンタ１９は、不揮発性メモリ１６への書き込み回数を数えるカウンタであって不揮発性メモリ１６に保持されているカウント値を一時記憶するＲＡＭ或いは不揮発性メモリであっても良いし、不揮発性メモリ１６の一部などであってもよい。ライト回数カウンタ１９は不揮発性メモリ１６への書き込みが発生する度に後述する様にカウンタの値が加算されて行く。メモリ２０は、磁気ディスク１４または不揮発性メモリ１６に保持されている重み付け係数のテーブルの情報を一時記憶する記憶手段であって、ＲＡＭ或いは不揮発性メモリであっても良いし、磁気ディスク１４または不揮発性メモリ１６の一部などであってもよい。閾値メモリ２２は、ライト回数カウンタ１９の値と比較する所定の閾値を保持する記憶手段であって、ＲＡＭ或いは不揮発性メモリであっても良いし、不揮発性メモリ１６の一部などであってもよい。なお、この閾値は、不揮発性メモリ１６の寿命試験などによりあらかじめ定められた値である。
【００１５】
第３の実施形態にかかる記憶システム３００の動作を、図５および図６のフローチャートを用いて説明する。まず、ホスト１からのライト命令をコントローラ１２が受ける（ステップＳ３１）と、「不揮発性メモリ不使用モード」であるか否かが判定される（ステップＳ３２）。不揮発性メモリ１６は書き換え回数に制限がある。従って、本実施形態の記憶システム３００は、不揮発性メモリ１６が所定の書き換え回数に達していると推定される場合は、不揮発性メモリ１６は使用しないで直接磁気ディスク１４へ書き込む「不揮発性メモリ不使用モード」を有している。よって、「不揮発性メモリ不使用モード」である場合（ステップＳ３２：Ｙｅｓ）は、磁気ディスク１４へ書き込む（ステップＳ３３）。
【００１６】
「不揮発性メモリ不使用モード」でない場合（ステップＳ３２：Ｎｏ）は、ライト回数カウンタ１９の値を確認して、閾値メモリ２２に保持されている所定の閾値を超えているか否かを確認する（ステップＳ３４）。カウンタの値が閾値を超えている場合（ステップＳ３４：Ｙｅｓ）には、ホスト１からのデータライト命令に対して、磁気ディスク１４に直接書き込む「不揮発性メモリ不使用モード」に切り替え（ステップＳ３５）、磁気ディスク１４へ書き込む（ステップＳ３３）。
【００１７】
ライト回数カウンタの値が閾値を超えていない場合（ステップＳ３４：Ｎｏ）には、温度計１７の温度を検出して（ステップＳ３６）、検出された温度に対応する重み付け係数（α）を図７に示すテーブルから参照する（ステップＳ３７）。図７に示すテーブルは、温度範囲毎の重み付け係数（α）をテーブル化したものであり、記憶システム３００内のメモリ２０に保持されている。不揮発性メモリ１６への書き込み時の温度が低いほど不揮発性メモリ１６の劣化を促進することを反映して、図７のテーブルにおける重み付け係数（α）は低い温度になるほど大きい値になっている。そして、計測された温度に対応する重み付け係数（α）を用いて、ライト回数カウンタ１９に（α×書き込みブロック数）を足し合わせて（ステップＳ３８）、不揮発性メモリ１６に書き込む（ステップＳ３９）。即ち、本実施形態においては、不揮発性メモリ１６への書き込み時の温度によって、ライト回数カウンタ１９への加算値の重みを変化させる。これにより、不揮発性メモリ１６の書き換え寿命到達の予想の精度が向上し、不揮発性メモリ１６の使用限界まで書き込みを実行しつつ不揮発性メモリ１６が寿命に達する前に書き込みを停止してデータリードエラーの発生を低減することが可能となる。
【００１８】
また、第１の実施形態と組み合わせて、ステップＳ３６の温度確認時に所定の閾値温度以下である場合は、磁気ディスク１４へ書き込む（ステップＳ３３）分岐を設けてもよい。さらに、第２の実施形態と組み合わせて、ステップＳ３６の温度確認時に所定の閾値温度以下である場合は、スピンドルモータ(SPM)１８が回転中かどうかを確認して、回転していない場合は、スピンドルモータ(SPM)１８の起動を行ってから再度ステップＳ３６の温度確認をするようにしてもよい。また、上記実施形態においては、磁気ディスクと不揮発性メモリを備えたハイブリッドドライブを例として説明したが、磁気ディスク装置（ＨＤＤ装置）とＳＳＤ（Solid State Drive）装置のように別装置を組み合わせた記憶システムであってもよい。
【００１９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００２０】
１  ホスト（機器）、１４  磁気ディスク、１６  不揮発性メモリ、１００，２００，３００  記憶システム。
【図１】
2014026451.tif 000003
【図２】
2014026451.tif 000004
【図３】
2014026451.tif 000005
【図４】
2014026451.tif 000006
【図５】
2014026451.tif 000007
【図６】
2014026451.tif 000008
【図７】
2014026451.tif 000009