28
ECE4121 Static CMOS Logic.1 ZALAM VLSI Design Static CMOS Logic [Adapted from Rabaey’s Digital Integrated Circuits, ©2002, J. Rabaey et al.]

VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.1 ZALAM

VLSI Design

Static CMOS Logic

[Adapted from Rabaey’s Digital Integrated Circuits, ©2002, J. Rabaey et al.]

Page 2: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.2 ZALAM

Review: CMOS Process at a Glance

Define active areasEtch and fill trenches

Implant well regions

Deposit and patternpolysilicon layer

Implant source and drainregions and substrate contacts

Create contact and via windowsDeposit and pattern metal layers

One full photolithographysequence per layer (mask)

Built (roughly) from the bottom up

4 metal2 polysilicon3 source and drain diffusions1 tubs (aka wells, active areas)

exception!

Page 3: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.3 ZALAM

CMOS Circuit StylesStatic complementary CMOS - except during switching, output connected to either VDD or GND via a low-resistance path

high noise margins- full rail to rail swing- VOH and VOL are at VDD and GND, respectively

low output impedance, high input impedanceno steady state path between VDD and GND (no static power consumption)delay a function of load capacitance and transistor resistancecomparable rise and fall times (under the appropriate transistor sizing conditions)

Dynamic CMOS - relies on temporary storage of signal values on the capacitance of high-impedance circuit nodes

simpler, faster gatesincreased sensitivity to noise

Page 4: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.4 ZALAM

Static Complementary CMOS

VDD

F(In1,In2,…InN)

In1In2

InN

In1In2

InN

PUN

PDN

PUN and PDN are dual logic networks

Pull-up network (PUN) and pull-down network (PDN)

PMOS transistors only

pull-up: make a connection from VDD to F when F(In1,In2,…InN) = 1

NMOS transistors only

pull-down: make a connection from F to GND when F(In1,In2,…InN) = 0

Page 5: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.6 ZALAM

Threshold Drops

VDD

VDD → 0PDN

0 → VDD

CL

CL

PUN

VDD

0 → VDD - VTn

CL

VDD

VDD

VDD → |VTp|

CL

S

D S

D

VGS

S

SD

D

VGS

Page 6: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.7 ZALAM

Construction of PDNNMOS devices in series implement a NAND function

NMOS devices in parallel implement a NOR function

A

B

A • B

A BA + B

Page 7: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.8 ZALAM

Dual PUN and PDNPUN and PDN are dual networks

DeMorgan’s theorems

A + B = A • B [!(A + B) = !A • !B or !(A | B) = !A & !B]

A • B = A + B [!(A • B) = !A + !B or !(A & B) = !A | !B]

a parallel connection of transistors in the PUN corresponds to a series connection of the PDN

Complementary gate is naturally inverting (NAND, NOR, AOI, OAI)

Number of transistors for an N-input logic gate is 2N

Page 8: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.9 ZALAM

CMOS NAND

A

B

A • B

A B

A B F

0 0 1

0 1 1

1 0 1

1 1 0

AB

Page 9: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.10 ZALAM

CMOS NOR

A + B

A

BA B F

0 0 1

0 1 0

1 0 0

1 1 0

A B

AB

Page 10: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.12 ZALAM

Complex CMOS Gate

OUT = !(D + A • (B + C))

DA

B C

D

AB

C

Page 11: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.13 ZALAM

Standard Cell Layout Methodology

signals

Routingchannel

VDD

GND

What logic function is this?

Page 12: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.14 ZALAM

OAI21 Logic Graph

C

A B

X = !(C • (A + B))

B

AC

i

j

j

VDDX

X

i

GND

AB

C

PUN

PDNABC

Page 13: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.15 ZALAM

Two Stick Layouts of !(C • (A + B))

A B C

X

VDD

GND

X

CA B

VDD

GND

uninterrupted diffusion strip

Page 14: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.17 ZALAM

Consistent Euler Path

j

VDDX

X

i

GND

AB

C

A B C

An uninterrupted diffusion strip is possible only if there exists a Euler path in the logic graph

Euler path: a path through all nodes in the graph such that each edge is visited once and only once.

For a single poly strip for every input signal, the Euler paths in the PUN and PDN must be consistent (the same)

Page 15: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.18 ZALAM

OAI22 Logic Graph

C

A B

X = !((A+B)•(C+D))

B

A

D

VDDX

X

GND

AB

C

PUN

PDN

C

D

D

ABCD

Page 16: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.19 ZALAM

OAI22 Layout

BA D

VDD

GND

C

X

Some functions have no consistent Euler path like x = !(a + bc + de) (but x = !(bc + a + de) does!)

Page 17: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.20 ZALAM

Stick Diagrams

Contains no dimensionsRepresents relative positions of transistors

In

Out

VDD

GND

Inverter

A

Out

VDD

GNDB

NAND2

Page 18: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.21 ZALAM

OAI22 Logic Graph

C

A B

X = (A+B)•(C+D)

B

A

D

C

D

X VDD

X

GND

AB

C

PUN

PDN

D

ABCD

Page 19: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.22 ZALAM

Example: x = ab+cd

Page 20: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.23 ZALAM

XNOR/XOR Implementation

AB

A ⊕ B

A ⊕ B

A

B

XNOR XOR

A ⊕ B

A

B

AB

A ⊕ B

Can you create the stick transistor layout for the lower left circuit?

How many transistors in each?

Page 21: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.24 ZALAM

Page 22: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.25 ZALAM

Page 23: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.26 ZALAM

A simple method for finding the optimum gate ordering is the Euler-path method: Simplyfind a Euler path in the pull-down network graph and a Euler path in the pull-up networkgraph with the identical ordering of input labels, i.e., find a common Euler path for bothgraphs. The Euler path is defined as an uninterrupted path that traverses each edge(branch) of the graph exactly once. Figure 3.12 shows the construction of a commonEuler path for both graphs in our example.

Page 24: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.27 ZALAM

Page 25: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.28 ZALAM

VTC is Data-Dependent

A

B

F= A • B

A B

M1

M2

M3 M4

Cint

VGS1 = VB

VGS2 = VA –VDS1

0

1

2

3

0 1 2

A,B: 0 -> 1B=1, A:0 -> 1A=1, B:0->1

0.5μ/0.25μ NMOS0.75μ /0.25μ PMOS

The threshold voltage of M2 is higher than M1 due to the body effect (γ)

VTn2 = VTn0 + γ(√(|2φF| + Vint) - √|2φF|)since VSB of M2 is not zero (when VB = 0) due to the presence of Cint

VTn1 = VTn0

D

DS

S

weakerPUN

Page 26: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.30 ZALAM

Static CMOS Full Adder Circuit

B

B B

B B

B

B

B

A

A

A

A

A

A A

A

Cin

Cin

Cin

Cin

Cin!Cout !Sum

!Cout = !Cin & (!A | !B) | (!A & !B)

Cout = Cin & (A | B) | (A & B)

!Sum = Cout & (!A | !B | !Cin) | (!A & !B & !Cin)

Sum = !Cout & (A | B | Cin) | (A & B & Cin)

Page 27: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.31 ZALAM

Next Time: Pass Transistor Circuits

B

A A ⊕ B

Page 28: VLSI Design Static CMOS Logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10. 5. · ECE4121 Static CMOS Logic.26 ZALAM A simple method for finding the optimum

ECE4121 Static CMOS Logic.32 ZALAM

Next Lecture and RemindersNext lecture

Pass transistor logic- Reading assignment – Rabaey, et al, 6.2.3