ECE 56800 - Embedded SystemsLecture Hours: 3 Credits: 3
Normally Offered: Each Spring
This course provides an introduction to the design of embedded and ubiquitous computing systems including their hardware and software architectures, design methodologies and tools, and communication protocols. The lectures are organized into three parts namely, (a) basic design principles including specification and modeling, hardware components and platforms, software organization, embedded and real-time operating systems, interfacing with external environments using sensors and actuators, and communication in distributed embedded systems, (b) advanced topics such as energy management, safety and reliability, and security, and (c) case-studies of real-world systems from a variety of embedded application domains such as biomedical devices, smart cards and RFID, networked sensors, personal computing devices, home appliances and electronics, mobile robotics, etc. In addition to hands-on programming assignments using off-the-shelf embedded system development kits, the course will feature a comprehensive project where students will design, implement, and evaluate a prototype embedded system.
To introduce students to the design issues of embedded systems.
The final project, done in teams of two or three, will involve the design, implementation, and evaluation of an embedded system. Projects can be hardware based, software based, or even about proving the theoretical properties of a design. A good project should address the following aspects: target applications, related existing solutions, new features and limitations of the design, technological and economic feasibility.
- There is no text book. Assigned readings will be distributed..
- Embedded System Design: A Unified Hardware/Software Introduction, Frank Vahid and Tony Givargis, John Wiley and Sons, 2001, ISBN No. 04711386782.
- High-Performance Embedded Computing: Architectures, Applications, and Methodologies, Wayne Wolf, Morgan Kaufmann Publishers, 2006, ISBN No. 012369485.
Learning Outcomes:A student who successfully fulfills the course requirements will have demonstrated an ability to:
- design simple embedded systems. [1,2]
- choose effective communication for embedded systems. 
- analyze real-time scheduling algorithms. 
- identify design flaws. [1,6]
|1||Introduction to embedded systems, overview of the design flow|
|1||Embedded system specification and modeling|
|1||Embedded hardware platforms and peripherals|
|1||Interfacing to the external world through sensors and actuators|
|1||Design and synthesis of ASIC hardware|
|1||Software organization, scheduling, and execution|
|1||Embedded and real-time operating systems|
|1||Wired communication and bus protocols|
|1||Basics of wireless communication and embedded networking|
|2||Energy management and low-power design|
|1||Safety and reliability in embedded systems|
|1||Secure embedded system design|
|1||Case studies: Low-end systems (medical devices, smart cards, sensors)|
|1||Case studies: High-end systems (automobiles, home electronics, robotics)|
|Final||Project presentations and demonstrations|
Engineering Design Content:
Engineering Design Consideration(s):