福田昭のセミコン業界最前線

停電の恐怖と記憶容量の制約から主記憶を解放するNVDIMM技術

NVDIMM(Non-Volatile Dual-Inline Memory Module)の定義

 サーバーやタワーPC、デスクトップPCなどの主記憶(メインメモリ)が大きく変化しようとしている。最新世代のDRAM製品であるDDR4メモリ世代から変革がはじまり、近い将来に製品化されるDDR5メモリ世代で、変革は一応の完成を見るだろう。2020年代後半の主記憶(メインメモリ)は、現在のPCユーザーが見ている主記憶とは、まったく別のものに変貌する。

 主記憶の変革を牽引するのは、「不揮発性DIMM」あるいは「NVDIMM(Non-Volatile Dual-Inline Memory Module)」と呼ばれるメモリモジュール技術だ。いずれも、NANDフラッシュメモリに代表される不揮発性メモリをDIMMボードに搭載することで、主記憶の性能を大きく高める。

 NVDIMMが主記憶にもたらす変革には、おもに3つの方向がある。1つは記憶容量の拡大である。記憶容量当たりのコストでは、DRAMよりもNANDフラッシュメモリのほうが低い。両者には10倍~20倍の開きがある。DRAMの代わりに、あるいはDRAMとともに、NANDフラッシュメモリのを搭載することで、DIMMボードの記憶容量を比較的低いコストで大きく拡大できる。

 もう1つは、消費電力の低減である。本コラムの「サーバー/ハイエンドPCの主記憶を変革するNVDIMM技術」で述べたように、DRAMにはリフレッシュというデータの再書き込み動作があり、待機時も電力を消費する。

 DRAM DIMMで搭載するDRAM数を増やすことによる記憶容量の拡大は、電力消費の増加を意味する。記憶容量を増やさずとも、稼働中のサーバーやデスクトップPCなどで主記憶(DRAM DIMM)が消費する電力は無視できない。

 そこでDIMMボードにNANDフラッシュメモリなどの不揮発性メモリを載せることで、アクセスが頻繁には起きないデータを不揮発性メモリに格納しておく。不揮発性メモリは原理的には待機時の消費電力がゼロなので、主記憶が消費する電力の大幅な削減を見込める。

 3番目の方向は、電源異常に対するデータの保護である。DRAM DIMMは電源に異常が発生すると、データが消えたり、データの値が書き換わったりすることがある。電源の供給が絶たれた場合は、データが消える。これを防ぐために、NANDフラッシュメモリなどの不揮発性メモリをDIMMボードに載せる。不揮発性メモリにデータをバックアップしておくことで、電源異常が発生してもデータを維持できる。

NVDIMM(不揮発性DIMM)による主記憶(メインメモリ)の変革

3種類のNVDIMMがもたらす主記憶とストレージの多様化

 NVDIMMには、厳密には3種類のモジュールがある。やや煩雑になるが、3種類のモジュールの違いは主記憶の変革と密接に関連するので、少し誌面を割いて説明する。どうかご辛抱されたい。

 3種類のNVDIMMは「NVDIMM-N」、「NVDIMM-F」、「NVDIMM-P」と呼ばれている。いずれも大手半導体メーカーと大手半導体ユーザーで構成される業界団体「JEDEC」が技術仕様を策定中である。

 すでにNVDIMM-N規格の策定作業は完了しており、JEDECのウエブサイトで規格内容を公開済みだ。2017年の現在は、NVDIMM-P規格の策定作業が活発に実施されている。

3種類のNVDIMM技術を比較

 3種類のNVDIMM技術の中でNVDIMM-Nが最初に規格化されたのは、この技術がDRAM DIMMとの差が最も少ないからだ。言い換えると、現在の主記憶を大きく塗り替えるような存在ではない、とも言える。

 NVDIMM-Nは、DRAM DIMMにバックアップ用のNANDフラッシュメモリを混載したモジュールである。NANDフラッシュメモリが使われるのは、電源に異常が発生したときだけだ。普段は、DRAM DIMMと同様に利用する。記憶容量はDRAM DIMMと同じであり、消費電力はDRAM DIMMと変わらない。

 違うのは、電源に異常が発生したときだ。NVDIMM-Nは備え付けの非常用電源(スーパーキャパシタ)を使ってDRAMの電源を維持するとともに、DRAMのデータをNANDフラッシュメモリに転送する。電源が正常に戻ったら、NANDフラッシュメモリのデータをDRAMに書き戻す。

 NVDIMM-Nの製品化は早かった。DDR3 DRAM DIMMのソケットに対応したNVDIMM-Nは4年ほど前に製品化された。DDR4 DRAM DIMMのソケットに対応した製品も市販されている。JEDECによる標準化作業は、DDR4 DRAM DIMMのソケットに対応したモジュールを対象としており、2016年秋に正式な規格(JESD248)が公開された。NVDIMM-Nのエコシステムも整備されつつある。

 詳しくは本コラムの既報「サーバー/ハイエンドPCの主記憶を変革するNVDIMM技術」を参照されたい。

