2019 was a great year for Arm. On the mobile side of things one could say it was business as usual, as the company continued to see successes with its Cortex cores, particularly the new Cortex-A77 which we’ve now seen employed in flagship chipsets such as the Snapdragon 865. The bigger news for the company over the past year however hasn’t been in the mobile space, but rather in the server space, where one can today rent Neoverse-N1 CPUs such as Amazon’s impressive Graviton2 chip, with more vendors such as Ampere expected to release their server products soon.

While the Arm server space is truly taking off as we speak, aiming to compete against AMD and Intel, Arm hasn't reached the pinnacle of the mobile market – at least, not yet. Arm’s mobile Cortex cores have lived in the shadow of Apple’s custom CPU microarchitectures over the past several years, as Apple has seemingly always managed to beat Cortex designs by significant amounts. While there’s certainly technical reasons to the differences – it was also a lot due to business rationale on Arm’s side.

Today for Arm’s 2020 TechDay announcements, the company is not just releasing a single new CPU microarchitecture, but two. The long-expected Cortex-A78 is indeed finally making an appearance, but Arm is also introducing its new Cortex-X1 CPU as the company’s new flagship performance design. The move is not only surprising, but marks an extremely important divergence in Arm’s business model and design methodology, finally addressing some of the company’s years-long product line compromises.

The New Cortex-A78: Doubling Down on Efficiency

The new Cortex-A78 isn’t exactly a big surprise – Arm had first publicly divulged the Hercules codename over two years ago when they had presented the company’s performance roadmap through 2020. Two years later, and here we are, with the Cortex-A78 representing the third iteration of Arm’s new Austin-family CPU microarchitecture, which had started from scratch with the Cortex-A76.

The new Cortex-A78 pretty much continues Arm’s traditional design philosophy, that being that it’s built with a stringent focus on a balance between performance, power, and area (PPA). PPA is the name of the game for the wider industry, and here Arm is pretty much the leading player on the scene, having been able to provide extremely competitive performance at with low power consumption and small die areas. These design targets are the bread & butter of Arm as the company has an incredible range of customers who aim for very different product use-cases – some favoring performance while some other have cost as their top priority.

All in all (we’ll get into the details later), the Cortex-A78 promises a 20% improvement in sustained performance under an identical power envelope. This figure is meant to be a product performance projection, combining the microarchitecture’s improvements as well as the upcoming 5nm node advancements. The IP should represent a pretty straightforward successor to the already big jump that were the A76 and A77.

The New Cortex-X1: Breaking the Design Constraint Chains

Arm’s existing business model was aimed at trying to create a CPU IP that covers the widest range of customer needs. This creates the problem that you cannot hyper-focus on any one area of the PPA triangle without making compromises in the other two. I mentioned that Arm’s CPU cores have for years lived in the shadow of Apple’s CPU cores, and whilst for sure, the Apple's cores were technical superior, one very large contributing factor in Arm's disadvantage was that the business side of Arm just couldn’t justify building a bigger microarchitecture.

As the company is gaining more customers, and is ramping up R&D resources for designing higher performance cores (with the server space being a big driver), it seems that Arm has finally managed to get to a cross-over point in their design abilities. The company is now able to build and deliver more than a single microarchitecture per year. In a sense, we sort of saw the start of this last year with the introduction of the Neoverse-N1 CPU, already having some more notable microarchitectural changes over its Cortex-A76 mobile sibling.

Taking a quick look at the new Cortex-X1, we find the X1 higher up in Arm’s Greek pantheon family tree of CPU microarchitectures. Codenamed Hera, the design at least is named similarly to its Hercules sibling, denominating their close design relationship. The X1 is much alike the A78 in its fundamental design – in fact both CPUs were created by the same Austin CPU design team in tandem, but with the big difference that the X1 breaks the chains on its power and area constraints, focusing to get the very best performance with very little regard to the other two metrics of the PPA triangle.

The Cortex-X1 was designed within the frame of a new program at Arm, which the company calls the “Cortex-X Custom Program”. The program is an evolution of what the company had previously already done with the “Built on Arm Cortex Technology” program released a few years ago. As a reminder, that license allowed customers to collaborate early in the design phase of a new microarchitecture, and request customizations to the configurations, such as a larger re-order buffer (ROB), differently tuned prefetchers, or interface customizations for better integrations into the SoC designs. Qualcomm was the predominant benefactor of this license, fully taking advantage of the core re-branding options.

The new Cortex-X program is an evolution of the BoACT license, this time around making much more significant microarchitectural changes to the “base” design that is listed on Arm’s product roadmap. Here, Arm proclaims that it allows customers to customize and differentiate their products more; but the real gist of it is that the company now has the resources to finally do what some of its lead customers have been requesting for years.

