イベントレポート

IBMの次世代メインフレーム「System z13」を支える巨大なシリコン

 最先端の半導体チップが披露される国際会議「ISSCC 2015」が今年も始まった。昨年(2014年)11月18日にISSCC極東委員会が概要を予告したように、次世代あるいは最新のPCやサーバー、スマートフォンなどに搭載される最先端チップの技術概要が発表される。

 本レポートでは、23日の午後に発表された開発成果から、IBMの次世代メインフレーム「IBM System z13」向け半導体チップの発表概要(講演番号4.1)をお届けする。

 IBM System z13は、既存のメインフレーム「IBM System zEC12」に比べると、プロセッサ当たりの性能が10%ほど向上するほか、システム全体の性能が40%も向上するという。

 System z13のCPUノードを構成する半導体チップは2種類ある。1つはマイクロプロセッサで、「CPチップ」と呼称する。もう1つは外部メモリのコントローラと4次キャッシュを兼ねたチップ(システムコントローラチップ)で、「SCチップ」と呼称する。このCPチップとSCチップでCPUノードを構成するという枠組みは、zEC12と同じである。ただし、チップの数やパッケージングなどはかなり違う。zEC12は最大構成の場合に6個のCPチップ(ワンチップが6個のCPUコアを内蔵)と2個のSCチップでCPUノードを構成する。そしてCPUノード全体をパッケージング(マルチチップパッケージ)してボードに実装していた。

 z13のCPUノードは最大構成で3個のCPチップ(ワンチップが8個のCPUコアを内蔵)と1個のSCチップで構成する。パッケージングはワンチップごとのパッケージに変わった。チップ間は、「X-BUS」と呼ぶ高速バスでデータをやり取りする。

 そして2つのCPUノードがペアを組む。このペアを「ドロワー」(Drawer)と呼ぶ。ドロワー内で、CPUノード間はSCチップ同士が「S-BUS」と呼ぶ高速バスで接続される。S-BUS以外の接続は存在しない。ちなみにX-BUSの最大データ転送速度は0.9Tbit/s、S-BUSの最大データ転送速度は1.1Tbit/sである。

 z13は、最大構成の場合に4個のドロワーを組み合わせる。異なるドロワーのCPUノード同士は、SCチップが備える「A-BUS」と呼ぶ高速リンクで接続する。A-BUSの最大データ転送速度は0.6Tbit/sである。

CPUノードとドロワー。2つのCPUノードがペアとなって1つのドロワーと呼ぶユニットを形成する。1個のCPUノードは、最大で3個のマイクロプロセッサチップ(CPチップ)と1個のシステムコントローラチップ(SCチップ)で構成される
System z13の構成。最大で4つのドロワーを組み合わせる。ドロワー間はA-BUSと呼ぶ差動信号のリンクで接続する。同じドロワー内のCPUノードは、S-BUSと呼ぶシングルエンド信号のリンクで繋ぐ

eDRAMを2次キャッシュに採用して容量を拡大

 システムを構成するキャッシュメモリのアーキテクチャは、2次キャッシュ容量の拡大と埋め込みDRAMの活用が目立つ。既存のメインフレーム「zEC12」では、1個のCPUコアが64KBの1次命令キャッシュと96KBの1次データキャッシュ、1MBの2次命令キャッシュと1MBの2次命令キャッシュを搭載していた。これが次世代の「z13」では、1個のCPUコアが96KBの1次命令キャッシュと128KBの1次データキャッシュを搭載する。メモリ技術はいずれもSRAM技術である。

 z13では、2次キャッシュのメモリ技術に埋め込みDRAM技術(eDRAM技術)を採用した。命令キャッシュとデータキャッシュの容量はいずれも2MBである。zEC12に比べて容量が2倍に増えているものの、SRAM技術に比べると遙かに高密度なeDRAM技術を採用したので、シリコン面積は逆に減少していると見られる。なおCPチップでは2次キャッシュのほか、分岐ターゲットバッファ(BTB)にもeDRAMを適用している。

 3次キャッシュはzEC12とz13ともに、CPチップに共有キャッシュとして内蔵した。メモリ技術はいずれもeDRAM技術である。記憶容量はzEC12が48MBであるのに対し、z13では64MBに増加した。

 外付けの4次キャッシュは大きく異なる。zEC12では2個のSCチップでCPUノードを構成した。1個のSCチップが192MBのeDRAMキャッシュを内蔵しているので、全体では384MBのキャッシュ容量となっていた。それがz13では、1個のSCチップだけでCPUノードを構成しており、しかも容量を480MBに拡大したeDRAMキャッシュを搭載した。

 CPUノード当たりのキャッシュ容量を比較すると、1次キャッシュの総容量はzEC12が5,760KB、z13が5,376KBであまり変わらない。2次キャッシュの総容量はzEC12が72MB、z13が96MBで増加した。3次キャッシュの容量はzEC12が288MB、z13が192MBで減少している。

