この記事では、SSDが劣化する理由について説明します。
概要
ソリッド ステート デバイスが劣化するのはなぜでしょうか。
フラッシュ ベースSSDの書き込み寿命が限られている理由を説明するために、フラッシュの仕組み、フラッシュ タイプによる違い、および機能を向上させるために使用される手法について見ていきます。
フラッシュ メモリー デバイスはページ単位で読み取りおよび書き込みされます。アドレスを伴う読み取りコマンドが発行されそれぞれのデータが返されるため、読み取りは比較的簡単です。書き込みは消去されたページに対してのみ実行できるので、ホスト書き込みコマンドはフラッシュに書き込む前にフラッシュ消去サイクルを呼び出します。この書き込み/消去のサイクルによってセルの劣化が発生するため、書き込み寿命の制限が発生します。
NANDフラッシュ デバイスは、シングルレベル セル(SLC)またはマルチレベル セル(MLC)のいずれかです。SLCは1ビットの情報のみを格納し、0または1を表す2つの電圧レベルのみを必要とします。これは、NANDの最も簡単な実装であり、最大の耐久性を備えていて、その耐久性は10万サイクル前後です。フラッシュの将来の世代は形状がより小さく、耐久性が低下します(すでに5万サイクルが出現しています)。MLCは通常2ビットの情報を格納し、00、01、10、11を表す4つの電圧レベルを必要とします。セルの劣化はSLCとMLCで似ていますが、より多くの電圧レベルを感知する必要があるため、耐久性レベルは大幅に低下します。MLCは通常約10,000ですが、新しい世代では3,000~5,000サイクルとより低くなっています。
フラッシュSSDは、大容量を達成するために大量のフラッシュ ダイで構成されています。SSDの書き込み寿命を延長するために使用されるいくつかのテクニックは、両方のNANDタイプに適用できます。ホストの書き込みによるアクセスが、ホット スポットの原因になる可能性がある任意の場所に発生する可能性があります。これにより、これらの場所の中での劣化が生じます。「劣化の平準化」と呼ばれるテクニックは、ホット スポットを防止するために使用されます。劣化の平準化によって、書き込みアクセスがSSDの総容量全体で均等に分散されます。書き込み増幅係数は、ホストの書き込みに対するフラッシュへの書き込み数の比率を表したものです。たとえば、ホスト書き込みごとに2つのフラッシュ書き込みが生成された場合、書き込み増幅係数も2になります。書き込み増幅係数を減少させるために、オーバープロビジョニングと呼ばれるテクニックを採用すると、ガベージ コレクションの効率が向上します。これにより、書き込み増幅係数が減少します。最後に、MLCに通常適用される手法では、書き込みサイクル中に低電圧レベルを使用してセルの摩耗を軽減し、書き込み耐久性を向上させます。
SSDの寿命を正確に判断するのは困難ですが、推定するために役立つガイドラインが提供されています。SSDはJEDECによって開発されたTBW(terabytes written、総書き込み容量)と呼ばれる指標を使用します。実際の書き込み寿命が作業負荷プロファイル(たとえば、ランダムまたはシーケンシャル、ブロック長、または書き込みアクティビティ)の影響を受ける一方、TBWは概算を提供するものですが実際の値は場合により異なります。予想される寿命を決定するために、TBWを使用し、ドライブへの書き込みの予想される平均BWで割ったものがあります。一般的に、非常に要求の厳しいアプリケーションの場合を除き、SSDの寿命は3年を超えると想定されます。
劣化レベル
フラッシュ変換レイヤ(FTL)を使用するデータ・ストレージ・アプリケーションとシステムでは、一般的に、プログラムと消去の繰り返しサイクルが発生するため、NAND型フラッシュメモリが劣化する傾向があります。メモリの同じ位置でプログラムと消去を継続的に行うと、最終的にメモリの一部分が消耗し、使用できなくなります。この結果、NAND型フラッシュの寿命も制限が課されます。このような状況の発生を防ぐために、劣化の平準化と呼ばれる特殊なアルゴリズムがSSD内に導入されるようになりました。この言葉が示すように、劣化の平準化とは、SSD内のすべてのメモリブロックで、プログラムと消去サイクルを均等に分散化します。これにより、プログラムと消去サイクルが同じメモリー ブロックに連続して行われることが回避され、NAND型フラッシュ メモリー全体の寿命が大幅に延びます。
劣化の平準化には、動的と静的の2種類があります。動的な劣化の平準化アルゴリズムでは、データプログラムと消去サイクルが、NAND型フラッシュ内のすべてのブロックにわたり、確実に均等分散されます。このアルゴリズムは、ドライブの書き込みバッファ内のデータがフラッシュされフラッシュメモリに書き込まれるたびに実行されるので、動的です。ただし、動的な劣化の平準化だけでは、すべてのブロックを同じ率で劣化を平準化させることはできません。また、データを書き込んだ際に、データが長期間または恒久的にフラッシュ内に保存されるといった特殊なケースもあります。その他のブロックは、アクティブにスワップ、消去、プールされる一方、このようなブロックは、劣化の平準化処理中、非アクティブのままとなります。劣化の平準化が、すべてのブロックに対して同じ率で確実に行われるように、静的な劣化の平準化と呼ばれる二次的な劣化の平準化アルゴリズムが導入されています。静的な劣化の平準化は、非アクティブでデータが保存された状態のブロックに対応します。
Dell製SSDドライブには、静的および動的の両方の劣化の平準化アルゴリズムが組み込まれているため、NANDブロックが均等に摩耗されるようになり、SSDの寿命が大幅に延びます。
オーバー プロビジョニング
オーバー プロビジョニングを実施すると、次の機能が向上します。