フラッシュストレージの高速化とNVDIMM-F技術の衰退

 続いて「NVDIMM-F」技術である。NVDIMM-Fの考え方は非常に単純だ。DIMMボードにDRAMではなく、NANDフラッシュメモリを載せることで、DRAM DIMMをはるかに超える記憶容量と、DRAM DIMMよりも大幅に低い消費電力を実現する。DIMMボードの面積は限られているので、搭載可能な半導体チップの数には上限がある。

 半導体チップの最大搭載数が決まっているのであれば、シリコンダイ当たりの記憶容量でおおむねDRAMモジュールの最大記憶容量が決まる。DRAMシリコンダイの最大容量は8Gbitであるのに対し、NANDフラッシュメモリのシリコンダイ当たりの最大容量は512Gbitもある。その差は64倍に達する。

 たとえばDRAM DIMMの16GBモジュールと同等のシリコンダイ数で、NANDフラッシュメモリのDIMMモジュールを構築すると、最大容量は1TBになる。

NVDIMM-F技術の概要。DIMMボードにNANDフラッシュメモリと専用コントローラを載せる

 NVDIMM-Fでも、規格化よりもモジュールベンダーによる製品化が先行した。代表的な製品は、SanDisk(現在はWestern Digital)の「ULLtraDIMM」とDiablo Technologiesの「MCS(Memory Channel Storage)」だろう。DDR3のDIMMスロットに対応したボードモジュールであり、記憶容量が200GBの製品と400GBの製品を用意していた。

 詳しくは、本コラムの既報「NANDフラッシュをDIMMに載せたら」を参照されたい。

 本コラムが既報「NANDフラッシュをDIMMに載せたら」で「ULLtraDIMM」と「MCS」をご紹介したのは2015年9月のことだ。当時、JEDECは対応する技術仕様「NVDIMM-F」の規格を策定中だとしていた。しかしその後、規格策定作業の行方は良く見えなくなってしまった。

 その理由として考えられるのは、SSDの急激な高速化と低遅延化である。PCI Expressインターフェイスを物理層とした高速・低遅延のSSDインターフェイス規格「NVMe(Non Volatile Memory Express)」に準拠したSSDが、急速に力を付けてきたのだ。

 元々、NVDIMM-Fは既存のSSDの遅延時間(レイテンシ)が長いことを前提に、低遅延のストレージ製品として開発された。開発当時のSSDが備えていたインターフェイスはHDD互換のSATAインターフェイスが中心であり、遅延時間は100μsを超えていた。

 これに対して「ULLtraDIMM」と「MCS」がカタログ値として示していた遅延時間は5μsと非常に短かった。遅延時間が20分の1に縮まることの意義は小さくない。

 ところが、PCI Expressインターフェイスが改良され、NVMeインターフェイスとしてSSDに普及してきたことで、事態はいささか変わってくる。NVMe SSDの遅延時間は約10μsとなり、SATA SSDの10分の1と短くなった。NVDIMM-Fとの差はおよそ2分の1にまで縮まってしまった。

おもなメモリとストレージの遅延時間の違い。メモリのNVDIMMはNVDIMM-Fを含んでいない。ストレージはSATA HDDが10msと長かったのが、SATA SSDで100μsと100分の1になり、NVMe SSDで10μsとさらに10分の1に短くなった

 こうなるとNVDIMM-F(ULLtraDIMMとMCS)は、NVMe SSDと比べられてしまう。ここでNVDIMM-Fにとって痛いのは、記憶容量の制約があることだ。

 NVMe SSDは当然ながら、搭載可能なチップの枚数はDIMMボードよりも多い。最近のエンタープライズ向けPCI ExpressカードタイプのNVMe SSD製品は、10TB近くの記憶容量をごく普通に備えている。NVDIMM-Fのボード寸法で10TBを載せるのは、非常に難しい、あるいは非常識に高額なコストになってしまう、と言わざるを得ない。

