Arm Virtualization and SMMU

  • Delivery method: Virtual Classroom (Private)

  • Location: Any location

  • Course Length: 2 x 1/2 days

  • Technology Focus: Software

  • Cost: Contact us for pricing

  • Provider: Arm



This course provides comprehensive coverage of the features provided to support virtualization and SMMU programming in the Armv8-A architecture. Whether you are working on design, verification or validation, for a Cortex-A system, the course can be configured according to your team’s needs

Courses include fundamental topics to enable a solid platform of understanding. The rest of the course then builds on from this with optional topics and can be tailored appropriately.

Learning activities such as interactive workbooks, walkthrough examples and quizzes are incorporated into the training to help bring the learning to life.

A pre course call with the engineer delivering the training will help you discuss your team’s individual training requirements.

At the end of the course delegates will be able to:

  • State the difference between Type 1 and Type 2 hypervisors
  • Describe the memory management under Arm-based virtualized environment
  • Explain the device handling in Arm based system
  • Access the GIC virtualization support for the Arm Processor systems
  • Program their system SMMU
  • Configure the SMMU using default Arm SMMU drivers

Course Length

Delivery Method


2 x ½ days




Those who need to use the architectural features of Armv8-A to support development of a hypervisor or other virtual machine environment. Note that proficiency with Armv8-A is assumed.


  • A high level of knowledge of the Armv8-A architecture.
  • Familiarity with the design and implementation of hypervisors.
  • Proficiency in C and assembly language programming.

Related Products

Armv8-A, Arm DynamIQ, Cortex-A77, A76, A75 A65, A57, A55, A53



Agendas will be created from the following list of fundamental and optional topics

Fundamental Topics


  • Virtualization Overview
  • Memory Management for Virtualization
  • Device Virtualization
  • Virtual Machine Management
  • Programming the SMMU



Optional Additional Topics


  • Using the ArmGeneric Interrupt Controller(GIC) in your Cortex-A system
  • Arm DynamIQ technology
  • Security using TrustZone in your Cortex Processor based system
  • OS Support


Related face-to-face and on-demand courses

  • Introduction to Armv8-A ♥
  • Arm-Cortex-A-Software-Development

♥ = Online and on-demand.


Download PDF Version