When will the three courses be offered?
18-348: was offered by Prof. Koopman in Fall 2006 and Fall
2007.
18-349: has been offered by Prof. Narasimhan in Fall 2002, Fall
2003, Fall 2004, Fall 2005, Fall 2007 and Fall 2008.
Changes: As of Fall 2009, 18-349 and 18-348 will
alternate, so that each course will be offered every other
Fall. 18-349 will not be taught in Fall 2009.
18-549: has been offered by Prof. Narasimhan in Spring 2007,
Spring 2008, and will be offered by her in Spring 2009.
What is the difference between 18-348 and 18-349?
18-348
will focus on 8-bit microcontrollers while 18-349 will focus on
16/32/64-bit high-end embedded processors. The current version of
18-349 will be using the ARM processor (that you find in your
videogames, cell-phones, etc.) for the labs in the course. The course
content in 18-349 will also expose students to real-time concepts.
What will the 18-349 labs involve?
18-349 will involve
a sequence of labs exercises, with the high point being students
building a realistic, real-time operating system running on an
embedded processor. The remaining labs will involve
interrupt-handling, concurrency, device drivers, handling I/O, flash
memory. and building a Whack-A-Mole game to explore some of these
issues.
What hardware will 18-349 use?
18-349 will use the
ubiquituous ARM processor, which is found in iPods, GameBoys,
PlayStation 3, GPS devices (e.g., Garmin StreetPilot), phones (e.g.,
Motorola A1200 Ming), etc. There are several ARM-powered
products in the market. Learning to work with the ARM processor
allows you to write programs for these sorts of devices. As of Fall 2007,
we switched to using the Gumstix ARM processor.
Would I ever want to take both 18-348 and 18-349?
Both
8-bit microcontrollers and 16/32/64-bit high-end embedded processors
have their place in the field of embedded systems. The 8-bit
microcontrollers find their use in thermostats, elevators, etc. The
16/32/64-bit high-end processors find their use in portable gaming
devices, PDAs, cell-phones, etc. In fact, automobiles contain both
kinds of processors. So, students interested in both ends of the
embedded-system spectrum are likely to find it worthwhile to take both
courses.
Can I get into 18-549 through either 18-348 or 18-349?
Yes. Either 18-348 or 18-349 can serve as a pre-requisite for 18-549.
Is 18-549 different in content?
Yes, as of Spring 2007. The
newly redesigned version of 18-549 involves a hands-on project using
real hardware. Students are expected to come in having taken either
18-348 or 18-349. The capstone project involves the use of
8/16/32/64-bit embedded processors, based on your familiarity and
previous experience with the specific embedded platform. Students are
allowed to propose capstone projects of their own choice and design,
in the form of teams. Thus, the project is not necessarily be
identical across all teams. The entire semester is then spent on
completing the 15-week project as an immersive industrial design
project, with lecture content to help out with the project, as
needed. There are no final or mid-term exams in this course. Examples of 18-549
projects are available on the course website.
Will 15-410 still be an alternative pre-requisite for
18-549?
For the Spring 2007 offering of 18-549, we allowed
15-410 as a pre-requisite. For future versions of 18-549 (starting
Spring 2008), only one of the two (18-348 or 18-349) will be allowed
as a pre-requisite. 15-410 will no longer be a pre-requisite for
18-549, as of Spring 2008.