DRAMと不揮発性メモリを混載するNVDIMM-P技術

 NVDIMM-F技術の普及が頓挫しかかっている現在、JEDECが次世代の主記憶に向けて技術仕様を策定しているのが、「NVDIMM-P」技術である。

3種類のNVDIMM技術と主記憶の変革

 NVDIMM-Pは、DRAMと不揮発性メモリの混載を前提とする技術仕様だ。両方のメモリに普段からデータを格納する点が、NVDIMM-Nと大きく違う。

 不揮発性メモリの候補はNANDフラッシュメモリに限定していない。NANDフラッシュメモリ、3D XPointメモリ、磁気メモリ(STT-MRAM)、抵抗変化メモリ(ReRAM)などが候補となる。

 そして記憶容量の配分では、DRAMを「1」とすると不揮発性メモリは「2」~「8」を想定する。これは搭載するチップ数でみるとDRAMのチップが多く、不揮発性メモリのチップは少ないことを意味する。限られたボード面積を有効に活用するための方策だろう。

 NVDIMM-P技術は、NVDIMM技術のメリットである「記憶容量の拡大、消費電力の低減、電源異常に対するデータの保護」を実現しながらも、DRAMに近い高速なアクセスを実現する。サーバーやタワーPC、デスクトップPCなどの主記憶容量を拡大しつつ、停電の恐怖から解放する。そして電気代(記憶容量当たりの電気代)を節約できる。PCユーザーにとっては非常に有り難い技術だと言える。

 NVDIMM-Pに相当する製品は、まだ存在しない。製品化に先行して、DDR4 DRAM DIMMソケットに対応した標準規格の策定作業をJEDECは進めている。

 DDR4 DRAM DIMMソケットに対応した標準規格が完成するのは、来年(2018年)の早い時期だと今年(2017年)前半にはアナウンスされているが、実際には少し遅れそうだ。2018年の後半にずれ込む可能性が少なくない。

 搭載する不揮発性メモリは、現実的には2種類となる。1つはもちろん、NANDフラッシュメモリである。ただし、NANDフラッシュメモリは読み出し動作はDRAMなみに高速であるものの、書き込み動作がDRAMに比べると著しく遅いという弱点を抱える。コントローラでこのアンバランスな動きを緩和するのはもちろんのこと、NVDIMM-Pの標準規格でもこの違いに配慮したプロトコルを策定中である。

NVDIMM-P技術によるモジュールの概要。DRAMとNANDフラッシュメモリの混載を想定したもの。NVDIMM-N技術と同様のメモリアクセスモードと、NVDIMM-F技術と同様のブロックアクセスモードをサポートする

3D XPoint DIMMの行方をNVDIMM-P策定の進行状況が左右

 搭載する不揮発性メモリのもう1つの候補は、3D XPointメモリだ。筆者が今年の8月にFlash Memory Summitのレポート(ついに明らかになった3D XPointメモリの正体。外部企業がダイ内部を原子レベルで解析)としてご紹介したように、3D XPointメモリは記憶容量当たりのシリコン面積がDRAMの3分の1から6分の1であり、シリコンダイ当たりの記憶容量は128GbitでDRAM(8Gbit)の16倍の大きさがある。記憶容量当たりの製造コストでは、DRAMよりも低くできる可能性が十分にある(開発コストと生産規模が絡むので現在はDRAMよりも製造コストは高いとみられる)。

 3D XPointメモリは読み出しと書き込みでアクセス時間があまり変わらず、NANDフラッシュメモリに比べるとずっと使い勝手が良い。DRAMに近い高速のアクセスと、NANDフラッシュメモリを超える書き換え寿命をすでに実現している。

 別の言い方をすると、バックアップが主体であるNVDIMM-N準拠のボードに3D XPointメモリを載せることは、3D XPointメモリの高い性能を考慮すると、あまりにもったいない使い方なのだ。NVDIMM-P技術が標準化されてはじめて、3D XPointメモリはその性能を十分に発揮できる。

 上記の事情を考慮すると、3D XPointメモリがSSDのフォームファクタとインターフェイスですでに製品化されているにも関わらず、DIMMのフォームファクタとインターフェイスでは未だに製品化されていない理由がなんとなく理解できる。

 NVDIMM-Fの標準規格が完成し、公開されるのであれば、事情はいささか違ってくるかもしれない。しかし現在の状況は、「NVDIMM-Pの規格詳細が固まるまではDIMMタイプの3D XPointメモリが製品化されない」という未来を強く暗示している。