特集、その他
見れば全部わかるDDR4メモリ完全ガイド、規格からレイテンシ、本当の速さまで再確認
DDR4メモリを買う前に知っておきたい基礎知識編 text by 坂本はじめ
2020年1月29日 06:01
数あるPCパーツの中でも、メインメモリはPCを構成する基幹パーツの一つであり、数多くの製品が販売されている。
メモリの増設やPCの自作を望むユーザーは、市場に存在する多種多様なメモリ製品の中から、自分のPCに適したメモリを選ばなければならない。そこで、今回から前後編に分けて、メモリについて知っておきたい知識を紹介していく。
内容が多岐にわたるので、前後編に分けて紹介するが、前編の今回は、メモリ製品のスペックについて、基礎的な部分を解説しよう。記載されているスペックが何を意味しているのかを理解すれば、そのメモリがどのような製品なのかを読み解けるようになる。PCパーツに詳しいユーザーには釈迦に説法な部分もあるが、DDR4メモリのおさらいとして役に立てば幸いだ。
・DDR4メモリの規格を再確認、DDR4とDDR3は非互換
・DDR4メモリの形状は「DIMM」と「SO-DIMM」の2種
・レジスタードメモリはサーバー向けのモデル
・エラー訂正機能付きのECCメモリ
・一般的なDDR4メモリの容量は4GB/8GB/16GB/32GBの4種
・メモリクロックの見方、DDR4-に続く数値がMHz相当のクロック
・メモリ帯域の見方、PC4-の後の数値がMB/s相当の転送レート
・レイテンシの見方、CLの値の大きさは実際の速度とは別の値
・デュアルチャネル/クアッドチャネルは帯域幅を増やす技術
・メモリランクって何?高クロック動作はシングルランクが有利
・DDR4メモリの動作電圧、1.2V以外はオーバークロック扱い
・メモリを正しく動作させるためのSPD
・メモリの標準規格を策定するJEDEC、安定性重視ならJEDEC準拠を
・複数枚セット品と1枚単位で販売されているメモリの違い
・永久保証メモリの保証範囲と実際の対応
DDR4メモリの規格を再確認、同じDDRでも「DDR4」や「DDR3」は非互換
メモリにはいくつかの規格が存在しており、現在PC向けで主流となっているのが「DDR4 SDRAM (DDR4)」で、その一世代前の規格が「DDR3 SDRAM (DDR3)」だ。それ以前にはDDR2 SDRAM (DDR2)なども存在していた。
メモリの規格で重要なのは、規格が異なるメモリには互換性が存在しないことだ。デスクトップ用で見ると、DDR4のピン数は288、DDR3は240と接点の数が異なり、基板の形状も若干異なる。このため、DDR3対応環境にDDR4は使えないし、その逆も不可能である。
したがって、メモリの規格とそれを利用するシステムの対応規格は必ず一致していなければならない。これはメモリ選びの際にも大前提となるので、かならず覚えておきたい。
DDR(Double Data Rate)とは
メモリ規格のDDR4とDDR3に共通する「DDR」とは、Double Data Rateの略称だ。
これは、SDR(Single Data Rate)メモリに対応する名称で、SDRメモリが1回のクロック信号で1回のデータ転送を行うのに対し、DDRでは1回のクロック信号で2回のデータ転送を行うため、Double Data Rateと名付けられたのである。
DDR4メモリの形状は大きく分けて2種類フォームファクターはデスクトップPC用の「DIMM」とノートPC用の「SO-DIMM」
フォームファクターとは、メモリモジュールの形状に関するスペックだ。一般的には、デスクトップPC向けの「DIMM」と、ノートPC向けの「SODIMM」が流通している。
自作PCでもっとも馴染み深いのはデスクトップPC向けのDIMMは、「DIMM」とだけ表記されることが多い。ノートPC向けと判別するために「Long-DIMM」と記載されることもあるが、「SO」とつかないものは基本的にデスクトップPC向けだ。
また、UDIMMと表記される場合もある。これは「Unbuffered DIMM」の略で、対となる「Registered DIMM」はRDIMMと表記される。UDIMMとRDIMMの違いについては後ほど紹介する。
SO-DIMMはノートPC向けに設計された小型メモリモジュール。「SODIMM」や「S.O.DIMM」と表記されることもあるが、これらは同じものだ。
DIMMとSO-DIMMは物理的にサイズが異なるため、当然ながら互換性は存在しない。メモリ規格同様、メモリとシステムの対応フォームファクターは必ず一致させる必要があることを覚えておこう。
サーバー/ワークステーション向けの「レジスタードメモリ」と「アンバッファードメモリ」
メモリモジュールには、「レジスタード(Registered)メモリ」と「アンバッファード(Unbuffered)メモリ」が存在している。これがフォームファクターの項目で触れたRDIMMとUDIMMの違いである。
レジスタードメモリは、システム側のメモリコントローラとメモリチップの間にレジスタ(記憶装置)を設けたメモリモジュールで、若干の速度低下と引き換えにメモリコントローラ側の負担を軽減し、搭載できるメモリモジュールやメモリチップの数を増やして大容量を実現できる。
アンバッファードメモリは、バッファレジスタを搭載しないメモリモジュール。PC向けのメモリと言えばこのUnbufferedメモリであり、自作PC向けのメモリのほとんどはUDIMMである。
レジスタードメモリに対応するのはサーバーやワークステーション用のシステムに限られており、一般的なPCでアンバッファードメモリ以外を使う機会はそうそうない。ただし、レジスタードメモリ(RDIMM)とアンバッファードメモリ(UDIMM)には互換性がないため、システムがサポートするメモリがどちらなのかは確認しておくべきだろう。
エラー訂正機能付きのECCメモリ、一般的なメモリは「non-ECC」タイプ
ECCとは「Error-Correcting Code(誤り訂正符号)」の略称で、この機能を備えたメモリモジュールは、メモリ上で発生したエラーの検出と訂正を行う機能を備えている。
ECC機能を備えたメモリは「ECCメモリ」と呼ばれ、対してECC非対応のメモリはnon-ECCメモリと呼ばれる。ECCメモリは主に連続稼働が求められるサーバーやワークステーションなどで利用されることが多く、その利用にはCPUやマザーボードなどのシステム側がECCメモリに対応していることが必須となる。
なお、ECCメモリとnon-ECCメモリの両方に対応するシステムも存在するが、これらを混載して同時に使用することはできない。両対応のシステムであっても、搭載メモリはECCメモリかnon-ECCメモリのどちらかで統一する必要がある点に注意しよう。
DDR4メモリの容量、一般的に流通しているのは4GB、8GB、16GB、32GBの4種
メモリ容量は、メモリモジュールの記憶容量を示すスペックで、単位には主に「GB」(ギガバイト)が用いられる。現在主流のDDR4世代のDIMMは、1枚あたり4GB、8GB、16GB、32GBの4種類がラインナップされている。また、容量4GBのメモリであれば、「4GBモジュール」といった呼び方をされることもある。
メモリはCPUが直接アクセス可能な記憶装置であり、ここに読み込んだアプリケーションやデータで処理を実行するため、メモリ容量はCPUが利用できる作業机の広さと形容されることもある。メモリ容量が不足した場合、メインメモリより遥かに低速なSSDやHDDを仮想メモリとして利用することになるが、大幅な処理速度の低下を招くことになる。
したがって、メモリ容量は不足させてはならないというのが原則だ。メモリ選びにおいてはまず、不足しないメモリ容量を確保することを第一に考えるべきであると言えよう。
メモリクロックの見方、「DDR4-2666」や「DDR4-3200」動作時のクロックを示す数値
メモリクロックとは、「DDR4-3200」という形で表記されているスペックだ。ハイフンを挟んで前半がメモリ規格を示し、後半の数字が「データ転送レート」を示している。データ転送レートの単位は「MHz」(メガヘルツ)。
一般的なDDR4メモリでみると、DDR4-2133、DDR4-2400、DDR4-2666、DDR4-3200の4種類があり、現在主に流通しているのはDDR4-2666とDDR4-3200だ。
メモリクロックがDDR4-3200の場合、データ転送レートは3,200MHzであり、1秒間に32億回のデータ転送を行うことを意味している。したがって、メモリクロックは数字が大きくなるほどより多くのデータ転送が可能な高性能メモリということになる。
ただし、メモリクロックは高くなるほどシステム側の負担も大きくなるため、システム側にも利用可能なメモリクロックの上限が存在する。システム側の対応メモリクロックに適合するメモリを選択することが重要だ。
「メモリクロック」と「クロック信号」は異なる存在
メモリクロックはデータ転送レートであり、メモリ回路を駆動させるクロック信号とは異なる数値だ。先述の通り、DDRメモリは1回のクロック信号で2回のデータ転送が可能であるため、クロック信号自体はメモリクロックの半分の速度となる。
一例を挙げると、DDR4-3200で動作するメモリのデータ転送レートが3,200MHzである一方、クロック信号の周波数は1,600MHzである。
「メモリクロック(データ転送レート)はクロック信号の倍速」という関係にある訳だが、両方の単位に「MHz」を用いることが両者を混同しやすくしている側面があるため、近年ではデータ転送レートであるメモリクロックの単位に「MT/s」(メガ・トランスファー毎秒)を用いるメーカーも現れている。
メモリ帯域幅を示すPC4の表記、「PC4-19200」や「PC4-25600」はMB/s単位の転送レート
メモリ帯域幅は、メモリモジュールが1秒間に転送可能なデータ容量を示すスペックで、「PC4-25600」のような形で表記される。ハイフンを挟んで前半部分はメモリ規格を示しており、PC4であればDDR4、PC3はDDR3である。後半の数字が帯域幅を示しており、単位は「MB/s」(メガバイト毎秒)。
帯域幅の大きなメモリほど1秒間により大容量のデータを転送できるため、メモリ帯域幅のスペックが大きなメモリほど高性能なメモリであると言える。
なお、帯域幅はメモリクロックと密接に関連しているため、ふたつのスペックは対応関係にある。現行のメモリから代表的なメモリクロックと帯域幅の関係を表にまとめた。
メモリ帯域幅の計算方法
パラレル転送を採用している現在のメモリの帯域幅は、データ転送レートであるメモリクロックと、メモリインターフェイスのバス幅から求めることができる。
一般的なUDIMMのバス幅は64bitなので、これにメモリクロックを掛け、ビットからバイトに換算(8分の1倍)にすれば、メモリモジュールの帯域幅が求められる。一例としてDDR4-3200(PC4-25600)メモリの帯域幅を計算してみた。
3,200 (MHz) × 64 (bit) ÷ 8 (bit→Byte) = 25,600 (MB/s)
メモリタイミングの見方、「CL22」や「22-22-22」の数値は何を示す?実はスタンダードメモリではCL22のDDR4-3200がタイミングも最速
メモリタイミングは、メモリコントローラの要求に対してメモリが応答するまでの速度を示すスペックで、「CL22」や「22-22-22」のような形で表記される。これらの数字の単位は「Clock(クロック)」だ。
メモリタイミングがCL22と表記されたメモリであれば、メモリタイミングの中でも代表的な「CASレイテンシ」が「22クロック」であることを示している。ここでの単位となるクロックは、メモリ回路を駆動するクロック信号と関連しており、CL22であればクロック信号22回分の待ち時間(レイテンシ)が生じることになる。
メモリタイミングから実際の待ち時間であるレイテンシを求めるための方程式は、「レイテンシ=メモリタイミング÷クロック信号の周波数」だ。クロック信号の周波数はメモリクロックの2分の1倍速なので、メモリタイミングからレイテンシを求めるには、メモリクロックのスペックを把握する必要がある。
例として、メモリタイミングがCL22で、メモリクロックがDDR4-3200(クロック信号=1,600MHz)のメモリにおけるレイテンシを求めてみると、以下の計算式の結果「13.75ns(ナノ秒)」であることが分かる。
22(Clock) ÷ 1,600,000,000(Hz) = 0.00000001375(秒)
したがって、メモリタイミングは同じメモリクロックであれば小さい方がより高性能なメモリと言えるのだが、メモリクロックが異なる製品ではレイテンシを計算で求めなければ、どちらがより高性能(低レイテンシ)なメモリであるのかを判断することはできない点に注意したい。
参考までに、DDR4-2133からDDR4-3200までのメモリクロックで、典型的なメモリタイミングと実際の待ち時間であるレイテンシを一覧にしてみた。
一見、CL22という数値からDDR4-3200が一番遅くなりそうなイメージだが、レイテンシを計算で求めてみると、DDR4-3200のCL22が最もレイテンシが小さく高速であることがわかる。
メモリの帯域幅を増やす「デュアルチャネル」動作と「クアッドチャネル」動作
メモリチャネルとは、メモリとメモリコントローラ間の接続のことで、一般的なUDIMMは64bitのバス幅で接続している。このチャネルを複数系統用意するのがマルチチャネルで、2系統なら「デュアルチャネル」、4系統なら「クアッドチャネル」と呼ばれる。
自作PC向けの一般的なメモリであるUDIMMの場合、1チャネルあたりのバス幅は64bitなので、デュアルチャネルなら128bit相当、クアッドチャネルでは256bit相当のバス幅を備えることとなり、結果としてメモリ帯域幅がバス幅に比例して2倍、4倍と増加する。
1枚のメモリモジュールのバス幅は64bitであるため、デュアルチャネルでの利用には最低2枚、クアッドチャネルなら最低4枚のメモリモジュールを用意する必要がある。また、すべてのチャネルのメモリは、メモリクロックやメモリタイミングが一致している必要があるため、同じ仕様のメモリを揃えるのが基本だ。
なお、メモリチャネルがいくつまで使えるのかは、メモリコントローラやマザーボードなどのシステム側の仕様に依存する。デュアルチャネルまでしかサポートしないシステムに4枚のメモリモジュールを搭載しても、クアッドチャネルを実現することはできない。
メモリランクはチップ構成の違い、高クロックメモリを使用する場合は意識しよう
メモリランクとは、メモリモジュール上に搭載されたメモリチップを集合したブロックの数を示すスペックだ。
一般的なUDIMMのメモリバス幅64bitだが、メモリチップの単位のバス幅は4bitや8bitであり、メモリモジュールでは実装されたメモリチップをひとまとめにすることで64bitのバス幅を実現している。メモリランクは、この64bitにまとめられたメモリチップを1つのランクと数える。
メモリチップの集合である64bitのブロックを1つ備えているなら「シングルランク」、2つ備えているなら「デュアルランク」と呼ばれる。一般的なデスクトップPC向けのDIMMの場合、大半は8bit幅のメモリチップを使用しているため、メモリチップ8枚の片面実装ならシングルランク、メモリチップ16枚の両面実装ならデュアルランクであることが多い。
メモリランク数が増えるほど、システム側のメモリコントローラの負担が大きくなるため、高クロックでの動作が難しくなる傾向があり、近年では、第2世代以前のRyzenはランク数の多いメモリ構成を特に苦手にしていた。そのようなシステムや、メモリに高クロック動作を期待する場合には、なるべくメモリランク数が少なくなるようにメモリを選びたい。
DDR4メモリの動作電圧は1.2Vが標準規格、1.35Vなどはオーバークロック扱い
動作電圧は、メモリやメモリ回路を製品スペック通りに動作させるのに必要な電圧だ。DDR4メモリの標準電圧は1.2Vで、DDR3メモリは1.5Vとなっている。
スタンダード仕様のDDR4メモリは原則として1.2Vの標準電圧を採用している一方、メモリメーカー独自仕様を採用したオーバークロックメモリなどでは1.35Vやそれ以上の電圧を製品仕様としている場合もある。
標準仕様から外れたメモリの動作電圧は、メモリ自体の製品保証の範囲内であるとしても、接続するマザーボードやCPUの製品仕様外の動作となる点に注意が必要である。
メモリを正しく動作させるためのSPD、動作のための基準値をマザーボードに提供
SPDとは、Serial Presence Detectの略称で、メモリの仕様をシステム側に伝えるための仕組みである。
メモリモジュールには製品仕様をSPDデータとして記録したチップが実装されており、メモリを搭載したマザーボードのUEFIはこのチップの情報を参照して、メモリの製品仕様を認識し、動作設定を自動で行う。
なお、メモリメーカー独自仕様を採用したオーバークロックメモリの多くは、標準のSPDデータに加えて、Intelが策定した「XMP」(Extreme Memory Profile)が記録されており、システム側でXMPを有効化すると、自動でXMPデータに基づく動作設定が適用される。
メモリの標準規格を策定する「JEDEC」とは、相性問題が起こりにくいJEDEC準拠品
JEDECは半導体業界を代表する標準化団体であり、DDR4やDDR3といったメモリ規格の標準化も管轄している。
メモリのスペックにおいては、「JEDEC準拠」という言葉が使われることが多く、これはJEDECが策定したメモリの標準仕様に準拠した製品仕様のメモリモジュールであることを意味している。JEDEC準拠のメモリは、SPDに製品仕様が記録されているため、システム側で特別な設定を行うことなくメモリの動作設定が適用される。
2020年1月現在、JEDEC準拠のDDR4メモリには、以下のような仕様の製品が販売されている。
ネイティブ対応メモリって何?安定動作を狙うなら搭載チップも定格動作品を
JEDEC準拠をうたう一部のメモリでは、「ネイティブDDR4-3200」のような記述を見かけることもある。
これは、メモリモジュールが搭載しているメモリチップが正式にそのメモリクロックをサポートしているという意味だ。ネイティブDDR4-3200対応と表記されている場合、搭載されているメモリチップがDDR4-3200規格のチップであることを意味している。
基本的に、PCを安定動作させたい場合、使用したい速度のメモリの中からネイティブ対応のものを選ぶと良いだろう。なお、メモリ製造メーカーが独自に選別したチップ使用したり、オーバークロックで対応しているメモリも存在するが、これらはネイティブ対応ではないメモリとなる。
メモリのセット品は複数枚同時動作を保証1枚単位で販売されているものとは扱いが異なる点に注意
複数枚のメモリがセットになった製品は、メモリキットとして販売されている。
メモリキットを構成するメモリモジュールは同時に利用できることが保証されており、組み合わせでの相性が保証されない単体メモリとは異なる保証が適用される。また、デュアルチャネルやクアッドチャネルへの対応をうたうメモリキットも存在する。
JEDECにネイティブ準拠したメモリのように、標準化されたメモリ同士であれば相性問題は起こりにくいが、搭載枚数が多く、高クロックでの動作になるほど、相性問題は起こりやすくなる。メモリキットであれば、製造ロットなども揃えれていることも多く、個体差により問題も避けやすい。
複数枚のメモリを使うのであれば、できる限りメモリキットでの購入を推奨する。
永久保証メモリの保証範囲と実際の対応
メモリの製品保証は、正常な使用の範囲内において、メモリが製品仕様通りに動作することを保証している。一般的なパーツと異なるのは、その保証期間が無期限に設定されていることが多い点だ。
メモリ製品の多くに付与されている無期限の保証は、最初のユーザーが所有しているさいに発生した故障に対して修理や交換などの保証を受けることができる。ただし、製品が生産終了となっている場合には、同等品との交換や返金での対応となる場合もある。
他のパーツの保証がそうであるように、メモリの製品保証も原則として他のパーツとの組み合わせで生じた不具合については保証しない。具体的には、対応スペックを超えるメモリを使用して生じたシステム側の不具合や、個別のメモリ製品の組み合わせで生じた不具合などは、メモリの製品保証に含まれない。
次回はオーバークロックメモリや速度の引き出し方などを解説Ryzen向けや最新Intel CPU向けメモリの選び方なども紹介
以上で今回のメモリ製品のスペックについての解説は終了だ。今回の内容を覚えれば、スペック表を読み解き、それがどのようなメモリ製品なのかを知ることができるだろう。
次回は、メーカー独自仕様の「オーバークロックメモリ」や、メモリと組み合わせることになるCPUやマザーボードと言ったシステム側の仕様についてなどを解説する。
メモリ選びに迷っていたり、オーバークロックメモリを使ってみたいというユーザーは、ぜひ後編も確認してもらいたい。
[制作協力:Crucial]