後藤弘茂のWeekly海外ニュース

DRAMダイ当たりの帯域を4倍に高めた「HBM2」

画期的な新モードが加わる第2世代のHBM

 今年(2016年)は、HBM(High Bandwidth Memory)が本格的に発進する年となる。HBMは、昨年(2015年)、AMDのRadeon R9 Fury(Fiji)系の製品ファミリに採用された。しかし、DRAMベンダーはSK hynix 1社で、採用もAMD 1社の、それもハイエンド製品だけ。メモリ帯域も、GDDR5ベースの384GB/sec(512-bitインターフェイス)に対して、HBM1は512GB/secへと33%増えたに過ぎず。メモリ容量はGDDR5での最大8GBに対して、HBMベースのRadeon R9 Fury(Fiji)は最大4GBと逆に少なくなった。そのため、インパクトは、それほど大きいものではなかった。低電力コンパクトのRadeon R9 Nanoが精彩を放ったが、HBMが新技術として喝采を浴びるとまではいかなかった。

DRAMバス幅の遷移
PDF版はこちら

 しかし、今年は2世代目のHBM2技術をベースにしたDRAMが登場。製造DRAMベンダーは複数になり、採用メーカーもAMDだけでなく、NVIDIAなど複数メーカーに広がる。メモリ帯域は1GB/secへと倍増し、メモリ容量は最大32GB(4スタックの場合)へと一気に増大する。製品ラインも、HBM2の世代でパフォーマンスライン全体に広がり始める可能性が高い。

 HBM規格は、1,024-bitの超広メモリインターフェイスを使う積層DRAM技術だ。HBM1は転送レートが1Gbpsだったが、HBM2では転送レートが2Gbpsに上がる。HBMでは、DRAMを積層したスタック単位で扱う。4スタックのメモリ帯域はHBM1では512GB/secだったのが、HBM2では1TB/secに倍増する。

HBMとCPU/GPUとの接続
PDF版はこちら

 それだけでなく、HBM1では1ダイ当たりのDRAM容量が2G-bitだったのが、HBM2では8G-bitダイが中心となる。また、スタックは、HBM1がDRAMダイを4個までの積層だったのが、HBM2では8個までの積層となる。加えてレイテンシの低減と帯域の拡張に効果がある「Pseudo Channel(スードチャネル:疑似チャネル)」モードも加わる。さらに、ECC版がHBMに加えられる。

 簡単に言えば、HBMは第2世代になり、性能は倍増し、機能が充実し、製造面でも採用面でも進展する。しかし、それだけではない。HBM2ではさらに市場を広げることを可能とする新要素が加わる。それは、1ダイ当たりのメモリ帯域を4倍に高めるモードだ。

2個のダイで8チャネル 1,024-bitのメモリインターフェイスをサポート

Joe Macri氏(Corporate vice president, Product CTO, Corporate Fellow, AMD)

 AMDでJoe Macri氏(Corporate vice president, Product CTO, Corporate Fellow, AMD)は、昨年12月のRadeon Technologies Group (RTG) Tech Summit時に次のようにHBM2について説明している。

 「HBMの利点はフォームファクタと電力で、平方mm当たりの帯域を著しく増大させることにある。HBM2は、そうしたHBMの利点をさらに発展させた規格で、2倍の転送レートとなる。しかし、HBM1からHBM2への変化は、帯域だけではない。最も素晴らしい変化は、スタックの層数を減らすことができるようになったことだ。

 HBM1では、4-Hi(4層)スタックでなければ、フルのメモリ帯域を得られなかった。それに対して、HBM2では、2-Hi(2層)のスタックでフル帯域を得ることができる。帯域のために4-HiでDRAMダイを4層にしなければならないという制約がなくなった。より柔軟に、広いレンジの製品に対応できるようになった」。

 なぜ、HBM1では4-Hiスタックでなければフル帯域を達成できなかったのか。それは、HBM DRAMのダイ当たりのチャネル幅が2チャネルだったからだ。HBMは128-bit幅の独立したメモリチャネルを、8チャネル束ねた仕様となっている。128-bitのチャネルが8チャネルで、合計1,024-bitで、これを1Gbpsで駆動して128GB/secの帯域を得る。

HBMの4-Hiスタックのメモリチャネル構成
PDF版はこちら

 しかし、HBM1では、1個のDRAMダイは2チャネルまでしかサポートできない。そのため、4個のDRAMダイを積層した4-Hiスタックでなければ、1スタック当たり128GB/secの帯域を得ることができない。2-Hiのスタックでは、半分の4チャネルしか有効にならないので、メモリ帯域は半分の64GB/secになってしまう。HBM2では、この部分を改良したという。

 「HBM2でも、基本は4個のダイで8チャネル幅だ。しかし、HBM2では、2-Hiスタックの場合は、2個のダイでも、8チャネル幅にできるようにした。HBM1では、8チャネル幅には必ず4個のダイが必要だった。ここが大きな違いで、より少ないDRAMダイ個数で、フルの帯域を得ることができるようになった」。

推測されるHBM2の2-Hiスタックのメモリチャネル構成
PDF版はこちら

 2-Hiスタックでフル帯域のコンフィギュレーションは、昨年10月のメモリカンファレンスmemcon時に、SK hynixが示している。SK hynixのスライドでは、2-Hiのスタックでも、2Gbps時のメモリ帯域は256GB/secとなっている。従来のスペックなら、2-Hiのスタックの帯域は128GB/secでなければおかしい。

HBMをけん引するSK hynixの製品コンフィギュレーションラインナップ

