分かり易いメモリの話 コンピュータのメインメモリの話
メモリにまつわる話は多く、分かりにくい話も多いです。
自分への覚書用に(よく忘れるので)、自分用に分かり易く書きます。
ここでの話は、コンピュータ(主にパソコン)のメインメモリの話です。
表題では「チャネル」としましたが、本文内は「チャンネル」と記載しています。
「チャネル」と「チャンネル」の使い分けが分かりません。
製品としてのメモリモジュールを、本文内では「メモリ」と記載しています、お読み変えください。
本文は冗長です、不要な箇所は読み飛ばしてください。
メモリについて DDR5への移行
プロセッサー(CPU)は、低速なストレージからプログラムやデータの読み込みを行います。
毎回、低速なストレージから読み書きを行うとプロセッサー(CPU)が遊びます(待ちます)。
メモリは、プログラムやデータを一時保存し、高速化するためのワークエリアのようなものです。
最近はストレージが高速化されています。
このままストレージとメモリの速度差が縮まると、メモリの存在意義が薄れてしまいます。
加えて、プロセッサー(CPU)も高速化され、より速いメモリが望まれている状況もあって、メモリはDDR4後継のDDR5へ移行しつつあります。
DDR5はDDR4の2倍の帯域幅(速度、通信量)をサポートします。
メモリの役割がよくわからないという方は、メモリとは、メモリの役割をご覧ください(もう少し詳しく説明しています)。
メモリーのオーバークロック
メモリを定格より高いクロックで動作させること。
メモリには「OCメモリ」と「ネイティブメモリ」があり(販売されてい)ます。
OCメモリは、オーバークロック メモリで、定格(ネイティブ)より高い周波数で動作するメモリになります。
このオーバークロック メモリ(OCメモリ)への対応に、Intel、AMDはそれぞれ、
Intelは、XMP(Extreme Memory Profile)
AMDは、EXPO(Extended Profiles for Overclocking)
という仕様が用意されています。
メモリーとマザーボードが対応している必要がありますが、規格対応していれば、ほぼ動作するのではないかと思ってます・・・が、動かないこともある(らしい)。
チャンネル デュアルチャンネル(動作)
マザーボードには、メモリのスロットが2つのものと4つのものがあります。
スロット数に関係なく、データの読み出し書き込みをする機能をチャンネルと呼び、通常は1チャンネルで2スロットまで対応します。
メモリのスロットが4つあるものでもチャンネルは2つです。
逆にスロットが2つのものでも2チャンネル仕様であるのが一般的です(昔は1チャンネルのものもあった話)。
メモリのスロットが2チャンネルあるマザーボードでは、それぞれ(別々)のチャンネルを協調動作させることによって、読み出し速度、書き込み速度を上げる事ができます。これをデュアルチャンネルと呼びます。
以下のようにメモリを差します。
チャンネルA1+チャンネルB1
チャンネルA2+チャンネルB2
要点は、異なるチャンネルにメモリを差す事です(同じ仕様のメモリを)。
実際の装着についてはマザーボードのマニュアルに記載がありますのでご覧ください。
デュアルチャネル(動作)では、1.5倍ほどの機能向上が見込まれます。
また、それぞれのスロットで、対応メモリスペック(速度)が異なるものなので、この場合、遅い方のスペックで動作します。
デュアルチャンネルで動作させるためには、同容量の同じ仕様のメモリを使うことになりますので、2枚組で売っているメモリを購入するのが間違いありません。
「デュアルチャンネル」に対しての「シングルチャンネル」は「シングルチャンネル動作」を意味します。
メモリ ランク(Rank)について
メモリには、1R(1ランク)製品と2R(2ランク)製品があります。
メモリは容量に関わらず64bit単位で読み書きがおこなわれます。
この64bitの呼び出し単位でメモリチップはグループ(ブロック)化され、この1グループをランクと呼びます。
メモリを構成するメモリチップ数が多い場合、1ランクでは収まらないので2ランク(64ビットのグループが2セット)で構成されたりします。
メモリ総容量が大きい場合や、小容量のチップが使われている場合には沢山のメモリチップが使われる為、2ランク製品になります。
同じ容量のメモリでも1R製品と2R製品があるのは、1チップのメモリ容量が大きものを使うか小さいものを使うかの差になります。
ex. 1ランク、2ランク (1R 2R)
>メモリは容量に関わらず64bit単位で読み書きを行います。
1チップ2GBのメモリチップで16GBのメモリを考えます。
1チップに対して8bitづつ読み書きする。
8チップ(16GB) X 8bit で64bit
これが1ランク製品です。
同じチップで32GBメモリを考えます。
16チップ(32GB)X 8bit だと128bitになってしまいます。
しかしデータの呼び出しは64bit単位なので、
8チップ(16GB) X 8bit で64bit
8チップ(16GB) X 8bit で64bit
このように2セット(グループ)で32GBにします。
これが2ランク製品です。
同じ仕様で、4GBチップを使えば、32GBメモリでも4GB X 8チップで32GB容量の1ランク製品になります。
チップ容量とメモリ容量によって、1ランク製品であったり2ランク製品であったりします。
DPC (DIMM Per Channel)について 2枚差し 4枚差し
DPCは、マザーボードやCPUのスペック表示に使われます。
チャンネルあたりに、何枚のメモリを装着するかを表し、
1DPC
2DPC
と表記されます。
1DPC:チャンネルあたり1枚装着
2DPC:チャンネルあたり2枚装着
になります。
チャンネルについては後述します。
参考:第 12 世代インテル® Core™ プロセッサーをサポートするインテル® 600 シリーズ・マザーボードへの DDR5/DDR4 メモリーモジュールの取り付け
DPCとランク表示 スペックの見方・読み方
ex.
1DPC 1R:7200+
1DPC 2R:6000+
2DPC 1R:5600+
2DPC 2R:4800+
上記のような記載は、
1DPC 1R:1ランク製品をチャンネルあたり1枚装着時の仕様
1DPC 2R:2ランク製品をチャンネルあたり1枚装着時の仕様
2DPC 1R:1ランク製品をチャンネルあたり2枚装着時の仕様
2DPC 2R:2ランク製品をチャンネルあたり2枚装着時の仕様
です。
ex.
1DPC 1R:7000+
1DPC 2R:6600+
2スロット製品で上記の仕様の場合、2スロットで2チャンネルとなります。
(各スロット、1チャンネルずつ)
1チャンネルあたり2枚は装着できませんので、2DPCの記載がありません。
2枚差し 4枚差し の補足
ex.
1DPC 1R:7200+
2DPC 1R:5600+
(1ランク製品で説明します)
2スロットのマザーボードの場合
マザーボードの仕様に寄りますが、最近のマザーボードであれば、先述のように2スロットで2チャンネルになっています。
2枚差しの場合、1DPC 1R:7200+で動作します。
(2枚差し)4スロットのマザーボードの場合
異なるチャンネルにメモリを差せば、1DPC 1R:7200+で動作します。
また、デュアルチャンネル動作(マザーボードによる)が期待できます。
同じチャンネルに差せば、2DPC 1R:5600+で動作します。
(4枚差し)4スロットのマザーボードの場合
各チャンネルに2枚を指すことになるので、2DPC 1R:5600+で動作します。
CLについて
メモリのスペックには、「CL22」とか、「22-22-22」とか書いてあったりします。
CLは「CASレイテンシ」の事で、遅延時間(クロック数)を表します。
メモリは行(RAS信号)、列(CAS信号)を指示してデータを読み書きするのですが、このCAS信号を出してから、実際の読み書きが行われるのには時間(クロック)が必要で、この遅延時間を示すスペックになります。
CL22とあれば、CAS信号を出してから22クロック後に実際の読み書きが行われます。
CLを比較する場合 レイテンシの考え方
CLの数値が少ない方が低レイテンシになりますが、あくまでメモリ動作周波数が同じ場合の話になります。
動作周波数が高いメモリほど、1クロックあたりの時間が短いので、実際の遅延時間は短くなります。
逆に動作周波数が低ければ、CL値が低くても実際の遅延時間は長くなります。
チップ規格とモジュール規格
コンピューターのメインメモリ用に売られているメモリを「メモリモジュール」と呼びます。
細長い基盤に「メモリチップ」が載せられています。
チップ規格は、搭載されているメモリチップの仕様を表し。
モジュール規格は、メモリモジュールの製品としての仕様を表しています。
ex.
チップ規格
「DDR5-5200」:DDR5仕様チップ。メモリクロック(動作周波数)5200MHz対応。
モジュール規格
「PC5-41600」:PC5はDDR5仕様を表します。41600はチップ規格のメモリクロック(動作周波数)を8倍した数字で、データ転送速度(単位はMB/s)を表します。5200 x 8 = 41600
DDR5 規格一覧
Ryzen 7000シリーズのCPUの定格最大メモリクロックは、DDR5-5200。
(4枚差しの場合、DDR5-3600)
定格以上で使用する場合、OC(オーバークロック)メモリになります。
参考価格は16GBメモリ、2024.2.25の価格.com調べ
チップ規格 | モジュール 規格 | 帯域 (GB/s) | 参考価格 2枚組 |
DDR5-4000 | PC5-32000 | 32.0 | |
DDR5-4400 | PC5-35200 | 35.2 | |
DDR5-4800 | PC5-38400 | 38.4 | 9,790 |
DDR5-5200 | PC5-41600 | 41.6 | (EN)13,639 (OC)14,800 |
DDR5-5600 | PC5-44800 | 44.8 | (EN)12,429 (OC)14,980 |
DDR5-6000 | PC5-48000 | 48.0 | (EN)15,279 (OC)15,980 |
DDR5-6400 | PC5-51200 | 51.2 | (EN)19,380 (OC)17,951 |
DDR5-6600 | PC5-52800 | 52.8 | (EN)25,330 (OC)19,500 |
DDR5-6800 | PC5-54400 | 54.4 | (EN)19,880 (OC)19,852 |
DDR5-7000 | PC5-56000 | 56.0 | (EN)31,009 (OC)25,063 |
DDR5-7200 | PC5-57600 | 57.6 | (EN)26,341 (OC)22,520 |
DDR5-7600 | PC5-60800 | 60.8 | (EN)29,040 |
DDR5-8000 | PC5-64000 | 64.0 | (EN)42,515 |
DDR4 規格一覧
Ryzen 5000シリーズのCPUの定格最大メモリクロックは、DDR4-3200。
(4枚差しの場合、DDR4-2667*1)
定格以上で使用する場合、OC(オーバークロック)メモリになります。
*1:AMDのスペックシートでは、「System Memory Specification:Up to 3200MT/s」とだけあるものがあって、複数枚を差した場合のスペックが案内されていないものがあります。DDR4-2667は記載のあったCPUです。
参考価格は16GBメモリ、2024.2.25の価格.com調べ
チップ規格 | モジュール 規格 | 帯域 (GB/s) | 参考価格 2枚組 |
DDR4-2400 | PC4-19200 | 19.2 | |
DDR4-2666 | PC4-21333 | 21.3 | |
DDR4-3200 | PC4-25600 | 25.6 | |
DDR4-3600 | PC4-28800 | 28.8 | |
DDR4-4000 | PC4-32000 | 32.0 | (EN)17,750 (OC)12,508 |
DDR4-4200 | PC4-33600 | 33.6 | |
DDR4-4266 | PC4-34100 | 34.1 | (OC)13,405 |
DDR4-4400 | PC4-35200 | 35.2 | (OC)14,151 |
DDR4-4600 | PC4-36800 | 36.8 | (EN)24,690 (OC)18,800 |
DDR4-4800 | PC4-38400 | 38.4 | (OC)20,800 |
DDR4-5000 | PC4-40000 | 40.0 | |
DDR4-5200 | PC4-41600 | 41.6 | |
DDR4-5333 | PC4-42666 | 42.6 | |
DDR4-5600 | PC4-44800 | 44.8 |
メモリについての補足説明
メモリとは、メモリの役割 コンピュータのメインメモリの話
コンピューターは、基本、プロセッサー(CPU)でプログラムを実行したり、データ処理をおこないます。
このプログラムやデータはストレージ(SSDやHDD)から読み込まれて処理が行われますが、プロセッサーに比べてストレージはとても低速です。
プロセッサー内部には、読み込んだプログラムやデータを保存する領域がありキャッシュメモリと呼ばれますが、サイズは相対的(何もかも賄う)に小さいです。
そこで、プロセッサーやキャッシュメモリよりは低速ながら、ストレージよりは高速なメモリを用意して、コンピューターの処理速度を上げ(プロセッサーの待機時間を減らし)ています。
ただし、コンピューターの使い方によるところですが、場合によってはメモリの速度はそれほど問題になりません。
メモリにCPUが必要とするデータ(プログラムを含む)が無い場合、それはメモリが無い(無活用)のと同じでストレージに取りに行きます。最近はCPUに大きなキャッシュが搭載されるようになってきましたので、それに見合った容量(多く)を載せた方がメモリの活用としては有効になります。
←戻る
4Gbit 8Gbit 16Gbit ? 4GB 8GB 16GB ? ビットとバイト
メモリのサイズは、4GB、8GB、16GB、32GB・・・と表記されます。
単位はGB(ギガバイト)と読みます。
バイト(byte)は8ビットの情報単位で、8ビットは256の値を表すことができ、初期のコンピューターでは1バイトが半角英数字の文字コードの単位であったりしました。
ビット(bit)は、2進数1桁を表します。
電気信号の状態は基本、ON(1)かOFF(0)の2値で、データやプログラムはこのON(1)/OFF(0)の羅列になります。
このON(1)/OFF(0)の羅列を1バイト(8ビット)単位で処理を行なったのが8ビットコンピューター。
10進数1桁 | 2進数8桁 |
1 | 00000001 |
2 | 00000010 |
3 | 00000011 |
4 | 00000100 |
5 | 00000101 |
2進数8桁の11111111は10進数では255になります。
2進数8桁は、0:00000000も加えて、256の値を表せます。
bit | byte |
4Gbit | 512MB |
8Gbit | 1GB |
16Gbit | 2GB |
32Gbit | 4GB |
メモリでは、容量はGBで表示されます。
メモリチップのスペックを表示する場合、Gbitがよく使われます。
8Gbitのチップを8つ使用してメモリモジュールを構成する場合。
8Gbit |
8Gbit |
8Gbit |
8Gbit |
8Gbit |
8Gbit |
8Gbit |
8Gbit |
8Gbitは各1GBの容量なので、8GBのメモリが作られます。
16Gbitのチップを使用すれば、各2GBの容量なので、16GBのメモリが作られます。
コメント