はじめにメモリの基礎的なものを書いてみたいと思います。 DDR400やPC2700など名称のばらつきやECC、Registered、CL=3などいろいろあると思いますので まとめてみたいと思います。
DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory)とは、SDRAMを改良して、外部クロックの2倍の周期で、データをやり取りできるようにしたSDRAMです。 従来のSDRAMでは、1クロックサイクルにつき1回しかデータをやり取り(入出力)できませんでしたが、DDR SDRAMでは、1サイクルの前半と後半のそれぞれでデータをやり取りすることにより、 同じクロックでも2倍のレートでデータを入出力できるようにして、高速化を図っています。更に高速化したDDRIIが登場します。
DDRIIのクロックは、下がるのでコストは高くありませんが、その分レイテンシが多くなるので、DDRII PC2-5300(DDR II 667)にならないとDDR IのPC3200(DDR400)より、トータルでパフォーマンスが良くならないです。Intelが、Core2の実質対応のチップセット、965からDDRII 800(PC2-6400)をサポートしましたので、一気に高速化しました。AMDは、メモリコントローラーをCPUに内蔵しているため、DDRII 800の正式サポートは、Rev.Gからになります。AM2に初めて対応した、Rev.Fでは、DDRII 667(PC2-5300)までの対応になります。
![]() |
メモリ・モジュール規格の種類
|
|||
モジュールの規格名
|
チップの規格名
|
モジュールの帯域幅
|
クロック周波数
|
| PC1600 | DDR-200 | 1.60GB/sec | 100MHz x 2 |
| PC2100 | DDR-266A(CL2.0) DDR-266B(CL2.5) |
2.13GB/sec | 133MHz x 2 |
| PC2700 | DDR-333 | 2.66GB/sec | 166MHz x 2 |
| PC3200 | DDR-400 | 3.20GB/sec | 200MHz x 2 |
| PC2-3200 | DDR II 400 | 3.20GB/sec | 100MHz x 4 |
| PC2-4300 | DDR II 533 | 4.26GB/sec | 133MHz x 4 |
| PC2-5300 | DDR II 667 | 5.33GB/sec | 166MHz x 4 |
| PC2-6400 | DDR II 800 | 6.40GB/sec | 200MHz x 4 |
CL(CAS Latency)とは、データが読み出せるようになるまでに、必要なクロック数のことで、この数値が少ないほどメモリは高速であるとは言えますが、DDR SDRAMではCL=2.5が標準的な速度です。この数値は普通に使う分には、あまり気にしなくても良いと思います。それよりマザーボードベンダー推奨メモリ重視です。
ECCメモリについて、ECC(Error Checking and Correcting)と言うように、エラーの検出と訂正を行なう機能を持ったメモリです。販売されているECCメモリには、入出力にレジスタ(バッファ)を持つタイプのRegisteredと、持たないタイプのUnbufferedと2種類あります。
必ずECCメモリ = Registeredではありません。
ただし、販売店によっては、ECCメモリくださいというと有無を言わさず、Registeredになるかもしれませんので、注意が必要かもしれません。比較的安価にDualが利用できたAMDの760MPの登場で、ECCメモリは、Registeredであると言う概念と市場的にも広まった感じがしますが(760MPはECC Registered必須でした)、PC133辺りまでは、どちらかと言うと、ECCメモリはUnbufferedが主流だったような感じがありました。
Registeredタイプのメモリの利点は、メモリ側から見るとバッファがあると、データを送る側とそれを受ける側 の間に立ってタイミングや信号の微妙な違いなどを吸収して、入出力を安定させて効率よく行うためです。 メモリコントローラ側から見ると、個々のDRAMチップを相手に入出力を行なうのか、単一のバッファを相手に行なうのか、という大きな違いがありますので、バッファがあることによりその向こうがどのようなチップ構成であっても、 メモリコントローラにとっては同じであり、Unbufferedタイプよりも、大容量のメモリモジュールを 構成することが可能になることです。
その代わり、余分な機構が備わる分、メモリモジュールが高価になるため、大容量が必要なサーバーやワークステーションで使用され、一般向けのPCでは、Unbufferedタイプが用いられています。 どちらをサポートするか、あるいは両方をサポートは、マザーボード(チップセット)次第になりますので、ECC Registeredメモリに対応していないマザーボードにECC Registeredメモリを挿しても動作しません。逆にECC Registered対応のマザーボードは、専用がほとんどですので、それにUnbufferedのメモリを挿してもまともに動作しません。
Intelのサーバー、ワークステーション向けのプラットフォーム(5000系)に、FB-DIMMというメモリが登場しました。FB-DIMMとはFully Buffered Dual Inline Memory Moduleの略で、Registeredメモリが、アドレスとコマンドをバッファリングするのに対してFB-DIMMは、モジュール上にAMB(Advanced Memory Buffer)が乗っており、すべてをバッファリングします。AMBは実質メモリコントローラーと言えるもの(シリアルとDRAMのパラレル変換もしています)で、データレートの6倍で動作します。チップセットのメモリーコントローラーと、FB-DIMMは、PCI Expressに準じた、ポイントツーポイントでシリアル接続しています。PCI Expressと違うのは、読み出しの上りが14レーンで、書き込みの下りが10レーンと非対称になっていること、クロック信号が、データ信号と分離していることです。
![]() |
FB-DIMMが登場した背景は、DDRIIなどで、シグナリングレートが上昇すると、1チャネルでサポートできる数が、基本的に少なくなります。すると高速化するメモリに対して、容量は増やせなくなり、むしろ製造コストの関係から減少する方向になってしまいます。チャンネル数は、現在1チャンネルあたりDDRなどのパラレルで240本も配線数があるので、増やそうにも、物理的、コスト的に難しいのです。FB-DIMMは、シリアルで接続されているため、1チャンネルで2〜8本のDIMMがサポートでき、69本の配線数で済むので、チャンネル数を増やすのも容易です。(Intelの5000系チップセットは4チャンネル持っています)
ただし、良い面だけでなく、デメリットもあります。まず、構造上メモリへのアクセスが遅くなります。次にコスト面で、AMBが乗っているだけでなく、FB-DIMMの基本特許はRambus社が持っており、ライセンス料が必要で高くなります。最後に熱の問題です。AMBがデータレートの6倍で動作するということは、667MHzで約4GHzで動作していることになります。これだけ高速に動作しているので、当然発熱が多いです。今のFB-DIMMは、メモリ1本が10W程度とみられており、4本で40Wとかなり熱いです。(ノートPCに使うCPU並です)通常のUnbufferedメモリと比較して、倍以上になります。次世代のDDR3に対応したAMB2が出ることには、解決するかもしれませんが。AMDのOpteronは、しばらくRegistered DDRIIでFB-DIMMは、AMB2が出てから採用と言う計画みたいです。
| 現在販売されているメモリの種類(上記のDDR II 667などと組み合わせてください) | ||
| 1. | ECCなし | Unbuffered(レジスタなし) |
| 2. | ECCあり | Unbuffered(レジスタなし) |
| 3. | ECCあり | Registered(レジスタあり) |
| 4. | ECCあり | Fully-Buffered(AMB搭載) |
| 大容量のメモリ搭載時の信頼性(安定性)の高い順に4.FB-DIMM > 3.ECC Registered > 2.ECC > 1.両方なし | ||
ECC Registeredメモリは、IntelのXeon(5000系はFB-DIMM)やAMDのOpteronなどサーバーや ワークステーション向けのマザーボードで主に対応しています。
UnbufferedのECCメモリを購入されるときは、チップセットが対応していても、マザーボードベンダーや種類で使用できない場合がありますので、必ず確認した方が良いです。もしECCに対応していないマザーボードにECCメモリを挿しても、ECC Registeredの場合は起動しませんが、ECC Unbufferedの場合は、ECCの機能を無視して動作すると思います。ですが、当然ECCの機能が有効でないと、折角の機能が生かせませんので、ECCメモリは高いのでもったいないです。(対応していてもBIOSで無効になっている事があるので、これも良く確認が必要です)