ECC とスペア ブロックで Kingston SSD データのエラーを防ぎます

エンドツーエンドのデータ保護

Kingston製のすべての SSD にはエンドツーエンドのデータ保護機能が内蔵され、ユーザーのデータがホストシステムによって SSD に転送されると直ちに保護され、次に SSD からホストコンピュータに転送された時にも保護されます。

SSD 内部のデータ転送

すべての SSD にはコントローラが内蔵されており、これは接続したホストシステムとの通信を可能にします。SSD に対するデータの書き込みや読み取りはこの SSD コントローラを経由して行われ、SSD のフォームファクタ (2.5"、アドインカード、M.2 など) や使用するプロトコル (たとえば、SATA や NVMe) は無関係です。

現在利用可能な多くの SSD コントローラのデザインが存在します。一部の SSD コントローラには、コントローラの設計の一部として内蔵キャッシュ (主に SRAM) が組み込まれていますが、多くのコントローラでは、ディスクリート DRAM チップを利用して、内部のフラッシュマッピングテーブルや処理中のユーザーデータの一時的な保存に使用されます。中には、ディスクリート DRAM を使用せずに、代わりにマッピングテーブル用のストレージとして NAND フラッシュの一部を使用するように設計されたコントローラもあります。

SSD は、データ記憶能力を NAND フラッシュチップに依存しています。NAND チップは、電源がオフになってもデータを保存する不揮発性の記憶装置です。SSD コントローラがデータを格納または取得する必要がある場合、SSD コントローラは NAND フラッシュチップに対して書き込みまたは読み取りを行なわねばなりません。

エラーの検出と訂正

データがホスト PC から、SSD コントローラを経由して、NAND ストレージに移動する時、SSD はデータの整合性を維持する必要があります。ホストから SSD へのデータ転送は、データが実際に NAND フラッシュストレージに書き込まれる前の状態を指して、「飛行中のデータ (Data in flight)」あるいは「転送中のデータ (Data in transit)」と呼びます。SSD コントローラには、エラー訂正技術 (Error Correction Code、すなわち ECC) が組み込まれており、この軌道に沿ってデータに影響を与える可能性のある大部分のエラーを検出し、修正します。フラッシュメモリチップは、追加のエラー訂正情報と、書き込まれるすべてのデータブロックとを保存します。この情報により、SSDコントローラはデータブロックを読み取るときに多くのエラーを同時に訂正することができます。NAND フラッシュメモリはハードディスクドライブと同じように、通常の動作中にビットエラーが発生した場合に、ECC データで直ちに訂正します。

データがホスト PC から、SSD コントローラを経由して、NAND ストレージに移動する時、SSD はデータの整合性を維持する必要があります。ホストから SSD へのデータ転送は、データが実際に NAND フラッシュストレージに書き込まれる前の状態を指して、「飛行中のデータ (Data in flight)」あるいは「転送中のデータ (Data in transit)」と呼びます。SSD コントローラには、エラー訂正技術 (Error Correction Code、すなわち ECC) が組み込まれており、この軌道に沿ってデータに影響を与える可能性のある大部分のエラーを検出し、修正します。フラッシュメモリチップは、追加のエラー訂正情報と、書き込まれるすべてのデータブロックとを保存します。この情報により、SSDコントローラはデータブロックを読み取るときに多くのエラーを同時に訂正することができます。NAND フラッシュメモリはハードディスクドライブと同じように、通常の動作中にビットエラーが発生した場合に、ECC データで直ちに訂正します。

エンタープライズ SSD の場合は通常、10~16 ビットの読み取り値として評価されます。JEDEC JEDS218A および JESD219 UBER の企業対クライアント SSD 要件によると、エンタープライズクラスの SSD は、通常10 兆ビット(〜1.11 ペタバイト)ごとに 1 ビットの割合で 1 つの回復不可能なビットエラーが発生することが示されています。

Kingstonの SSD は、NAND フラッシュデバイスに「スペアブロック」を組み込んでいます。これらのストレージ領域は通常、ドライブのオーバー・プロビジョニング (OP) 領域にあり、ユーザーはアクセスできません。NAND デバイスがデータブロックに過度のエラーを有する場合、そのブロックは「不良ブロック」としてマークされ、リタイアされます。代わりにスペアブロックの 1 つが不良となったブロックの役割を引き継ぎます。このプロセスでは、必要に応じて ECC を使用してデータが修正されます。「スペアブロック」の使用により、SSDドライブの耐用年数および耐久性が向上します。