今回はAppleが米P.A. Semiを買収し、ArmのIPをライセンスして開発したA6プロセッサから話を始める。
2012年、iPhone 5に搭載される形でApple A6がデビューする。これがApple初の独自設計CPUコア「Swift」である(GPUは英ImaginationのPowerVR SGXをまだ使っている)。このSwift、内部構造は公式には発表されていない(というかA6から最新のA14まで、内部構造に関しては一切、公式には解説されていない)が、推定される内部構造は、
といったもの。同じ2012年にArmはCortex-A15を発表するが、おそらく内部構造はよく似たものだったと思われる。もっとも、AppleがCortex-A15をベースにSwiftを作ったというつもりはない(Armのライセンス的に不可能)。Cortex-A9が2命令のSuperScalar/OoO実装で、これを超えるとなると当然3命令のSuperScala/OoOになる。大きな枠での構造は似ているだろうが、細部の実装が同じかどうかまでは分からない。
Apple A6のダイサイズは95mm2とされ、うちDual Core Swiftのエリアサイズはおよそ15.4mm2、コアあたり7.7mm2となる。おおむね常識的なサイズといえるだろう。
おそらくこのSwiftをベースにArmv8-Aを実装したのが、2013年に投入されたCycloneコアベースのA7である。
A7のダイサイズは102mm2とされており、Dual Core Cycloneのエリアサイズは18mm2、コアあたり9mm2とやや大型化している。プロセスはSamsungの32nm HKMGから28nm HKMGになっており、本来ならばややエリアサイズが縮小するはずであるが、L1キャッシュを32KB+32KBから64KB+64KBに大型化(L2は1MBのまま)した他、内部レジスタは当然Armv8-Aに対応して64bit化。さらにNEON周りは128bit化しており、こうした内部バッファの容量増加がエリアサイズ増加の要因と思われる。
内部構造的にはSwiftをやや強化し、4命令解釈・5命令発行程度のSuper Scalar/OoOと見られている。余談であるが、Cycloneと次のTyphoonの世代で導入した新しい分岐予測機構に関し、2015年にWARF(Wisconsin Alumni Research Foundation:ウィスコンシン大学研究基金同窓会)が保有する米国特許US5781752Aを侵害していると訴えられている。連邦地方裁判所は、Appleがこの特許を侵害していると認定し、5億600万ドルの支払いを命じるものの、Appleは連邦巡回控訴裁判所に上訴。最終的に2018年9月に地方裁判所の裁定が破棄されている。
さて、この次に来るのは2014年9月に登場したiPhone 6に導入されたApple A8である。
ここに搭載されたTyphoonコアは、大幅に内部構造を強化した。命令パイプラインは6命令解釈・9命令発行のSuperScalar/OoOと見られている。プロセスはTSMCの20nmに変わり、ダイサイズはやや小さくなって89mm2である。Dual Core Typhoonのエリアサイズは12.4mm2で、コアあたり6.2mm2と推定される。CycloneまではCPUコア内部の配置配線が規則的というか、手配線を多用した感じのレイアウトになっていたのが、このCycloneから明らかにEDAツールで最適化しました、という感じに変わっている。28nmまでよく手配線でがんばったという気はするが、さすがに限界だったのだろう。
Copyright © ITmedia, Inc. All Rights Reserved.
Special
PR