When Apple announced the iPhone 5, Phil Schiller officially announced what had leaked several days earlier: the phone is powered by Apple's new A6 SoC.

As always, Apple didn't announce clock speeds, CPU microarchitecture, memory bandwidth or GPU details. It did however give us an indication of expected CPU performance:
 
 
Prior to the announcement we speculated the iPhone 5's SoC would simply be a higher clocked version of the 32nm A5r2 used in the iPad 2,4. After all, Apple seems to like saving major architecture shifts for the iPad. 
 
However, just prior to the announcement I received some information pointing to a move away from the ARM Cortex A9 used in the A5. Given Apple's reliance on fully licensed ARM cores in the past, the expected performance gains and unpublishable information that started all of this I concluded Apple's A6 SoC likely featured two ARM Cortex A15 cores. 
 
It turns out I was wrong. But pleasantly surprised.
 
The A6 is the first Apple SoC to use its own ARMv7 based processor design. The CPU core(s) aren't based on a vanilla A9 or A15 design from ARM IP, but instead are something of Apple's own creation.
 

Hints in Xcode 4.5

 
The iPhone 5 will ship with and only run iOS 6.0. To coincide with the launch of iOS 6.0, Apple has seeded developers with a newer version of its development tools. Xcode 4.5 makes two major changes: it drops support for the ARMv6 ISA (used by the ARM11 core in the iPhone 2G and iPhone 3G), keeps support for ARMv7 (used by modern ARM cores) and it adds support for a new architecture target designed to support the new A6 SoC: armv7s.
 

 
What's the main difference between the armv7 and armv7s architecture targets for the LLVM C compiler? The presence of VFPv4 support. The armv7s target supports it, the v7 target doesn't. Why does this matter?
 
Only the Cortex A5, A7 and A15 support the VFPv4 extensions to the ARMv7-A ISA. The Cortex A8 and A9 top out at VFPv3. If you want to get really specific, the Cortex A5 and A7 implement a 16 register VFPv4 FPU, while the A15 features a 32 register implementation. The point is, if your architecture supports VFPv4 then it isn't a Cortex A8 or A9.
 
It's pretty easy to dismiss the A5 and A7 as neither of those architectures is significantly faster than the Cortex A9 used in Apple's A5. The obvious conclusion then is Apple implemented a pair of A15s in its A6 SoC.
 
For unpublishable reasons, I knew the A6 SoC wasn't based on ARM's Cortex A9, but I immediately assumed that the only other option was the Cortex A15. I foolishly cast aside the other major possibility: an Apple developed ARMv7 processor core.
 

Balancing Battery Life and Performance

 
There are two types of ARM licensees: those who license a specific processor core (e.g. Cortex A8, A9, A15), and those who license an ARM instruction set architecture for custom implementation (e.g. ARMv7 ISA). For a long time it's been known that Apple has both types of licenses. Qualcomm is in a similar situation; it licenses individual ARM cores for use in some SoCs (e.g. the MSM8x25/Snapdragon S4 Play uses ARM Cortex A5s) as well as licenses the ARM instruction set for use by its own processors (e.g. Scorpion/Krait implement in the ARMv7 ISA).
 
For a while now I'd heard that Apple was working on its own ARM based CPU core, but last I heard Apple was having issues making it work. I assumed that it was too early for Apple's own design to be ready. It turns out that it's not. Based on a lot of digging over the past couple of days, and conversations with the right people, I've confirmed that Apple's A6 SoC is based on Apple's own ARM based CPU core and not the Cortex A15.
 
Implementing VFPv4 tells us that this isn't simply another Cortex A9 design targeted at higher clocks. If I had to guess, I would assume Apple did something similar to Qualcomm this generation: go wider without going substantially deeper. Remember Qualcomm moved from a dual-issue mostly in-order architecture to a three-wide out-of-order machine with Krait. ARM went from two-wide OoO to three-wide OoO but in the process also heavily pursued clock speed by dramatically increasing the depth of the machine.
 
