メインコンテンツにスキップ

メモリのタイプ、速度タイミングに加え、システムに適したメモリを選択する際には、他にも考慮すべき問題がいくつかあります。以下のセクションで、それらの問題についてそれぞれ詳しく説明します。

デュアルチャネル動作

最高のパフォーマンスを得るために、最新のプロセッサは単一のメモリモジュールでは提供できないほどの大容量のメモリ帯域幅を必要とします。例えば、800 MHzのFSBを搭載したIntel Pentium 4プロセッサは最大6.4 GB/sのメモリ帯域幅を使用できますが、これはPC3200 DIMMモジュール1枚で提供される帯域幅の2倍に相当します。この帯域幅の増大というニーズに対応するため、チップセットの設計者は、2つの物理メモリモジュールを1つの論理メモリモジュールとして認識させる「デュアルチャネルメモリコントローラ」を設計しました。これにより、CPUとメモリ間のデータ転送速度が実質的に倍増します。

デュアルチャネル動作がシステムパフォーマンスにとって重要かどうかは、使用するプロセッサによって異なります。例えば、最も高速なAthlon XPプロセッサは400 MHzのFSBを使用します。Athlon XPはプロセッサとメモリ間で64ビット(8バイト)の経路を使用するため、必要な最大メモリ帯域幅は3.2 GB/sです。これはPC3200 DIMMモジュール1枚の帯域幅と正確に一致するため、Athlon XPシステムでデュアルチャネルメモリを使用しても、パフォーマンス上のメリットはほとんど、あるいは全くありません。

逆に、Pentium 4、Pentium D、Athlon 64などの最新プロセッサを使用しているシステムをアップグレードする場合、デュアルチャネルメモリ動作が有効であることを確認することが重要です。そうでないと、プロセッサがメモリの応答を待機する時間に多くの時間を浪費してしまうため、システムパフォーマンスが著しく損なわれます。

ほとんどのデュアルチャネル対応マザーボードには、メモリ用のスロットが2つまたは4つ用意されています(一部には3つしか用意されていないものもあり、そのようなマザーボードで3つ目のメモリスロットにメモリを取り付けると、デュアルチャネルメモリ動作が無効になります)。標準的なデュアルチャネル対応マザーボードでメモリをアップグレードする際は、以下のガイドラインに従ってください。

  • スロットが2つまたは4つあるマザーボードで、1つしか使用されていない場合は、搭載済みのメモリを倍増させるだけで十分であれば、取り付け済みのモジュールと同一または非常に近い仕様の新しいメモリモジュールを取り付けてください。より多くのメモリが必要な場合は、元のモジュールを取り外し、同一の新しいモジュールを2つ取り付けてください。
  • スロットが4つあり、そのうち2つが使用されているマザーボードでは、現在搭載されているメモリの量とアップグレード後に必要な合計量に応じて、新しく一致したメモリモジュールを2つまたは4つ取り付けてください。FIXME TABLEWASHERE
  • スロットが4つあり、すべて使用されているマザーボードでは、現在搭載されているモジュールの容量とアップグレード後に必要な合計メモリ量に応じて、新しく一致したメモリモジュールを2つまたは4つ取り付けてください。

利用可能なメモリスロットの数よりも少ない数のモジュールを取り付ける場合は、どのモジュールをどこに取り付けるかを決めることが重要です。ほとんどのデュアルチャネル対応マザーボードでは、メモリスロットが以下のようにラベル付けされています。

チャネルA—DIMM 0 (または 1)

チャネルA—DIMM 1 (または 2)

チャネルB—DIMM 0 (または 1)

チャネルB—DIMM 1 (または 2)

残念ながら、どのスロットがどれなのかが常に明確であるとは限りません。チャネルAのスロットがグループ化され、チャネルBのスロットが少し離れている場合や、両方のチャネルのDIMM 0スロットがまとめられ、それらからDIMM 1スロットが少し離れている場合があります。多くのマザーボードではDIMMスロットが色分けされていますが、その色分けが常に直感的であるとは限りません。例えば、図6-4はIntel D945PVSマザーボードの4つのメモリスロットを示しています。2つのスロットが青で、2つが黒ですが、この色が何を示しているのでしょうか?両方の青いスロットがDIMM 0(またはDIMM 1)なのでしょうか、それとも両方の青いスロットがチャネルA(またはチャネルB)なのでしょうか?

図6-4:色で示されたデュアルチャネル対応DIMMスロット

