現代のコンピュータの設計において、メモリジオメトリとはランダムアクセスメモリの内部構造を表します。メモリジオメトリは、コンピュータをアップグレードする消費者にとって重要な問題です。古いメモリコントローラは、後継製品と互換性がない可能性があるためです。メモリジオメトリに関する用語は、重複する用語が多いため、混乱を招く可能性があります。
メモリシステムの形状は多次元配列として考えることができます。各次元にはそれぞれ独自の特性と物理的な実現方法があります。例えば、メモリモジュール上のデータピンの数は1次元です。
身体的特徴
メモリジオメトリとは、RAMモジュールの論理構成を表すものですが、消費者にとって最も理解しやすいのは物理構成です。メモリジオメトリをめぐる混乱の多くは、物理構成によって論理構成が分かりにくくなる場合に発生します。RAMを最も特徴づける要素はフォームファクタです。RAMモジュールは、ノートパソコン、プリンター、組み込みコンピューター、小型フォームファクタコンピューターなど、スペースが限られたアプリケーション向けのコンパクトなSO-DIMM形式と、ほとんどのデスクトップで使用される DIMM形式があります。
その他の物理的特性は、物理的な検査によって判定されますが、メモリチップの数と、メモリ「スティック」の両面にメモリが搭載されているかどうかが重要です。RAMチップの数が2のべき乗に等しいモジュールは、メモリエラーの検出や訂正をサポートしていません。RAMチップが2のべき乗の間であれば、それらはECC(エラー訂正)に使用されます。
RAMモジュールは、側面と底面に刻まれた「キー」によって識別されます。このキーは、モジュールの技術と分類(例えば、DDR2かDDR3か、デスクトップ向けかサーバー向けかなど)を示します。このキーは、システムに誤ったモジュールを装着することを困難にするように設計されています(ただし、キーに規定されている要件以外にも多くの要件があります)。モジュールのキーが、装着予定のスロットのキーと一致していることを確認することが重要です。
モジュール上にメモリ以外のチップが追加されている場合は、モジュールがサーバーの大容量メモリ システム用に設計されており、量販システムとは互換性がない可能性があることを示している可能性があります。
この記事の次のセクションでは、システム内のすべてのスロットにまたがる論理構造を網羅する論理アーキテクチャについて説明します。そのため、スロット自体の物理的な特徴が重要になります。マザーボードのマニュアルを参照するか、ボード自体のラベルを読むことで、スロットの論理構造を判断できます。スロットが複数ある場合は番号が振られ、チャネルが複数ある場合は、同様にスロットが区別されます(通常は色分けされています)。
論理的特徴
1990年代には、キャッシュコヒーレントな非均一メモリアクセス(NUMA)を採用したコンピュータが登場しました。これにより、それぞれが独自のメモリコントローラを持つ複数のコンピュータを統合し、それらのコンピュータ上で動作するソフトウェアは、参加するすべてのシステムのI/Oデバイス、メモリ、CPUをあたかも一つのユニット(単一システムイメージ)のように扱うことが可能になりました。AMDがメモリコントローラをCPUに統合したOpteronをリリースしたことで、単一システムで複数のメモリコントローラを共有するNUMAシステムは、一般的なデスクトップ以上の処理能力を必要とするアプリケーションで普及しました。
チャネルは、ローカルメモリコントローラにおける最上位構造です。現代のコンピュータは、2つ、3つ、あるいはそれ以上のチャネルを持つことができます。通常、1つのチャネル内の各モジュールは、他のチャネル上の同じ位置に論理的に同一のモジュールが存在することが重要です。
モジュール容量は、モジュール内の総容量をバイト単位、またはより一般的にはワード単位で測定したものです。モジュール容量はランク数とランク密度の積に等しく、ランク密度はランク深度とランク幅の積です。[ 1 ]この仕様を表す標準的な形式は、(ランク深度) Mbit ×(ランク幅)×(ランク数) です。
ランクは、同じアドレスとデータ バスを共有し、低レベル アドレス指定でチップ セレクト(CS) によって選択されるメモリ モジュールのサブユニットです。たとえば、各面に 8 個のチップがあり、各チップが 8 ビット幅のデータ バスを持つメモリ モジュールの場合、ランクを 64 ビット幅と定義すると、面ごとに 1 つのランク、合計 2 つのランクを持つことになります。128 Mib × 16 の構成を持つMicron Technology MT47H128M16 チップで構成されたモジュールは、チップあたり 128 Mi のメモリ深度と 16 ビット幅のデータ バスを意味します。モジュールのボードの各面にこれらのチップが 8 個ある場合、合計 16 チップ × 16 ビット幅のデータ = 合計 256 ビット幅のデータになります。64 ビット幅のメモリ データ インターフェイスの場合、これは 4 つのランクを持つことに相当し、各ランクは 2 ビットのチップ セレクト信号によって選択できます。Intel 945チップセットなどのメモリコントローラは、サポートする構成として、「×8および×16デバイス向けの256Mib、512Mib、1GibのDDR2テクノロジ」、「最大512Mibの密度までのすべてのDDR2デバイスで4ランク」、「1Gibit DDR2デバイスで8ランク」と記載しています。例として、各モジュールの容量が1GiBである Kingston KHX6400D2 /1Gメモリモジュール4個を搭載したi945メモリコントローラを考えてみましょう。[ 2 ] Kingstonは、各モジュールが16個の「64M×8ビット」チップで構成され、各チップが8ビット幅のデータバスを持つと説明しています。16×8は128なので、各モジュールには64ビットのランクが2つあります。したがって、MCHの観点からは、1GBのモジュールが4つあることになります。より高次の論理レベルでは、MCHはそれぞれ4ランクを持つ2つのチャネルも認識します。
一方、バンクは論理的にはランクに似ていますが、物理的なハードウェア上での実装は全く異なります。バンクは単一のメモリチップ内のサブユニットであるのに対し、ランクはモジュール上のチップのサブセットで構成されるサブユニットです。チップセレクトと同様に、バンクはメモリインターフェースの一部であるバンクセレクトビットによって選択されます。
組織の階層
メモリチップ
メモリジオメトリによってカバーされる最も低レベルの構造で、「メモリデバイス」と呼ばれることもあります。これらは、各モジュール、またはRAMモジュールを構成するコンポーネントICです。チップの最も重要な測定値は、ビット単位で測定される密度です。メモリバス幅は通常チップ数よりも大きいため、ほとんどのチップは幅を持つように設計されています。つまり、チップは内部で均等に分割されており、1つのアドレス「深度」が呼び出されると、1つの値ではなく複数の値が返されます。深度に加えて、チップレベルでは2つ目のアドレス指定次元であるバンクが追加されています。バンクにより、1つのバンクが使用可能である間、別のバンクはリフレッシュ中であるため使用不可になります。
メモリモジュール
モジュールの測定基準には、サイズ、幅、速度、レイテンシなどがあります。メモリモジュールは、必要なモジュール幅となるようにメモリチップを複数個組み合わせて構成されます。例えば、32ビットSIMMモジュールは、8ビット幅(×8)のチップ4個で構成できます。メモリチャネルの項で述べたように、1つの物理モジュールは1つ以上の論理ランクで構成できます。この32ビットSIMMが8ビットチップ8個で構成されている場合、SIMMは2つのランクを持つことになります。
メモリチャンネル
メモリチャネルはランクで構成されています。物理的には、メモリモジュールが1つだけのメモリチャネルでも、論理的には1つ以上のランクを持つように見える場合があります。
コントローラー組織
これは最高レベルです。一般的なコンピューターには、1つまたは2つのチャネルを持つメモリコントローラーが1つしかありません。論理機能のセクションでは、メモリコントローラーのネットワーク化が可能なNUMA構成について説明しました。例えば、2ソケットAMD K8では、各ソケットに2チャネルのメモリコントローラーを搭載できるため、システム全体で合計4つのメモリチャネルが利用可能になります。
メモリジオメトリ表記
メモリ ジオメトリを指定するさまざまな方法があり、異なるタイプの情報が提供されます。
モジュール
(メモリの深さ) × (メモリの幅)
メモリ幅は、メモリモジュールインターフェースのデータ幅をビット単位で指定します。たとえば、64 は 64 ビットのデータ幅を示します。これは、SDR および DDR1~4 ファミリの RAM で一般的な非 ECC DIMMに見られるものです。幅が 72 のメモリは ECC モジュールを示し、データ幅にエラー訂正コードシンドローム用の 8 ビットが追加されます (ECC シンドロームにより、シングルビットエラーを訂正できます)。メモリ深度は、ビット単位の総メモリ容量を非パリティメモリ幅で割ったものです。メモリ深度は、32×64 や 64×64 のようにメガ (2 20 )単位で示される場合もあります。これは、それぞれ 32Mi の深度と 64Mi の深度を示します。
チップ
(メモリ密度)
これはチップの総メモリ容量です。例: 128 Mib。
(メモリの深さ) × (メモリの幅)
メモリ深度は、メモリ密度をメモリ幅で割った値です。例:128Mbの容量と8ビット幅のデータバスを持つメモリチップの場合、16Meg × 8と表記されます。「Mi」が省略されて16×8のように表記される場合もあります。
(バンクあたりのメモリ深度) × (メモリ幅) × (バンク数)
例: 上記と同じ容量とメモリ幅を持ちながら 4 つのバンクで構成されたチップは、4 Mi × 8 × 4 と指定されます。
参照
- DIMM
- デバイス帯域幅のリスト
- ダイナミックランダムアクセスメモリ
- ランダムアクセスメモリ
- 記憶の組織化
- メモリアドレス
- メモリバンク
- 銀行の切り替え
- 両面RAM
- デュアルチャネルアーキテクチャ
- ページアドレスレジスタ
参考文献
- ^ Ultimate Memory Guide (PDF)、キングストン、2007年、2011年7月13日時点のオリジナル(PDF)からアーカイブ。
- ^ 「KHX6400D2/1G」(PDF) .キングストンテクノロジー.
外部の
- 「RAM」、マザーボード(FAQ)、IXT labs、2006。
- FAQ、 RAMpedia、2010年5月16日にオリジナルからアーカイブ。
- 「パート1」、RAMガイド、Ars Technica。
- 「バンク」、RAM、PCガイド。
- KHX6400D2 1G (PDF) (データシート)、バリューRAM、2012年3月10日にオリジナル(PDF)からアーカイブ、 2010年8月5日取得。
- 307502 (PDF) (データシート)、Intel。