Apple A12
File:Apple A12.jpg | |
Produced | From September 12, 2018 to present |
---|---|
Designed by | Apple Inc. |
Common manufacturer(s) | |
Max. CPU clock rate | to 2.49 GHz[2] |
Min. feature size | 7 nm[3][4] |
Instruction set | A64 |
Microarchitecture | ARMv8‑A-Compatible |
Product code | APL1W81[5] |
Cores | Hexa-core (2× high performance Vortex + 4× high efficiency Tempest)[3][6] |
L1 cache | 128 KB instruction, 128 KB data |
L2 cache | 8 MB |
Predecessor | Apple A11 |
Successor | Apple A13 |
GPU | Apple-designed 4 core, internal name Apple G11P[3][6] |
Application | Mobile |
Variant | Apple A12X |
The Apple A12 Bionic is a 64-bit ARM-based system on a chip (SoC) designed by Apple Inc.[7] It first appeared in the iPhone XS, XS Max, XR, and 2019 versions of the iPad Air and iPad Mini.[7][4] It has two high-performance cores which are claimed to be 15% faster and 50% more energy-efficient than the Apple A11 and four high-efficiency cores which are claimed to use 50% less power than the energy-efficient cores in the A11.[7][6]
Design
The A12 features an Apple-designed 64-bit ARMv8.3-A six-core CPU, with two high-performance cores running at 2.49 GHz called Vortex and four energy-efficient cores called Tempest.[3][4] The Vortex cores are a 7-wide decode out-of-order superscalar design, while the Tempest cores are a 3-wide decode out-of-order superscalar design. Like the Mistral cores, the Tempest cores are based on Apple's Swift cores from the Apple A6.[8]
The A12 also integrates an Apple-designed four-core graphics processing unit (GPU) with 50% faster graphics performance than the A11.[3][7] The A12 includes dedicated neural network hardware that Apple calls a "Next-generation Neural Engine."[9] This neural network hardware has eight cores[6] and can perform up to 5 trillion 8-bit operations per second.[3][4] Unlike the A11's Neural Engine, third party apps can access the A12's Neural Engine.[10]
The A12 is manufactured by TSMC[1] using a 7 nm[4] FinFET process, the first to ship in a consumer product,[3][1] and it contains 6.9 billion transistors.[1] The die size of the A12 is 83.27 mm2, 5% smaller than the A11.[11] It is manufactured in a package on package (PoP) together with 4 GiB of LPDDR4X memory in the iPhone XS[5] and XS Max[11] and 3 GB of LPDDR4X memory in the iPhone XR, the iPad Air (2019), and the 5th generation iPad mini.[12] The ARMv8.3 instruction set it supports brings a significant security improvement in the form of pointer authentication, which mitigates exploitation techniques such as those involving memory corruption, Jump-Oriented-Programming, and Return-Oriented-Programming.[13]
SoC | A12 (7 nm) | A11 (10 nm) |
---|---|---|
Total Die | 83.27 | 87.66 |
Big Core | 2.07 | 2.68 |
Small Core | 0.43 | 0.53 |
CPU Complex (incl. cores) | 11.90 | 14.48 |
GPU Core | 3.23 | 4.43 |
GPU Total | 14.88 | 15.28 |
NPU | 5.79 | 1.83 |
Products that include the Apple A12 Bionic
See also
- Apple-designed processors, the range of ARM-based mobile processors designed by Apple for their consumer electronic devices
- Apple A12X Bionic
References
- ↑ 1.0 1.1 1.2 1.3 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 3.0 3.1 3.2 3.3 3.4 3.5 3.6 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 4.0 4.1 4.2 4.3 4.4 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 5.0 5.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 6.0 6.1 6.2 6.3 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 7.0 7.1 7.2 7.3 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 11.0 11.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.