Intelの慣例ではDIMM 0を色分けし、プロセッサのソケットに近い側にチャネルAを配置するため、このマザーボードのスロットは上から下にチャネルA/DIMM 0、A/1、B/0、B/1となっています。他のマザーボードメーカーは異なる方法を採用しています。このマザーボードに2つのメモリモジュールを取り付ける場合、青いスロットに取り付けると、一方のDIMMがチャネルAに、もう一方がチャネルBに配置されます。代わりに上部の2つのスロットに2つのモジュールを取り付けた場合、利用可能なシステムメモリ量は同じですが、マザーボードはシングルチャネルメモリモードでの動作を強制され、パフォーマンスが大幅に低下してしまいます。

ノンパリティモジュールとECCモジュール

「ノンパリティメモリ」とも呼ばれる標準的なメモリは、8ビットを使用して8ビットバイトを格納します。「ECCメモリ(Error Correcting Codeメモリ)」は、「パリティメモリ」とも呼ばれ、9ビットを使用して8ビットバイトを格納します。ECCメモリによって提供される追加のビットは、エラー検出および訂正情報を格納するために使用されます。

ノンパリティメモリモジュールは、エラーを検出することも訂正することもできません。ECCメモリモジュールは、すべてのマルチビットエラーを検出し、すべてのシングルビットエラーを訂正し、一部のマルチビットエラーを訂正できます。メモリエラーは非常に稀であるため、ほとんどのデスクトップシステムでは、ECCメモリよりも安価で高速なノンパリティメモリが使用されています。実際、ほとんどのデスクトップ向けチップセットはECCメモリをサポートしていません。そのようなシステムにECCメモリを取り付けた場合、メモリが全く認識されないか、あるいは可能性としては、追加ビットを無視して単にノンパリティメモリとして扱われるだけです。

ECCメモリはデスクトップシステムで使用されることもありますが、サーバーやその他の大規模で重要なシステムでより一般的です。ECCモジュールには9:8の比率でメモリチップが多く搭載されているため、通常は同様のノンパリティモジュールより10%〜15%高価です。また、ECC値を計算して格納するためのECCモジュール上の回路がオーバーヘッドを発生させるため、ECCモジュールは同様のノンパリティモジュールよりもわずかに低速です。

ECCメモリモジュールは、以下のような状況でのみ使用することを推奨します。

  • 現在取り付けられているメモリモジュールがECCである場合、同一または非常に近い仕様のモジュールを取り付けてください。
  • 大容量のメモリ(2 GB以上)を取り付ける場合は、ECCモジュールを使用してください。

それ以外の場合は、お金を節約してノンパリティモジュールを取り付けてください。

アンバッファードモジュールとレジスタードモジュール

「アンバッファードメモリ」モジュールは、メモリコントローラがモジュール上のメモリチップと直接通信できるようにします。「レジスタードメモリ」(「バッファードメモリ」とも呼ばれます)モジュールは、メモリコントローラとメモリチップの間にさらなる回路層を配置します。

すべてのメモリコントローラには制御可能なデバイス(個々のメモリチップ)の数に制限があり、それが使用可能なメモリモジュールの最大容量を制限するため、特定の環境ではレジスタードメモリが必要です。メモリコントローラがアンバッファードメモリモジュールと通信する場合、すべてのメモリチップを直接制御します。一方、メモリコントローラがレジスタードメモリモジュールと通信する場合は、バッファ回路とのみ通信し、実際のメモリチップはコントローラから認識されません。

レジスタードメモリの唯一の利点は、システムが大容量のメモリモジュールを使用できることです(その時点で最大容量のモジュールは、レジスタード形式でしか提供されていないことがよくあります)。レジスタードメモリの欠点は、アンバッファードメモリよりもかなり高価であることと、バッファを使用することによるオーバーヘッドが原因で動作が目に見えて遅いことです。

ほとんどのデスクトップシステムはアンバッファードメモリモジュールのみをサポートしています。少数のシステムでは、レジスタードメモリとアンバッファードメモリの両方を使用できます。ごくわずかなデスクトップシステム、特にSocket 940のAMDモデルではレジスタードメモリが必要です。システムのメモリをアップグレードする場合、レジスタードメモリモジュールは以下のような状況でのみ使用することを推奨します。

  • システムがレジスタードメモリモジュールのみに対応している場合。
  • システムがアンバッファードまたはレジスタードメモリモジュールに対応しており、すでにレジスタードモジュールが取り付けられている場合。
  • 取り付けたいメモリ容量が、レジスタード形式でしか入手できないモジュールの使用を必要とする場合。

マザーボードの互換性に関する問題

マザーボードによって、サポートされる特定のメモリ構成は異なります。マザーボードに空きメモリスロットがある場合、その空きスロットにサポートされているメモリモジュールを取り付けるだけで簡単にメモリをアップグレードできると考えるのが妥当に思えます。残念ながら、それが常に正しいとは限りません。メモリモジュールの速度、容量、密度、構成など、いくつかの要因が関係してきます。

メモリ速度

