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

正体が見えてきたHaswellのeDRAMソリューション

HaswellのeDRAMの謎が解けてきた

 Haswell(ハズウェル)のeDRAMの実像が見えてきた。Haswellには、GPUコアを最大構成にした「GT3」構成で、eDRAMを加えたGT3eがある。GT3e搭載Haswellは、他のHaswellシリーズとは別ダイで、CPU側は4CPUコアに6MBのL3キャッシュの構成となる。このeDRAMについては、米国では一部メディアに説明が行なわれた形跡があるが、日本では技術情報が説明されておらず、謎のままだった。しかし、COMPUTEX時のいくつかの業界情報ソースから、eDRAMの正体とIntelの狙いが明らかになりつつある。

 Haswell GT3eのeDRAMは、フルにハードウェア管理されたL4キャッシュだった。グラフィックス用メモリ階層を加えるのではなく、CPU+GPU全体に、大容量のオンパッケージL4キャッシュを加えたのがGT3eだ。また、IntelはeDRAM自体を自社で製造の22nmプロセスで製造する。1G-bitチップで、インターフェイスはシリアル伝送、メモリ帯域は片方向だけで50GB/secクラスだという。

 GT3e版Haswellは、このeDRAMキャッシュのために、ダイに双方向で512-bitのシリアルインターフェイスのための大量のSerDes(シリアライザ/デシリアライザ)を載せ、数MBのタグSRAMを載せていると見られる。また、CPU内部バスの構成も、通常のHaswellとは大きく異なると見られる。

 Haswell 4コア+GT3eのeDRAMの仕様が示すのは、Intelがメモリ階層の改革に真剣に取り組んでいること。その理由は明白で、これ以上チップの演算パフォーマンスを伸ばそうとするなら、メモリ帯域を飛躍させる必要があるからだ。今後、CPUやGPUのコアを増やそうとすると、メモリ帯域を従来のDRAMソリューションで増やすことができる以上に拡大する必要がある。

GT3構成のHaswell GPUコア
PDF版はこちら

 そのために、今回、Intelはメモリを自社で生産した。この意味は大きい。

 まず、Intelはプロセッサに必要なメモリ帯域を得るためなら、メモリチップを自社で開発・製造することも辞さないことが明らかになった。メモリ事業に参入したいというよりも、自社の主力であるプロセッサ事業のためにメモリが必要と判断している節がある。もはや、ロジックだけを製造していては、ロジックチップの性能をアップすることが難しいと考えているようだ。

 プロセッサをブーストするためのメモリは、今回はDRAM技術だった。しかし、DRAMの微細化限界が間近に迫っているため、将来的には違う大容量メモリ技術での生産も行なうかも知れない。Intelがメモリにはあまり手を出さないと考えることは、もはや間違えている。

 だが、Haswellファミリの中の究極のソリューションであるGT3e構成も、決してIntelの試みの完成系ではないことも明白だ。それは、相対的にかなり高くつくソリューションで、幅広くPC向け製品ラインに広げることができそうにないからだ。そのため、IntelはeDRAMソリューションを極めて限定されたSKU(Stock Keeping Unit=アイテム)に留めている。

 今、ハイパフォーマンスプロセッサは、オンパッケージに高速メモリを搭載する方向へと向かっている。Intelだけでなく、AMDもNVIDIAも、基本的には同じ方向へと向かっている。しかし、そこには課題がいくつもあり、どう解決するのか、まだ結論が出ていない。しばらくは、各社の試行錯誤が続くだろう。

NVIDIAのVoltaでのオンパッケージDRAM

22nmプロセスのIntelのeDRAM技術

 Haswell GT3eのパッケージに載っているeDRAMは、Intelの22nmプロセスで製造される。Intelは、6月11日から京都で開催される「VLSI Symposium(2013 Symposium on VLSI Technology and Circuits)」で、22nmプロセスのeDRAM技術を発表するが、HaswellのeDRAMは同技術を使っていると見られる。ちなみに、同カンファレンスでは、Intelのインテグレーテッドボルテージレギュレータの技術(オンダイのDC-DCコンバータ部分)も発表される見込みだ。

 DRAMの製造プロセス技術を知っていると、22nmのDRAMと聞いて驚くかもしれない。DRAMのプロセスは、ようやく30nm台から20nm台のプロセスへと移行が進み始めたばかりだからだ。ノードの数字として22nmは、DRAMでは完全に最先端だ。

 しかし、それは、あくまでもディスクリートのDRAMチップの製造プロセス技術の話だ。Intelが発表したのは、22nmのロジックプロセスに混載できるeDRAM技術。DRAMとロジックは、プロセスノードの数字の根拠も異なり、そのため、同じ尺度で比べることはできない。

 実際、メモリセルのサイズで見ると、Intelの22nm eDRAMは、ディクリートDRAMの30~20nm台とは大きく異なることがよくわかる。IntelのeDRAMのメモリセルサイズは0.029平方μmで、これは2007年前後のハーフピッチで60nmプロセス台のディスクリートDRAMのメモリセルサイズにほぼ相当する。つまり、IntelのeDRAMも、eDRAMの常として容量密度は、単体のDRAMチップよりずっと低い。ディスクリートDRAMの最先端とは密度が異なり、セルサイズも異なる。

 Intelの22nm eDRAMは、128M-bitのメモリマクロベースでメモリ密度は17.5M-bit/平方mmとなっている。ここから逆算すると、Haswell GT3eに載っている1G-bitのeDRAMチップのメモリマクロエリアは58.5平方mmとなる。GT3eのeDRAMは約80平方mm強のダイなので、インターフェイスに30%弱を使っていると考えれば、ほぼ計算が合う。

シリアル伝送のDRAMインターフェイス

 eDRAMのインターフェイスはシリアル伝送であるという。つまり、Haswell GT3eに載っているのは、シリアルインターフェイスDRAMということになる。Intelは、以前、DRAMインターフェイスをシリアルにする案を業界に提案していた。ここへ来て、IntelのシリアルDRAM構想は実を結んだことになる。

 eDRAMがシリアルインターフェイスであることは、Haswell GT3eのサブストレート上でのeDRAMチップの配置からもよくわかる。eDRAMチップは、GT3eのダイにぴったりとくっついて配置されている。パラレルインターフェイスで通常必要となる等長配線を行なう余地がない配置だ。等長配線が不要なインターフェイスでないと、この配置は難しいと推測される。

 インターフェイス幅は片方向が256-bitで、双方向では512-bitだと言う。ディファレンシャル(差動)信号だと見られるため、ピン数はデータだけでも1,000ピン以上になる。膨大な数で、この配線層を収納するためか、Haswell GT3eはサブストレートが厚く、通常より層数が増えていると見られる。

ダイの面積を取ると推定されるタグRAM

 Haswell GT3e構成のダイでは、eDRAMがフルにキャッシュとしてハードウェア制御されることが判明した。そこで出てきた大きな疑問は、タグRAM(TagRAM)だ。キャッシュとして使うなら、アクセスのためのキャッシュタグを収めたメモリが必要となる。キャッシュタグは、キャッシュメモリ上に、どのメモリアドレスのデータが入っているのかを示すタグだ。

 キャッシュタグを収めるには一定の量のタグRAM用メモリが必要となる。そして、キャッシュとしての性能を考えるなら、タグRAMは、Haswell GT3eの本体側のダイに統合されているはずだ。そうでなければ、タグRAMアクセスだけでも電力消費が増えてしまうし、レイテンシが長くなる。そして、CPU本体に取るならSRAMになるだろう。

 そう考えると、Haswell GT3eの大きなダイの謎も解けてくる。以前、Haswell GT3eのダイはサウスブリッジチップが統合されて大型化している可能性があると書いたが、これは間違いで、ダイを余計に大きくしているのは、おそらくタグRAMだ。なぜなら、キャッシュメモリ量が大きくなると、タグRAMの量も増えるからだ。1Gbitsつまり128MBをキャッシュとしてタグRAMを用意するなら、タグRAMだけでかなりの面積を取るはずだ。

 下は2 CPUコアにGT3 GPUコアの「2+3」構成のHaswellと、Haswell GT3eを並べた写真だ。これで計算すると、Haswellの2コア+GT3のダイ面積は約180平方mm、Haswell 4コア+GT3eのダイは約260平方mm強となる。

2コアと4コアHaswellのパッケージ
HaswellのSoC

 面白いのは、2コア+GT3のダイが、公開されている4コア+GT2のダイと縦横とも長さが異なる点。狭い方は同等でありそうなのに、少しだけ広い。この理由はわからないが、DRAMインターフェイス回りに違いがあるのかも知れない。両ダイの、想定される内部レイアウトは以下のようになる。間違えている可能性はあるが、大枠は下のようになっていると推測される。

