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.

 


 Course prerequisites


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:

Spring_2010

Fall_2009

Spring_2009

Fall_2008


Instructors:

Mark McDermott
Office: ENS 36E

Phone: 471-3253
Office hours: Monday 17:30-18:15

Steven Smith

 


TA:

Hyunjin Kim

email:  hjkim at mail dot  utexas dot edu

Office Hours:

Wed: 7:00-9:00PM LRC

Sat: 3:00-5:00PM LRC

 

 


Reference Books:

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

 


Course outline and schedule:

 

Dates

Lecture Topic Instructor Lecture Notes HW Assignments LAB Assignments
Jan 24

Intro to Embedded Systems Architecture

McDermott

Lecture 1

HW #1

 

Due Feb 21

LAB #1

 

Due Feb 21

Instruction Set Architecture Design

 McDermott

Lecture 2

Jan 31

Processor Micro-Architecture Part 1

 McDermott

Lecture 3

Processor Micro-Architecture Part 2

 McDermott

Lecture 4

Feb 7
ARM Instruction Set Architecture

 McDermott

Lecture 5

ARM SW Programming

 McDermott

Lecture 6

Feb 14

Monitors, Bootloaders

McDermott

Lecture 7

 HW #2

 

Due Mar 7

LAB #2

 

Due Mar 21

Embedded Linux

McDermott

Lecture 8

Feb 21 Device Driver Development, Part 1 & 2 McDermott

Lecture 10

Lecture 9

Feb 28 Interrupts & Interrupt Handlers McDermott

Debugging Embedded Systems

McDermott

Lecture 11

Mar 7 Exam #1   McDermott     

LAB #3

 

Due Apr 25

I/O Subsystems

McDermott Lecture 12
Mar 21 SW Library Development Smith

Lecture 13

Real Time Operating Systems Smith

Lecture 14

Mar28

Embedded OS Middleware

Smith Lecture 15

Embedded Software Optimization &

Power Aware Programming

Smith

Lecture 16

Apr 4 Flash Memory & Flash File Systems McDermott

Lecture 17

 

 

 FPGA Architectures

McDermott

Lecture 18

Apr 11

Reconfigurable Micro-Architectures &

Hardware Acceleration

 McDermott

Lecture 19

Digital Signal Processor Architectures

 McDermott

Lecture 20

Apr 18 Blackfin Instruction Set Architecture

 McDermott

Lecture 21

Networks-on-Chips

 McDermott

Lecture 22

Apr 25

 Intelligent Sensors

McDermott 

Lecture 23

 

 

 

 

Exam #2

McDermott 

 

May 2 Project Presentations

McDermott 

 

 

 Grading:

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