3種類のグレードがあるDRAM DIMM DDR5 DIMMの概要を説明するまえに、標準的なDRAMモジュールであるDRAM DIMM(注: 以降はとくに断らないかぎり、DRAM DIMMを「DIMM」とだけ表記する)についておさらいしておこう。 サーバー/ハイエンドPC 向けのDIMMにはおおよそ、3種類のモジュールが存在する。性能とコストがともに低い側から高い側に並べると、「UDIMM(アンバッファDIMM: Unbuffered DIMM)」、次に「RDIMM(レジスタ付きDIMM: Registered DIMM)」、最後に「LRDIMM(負荷低減DIMM: Load Reduced DIMM)」となる。3種類のグレードがあるとも言える。 UDIMMは基本的には、DIMMボードにはDRAMチップとSPD(Serial Presence Detect)チップ(SPDチップについてはセンチュリーマイクロの嶋野氏の解説記事(メモリモジュールに“SPD”という情報があるのを知っていますか?)が詳しい)しか載っていない。このため、もっともコストが低い。一方で信号波形を整形する仕組みがあまりないので、メモリチャンネルに接続できるDIMMの枚数とランク数、メモリチャンネルのデータ転送速度(帯域幅)は、少なく低くなる。 RDIMMは、DIMMの入出力信号のなかでアドレス(Add)/コマンド(Cmd)信号を「RCD(Register Clock Driver)」と呼ぶICチップでバッファすることで、信号波形をきれいに整形したDIMMである。言い換えると、DIMMボードにはDRAMとSPDのほかに、RCDが載る。RCDの搭載によってDIMMボードのコストは高くなるものの、UDIMMに比べるとメモリチャンネルに接続可能なDIMMの枚数とランク数は増加する。 そしてLRDIMMは、DIMMの入出力信号のなかでアドレス(Add)/コマンド(Cmd)信号だけでなく、データ(Data)信号もバッファすることで信号波形をきれいに整形したDIMMである。言い換えると、DIMMボードにはDRAMチップとSPDチップのほかに、RCDチップとDB(Data Buffer)チップが載る。DIMMボードのコストはもっとも高くなるものの、メモリチャンネル当たりのDIMM枚数とランク数を多くとれ、帯域幅を高く確保しやすい。

電圧レギュレータをDIMMに載せる DDR4世代のDIMMとDDR5世代のDIMMにおける最大の違いは、電圧レギュレータの搭載だ。DDR4世代までは、メモリコントローラを載せたボード(通常はマザーボード)に電圧レギュレータを載せ、DIMMの複数種類の電源ピンを通じてDRAMに電源電圧を供給していた。 しかしDDR5世代では、従来の手法では安定な電源電圧の供給が困難になる。DDR5 DRAMの技術仕様では、電源電圧の変動幅が±3％に縮まるからだ。DRAMの電源電圧は1.1Vになると決まっているので、許容できる変動幅は±0.033V(33mV)にすぎない。電源電圧の変動を抑えることは、DRAMの入出力データ転送速度を安定に高めるためには、きわめて重要である。 そこでDDR5 DIMMでは、DIMMボードに「PMIC (Power Management IC)」と呼ぶ電圧レギュレータICを搭載し、DRAMに電源を供給する。電圧レギュレータICの搭載は、安定な電源電圧を供給することのほか、DIMMのピン数を節約するという意味もある。

