Real-time Embedded Systems for Practicing Engineers

Description

The course is designed for practicing engineers to refresh the embedded software development techniques and to discuss task-scheduling approaches. The students are assumed to have some experience of developing embedded systems. Beginning with embedded software programming, we will show the software structures of concurrent tasks and the scheduling issues for real-time systems. The rate monotonic analysis approach will be explained and its applications to various situations will be illustrated. The rest of the class will be devoted to the discussion of emerging development approaches, including component-based and model-based approaches, and runtime support.

Course Outline

1. Introduction and overviews (1.5 hour)
development environment
operating systems
2. Embedded software programming: (1.5 hour)
never-ending tasks,
periodic and aperiodic tasks,
inter-task communication,
overrun management and imprecise computation
3. Scheduling and analysis: (7 hours)
cyclic scheduling and rate-monotonic scheduling
resource sharing, priority inversion and inheritance
aperiodic sever
schedulability analysis
4. Emerging issues: (2 hours)
RTSJ and virtual machine
Component-based model-driven development, including TinyOS, Rational Rose RT, Matlab Real-time Workshop.

Intended Audience

Hardware and software engineers who have a prior knowledge or experience on embedded system development and wish to learn embedded software programming, scheduability analysis, and emerging issues.

Prerequisites

Knowledge or experience of developing embedded systems with real-time operating systems.

Where and When

COURSE TESTIMONIALS

When asked what they liked most about this course, past participants commented on the following:

Course Information

Instructor

Cost

How to Register