ARM Cortex-A

From Wikipedia, the free encyclopedia
Jump to: navigation, search
ARM Cortex-A
Designed by ARM Holdings
Instruction set

ARM, Thumb-2 (32-bit cores); ARMv7-A and ARMv8-A

A64, A32, T32 (64-bit cores); ARMv8-A, ARMv8.1-A,
ARMv8.2-A, ARM8.3-A

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 cores: ARM Cortex-A5, ARM Cortex-A7, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A12, ARM Cortex-A15, ARM Cortex-A17 MPCore,[1] and ARM Cortex-A32,[2] and 64-bit cores: ARM Cortex-A35, ARM Cortex-A53, ARM Cortex-A55, ARM Cortex-A57, ARM Cortex-A72, ARM Cortex-A73, and ARM Cortex-A75.

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).[3] 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]

Announced
(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
Announced
(64-bit)
Year Core
2012 Cortex-A53
2012 Cortex-A57
2015 Cortex-A72
2015 Cortex-A35
2016 Cortex-A73
2017 Cortex-A55
2017 Cortex-A75

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.[1] The Cortex-A32 / A35 / A53 / A57 / A72 / A73 cores implement the ARMv8-A architecture.

Documentation[edit]

The amount of documentation for all ARM chips is daunting, especially for newcomers. The documentation for microcontrollers from past decades would easily be inclusive in a single document, but as chips have evolved so has the documentation grown. The total documentation is especially hard to grasp for all ARM chips since it consists of documents from the IC manufacturer and documents from CPU core vendor (ARM Holdings).

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[1]

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]

External links[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
ARMv7-A
Cortex-A8
32
Link
Link
ARMv7-A
Cortex-A9
32
Link
Link
ARMv7-A
Cortex-A12
32
merged into A17
ARMv7-A
Cortex-A15
32
Link
Link
ARMv7-A
Cortex-A17
32
Link
Link
ARMv7-A
Cortex-A32
32
Link
ARMv8-A
Cortex-A35
32/64
Link
ARMv8-A
Cortex-A53
32/64
Link
Link
ARMv8-A
Cortex-A55
32/64
Link
ARMv8.2-A
Cortex-A57
32/64
Link
Link
ARMv8-A
Cortex-A72
32/64
Link
Link
ARMv8-A
Cortex-A73
32/64
Link
Link
ARMv8-A
Cortex-A75
32/64
Link
ARMv8.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