The ARM Cortex-A is a group of 32-bit and 64-bit RISC ARM processor cores licensed by Arm Holdings. The cores are intended for application use. The group consists of 32-bit only cores: ARM Cortex-A5, ARM Cortex-A7, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A12, ARM Cortex-A15, ARM Cortex-A17 MPCore, and ARM Cortex-A32, 32/64-bit mixed operation cores: ARM Cortex-A35, ARM Cortex-A53, ARM Cortex-A55, ARM Cortex-A57, ARM Cortex-A72, ARM Cortex-A73, ARM Cortex-A75, ARM Cortex-A76, ARM Cortex-A77, ARM Cortex-A78, ARM Cortex-A710, and ARM Cortex-A510 Refresh, and 64-bit only cores: ARM Cortex-A34, ARM Cortex-A65, ARM Cortex-A510 (2021), ARM Cortex-A715, ARM Cortex-A520, and ARM Cortex-A720.

ARM Cortex-A
General information
Designed byARM Holdings
Architecture and classification
Instruction setARM, Thumb-2 (32-bit cores); ARMv7-A and ARMv8-A
A64, A32, T32 (64-bit cores); ARMv8-A, ARMv8.1-A, ARMv8.2-A, ARMv9-A, ARMv9.2-A

The 32-bit ARM Cortex-A cores, except for the Cortex-A32, implement the ARMv7-A profile of the ARMv7 architecture. The main distinguishing feature of the ARMv7-A profile, compared to the other two profiles, the ARMv7-R profile implemented by the ARM Cortex-R cores and the ARMv7-M profile implemented by most of the ARM Cortex-M cores, is that only the ARMv7-A profile includes a memory management unit (MMU).[1] Many modern operating systems require a MMU to run.

The 64-bit ARM Cortex-A cores as well as the 32-bit ARM Cortex-A32 implement the ARMv8-A profile of the ARMv8 architecture.

Overview

edit
32-bit
Year Core
2005 Cortex-A8
2007 Cortex-A9
2009 Cortex-A5
2010 Cortex-A15
2011 Cortex-A7
2013 Cortex-A12
2014 Cortex-A17
2016 Cortex-A32
32/64-bit
Year Core
2012 Cortex-A53
Cortex-A57
2015 Cortex-A35
Cortex-A72
2016 Cortex-A73
2017 Cortex-A55
Cortex-A75
2018 Cortex-A76
2019 Cortex-A77
2020 Cortex-A78
2021 Cortex-A710
2022 Cortex-A510 Refresh
64-bit
Year Core
2016 Cortex-A34
2018 Cortex-A65
2021 Cortex-A510
2022 Cortex-A715
2023 Cortex-A520
Cortex-A720

ARM license

edit

Arm Holdings neither manufactures nor sells CPU devices based on its own designs, but rather licenses the processor architecture to interested parties. ARM offers a variety of licensing terms, varying in cost and deliverables. To all licensees, ARM provides an integratable hardware description of the ARM core, as well as complete software development toolset, and the right to sell manufactured silicon containing the ARM CPU.

Silicon customization

edit

Integrated device manufacturers (IDM) receive the ARM Processor IP as synthesizable RTL (written in Verilog). In this form, they have the ability to perform architectural level optimizations and extensions. This allows the manufacturer to achieve custom design goals, such as higher clock speed, very low power consumption, instruction set extensions, optimizations for size, debug support, etc. To determine which components have been included in an ARM IC chip, consult the manufacturer datasheet and related documentation.

Instruction sets

edit

The Cortex-A5 / A7 / A8 / A9 / A12 / A15 / A17 cores implement the ARMv7-A architecture.[2] The Cortex-A32 / A34 / A35 / A53 / A57 / A72 / A73 cores implement the ARMv8-A architecture. ARMv8-A architecture provides exclusive loads and stores instructions as synchronization primitives.[3] The Cortex-A55 / A65 / A75 / A76 / A77 / A78 cores implement the ARMv8.2-A architecture. The Cortex-A510, A710 and A715 cores implement the ARMv9-A architecture. The Cortex-A520 and A720 cores implement the ARMv9.2-A architecture

Documentation

edit

A typical top-down documentation tree is:

  1. IC Manufacturer's high-level marketing slides
  2. IC Manufacturer datasheet for the exact physical chip
  3. IC Manufacturer Reference Manuals — describes common peripherals and other aspects of physical chips within the same series
  4. ARM Core Reference Manuals — for the exact ARM core processor within the chip
  5. ARM Architecture Reference Manuals — includes detailed description of all instruction sets of the core[2]

IC Manufacturers usually have additional documents, including: evaluation board user manuals, application notes, getting started with development software, software library documents, errata, and more.

See also

edit

References

edit
  1. ^ "Cortex-A Series".
  2. ^ a b ARMv7-A Architecture Reference Manual; ARM Holdings.
  3. ^ "ARMv8-A Synchronization primitives". p. 6. Retrieved 2023-12-14.
edit
ARM Cortex-A official documents
ARM
Core
Bit
Width
ARM
Website
ARM Technical
Reference Manual
ARM Architecture
Reference Manual
Cortex-A5 32 Link Link ARMv7-A
Cortex-A7 32 Link Link
Cortex-A8 32 Link Link
Cortex-A9 32 Link Link
Cortex-A12 32 merged into A17
Cortex-A15 32 Link Link
Cortex-A17 32 Link Link
Cortex-A32 32 Link Link ARMv8-A
Cortex-A34 64 Link Link
Cortex-A35 32/64 Link Link
Cortex-A53 32/64 Link Link
Cortex-A55 32/64 Link Link ARMv8.2-A
Cortex-A57 32/64 Link Link ARMv8-A
Cortex-A510 64 (2021)
32/64 (2022)
Link Link ARMv9-A
Cortex-A520 64 Link Link ARMv9.2-A
Cortex-A65 64 Link Link ARMv8.2-A
Cortex-A72 32/64 Link Link ARMv8-A
Cortex-A73 32/64 Link Link
Cortex-A75 32/64 Link Link ARMv8.2-A
Cortex-A76 32/64 Link Link
Cortex-A77 32/64 Link Link
Cortex-A78 32/64 Link Link
Cortex-A710 32/64 Link Link ARMv9-A
Cortex-A715 64 Link Link
Cortex-A720 64 Link Link ARMv9.2-A
Quick Reference Cards
  • Instructions: Thumb (1), ARM and Thumb-2 (2), Vector Floating-Point (3) – arm.com
  • Opcodes: Thumb (1, 2), ARM (3, 4), GNU Assembler Directives (5).
Migrating