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

Hot ChipsにNVIDIAの次世代Tegra「Parker」などが登場

Hot Chips会場となったクパチーノのFlint Center for the Performing Artsで開催されている

NVIDIAは新世代Tegra「Parker」の概要を発表

 米クパチーノで8月21~23日(現地時間)に開催された半導体チップカンファレンス「Hot Chips 28」では、CPUメーカーや研究機関が最新チップを相次いで発表した。2日目のカンファレンス初日には、低電力SoCのセッションがあった。そこで、NVIDIAは、16nm FinFETプロセスの新Tegra「Parker」の概要を明らかにした。

 NVIDIAは講演で、Parkerを車載向けとして開発したことを明確にした。モバイルSoCとして開発されて来た従来のTegraとは位置付けが異なる。FP16ショートベクタの導入など、ディープラーニングに向けた強化も、その方向であることが分かる。

 ParkerのCPUコンプレックスは、ARMv8命令セットのCPUコアで、「Denver 2」が2個、「Cortex-A57」が4個の6コア構成となっている。NVIDIAは前世代のTegra TX1では、ビッグコアとリトルコアを組み合わせるARMのbig.LITTLEアーキテクチャを採用。ビッグコアとしてCortex-A57を4個、リトルコアとしてCortex-A53を4個搭載していた。それに対してParkerでは、ビッグコアCortex-A57に加えて、より大きなスーパーCPUコアとしてDenver 2コアを搭載。より高性能と良好な電力効率を実現するために、ビッグ+スーパー(Big+Super)のヘテロジニアスマルチコア構成を取った。

Parker SoCの構成
ParkerのCPUコンプレックス

 Denverは、NVIDIAがARMからアーキテクチャルライセンスを取得して開発した独自マイクロアーキテクチャCPUコア。Denverは2-wayの命令デコーダで生成した内部マイクロ命令をオプティマイゼーションキャッシュに保存。同じパスを実行する時には、オプティマイゼーションキャッシュから最適化スケジューリングされたコードをフェッチして実行する。Denverのハードウェアデコーダは2命令/サイクルだが、最適化によってピークで7+のIPCを達成できる。Denver 2はハードウェア的にはDenverとほとんど変わらないが、最適化スケジューラ部分をチューニングしたことで最大30%の性能/電力を向上させているという。

 ParkerのGPUコアは「Pascal」世代のアーキテクチャ。PC向けGPUのPascalでは、16-bit半精度浮動小数点演算(FP16)のスループットは32-bit単精度浮動小数点演算(FP32)と同一だが、Parker GPUコアではFP16性能はFP16の2倍となっている。また、GPUコアのコンテクストスイッチングをハードウェアアシスト、グラフィックス処理でも細粒度のプリエンプションを行なう。車載システムで必要とされる応答性のためだ。

 車載向けにカメラプロセッシングも強化されており、最大12カメラをサポートする。出力ディスプレイパイプラインもマルチディスプレイに対応して3パイプに増えている。メモリインターフェイスは128-bit幅のLPDDR4。製造プロセスはTSMCの16FF。

Parker SoCの主要フィーチャ
Parker GPUはコンピュートとグラフィックスの両処理でプリエンプティブなコンテクストスイッチングが可能

Intelのx86 MCU「Quark D2000(Mint Valley:ミントバレー)」

 Intelは低電力SoCのセッションで、同社のMCU(Micro Controller)「Quark D2000(Mint Valley:ミントバレー)」の概要を説明した。Quark D2000は、IntelのMCUコア「Quark」ベースのSoCだ。Quark CPUコアには高周波数版と超低電力版があり、D2000のコアは後者の「Lakemont-ULP(レイクモントULP)」。CPUコアの動作周波数は32MHzまでで、SoCの電力消費はアクティブ状態で35mW以下、アイドル状態で10マイクロW以下。

Quark D2000の全体構成。ワーキングメモリとストレージメモリをオンチップに備える
MCUだがARMのCortex-Mシリーズとは異なりMMUを備える

 QuarkのLakemontアーキテクチャは、シングルパイプの5ステージインオーダパイプで、言ってみれば486相当。命令セットはPentiumとほぼ同等で、SIMD(Single Instruction, Multiple Data)系命令などを持たない。Hot ChipsでIntelは命令セットの選択について、PCとのバイナリ互換の重要度は低いが、x86のコンパイラ/デバッガのツールチェインを利用できる点を重視したと説明した。

 またIntelは、QuarkベースのMCUである同製品が、Intel FabではなくTSMCで委託製造されていることを明確にした。D2000は、一般的なMCU同様にエンベデッドフラッシュメモリをストレージとして使っている。そのため、エンベデッドフラッシュの技術を持っているファウンダリのプロセスを使っている可能性が高いと推測されていた。今回Intelは、最初に公開されたQuark SoCのデータはTSMCの180nmプロセスで製造されたものであることを明らかにした。また、より新しい設計は55nmであるとも説明した。

CPUコアアーキテクチャ自体はPentiumベースではないが命令セットはPentiumに近い
プリフェッチャも備える

1,000個のCPUコアを搭載したKiloCore

 Hot Chipsでは学界からのリサーチCPUも発表される。今年(2016年)は、6月に開催されたVLSI Symposiumで発表されたリサーチプロセッサ「KiloCore」が登場。University of California, Davis(UC Davis)が開発したKiloCoreは、1,000個のCPUコアを統合する。

 IBMの32nm SOIプロセスの64平方mmのダイ。各プロセッサタイルのサイズは0.055平方mmでトランジスタは57.47万。16-bitの固定小数点データパスを取ることでプロセッサコアをコンパクトにしている。シングルイシューのインオーダ実行、7ステージパイプライン。

 KiloCoreのアーキテクチャでは、アプリケーションプログラムは分割してコアグループにマップする。例えば、アプリケーションの各ステージを各コアに割り当てる。講演ではIEEE 802.11a/gの処理を24コアにマップした例が示された。

 KiloCoreは900mVで1.24GHz、1.1Vで最高1.78GHz。1.1V時の各コアの消費電力は38.8mWで、エナジー/オペレーションは21.9picoJouleとなる。チップ全体では40Wの電力で1.78T Instruction/secを達成できる。そのため、コンピュートインテンシブなアプリケーションに最適としている。

プロセッサタイルを敷き詰めたKiloCoreのダイ
プロセッサタイル
CPUコアアーキテクチャ
タスクグループに分割して小さなコア群に割り当てるプログラミングモデル

OpenSPARCベースのメニイコア

 「Piton」は、米Princeton Universityで開発した25コアのメニイコアリサーチプロセッサ。CPUコアは、オープンソースのOpenSPARC T1コア(UltraSPARC T1コアの公開版)。合計で25個のタイルを5x5の2Dメッシュ構成で搭載。タイル間を64-bitのオンチップインターコネクトで接続している。

OpenSPARC T1をCPUコアに採用
CPUコアとキャッシュ、オンチップネットワークのルータでタイルを構成。L1キャッシュとL2の間にL1.5キャッシュを挟む

 コヒーレントドメインを自由に設定することが可能で、キャッシュコヒーレンシの維持はドメイン内に限定する。ダイレクトリベースのMESIキャッシュコヒーレンスプロトコルを実装。ダイレクトリキャッシュを各タイル毎に持つ。

Pitonの全体構成
コヒーレントドメインの例