18-348 Embedded System Engineering

Spring 2013
Carnegie Mellon University, ECE Department

Prof. Philip Koopman

Lectures: Mon & Wed 10:30-12:20; PH 125C
Labs: one of four sections: ({Tues OR Wed OR Thu} 6:30-9:20 PM) OR (Fri 1:30-4:20 PM) Room: HH 1305
Recitations: Fri 11:30-12:20; PH 125C

Required Hardware: You will be loaned a microcontroller board for the course based on the Freescale MC9S12C128 processor (one per student) and a prototype board (one per team). You must return these boards at the end of the semester, but they will be available if you choose to take 18-549 in a later semester. Required Text: Valvano, Embedded Microcomputer Systems: Real Time Interfacing, 2nd Edition, ISBN 0534551629. Note that this is an old edition. Do not buy the newer 3rd edition -- it leaves out some important material.
Supplemental Text: Koopman, Better Embedded System Software, ISBN-13: 978-0-9844490-0-2. The material in this book will help you understand some of the key concepts, but is not testable material. This book is the primary text used for 18-649.

Handouts are provided in class. Lecture materials are only available in printed form.

Meeting Date Scheduled Lecture Reading
Valvano text unless otherwise noted
.pdf links are CMU-only access
(Lab dates shown are pre-lab due date)
Mon. 14-Jan-2013 1. Course Intro & Background Valvano book sections: 1.2, 1.5, Murray12
E-mail lab partner requests to course staff today by WEDNESDAY 9 PM at: {e-mail}
Wed. 16-Jan 2. Embedded Hardware 1.1, 1.4, 1.8
Fri. 18-Jan Recitation Lab #1
Mon. 21-Jan 3. Microcontroller Instruction Set - Part 1 1.6, 2.1-2.2.8, 2.2.10
Wed. 23-Jan 4. Microcontroller Instruction Set - Part 2 2.2.9, 2.2.11, 2.2.12, 2.5.1, 2.5.2, 2.5.4
Fri. 25-Jan Recitation Lab #2
Mon. 28-Jan 5. Engineering Process & Design Techniques 1.3, 2.3, 2.4.5, 2.5.3, 2.6, Gannsle98a, Wolf07 -- state machine section only.
(Supplemental: Koopman Ch. 2-3, 12-13)
Wed. 30-Jan 6. Embedded Language Use 2.5.1, 2.5.2, Jones98, Barr09
(Supplemental: Koopman Ch. 11)
Fri. 1-Feb Recitation Lab #3
Mon. 4-Feb 7. Coding Tricks; Multiprecision Math; Reviews
Guest: Tom Zavisca, Chief Architect, Green Hills Software
Crenshaw97, Gannsle98b
(Supplemental: Koopman Ch. 22)
Wed. 6-Feb 8. Debug & Test 2.11, Schneider04, Knoke08
(Supplemental: Koopman Ch. 7,23)
Fri. 8-Feb Recitation Lab #4
Mon. 11-Feb 9. Memory and Memory Bus 1.9, 9.1-9.2.2, 9.3-9.4.1, 9.6.2, 9.8, Barr01, Freescale04
Wed. 13-Feb 10. Economics, Code Optimization, and Fixed Point 1.5.5, 2.1, Kraeling96
(Supplemental: Koopman Ch. 16)
Fri. 15-Feb Recitation Lab #5
Mon. 18-Feb 11. Serial Ports 3.1, 3.4, 7.1, 7.2, 7.5.1-7.5.2, 7.6.3; (wikipedia)
Wed. 20-Feb First Exam
(Covers Lectures 1-11)
Fri. 22-Feb Recitation Lab #6
Mon. 25-Feb 12. Time; Timer/Counters; Watchdog Timers 2.4.2-2.4.4, 6.1.4-6.1.5.1; Murphy01
(Supplemental: Koopman Ch. 29; Murphy00)
Wed. 27-Feb 13. Interrupts 4.1, 4.4, Massey01, Ganssle94
Fri. 1-Mar Recitation Lab #7
Mon. 4-Mar 14. Interrupt & Cyclic Task Response Timing Ball02; Interrupt latency hand-out
(Supplemental: Koopman Ch. 14.1-14.4)
Wed. 6-Mar 15. Preemptive Context Switching 4.15, 5.1, Labross03, Kalinsky01
8-Mar to 17-Mar NO CLASS; NO RECITATION - Spring Break No labs, no office hours
Mon. 18-Mar 16. Concurrency 2.9, 4.2, 4.3, 5.2, 5.3,Ganssle01
(Supplemental: Koopman Ch. 20)
Wed. 20-Mar 17. Scheduling 3.5.2, 5.4, Stewart01, Stewart02
(Supplemental: Koopman Ch. 14.5-14.8)
Fri. 22-Mar Recitation Lab #8
Mon. 25-Mar NO CLASS
Wed. 27-Mar 18. RTOS Renwick04, Jones97, Hawley03
Fri. 29-Mar Recitation Lab #9
Mon. 1-Apr 19. Digital to Analog, PWM, Stepper Motors 11.4, 6.2.3-6.2.4, 6.7, Barr01, 8.6
Wed. 3-Apr 20. Analog Inputs 3.5.4, 11.5. 11.10.2, 12.3.2, Maxim05, Maxim05a, Wagner02
Fri. 5-Apr No Recitation Today
Mon. 8-Apr Recitation (at 11:30 AM) Lab #10
(Prelab due Monday 8-Apr)
Wed. 10-Apr 21. Other I/O, Human Interface, Security 8.1-8.3, Kalinski12 (security)
Fri. 12-Apr Recitation Lab #11
(Prelab is due MONDAY 15-Apr)
Mon. 15-Apr 22. Control 13.1-13.4, Barr02
Wed. 17-Apr 23. Bluetooth & CAN Schill97, Spaker00
18-Apr to 19-Apr NO RECITATION - Carnival No labs, no office hours
Mon. 22-Apr 24. System Resets, Robustness & Power Management 4.5-4.7, Gollakota06,
(Supplemental: Koopman Ch. 30)
Wed. 24-Apr Second Exam
(Covers Lectures 12-24)
NONE
Fri. 26-Apr Recitation NONE
Mon. 29-Apr 25. Software safety (Therac 25); Error Detection Codes Leveson (especially sections 3.5.3, 3.6.1, 4 and pg 42)
(Supplemental: Koopman Ch. 28)
Wed. 1-May No Class Today -- Work on Projects! OK to demo final project during any open lab hours this week
Fri. 3-May ECE Day -- No Recitation Curtailed lab/office hours today; see blackboard
Wed. 8-May Last day for Lab #11 demos
See Blackboard for scheduling details
(FINALS WEEK starts Mon 6-May; no class this week)
Fri. 10-May Lab writeups due today, Friday May 10 Lab #11 writeup due today
Notes:

