n
Carnegie Mellon University
Spring 2009
This page is here to help you understand the details of how this course runs. Please read the whole thing at the start of the semester.
Embedded computers seem to be everywhere, and are increasingly used in applications as diverse as transportation, medical equipment, industrial controls, and consumer products. This course covers how to design and analyze distributed embedded systems, which typically consist of multiple processors on a local area network performing real time control tasks. The topics covered will include issues such as communication protocols, synchronization, real-time operation, fault tolerance, distributed I/O, design validation, and industrial implementation concerns. The emphasis will be on areas that are specific to embedded distributed systems as opposed to general-purpose networked workstation applications. A semester-long course project will provide hands-on experience with a methodical (but lightweight) UML based design process, including multiple iterations of design revisions and end-to-end traceability from requirements through acceptance tests. This course assumes that students already know fundamental topics such as interrupts, basic I/O, and uniprocessor scheduling that are commonly taught in introduction-level embedded system courses such as 18-348 and 18-349. Any student who has not taken the pre-requisites is responsible for understanding relevant material necessary for 18-649. You can get more pre-req information via http://www.ece.cmu.edu/~ece348. Additionally, all students are responsible for knowing or learning on their own intermediate-level programming in Java.
The syllabus is subject to change during the course of the semester to meet the needs of students and the university. In particular this course is still evolving so some fine-tuning of content is to be expected as the semester progresses.
Send all course-related e-mail to
so we can respond quickly. If you send it to just one of us your
reply will probably be delayed.
Course Staff:
| Professor | Course Administrative Assistant |
| Philip
Koopman Hamershlag A-308 Office Hours: immediately after class Mon & Wed and by appointment |
Shannon Halfhill D-A9 Hamerschlag Hall phone: 268-5448 |
| Project Staff: | |
| Justin Ray Office Hours: Wed 3-4; Thu 11-12 HH A-312 |
Kenny Stauffer Office Hours: Mon 4-5; Thu 4-5 HH A-300 Cube A4 |
Attendance and holidays/special needs:
No student may record or tape any classroom, lab, office hour, or other similar course-related activity without the express written consent of the course instructor, Prof. Koopman. If a student believes that he/she is disabled and needs to record or tape classroom activities, he/she should contact the Office of Disability Resources to request an appropriate accommodation.
Grading will be performed on a "straight scale":
The basis for grades will be out of 100 points total for the course:
As noted above, the lowest weekly quizes and group meetings are dropped. This is built in slack to accomodate illness, plant trips, conference attendance, paper deadlines, family emergencies, dead cars, conflicts with other events, bad hair days, and anything else that happens as a normal part of life. Don't ask us to further excuse an absence -- that is the point of dropping the low grades. We strongly advise you NOT to blow off any of these events just because you are pressed for time or feel like sleeping in that day. These are designed to deal with expected and unexpected contingencies and are not "freebie" items. If you burn up those dropped scores by sleeping in, don't come crying to us later in the semester that you have a plant trip. Spend these dropped scores wisely. Just to make sure we are clear, the extra points are there because everyone has unexpected events in their lives, not as a "freebie" that can be further extended with excuses. If you ask for further concessions with anything less than a Dean of Students support letter, our reply will simply quote this paragraph.
Late project submissions up to 1 hour late will be penalized 10%. After 1 hour late, submissions will be penalized that 10% plus an additional 10% of grade for every 24 hour period or fractional period they are late, but compounded in your favor (i.e., 81% of credit for late 1 hour to 24 hours, 73% 24 hours to 48 hours; 66% 48 hours to 72 hours; using the formula general 0.90N+1 credit where N is the rounded-up number of days late). If one project phase is late, that does not extend subsequent project phase due dates. Don't get behind!
Late presentation submissions will be penalized 25% for the first hour, plus an additional 10% of grade for every 24 hour period or fractional period they are late beyond 1 hour, but compounded in your favor. Before the first in-class presentation, this will apply only to the presentation materials grades. After the start of the first in-class presentation, this will apply to the entire presentation grade. We want you to come up with your own presentations, not "borrow" ideas from other teams. We additionally don't want teams who go first to feel that they are at a disadvantage.
Students are expected to be prompt for all class events. We have a lot of ground to cover and it is not possible do to so while waiting for stragglers. Students who are late for their presentations or a weekly status meeting will have their grade for that event reduced in proportion to the amount of time they are late (e.g., a student who is 5 minutes late to a 20 minute meeting will be able to earn a maximum of 75% of the points for that meeting). Quizzes will be available until 5 minutes after the scheduled start of class time -- if you are later than that, you have missed the quiz. Quizzes must be handed in by 10 minutes after the start of scheduled class time, regardless of whether students are late in arriving.
A working mid-term project and working final project are required to be awarded a grade in this course, regardless of point totals, even if they are submitted very late. If in the opinion of the course staff you do not make a good faith attempt to contribute to a working project, you will receive an "R". The course staff are the sole arbiters of this grading point, but of course we will discuss this issue with you if we see a problem developing and have no intention of surprising anyone with this clause.
If you wish to dispute a grade you must return the assignment along with a succinct written argument within one week after the graded materials have been returned to the class or grade for that item has been posted to Blackboard and made visible to you. Simple arithmetic errors in adding up grade totals and other obvious mechanical mistakes rather than questions of content are an exception, and can normally be handled verbally at office hours. Materials not handed back can be picked up from the course administrative assistant after grades are available on Blackboard.
It is the intent that letter grades will be primarily based on the student's ability to demonstrate mastery of the material presented in lecture and covered by labs, with no fixed quota of letter grades. If every student masters the material, then every student will get an A (although that has yet to happen in this course).
Please see additional information on the Project FAQ page.
Project assignments will normally be due at 11:59 PM on Thursday evenings. Extensions will normally not be given, and have occurred only once (due to a multi-hour afs outage) in the past. You should account for the possibility of problems such as minor facility disruptions, network outages to your off-campus residence, and travel obligations when planning your time, since these are normal and expected occurrances.
Students will be expected to bring a working writing implement (pen; pencil) and a calculator that can compute ex to all classes for use in quizzes. Spare writing implements and spare calculators will not be available. Sharing of calculators and writing implements is not permitted, and will be considered cheating because it is impractical to police whether answers are being passed as part of such sharing.
Please make sure assignments are legible. Graphing can be done by hand if desired, but must be to scale on graph paper (hand sketches on un-gridded paper are not acceptable). Concise answers are prefered over long rambling essays.
It is highly recommended that you get an early start on all assignments rather than waiting until the last minute. Projects especially have a way of taking longer than you expect. That having been said, we expect the average load for a median student to be about 12 hours per week for this course.
The University Policy on Cheating and Plagiarism applies, as amplified by the below points.
Students are not permitted to reference any notes, receive information from others, provide information to others, or otherwise have access to information not already in their own head during quizzes. No sharing of any physical items is permitted during quizzes. (Added Feb 19, 2009:) If multiple colors of paper are used for quizzes, you MUST have a DIFFERENT color quiz paper than either neighboring student on your left/right. Use of a same-colored paper as your neighbor will be considered compelling evidence of cheating. Please maintain color alternation by putting quizzes on unoccupied seats to accommodate any late arriving students.
Students are expected to share project information freely within their own group, but not outside their group except via officially required mechanisms such as in-class oral project reports. Reference to or use of any solution material from other groups, previous semesters, or other sources is specifically forbidden (even if you "found on the Web"). This includes any use of the solution, whether substantive, cosmetic, or incidental. If you make a mistake with regard to intellectual integrity issues, contact the course staff IMMEDIATELY as evidence that you are acting in good faith so that we can seek a reasonable outcome. If you are unsure, ask us. If you are unsure about being unsure, ask us (the course staff). If you make a mistake, come to the staff IMMEDIATELY (before the assignment is handed in) to explain the situation, and we will work out something if you are acting in good faith.
We take fraudulent representation of activities or attributions very seriously. This includes, but is not limited to, stating that student X did a part of a project when the majority of the work was really done by student Y. Additionally, a statement that a check or audit was completed when in fact that check or audit was substantially skipped is considered fraud. Fraud in an embedded software process can cause personal injury, property damage, harm to the environment, or even death. We consider fraud to be cheating in terms of this course.
Any instance of cheating will result in failure for the entire course (i.e., a grade of "R" for the course). Please take this warning to heart and don't cheat. We're very serious on this point. Students are reminded that cheating in multiple courses can be (and has been used as) grounds for suspension or even expulsion from the university.
Back to course home page.