メモリ屋社長のちょっとタメになるメモリ話
Ryzenで話題になった、メモリの”Rank”って何のこと?
2017年4月10日 06:00
みなさま、こんにちは。センチュリーマイクロ株式会社で代表をしております嶋野と申します。今回からPC Watchでブログ的なコラムを連載することになりました。
センチュリーマイクロのことをご存知ない方もいらっしゃると思いますので、簡単に弊社の紹介をさせていただきます。弊社は、創業35年のメモリモジュール専業メーカーです。メモリモジュールの設計・製造・販売・アフターサポートが主な事業内容です。
”MADE IN JAPAN”にこだわり、高品質で長期間安心してお使いいただける製品作りをモットーとし、PCから医療機器やアミューズメントマシンなど、幅広い分野に採用していただいております。
このコラムでは、メモリにまつわる話や、その他よもやま話もできたらと思っていますので、よろしくお願いします。
メモリのRankとは?
さて、第1回はやはりメモリのお話をしようと思うのですが、社内でも今話題になっているのは、先日登場したAMDのRyzenです。コストパフォーマンスがよく、対応メモリも2666(2667)までとIntelを追い抜き、久しぶりにAMDの反撃を予感させてくれる製品です。
ところが、どうもメモリ周りの仕様が少々ややこしく、搭載枚数だけでなく、搭載するメモリのRankによっても速度が変わってくるようです。2DIMMの場合、シングルRankだと2,667MHzで動きますが、デュアルRankだと2,400MHz止まり、4DIMMだとそれぞれ2,133MHz、1,866MHzとなります。Rankというのはメモリの動作単位なのですが、今回はこのRankについて解説したいと思います。
自作PCで使われるメモリはDIMM(Dual Inline Memory Module) と呼ばれるモジュールタイプのメモリですが、DIMMは基本的に64bitのバス幅を持っており、CPU、あるいはチップセットのメモリコントローラと64bit単位でデータのやりとりを行ないます。DIMMには複数のDRAMチップが搭載されており、必ずこの64bitの単位を構成できるようになっています。
そして、1枚のDIMMに64bitになるDRAMのグループが1つであれば1Rank、2つであれば2Rankとなります。メモリコントローラはRank毎にやりとりを行なうので、2Rankメモリでは電気的には2枚のメモリが刺さっていることになり、メモリコントローラによっては速度が下がる、搭載できる枚数が減るなど、制約が発生する場合があります。
それでは、Rankの判別はどうするかですが、基本的にはスペック表記で判断して頂くことになります。時々「DRAMが片面に実装されていたら1Rank、両面に実装されていたら2Rank」という判別方法を聞きますが、間違いです。確かにそれでも結果的には合っている場合が多いのですが、両面実装で1Rankのメモリも存在します。
また、直接Rankの記載がなくとも、DRAMチップに記載されている型番などからDRAMの仕様がわかれば、Rankの計算をすることはできるのですが、それにはDRAMの構成を理解する必要があります。
DRAMには、例えば同じ4Gbでも、1024Mb x4や512Mb x8など、内部の構成に違いがあります。内部の構造を簡単に表したものが上の図です。
1024Mb x4構成では、1つのDRAMは1024Mb=1Gbのセルアレイが4つからなっています。そして、1024Mbのセルアレイは更に大量の1bitのセルからなっており、この1個1個のセルに対して、行と列を指定することで、DRAMにデータが読み書きされます。512Mb x8の場合は、セルアレイが8個搭載される形になります。現在は主にこのようなx4タイプとx8タイプのDRAMが使われています。
上の図は、4GBのシングルランクメモリです。採用されているのは512Mbx8の4Gb DRAMで、1Rankあたり64bit1単位でアクセスされる決まりなので、片面に8個搭載した時点で512Mb×8bit×8個=32,768Mb=4,096MB=4GBとなります。
逆に言えば、512Mbx8のDRAMを使用して作られた4GBのメモリ=1Rankとなります。これはきれいな片面実装1Rankのパターンですが、たとえば同じDRAMで同容量のSO-DIMMを作った場合、実装スペースの問題等で片面に4個ずつ、両面で8個搭載という実装方法をとる場合があります。
上記画像のように、両面で1Rankというパターンにはご注意ください。
続いて次の画像は256x8の2GbDRAMを使用した4GBのメモリです。
同じ4GBでもDRAM1個あたりの容量が先ほどの半分なので16個のDRAMを使用する必要がありますが、1Rankあたり64bit単位でアクセスされる決まりは同じなので、x8 ×8個のグループが2つ必要となり、2Rankのメモリになります。
このように、搭載されているDRAMの容量・構成と、搭載されている総容量がわかればRankを判断できます。一昔前に比べるとRankによる制限は少なくなっていますが、メモリを購入する際はRankによる制限の有無の確認と、購入するメモリのRankに注意することをオススメします。
以上、1回目は、メモリのRank・構成についてお話させていただきました。初回から少し専門的な内容になってしまいましたが、いかがでしたか。
毎回お堅い話だと私も(が??)疲れてしまうので、次回はちょっと緩めな内容でいこうかと考えています。こんな話が聞きたい!などもあれば、記事のツイートやシェアなどで是非コメントください。
それではまた。