The deeper machine plus much wider front end and execution engines drives both power and performance up. Rumor has it that the original design goal for ARM's Cortex A15 was servers, and it's only through big.LITTLE (or other clever techniques) that the A15 would be suitable for smartphones. Given Apple's intense focus on power consumption, skipping the A15 would make sense but performance still had to improve.

Why not just run the Cortex A9 cores from Apple's A5 at higher frequencies? It's tempting, after all that's what many others have done in the space, but sub-optimal from a design perspective. As we learned during the Pentium 4 days, simply relying on frequency scaling to deliver generational performance improvements results in reduced power efficiency over the long run. 
 
To push frequency you have to push voltage, which has an exponential impact on power consumption. Running your cores as close as possible to their minimum voltage is ideal for battery life. The right approach to scaling CPU performance is a combination of increasing architectural efficiency (instructions executed per clock goes up), multithreading and conservative frequency scaling. Remember that in 2005 Intel hit 3.73GHz with the Pentium Extreme Edition. Seven years later Intel's fastest client CPU only runs at 3.5GHz (3.9GHz with turbo) but has four times the cores and up to 3x the single threaded performance. Architecture, not just frequency, must improve over time.
 
At its keynote, Apple promised longer battery life and 2x better CPU performance. It's clear that the A6 moved to 32nm but it's impossible to extract 2x better performance from the same CPU architecture while improving battery life over only a single process node shrink.
 
Despite all of this, had it not been for some external confirmation, I would've probably settled on a pair of higher clocked A9s as the likely option for the A6. In fact, higher clocked A9s was what we originally claimed would be in the iPhone 5 in our NFC post.
 
I should probably give Apple's CPU team more credit in the future.
 
The bad news is I have no details on the design of Apple's custom core. Despite Apple's willingness to spend on die area, I believe an A15/Krait class CPU core is a likely target. Slightly wider front end, more execution resources, more flexible OoO execution engine, deeper buffers, bigger windows, etc... Support for VFPv4 guarantees a bigger core size than the Cortex A9, it only makes sense that Apple would push the envelope everywhere else as well. I'm particularly interested in frequency targets and whether there's any clever dynamic clock work happening. Someone needs to run Geekbench on an iPhone 5 pronto.
 
I also have no indication how many cores there are. I am assuming two but Apple was careful not to report core count (as it has in the past). We'll get more details as we get our hands on devices in a week. I'm really interested to see what happens once Chipworks and UBM go to town on the A6.
The A6 GPU: PowerVR SGX 543MP3?
Comments Locked

163 Comments

