chapter 1 basic vlsi design - wbuthelp.com · 2012. 6. 26. · chapter 1 basic vlsi design + drain...

74
CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET

Upload: others

Post on 05-Oct-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

CHAPTER 1 Basic VLSI Design

+ DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET

Page 2: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 1.3 : p-channel JFET

Figure 1.2

Page 3: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Fig.1.4 Schematic Symbols .

Figure 1.5 Physical structure of MOS transistors and their schematic icons

p+ p+

n substrate

channel

Source Drain

p transistor

G

S

D

SB

Polysilicon Gate SiO2

Insulator L W

G

substrate connected to V DD

Source

n transistor substrate connected

Polysilicon Gate SiO2 Insulator

n+ n+

p substrate channel

Drain G

S

D

SB

L W

G

S

D

to GND

Page 4: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 1.6(a): NMOS-transistor

Figure 1.6(b): P-transistor .

Figure 1.6 (c ): C-switch .

N

D

S

G

D

S

G

P

D

S

G

D

S

G

C D S

-G

G

Page 5: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

.

Figure 1.7: Transistor schematic of a static complementary inverter.

vdd

a b

vdd

a o/p

a o/p

b b

vss

a b

vss Fig. 19. NAND gate schematic

Fig 1.8 NOR gate schematic

VDD

Out

Gnd

In

Inverter

Page 6: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 1.10: A dynamic latch circuit.

.

Figure 1.11(a): Wires and wire segments.

Figure 1.11(b): Schematic symbols for transistors

D

F 1

F

Cg

Q1

Wire segments

n-type p-type

Page 7: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 1.12: General CMOS Layout structure, Circuit and the Layout diagram of CMOS Inverter.

VDD

Out

Gnd

VDD

Out

Gnd

Pullup Network

(p-transistors)

Pulldown Network

(n-transistors)

InInputs

Inverter

Page 8: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 1.13: Stick diagram

Table 1.1 Rules for possible interactions between layers.

Figure 1.15: The inverter circuit used for delay analysis

VDD In VSS

Out

Metal p-diff n-diff poly

Figure 1.14: Stick diagram symbols

VDD

CL

Gnd

In

Inverter

t

Input voltage

Page 9: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 1.16: Circuit used for power consumption analysis

Figure 1.17: A pseudo-nMOS NOR gate

Figure 1.18: A circuit model for stuck-open faults.

VDD

t1

t2 b a CL

VDD

CL

Gnd

In

Inverter

t

VDD

CL

Gnd

Id,p IL

Id,n

a b

output

Page 10: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure1.19: Testing for combinational faults.

A

B

E

G

C

F

D

i1

i2

i3 i4

i5

i6 i7

i8

W1

W2 O1

O2

Page 11: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Fig. 1.20 Commercially available FPGA architectures

1 PO 2 PO 3 PO

4 PI 5 PI 6 7

8 PI 9PI 10PI 11PI

Fig 1.21 Initial 3-restricted DAG

1 2 3

Symmetrical Array Row-based Interconnect

Interconnect

Logic Block

Logic Block

Interconnect

Interconnect Overlayed on Logic Blocks

Sea-of-Gates Hierarchical PLD

Page 12: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

4 5 10 11

8 9

Fig. 1.22 Mapping of the 3-restricted DAG by four 3-LUTs connection between wire segments in x and y axes and also vias.

Fig.1.23 3-D FPGA architecture

Page 13: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

CHAPTER 2 VLSI CAD

Figure 2.1: Y-chart

System

Register transfer

Logic

Circuit

BEHAVIOR

Algorithms, flowcharts

Register Transfer

Boolean expression

Transfer function

STRUCTURAL

Processors, Memories

Registers, flipflops, MUX

Gates

Transistors

Cell layout

Modules

Boards

PHYSICAL

Page 14: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

CHAPTER 3

Partitioning in High Level Synthesis

Figure: 3.1 Example: Behavioral description of a 4 bit Shift multiplier

.

A_PORT B_PORT Architecture SHIFT_MULT of MULT is begin START begin process variable A,B,M: BIT_VECTOR CLK variable COUNT: INTEGER begin M_OUT DONE wait until (START =1) A:= A_PORT; COUNT :=0; Entity MULT is B:=B_PORT; DONE<=’ 0 ’ Port (A_PORT, M:=B”0000”; B_PORT: in bit _ vector(3 down to 0); while (COUNT <4) loop M_PORT: out bit _vector (7 down to 0); if (A(0)=’1’) then M:=M+B; CLK: in BIT end if; START: in BIT A:=SHR(A,M(0)); DONE: out BIT; M:=SHR(M,’0’); ); COUNT:=COUNT+1 end MULT; end loop; M_OUT <=M & A; DONE <=’1’; End process; End SHIFT_MULT;

Page 15: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure: 3.2 CDFG for the shift-multiplier example

0 1

B1

0 1

B4 0 1

B2

0 1

B3

Control-flow graph

Read START ‘1’

=

Read A_PORT Read B_PORT ‘0’

Write A Write B Write COUNT

‘0’

Write DONE

B”0000”

Write A

Read A[0] ‘1’

=

Read COUNT ‘4’

<

Read M Read A

&

Write M_OUT

‘1’

Write DONE

Read M Read B

+

Write M

Read A Read M[0]

Write A

Write COUNT

‘1’

Write M

Read M SHR Read

COUNT

+

‘0’

SHR

Page 16: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure : 3.3 Scheduled CDFG for the shift multiplier

START=1

A=A_PORT; COUNT=0; B=B_PORT; DONE <= 0 M=B” 0000” ;

COUNT <4

A(0) = ‘1’

M = M + B;

ENDIF

M_OUT <= M & A; DONE <=’1’;

A=SHR(A,M(0)); COUNT=COUNT + 1; M=SHR(M,’0’);

S0

S1

S2

S3

0

1

1

B10

0 B4

0 B2

B3

1

Page 17: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure: 3.4 Initial unit selection for the shift-multiplier design

Mult Count_Reg B_Reg A_Reg

Shift1 Shift2 Compar Adder

A_PORT B_PORT

START

CLK

DONE M_OUT

Concat enator

Page 18: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 3.5 Synthesized design for the shift-multiplier example

A= S0 & START=1 B= S0 & ~(START=1) C= S1 & COUNT < 4 D= S1 & ~(COUNT < 4) E= S2 & A(0)=1 F= S2 & ~ (A(0)=1) G= S3 Control Unit A B C D E F G Mux1 - - - - 1 - 0

Mux2 1 - - - - - 0

Mux3 - - - - 0 - 0

Mux4 - - - - 0 - 1

Load A_Reg 1 - - - - - 1

Load B_Reg 1 - - - - - -

Clear Count_Reg

1 - - - - - -

Load Count_Reg

- - - - - - 1

Clear Multiplier

1 - - - - - -

Load Multiplier

- - - - 1 - 1

Adder - - - - 1 - 1

Shift1 - - - - - - 1

Shift2 - - - - - - 1

DONE 0 - - 1 - - -

Next State S1 S0 S2 S0 S3 S3 S1

Multiplier Count_Reg

B_Reg A_Reg

Mux1

Comp

Adder

A_PORT B_PORT

START

CLK DONE M_OUT

Mux2

Shift2 Shift1

0

Mux3 Mux4

0001

0100

State Reg

A_Reg(0)

Comp LT

Concat

Page 19: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

3.2 PARTITIONING

Figure 3.6 Circuit Partitioning: (a) an example (b) graph and its physical representations

FF1

REG

FF2 Chip1

Chip2

a b d e f g

c

nj ni

a b

a

b

G1

G2 v

G

c v

d v

e f

g

a

e25

e24 v

e36 v

v1 v2 v3

v4 v5

V6

ni nj

c

d e f g

(a) (b)

(b)

Cutline

Page 20: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

3

V(24135)

5

1

3

5

1

3

4

3

V1 V1 V2 V3 V4 V5

Graphical Representation Closeness measurement Cluster Tree Representation

V5

V2413

V2413 V5

V2413 -- --

V5 3 --

V(24)

V(241)

V(2413)

3

V1 V2 V4 V3 V5

V3

V5

V2

V4

4

6

V1 -- -- -- -- -- V2 5 -- -- -- -- V3 4 1 -- -- -- V4 0 6 0 -- -- V5 0 3 0 0 --

V1 V2 V4 V3 V5

V(24)

V1

V3

V5

4

V24

V1 V24 V3 V5

V1 -- -- -- -- V24 5 -- -- -- V3 4 1 -- -- V5 0 3 0 --

V1 V2 V4 V3 V5

V(24)

V(241)

V3

V5

V241 V241 V3 V5

V241 -- -- -- V3 4 -- -- V5 3 0 --

V1 V2 V4 V3 V5

V(24)

V(241)

V(2413)

(a)

(b)

(c)

Page 21: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

3 4 1 2 5

c e f b a d b

Criterion B a b c 3

2 1 5 4

Figure 3.7 : Cluster tree formation a b c f c a e d b

(d)

d e f

First cutline

(a)

d e f

(b)

{ f, c}

{ d }

{ b }

{ a, e}

5

3

2

1

{ a, e}

{ f,c}

{ b }

{ d}

(c)

Page 22: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

f c a e d b

Figure 3.8 Clustering based on a) criterion A only, b) criterion B only, c) Criterion A below the first cut-line, then criterion B, d) criterion B below the first cut-line, then criterion A e) criterion A below the second cut-line, then criterion B

{ c, e}

{ a, d }

{ b }

{f }

5

4

1

{ c, e}

{ f }

{a ,d}

{ b }

(d)

Second Cutline

{f, c}

{a,e,d}

{ b}

5

3 2

{a,e,d}

{f, c}

{ b}

(e)

Page 23: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

1 2 3 4 5 6 7 8 9 10

40 20 10 10

Figure 3.9 Two-way partition

Figure 3.10 Interconnection reduction by node interchanging: a)before interchanging vi and vj, b) after interchanging vi and vj

Figure 3.11: Kernigham-Lin Search Strategy

vi G1

vj G2

Cutline

vj G1

vj G2

Cutline

Page 24: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 3.12 (a) two cluster partition

Figure 3.12 (b) three cluster partition

G1

O2

(+) o1 (+)

O3 (*)

a b c

G3

e13 e23

O2

(+) o1 (+)

O3 (*)

a b c

G3

e13 e23

o1 (+)

o2 (+)

e13 e23

mult1 G2

add1 G1

e13 e23

mult1 G3

add1 G1

add2 G2

Page 25: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

e10,11

v4 e4,9 v9

v2 e2,5

v5 e5,7

v7 v8

v3 e3,6 v6 e6,8

CHAPTER 4 Scheduling in High level Synthesis

Figure 4.1(a) Text description

Figure 4.1 (b) DFG (Data Flow Graph)

While (x<a) do { x1:= x + dx; u1:= u – (3 * x * u * dx) – (3 * y * dx); y1:= y + (u * dx); x:= x1; u:=u1; y:=y1; }

u dx 3 x u dx x dx

* * * +

* * +

y y

* -

-

dx u

<

c

a

v10

v11

v1

e1,5

e7,8

Page 26: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

V1 V2 V3 V4 V10 E=1 E=2 V5 V6 V9 V11 E=3 V7 E=4 V8 (a)

V1 V2 L=1 L=2 V5 V3 L=3 V7 V6 V4 V10 L=4 V8 V9 V11 (b)

1 2 3 4 5 6 7 8 9 10 11 S1 S2 S3 S4 (a)

V1 V2 S1 S2 V5 V3 V10 S3 V7 V6 V4 S4 V8 V9 V11 (b)

Figure 4.2: (a) ASAP schedule, (b) ALAP schedule.

Figure 4.3: An ILP scheduling example: (a) ranges for operations, (b) final schedule,

* * *

+

*

*

+

*

-

-

<

* *

* +

* *

+

* -

- <

* *

*

+ * *

+

* -

- <

Page 27: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

S1 2.33 1 2

S2 2.33 5 3 S3 1.33 7 6 4 10 S4 0.00 8 9 11 (c) (d)

-------------------------------------------------------- ---------------------------------------

S1 1 2 3 4 10 2.83

S2 5 2.33

S3 7 6 0.83

S4 8 9 11 0.00

(a) (b)

Figure 4.4: Force-directed scheduling example: (a) probability of scheduling operations into control steps, (b) operator cost for multiplications in a, (c) probability of scheduling operations into control steps after operation o3 is scheduled to step s2, (d) operator cost for multiplications in 4.4c. '

* *

*

+

*

*

+

*

-

-

<

* *

*

+

* *

+

*

-

-

<

Page 28: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

S1 S2 S3 S4

S1 S2 S3 S4

* * - + < S1 1 2 10 S2 5 3 11 S3 6 4 7 S4 8 9

Figure 4.5: Rescheduling: (a) initial schedule where three operations are movable to five control steps (dashed arrows), (b) after operation 6 is moved and locked.

Plist* = 1<0>, 2<0>,3<1>, 4<2>

<0> <0> <2> <2> Plist+ =10<2> Plist- = NIL <0> <1> <2> <2> Plist< =NIL (b) <0> <1>

Resources* = 2 Resources+ = 1 <0> Resources- = 1 Resources< = 1 (c) Figure 4.6: List scheduling: (a) a DFG with mobility labeling (inside < > ), (b) the list of ready operations for control state s1, (c) the resource constraints, (d) the scheduled .DFG

1 2 3 4 10

5 6 9 11

7

8

(a)

1 2 3 4 10

5 6

9 11

7

8

(b)

* * * +

*

* + < *

-

-

(a)

* *

*

+

*

*

+

< *

-

-

(d)

Page 29: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

2 4 10 1 5 3 9 11

7 6 8 (a) (b) 2 1 10 S1 2 1 10 3 5 S2 3 5 11

S3 4 6 7 S4 8 9 (c ) (d) Figure 4.7: Static-list scheduling: (a) a DFG (b) priority list, (c) partial schedule of five nodes, (d) the final schedule.

Node 8 9 11 7 6 4 10 5 3 1 2

ALAP 1 1 1 2 2 2 2 3 3 4 4 ASAP 4 2 2 3 2 1 1 2 1 1 1 Priority 1 2 3 4 5 6 7 8 9 10 11

*

*

-

-

*

*

*

+

+

+

<

*

*

*

*

+

<

*

-

*

+

-

* *

* *

*

Page 30: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

S1 S2 (a)

S1 S2 (b)

S1 (c)

S1 S2 S3 (d)

Figure 4.8: Scheduling with arbitrary-delay units

Figure 4.9: CDFG for a behavioral description with a conditional construct.

a:=a+1; if(a>100) then b:=a/c; else b:=d/c; endif c:=c-g;

+

* -

+ *

-

+ *

-

*

*

Page 31: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

ALU1 ALU2 ALU3 S1 S2 S3 (a) ALU1 ALU2 ALU3 S1 S2 S3 (b)

v1=v2+v3 v4= v2*v3 v5=v1+v4 v6=v4/v1 v2=v4*v5

v4=v2*v3 v1= v2+v3 v5=v1+v4 v6=v4/v1 v2=v4-v5

1 2 3 4 5 7 8 12 11 10 9 6

b

time

10,11, 12 7, 8, 9 4, 5, 6 1, 2, 3

u

(a)

(b)

1

2

3

4

5

7 10

8 11

6 9 12

m

p

(c)

Page 32: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

ALU1 ALU2 ALU3 S1 S2 S3 ( c ) Figure 4.11: Scheduling using simulated annealing : (a) an initial schedule, (b) after swapping two operations, (c) after displacing an operation.

v4=v2*v3 v1= v2+v3 v5=v1+v4 v2=v4-v5 v6=v4/v1

Page 33: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 4.12: Path-based scheduling: (a) an example CDFG, (b) a path in the CDFG with constraint intervals, (c) scheduled CDFG.

4.5.3 DFG Restructuring

2

3

1

9

8

5 4

10

7

6

ipp<=pc ipo<=oldpc outbus,=inbus + 8 if( jump = ‘1’) then pc<= jumppc endif wait until (cond=’T’) oldpc<= pc pc< = pc + 8

2

3

1

9

8

5 4

10

7

6

2

3

1

9

8

5 4

10

7

6

write

jump

loop

write

i1

i2

Page 34: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 4.13: DFG restructuring : (a) DFG (b) DFG after tree-height reduction

+

+

+

+

+

a b c d e f

1

2

3

4

5

(((a + b) + c) + d) + (e + f) (a)

+

+

+

+

+

a b c d e f

1

2 3

4

5

((a + b) + c) + (d + (e + f)) (b)

Page 35: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 4.13: DFG restructuring: (c) DFG (d) DFG after redundant operation insertion.

+

+

+

+

a b d c

1

2

3

4

5

d (a + b + c) + (a+b) + (a+b) (c)

*

+

+ +

+

a b d c

1

2

3

45

d (a + b + c) + 2(a+b) (d)

*

+ 6

Page 36: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

CHAPTER 5 Data Path Allocation in High Level Synthesis

a b c d o1 o2 r1 r2 r3 r4 S1 e f S2 o3 o4 g h Add1 Add2 Figure 5.1: Mapping of behavioral objects into RT components.

+ +

+ +

a b ,e, g c ,f, h d

+1 +3 +2 +4

Page 37: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

+

+

+

+

O1

O2

O3

O4

a b c d

e f

g h

S1

S2

r1 r2 r3 r4

+1 +4 +2 +3

a b, e, g c, f, h d

ADD1 ADD2

r1 r2 r3 r4

+1 +3 +2 +4

a ,g b, e c, f d,h

ADD1 ADD2

r1 r2 r3 r4

+1 +4 +2 +3

a ,g b, e c, f d,h

ADD1 ADD2

(a) (b)

(c)

(d)

Page 38: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

S1 S2 Edge Common Neighbor e1

1,3 1 e1

1,4 1 e1

2,3 0 S3 S4 S5 e1

2,5 0 e1

3,4 1 e1

4,5 0 (b)

S13 S2 Edge Common Neighbor e1

13,4 0 e1

2,5 0 e1

4,5 0 S4 S5 (c)

S134 S2 Edge Common Neighbor e1

2,5 0 S5 (d)

v2

v5

S134 S25 Cliques: S134 = { V1, V3, V4 } S25 = { V2, V5} (e) (f)

v1

v3 v4

Figure 5.2: Interdependence of functional-unit and storage binding

(a)

Figure 5.3: Clique partitioning example

v1 v2

v3 v4 v5

v1 v2

v3 v4 v5

v1

v3 v4

v2

v5

v1

v3 v4

v2

v5

Page 39: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

V1 V2

S1 V6 V4

V3 S2 V10 V5

V7 S3

V11 V8 V9 S4

V1 V2 (a)

V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 R W R W R W R W (b)

Cliques: {v1,v8}=r1 {v2,v3,v9}=r2 {v4,v5,v11}=r3 {v6,v7}=r4 {v10}=r5 (d)

*

/ +

* - -

- +

(c)

v3

v8

v10 v1

v9 v2

v7

v5

v6 v4

v11

Page 40: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

V1 V10 V4 V6 V2 V3 V5 V7 V8 V9 V11 V11 V1

2 S1

S2

S3 S4

Cluster 1 Cluster 2 Cluster 3 Cluster 4 (a)

Figure 5.4: Register allocation using clique partitioning: (a) a scheduled DFG, (b) lifetime intervals of variables, (c) the graph model for register allocation, (d) a clique-partitioning solution

V1 V10 V4 V6 V2 V3 V5 V7 V8 V9 V11 V1’ V2’ r1 r2 r3 r4 r5

S1 V1 V10 V4 V6 V2 V3 S2 V5 V7 S3 S4 V8 V9 V11 V1 V2 Figure 5.5: Register allocation using the left-edge algorithm: (a) sorted variable lifetime intervals, (b) five-register allocation result.

Page 41: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

r1 v3

r1 = { v1 , v8 , v11}

r2 r2 = { v9 , v10 } r3 = { v4 , v5 , v11} v5 r4 = { v6 , v7 }

r3 r5 = { v2 , v3 , v12}

r4 v7

r5

Set R Set V (b) (c)

Figure 5.6: Weighted bipartite-matching for register allocation: (a) sorted lifetime intervals with clusters, (b)

bipartite graph for binding of variables in Cluster2 after Cluster1 has been assigned to the registers, (c)

final binding of all variables to the set of registers.

v1

v10

v4

v6

v2

Page 42: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

CHAPTER 6 LOGIC SYNTHESIS

(a) (b)

( c) Figure 6.1 Cubic representation of a boolean function of (a) one variable (b) two variables and ( c) three

variables.

10

00

11

01

0 1

001 m1

011 m3

010 m2

110 m6

100 m4

101 m5

000 m0

111 m7

Page 43: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

FIGURE 6.2 A cubic representation of the function F(A, B, C) = ? m(0, 2, 3, 4, 7).

FIGURE 6.3 A cubic representation of the function G(A, B, C) = A1C1 + B1C1 + ABC.

m3

m2

m4

m0

m7

A

C

B

m2

m4

m0

m7

A

C

B

x00

0x0

Page 44: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

A m6 X1X m7 m2 B m3 C Figure 6.4: A cubic representation of the function H(A, B, C) = B.

F(xi) xi F= xi F(xi) + x1

i F(x1i)

F(x1i)

x1

i (a) F1(xi) x1

i F= [x1i + F1(xi)][ xi +F1(x1

i)] F1(x1

i)

xi (b)

Figure 6.5 An expanded function F, represented (a) in NAND-NAND logic, and (b) in NOR-NOR

logic.

Page 45: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 6.6: A binary tree representation of the function F = A(BD + B1C1) + A1( BC1 + B1CD).

(a) (b)

(c) Figure 6.7 Binary decision diagram of the functions (a) AB (b) A+B and (c) A(+) B.

A

B B

C C C D

D

F

0

0 0

1

1

1

1

A

B

Y=AB

0

0

1

1

Y=0

Y=0 Y=1

A

B

Y=A+B

0

0

1

Y=0

Y=1

Y=1 Y=

1

A

B

Y

0

0

1

Y=0 Y=1

B

0

1 0 1

0

1 1 0 0

Page 46: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

1 0

0 0

0 0

1 1

1 1

2 3

4,7 5,6

(a) (b) FIGURE 6.9: Realization of the function Y = A (+) B (+) C (a) The binary tree; (b) the tree reduced to the

BDD,

B

C

0

0

1

1

m0 m1 m2 m3 m4 m5 m6 m7

C0

1 1

B

C

0

0

1

1 C

0

A 1 0

1 2 3

7 6 5 4

B

C

0

0

1

1

0 1 1 0 1 0 0 1

C0

1 1

B

C

0

0

1

1 C

0

A 1 0

1 2 3

7 6 5 4

A

B B

C C

0 1

Page 47: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

(a)

B

C

0

0

1

1

1 0 1 0 0 0 1 1

C0

1 1

B

C

0

0

1

1 C

0

A 1 0

1 2 3

7 6 5 4

B

C

0

0

1

1

1 0 1 0 1 0 (b)

C0

1 4,5

B

0

1

C

A0

Y

2

5 4

A

Y

0

C

A

Y

0

01

1 0

Page 48: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

(c) Figure 6.10 Realization of the function, Y(A, B, C) = ? m(0, 2, 6, 7) (a) The binary tree (b) reducing the tree(c) the BDD.

B

A

D

F

E

C

0 (a) 1

1

1

0

1

1

1

1

0

0

0 0

0

F

BC

A

Y

0 1

0

1 1 0 0

0 1 1

Page 49: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 6.11: BDD illustrating (a) Advantages of a good ordering, (b) Drawbacks of a bad ordering

C

A

D

F

E

C

0 (b) 1

F

E E E

B B B B

D

B

D

0

0

1

1

0 1 0 1 0 1 1 1 (a)

D0

1 1

B

D

0

0

1

1 D

0

A 1 0

1 2 3

7 6 5 4

Y

Page 50: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Y (c) (d) FIGURE 6.12: Realization of the function Y = AB + D. (a) The binary tree; (b) reducing the tree; (c) the

BDD; (d) counting the paths to an output.

B

0 1

0 1 0 1 (b)

D0

1 1

B

0 1

1 D

0

A 1 0

1

1

B

0 1

0-

D

0

A 1

Y

0 1 1

B

1 1

1-

D

0

A 1

Y

2 2

Page 51: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

1 0

0

1

0

1

0 1

1 1

2

1

1

2

2 2

(a) (b)

FIGURE 6.13: The BDD for the function Y = AB + D, with D the most significant bit. (a) The binary tree; (b) BDD.

(a) (b)

FIGURE 6.14: Realization of the function Y = AB + CD. (a) The BDD; (b) the number of paths to an

out put.

B

D

0

0

1

1

0 0 0 1 1 1 1 1

D0

1 1

B

D

0

0

1

1 D

0

A 1 0

1 2 3

7 6 5 4

Y

A

B

0

0

1

1 0 0

D 1

1

Y

1

A

B C

D

0 1

A

B C

D

0 1

Page 52: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

THEN ELSE

ELSE

FIGURE 6.15: If-then-else diagrams of (a) AB, (b) A + B, and (c) A (+) B. FIGURE 6.16: If-then-else diagrams of (a) AB + A1C and (b) ABD

B

A

0

THEN ELSE

IF

B

A

1

THEN ELSE

IF

B

ATHEN ELSE

IF

B

B

ATHEN ELSE

IF

A

1

IF

D

THEN

B C

IF

0

Page 53: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

b

a BTHEN

ELSE

F

THEN ELSE

1 0

1 c

a CTHEN

ELSE

G

THEN ELSE

1 0

0

d

b DTHEN

ELSE

H

THEN ELSE

1 0

1 b

a THEN

ELSE

I

THEN ELSE

0 D

C

F 2 F 1

Inputs Outputs

AND plane

OR plane

Register Register

Page 54: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

VDD VDD GND GND VDD GND P0

P1 P2 P3 GND VDD F 2 F 2 F 1 F 1 I0 I1 I2 Y0 Y1 Y2

FIGURE 6.18: The basic floor plan of a PLA structure.

FIGURE 6.19: A stick drawing of an NMOS NOR-NOR PLA realization.

Page 55: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

A A1 B B1 C1 C D1 D Y1 Y2 Y3 P1=A1BC Y1=P1+P2

Y2=P1+P3+P4 P2=AB1D1 Y3=P2+P3 Y4=P4+P5 P3=A1C1D1 Y5=P5+P6 Y6=P4+P6 P4=CD1E P5=CEF1

P6=E1FG1

E1 E F1 F G1 G D1 D Y4 Y5 Y6

Inputs Outputs Inputs I1 I2 I3 Y1 Y2 Y3 Y4 I7 I8 I9 I10 P1 P5 P2 P6 P3 P7 P4 P8 I1 I4 I5 I6 Y5 Y6 Y2 Y7 Y3 Y8 I11 I12 I9 I10 AND Plane OR Plane AND Plane

FIGURE 6.20: A column custom-folded PLA. (a) AND-plane column-folding; (b) OR-plane column-

folding.

FIGURE 6.21: A row or product-line folded PLA.

. .

Page 56: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

1 2 3 4 5 6 7 8 9 10 P1 AB1

P2 AC

P3 D P4 A1B

P5 B1C A1 A B1 B C1 C D1 D Y1 Y2 (a)

A B1 C D P1 AB1

P2 AC P3

D P5 B1C P4 A1B A1 B C D Y1 Y2

(b)

Figure 6.22: A simple PLA implemented (a) directly, and (b)optimized

Page 57: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

A B1

C D E1

2i 3i

(b) FIGURE 6.23 (a): Multilevel NOR diagram of the function Y = A’B’ + C’(D + E’) (b) a typical NMOS NOR gate.

?

d ? ß

V (a)

W X

Y

1i

VDD

GND

Page 58: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 6.25 An FSM with redundant states and its minimized version.

0/0

0/0

1/1

0/0

1/0

1/1

1/1 0/0

1/1

0/0

0/0

0/0

0/0

1/1

Page 59: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

CHAPTER 7

PHYSICAL SYNTHESIS

Figure 7.1: Physical design cycle

Circuit Design

Partitioning

Floorplanning & Placement

Routing

Compaction

Extraction & Verification

Fabrication

Page 60: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

(a)

(b)

(c )

A

D

E

B 8 C

F G

H I

6 1 7

2

5 4

3

1

2 3

4 7 5 6

F G H I D E A

B C

H

V

H

V V V V

H

F G H I D E A

B C

Page 61: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

( d) Figure 7.2: Floorplan with slicing tree and a non— slicing floorplan.

Figure 7.3: Interconnection topologies.

Figure 7.4: Phases of routing.

(a) Global Routing (b) Detailed Routing

A a

D d

b B

c C

Fig 7.3 (a) Steiner tree (b) minimum spanning tree (c) complete graph

Page 62: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure 7.5: A net routed by Lee’s algorithm. obstacle T S Figure 7.6: A net routed by Mikami-Tabuchi’s Algorithm obstacle T S Figure 7.7: A net routed by Hightower’s Algorithm

6 5 4 3 4 5 6 7

5 4 3 2 3 4 5 6

4 3 2 1 2 3 4 5

5 4 3 2 3 4 5 6

6 5 4 3 4 5 6 7

7 6 5 4 5 6 7 8

8 7 6 5 6 7 8 9

9 8 7 6 7 8 9 10

Page 63: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

1 Switchbox 1

2 2 (c) (d)

1 3 3 4 2 2 1 (a) (b)

Figure 7.8: Channels and Switchboxes 7.4.2.1 Problem Formulation

(a) (b)

Figure 7.9: (a) Grid-based. (b) Gridless

Page 64: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Layer1 Layer2 Track 1 Layer3 Via Unreserved Layer Model

1 4 2 0 2 1 1 0 3 4 0 upper boundary lower boundary Terminal 3 0 1 2 0 3 4 0 0 2 3 Net list: 1 4 2 0 2 1 1 0 3 4 0 3 0 1 2 0 3 4 0 0 2 3

Track2 Track 3 Track1 Track 2 Track 1 Figure 7.10: A comparison between HVH, VHV, and unreserved layer models.

Figure 7.11: A channel and its associated net list.

Page 65: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

upper boundary terminals via Tracks Dogleg Lower boundary trunks branches

1 5 2 0 2 1 1 0 3 4 0 3 0 1 2 0 3 4 0 0 2 3 (a) 1 5 2 4 3 (b)

Figure 7.12: Terminology for channel routing problems.

Figure 7.13: A routing problem and its HCG .

Page 66: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

1 5 2 0 2 1 1 0 3 4 0 3 0 1 2 0 3 4 0 0 2 3 (a) 1 5 2 4 3 (b)

4 1 2 3 1 2 3 4 (c)

Figure 7.14: A channel routing problem and its VCG.

. The figure 7.15 (a) shows a channel routing problem with a vertical constraint

cycle while figure 7.15 (b) shows how a dogleg can be used to break a vertical constraint cycle. Figure 7.15(c) shows vertical constraint cycle involving four nets. In figure 7.15(d), we show one possible routing for the example in figure 7.15(c).

1 2 1 2 2 1 2 1 (a) (b)

Page 67: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

4 1 2 3 1 2 3 4 (d)

Figure 7.15: A cyclic vertical constraint.

1 5 2 4 3 Figure 7.16: A combined constraint graph (CCG) 7.4.2.5 Left-edge Channel Routing Algorithm

Page 68: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

7.5 Compaction

Figure 7.17: Constraint graph generation

v3 ? 1 v2 ? 1 5 ? v4 2

v0 ? 4 1 v1 ? 2 ? v5 Fig 7.18: Input DAG

Q P1 P2 P3 P4 P5 x1 x2 x3 x4 x5 “not initialized”

{v0} {v1}

{v2,v5} {v3,v5}

{v5} {v4}

1 2 1 2 1 0 1 1 2 1 0 0 1 2 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 1 5 0 0 0 1 5 0 0 3 1 5 6 6 3 1 5 6 6 3 1 5 6 7 3 1 5 6 7 3

Table 7.2:Results of Longest Path algorithm

A

B

C

D

F

E

A

C

F

B D

E

Page 69: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

. v3 ?

1 v2 ? -1 1 5 ? v4 2 -3

v0 ? 4 -4 1 v1 ? 2 v5 ?

Fig 7.19: DAG with a few backward edges

Step x1 x2 x3 x4 x5

Initialize Forward 1

Backward 1 Forward 2

Backward 2 Forward 3

Backward 3

-8 -8 -8 -8 -8 1 5 6 7 3 2 5 6 7 3 2 5 6 8 4 2 5 7 8 4 2 5 7 8 4 2 5 7 8 4

Table 7.3:Results of Liao-Wong algorithm

Page 70: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

APPENDIX A VHDL BASICS

Figure A.1(a) (b) Figure A.1: Example of structural description.

A Y

F B

?

?

?

F A Y

G B

?

?

?

A Y

H B

?

?

?

A Y

I B

?

?

?

?

?

?

Page 71: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Figure A.2 Structure of count2 .

Graph Theory Basics

A B C D E Fig. B.1 A graph 0 1 0 0 1 1 0 1 1 0 0 1 0 0 1 0 1 0 0 1 1 0 1 1 0 Fig. B.2 Adjacency matrix representation

COUNT2 BIT_0 Q0 CLK FF0 BIT_1 INV Q1 INV_FF0 FF1

T_FLIPFLOP CLK Q

? ?

INVERTER A Y

T_FLIPFLOP CLK Q

?

Page 72: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

A B E NULL B A C D NULL C B E NULL D B E NULL E A C D NULL Fig.B.3 Adjacency list representation

V5 V2 V3 V2 V4 V5 V4

V1 V3 V3

(a) (b) Fig B.4: A directed graph (a) and its adjacency list representation(b). When this algorithm is applied on graph shown in Fig B.4, the algorithm takes different steps as shown in table BT.2

Q W Edges processed (V1) (V1 , V2)

(V3 , V4, V5 )

(V4, V5 )

(V5)

V1

V2

V3

V4

V5

(V1 , V2) ,(V1 , V3) (V2, V4) ,(V2 , V5) NULL (V4 , V3)

NULL

V1

V2

V3

V4

V5

Page 73: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Table BT.2: The different steps of the breadth-first search algorithm applied to the graph of figure B.4 V1 2 V6 6 1 3 1 V2 V5 2 1 1

1 V4 V3 5 Fig B.5 : An edge-weighted directed graph.

Iteration T vi .distance, for i = 1 2 3 4 5 6

1 2 3 4 5 6

{ V1} { V1 , V4}

{ V1 , V4, V5} { V1 , V4 ,V5 ,V6}

{ V1 ,V4 ,V5 ,V6 ,V2} { V1 ,V4 ,V5 ,V6 ,V2 ,V3}

6 8 1 3 8 6 6 2 8 6 6 3 4 6 5

Table BT.3: The evolution of the distance attributes in Dijkstra’s algorithm when applied to the graph with vs = v1 and vt=v2 . 2 V2 2 V2 1 5 1 V1 4 V3 2 V5 2 V1 V3 2 V5 2 1 1 3 V4 V4 Fig B.6 An edge-weighted undirected graph(a) and its minimum spanning tree (b).

Page 74: CHAPTER 1 Basic VLSI Design - WBUTHELP.COM · 2012. 6. 26. · CHAPTER 1 Basic VLSI Design + DRAIN Vdd - n Type Silicon SOURCE Figure 1.1: The beginning of the n-channel JFET . Figure

Iteration U Vi .distance, vi .via_edge, for i =

1 2 3 4 5 0 1 2 3 4

V1 V2

V3 V4

V5

2, (V1 ,V2) 4, (V1, V3) 3, (V1, V4 ) +8 ,? 1, (V2, V3 ) 2, (V2, V4 ) 5, (V2, V5 ) 1, (V3, V4 ) 2, (V3, V5 ) 2, (V3, V5 )

Table BT.4: The evolution of Prim’s algorithm when applied to the graph of figure B.6a.