DIMM(デュアルインラインメモリモジュール)とは
DIMM(Dual Inline Memory Module、ディム)は、複数のDRAMチップを
プリント基板上に実装したメモリ
モジュールであり、
コンピュータの主記憶装置として利用されます。また、そのピン配置や電気的特性を定めたDIMM規格自体を指すこともあります。従来の
SIMM(Single Inline Memory Module)では、基板の表裏にある対向する端子に同一の信号が送られていましたが、DIMMでは異なる信号が送られる点が大きな違いです。
現在、DIMMという言葉は、多くのパーソナル
コンピュータや
ワークステーションで使用されている
SDRAMを搭載した
モジュールを指すことが一般的です。
DIMMの規格
DIMMの規格は、JEDEC(Joint Electron Device Engineering Council)によって
標準化されており、搭載される
SDRAMチップの種類に応じて様々な規格が存在します。DIMMという名称は、メモリ基板を挿入する
スロット(ソケット)を指す場合もありますが、これは厳密には誤用であり、「DIMM
スロット」や「DIMMソケット」と呼ぶのが正確です。
DIMMインターフェースは、アドレス信号、データ信号、制御信号で構成されています。一般的に、PC用には64ビットデータのDIMMが使用されますが、信頼性が求められる
サーバーでは、ECC(Error Correcting Code)8ビットを付加した72ビットデータのDIMMが使用されます。
DIMMの種類と互換性
DIMMには、大きく分けて以下の3つの形態があります。
Unbuffered DIMM (UDIMM)
Buffered (Registered) DIMM
Fully Buffered DIMM (FB-DIMM)
これらのDIMMはインターフェースが異なるため、規格上の互換性はありません。また、各DIMM内でもDDR2やDDR3などの違い、ECCの有無、SDRAMの動作速度、動作電圧範囲などによって細かく規格が分かれており、同一種別間では概ね上位互換性が保たれています。実効転送速度と接続可能なモジュール数はトレードオフの関係にあります。
Unbuffered DIMM
Unbuffered DIMM(UDIMM)は、チップセットからのアドレス、制御、データ信号が直接DIMM基板上のSDRAMチップに接続される形態です。アドレス信号と制御信号は、すべてのモジュール上のすべてのSDRAMチップに分配されるため、駆動側の電流負荷が大きくなります。例えば、4ビットSDRAMチップが搭載されたDIMMの場合、アドレス線は16個のDRAM ICに分配されるため、1つのチャンネルあたりに接続できるモジュール数は3〜4枚程度が上限となります。
このように、Unbuffered DIMMは1つのチャンネルに多数接続することが難しいものの、他の2つの規格と比較して伝送路に介在物が少ないため、実効転送速度に優れており、コスト面でも有利です。ワークステーションの中でもメモリ容量が最優先ではないものや、パーソナルコンピュータのほとんどで使用されています。
Buffered DIMM
Buffered DIMM(Registered DIMM)は、アドレス信号と制御信号をDIMM基板上のレジスタードバッファと呼ばれるICで一旦受け、整形・増幅してから各SDRAMチップに分配するDIMM規格です。データ信号はバッファされません。
バッファの存在により、アドレス信号線と制御信号線の電気的負荷は1モジュールあたり1ICのみとなり、1つのチャンネルに多数のモジュールを接続できます。数GBから数十GBといった大容量の主記憶を必要とするサーバーに適しています。ただし、バッファを介することで、Unbuffered DIMMと比較してアクセスタイミングが異なります。例えば、読み出し(READ)の際には、バッファによってアドレスと制御信号が1クロック遅れてSDRAMチップに通知されるため、見かけ上DIMMからのデータ出力が1クロック遅延します。
DDR2やDDR3といったSDRAMチップが高速化するにつれて、バッファされていないデータ信号線の負荷やノイズ耐性の問題が顕在化しており、高速動作させるためには接続できるDIMMの数に制約があります。
Fully Buffered DIMM
Fully Buffered DIMM(FB-DIMM)は、アドレス、データ、制御信号のすべてを、DIMM基板上のAMB(Advanced Memory Buffer)と呼ばれるバッファ内蔵の専用コントローラチップで受ける形態のDIMMです。CPUやチップセットとは、PCI Express(PCIe)に似た高速シリアルインターフェースで接続されます。従来のDIMMがスタブのあるバス接続によって複数のモジュールを共有接続していたのに対し、FB-DIMMでは隣同士がポイントツーポイント接続によって拡張されるデイジーチェーン方式が採用されています。
従来のDIMMと比較してチップセット側の信号が削減されており、アドレス、制御、3.2~4.0GHzで駆動する上り用14レーン/下り用10レーンの24組の高速データ信号線(合計48本)を含む全69端子で構成されています。各信号線の伝送動作はPCIeに近いですが、通常はPCIeよりも短い伝送距離で、クロックは重畳されていません。サーバーなどの実使用環境では、書き込みに比べて読み出しの比率が圧倒的に高いため、書き込み方向と読み出し方向で信号の本数が異なる非対称構造となっています。
各モジュールに1つずつ備わるAMBは、上流側モジュールまたはチップセット(CPU)とのインターフェース、下流側モジュール側インターフェース、および自らの汎用SDRAMとのインターフェースという3方向へのインターフェースを備えています。各モジュールのAMBは、チップセット(CPU)に近い上流側から信号を受けると、自らがターゲットではない場合は隣接する下流側のモジュールへ信号を転送します。下流側から上流側への信号転送も同様にAMB間で順次行われます。このようにローカルなメモリコントローラとも言えるAMBが互いに接続されることで、デイジーチェーンが構築され、各チャネルあたり最大8枚のDIMMを接続できます。
各AMB間では同期転送による遅延が生じるため、CPUから見て遠いモジュール(下流側)へのアクセスは、近いモジュール(上流側)よりも遅くなります。各AMB内では、並列/直列変換や動作コマンドの翻訳、CRCコードの生成/確認などを高速に行うため、発熱量が多くなります。
米Intel社が主導してPCサーバーやワークステーション向けに製品化されましたが、AMBチップという高機能ICを使用するため高コストであり、放熱への配慮が必要なことや、チャネルあたりのモジュール数が増加することによってレイテンシが増大することから、エンタープライズサーバーのような大容量メモリと広帯域メモリアクセスが強く求められる用途を除いては、ミドル/ローエンドクラスのサーバーへの採用は広がりませんでした。
また、ラムバス社の特許権により、Buffered DIMMだけでなくFB-DIMMの構造に関してもロイヤリティの支払いが発生することも不利に働きました。
このため、Intel社は次世代メモリインターフェースとして、CPUからはFB-DIMMインターフェースでDRAMにアクセスするものの、AMBはマザーボード上に実装し、DIMM自体は従来の物に戻す計画を立てています。依然としてコンシューマー向けメモリはUnbuffered DIMMが主流であり、コンシューマーからエンタープライズサーバーまで幅広いSKUをカバーする次世代プロセッサNehalemのマスクバリエーションをいたずらに増やしたくないIntelの意図が伺えます。
関連項目
コンピュータ略語一覧
転送速度
類似の他種
RDRAM (Rambus
Dynamic Random Access Memory)
SIMM (Single In-line Memory Module)
外部リンク
JEDEC
* メモリ Mac Pro Retailer