When reading our coverage of SoC launches you have probably come across the term “custom CPU core,” especially when reading about Apple’s silicon. But what exactly is a custom core? Why do people make such a fuss about them? And, who designs them? Well, let’s find out!
Why Arm is so important for smartphones
All Android smartphones and all Apple iPhones use CPUs based on the Arm Instruction Set Architecture (ISA). An ISA defines the instruction set and outlines the design philosophy behind that instruction set. Most PCs use the x86-64 ISA, which is the 64-bit version of Intel’s original 32-bit ISA found in processors from the 1980s, such as the 80386 and 80486. AMD created the 64-bit version and released its first x86-64 processor in 2003. Smartphones, on the other hand, use the Arm ISA. Most smartphones in use today are built on Armv8, with newer chipsets moving to the latest Armv9 version.
The Arm architecture is known as a RISC (Reduced Instruction Set Computer) architecture. The idea is that by using a simplified instruction set, instructions can be executed quickly, but you might need to execute more than one instruction to achieve the same result as a single instruction on a CISC (Complex Instruction Set Computer) processor. There are also some other design decisions that are fundamental to RISC, including that all data processing operates only on registers, not directly on memory. But, broadly speaking, the RISC approach is not quite as performant, but offers lower power consumption — perfect for smartphones.
Related: Arm vs x86 — Instruction sets, architecture, and all key differences explained
Arm’s business model is different from that of Intel’s or AMD’s, in that Arm licenses (sells) its CPU designs (i.e. its Intellectual Property or IP) to its customers, who then, in turn, build their own chips. Arm earns a royalty fee for every chip sold, plus the licensees need to have their chips certified as being Arm compatible. Intel, on the other hand, designs, builds, manufactures, and sells its own chips. The same is true for AMD, except that it uses a third-party for the actual manufacturing stage.
Among Arm’s customers are companies like Qualcomm, Apple, Samsung, Mediatek, Google, Rockchip, and so on. Each of these companies has a business relationship with Arm that allows them to build processors that are compatible with the Arm architecture. There are two general levels of license: core licenses and architectural licenses. A core license allows Arm’s partners to take a full CPU design (like those in the Cortex-A family) and incorporate it into a system on a chip (SoC) along with a GPU, memory controller, Image Signal Processor (ISP), Machine Learning (ML) accelerator, etc. The company has the right to use the CPU design however it likes, in whatever configurations it wants, however it isn’t allowed to modify the CPU design. This is sometimes referred to as “off-the-shelf,” as the core aspects of the CPU are already designed by Arm itself.
An architectural licensee is allowed to design its own Arm architecture-compatible CPUs.
An architectural licensee is allowed to design its own Arm architecture-compatible CPUs and then use those cores however it wants, in any configuration it desires, as long as the CPU design is compatible with the Arm ISA. Architectural license holders include Qualcomm, Apple, Samsung, and Nvidia. This is what’s referred to as a “custom core” because it’s developed in-house and is far more bespoke than the design used by other companies.
Most (if not all) architectural licensees are also core licensees, which means that the company will have SoCs in its product range that use Arm Cortex-A CPU core designs, and SoCs that use CPU cores designed by its own teams.
The pros and cons of custom CPU design
A custom core is a CPU core design, made by Arm architectural licensees, that is compatible with the Arm ISA, however isn’t an Arm Cortex-A design. Designing a custom CPU core is a huge undertaking, both technically and financially. As creating custom cores is so resource-intensive, it’s only worth undertaking if a company has a specific requirement or performance goal in mind that they can’t get with a current Cortex-A or Cortex-X core. And even then, sometimes it pays off, and sometimes it doesn’t.
Modern CPU cores have billions of transistors, take years to design, and require teams of highly skilled engineers. If a company can assemble the right team and invest the right amount of money then it might be able to create a custom CPU that is better than its competitors. However, equally, it could create a CPU design that is just the same as its competitors, or even a poorly designed one that is below standard. Ultimately, any custom CPU core design team is going head-to-head with Arm’s own experienced design team and the industry at large.
Up next: What is an SoC? Everything you need to know about smartphone chipsets
If done right, the reward is worth the effort. The bragging rights and technical superiority allow the marketing department to go wild. Claiming the number one spot, in terms of performance and power efficiency, can result in strong product sales and good profits. For example, the custom Arm CPU cores inside Apple’s smartphone and laptop SoCs have helped the brand both in terms of marketing and obtaining industry-leading performance.
However, if the CPU design is mediocre, then it becomes a marketing nightmare as the PR team tries to move attention away from the CPU core design and focus on other aspects. Samsung’s now-retired Mongoose CPU cores, for example, struggled to live up to the competition, resulting in hesitation about its Exynos mobile SoC lineup.
Which companies design custom CPU cores?
Rollup, rollup, place your bets! Which tech companies have deep-enough pockets, and are willing to gamble the family silver on a custom CPU design? This is a story of winners and losers. Setbacks, and comebacks. Buyouts and takeovers.
Qualcomm is a “classic” example of a top-tier Arm licensee. It holds both architectural licenses and core licenses. Qualcomm uses Arm CPU designs in its processors across all of its different series, from the 200 series right through to its 800 series. However, it has also used custom CPU designs at various points during its history. Qualcomm’s early processors in the 800 series, the Snapdragon 800, 801, and 805, used Qualcomm’s custom Krait CPU core design. With the move to 64-bit, Qualcomm switched between Arm designs and its own Kryo design, eventually using Arm’s CPU cores only from the Snapdragon 835 onwards.
Related: Snapdragon SoC guide — All of Qualcomm’s smartphone processors explained
Qualcomm is also a part of Arm’s Cortex-X Custom CPU Program (CXC), which means it gets access to Arm’s highest performance CPU cores, the Cortex-X range. Other members of that program include Samsung, Google, and Mediatek.
Gerard Williams’ work at Apple included the Cyclone, Typhoon, Twister, Hurricane, Monsoon, Vortex, Lightning, and Firestorm CPUs that featured in the Apple A7, A8, A9, A10, A11, A12 series, A13, and A14 respectively. He also had input into the original Apple M1 processor.
Qualcomm plans to use the technology it gained from Nuvia to design its own custom Arm-compatible CPU cores, initially for laptops, and eventually for smartphones.
What about Apple Silicon?
Gary Sims / Android Authority
Apple is also a top-tier Arm licensee. All iPhones, from the original iPhone to the latest, use Arm-based processors. Over the years Apple has used Arm Cortex-A designs — the iPhone 4S used a dual-core Cortex-A9 SoC (the Apple A5), as well as its own custom designs. The iPhone 5 used Apple’s A6 SoC which had two Swift cores. Swift was Apple’s first custom core design. It is a 32-bit Armv7 compatible design that improves on the Cortex-A9 by adding support for features like Advanced SIMD v2 and VFPv4.
Apple’s decision to move from Arm-supplied Cortex-A cores to its own in-house cores was a result of the company’s 2008 purchase of P.A. Semi, a chip design company founded by Daniel W. Dobberpuhl, the lead designer for the DEC Alpha 21064 and StrongARM processors. It took a few years before the team was ready to release its first clean sheet SoC design. However, once it did, Apple never went back to using off-the-shelf Arm CPU core designs.
Related: Apple M1 tested — Performance benchmarks and thermal throttling, explained
After Swift came Cyclone, a 64-bit core design that caught the rest of the smartphone industry by surprise. The Apple A7 SoC was released in September 2013 for use in the iPhone 5S (and various iPad models). In comparison, the first Android smartphone with 64-bit processors came out in early 2015. The result was that Apple gained an 18-month head start over its rivals in terms of 64-bit computing, and a three-year lead for custom 64-bit cores.
Apple continues to release its own Apple Silicon processors for the iPhone, iPad, and Mac.
Apple generally releases a new processor every year, often with a new or improved custom CPU core design. Once it was happy with the performance of its CPU designs for smartphones, Apple announced that it would move its entire Mac range of personal computers and laptops over to its in-house designed Arm-compatible processors. These processors are known as “Apple Silicon”. The first was the Apple M1, which used the same Firestorm CPU core design from the iPhone 12’s A14 Bionic processor. The M1 was followed by the M1 Pro and the M1 Max, both of which have up to a 10-core CPU — eight performance cores, and two for power efficiency.
Apple continues to release its own Apple Silicon processors for the iPhone, iPad, and Mac.
Samsung and Nvidia also use the Arm architecture
Oliver Cragg / Android Authority
Like Qualcomm, Samsung has used both Arm-designed CPU cores and its own custom CPU designs. All of Samsung’s Exynos processors up to 2016 used Arm-designed Cortex-A CPU cores. However, in 2016 Samsung launched the Exynos 8 Octa 8890, which featured a mixture of Arm-based CPU designs and Samsung’s own in-house CPU core designs. Codenamed Mongoose, Samsung’s own CPU core design came out of its Samsung Austin R&D Center (SARC). Samsung used these designs for four generations of mobile processors. The Exynos 9825 was the last, and featured the M4 CPU core (also known as Cheetah).
Nvidia is a household name when it comes to PC graphics, but it is more than just a GPU company. Nvidia’s products can be found in portable gaming devices (i.e. the Nintendo Switch), development systems for machine learning (the Jetson range), self-driving cars, and in the data center.
Outside of the PC market, its choice of CPU to accompany its GPU is Arm. Nvidia is an Arm core licensee and it also has an architectural license. In fact, Nvidia is so keen on Arm-based CPUs that it started proceedings to buy Arm completely in 2020.
Nvidia uses Arm-designed Cortex-A CPU cores in the Tegra X1, a variant of which is used in the Nintendo Switch. The Tegra X1 is also used in the Jetson Nano, an entry-level machine learning development kit, and in the Nvidia Shield Android TV. Arm-designed cores (specifically the Cortex-A78AE) are also found in Nvidia’s Orin SoC.
But Nvidia also has its own custom-designed Arm-compatible CPU cores. The Tegra X2, found in the Jetson TX2, uses Nvidia’s 64-bit Denver2 CPU cores. Nvidia’s custom Carmel CPU core is found in the Jetson Xavier, as well as various self-driving systems built by Nvidia. For its next generation of Nvidia Drive platform, Nvidia will use a custom Arm-compatible CPU codenamed Grace-Next.
Are custom cores better?
Robert Triggs / Android Authority
So here is the big question: are custom cores better than Arm cores? Well, it depends on what you mean by better. There are several ways to characterize a CPU core, some of which are not technical. As well as performance and efficiency (two technical characteristics) you also need to consider cost, diversity, and purpose.
At the moment there are four, perhaps five, teams of engineers around the world designing smartphone CPU cores based on the Arm architecture. One team belongs to Arm itself, the others to Apple, Qualcomm, and Nvidia. Like all industries (e.g. cars, textiles, bio-research, etc.) one team will be ahead of another in terms of one aspect or another.
In terms of who makes the highest performance cores, it is currently Apple. Apple took the lead when it launched the Apple A7 in 2013 and has remained in the lead ever since then. Qualcomm’s purchase of Nuvia has the potential to change that.
Apple’s total annual revenue is almost twice that of Google’s, and more than Google’s, Intel’s, and Microsoft’s combined!
This strategy is working well for Apple. Apple’s iPhone revenue is bigger than the whole of Google’s annual income. The company’s total annual revenue is almost twice that of Google’s, and more than Google’s, Intel’s, and Microsoft’s combined!
If a company like Apple can differentiate itself from the competition by using custom cores, then it seems to make economic sense for them to do so. Apple’s decision to use its own silicon puts pressure on its rivals. Android device makers ask themselves, should they also be using a custom CPU core design? Is it worth the investment and the risk? Similar pressure is also felt by Intel and AMD. Is Apple’s silicon a threat to the established order of things in the PC market?
For consumers, this pressure means that innovation and progress remain alive and well in the Arm ecosystem. And competition is good.
What do you think about custom cores? Was the CPU core design a consideration when you bought your last smartphone? Let me know in the comments below.