元麻布春男の週刊PCホットライン

IntelがSSDを手がける理由



IntelのM25-Mainstreme SATA SSD

 2008年から急速に普及が始まったNANDフラッシュベースのSSD市場において、性能の高さで高い評価を受けているのがIntelのSSDだ。特にMLC NANDフラッシュを用いたメインストリーム向けSSD「X25-M」は、価格改定で入手しやすくなったこともあり、ベストセラーの1つに数えられている。販売ルートも当初はリテールが中心だったが、日本HPやLenovo(米国)など最近はOEMでの採用も目立ち始めた。つまり製品が安定しており、供給も潤沢であるという証拠だ。また、最近では、1.8インチタイプも店頭に姿を見せ始め、バリエーションを広げている。

 このIntel SSDについて、日本法人でSSD事業を手がけるインテル・マーケティング本部エンベッデッド製品マーケティングチーム・プロダクト・マーケティング・マネージャーの篠原隆志氏と、インテル技術本部フィールド・アプリケーション・エンジニアの荒谷政則氏に話を訊いた。


●IntelがSSD事業に携わる理由

 IntelのSSDで最も素朴かつ根本的な疑問は、IntelがSSD事業を行なう理由だ。言い替えれば、IntelはストレージがHDDから不揮発性メモリに切り替わると見て、SSDをx86プロセッサに次ぐ事業の柱にしようというのか、それともx86プロセッサのプラットフォームを強化するデバイスとしてSSD事業を行なっているのか、ということだ。

'96年1月以来、CPUの性能が175倍に達しているのに対し、HDDの性能は1.3倍にしかなっていない。SSDにはこの性能ギャップを埋める、つまりはプラットフォームが抱えるI/Oボトルネックの解消が期待される、というのがIntelの主張だ

 IDF等、過去にIntelが示したプレゼンテーション資料は、すべて後者だとしている。IntelがSSDを事業化するのは、Intelアーキテクチャのプラットフォームを強化するためだという。要するに無線LANやWiMAXなど、Intelがx86プロセッサの周辺機器ビジネスを手がけるのと同じ、というわけだ。今回も、答えは同じ。あくまでもIntelアーキテクチャのプラットフォームを強化させるためである、とのことであった。

 しかし、SSDの場合、Micronと共同でNANDフラッシュの製造会社(IM Flash Technologies)まで設立しており、投資金額が膨大だ。PCの内部にキャッシュとして搭載するTurbo Memoryであれば、プラットフォーム強化という言葉も素直に受け止められるが、SATAの汎用ストレージとなると、さらなる野心があるのではと、勘ぐりたくなってしまう。

 それならというわけで、定評あるIntelのSSDに使われている自社製のコントローラ(PC29AS21AA0)を外販する予定はあるのか尋ねてみた。プラットフォームを強化するのであれば、高性能のSSDが普及すれば普及するほど都合がいいハズ。おまけにこのコントローラが売れれば、Intelが推進するNANDフラッシュの標準規格ONFIの普及にもつながる(PC29AS21AA0が対応するのは、おそらくONFI仕様のNANDフラッシュだけ)。

 しかし、こちらも現時点で外部に販売する予定はないという。矛盾しているようだが、現在の半導体メモリの市況を考えればやむを得ないことかもしれない。NANDフラッシュやDRAMなど半導体メモリは、ほとんどが製造原価を下回る市場価格となっており、ほぼすべてのメーカーが赤字に陥っている。コントローラという付加価値で、SSD搭載分だけでもNANDフラッシュメモリが原価割れせずに済むのであれば、それは手元にキープしておきたいだろう。

 しかし、現在SSDに使っているコントローラとは別に、エンタープライズ向けのSASインターフェイスのコントローラについては、この分野に経験の豊富なHGSTとの提携を行なっており、Intelとしても協業を完全に否定しているわけではないという。


●IntelのSSDが速い理由

 さて、IntelのSSDというと、ランダムアクセスが高速なことで知られる。Windows Vistaをはじめ、実際にユーザーが利用する環境において、最も性能向上に寄与するのが、ランダムリードおよびランダムライトの性能であり、IntelのSSDがベンチマークだけでなく体感上の性能にも優れているのは、ここにポイントがある。

 ではなぜIntelのSSDがランダムアクセスの性能に優れるのかとなると、明確な答えが見つからない。IntelのSSDコントローラは、10チャネルのNANDフラッシュチャンネルを持つが、シーケンシャル性能の高さの説明にはなっても、ランダム性能の高さの根拠にはならない。今回、なぜIntelのSSDはランダム性能が良いのかたずねてみたが、他社のコントローラについて知らないので、明確な答えはできないとのこと。強いていえば、「Native Command Queingをちゃんとサポートしているあたりでしょうか」という回答だった。

