後藤弘茂のWeekly海外ニュース
FinFET時代のGPUアーキテクチャに影響を与える配線技術
(2016/3/15 06:00)
16/14nmプロセスのGPU設計の焦点となる配線層(メタルレイヤスタック)
GPUは4年振りにプロセス技術の刷新を迎えている。28nmプロセスから、16/14nmのFinFET 3Dトランジスタプロセスへと切り替わろうとしている。過去数年のGPUの進化の足かせとなっていたプロセス技術の停滞が打破されることで、GPUの大きな躍進が期待される。しかし、16/14nmプロセスのGPUには、独特の問題がある。それは、プロセスの配線層の構成だ。
GPUは配線層に特殊なオプションを使っている。半導体プロセスでは、配線層のことをメタルと呼んでいる。配線は、最も下のトランジスタに近い配線が「M1(Metal 1)」で、現在では「M10(Metal 10)」以上の10数層の配線の構成がロジックチップでは一般的になっている。
配線は、下のM1からM3あたりが配線ピッチ(配線間隔)が狭いのが一般的で、上の配線になるに従ってピッチが広くなっていく。最もピッチの狭い配線パターンは「1x」と呼ばれる。各配線パターンには、1xの配線を基準として1.5倍の配線ピッチの「1.5x」、2倍の「2x」といった配線ピッチの名称が付けられている。
28nmプロセスの場合、1xの配線ピッチは通常は90nm。これは、1つの配線の端から、もう1つの配線の端までの間隔を示す。配線ピッチが狭くなればなるほど、配線幅自体も狭くなり、配線と配線の間の間隔も狭くなる。
CPUの場合は、性能向上のために配線抵抗を減らす太い配線を使ったメタルレイヤ(配線層)の構成にすることが多い。最も細い1xピッチ配線は、2から3レイヤに限定されるのが、典型的なCPUプロセスだ。M4よりも上の配線は、ピッチが広く、配線幅が広いプロセスが使われる。それに対して、SoCでは、より稠密な配線を求める場合が多いため、細い配線の比率が多いメタルレイヤ構成が多い。通常、1xが4レイヤ以上使われる。
Tシェイプを採るGPUの配線スタックの構造
GPUの場合は、SoC向けの配線よりさらに微細な配線が多い。通常は配線の最下のM1からM8層までに、最もピッチの狭い1xの配線を使う。下の図は28nmのGPUスタイルのメタルレイヤ(配線層)の例だ。実際には、GPUではなく、AMD APU(Accelerated Processing Unit)の「Carrizo」の配線層の例だが、CarrizoはGPUの配線や物理設計のメソッドをAPUに適用した製品なので、基本的な考え方はGPUと同じだ。AMDでは、GPU型のこうした配線構成がTの字に似ていることから「Tシェイプ」と呼んでいる。
こうした配線層の構造は、以前は見られたが、プロセスが微細化してからは、CPUなどほかの製品は、段階的に配線ピッチを変える「Vシェイプ」型の配線層を取るようになった。今では、GPUなどごく一部だけが、Tシェイプの狭い配線層を多様する構成を取っている。
1xの配線ピッチのレイヤを8層使うGPUの配線構造は、しかし、20nm以降のプロセスでは問題をはらんでいる。それは、20nmプロセス以降は、1xの配線にはダブルパターニング(Double-Patterning)技術を使わなければならないからだ。ダブルパターニングでは、1レイヤのパターニングを2回の露光プロセスに分けて行う。そのため、露光プロセスのスループットは単純計算でレイヤあたり半分に落ちる。また、パターニングを2つに分けて整合性を取らなければならないため、マスクの生成が複雑になる。ダブルパターニングは、コストと手間がかかる。
GPUの伝統的な8層の1x配線を維持しようとすると、1x配線にダブルパターニングを使うプロセスでは、コストが大幅に上がってしまう。つまり、微細化によってコストが上がるという問題は、通常のSoCよりも、GPUの方がずっと顕著に表れる。この問題を最初に声高に訴え始めたのがGPUメーカーだったのは、このためだ。
ダブルパターニングの使用を最小限に抑えた16/14nm GPU
16/14nmプロセスのGPUでは、従来のGPU向けプロセスとは異なる配線層構成で、この問題を解決する。AMDのJoe Macri氏(Corporate vice president, Product CTO, Corporate Fellow, AMD)は、昨年(2015年)12月のRadeon Technologies Group (RTG) Tech Summit時に次のように16/14nm世代のGPU配線について説明している。
「GPUでは(配線)密度が求められているため、これまで、配線層の構造では『Tシェイプ』を取って来た。最も狭い配線を、できる限り多く使った構造だ。FinFETプロセスでも、依然としてGPUでは配線密度は重要だ。しかし、指摘のように、FinFETプロセスでは、最も狭い配線は、ダブルパターニングを使うため、コストが高い。ダブルパターニングになると、マスク数が2倍になり、歩留まりも落ちてしまうからだ。
そこで、我々はFinFET向けに、Tシェイプに近いが異なる配線層を考案した。FinFETでは、M1やM2など最下層の配線に、ダブルパターニングの最もピッチが狭い配線を使う。しかし、その上の配線層には、シングルパターニングで最も狭い配線を使う。ダブルパターニングを使わなければならない配線層を最小限に留めることで、コスト増を最小に抑える」。
従来のGPU向けプロセスとは異なり、FinFETプロセス世代では、M1からM8までの8レイヤを全て最小ピッチの1xメタルレイヤとはしない。最小ピッチはM1からおそらくM3までのレイヤに留めると見られる。その代わりに、その上の5レイヤほどはシングルパターニングでの最小ピッチの1.25xの配線を使うと見られる。
ファウンダリプロセスの場合、16/14nmでの最小のダブルパターニング1x配線は64nmピッチ、シングルパターニングでの最小配線は1.25xの80nmピッチ。M1からM3が64nm、M4からM8が80nmの構成となっている可能性が高い。紫の配線が、ダブルパターニングを必要とする配線層だ。上の図の左は28nmのGPU、右が16/14nmのGPUの推定図だ。右の図のM9から上は、今のところ構成がわからない。左の28nmプロセスの1x配線は90nmだ。
GPUアーキテクチャに大きな影響を及ぼす配線層の問題
AMDが取ろうとしているGPUの配線層構成は明瞭で、これならGPUでも製造コストの増加を抑えることができる。おそらく、NVIDIAもほぼ同様の配線構成を採用すると見られる。しかし、この配線層の構成には、もちろんトレードオフがある。それは、GPUのダイ面積が従来ほど縮小できない可能性があることだ。
そもそも、GPUが1xピッチ配線を8層も重ねて来たのには理由がある。それは、GPUの面積あたりの配線が極めて複雑だからだ。GPUアーキテクト達は、GPU設計は配線地獄だと口を揃える。膨大な数の並列演算ユニットに、膨大な量のレジスタ、それらのバンドルを接続するクロスバースイッチと、GPUの内部は配線だらけだ。膨大な配線を収めるために、GPUでは1xピッチの配線をオプションの上限まで重ねる配線層を採用して来た。
AMDはかつて配線地獄を緩和するために、GPUにリングバスを採用した。しかし、性能面の問題に直面したために、リングバスを2世代で廃止して、クロスバースイッチに戻したという経緯がある。
28nmプロセスでは配線ピッチは90nmが1xだった。16/14nmの1xは64nmで、90nmから64nmへは71%の縮小となる。しかし、M4から上のレイヤでは配線ピッチは80nmとなるため縮小幅が小さい。同じだけの配線を詰め込もうとすると、16/14nm世代では効率的な設計が難しくなる。つまり、GPUのダイを効率的に縮小することが、部分的に難しくなる可能性がある。
また、この傾向が、この先の10nm/7nm世代でも続くとすると、GPUアーキテクチャに影響を及ぼす可能性が出てくる。ピッチ幅が狭い配線を多層に使うことが難しくなるため、配線を減らす方向へとアーキテクチャを振り向ける必要が出るからだ。かつてリングバスを採用したような変更が、再び行なわれるかも知れない。16/14nmプロセスとその後のGPUアーキテクチャでは、配線に関係する部分が焦点になりそうだ。
問題の根本的な解決は、露光技術の刷新だが、そこが現状ではクリアになっていない。現在のArF露光から、極紫外線を使うEUV露光へと切り替えれば、露光プロセスをシンプルにすることが可能となる。しかし、EUV露光は、現状では、装置自体のコストが非常に高く、スループットも極めて低い。ロジックプロセスでは、10nmはもちろん、7nmでも採用できない可能性が高い。
こうしてみると、GPUにとって、問題となる部分は今後数プロセス世代は解決されそうにない。そのため、GPUは、プロセスが微細化するにつれて、ますます配線密度を上げにくくなる可能性が高い。それは、GPUが配線の複雑さを下げるようなアーキテクチャ的な対応を迫られることを意味している。