Nintendo Switchのチップ解剖から考えるデグレード版Tegra X1を選んだ理由
■半導体チップからゲーム機を作り上げてきた任天堂
2017年3月3日に任天堂からゲーム機「Nintendo Switch」が発売された。
任天堂は歴代、新たな半導体チップを擁して常にゲーム機の新しさを追求してきた会社の1社である。
初代「ファミリーコンピュータ」(以下、ファミコン)、「スーパーファミコン」、「NINTENDO64」などで独自チップを作り、その上で走るユニークなソフトウェアで一時代を築いてきた。
図1は、今回発売されたNintendo Switchの前世代ゲーム機である「Wii U」と「3DS」(2014年版)に搭載されているメインプロセッサの様子である。
任天堂のゲーム機用チップは初代ファミコンからCPUとグラフィック系チップを用いている。
Wii UではIBMのPowerPC系のCPUを3基持ち、GPUはAMDのRadeon HDのモディファイ版が使われている。
2チップ構成だ。
ともにWii U専用の新規開発のカスタムチップであった。
携帯ゲーム機の「3DS」では富士通セミコンダクター(現ソシオネクスト)が設計したチップを採用している。
こちらは45nmプロセスから28nmプロセスへと製造プロセスの微細化によるコストリダクションを経ているが、当初からディジタルメディアプロフェッショナル(DMP)のGPUとARMコアを1チップ化した、CPU+GPU構成となっている。
■“カスタマイズされたTegraプロセッサ”に迫る
Nintendo Switchは2017年1月13日、東京ビッグサイトで開催された「Nintendo Switchプレゼンテーション2017」で発表された。
米国の半導体メーカーNVIDIAと共同開発を行った「カスタマイズされたTegraプロセッサ」が活用されていることが発売前から明らかになっていた。
図2は、販売開始になったNintendo Switchの背面と、背面下部に印字されている文字部分、背面カバーを取り外したところである。
背面下部には商品に関する情報(型名、デザイン場所、製造場所、年号)が書かれている。
どの製品もこの情報から「いつ、どこで、だれが」開発したかが分かる。
Nintendo Switchは順に「2016年、ドイツの任天堂が設計し、中国で製造した」ことが読み取れる。
■米国ではなく“ドイツ”
本連載の第11回で報告した「ニンテンドークラシックミニ ファミリーコンピュータ」は“いつ、どこで、だれが”の情報記載されておらず「任天堂(漢字)+MADE IN CHINA」の文字が搭載されているだけであった。
しかしNintendo Switchではドイツにある任天堂ヨーロッパの住所、2016年という年号が記載されている。
この情報から「2016年にドイツで開発されたもの」だと推測される。
任天堂は新たな半導体プロセッサを開発するところからゲーム機を作ってきた。
そのためにIBMやAMDといった米国を代表するプロセッサメーカーとともに仕様を決めて、チップ開発を行ってきたことは先に述べた。
しかしNintendo Switchでは米国ではなく、“ドイツ”のネーミングが刻まれている。
■2015年発売の「Tegra X1」と同じ!?
図3は、実際にNintendo Switchを分解し、メインのプロセッサ「ODNX02-A2」をチップ開封した様子である。
筆者が代表を務めるテカナリエではNintendo Switchの発売前から、NVIDIAのアプリケーションプロセッサ「Tegra」の全てのバージョンに対してチップ開封を行っている。
そこで過去のTegraのチップ開封で得た情報と照らし合わせたところ、Nintendo Switchが搭載するプロセッサは2015年発売の「Tegra X1」と同じものであることが判明した。
Tegra X1はどのようなプロセッサなのだろうか。
実際にはゲーム機のみならず車の自動運転システムやインフォテインメントシステム、GoogleのAndroidタブレット「Pixel C」などで広く活用されるプロセッサである。
CPUにはARMの64ビットプロセッサ「Cortex-A57」「同A53」が各々4基ずつ搭載される。
GPUはNVIDIA独自のGPU内部アーキテクチャ「Maxwell」が活用されCUDAが256基も搭載されるGPUリッチなSoCだ。
チップにはカメラISPやビデオデコーダー/エンコーダーなども搭載されている。
2016〜2017年にNVIDIAはFP64(64ビット浮動小数点演算性能)のアーキテクチャを強化し、FP16を扱える新世代のGPUアーキテクチャ「Pascal」を採用したGPU製品群を発売しており、Tegra X1はその点で1世代前のプロセッサという位置付けになっている。
Tegra X1の後継チップ「Parker」も発表されており、こちらはPascal世代GPUとNVIDIAの独自開発によるARM準拠コアDenver2が採用されるチップとなっており、Tegra X1は2017年の時点では「CPU」も「GPU」も共に1世代前のものということになる。
Nintendo Switchの発売にあたり、NVIDIA Tegraのカスタマイズチップを活用との情報を明らかにしている。
しかしチップ開封によってシリコンは、Tegra X1と全く同じものであることは判明している。
どんなカスタマイズを行っているのだろうか。
答えを図4にまとめた。
Tegra X1は、Nintendo Switchだけでなく、車載用途から、ホーム機器まで多くの製品に使われている。
その中で最も機能を使っている(製品側の仕様書から)ものが、NVIDIA自身が発売する「Shield Pro」というホーム・エンターテインメント機である(車載の場合にはカメラ画像処理プロセッサなどの機能は使わない!!)。
Shield Proに使われるTegra X1のチップパッケージは「1232」端子を持っている。
一方Nintendo Switch向けのTegra X1は「960」端子。
実に22%端子数が削減されている。
単純計算になるが、おおよそ5分の4しか機能を使っていないことになる。
「カスタマイズされたTegra」という表現は正しい。
グレードアップのカスタマイズではなく、デグレードされたカスタマイズということなのだろう。
これもカスタマイズであることは間違いない!!
■なぜ、デグレードのなのか
歴代ゼロスクラッチからプロセッサチップを作り、半導体開発からゲーム機を作り上げた任天堂の姿はない。
中国Allwinner Technologyのプロセッサ「R16」をそのまま使って作り上げたクラシックミニファミコン(本連載第11回で紹介)、NVIDIAの汎用プロセッサ「Tegra X1」をデグレードさせて使ったNintendo Switch。
これらは、なぜこのような手法で作られたのだろうか。
ゲーム機市場がスマホによって縮小したからか?岩田さん(=故岩田聡元任天堂社長)を失ったことで任天堂の方針が変わったからなのか?あるいは専用チップをわざわざ作らなくとも市販チップでも十分な性能を作り上げられるほどに市販チップの性能が高いからなのか……。
そして、それが最もローコストで速く作れるからなのか。
真相は分からない。
しかし、開発は最も速い時間で完結することだけは確かだ。
市販チップのデグレード品を利用するのが最も速いのである。
■ドイツで開発した意味合い
ドイツと言えばNVIDIAのTegraとは最も結びつきの強い国の1つである。
車向けのTegraではAudiがすでに採用し、2017年に入ってZFやメルセデスもNVIDIAとの提携を発表している。
任天堂とは直接関係はないが、自動運転システムやAI(人工知能)にも活用されるNVIDIAチップは強力なソフトウェア開発を必要とする。
NVIDIAは2012年にドイツのユーリヒ総合研究機構に同社GPUが採用され、さまざまな科学解明に活用されていることを発表している。
膨大なソフトウェア開発者を必要とするのはゲーム機も同じ。
無関係とは言えないかもしれない。