Fall 2009
EE 382V - System-on-a-Chip (SoC) Design - ICS
Unique: 17248
NOTE: ECD only - no auditors
Course goals:
This course is designed to:
Provide an understanding of the concepts, issues, and process of System-on-Chip (SoC) design, i.e., hardware-software co-design & co-verification.
Expose the student to the modeling and specification of an SoC at a high level of abstraction.
Use co-simulation to validate system functionality.
Analyze the functional and nonfunctional performance of the system early in the design process to support design decisions.
Analyze hardware/software tradeoffs, algorithms, and architectures to optimize the system based on requirements and implementation constraints.
Describe architectures for control-dominated and data-dominated systems and real-time systems.
Understand hardware, software, and interface synthesis.
Understand issues in interface design.
Describe examples of applications and systems developed using a co-design approach.
Appreciate
issues in system-on-a-chip design associated with co-design, such as
intellectual property, reuse, and verification.
Student should have a
working knowledge of C and C++ including software development and debugging. It
is helpful to have some basic knowledge of communication systems, The class
project involves taking public domain C++ code for a DRM (Digital Radio Mondiale) PC based system and
mapping it to an ARM-based FPGA platform.
Suggested Reference Books
D. Black, J. Donovan, SystemC: From the Ground Up, Springer
R. Zurawski (Editor), Embedded Systems Handbook, CRC Press
D. Gajski, S. Abdi, A. Gerstlauer, G. Schirner, Embedded System Design: Modeling, Synthesis, Verification, Springer
G. De Micheli, Synthesis and Optimization of Digital Circuits, McGraw-Hill
T. Noergaard, Embedded Systems Architecture: A Comprehensive Guide for Engineers and Programmers, Newnes
B. Eckel, Thinking in C++, 2nd Edition, Prentice Hall
Instructors:
Andreas Gerstlauer --
Office hours: By appointment
Mark McDermott --
Office hours: By appointment
Steven Smith --
Office hours: By appointment
Jacob Abraham --
Office hours: By appointment
Hyungman Park <hpark@cerc.utexas.edu> -
Office
hours: Sunday 2-4pm, ENS113A
Sriram Sambamurthy -
Office
hours: By appointment
Lab
Assignments:
Class Project:
Tentative course outline and schedule:
Dates |
Time |
Lecture Topic |
Instructor |
Lecture Notes |
HW Assignments |
Aug 21 |
8:00 - 12:00 |
C++ Tutorial |
|
||
SystemC Tutorial |
|||||
Aug 22 |
8:00 - 12:00 |
Class Overview and Introduction |
Gerstlauer |
||
Project Overview |
Gerstlauer |
||||
Sep 18 |
8:00 - 12:00 |
Mapping High-Level Language Applications to Hardware |
Smith |
|
|
Transaction-Level Modeling & Electronic System-Level Languages |
Smith |
||||
Hardware Accelerators, Media Instructions, Co-processors |
Smith |
||||
Sep 19 |
8:00 - 12:00 |
System-Level Design Methodology |
Gerstlauer |
||
Performance Analysis of Embedded Systems |
McDermott |
||||
HW/SW Co-Design |
Gerstlauer |
||||
Oct 16 |
8:00 - 12:00 |
High-Level Synthesis (C-to-RTL) |
Gerstlauer |
|
|
Hardware Synthesis and Architecture Techniques |
Gerstlauer |
||||
Source-Level Optimizations |
Gerstlauer |
||||
Oct 17 |
8:00 - 12:00 |
Scheduling |
Gerstlauer |
||
Resource Binding and Sharing |
Gerstlauer |
||||
C/C++ Synthesis |
Gerstlauer |
||||
Nov 13 |
8:00 - 11:00 |
Exam |
Gerstlauer |
|
|
11:00 - 12:00 |
System Integration |
Smith |
|||
Nov 14 |
8:00 - 12:00 |
Verification (HW/SW Co-verification) |
Abraham |
||
Testing SoCs |
Abraham |
||||
Dec 3 |
8:00 - 12:00 |
Project Review |
|
|
|
Dec 4 |
8:00 - 12:00 |
Project Review |
|
|
Homework: 15%
Exam: 20%
LABS: 30%
Project: 35%
Links
Link to Prof. Adnan’s VLSI Communications Class Notes
Other useful web pages
http://www.gigascale.org/metropolis/ Gigascale Website
http://embedded.eecs.berkeley.edu/giotto/ Giotto
Website
http://www-cad.eecs.berkeley.edu/Respep/Research/asves/
AS-V’s Website
http://bwrc.eecs.berkeley.edu/
Berkeley Wireless Research Center Website
http://www-sop.inria.fr/esterel.org/
Estrerel programming language Website
http://www.cecs.uci.edu/
UC Irvine Center for Embedded Computer Systems
http://www.cecs.uci.edu/pub_tech_reports.htm UCI Technical reports
http://www.cs.ucr.edu/content/esd/
Embedded system design text book slides
http://www.ece.cmu.edu/~cssi/
http://www.cs.ucr.edu/~harry/classes_files/CS269_02/papers/
General Reference
G. De Micheli, editor
Special Issue on Hardware/Software Co-design
Proceedings of IEEE, Vol 85, No. 3, March 1997.
D. D. Gajski, F. Vahid, S. Narayan, J. Gong
Specification and Design of Embedded Systems,
Prentice Hall,
J. Staunstrup and W. Wolf, editors
Hardware/Software Co-Design: Principles and Practice
Kluwer Academic Publishers, 1997.
G. DeMicheli, R. Ernst, and W. Wolf, editors,
Academic Press, 2002.
Friedrich
Mayer-Lindenberg
Dedicated Digital Processors: Methods in Hardware/Software
Co-design
John Wiley and Sons, February 2004
http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470844442.html
Design of Embedded
Systems
S. Edwards, L. Lavagno, E. Lee, A. Sangiovanni-Vincentelli
Design of Embedded Systems: Formal Methods, Validation and
Synthesis
Proceedings of the IEEE, vol. 85 (n.3) - March 1997, p366-290
R. B. Ortega L. Lavagno, G. Borriello
Models and Methods for HW/SW Intellectual Property Interfacing
1998 NATO ASI Proceedings on System Synthesis, Il Ciocco (
J. Young, J. MacDonald, M. Shilman, A. Tabbara, P. Hilfinger and
R. Newton
Design and Specification of Embedded Systems in Java Using
Successive, Formal
Refinement
Proceedings of Design Automation Conference 1998, p70-75
Architecture
P. Lieverse, P. van der Wolf,
A methodology for architecture exploration of heterogeneous signal
processing systems
1999 IEEE Workshop on Signal Processing Systems. SiPS 99. Design
and Implementation
J. Hill, R. Szewczyk, A. Woo, S. Hollar, D. Culler, K. Pister
System architecture directions for network sensors
ASPLOS 2000
Scheduling
C. L. Liu, J. W. Layland
Scheduling algorithms for multiprogramming in a hard-real-time
environment
Journal of the Association for Computing Machinery, vol.20,
(no.1), Jan. 1973
Page 3 of 8 Relevant Publications
F. Balarin, L. Lavagno, P. Murthy, and A. Sangiovanni-Vincentelli
Scheduling for Embedded Real-Time Systems
IEEE Design and Test of Computers 1998
Software Estimation and
Software Synthesis
K. Suzuki and A. Sangiovanni-Vincentelli
Efficient Software Performance Estimation Methods for
Hardware-Software Codesign
Proceedings of Design Automotion Conference 1996, pp266-290
P. K. Murthy, S. S. Bhattacharyya, and E. A. Lee,
Joint Minimization of Code and Data for Synchronous Dataflow Programs
Journal of Formal Methods in System Design, Vol. 11, No. 1,
pp41-70, July 1997.
Y.-T. S. Li, S. Malik
Performance analysis of embedded software using implicit path
enumeration
IEEE Transactions on Computer-Aided Design of Integrated Circuits
and Systems, Dec. 1997, vol. 16, (no.12):1477-87
P. G. Paulin, C. Liem, M. Cornero, F.
Nacabal, G. Goossens
Embedded software in real-time signal processing systems:
application and architecture trends
Proceedings of the IEEE, vol. 85, (no.3), IEEE, March 1997, p.
419-35
G. Goossens, J. Van Praet, D. Lanneer, W.
Geurts, A. Kifli, C. Liem, P. G. Paulin
Embedded software in real-time signal processing systems: design
technologies
Proceedings of the IEEE, vol. 85, (no.3), IEEE, March 1997, p.
436-54
Balarin, F.; Chiodo, M.; Giusto, P.; Hsieh,
H.; Jurecska, A.; Lavagno, L.; Sangiovanni- Vincentelli, A.;Sentovich, E.M.;
Suzuki, K.
Synthesis of software programs for embedded control applications
IEEE Transactions on Computer-Aided Design of Integrated Circuits
and Systems, vol.18, (no.6), IEEE, June 1999. pp834-849
Platform-based Design
A. Sangiovanni-Vincentelli, A. Ferrari
System Design - Traditional Concepts and New Paradigms
Proceedings of ICCD 99,
K. Keutzer, A. R. Newton, J. Rabaey, A.
Sangiovanni-Vincentelli
System-level design: orthogonalization of concerns and
platform-based design
IEEE Transactions on Computer-Aided Design of Integrated Circuits
and Systems, vol.19, (no.12), IEEE, Dec. 2000 Page 4 of 8 Relevant Publications
A. Sangiovanni-Vincentelli
Defining Platform-based Design
EEDesign, February, 2002
Communication-based Design
A. Sangiovanni-Vincentelli, M. Sgroi, L.
Lavagno
Formal Models for Communication-based Design
Proceedings of CONCUR 2000, August, 2000
M. Sgroi, M. Sheets, A. Mihal, K. Keutzer, S. Malik, J. Rabaey, A.
Sangiovanni-Vincentelli
Addressing the System-on-a-Chip Interconnect Woes Through
Communication-Based Design
Proceedings of DAC 2001, June 18-22, 2001,
J. Burch, R. Passerone, A.
Sangiovanni-Vincentelli
Overcoming Heterophobia: Modeling Concurrency in Heterogeneous
Systems
Proceedings of Application of Concurrency to System Design,
A. Pinto, L. Carloni, A.
Sangiovanni-Vincentelli
Constrait-Driven Communication Synthesis
Proceedings of DAC 2002, June 10-14, 2002,
TTP and FlexRay
Kopetz, H.; Grunsteidl, G.
TTP - A Protocol for Fault-Tolerant Real-Time Systems
Computer, vol.27,(no.1), Jan. 1994. p.14-23
H. Kopetz
The Time-Triggered Model of Computation
19th IEEE Systems
R. Belschner, et al.
FlexRay Requirements Specification
Interface-Based Design
J. Rowson and A. Sangiovanni-Vincentelli
Interface-based Design
Proceedings of Design Automation Conference 1997, pag. 178-183.
Page 5 of 8 Relevant Publications
R. Passerone, J. Rowson and A. Sangiovanni-Vincentelli
Automatic Synthesis of Interfaces between Incompatible Protocols
Proceedings of Design Automation Conference 1998, pag. 8-13
P. Chou, K. Hines, R. Ortega, K. Partridge, G. Borriello.
ipChinook: An Integrated IP-based Design Framework for Distributed
Embedded Systems
Proceedings of the 36th ACM/IEEE Design Automation Conference,
1999.
L. P. Carloni, Kenneth L. McMillan, Alexander
Saldanha, Alberto L. Sangiovanni-Vincentelli.
A Methodology for Correct-by-Construction Latency Insensitive
Design
Proceedings of the Internaltional Conference on Computer-Aided
Design, 1999.
L. P. Carloni, Kenneth L. McMillan, Alberto
L. Sangiovanni-Vincentelli.
Latency Insensitive Protocols
Proceedings of the 11th International Conference on Computer-Aided
Verification,
R. Passerone, L. Alfaro, T. A. Henzinger, A.
Sangiovanni-Vincentelli
Convertibility Verification and Converter Synthesis: Two Faces of
the Same Coin
International Conference on Computer Aided Design 2002, November,
2002
Component-based Design
L. de Alfaro, T.A. Henzinger
Interface Theories for Component-Based Design
Proceedings of First Workshop on Embedded Software, EMSOFT2001,
E. A. Lee, Y. Xiong
System-Level Types for Component-Based Design
Proceedings of First Workshop on Embedded Software, EMSOFT2001,
UML in Embedded System
Design
G. Booch, J. Rumbaugh,
The Unified Modeling Language User Guide
Addison-Wesley, c1999 (This is a book)
G. Martin, L. Lavagno, J. Louis-Guerin
Embedded UML: a merger of real-time UML and co-design
Proceedings of CODES 2001,
R. Chen, M. Sgroi, G. Martin, L. Lavagno, A.
Sangiovanni-Vincentelli, J. Rabaey
Embedded System Design Using UML and Platforms
Page 6 of 8 Relevant Publications
Proceedings of FDL 2002,
Design Methodologies and
Tools
Metropolis
F. Balarin, L. Lavagno, C. Passerone, A.
Sangiovanni-Vincentelli, M. Sgroi, Y. Watanabe
Modeling and Designing Heterogeneous Systems
Advances in Concurrency and System Design, Springer-Verlag, 2002
F. Balarin, L. Lavagno, C. Passerone, Y.
Watanabe
Processes, interfaces and platforms. Embedded software modeling in
Metropolis
Proceedings of EMSOFT'02,
J. R. Burch, R. Passerone, A. L.
Sangiovanni-Vincentelli
Using Multiple Levels of Abstractions in Embedded Software Design
Proceedings of the second International Conference on Application
of Concurrency to System Design, June, 2001
Polis
F. Balarin, M. Chiodo, A. Jurecska, H. Hsieh,
A. L. Lavagno, C. Passerone, A. Sangiovanni-Vincentelli, E. Sentovich, K.
Suzuki, B. Tabbara
Hardware-Software Co-Design of Embedded Systems: The Polis Approach
Kluwer Academic Press, June 1997.
Ptolemy
E. A. Lee
Overview of the Ptolemy Project
Technical Memorandum UCB/ERL M01/12,
Scenic
S. Liao, S. Tjiang, R. Gupta
An efficient implementation of reactivity for modeling hardware in
the Scenic design environment
Proceeding of the 34th Design Automation Conference,
R. K. Gupta, S. V. Liao
Using a programming language for digital system design
IEEE Design and Test of Computers, April-June 1997, vol. 14, (no.
2):72-80
CoWare
D. Verkest, K. Van Rompaey,
CoWare - a design environment for heterogeneous hardware/software
systems
Design Automation for Embedded Systems, Oct. 1996, vol. 1,
(no.4):357-86.
Page 7 of 8 Relevant Publications
I. Bolsens, H. J. De Man, B. Lin, K. Van Rompaey, and others
Hardware/software co-design of digital telecommunication systems
Proceedings of the IEEE, March 1997, vol. 85, (no. 3):391-418.
© Copyright
2001 - 2009 Mark McDermott