- Level Expert
- المدة 13 ساعات hours
- الطبع بواسطة Arm
-
Offered by
عن
The final course covers more advanced and optional features that might be configured in a Cortex-M system. These features could help with particular project requirements such as security and performance. Not all of these topics might be relevant for any given Cortex-M project, so feel free to pick and choose which topics, if any, apply to you.الوحدات
Course Welcome
1
Videos
- Course introduction
Exclusive Accesses
6
Videos
- Introduction
- The Exclusive Monitor
- Examples of lock(), unlock() and Multi-thread Mutex
- Non-coherent Multiprocessor - Part 1
- Non-coherent Multiprocessor - Part 2
- Examples of Multiprocessor Mutex
Memory Ordering
1
Assignment
- Synchronization
1
Videos
- Memory Ordering
1
Readings
- Download Course Slides
Introduction
6
Videos
- What is a Cache?
- How is a Cache Accessed?
- How is a Cache Populated?
- Direct Mapped Cache
- Set Associative Cache
- Cache Terminology
Example Cortex-M Cache Subsystem
2
Videos
- Cortex-M7 and Cortex-M55 Caches
- Level 2 Caches
Cache Programming Model
6
Videos
- Data Cache Policies, caching and memory attributes - Part 1
- Data Cache Policies, Caching and Memory Attributes - Part 2
- Cache Coherency & L1 Memory System Buffers
- Point of Coherency and Point of Unification
- Cache Maintenance Operations
- Initializing and Enabling L1 Caches
System Considerations
4
Videos
- Cache Discovery Code
- What Should I Cache?
- Non-deterministic Cache Behavior
- Cache Optimizations
Error Correcting Code (ECC) for Caches
1
Assignment
- Cache Management
1
Videos
- Error Correcting Code for Caches
1
Readings
- Download Course Slides
Armv8-M DSP Mainline Extension
1
Assignment
- DSP extensive
5
Videos
- DSP overview - Part 1
- DSP overview - Part 2
- DSP Extension instruction set - Part 1
- DSP Extension instruction set - Part 2
- DSP tools and library support
1
Readings
- Download Course Slides
Floating-point Extension Overview
1
Videos
- Floating-point Extension Overview
Registers
3
Videos
- Data-processing Floating-point Registers
- Floating-point Status and Control Register
- Floating-point Default Status Control Register &Floating-point Context Control R
Enabling the FPU
1
Videos
- Enabling the FPU
Floating-point Instructions
1
Videos
- Floating-point Instructions
Exceptions
1
Assignment
- Floating Point Extension
4
Videos
- Floating-point Exceptions & Exception Handling
- Floating-point Context Control
- Lazy Context Save
- Interaction with Security Extension
2
Readings
- Floating-point Extension Reference Material
- Download Course Slides
SysTick Timer Overview
2
Videos
- The SysTick Timer
- SysTick Operation
Using CMSIS for SysTick
1
Assignment
- SysTick Timer Extension
1
Videos
- Using CMSIS for SysTick
1
Readings
- Download Course Slides
Armv8-M Security Extension Overview
1
Videos
- Armv8-M Security Extension Overview
Memory Configuration
3
Videos
- Memory Security
- Secure and Non-secure Views of the System Control Space
- SAU Configuration
Function Calls & Toolchain Support
4
Videos
- Function Calls
- Calling Non-secure Code from Secure Code
- Calling Secure Code from Non-secure Code
- Toolchain Support
Exceptions
1
Assignment
- Security Extension (TrustZone for Armv8-M)
2
Videos
- Interrupts and Exceptions
- Taking an Exception
1
Readings
- Download Course Slides
Introduction to PAC-BTI Extension
2
Videos
- Introduction to PAC-BTI Extension - Part 1
- Introduction to PAC-BTI Extension - Part 2
Pointer Authentication (PAC)
4
Videos
- Pointer Authentication Code (PAC)
- PAC Generation & Cryptographic Keys
- PAC Operations
- Pointer Authentication in Use
Branch Target Identification (BTI)
3
Videos
- Branch Target Identification (BTI)
- BTI Across Security States
- BTI with PAC and with Implied Branches
Debugging PAC and BTI
1
Assignment
- PACBTI Extension
1
Videos
- Debugging PAC and BTI
1
Readings
- Download Course Slides
Microcontroller Vector Extension (MVE) Overview
1
Videos
- MVE Overview
MVE Features
9
Videos
- Vector Extension Operation
- Vector Register File
- MVE Features: Lanes
- MVE Features: Beats
- Exception State
- Loop Tail Predication -Describe why Arm introduced MVE to the Armv8.1-M architecture
- VPT Predication -Summarize the main features of MVE
- Interleaving and de-interleaving Loads and Stores - Part 1
- Interleaving and de-interleaving Loads and Stores - Part 2
MVE Software Support
1
Assignment
- M-profile Vector Extension (MVE)
5
Videos
- How to use MVE
- CMSIS-DSP and CMSIS-NN Libraries
- Automatic Vectorization
- Intrinsics - Part 1
- Intrinsics - Part 2
3
Readings
- MVE Reference Material
- MVE Challenge
- Download Course Slides
Congratulations
1
Videos
- Congratulation
Auto Summary
"Advanced Armv8-M Features" is an expert-level IT & Computer Science course offered by Coursera, focusing on advanced and optional features of Cortex-M systems. Tailored for professionals seeking enhanced security and performance in their projects, the course spans 780 minutes. Flexible subscription options include Starter and Professional plans. Ideal for learners looking to deepen their expertise in Cortex-M configurations.

Solomon Tucker

Uma Maheswari Ramalingam

Shirley Zou

Nick Tompkins

Peter Rielly

Matt Rushton

Edmund Player

Salman Arif