Overview talk and summary talk at the end of the semester.
Brief Overview: This 3 unit course will provide an introduction to embedded software engineering which is a young research discipline on design methodologies for embedded software development. The course begins with an introduction to real-time operating system concepts and real-time communication protocols. Techniques like rate-monotonic scheduling and earliest deadline first as well as real-time protocols like TTP and CAN will be illustrated. The second half of the course emphasizes the pros and cons of the two fundamentally important paradigms of event-triggered and time-triggered systems. An introduction to the two high-level embedded programming languages Esterel and Giotto will be presented. Esterel is a synchronous reactive language with an event-triggered semantics whereas Giotto has a time-triggered semantics. Giotto has recently been developed at UC Berkeley. Example programs in Esterel and Giotto will be implemented on Lego Mindstorm robots. Each week, a one and a half hour lecture will be presented and a one and a half hour discussion will be held.
Goal of the course: Learn how to: evaluate applications with real-time requirements, identify adequate programming paradigm and platform, implement applications with real-time requirements.
|Elaine Cheong:||RapidRMA||Code Generation||Code Generation AVI, MPG|
|Benjamin Horowitz:||Scheduling of Hybrid Task Sets||Pendulum||Pendulum AVI, MPG|
|Paul Griffiths:||CAN (Official Home Page)||Scheduled Computation||Scheduled Computation AVI, MPG|
|Jason Souder:||Byteflight (Official Home Page)||Scheduled Computation||Scheduled Computation AVI, MPG|
|Carlo Cloet:||Fieldbusses||Synchronous Computation AVI, MPG|
|Daniel Jhin Yoo:||LegOS 0.2.4||Tutebot||Tutebot1 AVI, MPG; Tutebot2 AVI, MPG|
|Steve Neuendorffer:||Real-Time Java||Code Generation||Code Generation AVI, MPG|
|Alvin AuYoung:||Real-Time Operating Systems||Tutebot||Tutebot1 AVI, MPG; Tutebot2 AVI, MPG|
|Shawn Shaffert:||WCET Estimation||Pendulum||Pendulum AVI, MPG|
|Jeff Ustin:||Wet Scheduling||Synchronous Computation AVI, MPG|
Presentation of the class projects is scheduled for the 11th of May, 2001, 2-5pm, in 299 Cory Hall.
Web: Giotto, Esterel.
Prerequisites: C programming experience, basic knowledge of operating system concepts.
Homework: Each student prepares a one and a half hour discussion on a special topic. An Esterel and a Giotto program running on Lego Mindstorms is due at the end of the course.
Grading: Grades will be based on the discussion and the programs.
Restrictions: 12 Lego Mindstorm robots available.
Mailing list: firstname.lastname@example.org
Instructor: Christoph Kirsch