前回のA64FXに続き、ARMプロセッサーの後編はAppleのMac(Macintosh)向けApple Siliconの話である。が、いきなりここに飛びつく前に、まずは過去の経緯を簡単に振り返っていこう。
何度もアーキテクチャー変更があった
Macのプロセッサー遍歴
冒頭に書いておくと、Macがプロセッサーアーキテクチャーを変更するのは、公式にはこれで3度目。非公式には4度目になる。
つまり初代のMacintoshやMacintosh II、Quadraなどに使われてきたMC68Kシリーズ、PowerMacに移行が決まる前に、非公式に移植が進められてきていたMC88K、そしてPowerPC、x86ときて、今回がARM v8-Aである。
MC88Kがあまり知られていないのは、製品が出ていないのだから当然であるが、68K→88Kのエミュレーターが完成した段階で、MC88KからPowerPCの乗り換えが社内でアナウンスされたそうで、移植担当者が相当なげいたという話を聞いたことがあるが、それはそうであろう。
初期のPowerPCのプロセッサーバスは俗に601 Busと呼ばれるが、これはMC88100との互換性を持つものだった。理由は、連載500回で述べたが、88K→PowerPCへの移行を容易にするためである。このあたりの話は以前「忘れ去られたCPU黒歴史」のMC88000の章(単行本化の際に加筆した章なのでウェブでは未公開)で触れた話だ。
iPhone/iPad向けSoCはARMコアを採用
話を戻すと、今度は“Apple製のシリコン”を搭載するというわけで、iPhone/iPadに利用されているARMベースになるのは間違いない。開発キットにはA12Z Bionicが搭載されているほどだから、これでARM以外だったらその方がどうかしている。
さて、ではAppleのARMとの関わり合いは? ということでiPhone/iPad向けSoCを一覧で示してみたのが下表である。
初期はSamsungのカスタムSoCを利用しており、これはオーダーをAppleからSamsungに投げ、それをもとにSamsungが組み上げた格好だ。これがAppleの設計に切り替わるのは、Apple A4からである。
Apple A5以降はiPhone向けのAn(n:5~13)と、iPad向けのAnX(n:5~12)に分かれているが、基本的にiPad向けはエリアサイズと消費電力にゆとりがある(筐体が大きいので、パッケージサイズが大きくても許容されるし、また放熱能力とバッテリー容量にゆとりがあるから、消費電力が上がっても許容される)ので、iPhone向けのAnシリーズのコア数を増やしたり、動作周波数を引き上げたりした派生型と考えればいい。
さてその基本のAnシリーズだが、A5まではARM提供のIPコアを利用していたが、A6以降は独自設計のコアを利用しており、Swift/Cyclone/Typhoon/Twisterと来て、A10世代からはbig.LITTEに基づくBigコア(Hurricane/Monsoon/Vortex/Lightning)とLittleコア(Zephyr/Mistral/Tempest/Tunder)の両方が利用されるようになっている。
この独自設計のコアであるが、Appleは2008年にP.A.Semiという会社を買収しており、ここの設計チームがそのままAppleの独自コア開発に携わる、と当時から噂されていた。
このP.A.Semi(元はPalo Alto Semiconductor)は2005年のFall Processor ForumでPA6TというPowerPCベースのコアと、これを実装したPWRficient 1682MというSoCを発表しているが、この発表者が誰あろうJim Keller氏(当時の肩書はVP Engineering, Architecture Group)である。
最近ではインテルを辞任したことで話題になったKeller氏であるが、そのインテルがKeller氏就任直後に出したのがこちら。
画像の出典は、Intel Newsroom。
このスライドで、Keller氏はAppleでA4とA5の開発に携わったとしている。時期的に言って嘘ではないが、実際にはもっと重要な、A6/A7のグランドデザイン(というか移植)にめどがついたことでAppleを離職したのではないかと考えている。
というのは、表からもわかるようにApple A4/A5はCortex-A8/Cortex-A9をベースとしたシステムで、もちろんこれをベースにSoCを組み上げるためにはPWRficient 1682Mや、さらにその前のSiByteのSB1000での経験と知識が大いに役立ったと思うのだが、Keller氏の本職(?)はCPUアーキテクトであり、CPUコアそのものはいじれないCortex-A8/A9を組み上げるのは、別に氏でなくても足りる。
しかしこれに続く独自コアのSwift/Cycloneは、CPUアーキテクトなしではどうにもならない。こう考える理由は、PA6Tというコアの先進性にある。
PA6Tは、命令セットこそPowerPC 2.04準拠ながら以下の重厚な構成である。
- 32bit/64bit両対応。FPU及びVMX SIMDも実装
- 4命令フェッチ/3命令同時発行のアウト・オブ・オーダー/スーパースカラー実装
- MicroOpを利用し、さらにMicroOp Buffer(L0 Cache)まで搭載
このような構成でありながら、65nmプロセスでの製造で2GHz駆動のコアあたりの消費電力は6.25W(同社の説明は「8コアで50W以下」であった)という高効率性を誇る。
2GHzにおけるSPECint(おそらくSPEC CPU2000のことと思われる)は1000以上、というのが説明であった。ちなみにSPEC CPU2000で1コアのスコアが1000前後というのは、例えばDellのPowerEdge 1750にあたり、PrestoniaベースのXeon 3.06GHz(533MHz FSB)相当ということになる。
ここからは筆者の推測だが、Keller氏は「副業として」Apple A4/A5の開発の面倒も見ていたかもしれないが、本職はこのPA6Tのアーキテクチャーをベースに、新規にARMコアを起こす作業を、(買収にともなう)2008年のAppleの入社から、2012年の退社までの間に携わってきたのではないかと考えている。
もともとのPA6Tは64bit対応のアーキテクチャーなので、本命はARM V8-AのCycloneである。ただ64bit対応のためにはiOSやアプリケーションの移行も同時に必要である。したがって、まずは前段階として32bitのARM V7-Aを移植したSwiftをリリース、次いでこれにARM V8-Aを追加したCycloneを開発したことになるだろう。
実際には、フロントエンドはPowerPCからARMへの命令セットの変換になるが、バックエンドはアプリケーションにもう少し最適化した形での実行ユニットの強化が行なわれたと思われる。
特にPA6Tの場合は65nmプロセスを使い、消費電力もコアあたり6W程度がターゲットだったので、複雑なユニットを同時に動かすよりも、シンプルなバックエンドを動作周波数を上げて動かす方が効率的かもしれないが、iPhone向けだとコアあたり1W程度に抑える必要があるため動作周波数が上げにくい。
その代わりに利用できるトランジスタ数が大幅に増える(Samsungの28nm HKMGプロセスやTSMCの20nmプロセスがターゲット)ので、自ずと構成そのものも見直す必要があるだろうし、実際見直したはずだ。こうした実装の指揮こそ、Keller氏の肩書にふさわしい作業と言える。
もっとも、Keller氏がAppleを離れたあとも、Appleのプロセッサー開発は当然続く。どこまでKeller氏の影響があったかははっきりしないが、Cycloneどまりか、あっても続くTyphoon/Twisterまであたりでであり、big.LITTLEに対応したHurricane以降はおそらくもうKeller氏の作業はあまり関係なくなっているだろうと想像される。
この連載の記事
-
第767回
PC
Lunar LakeはWindows 12の要件である40TOPSを超えるNPU性能 インテル CPUロードマップ -
第766回
デジタル
Instinct MI300のI/OダイはXCDとCCDのどちらにも搭載できる驚きの構造 AMD GPUロードマップ -
第765回
PC
GB200 Grace Blackwell SuperchipのTDPは1200W NVIDIA GPUロードマップ -
第764回
PC
B100は1ダイあたりの性能がH100を下回るがAI性能はH100の5倍 NVIDIA GPUロードマップ -
第763回
PC
FDD/HDDをつなぐため急速に普及したSASI 消え去ったI/F史 -
第762回
PC
測定器やFDDなどどんな機器も接続できたGPIB 消え去ったI/F史 -
第761回
PC
Intel 14Aの量産は2年遅れの2028年? 半導体生産2位を目指すインテル インテル CPUロードマップ -
第760回
PC
14nmを再構築したIntel 12が2027年に登場すればおもしろいことになりそう インテル CPUロードマップ -
第759回
PC
プリンター接続で業界標準になったセントロニクスI/F 消え去ったI/F史 -
第758回
PC
モデムをつなぐのに必要だったRS-232-CというシリアルI/F 消え去ったI/F史 -
第757回
PC
「RISC-VはArmに劣る」と主張し猛烈な批判にあうArm RISC-Vプロセッサー遍歴 - この連載の一覧へ