CFexpress仕様概要


1.1 概要


DelkinのCFXは、PCIe Gen3 x2インターフェイスを備えたフラッシュディスクです。 CFXは128GBから512GBまでの容量(1TBも発売予定)を揃え、最大1550 MB / sの読み取りと950 MB /秒の高性能書き込みが可能な仕様です。低消費電力により、高性能の組み込みプラットフォームにとって理想的なストレージの選択肢となります。


1.3 フラッシュ管理


1.3.1 エラー訂正コード(ECC)
フラッシュメモリセルは、使用に伴って劣化し、記憶されたデータにランダムビットエラーが発生することがあります。したがって、DelkinのCFX PCIe SSDは、データエラーを検出して訂正してデータが正しく読み取られ、破損しないようにデータを保護できるStrongECCTM(SECC)アルゴリズムを採用しています。

1.3.2 ウェアレベリング
NANDフラッシュデバイスは、フラッシュメディアが使用されていないときに限られた数のプログラム/消去サイクルを受けることができます
均等に、いくつかのブロックは他よりも頻繁に更新され、デバイスの寿命は大幅に短縮されます。したがって、摩耗平準化を適用して、書き込みおよび消去サイクルを媒体にわたって均等に分散させることによって、NANDフラッシュの寿命を延ばすことができます。
Delkinは、フラッシュメディア領域全体にフラッシュ使用を効率的に広げることができる高度なウェアレベリングアルゴリズムを採用しています。さらに、動的および静的ウェアレベリングアルゴリズムの両方を実装することにより、NANDフラッシュの寿命が大幅に改善されます。

1.3.3 不良ブロック管理
不良ブロックとは、正常に機能しないブロックや無効ビットが多く含まれるブロックであり、格納されたデータが不安定になり、信頼性が保証されません。メーカーによって識別され、不良としてマークされたブロックは、「初期不良ブロック」と呼ばれます。フラッシュの寿命の間に開発された不良ブロックは、「不良ブロック」と呼ばれます。 Delkinは、効率的な不良ブロック管理アルゴリズムを実装して、工場で製造された不良ブロックを検出し、使用中に発生する不良ブロックを管理します。この方法は、データが不良ブロックに格納されるのを防ぎ、データの信頼性をさらに向上させます。

1.3.4 トリム
TRIMは、ソリッドステートドライブ(SSD)の読み取り/書き込みパフォーマンスと速度を向上させる機能です。ハードディスクドライブ(HDD)とは異なり、SSDは既存のデータを上書きすることができないため、使用ごとに使用可能なスペースが徐々に小さくなります。 TRIMコマンドを使用すると、オペレーティングシステムはSSDに通知して、もはや使用されていないブロックを永久に削除することができます。したがって、SSDは消去動作を実行し、未使用データが常にブロックを占めるのを防止する。

1.3.5 スマート
セルフモニタリング、分析およびレポートテクノロジの頭字語であるSMARTは、ソリッドステートドライブが自動的にその状態を検出し、潜在的な障害を報告することを可能にするオープンスタンダードです。 SMARTによって障害が記録されると、予期しない停止やデータの消失を防ぐためにドライブを交換することができます。さらに、SMARTは、別のデバイスにデータを保存するなどの積極的なアクションを実行する時間がまだある間に、ユーザーに差し迫った障害を知らせることができます。

1.3.6 オーバープロビジョニング
オーバープロビジョニングとは、SSDに余分なNAND容量を含めることを指します.SSDはユーザーには見えず、ユーザーが使用できません。したがって、SSDコントローラは、より良いパフォーマンスとWAFのために追加のスペースを利用することができます。オーバープロビジョニングでは、コントローラにP / Eサイクルを管理するための追加スペースを提供することで、パフォーマンスとIOPS(1秒あたりの入出力操作数)が向上し、信頼性と耐久性が向上します。さらに、コントローラがデータをフラッシュに書き込むときに、SSDの書き込み増幅がより低くなる。

1.3.7 ファームウェアのアップグレード
ファームウェアは、デバイスとホストとの通信方法に関する一連の命令と考えることができます。ファームウェアは、新しい機能が追加されたり、互換性の問題が修正されたり、読み書きのパフォーマンスが向上したりすると、アップグレードできます。

1.3.8 サーマルスロットリング
サーマルスロットリングの目的は、SSD内のコンポーネントが読み書き操作中に過熱するのを防ぐことです。デルキンのCFXはオン・ダイ温度センサーで設計されており、その精度により、ファームウェアは様々なレベルのスロットリングを適用して、SMARTの読み取りによって効率的かつ予防的に保護の目的を達成することができます。


1.4  GuaranteedFlush™


