Overview
The course includes fundamental architecture topics that are key to understanding how any Cortex-M processor functions internally. The course focuses specifically on the Armv8-M version of the Arm Architecture, which processors like the Cortex-M33 and Cortex-M55 are based on. However, even if you're working with older processors based on earlier versions of the architecture, like Armv6-M or Armv7-M, a lot of the information is mostly still very relevant and useful.
Syllabus
- Course Introduction
- The course includes fundamental architecture topics that are key to understanding how any Cortex-M processor functions internally. The course focuses specifically on the Armv8-M version of the Arm Architecture, which processors like the Cortex-M33 and Cortex-M55 are based on. However, even if you're working with older processors based on earlier versions of the architecture, like Armv6-M or Armv7-M, a lot of the information is mostly still very relevant and useful.
- Programmers' Model
- This module is an essential foundation module for any Armv8-M Mainline implementation training course. It introduces the programmers model for the Armv8-M architecture.
- Assembly Programming
- This module is an essential foundation module for any Armv8-M Mainline implementation course. It introduces the syntax and functionality of the assembly instructions used on all Armv8-M processors, which is crucial for configuration and debugging.
- Memory Model
- This module is an essential foundation module for any Armv8-M Mainline implementation training course. It introduces the memory model for the Armv8-M architecture.
- Memory Protection
- This is an optional module with the following learning objectives of describing the need for a Memory Protection Unit (MPU), understanding how the Armv8-M MPU differs to previous Armv7-M and Arm6-M MPUs, describing the different memory-mapped MPU registers, Configuring memory regions by programming the MPU registers, explaining how to optimise MPU programming.
- Exception Handling
- This module is an essential foundation module for any Armv8-M Mainline implementation training course. It introduces the Exception Handling model for the Armv8-M architecture.
Taught by
Yang Song, Shirley Zou, Graham Cunningham, Peter Rielly, Edmund Player, Salman Arif and Nick Tompkins