キャッシュ構成の変化。左が既存システムzEC12のメモリサブシステム。右が次世代システムz13のメモリサブシステム

22nm世代のHKMG、SOI、多層配線などで製造

 続いて、z13用半導体チップの概要を説明しよう。zEC12用半導体チップとの大きな違いは、半導体製造技術の世代にある。zEC12用半導体チップは32nm世代のプロセス技術で製造していたのに対し、z13用半導体チップは22nm世代のプロセス技術で製造する。

 22nm世代の微細加工技術に、高誘電率ゲート絶縁膜と金属ゲート(HKMG)のトランジスタ、SOI(Silicon On Insulator)のCMOS技術、多層金属(銅)配線技術、埋め込みDRAM(eDRAM)技術などを組み合わせている。金属配線の層数はCPチップが17層、SCチップが15層である。

CPチップとSCチップの半導体製造技術

8個のCPUコアで最大16個のスレッドを処理

 CPチップのシリコンダイ面積は678平方mm。仮に正方形だとすると、各辺が約26mmに達する。極めて巨大なシリコンダイである。搭載したトランジスタの数は40億個とこれも膨大な数量であり、「モンスターチップ」の名称が相応しいとすら言える。外部接続はIBMの伝統技術とも言えるフリップチップ技術「C4」である。C4技術では、はんだ合金のバンプでシリコンダイとボードを接続する。このはんだバンプの数がまた凄まじい。約2万個に達する。

 CPチップが内蔵する回路は8個のCPUコア、3次キャッシュ、3次キャッシュ用ディレクトリ、メモリコントローラ、X-BUSリンクなど。CPUコアの最大動作周波数は5GHzである。

CPチップのシリコンダイ写真

 CPUコア(プロセッサコア)は、2スレッドを同時に処理するマルチスレッディングに対応する。アーキテクチャとしてはスーパースケーラ(2つの命令を同時にフェッチ、デコード、ディスパッチする)、パイプライン実行、アウトオブオーダー実行を採用した。2次キャッシュを含めたCPUコア1個のシリコン面積は42平方mmである。

プロセッサコアロジックの内部フロー。1サイクルで最大10個の命令(青い矢印)を処理可能である。内訳は2個のロード/ストア命令、4個の固定小数点演算/整数演算命令、2個の浮動小数点演算/ベクトル演算命令、2個の分岐命令

71億個と膨大なトランジスタを集積

 SCチップのシリコンダイ面積はCPチップと同じ678平方mmで、これも巨大な「モンスターチップ」である。しかも高密度なメモリチップであるため、搭載したトランジスタの数はCPチップよりも遙かに多い。トランジスタ数は71億に達する。動作周波数はCPチップの2分の1(最大2.5GHz)である。外部接続はCPチップと同じC4技術。はんだバンプの数はおよそ14,000個とこれも極めて多い。

 SCチップが内蔵する回路はeDRAM技術による480MBの4次キャッシュ、eDRAM技術による18MBの4次キャッシュ用ディレクトリ、SMP制御ロジック、コヒーレンシロジック、A-BUSリンク、X-BUSリンク、S-BUSリンクなどである。

SCチップのシリコンダイ写真

(福田 昭)