CMSIS-Core (Cortex-A)  
CMSIS-Core support for Cortex-A processor-based devices
 
Loading...
Searching...
No Matches
Overview

The CMSIS-Core (Cortex-A) component implements the basic run-time system for a Cortex-A device and gives the user access to the processor core and the device peripherals. In detail it defines:

  • Hardware Abstraction Layer (HAL) for Cortex-A processor registers with standardized definitions for the GIC, FPU, MMU, Cache, and core access functions.
  • System exception names to interface to system exceptions without having compatibility issues.
  • Methods to organize header files that makes it easy to learn new Cortex-A microcontroller products and improve software portability. This includes naming conventions for device-specific interrupts.
  • Methods for system initialization to be used by each MCU vendor. For example, the standardized SystemInit() function is essential for configuring the clock system of the device.
  • Intrinsic functions used to generate CPU instructions that are not supported by standard C functions.
  • A variable to determine the system clock frequency which simplifies the setup of the system timers.

The following sections provide details about the CMSIS-Core (Cortex-A):

Access to CMSIS-Core (Cortex-A)

CMSIS-Core is actively maintained in the CMSIS 6 GitHub repository and released as part of the CMSIS Software Pack.

The following directories and files relevant to CMSIS-Core (Cortex-A) are present in the ARM::CMSIS Pack:

Directory Content
📂 CMSIS CMSIS Base software components folder
┣ 📂 Documentation/html/Core_A A local copy of this CMSIS-Core (A) documentation
┗ 📂 Core CMSIS-Core files
   ┣ 📂 Include CMSIS-Core Processor Files.
    â”— 📂 a-profile Header files specific for Arm A-Profile.
   â”— 📂 Template Template Files

Processor Support

CMSIS supports a selected subset of Cortex-A processors.

Cortex-A Technical Reference Manuals

The following Technical Reference Manuals describe the various Arm Cortex-A processors:

Tested and Verified Toolchains

The CMSIS-Core Device Templates delivered with this CMSIS-Core release have been tested and verified with the following toolchains:

  • Arm Compiler for Embedded 6.20
  • IAR C/C++ Compiler for Arm 9.40
  • GNU Arm Embedded Toolchain 13.2.1
  • LLVM/Clang 17.0.1