GuaranteedFlushTMは、予期せぬ電源障害時のデータ損失を防止するためのメカニズムです。 Delkinのコントローラは、コントローラにデータをキャッシュに転送するように要求するGuarenteedFLushテクノロジを適用します。データがNANDフラッシュに完全にコミットされた場合のみ、コントローラはホストに肯定応答(ACK)を送信します。そのような実装は、偽陽性のパフォーマンスと電源サイクル問題のリスクを防ぐことができます。


1.5 高度なデバイスセキュリティ機能


1.5.1 安全な消去
Secure Eraseは標準のNVMeフォーマットコマンドで、すべてのセルにすべて "0xFF"を書き込んで、ハードドライブとSSDのすべてのデータを完全に消去します。このコマンドが発行されると、SSDコントローラはストレージブロックを消去し、出荷時のデフォルト設定に戻ります。

1.5.2 暗号の消去
Crypto Eraseは、ディスクの暗号鍵をリセットすることにより、OPALで起動するSSDまたはSED(Security-Enabled Disk)ドライブのすべてのデータを消去する機能です。キーが変更されるので、以前に暗号化されたデータは無用になり、データセキュリティの目的が達成されます。

1.5.3 物理的プレゼンスSID(PSID)
物理的プレゼンスSID(PSID)は、TCG OPALによって32文字の文字列として定義されており、ドライブがまだOPALでアクティブ化されているときにSSDを製造時の設定に戻すことを目的としています。 OPAL起動SSDがPSID復帰機能をサポートしている場合、PSIDコードをSSDラベルに印刷することができます。


1.6  SSDライフタイム管理


1.6.1 テラバイト(TBW)
TBW(テラバイト)は、デバイスに書き込まれるデータの量を表すSSDの予想寿命の測定値です。 SSDのTBWを計算するには、次の式が適用されます。
TBW = [(NAND耐量)×(SSD容量)] / [WAF]
NAND耐久性:NAND耐久性は、NANDフラッシュのP / E(プログラム/消去)サイクル定格を製造業者の仕様に従って参照します。
SSD容量:SSD容量は、SSD全体の特定の容量です。
WAF:Write Amplification Factor(WAF)は、SSDコントローラがフラッシュに書き込むデータ量とホストのフラッシュコントローラが書き込むデータ量の比を表す数値です。より良いWAF(1に近い)は、フラッシュメモリに書き込まれるデータの耐久性と低頻度を保証します。
この文書のTBWは、JEDEC 218/219ワークロードに基づいています。

1.6.2 メディアウェアインジケータ
SMARTによって報告された実際の寿命インジケータ属性バイトインデックス[5]、使用率、100%に達するとドライブを交換するようにユーザーに推奨します。

1.6.3 読み取り専用モード(終了時)
ドライブが累積されたプログラム/消去サイクルによってエージングされると、メディアが枯渇して、後で不良ブロックが増加する可能性があります。使用可能なグッドブロックの数が定義された使用可能な範囲外になると、ドライブはAERイベントを介してホストに通知し、重大な警告は読み取り専用モードに移行してデータの破損を防止します。これは、ユーザーに直ちにドライブを別のドライブに交換するように通知します。


1.7 パフォーマンスチューニングへの適応アプローチ


1.7.1 スループット
ディスクの空き容量に基づいて、DelkinのSSDは読み取り/書き込み速度を調整し、スループット性能を管理します。十分な空き領域が残っていると、ファームウェアは読み取り/書き込み動作を継続して行います。この段階では、ガーベジコレクションを実装してメモリを割り当てたり解放したりする必要はなく、読み込み/書き込み処理を高速化してパフォーマンスを向上させます。しかし、空き領域が使い尽くされると、コントローラは読み込み/書き込み処理を遅くし、ガベージコレクションを実装してメモリを解放します。したがって、読み取り/書き込みパフォーマンスが遅くなります。

1.7.2 予測とフェッチ
通常、ホストがPCIe SSDからデータを読み込もうとすると、PCIe SSDは1つのコマンドを受信した後に1つの読み取りアクションしか実行しません。しかし、DelkinのコントローラーはPredict&Fetchを適用して読み取り速度を向上させます。ホストがシーケンシャルリードコマンドをPCIe SSDに発行すると、PCIe SSDは自動的に次のコマンドもリードコマンドとなることを期待します。したがって、次のコマンドを受け取る前に、flashはすでにデータを準備しています。従って、これはデータ処理時間を加速し、ホストはデータを受信するのにそれほど長く待つ必要はない。

1.7.3 SLCキャッ​​シング
デルキンのコントローラーファームウェア設計では現在、ダイナミックキャッシングを採用してより良い耐久性と消費者のユーザーエクスペリエンスを実現します。