vlsi design static cmos logicstaff.iium.edu.my/zahirulalam/za/media/courses/ece4121... · 2009. 10....
TRANSCRIPT
![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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/1.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/2.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/3.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/4.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/5.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/6.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/7.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/8.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/9.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/10.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/11.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/12.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/13.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/14.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/15.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/16.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/17.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/18.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/19.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/20.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/21.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/22.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/23.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/24.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/25.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/26.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/27.jpg)
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](https://reader035.vdocument.in/reader035/viewer/2022071416/6113c8ecc2e1f0045f42a7ed/html5/thumbnails/28.jpg)
ECE4121 Static CMOS Logic.32 ZALAM
Next Lecture and RemindersNext lecture
Pass transistor logic- Reading assignment – Rabaey, et al, 6.2.3