全国高校eスポーツ選手権運営の舞台裏。12:07)NANDフラッシュメモリを載せたメモリモジュール(NANDフラッシュ搭載DIMM)の開発が活発になってきた。NANDフラッシュ搭載DIMMを、サーバーの主記憶用DIMMスロットに装着することで、ストレージ(外部記憶)、あるいは、システムメモリ(主記憶)として利用する。NANDフラッシュ搭載DIMMには、大別すると2種類のメモリ構成が存在する。DRAMと、NANDフラッシュメモリを混載したDIMMである。1つは、NANDフラッシュメモリだけを載せたDIMMである。いずれも「NVDIMM」あるいは「不揮発性DIMM」などと呼ぶことが多い。DIMMとして利用する。CPUのDDRメモリコントローラからは、DRAMだけが見え、NANDフラッシュメモリは見えない。NVDIMMが搭載するDRAMの記憶容量とNANDフラッシュメモリの記憶容量は普通、同じである。DRAMとNANDが8GBずつ、あるいは、16GBずつ、といったメモリ構成になる。ほかには、NANDフラッシュ用のコントローラロジックがDIMMには搭載されている。DRAMとともにNANDフラッシュメモリを搭載するのは、バックアップのためだ。停電(瞬時電源電圧低下を含む)が発生したり、不良発生によってシステムがリセットしたりすると、DIMMを載せたボードの電源が断たれる。DIMMであれば、ここでDRAMの内容は全て、失われる。「DRAMとNANDフラッシュを混載したNVDIMM」の例。左右はモジュールの表面と裏面。下はバックアップ電源用のスーパーキャパシタ基板。Technologyの製品NVDIMMでは電源の喪失を検知すると直ちに電源がバックアップ電源に切り換わり、DRAMのデータを保持する。バックアップ電源は通常、スーパーキャパシタ(大容量コンデンサ)である。スーパーキャパシタは永久に電源として機能するわけではない。スーパーキャパシタが貯蔵していた電気エネルギーを完全に放電すると、NVDIMMの電源は失われる。その前に、NVDIMMはDRAMのデータを全て、NANDフラッシュメモリに転送(コピー)する。転送が完了したところでNVDIMMは自分用の電源を遮断し、システムの電源が復活するのを待つ。システムの電源が復活したら、NANDフラッシュメモリの内容をDRAMに書き戻す。同時にスーパーキャパシタを充電する。DIMMスロットに装着したNVDIMMの動作。DIMMと同様に動作する。左端はシステムの電源の状態(緑色は電源オンを意味する)、中央はDIMM(左がDRAM、中央がコントローラ・ロジック、右がNANDフラッシュメモリ)とスロット、サーバー、右端はスーパーキャパシタシステムの電源が遮断される(左端のスイッチが赤色になる)と、DRAMのデータ(誤り訂正符号を含む)を全て、NANDフラッシュメモリに転送する。転送中に電源はスーパーキャパシタが賄う。転送が完了したら、DIMMの電源を遮断するシステムの電源が復活する(左端のスイッチが緑色になる)と、NANDフラッシュメモリのデータをDRAMに転送する。同時にスーパーキャパシタを充電するDRAMへのデータ転送が完了すると、NVDIMMは再び通常の状態に戻る。DRAMと認識するシステムの電源遮断によってDRAMのデータをNANDフラッシュメモリに転送する時のタイミングチャート。始めに何らかの原因で電源(交流電源)が止まる(ポイントA)。電源の状態を示す信号「Powergood」が変化し、異常発生を通知する(ポイントB)。異常発生を受信したロジック(CPLD)はセーブトリガー信号「SAVE_Trigger_n」をアクティブにする(ポイントC)。セーブトリガー信号を受信したプロセッサあるいはチップセットは、割り込み状態に入る(ポイントD)とともに、NVDIMMに対するセーブ信号「SAVE_n」をアクティブにする(ポイントF)。セーブ信号を受信したNVDIMMは、DRAMのデータをNANDフラッシュメモリに転送する(ポイントG)DRAMとNANDを混載したDIMMのメリットとデメリット「DRAMとNANDフラッシュを混載したNVDIMM」のメリットは、停電に対処するコストが大きく下がることだろう。場合によっては、無停電電源装置(UPS)を省ける。このメリットは大きい。1つのメリットはダウンタイムの短縮である。DRAMのデータが全て消えた場合は、データを全てPCIe接続あるいはSAS/SATA接続のストレージ(HDDあるいはSSD)から転送しなければならない。これらのストレージをDRAMから見ると、NANDフラッシュメモリに比べて遅延時間(レイテンシ)がはるかに長く、また、データ転送速度が極めて遅い。データセンターやWeb系システムのようなリアルタイム処理が必要とされるシステムでは、ダウンタイムはすなわち、金額的損失になる。ダウンタイムは極力、短いことが望ましい。デメリットはもちろん、DIMMのコストが上昇することである。DRAMとNANDフラッシュを混載したNVDIMMのメリット(無停電電源装置の省略)NANDフラッシュDIMMは「超高速」のSSD続いてもう1つのNVDIMM、メモリ構成としては「NANDフラッシュメモリだけを載せたDIMM(NANDフラッシュDIMM)」を見ていこう。DIMMにはNANDフラッシュのほかには主に、NANDフラッシュ用コントローラロジックが載る。CPUからはメモリではなく、ストレージに見える。DDRメモリバスを介してデータを高速に読み出せる、超高速のSSDという位置付けになる。DIMMソケットにSSDを装着したものだとも言える。NANDフラッシュメモリを載せたDIMMの概要。DIMMと同じフォームファクタに、NANDフラッシュとNANDコントローラを載せた。Storage)技術の説明図面からNANDフラッシュメモリを載せたDIMMの製品例。SanDiskの「ULLtraDIMM」。Technologiesが開発したMCS技術を導入した。「ULLtraDIMM」はDDR3メモリのDIMMスロットに装着する。記憶容量は200GBあるいは400GBと、DIMMとしては非常に大きい「NANDフラッシュDIMM」の動作は、SSDと変わらない。既存のSSDと違うのは、データ転送速度が極めて高いということだろう。3.0×4インターフェイスを利用する。データ転送速度は最大で4GB/secであり、かなり高い。6Gbpsのデータ転送速度は約600MB/secである。最近のSSDはデータ転送速度をかなり高くできるので、SATAインターフェイスでは速度が不足する。そこで最近の高速SSDは、PCIeインターフェイスを使うようになっている。DDRメモリインターフェイスを使うと、原理的にはSSDをさらに高速にできる。DDR4メモリチャンネルのデータ転送速度は17GB/sec(ピン当たりのデータ転送速度は2,166Mbit/sec)と極めて高い。3.0×4インターフェイスの4倍を超えるバンド幅を備える。この高速なチャンネルを利用するので、非常にバンド幅の広いSSDを実現できる。DDRメモリインターフェイスを使うことで、SSDの遅延時間(レイテンシ)を短くできる。同じ性能のSSDであれば、遅延時間はCPUとストレージの物理的な距離(ブリッジの数と配線長)で決まる。DDR、PCIe、SATAの中では、DDRがSSDまでの配線長が最も短い。SanDiskの「ULLtraDIMM」とPCIeインターフェイスのSSDで性能を比較した結果。上段のグラフは書き込み遅延時間(レイテンシ)の実測値(μs)。中段のグラフはレイテンシのヒストグラム。レイテンシがおよそ4分の1以下に短縮されていることが分かる。下段の左はメッセージングのスループット。SSDで752MB/secの実効速度を得ているCPUとストレージの距離を縮める。DIMMスロットにSSDを装着することで、ストレージをCPUに物理的に近づける。DIMMと比べると、大きく違うのは記憶容量である。DIMMスロットに装着可能な製品)で200GB、あるいは400GBもある。DIMMに比べると記憶容量が10倍~20倍も大きい。待機時の消費電力が大きく違う。DRAMはメモリセルのリフレッシュ(データの定期的な再書き込み)を常に必要とするので、待機時の消費電流がかなり大きく、これが無視できない。これに対し、NANDフラッシュメモリは待機時は電流をほとんど消費しない(一部の周辺回路だけが動作する)。極端なことを言えば、DIMMの電源を遮断しても構わない(ただしこの場合はレイテンシが著しく増大する)。重要なのは部品コストである。DRAMのビット単価(記憶容量当たりのコスト)とNANDフラッシュメモリのビット単価は、12倍も違う。NANDフラッシュのビット単価はDRAMの12分の1なのである。先ほど説明したように、記憶容量がDRAMの10倍ほどあったとしても、半導体メモリの部品コストはほぼ等しい。同じメモリコストで記憶容量が10倍になる。NANDフラッシュの読み出し性能(サイクル時間)はDRAMとほぼ同様なので、データ読み出しが主体のアプリケーションでは、記憶容量が増えることで処理性能は確実に向上する。アプリケーションによっては、非常に有効なストレージであることが分かる。NANDフラッシュメモリを載せたDIMMの製品例。DDR3メモリのDIMMソケットに装着する。DIMM」の内部ブロック。DIMM「NVDIMM」の技術仕様を策定したと発表した。JEDECは仕様を2015年の後半に公表すると発表したが、9月12日現在では仕様書は公表されていないようだ。JEDECの規格策定作業と並行して、NVDIMMに関する半導体ベンダーやモジュールベンダーなどの製品開発が活発化している。規格策定に関わった企業や業界団体などは、「NVDIMM」の仕様を一部、明らかにし始めた。XPointや磁気メモリ、相変化メモリ、抵抗変化メモリなどの不揮発性メモリを対象とする。「NVDIMM」の仕様で現在明らかになっている内容や、不揮発性メモリ搭載NVDIMMの開発動向などは、機会を改めて近く、ご報告したい。