2コア+GT3のダイと4コア+GT2のダイ
PDF版はこちら

 この左側のダイによって、IntelのGT3 GPUコアの大まかなサイズがわかる。GT3は、GT2に対して約80%程度大きくなっていると見られる。GT3は、ミニGPUと言うべきスライスが2重になっているので、この比率は妥当に見える。

 そこで、約260平方mmのHaswell 4+3(4コア+GT3)のダイに、各コンポーネントを仮に配置してみる。177平方mmの4+2(4 CPUコア+GT2 GPUコア)に、GT3によるGPUコアの増加分を加えたサイズより、Haswell 4+3(4コア+GT3)のダイサイズの方がはるかに大きい。Haswell 4+3には、プラスアルファで、別なユニットが加わっているはずだ。ちなみに、Haswell 4+3(4コア+GT3)はL3キャッシュが6MBで、4+2の通常の8MBのL3キャッシュよりもL3エリアが小さい。

 もちろん、Haswell GT3eにはeDRAMとの間のシリアルインターフェイスが加わる。eDRAM側のインターフェイスは約20平方mm強で同じIntelの22nmプロセス(ただしSoCプロセス)。同程度の分量の面積をインターフェイスとして取っても、まだHaswell GT3eの方がダイが大きい。もちろんeDRAMのコントローラも加わるが、それほど面積は取らないだろう。すると、残りの面積のある程度の部分がタグRAMである可能性が高い。

Haswellのダイ比較
PDF版はこちら

 IntelがeDRAMキャッシュでも、64-byteキャッシュラインを維持しているなら、タグRAMの容量は単純計算で十数MBとなる。ただし、キャッシュの効率を落とすことを覚悟でキャッシュラインを広く取るならタグRAMの量を減らすこともできる。他にもいくつかの方法はある。実際のダイサイズを細かく比較すると、タグRAMのサイズは、数MB程度と見られる。単純にスペースを4+2のキャッシュ面積と比べると8~10MB程度分の空きが生じる。

 上の図は、4+3の余計なスペースがタグRAMだと仮定した図だ。ただし、面積比が正しかったとしても、配置は大きく異なるだろう。普通にタグRAMを1個のリングストップに配置すると、そこにアクセスが集中してしまう。例えば、タグSRAMとeDRAMインターフェイスを分散して複数のリングストップに接続するなどの構成を取っているかも知れない。その場合はリングのトポロジが、従来のHaswellと大きく違うことになる。

重いHaswellのeDRAMソリューション

 こうしてラフに計算しただけでも、eDRAMソリューションのHaswellが、かなり“重い”製品であることがよくわかる。ダイサイズでは、32nmのSandy Bridgeの216平方mmよりもずっと大きい。経済性は非常に悪いダイで、おまけにカスタムDRAMまで封止している。とても、広いSKUに広げることができそうなイメージではない。そのため、Intelが広帯域メモリのオンパッケージ搭載を一般化する段階では、異なるソリューションの可能性はある。

Intelダイサイズの推移
PDF版はこちら

 ちなみに、Intelはメモリ帯域を上げるためのeDRAMを、CPUダイに統合しなかった。帯域を上げるなら、CPUダイに統合した方が簡単で消費電力的にも有利だ。それなのに、ロジックチップに組み込むことができるeDRAMを、ディスクリートDRAMのような使い方をしている。

 IntelがeDRAMをCPUに統合しない理由は、いくつか考えられる。まず、一般的にeDRAMを使う場合はプロセスが複雑になるため、高速CPUに統合するのはリスクが大きい。また、eDRAMがロジックプロセスに合わせてスケールダウンできる可能性が極めて低いことも大きな要因だろう。22nmプロセスでeDRAMを統合しても、次のプロセス世代では統合できないかも知れない。統合できても、ロジックのようにスケールダウンできない可能性は高い。そのため、2年置きに先端プロセスへと移行するメインストリームの製品には統合は向いていない。

 もっとも、特殊な製品への統合はありうる。例えば、ハイエンドのサーバー向けとか、Atom系のモバイル向けなどで一部にeDRAMを取りこむ可能性がないわけではない。サーバー向けCPUはプロセスの移行が遅いし、Atom系ならeDRAMで付加価値を付けやすい。このCPUへの統合の是非は、eDRAMに限らず、今後の次世代不揮発性メモリでも課題となるだろう。

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