Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Arm Community blogs
Arm Community blogs
Architectures and Processors blog Whitepaper - ARMv8-M Architecture Technical Overview
  • Blogs
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
More blogs in Arm Community blogs
  • AI blog

  • Announcements

  • Architectures and Processors blog

  • Automotive blog

  • Embedded and Microcontrollers blog

  • Internet of Things (IoT) blog

  • Laptops and Desktops blog

  • Mobile, Graphics, and Gaming blog

  • Operating Systems blog

  • Servers and Cloud Computing blog

  • SoC Design and Simulation blog

  • Tools, Software and IDEs blog

Tell us what you think
Tags
  • AMBA
  • Architecture
  • White Paper
  • Cortex-M23
  • Technical Support
  • Cortex-M35P
  • Cortex-M
  • TrustZone
  • Cortex-M33
  • Armv8-M
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

Whitepaper - ARMv8-M Architecture Technical Overview

Joseph Yiu
Joseph Yiu
November 11, 2016
3 minute read time.

The next generation of ARM Cortex-M processors will be powered by a new architecture version called ARMv8-M architecture. This document provides a technical overview of various enhancements in the new architecture, as well as an introduction to the security technology, called TrustZone for ARMv8-M. This document also introduces AMBA 5 AHB5 which enables security management at a system level, and covers various use cases of the new technology.

ARMv8-M Architecture

  • ARMv8-M Architecture Technical Overview
  • ARMv8-M Architecture Reference manual

Information on ARMv8-M and TrustZone

  • The Next Steps in the Evolution of Embedded Processors for the Smart Connected Era
  • ARMv8-M architecture: what’s new for developers - YouTube

Cortex-M23, Cortex-M33 and Cortex-M35P processors information

  • Cortex-M | Introduction to ARM Cortex-M23 and Cortex-M33
  • Cortex-M23 processor product page
  • Cortex-M33 processor product page
  • Cortex-M35P processor product page
  • Cortex-M23 and Cortex-M33 - Security foundation for billions of devices
  • Five key features of the ARM Cortex-M23 Processor
  • Five key features of the ARM Cortex-M33 Processor
  • Cortex-M35P: multi-layered security at the heart of your device
  • Security principles for TrustZone for ARMv8-M (Webinar)

For details of Armv8.1-M processors (Cortex-M55, Cortex-M85), please visit:

      https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/cortex-m-resources

Resources for software developers

  • Documents on developer.arm.com

Topics

Document

Introduction

Introduction to the ARMv8‑M Architecture

TrustZone

TrustZone technology for ARMv8‑M Architecture

ARM C Language Extension (ACLE)

ACLE Extensions for ARMv8‑M

Secure software

Secure software guidelines for ARMv8‑M based platforms

System Design 

System Design for ARMv8-M

Exceptions and Interrupts

ARMv8‑M Exception Handling

Fault exception

Fault Handling and Detection

Power management and sleep modes

ARMv8-M processor power management secure state protection

Debug

ARMv8‑M Processor Debug

Memory model, MPU

Armv8-M Memory Model and MPU User Guide (doc, example codes)

MPU

Memory Protection Unit for ARMv8‑M based platforms

OS

RTOS design considerations for ARMv8‑M based platforms

ARMv8-M software development with ARM Compiler 6

Chapter 9 : Building Secure and Non-secure Images Using ARMv8-M Security Extensions

TrustZone software development in Keil MDK

Keil Application Note 291: Using TrustZone on ARMv8-M

Security extension details for compiler vendors

ARMv8-M Security Extension: Requirements on Development Tools (latest)

(v1.1)

ARMv8-M software development

EW2017 - Software Development on ARMv8-M Architecture

mbed(TM)OS deployment on Armv8-M

EW2017 - High-End Security Features for Low-End Microcontrollers

RTOS design

EW2019 - How RTOS should work in a TrustZone for Armv8-M environment

TrustZone Secure software

Stack sealing and why it is needed in TrustZone for Armv8-M

TrustZone Secure software Armv8-M processor Secure software Stack Sealing vulnerability
  • A few intricacies of writing ARMv8-M Secure code
  • Three ARM development tools to help you pioneer the IoT market
  • Security Extensions and Privilege Levels

Resources for silicon designers

  • Enhanced Security and Energy Efficiency of Microcontrollers and SoCs (AHB5 and Q channel introduction)
  • System Design for ARMv8-M
  • ARM AMBA 5 AHB Protocol Specification
  • AMBA APB Protocol Specification
  • AMBA Low Power Interface Specification
  • AMBA 4 ATB Protocol Specification
  • Corstone Foundation IP (Contains CoreLink SSE-200, CoreLink SIE-200 and more).
  • Webinar on secure system design
  • The six things you need to know about ARM CoreLink SSE-200 subsystem & ARM CoreLink SIE-200 system IP
  • CoreLink Interconnect | ARM CoreLink SIE-200 – ARM Developer
  • System Design | CoreLink SSE-200 subsystem – ARM Developer
  • Cortex-M Prototyping System+ (FPGA board)
Whitepaper - ARMv8-M Architecture Technical Overview.pdf
Anonymous
Parents
  • daith
    daith over 8 years ago

    I am not exactly sure what you mean. The state of the stack after an exception for various combinations of secure and non-secure state or floating point are shown in section B4.20 of the ARMv8-M Architecture Reference manual

    Lazy stacking only applies to the floating point registers. If an exception occurs in secure state taking it to a non-secure state then all the general registers are saved and zeroed, and then restored on return to secure state.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
Comment
  • daith
    daith over 8 years ago

    I am not exactly sure what you mean. The state of the stack after an exception for various combinations of secure and non-secure state or floating point are shown in section B4.20 of the ARMv8-M Architecture Reference manual

    Lazy stacking only applies to the floating point registers. If an exception occurs in secure state taking it to a non-secure state then all the general registers are saved and zeroed, and then restored on return to secure state.

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
Children
No Data
Architectures and Processors blog
  • Introducing GICv5: Scalable and secure interrupt management for Arm

    Christoffer Dall
    Christoffer Dall
    Introducing Arm GICv5: a scalable, hypervisor-free interrupt controller for modern multi-core systems with improved virtualization and real-time support.
    • April 28, 2025
  • Getting started with AARCHMRS Features.json using Python

    Joh
    Joh
    A high-level introduction to the Arm Architecture Machine Readable Specification (AARCHMRS) Features.json with some examples to interpret and start to work with the available data using Python.
    • April 8, 2025
  • Advancing server manageability on Arm Neoverse Compute Subsystem (CSS) with OpenBMC

    Samer El-Haj-Mahmoud
    Samer El-Haj-Mahmoud
    Arm and 9elements Cyber Security have brought a prototype of OpenBMC to the Arm Neoverse Compute Subsystem (CSS) to advancing server manageability.
    • January 28, 2025