18-349: Introduction to Embedded Real-Time Systems


Welcome to 18-349 Fall 2016. The complete course syllabus is available here (PDF) or on blackboard.

All course documents will be available on blackboard, and a discussion board is available on piazza.

The class meets MW from 3:00-4:20pm in BH A51.

The class uses the Raspberry Pi hardware platform shown below.

349 RPi 2

Course Description

This practical, hands-on course introduces the various building blocks and underlying scientific and engineering principles behind embedded real-time systems. The course covers the integrated hardware and software aspects of embedded processor architectures, along with advanced topics such as real-time, resource/device and memory management. Students can expect to learn how to program with the embedded architecture that is ubiquitous in cell-phones, portable gaming devices, robots, tablets, etc. Students will then go on to learn and apply real-time principles that are used to drive critical embedded systems like automobiles, avionics, medical equipment, wearables, etc. Topics covered include embedded architectures (building up to modern 16/32/64-bit embedded processors); interaction with devices (buses, memory architectures, memory management, device drivers); concurrency (software and hardware interrupts, timers); real-time principles (multi-tasking, scheduling, synchronization); implementation trade-offs, profiling and code optimization (for performance and memory); embedded software (exception handling, loading, mode-switching, programming embedded systems). Through a series of laboratory exercises with state-of-the-art embedded processors and industry-strength development tools, students will acquire skills in the design/implementation/debugging of core embedded real-time functionality.


Anthony Rowe

Office Location: 2217 Collaborative Innovation Center
Office Hours: Tuesday 4-5pm
Phone: (412) 268-4856
Fax: (412) 268-5531
Email: agr@ece.cmu.edu

Course Staff

TA Email Office Hours (HH1303)
Mark McElwaine mmcelwai@andrew.cmu.edu Monday 5-6pm
Udaya Malik umalik@andrew.cmu.edu Tuesday 5-6pm
Adwait Dongare adongare@andrew.cmu.edu Wednesday 5-6pm
Vivek Sridhar viveksri@andrew.cmu.edu Thursday 5-6pm
Karthic Palaniappan kapalani@andrew.cmu.edu Friday 5-6pm
All (Sunday before lab due dates) Sunday 5-6pm
Course Management Assistant Email Office Phone
Lyz Prelich-Knight lyz@ece.cmu.edu HH 1112 412-268-5087
Technical Course Management Assistant Email Office
Cameron West cgwest@andrew.cmu.edu HH 1112


Please refer to the complete course syllabus for the schedule.