高速なメモリを取り付けると、取り付け可能なDIMMの枚数が減る場合があります。例えば、マザーボードにDIMMスロットが3つあり、すべてにPC2700 DIMMを取り付けられるとします。しかし、そのマザーボードは最大で2枚のPC3200 DIMMしかサポートしていない可能性があり、PC3200メモリを取り付ける場合は3つ目のDIMMスロットを空にしておく必要があります。

モジュール容量

すべてのマザーボードがすべてのDIMM容量をサポートしているわけではありません。例えば、一部のマザーボードは256 MBのDIMMをサポートしていても、512 MBのDIMMはサポートしていない場合があります。許容される組み合わせも異なる場合があります。例えば、あるマザーボードは4つすべてのメモリスロットで512 MBのDIMMをサポートしているかもしれません。別のマザーボードでは、4つのスロットのうち2つしか512 MBのDIMMをサポートしておらず、残りの2つのスロットは空にしておくか、256 MB以下のDIMMを取り付ける必要があるかもしれません。さらに別のマザーボードでは、512 MBのDIMMを使用して最大1 GBのRAMまでしかサポートしておらず、最初の2つのスロットに512 MBのDIMMを取り付けると、残りの2つのスロットを空にしておく必要があるかもしれません。

Row limits

==== 行(Row)の制限 ===

多くのマザーボードでは、すべてのメモリスロットが使用されている場合に取り付け可能な行の数が、可能な行数よりも少なく制限されています。片面DIMMは1行としてカウントされ、両面DIMMは2行としてカウントされます。例えば、マザーボードにメモリスロットが4つあり、取り付け可能なメモリが行数で5行までと制限されている場合、4つのスロットすべてに片面DIMMを取り付けることができます(合計4行)。両面DIMMを2つ取り付けると4行を占有し、残りは1行しか利用できなくなります。そのシステムにはあと1枚の片面DIMMしか取り付けられず、合計で5行となります。

メモリ密度と構成

メモリモジュールの製造に使用されるメモリチップは、異なる密度で作られています。現在のモジュールでは256メガビット(Mb)、512 Mb、または1 Gbのチップが使用されています。古いモジュールでは64 Mbまたは128 Mbのチップが使用されています。ノンパリティモジュールは4、8、または16個のチップを使用し、ECCモジュールは5、9、10、または18個のチップを使用します。例えば、512 MBのノンパリティメモリモジュール(8ビット/バイト)は、1 Gbチップを4個、512 Mbチップを8個、または256 Mbチップを16個使用して製造できます。同様に、512 MBのECCメモリモジュール(9ビット/バイト)は、1 Gbチップを4個と512 Mbチップを1個、512 Mbチップを9個、512 Mbチップを8個と256 Mbチップを2個、または256 Mbチップを18個使用して製造できます。

古いマザーボードで使用されているチップセットのメモリコントローラは、高密度のチップを認識しない場合があります。例えば、特定のマザーボードのメモリコントローラは64、128、256、512 Mbのチップ密度は認識できても、1 Gbは認識できないことがあります。そのようなマザーボードに512 MBのメモリモジュールを取り付けたい場合、512 Mbチップを8個使用したモジュール(512X8)や256 Mbチップを16個使用したモジュール(256X16)は使用できても、1 Gbチップを4個使用したモジュール(1024X4)は使用できません。

同様に、新しいマザーボードで使用されるメモリコントローラが低密度のチップを認識しない場合があり、古い小容量のDIMMが動作しない可能性があります。例えば、最近のマザーボードが256 Mb、512 Mb、1 Gbのメモリチップしか認識できない場合、128 Mbチップを8個使用した古い128 MB DIMMを取り付けても認識されません。

メモリコントローラは、サポートする構成のタイプも異なります。一部のコントローラはX4、X8、X16のモジュールをサポートしていますが、多くのコントローラはそれらのうち1つか2つしかサポートしていません。例えば、Intel 945PチップセットはX8の構成のみをサポートしています。512X8の512 MBモジュール(512 Mbチップ8個)を取り付けた場合、マザーボードは512 MBの全容量を認識して使用します。他の512 MBの構成(1024X4や256X8)はサポートされていません。サポートされていない構成を使用するモジュールを取り付けた結果は予測できません。マザーボードが名目上の容量の何分の一かとしてモジュールを認識する場合もあれば、単にモジュールを認識しない場合もあります。

コンピュータメモリについてさらに詳しく

Sam Goldheart

メンバー登録日: 10/18/12

478,182 ポイント

538のガイドは作成済み

チーム

iFixit iFixit人のメンバー

Staff

123 メンバー

86,246のガイドは作成済み

0 件のコメント

コメントを追加

統計データ:

過去 24時間: 0

過去 7 日: 13

過去 30 日: 35

今までの合計 23,289