TOPICS

Training materials
This class is based on source training material developed by ARM themselves, augmented with supplemental content and labs developed by LearnChase. A global ARM Approved Training Center.
Agenda
The majority of the course content and sessions are relevant and of value for engineers developing products using platforms based on any of the current M Series family. In public class delivery contexts, the specific agenda followed may vary from that indicated below dependent on the focus and interests of the course participants attending that event. Upon registration, course participants will be asked to indicate which specific M Series core they are focusing on, which will steer the class agenda to some degree.
Note the course includes a valuable comparison of capabilities and application variance between different members of the M Series family which will be of benefit to evaluators as well as those preparing for project.
For private team-based training for software developers, the course can be focused entirely on a specific M Series core. The course descriptions for these courses can be found below:

ARM Cortex-M0 Software Design
ARM Cortex-M0+ Software Design
ARM Cortex-M3/M4 Software Design
ARM Cortex-M7 Software Design

For private team based training for system designers and integrators, there are also course options available:
ARM Cortex-M0 SoC Design
ARM Cortex-M0+ SoC Design
ARM Cortex-M3/M4 SoC Design
ARM Cortex-M7 SoC Design

Content
The following is representative of the public class agenda followed which includes participants requiring content covering M7 capability as well as M4, M3 and M0
Day 1
Introduction to ARM
ARM as a company • Processor portfolio • Supported architectures • Processor profiles

Cortex-M Overview
Block diagram • Architectural features • Instruction set • Programmer’s model • Memory map • Memory interfaces • Caches • Exception handing • Memory protection • Power management • Implementation options

ARMv7-M Programmers’ Model
Data types • Core registers • Modes, privileges and stack • Exceptions • Instruction set overview

Tools Overview for ARM Microcontrollers
Keil MDK • ULINK/DSTREAM debug adapters • Development boards • DS-5

CMSIS Overview
CMSIS-Core • CMSIS-DSP • CMSIS-RTOS • CMSIS-SVD • CMSIS-DAP

Day 2
ARMv7-M Assembly Programming
Data processing instructions • Load/Store instructions • Flow control • Miscellaneous instructions

ARMv7-M Memory Model
Memory address space • Memory types and attributes • Alignment and endianness • Barriers

ARMv7-M Exception Handling
Exception Model • Interrupts • Writing the vector table and interrupt handlers • Internal exceptions and RTOS support • Fault exception

Day 3
ARMv7-M Compiler Hints & Tips
Basic Compilation • Compiler optimisations • Coding considerations • Mixing C/C++ and assembly • Local and global data issues

ARMv7-M Linker and Libraries Hints & Tips
Linking basics • System and user libraries • Veneers • Stack issues • Linker optimisations and diagnostics • ARM supplied libraries

Embedded Software Development
Default compilation behavior • System startup • Tailoring the image memory map to a device • Post startup initialization • Tailoring the C library to a device • Building and debugging an image

Day 4
ARMv7-M Synchronization
Introduction to synchronization and semaphores • Exclusive accesses • Bit-banding

Embedded Software Development
Default compilation behavior • System startup • Tailoring the image memory map to a device • Post startup initialization • Tailoring the C library to a device • Building and debugging an image

ARMv7-M Debug
Coresight and debug access port DAP • Debug event and reset • Flash patch and breakpoint unit (FPB) • Data watch point and trace unit (DWT) • Instrumentation trace macrocell (ITM) • Embedded trace macrocell (ETM) • Trace port interface unit (TPIU)

Extensions (M4/M7)
DSP • Floating Point

Cortex-M Level 1 Sub-Systems (M7)
Caches • Tightly coupled memory (TCM) • System considerations

ARMv7-M Memory Protection
Memory protection overview • Regions overview • Regions overlapping • Setting up the MPU

Exercises
Keil MDK Introductory Workbook • ARMv6-M and ARMv7-M Assembly Language Workbook • ARM Compiler and Linker Workbook • Embedded Software Development Workbook.

  • PRIVATE
  • 10 Days
  • 0 Units
  • 0 Hrs

Select Your Currency

WOOCS 1.1.8
Drop Us A Query
[contact-form-7 id="5639" title="Drop Us A Query"]
© 2016, ALL RIGHTS RESERVED.
Create an Account