You are on page 1of 18

VLSI Design Automation

Introduction

http://sist.shanghaitech.edu.cn/faculty/zhoupq/Teaching/Spr16/eda.html
Logistics
 Course page:
http://sist.shanghaitech.edu.cn/faculty/zhoupq/Teaching/Spr16/eda.html
 Time: Monday/Thursday, 3:00-4:40pm
 Location: H2-315

 Instructor: Pingqiang Zhou


 Email: zhoupq@shanghaitech.edu.cn
 Office hour: Thursday, 5:00 – 6:00 pm, or by appointment
 Venue: H2-213.
 TA
 Still looking for …

2
Textbook for Reference (Not Required)
 “Electronic Design Automation: Synthesis,
Verification, and Test (Systems on Silicon),” by
Laung-TerngWang,Yao-Wen Chang, and Kwang-
Ting Cheng, Morgan Kaufmann Publishing, 2009.

 “Logic Synthesis and Verification Algorithms,” by


Gary Hachtel and Fabio Somenzi, Springer
Publishing,1996.
 “VLSI Physical Design Automation,” by Sadiq Sait
and Habib Youssef, World Scientific Publishing,
1999.

3
Grading
 Composition (tentative)
 5 written assignments: 20%
 2 programming assignments: 30%
 2 paper reviews: 20%
 Final exam or project: 30%

 Questions about the grading?


 Must contact the instructor within one week after receiving the
item.

4
Rules
 Each written assignment must be turned in before class on each
due date.
 Each programming assignment (PA) must be turned in by 11:59
pm on the due date to be accepted for full credit.
 However, we still allow you to submit your PA within 3 days after the
due date, but there is a late penalty.
Hours Late Scaling Factor
(0, 24] 80 %
(24, 48] 60 %
(48, 72] 40 %
 No PA will be accepted if it is more than 3 days late!
 You can discuss homework with your classmates. BUT what you
submit must be your own work.
5
Suggestions
 Read the lecture notes before & after the lecture

 Taking notes in class is a good idea.

 Start your programming assignment early!


 Back up your code frequently in case your computer crashes.

6
What Background Do You Need?
 Computer science  Mathematics
 Basic programming skills  Discrete mathematics: basic
(C/C++) sets, Boolean logic,
 Data structures and algorithms combinatorics
 Exposure to graph theory is
nice but not essential
 Computer engineering
 Continuous: basic calculus,
 Basic digital design (gates, flip
linear algebra, matrix
flops, Boolean algebra)
 Combinational and sequential
logic design  Basic VLSI knowledge
 Some chip layout exposure is
7
nice, but not essential
What’s this Course About?
 Computer-aided design (CAD) tools for very large scale
integrated (VLSI) circuits.
 Indeed, we focus on the algorithms.
 CAD is also known as electronic design automation (EDA).

VLSI CAD tools

8
What is The Class NOT About?
 It is NOT a circuit class – although we will mention circuits
many times
 Not a digital design or VLSI design class, in the sense that we
design a system or a chip

 Instead, we design software for CAD tools


 But it is not just a hacking class: there is some nontrivial math to
explain what our CAD tools are doing

9
You should be taking this course if
 you are interested in building VLSI design tools;

 you are interested in designing VLSI chips, and you want to know
why the tools do what they do;

 you just like cool algorithms, that work on big cool problems that
involve bits, and gates, and geometry, and graphs, and matrices,
and time, and...

10
IC Design Steps
High-Level Register-Transfer-
Specifications Level Description
Description

SystemC Verilog
SystemVerilog VHDL

module mux( input a,


input b, input sel,
output z, output zbar);
assign z = sel ? b : a;
assign zbar = z;
endmodule
11
IC Design Steps
High-Level Register-Transfer-
Specifications Level Description
Description

Fabrication Physical Design Gate Level Design

12
Two Major Components of this Course

High-Level Register-Transfer-
Specifications Level Description
Description

Logic Synthesis
Layout Synthesis

Fabrication Physical Design Gate Level Design

13
The Focus of Our Course
 Start with some Boolean / logic
Logic Synthesis design description …
 …end with gates+wires, located at
Logic Verification (x,y) coordinates on chip

Layout Synthesis  Big goals


 Explain the critical algorithms, data
Timing Verification structures, and modeling assumptions
used in each of these big steps

14
Course Topics (Tentative)
 Basic algorithms and complexity theory
 Logic Synthesis
 Computational Boolean Algebra
 Binary Decision Diagram (BDD)
 Boolean Satisfiability
 Two-Level Logic Synthesis
 Multi-Level Logic Synthesis
 Technology Mapping
 Layout Synthesis
 Placement
 Routing
 Timing Analysis
15
References and Copyright
 Slides used (Modified when necessary)
 Rob Rutenbar, University of Illinois at Urbana-Champaign
 Kia Bazargan, University of Minnesota
 Hai Zhou, Northwestern University

16
Reading Assignment
 Chapter 1 of

17
Questions?

18

You might also like