eTPU Training Overview

ASH WARE – Embedded Software Tools since 1994

eTPU Training Overview

Time is money - you can shorten your learning curve by attending one of our courses!? Offered in conjunction with Freescale Inc., this eTPU coding course, Programming the eTPU in C, is a three-day session geared for those engineers with a background in C and at least a conceptual understanding of the eTPU.

This is a hands-on, lab-intensive course, remember to bring a laptop!

Training Schedule

We teach this course on a regular basis in both Europe and the United States. Previous courses have been taught in Detroit, Munich, Austin, Singapore, Shanghai, Chicago, Glasgow, Lasi, Rockford, Hartford, London, Bangalore, Napoli, and?many many more places.

Detroit, MI
November 12-14 (Tues-Thurs) 2019
Call 503.533.0271 or register online with credit card purchase
Munich, Germany
January 22-24 (Wed-Fri) 2020
Call 503.533.0271 or register online with credit card purchase
Shanghai, China
TBD (Fall 2019/Spring 2020)
Contact Sandy Gu at
QAST facility in Shanghai, China


Day 1

  • Tools Installation and Introduction. Step-by-step installation guide of Byte Craft Limited's eTPU Compiler (eTPU_C), ASH WARE's eTPU/eTPU2 C Compiler (ETEC) and ASH WARE's eTPU Stand-Alone Simulator. Brief tour of Simulator including stepping, breakpoints, examining trace data, measuring pulse widths using logic analyzer. Brief tour of Compilers including compiling, project files, multi-file projects, command line, and library directory. Student will modify some eTPU code to perform a calculation, compile, load into simulator and verify calculation.
  • Channel Hardware Basics. A "C-centric" introduction to fundamental channel hardware concepts. Sampling input pin state versus detection of an edge and recording the time at which that edge occurred. Forcing an output pin to a state versus scheduling a output pin edge to occur at a particular future point in time.
  • Events and Event Handling. The eTPU is an event servicing device. Using the eTPU compiler to create an event vector table. Examine event and thread response timing diagrams to see where event servicing occurs.

Day 2

  • Channel Hardware Details. Step through each of the fields used to program the channel hardware. A step-by-step guide to setting up matches and transition detection.
  • The Programming Model. Essentially a programmers' model chapter, with emphasis on context and thread issues. Key data type, function variables, explained in detail including memory map. Other miscellaneous issues.
  • Scheduler. The round robin scheduler algorithm. Calculating worst case latency. Statistical latency analyses using post processing trace-dump files.

Day 3

  • Channel Hardware Modes. Explain details of match/transition and action unit 1/2 using the channel "mode". A problem-solving approach: "How to solve problem X? Use channel mode Y."? Includes the eTPU's new User Designed Channel Mode
  • Angle Mode. Angle mode hardware is a digital phase lock loop (PLL) with a software assist. Underlying concepts and details on the software assist.
  • Basic Tools Issues. Automated testing using the Simulator, including data flow, behavior verification, and code coverage. Auto-code generation in the Compiler solves two-copy problem. Example host-side drivers with auto-code generated from the Compiler.
  • ?

Day 4 (available upon request)

  • Assistance with the architecture of a customer's design

Included with the course itself is a set of printed course notes that provide labs at the end of each chapter.

Related Training Offerings