後藤弘茂のWeekly海外ニュース
秒読み段階に入った広帯域メモリ「HBM」
(2014/12/15 06:00)
HBMはいよいよ来年第1四半期から量産
次世代の広帯域メモリ「HBM(High Bandwidth Memory)」は、いよいよ量産開始を来年(2015年)第1四半期に控え、秒読み態勢に入り始めた。10月に開催されたメモリ関連カンファレンス「MemCon 2014」で、メモリベンダーのSK hynixは、顧客向けに量産前のHBMの最終サンプルの提供を既に行なっていると説明した。量産までの最後のマイルストーンを越えたところで、登場が間近に迫っている。また、SK hynixだけでなくSamsungもHBMの提供をMemCon 2014で明らかにしており、HBMは少なくとも2ソースが期待できることになる。
DRAM規格を策定するJEDECのJC-42.3 SubcommitteeのチェアマンであるAMDのJoe Macri氏(CVP and Product CTO)は、HBMの現状を次のように説明する。
「メモリ業界はHBM(High Bandwidth Memory)そのものを立ち上げることに注力している。AMDについては語れないが、業界全体で見ればHBM第1世代とHBM第2世代のどちらも反応は良好で、複数の製品で使われる見込みだ」。
また、HBMの第2世代となる「HBM2」のスペックも一部公開された。HBM2は2Gbpsの転送レートで、1スタック当たり最大256GB/sec。4スタックを使った場合、1TB/secのメモリ帯域を実現できる技術だ。HBM2の顧客もすでにデザインインに入り始めているとSK hynixは言う。JEDEC(半導体の標準化団体)はHBM2で、高速化だけでなく、HBM規格を拡張し、レイテンシの低減など性能の強化を図る。拡大するHBMの市場からの要請に応えるためだという。
広がるHBMの市場
DRAMベンダーは、HBMの市場は立ち上がり期に期待されているグラフィックスだけでなく、ネットワークデバイスやHPC(High Performance Computing)、さらに高性能クライアントにまで広がりつつあると言う。HBM同様のスタックメモリである「HMC(Hybrid Memory Cube)」とは棲み分けると見ている。また、課題だった熱やエコシステムの確立は解決しており、もう1つの課題であるコストも低減の見込みがあると言う。
HBMの登場で、将来のワーキングメモリは“近くて広帯域のメモリ”と、“遠くて大容量のメモリ”の2種類に階層分化して行くとメモリベンダーは見ている。その場合、連続したメモリアドレス内に存在する2種類の帯域が異なるメモリの管理を、OSやランタイムが行なわなければならなくなるだろう。また、遠くて大容量のメモリは、従来のメモリモジュールベースのDDRで行くが、将来的には不揮発性メモリに置き換わるとメモリ関係者は見ている。
1,024-bitのインターフェイスを8チャネルに分割するHBM
HBMは、Through Silicon Via(TSV)技術を使ったダイスタッキングによって、1,024-bit(x1,024)の超広インターフェイスでDRAMを接続する。しかし、x1,024を1チャネルとして扱うのではなく、DRAMインターフェイスを8チャネルに分割して使う。各チャネルはそれぞれ128-bit(x128)のインターフェイス幅で、チャネルは完全に独立して動作する。メモリコントローラ側から見ると、8チャネルの個別のDRAMが接続されているように見える。
もっとも1個のDRAMダイが8チャネルのインターフェイスに対応するのではなく、各ダイは2チャネルずつの構成となっている。DRAMのダイを積層する毎にチャネル数が増えて行き、4個のダイを積層した場合に8チャネルのインターフェイスとなる仕組みだ。基本的には4または8個のダイを積層した使い方を想定している。ただし、この構成はHBMで規定されたものではなく、DRAMベンダーは自由にチャネル/ダイの構成を変えることができる。
HBMの製品化で先行するSK hynixは、MemCon 2014で、第2世代のHBM2の仕様を解説した。これまで、HBM2については、転送レートが初代HBMの2倍になることや、8G-bitダイが加わること、8層の8Hiスタックがサポートされることなどが明らかにされていた。SK hynixは、加えてレイテンシの低減と帯域の拡張に効果があるる「Pseudo Channel(スードチャネル:疑似チャネル)」モードを備えることを説明した。
HBM2はスードチャネルモードで帯域とレイテンシを改善
スードチャネルは、1チャネルを擬似的に分割するモードだ。HBMは1,024-bitを8チャネルで分割するため、1チャネル当たりのインターフェイス幅は128-bitとなる。HBM2のスードチャネルモードでは、128-bitのチャネルを、さらに2つに擬似的に分割する。1チャネル当たり64-bitのスードチャネルとなる。1スタックは合計で16スードチャネルに見えることになる。
実際には2つに分割されたスードチャネルは、1個のAWORD(Address Buffer)を共有する。しかし、それぞれのスードチャネルは、分割されたDRAMバンクに独立した64-bitインターフェイスでアクセスする。あたかも、64-bitのチャネルが、各チャネル毎に2つずつあるかのように振る舞う。
ただし、AWORDは共有されるため、完全に並列な動作ができるわけではない。また、HBMのレガシーモードでは、バーストレングス(BL)はBL2とBL4をサポートするが、スードチャネルモードではBL4のみのサポートになる。そのため、1度にアクセスするメモリのアクセス粒度は、BL2時のレガシーモードと変わらない。言い換えれば、スードチャネルは、アクセル粒度を下げるための仕組みではない。
SK hynixは、スードチャネルの大きな目的は帯域の効率を上げることだと言う。レガシーモードでは4バンクをアクティベイトする遅延であるtFAW(4 activate window)の制約のために、アクセスに無駄なギャップが生じていた。tFAWの間にコマンドを発行できないギャップが生じていたためだ。そのため、実効帯域が削がれてしまっていたという。
しかし、スードチャネルモードでは、チャネルを分割することで、合計8バンクに対しての連続したアクティベイトコマンドを発行できるようになった。そのため、tFAWのギャップを効率良く埋めることができるようになったという。tFAW Restrictionサイクルの間、さらに4バンクをアクティベイトできるからだ。実際のDRAMの実装では、ページサイズをレガシーモードの2KBから、スードチャネルでは1KBへと半分に変えることが可能になっている。ページサイズを小さな単位にすることで、よりよく並列化させた。また、tFAWを比較した場合のレイテンシも低減された。
HBMはECCをオプションでサポート
HBMはHPCにも広がろうとしている。これは、HPCにGPUコンピューティングが浸透しており、ハイエンドGPUのメモリは今後HBMへと移行しようとしているからだ。しかし、HPCではECCが重要となるため、HBMでのECCのサポートが急務となっていた。
MemCon 2014でSamsungは、元々のHBM規格にはECCがなかったが、JEDECでECCオプションを加えたと説明した。AMDのMacri氏によると、ECCはHBM2での拡張ではなく、現在のHBM1でもオプションとしてECC版が加えられたという。
HBMのECCについては、NVIDIAが今年(2014年)6月のコンピュータアーキテクチャ学会「ISCA (International Symposium on Computer Architecture)」のワークショップ「The Memory Forum」で触れている。従来のECC DIMMと異なるのは、ECCビットが同じDRAMチップに含まれること。利点としてはECC版と非ECC版で同じインターフェイスを使えること、ECC化による電力の消費を抑えられること。だが、同じチップにECC機能があるために従来とは異なる脆弱性を持つ。
MemCon 2014でSK hynixは最初の世代のHBMのスタックパッケージの実装サイズのベネフィットも強調した。DRAMの実装面積が減ることもHBMの大きな利点で、SK hynixの第1世代パッケージは4Hi(4スタック)で1GBのモジュール(1個のダイは2G-bit)で、アスピリンの錠剤より小さなサイズだという。実際のHBM Gen1 KGSDパッケージは5.48×7.29mmで、アスピリンの錠剤の直径7.2mmより幅が小さい。SK hynixのJune Ahn氏は「アスピリンよりも小さいからHBMはペインフリーだ」とジョークを言ったが、これはHBMにはコストやエコシステムやサーマルにペイン(余計なコストなど)があると言われていることを意識したものだと見られる。