入出力バス幅は80bitに拡大 DIMMボードのピン数は、現行のDDR4世代が片面144ピンずつあり、合計で288ピンだった。次世代のDDR5 DIMMでも、DIMMボードのピン数は変わらない。片面144ピン、両面で288ピンである。 ただし、入出力信号のバス幅とアドレス(Add)/コマンド(Cmd)信号のバス幅は大きく変わる。まず、入出力信号のバス幅はDDR4世代が72bitであるのが、DDR5世代では80bitに増える。具体的には、DDR4世代では64bitの入出力信号に対して8bitのパリティ信号を追加していたのが、DDR5世代では64bitの入出力信号に対して16bitのパリティ信号を付加する。パリティ信号の増加によって誤り訂正能力を強める。 アドレス(Add)/コマンド(Cmd)信号のバス幅は、DDR4世代では24bitのシングルチャンネルだった。DDR5世代では、7bitのデュアルチャンネル、合計で14bitに変わる。また信号の送信速度をDDR4世代のSDR(Single Data Rate)から、DDR5世代ではチャンネル当たりでDDR(Double Data Rate)に高める。デュアルチャンネル化と送信速度の向上によってDIMMのピン数を削減しつつ、短い所要時間でアドレス(Add)/コマンド(Cmd)信号の入力を完了させる。 DIMMボードの外形寸法は、DDR4世代では長さが133.5mm、高さが31.25mmだった。DDR5世代では、ピン数が変わらないことから、長さは133.5mmを維持すると見られる。高さは基本的には変わらないものの、電圧レギュレータ(PMIC)の追加というペナルティがあるため、わずかに高くなることが考えられる。DIMMボードを載せるメモリサブシステムに空間的な余裕はさほどなく、ボードの寸法があまり拡大することは許されない。

差動伝送で帯域幅の向上とピン数の削減を両立 これまで説明してきたDDR5世代のDIMMは、過去のDDR世代のDIMM技術の延長線上に存在している。すなわち、既存技術の改良による帯域幅(データ転送速度)の向上という手法である。これに対し、既存技術からやや離れた技術仕様のDIMMが、DDR5世代では検討されている。 それは信号伝送の方式を、既存技術のシングルエンド方式から、差動(ディファレンシャル)方式へと変更することで、帯域幅を上げることだ。JEDECではこのDIMMを、「DDIMM(差動DIMM: Differential DIMM)」と呼んでいる。差動方式の導入によって帯域幅(データ転送速度)を大幅に引き上げるとともに、DIMMのピン数を削減する。 DDIMMでは、DRAMの入出力信号をほぼすべて「ユニファイドバッファ(UB: Unified Buffer)」と呼ぶバッファに集め、8bit幅の差動信号に変換してからDIMMボードのピンに接続する。データの入出力は双方向ではなく、DRAMへのデータ書き込み(ダウンストリーム(DS))とDRAMからのデータ読み出し(アップストリーム(US))を分離している。ダウンストリーム(DS)とアップストリーム(US)はそれぞれ2チャンネルあり、合計で32bit幅となる。差動伝送なので、ピン数は64ピンとなり、既存技術のDDR5 DIMMの80ピンに比べるとピン数が減少する。 DDR5 DRAMを搭載するDDIMMのピン数は200ピンである。先ほどまで説明していたDDR5 DIMM(RDIMMやLRDIMMなど)が288ピンであるのに比べると、大幅に減少する。したがってDIMMボードの小型化を狙える。 ピン(差動対)当たりのデータ転送速度は25.6Gbps以上と、きわめて高い。25.6Gbpsの場合に読み出しあるいは書き込みの帯域幅は最大で「25.6×8×2/8」、すなわち51.2GB/sとなる。これはピン当たり3.2Gbpsでデータを転送するDDR5 LRDIMMの約2倍の帯域幅に相当する。

FBDIMMの復活と改良でDDIMMを実現 DDR系DIMMの歴史に詳しい方はすでにお気づきかと思うが、DDR5 DDIMMはDDR2 DRAM世代で登場して消えていった「FBDIMM(フルバッファDIMM: Fully Buffered DIMM)」技術と似ている。 FBDIMMはDDIMMと同様に、高速伝送のために差動伝送を採用した。このために「AMB(Advanced Memory Buffer)」と呼ぶ統合バッファを搭載し、DDR2 DRAMチップの入出力信号(シングルエンド信号)をAMBで差動信号に変換していた。ちなみにアップストリームは10bit幅、ダウンストリームは14bit幅とやや広め。DIMMボードのピン数は240ピンとほかのDDR2 DIMMと同じである。 FBDIMMは優れた技術だったのだが、DDR3世代には受け継がれることなく、DDR2世代かぎりで消えていった。その大きな理由は3つある。1つは、AMBの搭載によるコストの上昇がかなり大きかったこと、もう1つは、FBDIMM技術の特許を所有する企業が使用料を請求したため、コストがさらに上乗せされたこと、最後に、DDR2世代の性能向上(動作周波数の向上)が予想外に進んだことでFBDIMMの優位性が損なわれたことである。