既存の設計からの変更を最小限に抑えた2-Hiスタック

 DRAMベンダーが、2-Hiスタックでのフル帯域コンフィギュレーションについて語り始めたのは昨年後半から。当初は、そうした説明は行なっていなかった。後から加えられた仕様であることが分かる。にもかかわらず、HBM2の製品では、最初から2-Hiコンフィギュレーションがサポートされる。Macri氏は、DRAMベンダー側に対応してもらうために、設計を容易にしたと言う。

 「メモリベンダーは、DRAMの製造でのリスクを嫌う。そのため、設計に当たって変更を最小限にし、また設計を共通化することで、リスクを下げる必要があった。(2-Hiと4-Hiの)2つの設計を1つにすることで、HBMの設計のリスクを減らした。(2-Hiスタックでフル帯域は)まだ正式の(JEDEC)スペックにはなっていない。正式になっていないのは、この仕様が不要と考えているユーザーもあるからだ。しかし、DRAMベンダーは既に対応した設計にしている」。

 HBM2では、1ダイで2チャネルのコンフィギュレーションと4チャネルのコンフィギュレーションで、HBM DRAMのダイ自体は同じとなるようだ。それなら、DRAMベンダーは、2種類の異なるDRAMダイを設計&製造する必要がなくなり、投資とリスクが少なくなる。ただし、ダイのメモリバンク数は変わらないと見られる。その場合、チャネル当たりのメモリバンク数は半減してしまう可能性がある。

 しかし、HBM2にはスードチャネル(Pseudo Channel)機能があり、もともと、バンクを分割して、2個のスードチャネルに割り当てて使うことができる。HBM2では、レガシーモードでは、1チャネル当たり16バンクで、スードチャネルモードでは1スードチャネル当たり16チャネルとなる。1ダイで4チャネルのモード時には、この機能を組み合わせることで、バンクコンフリクトを抑えることはできそうだ。こうした、HBM2の当初からの機能をうまく使うことで、共通設計化して、設計と製造のコストを抑える方法を取ったと推測される。

HBM1のバンクアーキテクチャ
HBM2のスードチャネルアーキテクチャ

 HBM2では、ピン当たりの転送レートはHBM1の2倍になった。加えて、ダイ当たりのチャネル数も倍増するコンフィギュレーションが可能になった。そのため、ダイ当たりの転送帯域はHBM1に対してピークで2倍に達する。

 「HBM1では、4個のDRAMダイを使った1個の4-Hiスタックで、メモリ帯域は128GB/secだった。HBM2では、転送レートがHBM1の1Gbpsから2Gbpsへと2倍に上がった。その上に2-Hiスタックでフル帯域が得られるようになったために、4個のDRAMダイを使った2個の2-Hiスタックで、512GB/secのメモリ帯域が得られる。

 言い換えれば、HBM2のダイ当たりのメモリ帯域は、HBM1の4倍だ。同じ数のDRAMダイで、4倍の帯域が達成できる。驚くべきメモリ帯域効率だ。そして、ダイの数が少なければ、それだけコストが低くなる。そのため、HBM2は帯域当たりのコスト面でも削減できる」(Macri氏)。

HBM2をCPUやAPUのキャッシュに採用する道が開ける

 HBM2の2-Hiスタックコンフィギュレーションが重要なのは、HBM2を、ミッドレンジのGPU製品や、最終的にはAPU(Accelerated Processing Unit)にも採用できる道が開けることだ。より小さなメモリ粒度で、広帯域が可能になるため、製品価格を抑えたいカテゴリの製品や、キャッシュ的な使い方をする製品にも広げることが可能になる。

 HBM1では、DRAMのダイ当たりの容量は2G-bitだったため、4-Hiスタックでスタック容量が1GB。4個のスタックで合計4GBと容量が固定されていた。それに対して、HBM2では、DRAMのダイ当たりの容量は、現状では8G-bitとなっている。そのため、4-Hiスタックを4個使うと、スタック当たり4GB容量で、合計16GB容量となる。16GBしか選択できないとなると、グラフィックス用途では不自由だ。

HBM2のメモリ容量
PDF版はこちら

 しかし、HBM2では、2Hiスタックでフル帯域を達成できる。そのため、2-Hiスタックを4個使った、1TB/secで8GBのメモリ構成も可能だ。あるいは、2Hiスタックを2個使った512GB/secで4GBのメモリ構成のGPUも可能となる。さらには、2Hiスタック1個だけで256GB/secで2GBとして、APUのキャッシュ的な使い方の構成を取ることも可能だ。HBMは、2世代目で、市場レンジを広げることが可能になる。

 「HBMではメモリ帯域をメモリ容量より優先して設計した。HBM1では、そこそこのメモリ容量で、極めて広い帯域となった。しかし、今後のHBMでは、2-Hiで低容量にもできるし、キャパシティが必要な場合はスタックを8-Hiに重ねることで増やすことができる。そのため、容量より帯域を優先するコンシューマ市場から、容量を重視するHPCやワークステーションの市場まで、広くカバーできるようになった」とAMDのMacri氏は語る。

 もっとも、実際には、HBM2がまず広まるのは、GPUコンピューティングなどの市場になるだろう。HPC(High Performance Computing)のスーパーコンピュータ市場や、超広帯域が求められるネットワーク系などの組み込みデバイスなどが、最初のHBM2の市場として見込まれている。だが、HBM2は、仕様上は、より広い市場へと広げることが可能になった。

(後藤 弘茂 (Hiroshige Goto)E-mail