Full Day Hands-On ARM Embedded Training
Our manufacturer independent ARM training classes cover the ARM Embedded architectures (ARM7, ARM9, Cortex-M3) and give participants all the information they need to make an educated decision when selecting cores, chips, tools and libraries.
With ARM one has many choices: there are different cores like ARM7, ARM9 and Cortex-M3, many manufacturers for chips, compilers, debuggers and software libraries and source codes like Real-Time Operating Systems and communication stacks (for Ethernet, CAN, USB and others). Of course there are performance differences between all of those, however, it is generally underestimated how sever these differences can be.
Making all the "good" choices versus making all the "bad" choices may result in differences of up to a factor of 50 (fifty). Meaning that at the same core frequency the "good" version executes 50 times faster than the "bad" version.
Participate in this training class to learn what the major technical differences between selected architectures, chips, compilers and libraries are. Get the tools and skills to determine for yourself which combination of chips and software tools bring the best performance to your application.
In the hands-on part this class uses Keil's uVision, the GNU compiler system and the ARM RealView compiler system. Examples for various ARM microcontrollers from Atmel, NXP and ST Microelectronics will be generated and debugged / measured.
This hands-on class is limited to 12 participants.
|8:30AM - 9:00AM
|9:00AM - 10:30AM
||General Introduction to the ARM architecture: supported instructions sets (ARM32, Thumb, Thumb-2), conditional execution benefits, code sizes, types & alignments, pipeline, selected registers, interrupt handling.|
|10:30AM - 11:00AM
|11:00AM - 11:45AM
||ARM core comparison and selection criteria (ARM7, ARM9, Cortex-M3), specialities of Cortex-M3 (data alignment, bit-band, MPU, interrupt controller).|
|11:45AM - 12:30PM
||Manufacturer specific considerations: data busses and paths, AMBA, AHB, APB, Bus Matrix, Flash memory acceleration
Code efficiency: compilers and libraries
Summarized Results of Performance Comparisons, why at the same core clock rate one implementation can still be 50 times faster than the other.
|12:30PM - 1:30PM||Lunch break|
|1:30PM - 2:15PM||Hands-On: Creating an example program "from scratch" for an ARM derivative from Atmel, NXP or ST Microelectronics and measuring program execution times with Keil's simulator.|
|2:15PM - 3:00PM||Hands-On: Advanced peripheral simulation with Keil's simulator|
|3:00PM - 3:30PM||Coffee break|
|3:30PM - 4:30PM||Lesson & Hands-On: Introdution to Embedded Real-Time Operating System Programming on the ARM architecture.|
|4:30PM - 5:00PM||Programming examples or exercises depending on audience: USB, Ethernet, CAN, CANopen, Bootloading.|
Engineers and Managers that are in Embedded Systems Development and consider using ARM derivatives in their design.
General knowledge about embedded systems development is beneficial for this class.
All training material is in English language. Classes are conducted in English or German, depending on location and/or participants.
The classes are taught by either Olaf Pfeiffer or Christian Keydel, tutors at ESAcademy. Both are co-authors of the book “Embedded Networking with CAN and CANopen”. They regularly present at international events such as the Real-Time and Embedded Computing Conferences, the Embedded Systems Conferences and the international CAN conferences.
The training materials (handouts, example programs) will be delivered electronically. During the hands-on class each PC provided is shared by two students.
The pricing is location dependent. Drinks and lunch are included in the tuition fee. Multiple student or early sign-up (more than 4 weeks before the event) discounts are available upon request.
Cancellations may be made 2 weeks prior to the event, otherwise tuition is non-refundable. A 15% rescheduling fee applies, if student needs to reschedule within 2 weeks prior to the event.