Spring 2011
EE 382N-4 Unique: 17035
Advanced Embedded Systems Architecture
Class meets on Monday 18:30 -21:30
Room: ENS 127
Course Goals:
This course focuses on the HW/SW architectures of “System-on-a-Chip (SoC) implementations. These SoC’s are composed of hardware and software components which must be seamlessly integrated together to produce working “Systems-on-Chip” (SoC) or “Systems-in-Package” (SiP). These systems are becoming increasingly complex utilizing micro-architectural features from high performance computing platforms and operating systems such as Linux and Windows. The topics covered will remain focused on HW/SW design of embedded systems with an added focus of design optimization across the multiple design metrics such as power, cost, reusability, time to volume, performance, security, and robustness. This course will provide a working knowledge in both HW and SW architectures such that the student will be able to determine where to make multi-metric optimizations across these two domains.
EE 360N undergraduate Computer Architecture, or an equivalent undergraduate computer architecture class.
Basic high level language programming skills such as C or C++ (not Java)
Some assembly language programming skills (ARM)
Some familiarity with Linux programming
Class Projects
The class projects can encompass a wide range of embedded applications including: RTOS porting, Linux Kernel development, feedback control systems, JTAG debuggers, etc. Here are the presentations from previous semester projects:
Mark McDermott
Office: ENS
36E
Phone: 471-3253
Office hours: Monday 17:30-18:15
Steven Smith
Hyunjin Kim
email: hjkim at mail dot utexas dot edu
Office Hours:
Wed: 7:00-9:00PM LRC
Sat: 3:00-5:00PM LRC
Wayne Wolf Computers as Components: Principles of Embedded Computing System Design, 2nd Edition, Morgan Kaufman Publishers, 2008
John Shen, Mikko Lipasti Modern Processor Design
Sreekrishnan Venkateswaran Essential Linux Device Drivers (Prentice Hall Open Source Software Development Series)
Karim Yaghmour Building Embedded Linux Systems
Wayne Wolf, HighHigh-Performance Embedded Computing: Architectures, Applications, and Methodologies
|
Dates |
Lecture Topic | Instructor | Lecture Notes | HW Assignments | LAB Assignments |
Jan 24 |
Intro to Embedded Systems Architecture |
McDermott |
Due Feb 21 |
Due Feb 21 |
|
|
Instruction Set Architecture Design |
McDermott |
||||
Jan 31 |
Processor Micro-Architecture Part 1 |
McDermott |
|||
| Processor Micro-Architecture Part 2 |
McDermott |
||||
Feb 7 |
ARM Instruction Set Architecture |
McDermott |
|||
|
ARM SW Programming |
McDermott |
||||
| Feb 14 |
Monitors, Bootloaders |
McDermott |
Due Mar 7 |
Due Mar 21 |
|
| Embedded Linux |
McDermott |
||||
| Feb 21 | Device Driver Development, Part 1 & 2 | McDermott | |||
| Feb 28 | Interrupts & Interrupt Handlers | McDermott | |||
|
Debugging Embedded Systems |
McDermott |
||||
| Mar 7 | Exam #1 | McDermott |
Due Apr 25 |
||
|
I/O Subsystems |
McDermott | Lecture 12 | |||
| Mar 21 | SW Library Development | Smith | |||
| Real Time Operating Systems | Smith | ||||
| Mar28 |
Embedded OS Middleware |
Smith | Lecture 15 | ||
|
Embedded Software Optimization & Power Aware Programming |
Smith | ||||
| Apr 4 | Flash Memory & Flash File Systems | McDermott |
|
||
|
FPGA Architectures |
McDermott |
||||
| Apr 11 |
Reconfigurable Micro-Architectures & Hardware Acceleration |
McDermott |
|||
| Digital Signal Processor Architectures |
McDermott |
||||
| Apr 18 | Blackfin Instruction Set Architecture |
McDermott |
|||
| Networks-on-Chips |
McDermott |
||||
| Apr 25 |
Intelligent Sensors |
McDermott |
Lecture 23 |
|
|
|
Exam #2 |
McDermott |
|
|||
| May 2 | Project Presentations |
McDermott |
Homework 10% Labs 30% Exam #1 15% Exam #2 15% Project 30%
Late Submission Penalties:
Penalty for late submission of homework and class project:
25% per working day. (Maximum: 100%).
Computer Lab:
The computer lab is located in ENS 113A. Access will be provided by the TA
Web Resources
Linux Devices: http://www.linuxdevices.com
Embedded Linux Journal: http://embedded.linuxjournal.com
Embedded.com: http://www.embedded.com/
Circuit Cellar: http://www.circuitcellar.com/
Electronic Design Magazine: http://electronicdesign.com/
Berkeley Design technology, Inc.: http://www.bdti.com
DSP Guru: http://www.dspguru.com/
EEMBC: http://www.eembc.org/home.php
EE Times Magazine: http://www.eet.com/
Sensors Magazine: http://www.sensorsmag.com
Embedded Systems Tutorial: http://www.learn-c.com/
Collections of embedded systems resources
http://www.ece.utexas.edu/~bevans/courses/ee382c/resources/
http://www.ece.utexas.edu/~bevans/courses/realtime/resources.html
Articles that support lecture material:
M. Schlett, “Trends in embedded-microprocessor design,” IEEE Computer, vol. 31, no. 8, pp. 44-49, Aug. 1998.
J. Fridman and Z Greenfield, “The TigerSHARC DSP architecture,” IEEE Micro, vol. 20, no. 2, pp. 66 -76, 2000
Y. Lin, H. Lee, M. Woh, Y. Harel, S. Mahlke, T. Mudge, C. Chakrabarti, and K. Flautner, “SODA: A Low-power Architecture For Software Radio,” Proceedings of the 33rd International Symposium on Computer Architecture, pp. 89-100, June 2006.
M. J. Schulte, J. Glossner, S. Jinturkar, M. Moudgill, S. Mamidi, and S. Vassiliadis, "A Low-Power Multithreaded Processor for Software Defined Radio," Journal of VLSI Signal Processing Systems, vol. 43, No. 2/3, pp. 143-159, June 2006.
C. Kozyrakis, C. and D. Patterson, “Vector vs. superscalar and VLIW architectures for embedded multimedia benchmarks,” Proceedings of the 35th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 283-293, Nov. 2002.
M. Gschwind, H. P. Hofstee, B. Flachs, M. Hopkins, Y. Watanabe, and T. Yamazaki, “Synergistic Processing in Cell's Multicore Architecture, IEEE Micro, vol. 26, no 2, pp. 10-24, March-April 2006
B. Khailany, W. J. Dally, U. J. Kapasi, P. Mattson, J. Namkoong, J. D. Owens, B. Towles, A. Chang, and S. Rixner, “Imagine: media processing with streams,” IEEE Micro, vol. 21, no. 2, pp. 35-46, 2001
M. Adiletta, M. Rosenbluth, D. Bernstein, G. Wolrich, and H. Wilkinson, “The next generation of Intel IXP network processors,” Intel Technology Journal, vol. 6, no. 3, August 2002.
P. Faraboschi, G. Brown, J. A. Fisher, G. Desoli, and F. Homewood. "Lx: A Technology Platform for Customizable VLIW Embedded Processing," Proceedings of International Symposium of Computer Architecture, pp. 203-213, June 2000.
R. E. Gonzalez, “Xtensa: a configurable and extensible processor,” IEEE Micro, vol. 20, no. 2, pp. 60-70, 2000.
N. Clark, J. Blome, M. Chu, S. Mahlke, S. Biles, and K. Flautner, “An Architecture Framework for Transparent Instruction Set Customization in Embedded Processors,” Proceedings of the 32nd International Symposium on Computer Architecture, pp. 272-283, June. 2005.
S. Vassiliadis, S. Wong, G. N. Gaydadjiev, K. Bertels, G.K. Kuzmanov, E. Moscu Panainte, “The Molen Polymorphic Processor,” IEEE Transactions on Computers, vol. 53, no. 11, pp. 1363- 1375, November 2004.
L. Chakrapani, J. Gyllenhaal, W. Hwu, S. Mahlke, K. Palem, and R. Rabbah, “Trimaran: An Infrastructure for Research in Instruction-Level Parallelism,” Lecture Notes in Computer Science, Springer-Verlag, vol. 3602, pp. 32-41, August 2005. (trimar
R. Leupers, M. Hohenauer, J. Ceng, H. Scharwaechter, H. Meyr, G. Ascheid, and G. Braun2, “Retargetable compilers and architecture exploration for embedded processors,” IEE Proceedings - Computers and Digital Techniques, vol. 152, no. 2, pp. 209-223, March 2005. (retargetable-compilers-architectures.pdf)
Y. Xie, W. Wolf, H. Lekatsas, “A Code Decompression Architecture for VLIW Processors,” 34th Annual International Symposium on Microarchitecture, pp. 66-75, 2001. (decompression.pdf)
V. J. Moone and D. M. Blough, “A hardware-software real-time operating system framework for SoCs, IEEE Design & Test of Computers, vol. 19, no. 6, pp. 44-51, Nov/Dec 2002. (rtos-soc.pdf)
A. Finkelstein and J. Kramer. Software Engineering: A Roadmap. In The Future of Software Engineering, Anthony Finkelstein (Ed.), pp. 5-22, ACM Press 2000.
M. Mikic-Rakic and N. Medvidovic. Architecture-Level Support for Software Component Deployment in Resource Constrained Environments. In Proceedings of the IFIP/ACM Working Conference on Component Deployment (CD 2002), Berlin, Germany, June 20-21, 2002.
M. Mikic-Rakic, S. Malek, and N. Medvidovic. A Style-Aware Architectural Middleware for Resource-Constrained, Distributed Systems. Technical Report USC-CSE-2004-508, June 2004.
N. Medvidovic, M. Mikic-Rakic, N Mehta, and S. Malek. Software Architectural Support for Handheld Computing. IEEE Computer – Special Issue on Handheld Computing, September 2003.
C. Mattmann, S. Malek, N. Beckman, M. Mikic-Rakic, N. Medvidovic, and D. Crichton. GLIDE: A Grid-based Lightweight Infrastructure for Data-intensive Environments. Technical Report USC-CSE-2004-509, August 2004.
E. A. Lee. Embedded Software. In Advances in Computers, Ed Zelkowitz (Ed), Academic Press, 2002.
J. A. Stankovic et al. Strategic Directions in Real-Time and Embedded Systems. ACM Computing Surveys, vol. 28, no. 4, pp. 751-763, December 1996.
B. Nuseibeh and S. Easterbrook. Requirements Engineering: A Roadmap. In The Future of Software Engineering, Anthony Finkelstein (Ed.), pp. 37-46, ACM Press 2000.
R. R. Lutz. Analyzing Software Requirements Errors in Safety-Critical, Embedded Systems. In Proceedings of the IEEE International Symposium on Requirements Engineering, 1993.
D. Garlan. Software Architecture: A Roadmap. In The Future of Software Engineering, Anthony Finkelstein (Ed.), pp. 93-101, ACM Press 2000.
© Copyright 2008-2011 Mark McDermott