View All Comments

  • Freakie - Sunday, September 16, 2012 - link

    I agree that there is probably more here than even Anand is acknowledging could be (also Anand seems to be trying to throw as much good light as he can at Apple for this). Apple already has used ARM ISA designs in the past, and even went further and tweaked the Samsung's to make it just a bit more like how they want (or rather, PA Semi did that I believe... highly doubt there are any engineers actually at Apple that can do that stuff when they already own companies that do it). I doubt that this situation is any different than that previous situation, where they have just taken an already customized package and customized it some more. Of course, I think we wont know that for-sure until we get die-shots of the thing, like how we were able to tell that their previous one was almost exactly a Samsung processor.
  • Penti - Sunday, September 16, 2012 - link

    Well the A4 was for example called the Apple A4 even when it was an Samsung and Intrinsity project for their then pretty small Apple customer, later they bought Intrinsity and came up with A5 and A5X and die-shrinks all on Samsungs fab with their help, they rebadged it before they bought Intrinsity so of course the first product was largely a Samsung project with Intrinsity as a subcontractor.

    It would be fun if it's a custom chip here, but I'm kind of not leaning towards that because it largely didn't bring in any new features or enhancements they bragged about. It's certainly possible to upgrade a A9 with the FPU from the A5/A7 or whatever that is already on the market. The problem with the A5/A7 configuration of the FPU would be that it's a reduced registry D16-variant. But they probably have the FPU done already for the A15 proper, we have to wait and see how they went about creating this chip. Odd timing if it's a new custom architecture chip.

    I'm pretty sure the PA-Semi and Intrinsity teams have no external work anymore as they were merged with Apple totally and don't exist as separate units any more. To bad that PA-Semi's processor went to do largely nothing. Intrinsity also helped other firms to design PPC and MIPS processors, and did ARM-work for others than Samsung in Texas were they were based, too. Basically they did specialist design tools for the business and collaborated and co-design stuff. I'm sure that other firms in the Texas area has snatched up people that doesn't work for Apple any more, any way we won't see their work in anything more then in Apple chips. It's sadly a downside of mergers if they don't want to keep and develop the product line. Apple is largely a retailer (as most people work in Apple stores and related) and a software company but they should have a few hundred semi design people from their buyouts alone, it's not like Dangers buyout by Microsoft or Microsoft's Nokia partnership here at least as they do deliver products. I just noted that they didn't say "totally new design, new powerful GPU etc etc". It just sounded like here, here's a new chip buy it :) Intrinsity team is the ARM guys. Several of the key PA-Semi guys left Apple after the acquisition or even months before but they should have plenty of skilled engineers still. Not sure they need such a large design team if they are only going to cook ARM-SoC's together with other IP-suppliers (physical IP) and manufacturers though, not sure how many is left or has been hired, we just have to see what they have come up with. Old Intrinsity team is the one who are best skilled at optimizing external design.
  • Fx1 - Saturday, September 15, 2012 - link

    I knew ANAND shouldnt have said it was a A15. So cock sure of himself on this one and boy was he wrong.

    I think an apology is in order.
  • DigitalFreak - Saturday, September 15, 2012 - link

    No one cares.
  • jenjohnson88 - Saturday, September 15, 2012 - link

    Many people said it couldn't be A15, and Anand/Brian arrogantly said it was.

    you'd better believe we care that something was claimed as FACT when it was merely a guess.
  • JarredWalton - Sunday, September 16, 2012 - link

    So, maybe Anand should do an apology article where he says something like, "I was wrong, it's not A15. Here's what I know." Oh, wait.. that's exactly what this article is.
  • tipoo - Saturday, September 15, 2012 - link

    Lol. An apology? They try to inform us the best they can, sometimes they make mistakes. Get over it.
  • jenjohnson88 - Saturday, September 15, 2012 - link

    you don't get it do you
    there's a difference between saying it's an educated guess, and what Brian did.
    On twitter he said he had insider information confirming it was A15.
  • Kristian Vättö - Sunday, September 16, 2012 - link

    And I bet he had insider information, but that ended up being incorrect. There is also a difference between Twitter and Anandtech.com. If you look at our articles about iPhone 5, we have not said it's A15 for sure:

    "Based on the performance gains, Apple's history of SoC naming and some other stuff we've heard recently, it looks like Apple has integrated two ARM Cortex A15 on Samsung's 32nm LP HK+MG process."

    http://www.anandtech.com/show/6280/apple-iphone-5-...

    "Apple reserves major Ax SoC number iterations for architecture changes, combine that with the performance claims as well as some other stuff we've heard offline and there's one conclusion: the iPhone 5 uses ARM Cortex A15 cores inside."

    http://www.anandtech.com/show/6279/apples-iphone-5...
  • Fx1 - Sunday, September 16, 2012 - link

    I read the stories and there was one titles A15 inside A6 CPU. Thats pretty damn definitively written and highly misleading.

    There is just complete Apple Fanboy style reporting on Anandtech now. I own a MBP and had 5 iPhones before my S3 so i know how to spot them.

    Time to take off the rose tinted glasses Anand. The IPhone 5 is a rip off at £529 with £105 worth of components. MAYBE YOU SHOULD REPORT ON THE COMPLETE OVERPRICING OF APPLE PRODUCTS.

Log in

Don't have an account? Sign up now