SSDのキャッシュメモリー

最終更新日 2023年09月07日

SSDのキャッシュメモリーとは

基礎

SSDのキャッシュメモリーとは、SSDに設置されている、データ読み書き速度を高速化するためのメモリーです。キャッシュ、バッファーメモリー、バッファーと呼ぶ場合もあります。

SSDはメインメモリーと比較してデータ読み書き速度が遅いため、データ読み書き速度が速いキャッシュメモリーを使用して、データ読み書き速度を高速化しています。特にデータ書き込み速度の向上に重要であり、フラッシュメモリーにデータを書き込む前にキャッシュメモリーにデータを書き込み、データ書き込み速度を向上させます。

SSDのキャッシュメモリーは、フラッシュメモリーの管理情報の保管にも使用します。

出典
ディスクキャッシュ - 意味・説明・解説 : ASCII.jpデジタル用語辞典(2008/10/07更新記事)

キャッシュメモリーによりデータ書き込み速度が向上する理由

キャッシュメモリーがない場合、SSDにデータ書き込みを行うときフラッシュメモリーへデータ書き込みが完了するまでコンピューターが待機します。キャッシュメモリーがある場合、フラッシュメモリーよりもデータ書き込みにかかる時間が短いキャッシュメモリーへデータ書き込みを行い、その書き込みが完了するまでコンピューターが待機します。後にSSD本体ではキャッシュメモリーからフラッシュメモリーへデータ書き込みを行います。キャッシュメモリーを使用する方がコンピューターの待機時間が短くなるので、データ書き込み速度が向上します。

キャッシュメモリー容量が満杯になるとデータ書き込み速度が低下

大量のデータ書き込みを長時間続けると、キャッシュメモリーの容量がデータを書き込めないほど一杯になり、速度向上効果がなくなります。このような問題はキャッシュメモリーの容量が小さすぎる、またはSSDコントローラーの性能が低くキャッシュメモリーからフラッシュメモリーへのデータ書き込み速度が遅すぎると発生します。

原則的にデータ読み込み速度の向上のためにキャッシュメモリーを使用しない

フラッシュメモリーはデータ読み込み速度に関しては十分速いので、原則的にはキャッシュメモリーによる速度向上をしません。SSDによっては読み込みが行われる可能性が高いデータをキャッシュメモリーに保持しておき、データ読み込み速度を向上させています。キャッシュメモリーによる速度向上がなくても、データ誤りの検出と訂正の処理のため、一時的に読み込むデータをキャッシュメモリーに保持します。

SSDのデータバッファリング

フラッシュメモリーにデータを書き込む前にキャッシュメモリーへ一時的保持することを、データバッファリングと呼ぶ場合があります。書き込みデータをキャッシュメモリーへまとめてからフラッシュメモリーへ書き込むことで、書き込み速度の向上とセルの劣化の抑制を実現させることまで意味する場合もあります。

フラッシュメモリーにはセルと呼ぶデータ保存場所があり、書き込みにより劣化し寿命を迎えます。キャッシュメモリーに保持したデータが溜まったら、できるだけ書き込み回数が少なくなるようにセルへ書き込みセルの劣化を抑えます。書き込み回数が少なくなるので書き込み速度が向上します。これらがデータバッファリングによる効果です。

コントローラー

SSDにキャッシュメモリーを搭載してもコントローラーが利用しなければ意味がありません。キャッシュメモリーを搭載できるのかはコントローラーによって決まります。

SSDの仕様からキャッシュメモリーの有無がわからないが、コントローラーのメーカーや型番がわかるとします。そのコントローラーの仕様が公開されておりキャッシュメモリーの有無が記載されていれば、SSDにキャッシュメモリーがあるのかわかります。

SSDを分解し基板の上にキャッシュメモリーのチップがあるか確認する方法もありますが、コントローラーに内蔵の場合がありますので確実な方法ではありません。多くのコントローラーが外部のキャッシュメモリーを利用し、一部のコントローラーが内蔵しています。

キャッシュレスSSD

SSDによってはキャッシュメモリーがなく、そのようなSSDをキャッシュレスSSDと呼びます。キャッシュメモリーを省くとデータ書き込み速度が劣る等のデメリットがありますが、コストを削減できるのでSSDの価格が安くできるメリットがあります。

キャッシュメモリー容量

書き込み速度

キャッシュメモリーの容量が大きいほど容量不足になりにくいです。容量不足になると書き込み速度向上効果がなくなるので、書き込み速度が落ちにくいとも言えます。

HDDでは容量が大きいほど書き込み速度が速い傾向があり、SSDにも同様な傾向がありますが、HDDほどではありません。コントローラーの違いの方が書き込み速度に与える影響が大きいので、容量の確認が不要なほどです。コントローラーが違うと、容量が大きい方が速いとは限りません。

TBW

キャッシュメモリーの容量が大きいほど、TBWが大きい傾向があります。容量が大きいほど一時的に保持可能なデータ量が増え、フラッシュメモリーに対するデータ書き換え回数を小さくできるので、TBWが大きい傾向があります。

SSDのキャッシュメモリーとトラブル

電源断によるキャッシュメモリーのデータ消失

SSDのキャッシュメモリーは電力の供給がないとデータを保持できません。フラッシュメモリーに書き込む前に、停電や瞬断等により電源が突然切れるとキャッシュメモリーのデータが消失します。そこでSSD内部には電力を蓄えておくコンデンサーがあり、電源断が発生するとその電力を利用してキャッシュメモリーのデータをフラッシュメモリーに書き込みます。