Office Hour Schedule


These office hours are current as of TUESDAY January 22nd. See blackboard for times before that date.
TA In-Lab
Office Hours
(50 minutes starting at time below)
TA In-Lab
Office Hours
(50 minutes starting at time below)
Lab Section
Monday Toth 12:30P Mike 4:00P No Lab
Tuesday Chan 12:00 noon Willis 3:30P Chan
Lab Section A
(6:30-9:30P)
Wednesday Toth 12:30P Willis 4:00P Willis
Lab Section B
(6:30-8:00P;
8:30-10:00P)
Thursday Chan 12:00 Noon Mike 4:30P Toth
Lab Section C
(6:30-9:30P)
Friday Malcolm 12:30 PM
(after recitation)
Mike
Lab Section D
(1:30-4:20P)

Lab demo schedule

Subject to change. Lab Demos are due two hours after start of lab time.

Week of: Mon
Tue
(Sec A)
Wed
(Sec B)
Thu
(Sec C)
Fri
(Sec D)
  Lab Report Due
Wednesday
Prelab Due
Friday
  Fri. Recitation
Discusses Labs
14-Jan
2013
No Lab Open Lab Open Lab Open Lab Open Lab   None 1   1, 2
21-Jan No Lab 1 1 1 1   None 2   2, 3
28-Jan No Lab 2 2 2 2   1 3   3, 4
4-Feb No Lab 3 3 3 3   2 4   4, 5
11-Feb No Lab 4 4 4 4   3 5   5, 6
18-Feb No Lab Open Lab Open Lab 5 5   4 6   6, 7
25-Feb No Lab 5 5 6 6   None 7   7, 8
4-Mar No Lab 6 6 Open Lab SPRING   5 None   No Recitation
11-Mar SPRING BREAK SPRING BREAK BREAK   None None   No Recitation
18-Mar No Lab Open Lab Open Lab 7 7   None 8   8, 9
25-Mar No Lab 7 7 8 8   6 9   9, 10
1-Apr No Lab 8 8 9 9   7 10   10, 11
8-Apr No Lab 9 9 10 10   8 11   11
15-Apr No Lab 10 10 Carnival Carnival   9 None   No Recitation
22-Apr No Lab Open Lab Open Lab Open Lab Open Lab   10 None   Office Hours
29-Apr No Lab Open Lab Open Lab Open Lab Open Lab   None None   No Recitation
(See blackboard for Lab 11 demo & writeup information)