ストレージについて

SSDを支える技術

更新日:

今日はSSDを支える技術についてお話します。

SSDはフラッシュメモリを使った記憶装置のことで、2008年頃から一般向けの市販品が登場してからその速度と振動に強い・省電力性などの扱いやすさからモバイル機器を中心に急速に普及したものです。

現在に至るまでにそれまでの主流だったHDDをあっという間に置き換えてモバイル機器のみならず、パソコンの記憶装置の主力となりました。

 

SSDが登場してからHDDにはなかった特性からOSにもいくつかの変更がありました。

普段エンドユーザーとして使っている立場では意識することはありませんが、SSDを使う際に重要な知識となりますので覚えておくとよいと思います。

 

SSDとメモリセル

SSDにはHDDに無いいくつかの特性があります。

それはSSDの記憶素子であるフラッシュメモリに寿命が存在することです。

SSDの記憶素子に使われているフラッシュメモリにはSLCとMLC、TLCがあり、以下の特徴があります。

SLC=Single Level Cell:一つのセルに1bitの記憶が可能

MLC=Multi Level Cell:一つのセルに2bitの記憶が可能

TLC=Triple Level Cell:一つのセルに3bitの記憶が可能

このうちSLCは非常に高価のため、一般向けのSSDにはほとんど使われていません。

また、QLCという一つのセルに4bitの記憶が可能なメモリセルも開発されていますが、この記事を書いている現在、市場に製品は出回っていません。

※3D NAND MLCと3D NAND TLCの寿命はMicronのデータシートから抜粋しています。

基本的に半導体は微細化が進むと性能が上がる傾向にありますが、フラッシュメモリに限って言うと微細化すると書き換え回数が減り寿命が縮むので、高性能化するのが非常に難しいのですが、3D NANDという技術を使うことによって微細化をせずに大容量化することに成功しました。

現在の一般PC向けの市販SSDはほとんどがこの3D NAND MLCと3D NAND TLCと言ってもよいです。

こうしたハードの進化とそれを制御するソフトウェアの進化もあって、総合的にデバイスとしての耐久性も上がってきています。

3D NAND 登場以前と以後のMLC,TLCではデバイスに対する評価が変わっています。

現在の産業向け・インフラ向け、軍事向けデバイスのSSDもSLCではなく、MLCを採用しているメーカーもあります。

最新の3D NAND TLC を使ったSSDでは一部にSLCを使うなどの工夫によっても寿命を延ばしています。

 

その他エンタープライズ向けSSDに使われている技術

SMLC(Single Mode Level Cell)=MLC並みの価格でSLC並みの耐久性を実現したセル。Fusion-ioという会社が開発して製品化したが、のちにSANDisk(現WesternDigital)に買収される

Q-MLC(Quality-MLC)=通常のMLCの10倍の信頼性を実現したセル。ハギワラソリューションが製品を出している。

どちらも名称のみで詳細なデータは見つけられませんでしたが、エンタープライズ向けにはこうした方式もあるということを参考までに書いておきます。

 

SSDにはなぜ書き換え回数に制限があるのか?

SSDは書き換え回数に寿命がありますが、これはセルの構造に理由があります。

フラッシュメモリセルの仕組み

上の様になっています。フラッシュメモリはセルに電子を閉じ込めて0か1かを判断していますが、この閉じ込める蓋の役割をする酸化被膜には寿命があります。

この酸化被膜の寿命が書き換え回数です。

 

SSDの寿命を延ばす技術

SSDに使われているセルには書き換え回数に制限があるため、なるべく平均的にすべてのセルを使用するために仕組みがあります。

SSDのセルは書き込みはページ単位で行われますが、消去はブロック単位で行われます。

フラッシュメモリの消去と書き込み

※上の図は模式図です。実際の数などはフラッシュメモリによって違います。

HDDでは削除したデータというのは特に害のないものだと思われていたのでわざわざ消去したりなどはしていませんでした。

OSから見て、削除しましたというマークを付けるだけで、データそのものは残っていたのです。

OSから切り離されたデータは次にデータが書き込まれた時に上書きされることはありますが、それまではそのまま残っていました。

削除されたデータはデバイスから見てどのデータを消去してよいかという判断はできませんでした。

消去すると書き換えが発生してHDD性能に影響を与えるためです。

しかし、SSDの場合、事情が違います。

なぜなら、セルに寿命があるため、同じセルにずっと書き込みを続けると寿命が極端に縮んでしまうからです。

先ほど説明した消去できる単位(ブロック)と書き込みできる単位(ページ)が違うために一部だけ使用された空き容量の大きいブロックが出来ると無駄な書き込み/消去が発生して寿命に悪影響を与えます。

 

Trimとガーベージコレクション

SSDでは今まで説明してきたような事情からデバイスに「このデータは削除しても構わない」という信号を送る仕組みが出来ました。

Trim

これがTrimです。

ガーベージコレクション

Trimが送られたデータは削除され、ガーベージコレクションという仕組みで、容量のある別のブロックに移すことによって出来るだけ空きブロックを確保し、セルの書き込み回数を減らすような仕組みになっています。

Windows8以降のOSでは自動で定期的にTrimが発行されるようになりましたので、これらのことは特に意識しなくてもOSとデバイスが自動的にやってくれています。

※ Windows7ではソフトをインストールする必要がありましたので、SSDに限って言えば最新のOSの方がより効率的に使うことが出来ます。

ユーザーが意識すべきことは、「SSDには一定の空き容量を確保しておいた方が寿命が長くなる傾向にある」ということだけです。

このような作業をユーザーが意識しなくても自動で行っています。

SSDが使っていくうちに遅くなるのは、このように削除・書き込みを繰り返すと、SSD側でのメモリセルの寿命を延ばす作業が入ることも関係しています。

それでもHDDとは比較にならないほど高速です。

 

 

-ストレージについて

Copyright© 自作ユーザーが解説するゲーミングPCガイド , 2018 All Rights Reserved.