One thing to note, is that while Arm names the program the “Cortex-X Custom Program”, it’s not to be confused with actual custom microarchitectures by vendors with an architectural license. The custom refers to Arm’s customization of their roadmap CPU cores – the design is still very much built by Arm themselves and they deliver the IP. For now, the X1 IP will also be identical between all licensees, but the company doesn’t rule out vendor-specific changes the future iterations – if there’s interest.

This time around Arm also maintains the marketing and branding over the core, meaning we’ll not be seeing the CPU under different names. All in all, the whole marketing disclosure around the design program is maybe a bit confusing – the simple matter of fact is that the X1 is simply another separate CPU IP offering by Arm, aimed at its leading partners, who are likely willing to pay more for more performance.

At the end of the day, what we're getting are two different microarchitectures – both designed by the same team, and both sharing the same fundamental design blocks – but with the A78 focusing on maximizing the PPA metric and having a big focus on efficiency, while the new Cortex-X1 is able to maximize performance, even if that means compromising on higher power usage or a larger die area.

It’s an incredible design philosophy change for Arm, as the company is no longer handicapped in the ultra-high-tier performance ring with the big players such as Apple, AMD, or Intel – all whilst still retaining their bread & butter design advantages for the more cost-oriented vendors out there who deliver hundreds of millions of devices.

Let’s start by dissecting the microarchitecture changes of the new CPUs, starting off with the Cortex-A78…

The Cortex-A78 Micro-architecture: PPA Focused
POST A COMMENT

187 Comments

View All Comments

  • DanNeely - Tuesday, May 26, 2020 - link

    having gotten to page 4 in the article, the explanation is that ARMs slides as used on the first page suck. The 20% from A77-A78 is +7% architecture, and +13% 5nm instead of 7nm. The 30% from A77-X1 is entirely architecture; that in turn implies that upcoming X1 chips should be about 40-45% faster than current A77 ones.

    AIUI It's still going to be falling short of what Apple's doing (and not just because the A55 little cores are getting really dated); but is a badly needed narrowing of the gap.
    Reply
  • ichaya - Tuesday, May 26, 2020 - link

    40-45% on appropriately less die area than Apple and you've got something competitive atleast. Reply
  • DanNeely - Tuesday, May 26, 2020 - link

    in terms of engineering prowess certainly; but not in terms of letting Samsung/etc finally design smartphones and tablets that are as fast as their rivals from Apple. Assuming the product plays out in retail, in another 2 or 3 years when I look to replace my S10 I'll probably get something with an X core in it; but I really hope that they'll widen the performance uplift vs their more general purpose cores by then. Reply
  • Raqia - Tuesday, May 26, 2020 - link

    The existing A77's are already very impressive in terms of PPA, I would consider them as impressive as Apple's big cores taken as a whole. (The small cores are another story since the major uplift from the A13...) A lot of Android vendors value area in particular since they integrate modems on die whereas Apple does not; this drives a lot of value and cost savings for customers. Reply
  • CiccioB - Tuesday, May 26, 2020 - link

    If Samsung really wants to create a phone/tablet as fast as an Apple one it should first concentrate more on SW optimizations. Apple puts a lot of efforts in that. It's not only a question who makes the bigger core.
    See the comparison of Samsung crappy phones with other Android ones using much more optimized and less bloated version of the OS. They are good for benchmarking with all those cores and MHz (and tricks on turbo spped for benchmark apps), but in real life Samsung phones are slower than they could be do to low optimizations.
    Reply
  • Wilco1 - Tuesday, May 26, 2020 - link

    Bingo! Adding a big core that does well in benchmarks is not a good solution. Improving browser performance with software optimization can be far more effective. Reply
  • armchair_architect - Wednesday, May 27, 2020 - link

    @Wilco1 I am afraid you only the SW part of the equation here.
    Again X1 is not only good in benchmarks, being wide helps in that you can achieve same performance as last-gen by running at vastly lower frequency and voltage.
    Thus power efficiency for all use cases that do not require max peak perf enjoy a huge power saving.
    Reply
  • Wilco1 - Thursday, May 28, 2020 - link

    You can't brute-force your way to performance or efficiency. If you can improve performance via software optimization, you take it any time over a faster core that gives the same gain but needs more power to run the unoptimized software.

    It's as simple as that.
    Reply
  • armchair_architect - Thursday, May 28, 2020 - link

    Obviously you would ideally need both SW optimization and faster CPUs.
    But again, power will not always be higher and higher power != higher energy usage.
    Reply
  • Wilco1 - Thursday, May 28, 2020 - link

    Absolutely. But the biggest issue in the Android world is software optimization and tuning, not CPU performance. Improving that would easily add up to a new CPU generation. The choice to switch to LLVM was stupid at the time, but even more so today since GCC has since moved further ahead of LLVM...

    Note all the evidence points to using smaller cores to improve power efficiency. You can see this on the perf/W estimates for SPEC - the A78 is almost twice as efficient as A13 while achieving 74% of the performance.
    Reply

Log in

Don't have an account? Sign up now