後藤弘茂のWeekly海外ニュース
2015年CPU「Skylake」の進化を促すIntelの14nmプロセス
(2014/8/25 08:00)
14nmではBroadwellとSkylakeの時間差が狭まる
Intelは遅れていた14nmプロセスでの製造を今後急ピッチでドライブする。プロセスの成熟が遅れたために、14nm世代では「Broadwell(ブロードウェル)」に続いて、その次の世代の「Skylake(スカイレイク)」が来年(2015年)には登場する見込みだ。14nmでは2世代のCPUの間隔が狭まり怒濤のCPU刷新となる。そして、14nm世代でフォーカスされるのは、継続的な性能/電力の向上だ。
Intelにとって第2世代の3Dトランジスタプロセスである14nmノードのポイントは、より面積のスケールダウンが効いて、より電力性能効率の高いプロセスであること。Broadwellと続くSkylakeでは、プロセス自体の強味を活かす。マイクロアーキテクチャの拡張も重要だが、現在のCPU戦争ではプロセス技術自体が重要なファクタとなっている。その14nmについては、まだリーク電流やディレイなどの性能と電力に関わるデータは出てきていないが、基本となる技術部分は一部見えてきた。
14nmプロセスでは、22nmプロセスと比べて、フィーチャサイズがどの次元でも比較的高い比率でスケールダウンしている。Intelは同社の3Dトランジスタをトライゲートトランジスタと呼んでいるが、半導体業界ではこの形のトランジスタを通常はFinFET(フィンフェット:Fin Field Effect Transistor)と呼んでいる。
IntelはFinFETのゲートピッチ(Gate Pitch)を22nmノードの90nmから14nmノードでは70nmへと78%に縮小した。最小のインターコネクトピッチ(InterConnect Pitch)も同様に22nmの80nmから14nmでは52nmへとこれは65%に縮小している。この両者は、従来の尺度でのロジックセルの面積の指標になるパラメータだ。つまり、プロセスの移行でCPUをどれだけ小さく高い面積効率にできるかを示す。裏返せば、1個のCPUにどれだけの機能を詰め込むことができるかの指標だ。
また、IntelはFinFETの要であるフィン自体の形状と寸法を変更した。Intelは22nmプロセスではフィンの高さは34nmだったのを、14nmプロセスでは42nmと23%も高くした。また、フィン同士の並ぶ間隔も、22nmでは60nmとかなり広く取っていたのを、14nmでは42nmに縮小した。
フィンハイトとフィンピッチを改良して高効率に
Intelが公表した14nmのスペックのうち、ゲートピッチとインターコネクトピッチは分かりやすい。それに対して、フィン間隔のフィンピッチ(Fin Pitch)とフィンの高さのフィンハイト(Fin Height)は分かりにくい。なぜかというと、この2つは、新しいFinFET 3Dトランジスタになってから登場した指標だからだ。下は2012年の「VLSI Symposium(Symposium on VLSI Technology)」での、ショートコース「FinFET History, Fundamentals and Future」のスライドで、これを見るとどの部分の寸法を言っているのかが分かる。
14nmの発表のWebカンファレンスで、Intelのプロセス技術を担当するMark Bohr氏(Intel Senior Fellow, Logic Technology Development, Intel)は、この2つの指標について次のように説明した。
「14nmではフィンピッチを22nmの60nmから42nmへと減らしたことで、より密接してパックすることができるようになり、レイアウト密度を向上させることができるようになった。
加えて、フィンの高さを22nmの34nmから14nmでは42nmへと高くした。フィンをより高く細くしたことで、トランジスタの中のフィンそれぞれの駆動電流(drive current)を増やし性能を向上させた。フィンハイトを増やすと、フィン当たりの駆動電流が増える。駆動電流が増えるとフィン当たりの性能が増す。そのため、より少ないフィンで回路を設計することができるようになった。そこで、従来の(回路)にあったフィンのいくつかを減らした。
その結果、より高密度にスケーリングが向上し、それと同時にキャパシタンスも減った。もちろん、キャパシタンスが減ったことはアクティブ電力の低減を意味する」。
FinFET 3Dトランジスタについて知らないと、この説明は分かりにくい部分があるかもしれない。フィンハイトを増やすと、フィン当たりのゲート幅(Gate Width)とチャネル幅(Channel Width)が長くなる。すると、電流駆動強度(drive strength)が高まり、より高速にトランジスタが動作する。つまり、同じフィン数なら、フィンハイトが高まったことで、より高速になる。
FinFETでは、1個のトランジスタを複数のフィンで構成している。高性能CPUの回路なら、トランジスタ当たり3~4個のフィンを持つトランジスタも少なくない。SRAMでさえ、高性能のSRAMライブラリではトランジスタ当たり複数のフィンを持つ場合がある。トランジスタ当たりのフィンの数を増やすのは、電流駆動能力を高くしてトランジスタを高速にするためだ。
FinFETはこのように電流駆動能力のためにマルチフィン(=マルチチャネル)の構成になっている。しかし、個々のフィンの駆動強度が高まれば、フィン数を減らしても同等の駆動能力を保つことができるようになる。例えば、従来の22nmでは、一定の性能を実現するためにFET当たり4フィンが必要だった回路を、14nmではFET当たり3フィンで実現できるようになると見られる。
また、フィンの間の間隔を狭めると、同じ面積のロジックセルの中に、より多くのフィンを詰め込むことが可能になる。ロジックセルの性能を上げることができるし、その逆に性能を保ちながらロジックセルを小さくすることもできる。セルのレイアウトの自由度も高まる。このあたりの仕組みをもう少し詳しく説明すると次のようになる。
ゲート幅にも複数のオプションがあるトランジスタ
FinFETのフィンハイトやフィンピッチは、トランジスタのゲート幅(Gate Width)またはチャネル幅(Channel Width)に関係する。前回の記事で取り上げたゲート長(Gate Length)やチャネル長(Channel Length)は、ソースとドレインの間の長さだが、今回のゲート幅/チャネル幅はそれと直交する。ゲートとその下のチャネルの横幅となる。
ゲート長やチャネル長は、性能にも影響するが、リーク電流に大きく影響する。それに対して、ゲート幅やチャネル幅はリーク電流ではなく電流駆動強度に影響する。言い換えれば、主に性能に影響する。
半導体ベンダーは、トランジスタで通常ゲート長が異なる複数のオプションを提供する。それとは別に、ゲート幅についても複数のオプションを可能としている。ゲート幅を変えることで、トランジスタに流れる電流が多くなり、トランジスタがより速く動作し、よりチップが高速に動くようになる。半導体ベンダーは、性能が必要な回路ではゲート幅とチャネル幅を変えることができるようにしてきた。チャネルの幅と長さの比率W/Lが、トランジスタの性能では重要な意味を持っている。
プレーナFETとFinFETでは、ゲート幅(またはチャネル幅)をどうやって測るかという点から異なる。プレーナトランジスタの場合は、ゲート幅の算出は、ゲート電極のチャネルに面した部分が平面なので簡単だ。トランジスタをソースまたはドレイン方向から見た場合に、ゲートまたはゲート直下の、両サイドで絶縁するSTI(Shallow Trench Isolation)に囲まれた部分がゲート幅やチャネル幅だ。それに対してFinFETでは、チャネル部分が立体になっており、ゲートがそれを囲んでいるため、ちょっと異なる。下は2012年のARMの技術カンファレンス「ARM Techcon」でARMとIBMがプレゼンテーションしたスライドだ。
FinFETでのゲート幅は、ゲートの高さの2倍に、ゲートのトップの幅を加えたものになる。
FinFETゲート幅=(2×ゲート高)+トップ幅
ゲートはチャネルの両側面を囲うので、まず、ゲート高の2倍がゲート幅となる。チャネルの最上部を覆うトップの幅を加えて3面のトライゲートのゲート幅となる。プレーナトランジスタと比べると、ゲート幅はずっと広くなり、その分、電流駆動能力も上がる。これが3Dファクタだ。これだけを見ると、すっきりとFinFETの方がプレーナより優れている。ところが、話はそんなに簡単ではない。
FinFETではゲート幅は整数倍で調整される
すでに説明したように、プレーナトランジスタの場合、駆動強度を上げたい場合には、ゲート幅を広げて来た。パフォーマンスプロセスでは、ゲート幅の広いデバイスが回路の多くの部分で使われている。ところが、FinFETの場合は、フィン自体のパラメータは物理的な制約で変えることができない。そのため、プレーナのように自由に駆動強度を上げることができない。
FinFETで、ドライブ強度の強化の問題を解決するにはどうすればいいのか。すでに説明したように、フィン自体に手をつけられないのなら、解決策はフィンの数を増やすことだ。FinFETで1デバイス当たりのフィンの数を2フィンに増やせば駆動能力は2倍になる。3フィンに増やせば3倍、4フィンなら4倍と整数倍で増えて行く。
この場合、プレーナのゲート幅に対して、3DファクタのFinFETのゲート幅は下のようになる。下のスライドはFET当たり2フィンの場合の例で、ゲートの高さ×2にゲートのトップの幅を加えた幅を2倍にする。そして、この時に関係してくるパラメータがフィンピッチだ。一定の幅に、より多くのフィンを配置できれば、一定幅でのゲート幅はより広くなる。
ゲート幅の増加率が量子的(離散的)になる
このように、FinFETでは、チャネルの回りのゲートを多面から囲うマルチゲートMuG(Multi-Gate)FET化だけでなく、チャネル自体を複数にするMuC(Multi-Channel)FET化で性能を上げる。そのため、従来のプレーナトランジスタとは、物理設計上の制約条件が異なっている。
FinFETでは、フィンの数でゲート幅/チャネル幅を広げて性能を調整するため、ゲート幅が一定の粒度で増える。プレーナトランジスタでは、ゲート幅はある程度自由に設定ができた。それに対してFinFETでは、フィン数という粒度を持つため量子的(離散的)にゲート幅が増える「Width Quantization(幅量子化)」と呼ばれる事象が発生している。
FinFETではゲート幅は整数倍でしか調整ができない。これにはいい面と悪い面があるが、フィンのプレイスメントを含めたライブラリセルの設計の自由度が制限されるのは確かだ。
もっとも、実際にはスタンダードセルライブラリでは、これまでも、x1/x2/x3/x4といった形で、一定粒度でゲートのW/L比を調節してゲート幅を変えて駆動強度を高めたセルが提供されている。チップ設計者がライブラリセルのスペックをチェックすると、x1/x2/x4といったラベルがあり、異なる駆動強度のセルを選ぶことができる。スタンダードセルでは決まったセルハイトの中で効率を上げるために、決め打ちでゲート幅を設定しているためだ。
その意味ではFinFETのWidth Quantizationも、セルライブラリを使って設計する側にとっては従来と変わらない。しかし、FinFETでは、これが物理的なフィンという形の粒度を持っている点が異なる。フルカスタムのセル設計では自由度が制限され、セル設計がやや複雑となり、欠陥への脆弱性などが異なる。
Width QuantizationはFinFET時代の新しいファクタで、この1~2年、半導体業界で静かに流行語の1つになりつつある。ARM社の技術カンファレンスARM Techconでは、一昨年(2012)年頃から、すでに、Width Quantizationの問題を大きく取り上げていた。ARMのセルライブラリの設計に大きく影響するからだ。
半導体設計のベースとなるスタンダードセルの設計とFinFET
FinFETのセル設計では、Width Quantizationに絡んでFinFETのフィンピッチが非常に重要となる。ラフに言えば、フィンピッチが狭くてより多くのフィンを一定の幅に配置できれば、それだけセル設計の自由度が増える。また、メタルピッチが狭まり、ロジックセルの高さ(Logic Cell Heigt)が狭まった場合でも、フィンの数を維持できる。
Intelは14nmプロセスではメタルピッチを大幅に狭めた。これは、フィンピッチも狭くしなければならないことを意味している。言い換えれば、プロセスノード微細化でメタルピッチを縮めても、フィンピッチを縮めることができなければロジックセルエリアは小さくできない。FinFETでは、フィンピッチとメタルピッチは両輪でスケールダウンさせる必要がある。
この話は、実際にはもう少しやっかいで複雑だ。その説明の前に、簡単にスタンダードセルに関する用語について説明すると次のようになる。
半導体の設計では、一般的にはスタンダードセルが使われる。スタンダードセルはレゴブロックのようなもので、invやnand、xor、muxなどセル毎に機能があり、それらのセルを組み合わせて回路を作ることができる。セルは矩形で、電源Vddと接地GNDに上下を挟まれており、同じライブラリではその上下の高さ「セルハイト(Cell Height)」が揃えられている(セル幅は自由度がある)。
セルハイトは、横方向の配線トラックの数で規定される。配線のメタルトラックで12本分のセルハイトなら12トラックセル、9本のセルハイトなら9トラックセルとなる。セルハイトが高いと、高性能なセルを作りやすいが、シンプルなセルでは無駄な面積ができてしまう。セルハイトが低いと、複雑なセルや高性能なセルを作りにくいが、シンプルなセルでは面積効率がいい。
では、こうしたスタンダードセルはFinFET時代にはどう変わるのか。
フィンピッチが広いとアクティブにできるフィン数が減る
ARMとIBMが2012年のARM Techconで行なったセッションでは、スタンダードセルのセルハイトとフィンピッチとフィン数の関係について詳しい説明があった。
12トラックのスタンダードセルで、フィンピッチがメタルピッチに等しいFinFETを使った場合、原理的には12トラックのセル高(Cell Height)のライブラリセルの中に12個のフィンを配置できる。しかし、実際のセルでは、コンタクトやパワーレイルの配置があるため、全てのフィンを使うことができない。アクティブフィンとして使えるフィン以外は、ダミーフィンとなる。下のスライドは12トラックの例で、この場合は8フィンがアクティブとなり、1つのFET当たり最大4フィンが使えることになる。
12トラックの場合、このように一応悪くないのだが、これが8トラックになると状況が異なってくる。もし、トラックピッチとフィンピッチが同じだったら、アクティブにできるのは8フィンのうちの半分の4フィンで、FET当たりは最大2フィンになってしまうと言う。つまり、低電力で省スペースの8トラックセルでは、FinFETの駆動強度は12トラックセルの半分にまで落ちてしまう。
実際には4フィンはオーバーキルの可能性があるが、2フィンでは十分な性能にならない可能性がある。結果として、低消費電力の回路は、性能が極端に低くなってしまう。ローパワーのCPUコアは9トラックセルで設計することが多いが、その場合、12トラックセルを使う高性能CPUコアとの性能差が大きく開く。
この問題をフィンの数を増やすことで解決しようとすると、より多くのフィンを配置できるようにロジックセルの高さを広げることになる。そうすると、トラック数の少ないスタンダードセルでは面積がスケールダウンしなくなってしまう。言い換えると、ノードの数字を微細化しても、セルやチップの面積が小さくならなくなる。特にローパワーのCPUやSoCのダイが小さくならなくなり、コストが高くなる。
メタルピッチより短い必要があるフィンピッチ
実際には、どの半導体ベンダーも、フィンピッチをメタルピッチより狭めているため、上のスライドとは状況が異なり、クリティカル度合いは低い。すでに述べたように、Intelの14nmのメタルピッチは52nm(M1メタルではないと見られる)でフィンピッチは42nmと、フィンピッチの方が80%と狭い。TSMCの16FFはメタルピッチが64nmで、フィンピッチは昨年(2013年)のIEDMのデータで48nmと、フィンピッチが75%になっている。Samsungについては、フィンピッチのデータはないが、メタルピッチは64nmで、今年(2014年)のISSCC(IEEE International Solid-State Circuits Conference)のFinFET SRAMの論文を見る限り、フィンピッチはかなり狭い。
では、フィンピッチがメタルピッチより大幅に狭い場合、一体、アクティブフィンはスタンダードセルの中に何枚配置できるのか。これについては、ARMが今年の「International Symposium on Physical Design (ISPD)」のキーノートスピーチで理論値を説明している。下のスライドがそれで横軸がセルのトラックハイト、縦軸がフィンピッチ、表中の値がアクティブフィンの数となっている。
これを見ると分かるように、フィンピッチが狭くなると、同じ数のアクティブフィンを確保するのに必要なセルハイトが小さくなって行く。つまり、理論上、より小さな面積のライブラリセルで、同じだけの駆動強度のトランジスタを得ることができるようになる。言い換えれば、同じ性能のチップを、より小さく作ることができるようになる。ここで、ようやく3Dファクタによってトランジスタを小さくするというFinFETの本領が発揮され始める。また、9トラックのセルでも、十分な性能のフィンを得ることができるようになる。
例えば、TSMCの16FFの場合はメタルピッチが64nmで、フィンピッチが48nmなので、上のチャートの一番下の列になる。すると、ぎりぎりで9トラックで8アクティブフィンを確保できることが分かる。9トラックセルライブラリが十分な性能で使いものになることを意味している。12トラックなら12フィンだ。フィンピッチがメタルピッチと同じ場合は12トラックと8トラックで2倍もアクティブフィン数が違っていたが、TSMCのスペックだとセルサイズに見合ったフィン数の違いとなっている。
ちなみに、この問題は多少は緩和する方法もいくつかある。例えば、ARMはハーフトラックを使った非整数のトラックハイトなどを紹介している。TSMCも似たようなアイデアでメタルピッチが64nm/フィンピッチが48nmの9トラックセルで、フィンピッチをアダプティブに調整することでフィン配置を最適化するテクニックの特許(US 8,728,892)を取っている。
FinFET化で変わるプロセスの重要ファクタ
このように、FinFETでは、フィンピッチがセル設計とパフォーマンス/エリアの面での重要なファクタとなっている。ラフに言えば、セル設計上は、フィンピッチは狭ければ狭いほどいい。上のスライドを見ると、メタルピッチに対してはフィンピッチは75%~80%かそれ以下にしなければ、フィン配置が問題になる。
原理的には、低電力で省スペースの小さな小型のロジックセルほど、狭いフィンピッチの効用は大きくなるということになる。つまり、フィンピッチが狭くなると、よりチップが小さく、電力効率がよくなる。このことを逆に捕らえると、FinFETでは、メタルピッチだけを狭くしてもセルを小さくできない場合がある。例えば、フィンピッチが40~48nmであってもメタルピッチが48nmと狭いと下のスライドのようになる。
FinFET時代には従来のような、ゲートピッチ×メタルピッチだけでは、セルの面積のスケーリングを測ることができない。フィンピッチあるいは、メタルピッチとフィンピッチの比率も重要となるように指標が変わった。
ただし、ここまでの議論は、各フィンの電流駆動強度が前世代と同じだった場合だ。個々のフィンの電流駆動能力が増えるなら、また話は違ってくる。Intelが14nmプロセスで行なったのはそれだ。フィンの駆動力が上がり、FET当たりのフィン数を減らすことが可能になった。実はIntelは、14nmではフィンピッチ/メタルピッチの比率が約80%と、22nm世代の75%より悪化している。しかし、フィンハイトが高くなったことによるフィン数低減で、それもロジックでは問題にならなくなっていると見られる。そして、フィン数の低減はアクティブ電力の低減に繋がり、それはTDP(Thermal Design Power:熱設計消費電力)やバッテリ駆動時間の改善にも繋がる。
こうした14nmプロセスの技術要素が見えてくると、BroadwellとSkylakeを始めとするIntelの14nm製品群の予想も立って来る。半導体の技術的には、22nmから14nmは、再び良好なエリアスケーリングと良好な電力性能比の向上が実現される見込みが高い。特にエリアスケーリングでは、32nmから22nmへの微細化よりも今回の方が優れている。マーケティングトークだけではなく、物理的に良好な進化となりそうだ。
それは、CPUやGPUのマイクロアーキテクチャを拡張できる余裕が増えたことも意味する。つまり、14nmでは、Intelはアグレッシブにマイクロアーキテクチャを革新できることになる。