なぜ同じNANDでも性能が大きく異なるのか?
SSDの仕様表を見ると、不思議なことに気づきます。同じTLC NANDを使っているのに、製品Aは読み込み速度3,500MB/s、製品Bは2,100MB/s。同じ容量なのに価格が1.5倍も違う。書き込み寿命のTBW※1が倍以上違う。
前回の記事でNAND型フラッシュメモリの仕組みを学んだあなたなら、TLCが3ビット保存であることは知っているはずです。でも、それだけでは説明がつきません。
答えは「SSDコントローラ」にあります。
NANDフラッシュメモリはデータを保存する記憶素子、コントローラはそのNANDを制御する司令塔です。記憶と制御、この二つが協調して初めて、SSDは機能します。同じTLC NANDであったとしても、コントローラの性能で製品全体の実力が決まるのです。
私は半導体デバイスエンジニアとして、メモリデバイスの開発に携わってきました。その目線から、この記事ではコントローラの役割と性能を決める技術要素を、原理レベルから解説します。
読み終えれば、あなたは確信を持って自分に最適なSSDを選べるようになります。
※1 TBW (Total Bytes Written): SSDが一生のうちに書き込める総データ量。300TBWなら、合計300テラバイトの書き込みが可能という意味。
コントローラーの基本的な役割 – SSDの司令塔
SSDの基本構成
SSDは、4つの主要な要素で構成されています。
SSDの基本構成:
| 要素 | 役割 | 記事での扱い |
|---|---|---|
| NANDフラッシュメモリ | データを保存する記憶素子 | 前回の記事で詳細解説 |
| SSDコントローラー | NANDへのアクセスを制御する司令塔 | 今回の記事で詳細解説 |
| DRAMキャッシュ | FTL管理と高速アクセス用の一時記憶 | 今回簡単に触れる |
| インターフェース | PCとSSDを接続する通信経路(SATA/NVMe) | 次回の記事で詳細解説 |
コントローラーは、PCからの読み書き命令を受け取り、それをNANDフラッシュメモリへの具体的な操作に変換します。
DRAMキャッシュとインターフェースの役割
高性能なSSDには、DRAMキャッシュが搭載されています。コントローラーが管理するFTL(Flash Translation Layer: 論理アドレスと物理アドレスの変換テーブル)をDRAMに保存することで、アクセス速度が大幅に向上します。DRAMレス設計でもHMB(Host Memory Buffer: PCのメモリを借りる技術)により、ある程度の性能は確保できます。DRAMキャッシュの有無は、主にランダムアクセス性能に影響します。
インターフェースは、PCとSSDをつなぐ通信経路です。現在主流のSATA(最大600MB/s)とNVMe(最大7,000MB/s以上)では、速度に10倍以上の差があります。しかし、この速度差を活かせるかどうかは、コントローラーとNANDの性能次第です。インターフェースについては、次回の記事で詳しく解説します。
コントローラーが担う主要な処理
コントローラーは、以下のような複雑な処理を同時に行っています。これらの処理がどう機能するかを理解すれば、SSDのスペックが何を意味するのかが見えてきます。
アドレス変換(FTL: Flash Translation Layer)
PCがSSDに対して「アドレス1000番のデータを更新して」と指示したとします。そのとき、NANDフラッシュメモリは動作原理的に上書き動作ができないため、更新対象のデータを含むブロック全体を一度消去したのちに、更新データを書き込む必要があります。しかし、ブロック全体を消去してしまうと、そのブロック内に存在する他の有効なデータも全部消えてしまいます。
そこでコントローラーは効率的な方法を取ります。更新後のデータは空いている別の場所に書き込み、更新前の古いデータには「無効」マークをつけるだけで消去は後回しにします。このため、「論理アドレス1000番」がNAND内のどこにあるのか、すなわち物理アドレスは更新のたびに変わります。
この論理アドレスと物理アドレスの対応関係を記録した変換テーブルが、FTL(Flash Translation Layer)です。DRAMキャッシュの有無がランダムアクセス性能に影響するのは、この変換テーブルへのアクセス速度が変わるためです。
エラー訂正符号(ECC: Error Correcting Code)
NANDフラッシュメモリは、書き込みと消去を繰り返すうちに、メモリセル内の電荷保持性能が悪化していきます。特にTLCやQLCのように多値化が進むほど、わずかな電荷の変化がデータエラーに繋がってしまいます。
このエラーを予防するためにコントローラーは、書き込み時にエラー訂正用の冗長データ(ECC)を付加し、読み出し時にはエラーを検出・修正します。ECCの進化が、TLCやQLCの実用性を担保しているのです。
ウェアレベリング(Wear Leveling)
NANDフラッシュメモリの各ブロックには、書き込み回数の限界があります。SLCで約10万回、TLCで約3,000回、QLCで約1,000回程と言われています。もし同じブロックばかりに書き込んでいたら、そのブロックだけが先に寿命を迎えてしまいます。
コントローラーは、書き込みを全ブロックに均等に分散させることで、SSD全体の寿命を延ばします。これがウェアレベリングです。製品スペックのTBW(Total Bytes Written)は、このウェアレベリングが適切に機能することを前提とした値です。
ガベージコレクション(Garbage Collection)
コントローラーは更新や削除されたデータに「無効」マークをつけるだけで、ブロックの消去は後回しにします。しかし、無効データが蓄積すると書き込み可能な空きブロックがなくなります。
そこで、無効データが散らばったブロックから有効なデータだけを別の場所に移動し、元のブロックを消去します。ただし、移動には書き込み動作が伴うため、移動が多いと他の処理と競合して性能が低下し、NANDの書き込み回数制限も消耗します。効率的なガベージコレクションは、有効データが少ないブロックを優先的に選び、移動量を最小限に抑えるようなマネジメントがなされています。
コントローラー性能を決める3つの技術要素
それでは、具体的にコントローラーのどこを見れば性能が分かるのでしょうか。最も重要な3つの技術要素を解説します。
1. チャンネル数と並列処理能力 – スピードの源泉
チャンネルとは何か
コントローラーからNANDチップへの接続経路を「チャンネル」と呼びます。チャンネル数が多いほど、複数のNANDチップに同時にアクセスでき、並列処理による高速化が可能になります。
道路に例えると分かりやすいでしょう。4チャンネルは4車線の道路、8チャンネルは8車線の道路です。大きなファイルを転送する時、8チャンネルのコントローラーは4チャンネルの倍の速度でデータを運べます。これがシーケンシャル読み書き速度の差として現れます。
チャンネル構成の例:
| コントローラー種類 | チャンネル数 | 総アクセス速度 |
|---|---|---|
| エントリーモデル | 4チャンネル | 基準値 |
| ミドルレンジ | 8チャンネル | 約2倍 |
| ハイエンド | 8チャンネル+高度な並列処理 | 約4倍 |
チャンネル数だけでなく、1つのNANDチップ内部でも並列処理が行われています。最新のコントローラーは、多段階の並列処理を組み合わせることで、NANDの潜在能力を最大限に引き出します。
実用面での違い
✅ 大容量ファイルの連続転送(動画編集、ゲームロード)では、チャンネル数の差が体感できる
⚠️ 小さなファイルのランダムアクセス(OS起動、アプリ起動)では、チャンネル数の差はあまり出ない
用途によって必要なチャンネル数は異なります。
2. エラー訂正技術(ECC)の世代 – 信頼性と寿命を守る
なぜECCが進化し続けるのか
NANDフラッシュメモリは、微細化と多値化が進むほど、エラーが発生しやすくなります。
NAND世代ごとのエラー率:
| NAND世代 | 生ビットエラー率(RBER) | 必要なECC能力 |
|---|---|---|
| 初期SLC | 1ビット/10^8ビット | BCHで十分 |
| TLC | 1ビット/10^6ビット | LDPC必須 |
| QLC | 1ビット/10^5ビット | 次世代LDPC |
エラー率が100倍増えても、ECCが進化することで、ユーザーが見るエラー(訂正不可能エラー)は10^-15レベルに抑えられています。
BCHからLDPCへの進化
BCH (Bose-Chaudhuri-Hocquenghem): 初期〜2015年頃のSSDに採用。高速だが訂正能力は限定的。
LDPC (Low-Density Parity-Check): 2015年以降の主流。訂正能力がBCHの約3.7倍。TLC、QLC向け。
LDPCには、ハードデコード(高速だが訂正能力低い)とソフトデコード(遅いが訂正能力高い)があります。最新のコントローラーは、エラーの状況に応じて使い分けることで、速度と信頼性を両立しています。
多段階エラー回復の仕組み
ECCでも訂正できないエラーが発生した場合、コントローラーは諦めません。以下のような多段階の回復を試みます。
まず、通常のECCデコードを実行します。それで失敗したら、リードリトライ(電圧を変えて再読み出し)を試みます。それでも失敗したら、ソフトデコードLDPC(時間をかけて精密に訂正)を実行します。最後の手段として、RAIN※2(冗長データからの復元)を使います。
この多段階のエラー回復機能があるため、TLCやQLCでも信頼性が保たれているのです。QLCを選ぶ場合、LDPC搭載は絶対条件と言えます。
実用面での違い
✅ QLCを選ぶなら、LDPC搭載は必須条件
✅ TLCでも、最新世代のLDPC搭載品は古いBCH品より信頼性が高い
※2 RAIN (Redundant Array of Independent NAND): 複数のNANDチップにまたがって冗長データを保存し、1つのチップが故障してもデータを復元できる技術
3. ファームウェアとアルゴリズムの重要性 – 見えない差を生む
コントローラーのハードウェアが高性能でも、それを動かすソフトウェア(ファームウェア)が貧弱では性能を発揮できません。ファームウェアは、どのブロックに書き込むか、どのブロックを消去するか、書き込みをどう分散させるかなど、複雑な判断を常に行っています。
ガベージコレクションの最適化
ガベージコレクションは、SSDの性能を大きく左右します。非効率なガベージコレクションでは、有効データが多いブロックを消去対象に選んでしまい、大量のデータ移動が発生します。さらに、PC使用中に実行すると体感速度が低下し、頻繁に実行しすぎると書き込み寿命を縮めます。
効率的なガベージコレクションは、有効データが少ないブロックを優先的に選び、PCがアイドル状態の時にバックグラウンドで実行し、必要最小限の頻度で動作します。最新のファームウェアは、アクセスパターンを学習し、最適なタイミングで実行するようになっています。
ウェアレベリングの高度化
単純なウェアレベリングでは、すべてのブロックに均等に書き込みを分散させます。しかし、実はこれだけでは不十分です。OSのシステムファイルなど、ほとんど書き換えられない「コールドデータ」を保存しているブロックは書き込み回数が増えず、頻繁に書き換えられる「ホットデータ」のブロックだけが消耗します。
静的ウェアレベリング(Static Wear Leveling)では、コールドデータを書き込み回数の多いブロックに移動させ、元のブロックをホットデータ用に開放します。こうすることで、全ブロックの書き込み回数が真に均等になります。この高度なアルゴリズムの有無が、同じNANDを使ったSSDでも、長期的な性能と寿命に差を生みます。
実用面での違い
ファームウェアアップデートで性能が向上することがあります。製品購入後も、メーカーのサポートページを定期的に確認し、最新のファームウェアを適用することで、SSDの性能を最大限に引き出せます。
あなたにとって必要な性能を見極める – 用途別の選び方
ここまでで、コントローラーの技術要素を理解しました。実際にSSDを選ぶとき、何を基準にすればいいのでしょうか。
用途別の推奨スペック
📌 ゲーミング・クリエイター用途(動画編集、3DCG、大容量ゲーム)
| 項目 | 推奨スペック |
|---|---|
| チャンネル数 | 8チャンネル |
| ECC | LDPC |
| NAND型 | TLC |
| 具体例 | Samsung 990 PRO、WD Black SN850X |
📌 一般PC・システムドライブ用途(OS、アプリ、日常的なファイル保存)
| 項目 | 推奨スペック |
|---|---|
| チャンネル数 | 4〜8チャンネル |
| ECC | LDPC |
| NAND型 | TLC |
| 具体例 | Crucial P3 Plus、Kingston NV2 |
📌 データ保存用途(写真、音楽、バックアップ)
| 項目 | 推奨スペック |
|---|---|
| チャンネル数 | 問わない |
| ECC | LDPC(QLC使用時は必須) |
| NAND型 | TLCまたはQLC |
| 具体例 | Crucial BX500、Samsung 870 QVO |
製品ページのチェックポイント
実際に購入する際、製品ページの以下を確認しましょう。
- ✓ コントローラーメーカーと型番(記載があれば)
- ✓ NAND型(SLC/MLC/TLC/QLC)
- ✓ インターフェース(SATA/NVMe)
- ✓ TBW(書き込み寿命)
- ✓ 保証期間(3年以上が望ましい)
避けるべき組み合わせ
以下の組み合わせは、システムドライブとしては避けるべきです。
| 組み合わせ | 問題点 |
|---|---|
| QLC + DRAMレス + 旧世代コントローラー | ランダム書き込み性能が極端に低い |
| 無名メーカーのコントローラー | ファームウェアの品質が不明 |
| 極端に安価な製品 | 重要な機能が省略されている可能性 |
ただし、データ保存用(頻繁にアクセスしないファイル)なら、これらでも問題ない場合があります。
まとめ – コントローラーを理解すれば、SSD選びが変わる
この記事では、SSDコントローラーの役割と、性能を決める3つの技術要素を解説しました。
記事の要点:
- NANDは記憶素子、コントローラーは司令塔 – 両方が協調してSSDは機能する
- チャンネル数が多いほど並列処理で高速化 – ただし用途によって必要性は異なる
- ECCの進化がTLC・QLCを実用化させた – QLC選択時はLDPC搭載が必須
- ファームウェアの品質が長期的な性能を決める – 大手メーカーが高価な理由
前回学んだNAND型フラッシュメモリの知識と、今回学んだコントローラーの知識を組み合わせれば、SSD選びで迷うことはなくなるはずです。「このSSDは速いのか、信頼できるのか、自分の用途に合っているのか」、その答えは、NANDとコントローラーの両方を理解して初めて見えてきます。
次回は、SSDとPCをつなぐインターフェース(SATA vs NVMe)について解説します。NAND、コントローラー、インターフェースという三層構造を理解すれば、あなたはSSDを「本質で選ぶ」ことができるようになります。
ガジェットを本質で選ぶ。その旅は、まだ始まったばかりです。



コメント