はじめに
下記のXの投稿を見て、何?と思いました。Arrow Lake の メモリコントローラの使い方のようですが。。
ARL Memory controller implementation https://t.co/qlqVTc1ROO pic.twitter.com/40D7zpDffx
— 포시포시 (@harukaze5719) 2024年10月25日
ということで、調べてみました。
Arrow Lake の メモリコントローラの使い方
下記の記事に載っている図が分かりやすかったです。
その図を説明のために引用します。左側が Arrow Lake、右側が Metoer Lake かな?
右側は、2つのメモリコントローラが CH0 と CH1 に繋がっています。つまり、64ビット単位でアクセスする(DIMM)。同時にアクセスできるのは、64ビットが2つ。
一方、左側は、各メモリコントローラから32ビットのCH0とCH1が出ていて、同時にアクセスできるのは、32ビットが4つ。
Metoer Lake のDRAMは、DDR-5600で、Arrow Lake の DRAM は、DDR-6400 ですが、同じ動作周波数で考えると、全体の帯域は同じだけどね。
DDR-5600 で考えると、
って感じですかね。
コアがいっぱいあるので、メモリポートは多い方がいいような気がします。
Metoer Lake と Arrow Lake の SoC Tile の メモリコントローラの部分、確かに変わったような気がしますね。
- Alder Lake : LPDDR4/LPDDR5, DDR4/DDR5
- Raptor Lake/Raptor Lake Refresh : DDR4/DDR5
- Meteor Lake : DDR5
Lunar Lake
Lunar Lake は、128bitなLPDDR5Xで、16GB x 2 です。1つのLPDDR5Xは、64bitですが、DDR5と同じように32bit x 2です。
なので、Arrow Lakeのような感じにできそうですが、どうなんでしょうか?
Lunar Lake の Die shot を見る限り、メモリコントローラは1個っぽいですね。
おわりに
DDR5が使われるようになっていたが、DDR4との共有を考えると、DDR5でも64ビット(32ビット x2) という使い方になっていたんでしょうね。。
下記の記事にDDR4とDDR5の時の説明の図が載っていました。
説明のために引用します。
このブログでも、2022年11月に取り上げていました。