ARM Technical Support Knowledge Articles

What are the differences between ARMv7-A, ARMv7-R and ARMv7-M?

Applies to: ARMv7 Architecture


Version 7 of the ARM® architecture or "ARMv7" comprises three profiles:

There are lots of similarities between the A and R profiles so they are described together in the ARMv7-AR Architecture Reference Manual.

The M profile is described separately in the ARMv7-M Architecture Reference Manual.

Both manuals contain a section titled "Architecture versions, profiles and variants" that provides a brief summary of the A, R and M profiles. However, there is no exhaustive architecture profile feature lookup/comparison table available for checking every single difference between each profile.  This article aims to describe some of the main differences. There are a vast number of differences between the M profile and the A and R profiles. The fundamental differences in ARMv7-M are listed below:

Additionally, the A and R profiles offer lots of advanced features and extensions, which are not available in ARMv7-M, for example:

The A profile also provides the Security Extensions (branded as TrustZone®).

A full list of these architectural extensions is available in the section titled "Architecture extensions" from the ARMv7-AR Architecture Reference Manual.

Apart from the mammoth ARMv7-M and ARMv7-AR Architecture Reference Manuals, there is lots of other reading material available to help developers understand the key differences between the different architecture profiles and variants, for example:

Also, if you have a spare 45 minutes, ARM's Training Manager talks about the ARM architecture in the ARM "University Program, ARM Architecture Fundamentals" video available on ARM's YouTube channel.

Article last edited on: 2016-01-06 14:47:33

Rate this article

Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential