現在、英国のサイトにアクセスしていることに気づきました。代わりにメインサイトにアクセスしますか?

Kingston eMMC ユニットと、背景の黒い筐体

eMMC ライフサイクル見積、検証とモニタリング

NAND バスで処理されるプロセス

NAND フラッシュストレージは、単純なデータの読み取り/書き込み媒体ではありません。高い信頼性で使用するためには、いくつかのアルゴリズムを実装する必要があります。たとえば NAND ブロック管理、ガーベージコレクション、エラー管理、ウェアレベリングなどです。最新の NAND フラッシュは、ホストプロセッサに実装されたアルゴリズムではなく、ストレージデバイス上のアルゴリズムで管理されます。これにより、ホスト側の NAND 管理の複雑性が軽減し、製品のサポートと維持が簡素化しますので、ユーザーにメリットがあります。

ホストから NAND フラッシュへの書き込みは効率が低く、媒体の早期不良の原因になることがあります。NAND の最小の編成単位はページで、読み取りとプログラミングが可能ですが、消去はできません。消去可能な唯一の編成単位はブロックで、多くのページで構成されています。したがって、ブロックが消去されない限り、ページを上書きできません。ブロックは時間が経過するにしたがって、耐久限界に達して使用不能になります。不具合が発生すると、早期に使用不能になる場合があります。

NAND フラッシュでは、プログラム消去サイクルの回数にも限界があります。この限界に達すると、デバイスはEoL(寿命末期)状態になり、それ以降は信頼性がなくなります。耐久性は NAND セルの構成によって変わります。

シングルレベルセル構成:この設定はもっとも耐久性が高く、誤差も最大です。

eMMC LBA 512B Sector Address

NAND Page & Block Address
0:31 Blk10, Pg101
32:63 Blk10, Pg102
64:95 Blk10, Pg103
96:127 Blk10, Pg104
128:159 Blk15, Pg57
160:191 Blk8, Pg129
192:223 Blk10, Pg107
224:255 Blk22, Pg88

eMMC は 512 バイトのセクター単位で読み取りと書き込みを行ないます(物理でなく論理)。セクターのアドレスは、論理ブロックアドレス(LBA)と呼ばれます。データを変更する時、NAND ブロック全体を消去するのは非現実的で、変更のないページも消耗するため非効率的です。LBA-PBA(物理ブロックアドレス)マップスキームにより、書き込みを少なくし、ブロックの消耗のバランスを取ります。この処理をウェアレベリングと呼びます。アドレス変換テーブルを用いて、LBA を PBA にマップします。このプロセスによって、ブロックの消耗のバランスを取り、書き込み速度を向上します。

アドレスマッピング処理は次のように実行されます。

  • eMMC セクターは 512 バイトで、NAND ページは 16kb です。マッピングテーブルでは、32 個の連続セクターアドレスをページサイズ単位のグループにします。
  • ページグループの中のあるセクターが変更された場合、コントローラがそのページのセクターグループ全体を読み取り、変更されたセクターがあれば更新します。その後プログラムが新しいデータを新しいページに戻します。
  • 更新されたページがプログラムされた後、テーブルが更新され、更新された NAND ページのブロックおよびページアドレスで以前の項目を上書きします。
  • 変更されたセクタがひとつだけの場合でも、NAND フラッシュはページ全体をプログラムする必要があります。この非効率的な状態はライトアンプリフィケーション(書き込みの増幅)と呼ばれます。NAND フラッシュの書き込みと、eMMC デバイスレベルの書き込みの割合は WAF(ライトアンプリフィケーションファクター)です。

通常、ライトアンプリフィケーションの主な原因は、少量でランダムな、ページ境界と合っていない再書き込みです。WAF を最小限にするには、複数のページサイズ単位で、書き込みをページ境界に合わせる必要があります。この最適な単位の大きさは、Extended CSD(拡張 CSD)レジスタの Optimal Write Size(最適書き込みサイズ)フィールドにあります。

合計書き込みバイト数(TBW)を決定する式は単純です。

(デバイス容量 * 耐久性) / WAF = TBW

多くの場合、WAF は 4~8 ですが、ホストシステムの書き込み動作に依存します。たとえば、大量の連続書き込みにより WAF は減少し、小さなデータブロックのランダム書き込みにより WAF が増大します。この種の動作が、ストレージデバイスの早期不良の原因になることはよくあります。

たとえば、耐久性が 3000 で WAF が 8 の 4GB eMMC は次のようになります。

(4GB * 3000) / 8 = 1.5TB

eMMC デバイスの TBW は 1.5TB です。したがって、製品寿命が尽きてEoL(寿命末期)状態になるまでに 1.5TB のデータを書き込みできます。

TBW 要件を見積もるには、該当するデバイスの日常的な使用状況を推定します。たとえば、毎日 500MB の書き込みに使用する仕事量の場合(そして予定された寿命が 5 年の場合)、915GB より多い TBW に達するデバイスが必要です。

0.5GB * 365 = 1 年で 183GB 未満、または 5 年で 915GB

TBW = (DC * EF) / WAF ですので、TBW は、デバイスに許される最大 WAF を決定するために使用できます。デバイスの寿命が、本番アプリケーションの目標 TBW に達することができない場合は、改善を試みる必要があります。pSLC(疑似シングルレベルセル)モードにすることを検討してください。これにより、デバイスを TLC または MLC から、セルあたり 1 ビットのモードに変換して、耐久性を 10 倍にできる場合があります。しかし、これによって容量は大幅に減少します。セルあたり 2 ビットの MLC デバイスで 50%、3 ビットの TLC デバイスで 66% 以上減少します。この解決方法で満足できない場合は、同じ仕事量を処理するために、もっと大容量のデバイスを選択してみてもよいでしょう。デバイスの容量を 2 倍にすると、TBW が 2 倍になります。

Kingston の eMMC アルゴリズムにより、WAF を減少できます。パフォーマンス、寿命、信頼性のバランスを取るために、複数の構成を提供しています。デバイスの劣化は、EXT_CSD に保存されている JEDEC 寿命推定ツールで監視できます。この機能はすべての eMMC デバイスに備わっています。寿命は、デバイスの耐久性に基づいて、10% 増加するごとにレポートが作成されます。ひとつのツールで TLC または MLC 構成の NAND フラッシュブロックの劣化のレポートを作成し、他のツールで pSLC モードで構成されたブロックの劣化のレポートを作成します。Kingston eMMC デバイスにはまた、デバイスのブロック劣化の平均値を算出するベンダーコマンドがあります。これは、JEDEC ツールより正確ですが、使用するには少しソフトウェア開発が必要です。代替策として、劣化したデバイスを Kingston にお送りいただければ、さらに包括的な分析をいたします。

#KingstonIsWithYou

promo embedded

専門家に照会する

適切なソリューションを計画するには、プロジェクトとシステム要件を理解する必要があります。Kingston の専門家にご相談ください。

専門家に照会する

関連動画

関連記事