Vengineerの戯言

人生は短いけど、長いです。人生を楽しみましょう!

DDR5って、DDR4とは違うんだ

はじめに

先週、DDR5って、DDR4の延長ではなくて、32bit x 2 channel になっているのを知りました。*1

DDR5

gigazine.net

下図は、下記の記事からの説明のために引用します。

  • 単一のメモリモジュールが2チャンネルに分割されるようになる。
  • 64ビットデータチャネルをもつのではなく、DIMM毎に独立した32ビットデータチャネル、あるいはECCを考慮した40ビットのデータチャネルを持つ
  • 各チャネルのバースト長がDDR4ではBL8だったが、DDR5ではBL16になる。

DDR4-3200の64ビットデータチャンネルの帯域は25.6GB/s ですが、DDR5-6400の32ビットデータチャネルの帯域は25.6GB/s です。1枚のDIMMトータルとしての帯域は倍になりますが、チャネルでは同じです。DDR4-3200からDDR5-4800になった場合は、25.6GB/s から 19.2GB/s x 2 になり、全体の帯域は増えますが、チャネル当たりの帯域は減ります。

PCなどでは2枚のDDR4 DIMMを刺してインターリーブしていると思います。DDR5 DIMMの場合は1枚のDIMMの2個のチャネル内でインターリーブするんでしょうかね。。。

Intel CPUのDDR I/O Interleaving

下記に Intel 第12世代 CPUのDDR I/O Ingtrleaving の説明がありました。DDR4の時は2枚刺し、DDR5の時は4枚刺しなんですか?。。。え。いやいや違う Channel なので2枚刺しですね。

これを見ると、DDR4のNon-InterleaveとDDR5は同じ感じのようなので、Interleaveはされていないということですかね。

edc.intel.com

下記に Intel 第13世代 CPUのDDR I/O Ingtrleaving も同じですね。

edc.intel.com

12th Generation Intel® Core™ Processors : System Memory Controller Organization Mode (DDR4/5 Only)

おわりに

30年以上前にDRAMコントローラを学びました。その時はStatic Colunm DRAMというものを使いました。それから EDO DRAMというのもあったような気がします。その後は、SDRAMコントローラもちょこっと触りました。

それから30年が経ち、DDR5-6400、つまり、6.4Gbps で動かしているなんてすごいな?と思います。

*1: