You are on page 1of 41

www.jntuworld.

com
www.jntuworldupdates.org

m
o
c

ECE357: Introduction to VLSI CAD

.
ld

r
o
w

.
w

u
t
jn

Prof. Hai Zhou

Electrical Engineering & Computer Science


Northwestern University

w
w

1
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Logistics

m
o
c

Time & Location: MWF 11-11:50 TECH L160

.
ld

Instructor: Hai Zhou haizhou@ece.northwestern.edu

r
o
w

Office: L461

u
t
jn

Office Hours: W 3-5P

.
w

Teaching Assistant: Chuan Lin

w
w

Texts:
VLSI Physical Design Automation: Theory & Practice, Sait
& Youssef, World Scientific, 1999.
Reference:
2
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

m
o
c

An Introduction to VLSI Physical Design, Sarrafzadeh &


Wong, McGraw Hill, 1996.

.
ld

r
o
w

Grading: Participation-10% Project-30% Midterm-30%


Homework-30%

u
t
jn

Homework must be turned in before class on each due date,


late: -40% per day

.
w

w
w

Course homepage:
www.ece.northwestern.edu/~haizhou/ece357

2
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

What can you expect from the course

m
o
c

Understand modern VLSI design flows (but not the details


of tools)

.
ld

r
o
w

Understand the physical design problem

u
t
jn

Familiar with the stages and basic algorithms in physical


design

.
w

w
w

Improve your capability to design algorithms to solve


problems
Improve your capability to think and reason
3
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

What do I expect from you

m
o
c

Active and critical participation

.
ld

speed me up or slow me down if my pace mismatches


yours

r
o
w

Your role is not one of sponges, but one of whetstones;


only then the spark of intellectual excitement can
continue to jump over

u
t
jn

.
w

w
w

Read the textbook

Do your homeworks
You can discuss homework with your classmates, but
need to write down solutions independently
4
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

VLSI (Very Large Scale Integrated) chips

m
o
c

.
ld

VLSI chips are everywhere

r
o
w

computers

commercial electronics: TV sets, DVD, VCR, ...

u
t
jn

voice and data communication networks


automobiles

w
w

.
w

VLSI chips are artifacts


they are produced according to our will ...

5
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Design: the most challenging human activity

m
o
c

.
ld

Design is a process of creating a structure to fulfill a


requirement

r
o
w

Brain power is the scarcest resource

u
t
jn

Delegate as much as possible to computersCAD

.
w

Avoid two extreme views:

w
w

Everything manual: impossiblemillions of gates


Everything computer: impossible either

6
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Design is always difficult

m
o
c

A main task of a designer is to manage complexity

.
ld

r
o
w

Silicon complexity: physical effects no longer be ignored


resistive and cross-coupled interconnects; signal
integrity; weak and faster gates

u
t
jn

.
w

reliability; manufacturability

w
w

System complexity: more functionality in less time


gap between design and fabrication capabilities
desire for system-on-chip (SOC)
7
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

m
o
c

CAD: A tale of two designs

.
ld

Targethardware design

r
o
w

How to create a structure on silicon to implement a


function

u
t
jn

.
w

Aidsoftware design (programming)

w
w

How to create an algorithm to solve a design problem


Be conscious of their similarities and differences

8
www.specworld.in

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Emphasis of the course


Design flow

m
o
c

.
ld

Understand how design process is decomposed into


many stages

r
o
w

u
t
jn

What are the problems need to be solved in each stage

.
w

Algorithms

w
w

Understand how an algorithm solves a design problem


Consider the possibility to extend it
Be conscious and try to improve problem solving skills
9
www.specworld.in

10

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Basics of MOS Devices


The most popular VLSI technology: MOS
(Metal-Oxide-Semiconductor).

m
o
c

.
ld

CMOS (Complementary MOS) dominates nMOS and


pMOS, due to CMOSs lower power dissipation, high
regularity, etc.

r
o
w

u
t
jn

Physical structure of MOS transistors and their schematic


icons: nMOS, pMOS.

.
w

w
w

Layout of basic devices:


CMOS inverter
CMOS NAND gate
CMOS NOR gate
10
www.specworld.in

11

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

MOS Transistors gate


drain

source

conductor (polysilicon)

.
ld

drain
n

source

substrate

r
o
w

diffusion

psubstrate
ntransistor

m
o
c

gate

insulator (SiO2)

schematic icon

u
t
jn

The nMOS switch passes "0" well.


gate

.
w
drain

w
w

source

conductor (polysilicon)
gate

insulator (SiO2)
drain

substrate

nsubstrate

source

diffusion

schematic icon

ptransistor

The pMOS switch passes "1" well.


11
www.specworld.in

12

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

A CMOS Inverter
Metal

Metaldiffusion contact
pMOS transistor

VDD

A
1
0

m
o
c

.
ld

nMOS transistor

r
o
w

Polysilicon

u
t
jn

.
w

w
w

Diffusion

B
0
1

VDD

pchannel (pMOS)
B
nchannel (nMOS)

GND

GND

layout
12
www.specworld.in

13

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

A CMOS NAND Gate


Metal
VDD

or

w
tu

n
j
.
w

GND

B C
0 1
1 1
0 1
1 0

m
o
c

.
ld

Diffusion
Polysilicon

A
0
0
1
1

VDD

C
B

w
w

GND

layout
13
www.specworld.in

14

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

A CMOS NOR Gate


Metal
VDD
Polysilicon

w
tu

j. n

GND

w
w

B C
0 1
1 0
0 0
1 0

m
o
c

.
ld

or

A
0
0
1
1

VDD

Diffusion

GND

layout
14
www.specworld.in

15

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Current VLSI design phases

m
o
c

Synthesis (i.e. specification implementation)

.
ld

1. High level synthesis (459 VLSI Algorithmics)

r
o
w

2. Logic synthesis (459 VLSI Algorithmics)

u
t
jn

3. Physical design (This course)

.
w

Analysis (implementation semantics)


Verification (design verification, implementation
verification)

w
w

Analysis (timing, function, noise, etc.)


Design rule checking, LVS (Layout Vs. Schematic)
15
www.specworld.in

16

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Physical Design

m
o
c

Physical design converts a structural description into a


geometric description.

.
ld

r
o
w

Physical design cycle:

u
t
jn

1. Circuit partitioning

.
w

2. Floorplanning

w
w

3. placement, and pin assignment


4. Routing (global and detailed)
5. Compaction
16
www.specworld.in

17

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Design Styles
Issues of
VLSI circuits

Performance

w
w

Cost

Timetomarket

u
t
jn

.
w

Full custom

.
ld

r
o
w

Area

m
o
c

Standard cell

Different design styles

Gate array

FPGA

CPLD

SPLD

SSI

Performance, Area efficiency, Cost, Flexibility

17
www.specworld.in

18

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Full Custom Design Style

.
ld

Data path

or

PLA

w
tu

ROM/RAM

n
j
.
w

w
w

m
o
c

overthecell
routing

I/O

via
(contact)

Controller

Random logic

A/D converter

pins

I/O pads

18
www.specworld.in

19

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Standard Cell Design Style


D

.
w

w
w

.
ld

r
o
w

u
t
jn
A

m
o
c

library cells
Cell A

Cell C

Cell B

Cell D

Feedthrough Cell

19
www.specworld.in

20

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Gate Array Design Style

.
ld

I/O pads

r
o
w

pins

prefabricated
transistor
array

u
t
jn

.
w

w
w

m
o
c
customized
wiring

20
www.specworld.in

21

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

FPGA Design Style

m
o
c

.
ld

r
o
w

logic
blocks

u
t
jn

.
w

w
w

routing
tracks

switches
Prefabricated all chip components
21
www.specworld.in

22

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

SSI/SPLD Design Style


x2 y2

x1 y1

x3 y3

x4 y4
74LS02

74LS86
x1

Vcc

Vcc

y1

Vcc

x3

.
ld

y3
x2
y2

x4

r
o
w
y4

GND

GND

F=

4
i=1

xi

yi

(a) 4bit comparator.

x1
y1
x2
y2

w
w
y4

GND

(b) SSI implementation.

.
w

x3
y3
x4

u
t
jn

m
o
c

74LS00

AND array
x1 y1 x2 y2
x3
y3
x4
y4

OR array

(c) SPLD (PLA) implementation.

(d) Gate array implementation.

22
www.specworld.in

23

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Comparisons of Design Styles


Cell size
Cell type
Cell placement
Interconnections

Full
custom
variable
variable
variable
variable

Standard
cell
fixed height
variable
in row
variable

u
t
jn

.
w

w
w

.
ld

r
o
w
Gate
array
fixed
fixed
fixed
variable

m
o
c

FPGA
fixed
programmable
fixed
programmable

SPLD
fixed
programmable
fixed
programmable

* Uneven height cells are also used.

23
www.specworld.in

24

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Comparisons of Design Styles


Fabrication time
Packing density
Unit cost in large quantity
Unit cost in small quantity
Easy design and simulation
Easy design change
Accuracy of timing simulation
Chip speed
+ desirable
not desirable

.
ld

Standard
cell

++
++


++

r
o
w

u
t
jn

.
w

w
w

Full
custom

+++
+++


+++

m
o
c

Gate
array
+
+
+
+

FPGA
+++


+++
++
++
+

SPLD
++

+
+
++
+

24
www.specworld.in

25

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Design-Style Trade-offs
10

Full
custom

10

10

m
o
c

.
ld

r
o
w

Turnaround
Time
(Days)

u
t
jn

.
w

10

w
w

CPLDs

SPLDs

semi
custom

FPGAs

optimal
solution

SSIs

10

10

10

10

10

10

10

Logic Capacity (Gates)

25
www.specworld.in

26

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

m
o
c

Algorithms 101

.
ld

Algorithm: a finite step-by-step procedure to solve a


problem

r
o
w

u
t
jn

Requirements:

.
w

Unambiguity: can even be followed by a machine

w
w

Basic: each step is among a given primitives


Finite: it will terminate for every possible input

26
www.specworld.in

27

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

A game

m
o
c

.
ld

An ECE major is sitting on the Northwestern beach and


gets thirsty, she knows that there is an ice-cream booth
along the shore of Lake Michigan but does not know
wherenot even north or south. How can she find the
booth in the shortest distance?

r
o
w

u
t
jn

.
w

w
w

Primitives: walking a distance, turning around, etc.

27
www.specworld.in

28

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

m
o
c

A first solution

.
ld

Select a direction, say north, and keep going until find the
booth

r
o
w

u
t
jn

.
w

Suppose the booth is to the south, she will never stop... of


course, with the assumption she follows a straight line, not
lake shore or on earth

w
w

28
www.specworld.in

29

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Another solution
Set the place she is sitting as the origin

m
o
c

.
ld

Search to south 1 yard, if not find, turn to north

r
o
w

Search to north 1 yard, if not find, turn to south

u
t
jn

Search to south 2 yard, if not find, turn to north

.
w

Search to north 2 yard, if not find, turn to south

w
w

... (follow the above pattern in geometric sequence 1, 2, 4,


8, ...)

29
www.specworld.in

30

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

OR

.
ld

r
o
w

n = 1;

m
o
c

u
t
jn

While (not find) do

.
w

n = n + 1;

Search to south 2n, and turn;

w
w

Search to north 2n, and turn;

29
www.specworld.in

31

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Correctness proof

m
o
c

.
ld

Each time when the while loop is finished, the range from
south 2n to north 2n is searched. Based on the fact that
the booth is at a constant distance x from the origin, it will
be within a range from south 2N to north 2N for some N .
With n to increment in each loop, we will find the booth in
finite time.

r
o
w

u
t
jn

.
w

w
w

Is this the fastest (or shortest) way to find the booth?

30
www.specworld.in

32

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Analysis of algorithm
Observation: the traveled distance depends on where is the
booth

m
o
c

.
ld

r
o
w

Suppose the distance between the booth and the origin is x


When the algorithm stops, we should have 2n x but
2n1 < x

u
t
jn

.
w

The distance traveled is

w
w

3 2n + 2(2 2n1 + 2 2n2 + + 2) 7 2n

which is smaller than 14x


We know that the lower bound is x, can we do better?
31
www.specworld.in

33

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Complexity of an algorithm

m
o
c

Two resources: running time and storage

.
ld

r
o
w

They are dependent on inputs: expressed as functions of


input size

u
t
jn

Why input size: lower bound (at least read it once)

.
w

Big-Oh notation: f (n) = O(g(n)) if there exist constants n0


and c such that for all n > n0, f (n) c g(n).

w
w

Make our life easy: is it 13x instead of 14x in our game


The solution is asymptotically optimal for our game

32
www.specworld.in

34

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Time complexity of an algorithm

.
ld

m
o
c

Run-time comparison: 1000 MIPS (Yr: 200x), 1 instr. /op.


Time
500
3n
n log n
n2
n3
2n
n!

Big-Oh
O(1)
O(n)
O(n log n)
O(n2 )
O(n3 )
O(2n )
O(n!)

n = 10
5 107 sec
3 108 sec
3 108 sec
1 107 sec
1 106 sec
1 106 sec
0.003 sec

u
t
jn

.
w

w
w

r
o
w

n = 100
5 107 sec
3 107 sec
2 107 sec
1 105 sec
0.001 sec
3 1017 cent.
-

n = 103
5 107 sec
3 106 sec
3 106 sec
0.001 sec
1 sec
-

n = 106
5 107 sec
0.003 sec
0.006 sec
16.7 min
3 105 cent.
-

Polynomial-time complexity: O(p(n)), where n is the input


size and p(n) is a polynomial function of n.

33
www.specworld.in

35

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Complexity of a problem
Given a problem, what is the running time of the fastest
algorithm for it?

m
o
c

.
ld

Upper bound: easyfind an algorithm with less time

r
o
w

Lower bound: hardevery algorithm requires more time

u
t
jn

P: set of problems solvable in polynomial time

.
w

NP(Nondeterministic P): set of problems whose solution


can be proved in polynomial time

w
w

Millennium open problem: NP 6= P?


Fact: there are a set of problems in NP resisting any
polynomial solution for a long time (40 years)
34
www.specworld.in

36

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

m
o
c

NP-complete and NP-hard

.
ld

Cook 1970: If the problem of boolean satisfiability can be


solved in poly. time, so can all problems in NP.

r
o
w

u
t
jn

Such a problem with this property is called NP-hard.

.
w

If a NP-hard problem is in NP, it is called NP-complete.

w
w

Karp 1971: Many other problems resisting poly. solutions


are NP-complete.

35
www.specworld.in

37

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

How to deal with a hard problem


Prove the problem is NP-complete:

m
o
c

.
ld

1. The problem is in NP (i.e. solution can be proved in


poly. time)

r
o
w

2. It is NP-hard (by polynomial reducing a NP-complete


problem to it)

u
t
jn

.
w

Solve NP-hard problems:

w
w

Exponential algorithm (feasible only when the problem


size is small)
Pseudo-polynomial time algorithms
Restriction: work on a subset of the input space
36
www.specworld.in

38

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

m
o
c

.
ld

Approximation algorithms: get a provable


close-to-optimal solution

r
o
w

u
t
jn

Heuristics: get a as good as possible solution

.
w

Randomized algorithm: get the solution with high


probability

w
w

36
www.specworld.in

39

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

Algorithmic Paradigms
Divide and conquer: divide a problem into sub-problems,
solve sub-problems, and combine them to construct a
solution.

m
o
c

.
ld

r
o
w

Greedy algorithm: optimal solutions to sub-problems will


give optimal solution to the whole problem.

u
t
jn

Dynamic programming: solutions to a larger problem are


constructed from a set of solutions to its sub-problems.

.
w

Mathematical programming: a system of optimizing an


objective function under constraints functions.

w
w

Simulated annealing: an adaptive, iterative,


non-deterministic algorithm that allows uphill moves to
escape from local optima.
37
www.specworld.in

40

www.jntuworld.com

www.smartzworld.com

www.jntuworld.com
www.jntuworldupdates.org

m
o
c

.
ld

r
o
w

Branch and bound: a search technique with pruning.

u
t
jn

Exhaustive search: search the entire solution space.

.
w

w
w

37
www.specworld.in

41

www.jntuworld.com

www.smartzworld.com

You might also like