後藤弘茂のWeekly海外ニュース
Intelが10nmプロセスの「Ice Lake」を正式発表
2019年5月28日 17:44
IntelがCOMPUTEXでIce Lakeを発表
Intelは、5月28日から開催されているCOMPUTEXの基調講演で、10nmプロセスのCPU「Ice Lake」を正式発表した。公開されたのは4コア版のIce Lakeで、Gen11のIntelグラフィックスコアを内蔵する。10nmからCPUコアは新しい「Sunny Cove」となる。CPUコアの最高周波数は4.1GHz、SMT(Simultaneous Multithreading)で8スレッド実行となる。
4.1GHzは、このバージョンのダイでの技術上の最高周波数。15W TDPクラスの製品ライン向けのCPU製品とはいえ、動作周波数の上限が低いように見える。しかし、Intelは10nmプロセスでは回路性能が落ちることを以前から予告していた。14nmプロセスに対して、10nmの最初の世代と2世代目の10+は半導体としての回路性能は低くなる。
10nmの周波数が伸びない原因としてもっとも考えられるのは、10nmプロセスでは半導体回路の配線が細くなりすぎるため、一部の配線抵抗が増えてしまうことだ。トランジスタのスイッチングが若干速くなったとしても、配線ディレイが増えてしまうことで、相殺される。なぜ、同じ問題がTSMCなどの7nmプロセスで発生しないのかというと、Intelの10nmのほうが、TSMCの7nmより配線間隔(Metal Pitch)がせまく余裕がないからだ。
TSMCの7nmの配線ピッチは40nmなのに対して、Intelの10nmの配線ピッチは当初の発表のままだとしたら36nmだ。実際には、配線ピッチがせまくなると、エレクトロマイグレーションによる配線の破損の可能性が高くなるため、Intelは配線材料を銅からコバルトに変えた。
しかし、コバルトは銅より抵抗が大きいため、配線ディレイが増えてしまう。Intelが10nmでつまづいた原因の1つはここにあると言われている。Intelは、Ice Lakeの製品では10nmの仕様を変更しているはずだが、それでも配線ディレイの問題は解決できなかったと見られる。
そのため、Intelは10nmのSunny Cove CPUコアでは大幅なマイクロアーキテクチャの拡張を行ない、周波数あたりの性能を引き上げた。また、ベクタユニットの拡張にフォーカスし、512-bitのベクタ長のAVX-512を標準で実装した。そのため、電力当たりの性能では魅力的なCPUとなっている。
Ice Lakeで統合するGPUコアはGen11で新設計となった。実行ユニットクラスタは64 EU(execution unit)で、1.1GHz動作時に演算性能は1TFLOPSを越える。1TFLOPSの演算性能は、明らかにメモリ帯域とのバランスが取れていない。GPUコアが得意とするワークロードは、キャッシュの効果が薄いため、このアンバランスは問題となる。
これについては、IntelはHBM2を使ったオンパッケージの広帯域メモリのソリューションを発表することが予想される。その場合は、現在のダイ(半導体本体)にHBM2のインターフェイスが隠されているのでなければ、別ダイとなる。
マイクロアーキテクチャレベルで拡張したSunny Coveコア
下がSunny Coveコアのマイクロアーキテクチャ全体図だ。Intelは、Sunny CoveでCPUコアアーキテクチャをさらに拡張した。これまで、Intelはエグゼキューションエンジンのアーキテクチャを公開して来たが、今回、全体のマイクロアーキテクチャが明らかにされた。
命令のフェッチやデコードなどを司るフロントエンド部については、従来のSkylake系コアと大きくは異ならない。命令デコードは5-wayで、デコーダからの出力は5フューズドuOP、マイクロコードデコーダからは4フューズドuOP、uOPキャッシュからは6フューズドuOPとなっている。つまり、uOPキャッシュにヒットした場合は、uOPキューへのディスパッチ帯域が6命令に上がる。
uOPキャッシュのサイズは、Skylakeの1.5K uOPsから2.25K uOPsへと50%増量された。アウトオブオーダウィンドウは、従来の224命令から352命令へと、これも一気に拡張された。より多くの命令をインフライトで制御できるようになり、命令レベルの並列性を活用しやすくなった。
これは、IPC(Instruction-per-Clock)の向上につながる。Armの最新のCortex-A77が、アウトオブオーダウィンドウを拡張して160命令になったが、Sunny Coveはその2倍以上のウィンドウを持つことになる。
実行エンジンやメモリアクセスなどのバックエンドは、命令の発行ポートが、Skylake系アーキテクチャの8ポートからさらに増やされ10ポートとなった。これは、アウトオブオーダのウィンドウの拡張と同期している。
また、命令スケジューラのリザベーションステーションの構成などが変更された。命令発行の拡張に合わせて、アウトオブオーダ実行時の命令ハンドル数のためのリオーダバッファが拡張され、リザベーションステーションで待機できる命令数も拡張された。
そして、AVX-512ユニットが標準となった。Intelは今回、AVX-512を深層学習性能の向上をポイントに強く押し出している。
Sunny Coveコアではキャッシュ階層も強化された。Ice Lakeでは、L1データキャッシュは48KBとSkylakeの32KBから増量された。L2はSkylakeの256KBから512KBへと倍増された。データのロード/ストアも大幅に強化された。アドレス生成ユニットが倍増されたことに加え、インフライトで制御できるロード数は128(Skylakeでは72)、ストアは72(Skylakeでは56)へと増えた。エンジンの拡張に見合う、データハンドリングの構成となっている。
こうしたアーキテクチャ拡張の結果、Sunny Coveコアでは、Skylake系のコアに対してIPCで18%向上したという。クロックが同じでも性能が上がる。加えて、SIMDユニットは従来の256-bit幅から512-bit幅へと拡張された。ベクタプロセッシングのスループットは、従来のクライアント版Skylake系コアの2倍となる。
I/O回りではThunderbolt3を統合
Ice Lakeでは、メモリコントローラも新設計となり、DDR4だけでなくLPDDR4とLPDDR4Xもサポートした。DDR4とLPDDR3の互換インターフェイスはあるが、DDR4とLPDDR4はめずらしい。
DDR4とLPDDR4ではインターフェイスが大きく異なるため、互換のメモリコントローラの設計はきわめて難しいはずだ。それだけ、低電力モバイルを強く指向したメモリコントローラとなっている。
LPDDR4/4Xでは最大32GBで転送レートは3,733Mbpsサポート、DDR4では最大64GBで転送レートは3,200Mbps。内部バスはリングトポロジだが、これも改良されている。
I/O回りでは目立つのはThunderbolt3の統合だ。I/Oでは、PCI ExpressとUSB系とDisplayPortでPHYを共有する構成となっており、Thunderbolt3もサポートする。ポートあたり最大で片方向で40Gbpsの転送レートとなる。
Ice Lakeのダイを見て目立つのは、Thunderbolt3と描かれたユニットのサイズ。Thunderbolt3だけにしてはやけに大きいが、これは、実際には4ユニットのPHYと、muxでPHYに接続された各インターフェイスのインターフェイスユニットが存在するためだと見られる。
ちなみに、10nmになってもアナログ回路部分はシュリンクしないため、相対的に微細化が進むとI/O部分のダイ面積が大きくなっていく。
Ice Lakeではサウスブリッジ(PCH)のダイは14nmプロセスとなっている。最大の特徴はWi-Fi6 GIG+が統合されていることだ。また、オーディオDSPもクアッドコアの新設計となっている。
そして、目立たないが重要な点は、FIVR(Fully Integrated Voltage Regulator)が統合されていること。Ice LakeのPCHのFIVRは、PCHだけでなくCPUにもパワーを供給する。このFIVRのアーキテクチャは、Ice Lakeの電力制御のカギとなる。CPUに対しては、オンパッケージのPCHに電圧レギュレータを載せることで、粒度が小さく切り替えの速い電力制御を行なうはずだ。