As of 01 September 2024, the business operations of MicroConsult Microelectronics Consulting & Training GmbH are transferred to MicroConsult Academy GmbH. The latter will continue business to the full extent, with the proven staff and the usual high quality. Please feel free to contact us in case of questions: contact@microconsult.com.

Experience Embedded

Professional Training, Consulting and Project Support

Cortex®-M23, M33: Armv8-M Architecture Training for Trainees with Knowledge of the Previous Version - Live Online Training

Get familiar with the new Armv8-M architecture (Cortex®-M23 and -M33) and learn how to write software in C and Assembler. This workshop focuses on software and covers a variety of topics, such as the TrustZone, processor architecture, extended instruction set, exception behavior, and many more. After the training, you can locate programs in memory in secure and non-secure configuration and test them - the perfect start for designing Cortex®-M23/M33 based systems.

  • Content
     
  • Objectives
     
  • Participants
     
  • Requirements
     

Get familiar with the new Armv8-M architecture (Cortex®-M23 and -M33) and learn how to write software in C and Assembler.

This workshop focuses on software and covers a variety of topics, such as the TrustZone, processor architecture, extended instruction set, exception behavior, and many more.

After the training, you can locate programs in memory in secure and non-secure configuration and test them - the perfect start for designing Cortex®-M23/M33 based systems.

The training addresses software and hardware developers with a basic knowledge of the previous architecture (Armv6-M/ Armv7-M architecture of the Cortex®-M0/M0+/M3/M4 or -M7).

Basic knowledge of the Armv6-M/ Armv7-M architecture of the Cortex®-M0/M0+/M3/M4 or -M7 as well as basic knowledge of ANSI-C and microcontrollers is required. The training focuses on the new features offered by the Cortex®-M23, M33 and the Armv8-M architecture.

TrustZone for Armv8-M

  • Secure state transitions
  • Function calls from secure state to non-secure state
  • Function returns from non-secure state
  • Practical exercises: Developing and setting up mixed secure/non-secure projects for Cortex™-M33

Cortex®-M (Armv8-M) Processor Architecture

  • Stack limit register
  • Secure state, security transitions
  • Banked registers
  • Cortex®-M memory map, system control block
  • Practical exercises: New stack limit registers

Differences to the Armv6-M and Armv7-M Processor Architecture

Cortex®-M33, M23 Extended Instruction Set

  • Branch and control flow instructions with security transitions
  • Security instructions
  • Assembler directives
  • Pracitcal exercises: Generating Assembler routines, Assembler debugging, code optimization

Exception and Interrupt Handling

  • Security targeting
  • Banked exceptions
  • Banked vector tables
  • Tail chaining with security transitions
  • Interrupt configuration and status
  • Secure exception priority boosting
  • Secure faults
  • Pracitcal exercises: System tick, supervisor call and PendSV in the context of RTOS applications
  • Practical exercises: Fault handlers and status information output

Memory Protection Unit MPU for Embedded Systems

  • Armv8-M MPU
  • Comparison to previous Armv7-M MPU
  • Practical exercises: Programming the MPU
  • Practical exercises: Dynamic reprogramming in the scheduler

Security Attribution Unit (SAU, IDAU)

  • Overview on the security and implementation defined attribution unit
  • Attribution attributes secure, non-secure, non-secure callable
  • Practical exercises: Programming the security attribution unit

Hardware-near C Programming based on CMSIS

  • CMSIS extensions for Armv8-M

Exercises with Keil µVision in Assembler and C

  • Exercises for Armv8-M are performed with the Arm Simulator

The training price includes:
Training documentation, your training certificate and target HW etc. where required.


ALL INCLUSIVE!

Related trainings

Embedded C Training: Programming Methods and Tools for Embedded Applications - Live Online Training
Training code: LE-EMB-C

Embedded C++: Object-Oriented Programming for Microcontrollers with C++/EC++ and UML - Live Online Training
Training code: LE-EC++

Coaching: Arm®/CORTEX®
Training code: CE-ARM-COR


Related trainings

Live-Online-Training

Duration
2 days
Training code: LE-ARMV8MU
* Price per attendee, in Euro plus VAT

> Registration form download (PDF)
> Training details as PDF

Face-To-Face - English

Duration
2 days  

Live Online - German

Duration
2 days  

Face-To-Face - German

Duration
2 days  

Cortex®-M23, M33: Armv8-M Architecture Training for Trainees with Knowledge of the Previous Version - Live Online Training

Content

TrustZone for Armv8-M

  • Secure state transitions
  • Function calls from secure state to non-secure state
  • Function returns from non-secure state
  • Practical exercises: Developing and setting up mixed secure/non-secure projects for Cortex™-M33

Cortex®-M (Armv8-M) Processor Architecture

  • Stack limit register
  • Secure state, security transitions
  • Banked registers
  • Cortex®-M memory map, system control block
  • Practical exercises: New stack limit registers

Differences to the Armv6-M and Armv7-M Processor Architecture

Cortex®-M33, M23 Extended Instruction Set

  • Branch and control flow instructions with security transitions
  • Security instructions
  • Assembler directives
  • Pracitcal exercises: Generating Assembler routines, Assembler debugging, code optimization

Exception and Interrupt Handling

  • Security targeting
  • Banked exceptions
  • Banked vector tables
  • Tail chaining with security transitions
  • Interrupt configuration and status
  • Secure exception priority boosting
  • Secure faults
  • Pracitcal exercises: System tick, supervisor call and PendSV in the context of RTOS applications
  • Practical exercises: Fault handlers and status information output

Memory Protection Unit MPU for Embedded Systems

  • Armv8-M MPU
  • Comparison to previous Armv7-M MPU
  • Practical exercises: Programming the MPU
  • Practical exercises: Dynamic reprogramming in the scheduler

Security Attribution Unit (SAU, IDAU)

  • Overview on the security and implementation defined attribution unit
  • Attribution attributes secure, non-secure, non-secure callable
  • Practical exercises: Programming the security attribution unit

Hardware-near C Programming based on CMSIS

  • CMSIS extensions for Armv8-M

Exercises with Keil µVision in Assembler and C

  • Exercises for Armv8-M are performed with the Arm Simulator