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.

 


Course prerequisites

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

 


Teaching Assistant:

 

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

Extreme EDA

Lecture 1a

HW #1

 

SystemC Tutorial

Extreme EDA

Lecture 1b

Aug 22

8:00 - 12:00

Class Overview and Introduction

Gerstlauer

Lecture 0

Project Overview

Gerstlauer

Lecture 2a
Lecture 2b

Sep 18

8:00 - 12:00

Mapping High-Level Language Applications to Hardware

Smith

Lecture 3

HW #2

 

Transaction-Level Modeling & Electronic System-Level Languages

Smith

Lecture 4

Hardware Accelerators, Media Instructions, Co-processors

Smith

Lecture 5

Sep 19

8:00 - 12:00

System-Level Design Methodology

Gerstlauer

Lecture 6

Performance Analysis of Embedded Systems

McDermott

Lecture 7

HW/SW Co-Design

Gerstlauer

Lecture 8

Oct 16

8:00 - 12:00

High-Level Synthesis (C-to-RTL)

Gerstlauer

Lecture 9

HW #3
Viterbi Tutorial

 

Hardware Synthesis and Architecture Techniques

Gerstlauer

Lecture 10

Source-Level Optimizations

Gerstlauer

Lecture 11

Oct 17

8:00 - 12:00

Scheduling

Gerstlauer

Lecture 12

Resource Binding and Sharing

Gerstlauer

Lecture 13

C/C++ Synthesis

Gerstlauer

Lecture 14

Nov 13

8:00 - 11:00

Exam

Gerstlauer

Previous Exam Questions

 

11:00 - 12:00

System Integration

Smith

Lecture 15

Nov 14

8:00 - 12:00

Verification (HW/SW Co-verification)

Abraham

Lecture 16

Testing SoCs

Abraham

Lecture 17

Dec 3

8:00 - 12:00

Project Review

 

Dec 4

8:00 - 12:00

Project Review

 

 


Grading:

Homework: 15%

Exam:        20%

LABS:        30%

Project:      35%

 


Links

 

Link to Various SOC Articles

 

Link to Prof. Adnan’s VLSI Communications Class Notes

 

Link to System-C tutorials

 

Link to DRM Information

 

Link to AADL Information

 


 

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/ CMU Center for Silicon System Implementation

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, Englewood Cliffs, NJ, 1994.

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,

Readings in Hardware/Software Co-Design,

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 (Italy) 1998

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, E. Deprettere, K. Vissers (Edited by: L. G. Chen, H. M. Hang, I. Kuroda)

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, Austin, October, 1999, pp.2-12

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, Las Vegas, Nevada, USA

J. Burch, R. Passerone, A. Sangiovanni-Vincentelli

Overcoming Heterophobia: Modeling Concurrency in Heterogeneous Systems

Proceedings of Application of Concurrency to System Design, Newcastle, UK, 2001

A. Pinto, L. Carloni, A. Sangiovanni-Vincentelli

Constrait-Driven Communication Synthesis

Proceedings of DAC 2002, June 10-14, 2002, New Orleans, LA, USA

 

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 Symposium, Madrid, Spain, December, 1998

R. Belschner, et al.

FlexRay Requirements Specification

http://www.flexray.com

 

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, New Orleans, LA, June

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, Trento, Italy, July 1999.

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, Lake Tahoe, CA, USA, Oct. 8-10, 2001

E. A. Lee, Y. Xiong

System-Level Types for Component-Based Design

Proceedings of First Workshop on Embedded Software, EMSOFT2001, Lake Tahoe, CA, USA, Oct. 8-10, 2001

 

UML in Embedded System Design

G. Booch, J. Rumbaugh, I. Jacobson

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, Copenhagen, April 2001, pp.23-28

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, Marseille, France, September 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, Grenoble, France, October, 2002

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, University of California, Berkeley, March, 2001

 

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, Anaheim, CA, usa, 9-13 June 1997

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, I. Bolsens, H. De Man

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