Windows VistaでMobile Mark '07を実施した際のディスクI/Oの大半がサイズの小さなランダムリードとランダムライトだという。この性能を改善することが、体感性能の向上につながるIntel SSDが採用するコントローラは、10チャネルのNANDフラッシュメモリアクセスをサポートするが、ランダム性能の高さはそれだけでは説明できないIntel SSDの内部。コネクタ右側の正方形のチップ(PC29AS21AA0)がコントローラ。その下の長方形のチップ(K4S281632K-UC60)がバッファ用の128Mbit SDRAM(166MHz)。残りのチップ(29F32G08CAMC1)がNANDフラッシュメモリ

 ちなみに図はSamsungの1世代前のSSDコントローラ(SATA対応の1世代目)のアーキテクチャだが、バッファに使われている16MBのSDRAM(166MHz)というスペックはIntelのコントローラと同じ。NANDアクセスチャンネルが少ないことから、シーケンシャル性能がIntelより低くなる(繰り返すがSamsungは1世代古いコントローラである)のは理解できるが、コントローラのアーキテクチャの違いによりランダム性能の差が生じているとは思いにくい。

IntelはSATAインターフェイスでNCQをサポートしていることを明らかにしているが、これだけでランダム性能の高さの証にはならないだろうSamsungのSSDコントローラのアーキテクチャ。ただしIntelよりも1世代前の製品向けなので、直接比較はできない

 現在のSSDでは、DRAMによるバッファに加え、スペアブロック(LBAにマップされていない領域)をある種のバッファのように使って、書き込みを行なう。しかし、スペアブロックの量自体は、業界で標準的な4~5%と大差ないか、少し多い程度で、飛び抜けた数字ではない(エンタープライズ向けのSLC SSDでは若干多くなっているようだ)。やはり違いは図には表われないファームウェアのアルゴリズムにあるのだろう。

 もう1つSSDで気になっていたのは、Windows 7のRC版におけるSSDの扱いだ。筆者がテストしたところ、Windows 7 RCはIntel製SSDを標準ATAデバイスとして認識しており、自動デフラグは無効にならなかった。Windows 7はATAのコマンドによる問い合わせ、あるいはランダムリード性能によりデバイスがSSDであるかどうかを識別するというのだが、なぜうまく認識されないのか分からない。

 今回、確認してみたところ、IntelのSSDは現時点ですでにメディアのローテートスピードとして1(SSD)を返すようになっており、Intelとしてなぜうまく認識されないのか理由は分からない、ということだった。また、Trimコマンドの実装はまだ行なわれていないということである。

 現時点でIntelが販売しているSSDは、基本的に50nmプロセスによるNANDフラッシュメモリを用いたものだ。IM Flash Technologiesはすでに昨年の秋から34nmプロセスによるNANDフラッシュメモリを、一部顧客向けに出荷開始している。この34nmプロセスのNANDフラッシュを用いたSSDが、年内には登場する見込みだ(容量等は明らかにされていない)。

 一般に製造プロセスが微細化することで、ダイ面積の縮小によるバイト単価の改善、性能の向上、集積度の向上による大容量化などが期待できる。その一方で製造プロセスの微細化により、消去・書き換え可能回数が減少するリスクも高まる。

 消去・書き換え可能回数が減少傾向に向かうということは、これからますますウェアレベリング(消去/書き換えをSSDのNAND全体で平準化することで、ユニットとしての寿命を最大限まで引き延ばす技術)が重要になる。Intelのウェアレベリングが他社とどこが違うのか、という点についても尋ねてみたが、ハッキリとした答えを得ることはできなかった。

 しばしばIntelは、他社のウェアレベリングはゾーンに分けて行なう結果、特定のエリアに消去・書き換えが集中する傾向が見られると批判する。ということは、IntelはSSDを細かく区切らず、全体としてウェアレベリングを行なっているのか、と聞き直してみたが、ご想像にお任せします、という以上の答えを引き出すことはできなかった。ただ、バッドブロックに対する代替セクタ処理を、書き込みのバッファに使うのと同じスペアブロックで処理している(おそらく全体で行なっている)ことからすると、ウェアレベリングもSSD全体で行なっているのだろうか。いずれにしてもソフトウェアやアルゴリズムの部分については極めて口が堅い印象だった。

年内には34nmプロセスによるNANDフラッシュを用いたSSDが登場する。SSDの容量増大とバイト単価の向上が期待される他社のウェアレベリングでは特定ブロックの消去・書き換え回数が高くなる傾向にあると指摘するが、自社のウェアレベリングが何が違うか、ということを明らかにしようとはしない

 なお、先日行なわれた、ファームウェアのアップデートについて尋ねたところ「通常の状況では発生しないが、ベンチマークテストのような特定の条件下において、アクセス速度が低下する状況があり、それを改善した」という回答だった。ベンチマークテストの場合、特定の大きさのファイルを繰り返し読み書きして測定する。通常の状況では発生しないことから考えて、このあたりにアルゴリズムの秘密の一端が表われている可能性がある。

 また、IntelのSSDの特徴として、「IAのPCで使われることを前提としており、PCとそのストレージに何が求められているのかよく知っている」という発言があった。ランダムアクセスに強いのは偶然ではなく、最初から狙って設計されているとのことだ。

 今回のインタビューでは、SSDに携わる理由、速さの秘密とも、具体的な発言を得ることはできなかった。しかし、速さについて言えば、ハードウェア的に特殊なことをしているのではなく、アルゴリズムに優位性が隠されている印象が強かった。逆に言えば、SSDのコントローラというのは、まだ発展途上の製品であり、発展の余地が大きいということだろう。

 Samsung/東芝/SanDiskなどのフラッシュメモリ大手、そしてフラッシュメモリコントローラ専業メーカーの製品も改善著しいが、Intelの製品開発動向が目の離せないものであることはまちがいないだろう。