昔のSSDでは、電源断に備えてコンデンサーを搭載するモデルが少なかったです。昔と違って今では電源断に備えてコンデンサーを搭載するモデルが普及しています。電源断によるデータ消失を懸念する必要性が低いですが、データ消失を100%防げるとは限りません。長期間使用するとコンデンサーが劣化して確保できる電力量が減り、データ消失のリスクが高まります。

出典
なぜ消えるのか、劣化するのか(12ページ目) | 日経クロステック(xTECH)(2009/11/19公開記事)

SLCキャッシュ

SLCキャッシュとは

SLCキャッシュとは、TLCやQLCのフラッシュメモリーをSLCとして使用する領域です。厳密にはSLCではないので、疑似SLCとして使用すると言う場合があります。

TLCやQLCだと書き込み速度が遅すぎるので、書き込み速度が速いSLCキャッシュにデータを書き込み、その後にシステムがアイドル状態のとき、TLCやQLCのフラッシュメモリーにデータを書き込み移します。システムのアイドル状態が発生せずデータ書き込み処理が続くと、SLCキャッシュ容量を使い切る場合があり、そうなるとデータ書き込み速度が低下します。

キャッシュメモリーに似ており、明確に区別するためにキャッシュメモリーをDRAMキャッシュと呼ぶ場合があります。DRAMキャッシュとSLCキャッシュが出てくる場合、キャッシュ(キャッシュメモリー)ではなくDRAMキャッシュと記載するのがよいです。

SSDメーカーによってはSLCキャッシュに名称を付ける場合があり、例えばSamsung(サムスン)ではターボライトテクノロジーです。SSD「840 EVO」において新機能として追加されました。ターボライトテクノロジーの後継がインテリジェント・ターボライトテクノロジーです。

スタティックSLC、ダイナミックSLC

SLCキャッシュには、スタティックSLCとダイナミックSLCがあります。スタティックSLCでは、SLCとして使用する領域が固定です。ダイナミックSLCでは、SLCとして使用する領域が固定ではなく、通常のデータ読み書き用にTLCやQLCとして使用する場合もあります。

SSDの使用容量が増えてきた場合、ダイナミックSLCであればSLCとして使用する領域を減らすので容量不足になりにくいですが、SLCキャッシュ容量が小さくなるので、その容量不足による書き込み速度の低下が起こりやすいです。

SLCキャッシュなしでDRAMキャッシュ増量する方法

SLCキャッシュを採用せずDRAMキャッシュ容量を増やす方法があります。そうするとコストが増えSSDの価格が高くなります。SSDのコストを少しでも削減し価格を下げるのが重要です。価格が高くても購入するユーザーが一定数おり、そのようなユーザー向けに開発する道もあります。

しかし、DRAMキャッシュ容量が増えるほど、停電や瞬断等による電源断の対策が難しくなります。DRAMキャッシュ上のデータが失われないように、フラッシュメモリーへ転送するのに必要な電力をSSD内部にためる方法があります。DRAMキャッシュ容量が増えるほど、ためる必要がある電力量も増えるので、DRAMキャッシュ容量を増やすとしても限度があります。

理論上はDRAMキャッシュ増量すればSLCキャッシュが不要ですが、現実的な解決方法ではありません。SLCキャッシュであれば、ほとんどコストが増えずに解決できます。

電源断

SLCキャッシュにあるデータは電力供給なしでも保持できますので、停電等により電源断が起きても消失しません。

SLCキャッシュの寿命

SLCキャッシュ容量が不足しない限り、全ての書き込みデータが経由するので酷使です。SLCのフラッシュメモリーと同等の耐久性がありますので、あまり寿命を気にする必要がありません。SLCキャッシュが劣化しますが、寿命を迎えて使用不可になることがまずありません。

仮にSLCキャッシュ容量の全てが寿命を迎えたとしても、SLCキャッシュがなくなり書き込み速度が低下しますが、SSDは使用できます。速度低下が問題になる場合、交換が必要です。

SLCキャッシュ容量

書き込み速度

SLCキャッシュ容量が不足すると、書き込み速度が落ちます。QLCはTLCよりも速度が遅いので、QLCの方が速度が落ちます。HDDの速度よりも遅くなるほどです。

10GB程度のデータを書き込み続けると速度低下するSSDもあれば、100GB程度のデータを書き込み続けても速度低下しないSSDもあります。一般的には、大容量のデータを長時間連続して書き込むと容量不足が起きやすいです。

仕様

SSDがSLCキャッシュ対応でも、その容量が仕様に記載されていない場合が多いです。仮に記載されていても容量が大きい方がよいとは限りません。

フラッシュメモリー自体の性能やコントローラーの性能等も影響してくるので、比較対象によっては容量が小さい方が容量不足による書き込み速度の低下が起こりにくい場合があります。


キャンペーン情報(PR)
マウスコンピューター
・新生活応援セール
最大70,000円OFF!!
(3月27日迄)
DELL
・年に一度のデル感謝祭
感謝を込めて特別価格、対象製品が最大25%OFF
(キャンペーン実施中)
パソコン工房
・WEB開催!決算SALE 第2弾
ゲーミングPCやクリエイター向けパソコンなどをご用意
(4月1日迄)