本文へジャンプ

日立ストレージソリューション

Hitachi

by Hu Yoshida on February 28, 2013

フラッシュメモリの寿命には限りがあり、書き込み回数とフォーマット回数で決まります。データはフォーマットされたセルのページに書き込まれ、フォーマット処理はページのブロックに対して行われます。SLC(Single-level cell)フラッシュメモリの耐久性は、書き込み回数は105ですが、MLC(multi-level cell)の場合は約103または104です。ちなみに、DRAMの耐久性は1015であり、HDDの場合は約1018です。

フラッシュメモリのセルの構造は、酸化物層(Oxide)によって「基板(Substrate)」から絶縁された「浮遊ゲート(Floating Gate)」で構成されています。酸化物層はある程度の電子が通過できるほどの薄さですが、捉えた電子を浮遊ゲートに保持しておくだけの厚さがあります。

フラッシュメモリのセルの構造

データは、浮遊ゲート上に電子を捕捉することで保存されます。データを消去する場合は、浮遊ゲートから電子を取り除きます。書き込みや消去には比較的高い電圧がかけられるため、使用するたびに薄膜から出来ている酸化物層が劣化する傾向があります。絶縁体が劣化するにつれ、セルは捕捉した電子を失う傾向があります。実際、電子は時間と共に徐々に漏れていくため、数ヶ月ごとにセルの再書き込みが必要となります。データを読み取るにも電圧をかける必要があります。これにより、読み込みごとに多くの電子が放出されるため、ECC(誤り訂正符号)によって補正できないほど劣化が進み、新たにフォーマットされたセルへのデータの再書き込みが必要となります。

SSDベンダーは、1日あたりの完全ランダムドライブ書き込みが10回の耐久性があると公表しており、5年間の保証を付けています。書き込みが10 x 365 x 5 回とすると、フラッシュセルあたり18,250回(約104)の書き込みとなります。SSDベンダーは、この書き込み回数にドライブ容量を掛けた数値で耐久性を表す場合があります。たとえば、ドライブ容量が400GBの場合、耐久性は7.3PBと見積もられます。この値は、書き込みがSSDのすべてのセルに均等に分散できることを前提にしていますが、実際にはほとんどできません。あるブロックのすべてのページが同時に再書き込みされることはないため、ブロックを消去するには、多くの有効なページを新しいブロックに統合する必要があります。書き込み、消去、読み込み、そして時間の経過によって、セルの書き込みやリフレッシュが必要となるため、さらにSSDが消耗することになります。

当社は、フラッシュセルの物理的特性を変えることはできませんが、専用コントローラを使用して書き込み/フォーマットの回数を削減し、エンタープライズ向けストレージのフラッシュモジュールの耐久性を向上することはできます。以下は、Hitachi Accelerated Flashストレージの耐久性を向上するために当社が行っている内容です。

  • ECCは、1.4kB当たり48ビットを訂正するように拡張されました。これで、読み込み電圧で劣化するページ読み込み機能を延ばし、ページの再書き込みが必要となるタイミングを遅らせます。
  • ハウスキーピング処理を最小限にするために、古いデータを非同期に消去できる物理−論理アドレスの変換。
  • 少量書き込みに対するフォーマット処理を削減するためのバッファー書き込み領域(これにより、フォーマットされたページの可用性を維持)。
  • 消去されるブロック内の有効データを待避するための再利用。
  • フォーマットされたページの消費量を最少にするため、1ページに満たない書き込み用の読み込み/変更/書き込み処理。
  • データ保持時間の低下を回避するため、データは30日ごと(温度による)にリフレッシュされます。
  • 書き込み領域を削減し、パフォーマンスを向上するためのゼロデータ圧縮。
  • 25%のオーバープロビジョニング
  • 消耗を平均化したり、フラッシュモジュールの寿命を延ばしたりするため、ローカルにはフラッシュモジュールのページ間で、全体的にはフラッシュモジュールのプールのモジュール間で、ウェアレベリングが行われます。

これらの機能を実現し、Hitachi Data Systemsの製品に求められる耐久性を提供するには、クアッドコアプロセッサを使用したフラッシュコントローラの再設計が必要でした。

検索フォーム