This training course covers the issues involved in developing software for platforms powered by the ARM Cortex-A9 and Cortex-A9 MPCore application processors.
Prerequisites:
Basic understanding of ARMv7-A exception model
Familiarity with ARM assembler and C programming
Experience of embedded system development is helpful but not essential
Audience:
This course is aimed at software developers writing low level and bare-metal code for ARMv7-A processors, concentrating on the Cortex-A9 processor.
Modules:
Optional Day 0: ARM Architecture Fundamentals. Recommended for audiences developing low level code on ARM for the first time. This optional day introduces the ARMv7-A ISA, exception model and memory model.
Days 1-3:
Introduction to the ARM Architecture
Cortex-A9 MPCore Overview
Caches and Branch Prediction
Using the MMU
Writing C for ARM
Booting a Cortex-A9 MPCore
Barriers
OS Support
Synchronization
MP Programming
Programming the GIC
Cortex-A9 Power Management
Debug
NEON Overview
TrustZone
Optional Day 4: Exploring one subject in more detail. Available topics are: