ARM core, core extensions, co-processor and ARM processor types
This ARM tutorial covers ARM core, core extensions, co-processor and ARM processor types. Refer following pages for other ARM tutorial contents.
What is ARM Core ?
The ARM core refers to the central processing unit (CPU) component of an ARM processor, designed by ARM Holdings.
It is the primary engine that executes instructions and performs calculations within an ARM-based system.
It follows load and store architecture. The separate instructions for Load ( loading the registers from memory) & Store
( storing the register contents into memory) are available.
Architecture can be Harvard ( separate instruction & data bus) or Von-Newman (same instruction & data bus).
➨Following are the key features of ARM core.
• RISC Architecture: ARM cores are based on Reduced Instruction Set Computing (RISC) architecture.
RISC design principles emphasize simplicity and efficiency,
using a small set of simple instructions that can execute very quickly.
• Energy Efficiency: ARM cores are renowned for their energy efficiency,
making them ideal for mobile devices, embedded systems, and other applications where power consumption is critical.
Low power consumption extends battery life in portable devices and reduces heat generation.
• Scalability: ARM cores are highly scalable and can be found in a wide range of devices,
from microcontrollers and smartphones to servers and supercomputers.
Different ARM cores cater to various performance needs which include
Cortex-A, Cortex-R and Cortex-M series.

ARM Core Families
➨Cortex-A Series:
Purpose: Designed for high-performance applications such as smartphones, tablets, laptops and high end embedded systems.
Features: Advanced features like out of order execution, high clock speeds and support for complex operating systems like
Android and Linux.
➨Cortex-R Series:
Purpose: Designed for real time applications where deterministic performance and low latency are critical,
such as automotive systems, industrial control and medical devices.
Features: Real time capabilities, high reliability and fault tolerance.
➨Cortex-M Series:
Purpose: Designed for low power, cost-sensitive embedded applications such as microcontrollers, IoT devices and wearable technology.
Features: Simplicity, ease of use and efficient interrupt handling, with a focus on energy efficiency.
ARM Core Components
Following are the components of ARM Core with their functions.
• Arithmetic Logic Unit (ALU): Performs arithmetic and logical operations.
• Floating Point Unit (FPU) (optional in some cores): Handles floating-point calculations for applications
requiring high precision.
• Registers: Small, fast storage locations used for temporary data storage and quick access during instruction execution.
• Instruction Pipeline: Allows multiple instructions to be processed simultaneously at different stages, increasing
overall instruction throughput.
• Cache: Stores frequently accessed data and instructions to reduce latency and improve performance.
• Memory Management Unit (MMU) (in more advanced cores): Handles virtual memory and memory protection,
enabling the use of complex operating systems.
• Barrel shifter:A barrel shifter efficiently shifts or rotates data by a specified number of bits in a single clock cycle.
What are ARM Core Extensions
• ARM Core Extensions are additional features and capabilities that extend the functionality of ARM processor cores.
• Hardware extensions are standard components placed next to the ARM core.
• Improve performance, security and efficiency, manage resources and provide extra functionality.
• They are designed to provide flexibility in handling particular applications.

Following are some of the key ARM Core Extensions.
1. NEON Technology :
Accelerates multimedia and signal processing tasks.
NEON is an advanced SIMD (Single Instruction, Multiple Data) extension that provides
parallel processing capabilities. It supports 128-bit wide vector processing.
2. TrustZone Technology : Enhances security for sensitive operations.
TrustZone provides a hardware-based security architecture that creates two separate execution environments on a single core viz. Secure World and Normal World.
3. Thumb-2 Technology : Improves code density and performance. Thumb-2 is an instruction set architecture that combines 16-bit and 32-bit instructions within a single instruction stream. This allows for more compact code without sacrificing performance.
4. Floating-Point Extensions (VFP): Provides hardware support for floating-point arithmetic.
Vector Floating Point (VFP) extensions enable efficient execution of floating-point operations, which are critical for applications requiring high precision mathematical calculations.
5. Other extensions include Jazelle Technology, Cryptographic Extensions, Advanced SIMD Extensions etc.
Explain ARM core extensions with co-processor
• ARM core extensions often leverage coprocessors to offload and accelerate specific tasks, enhancing the overall capabilities
of the ARM processor.
• Extends the processing features of a core by extending the instruction set or by providing
configuration registers.
• More than one coprocessor can be added to the ARM core via the coprocessor interface.
• The coprocessor can be accessed through a group of dedicated ARM instructions that
provide a load-store type interface.
Example: VFP Coprocessor
The VFP coprocessor supports both single-precision (32-bit) and double-precision (64-bit) floating-point operations, complying with IEEE 754 standards. In ARM processors, the VFP coprocessor is integrated alongside the main ARM core. It operates independently but in conjunction with the ARM core. It allows the main CPU to offload floating-point calculations to the VFP. Hence it frees up the main processor to handle other tasks.
ARM Processor Types
ARM processors are categorized into several families, each designed for specific applications and performance requirements.
Here are the main types of ARM processors. Few of them have been explained above.
1. Cortex-A Series : High-performance applications, Used in Smartphones, tablets, laptops, high-end embedded systems etc.
2. COrtex-R series : Real-time applications, Used in Automotive systems, industrial control, medical devices etc.
Suitable for real-time operating systems (RTOS).
3. Cortex-M series : Low-power, cost-sensitive embedded applications, Used in Microcontrollers, IoT devices, wearable technology etc.
4. Cortex-X series : Ultra-high performance, Use cases : Premium smartphones, high performance computing.
5. Cortex-AE Series : Safety-critical and real-time applications, Use cases : Automotive systems, industrial automation.
6. Neoverse series : Infrastructure and cloud computing, Use cases : Servers, data centers, networking equipment.
7. SecurCore series : Security-sensitive applications. Use Cases: Smart cards, secure elements, embedded security.
8. Cortex-A7x, Cortex-A5x, Cortex-A3x : Balanced performance and efficiency.
Explore Complete Tutorial on ARM
ARM tutorial page2 : ARM bus technology and its architecture
ARM tutorial page3 : ARM core extensions and processor types
ARM tutorial page4 : ARM register set, processor modes and Pipeline
ARM tutorial page5 : ARM exception and interrupt controller
ARM tutorial page6 : ARM cache architecture and Cache Types L1, L2, L3, TLB