![Page 1: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/1.jpg)
Logical EffortA Method to Optimize Circuit
TopologySwarthmore College
E77 VLSI Design
Adem KaderDavid LuongMark Piper
December 6, 2005
![Page 2: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/2.jpg)
Current Issues Facing Circuit Designers
• Wanting to optimize circuits for faster performance, inexperienced designers often encounter…
– “Simulate-and-Tweak” loops– Incomplete intuition in design process– Uncertainty in decision-making
![Page 3: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/3.jpg)
Logical Effort as a Solution
• Quick method of circuit analysis– Circuit topology– Transistor sizing– Delay estimation
• Easy way to compare multi-stage designs
• “Back-of-the-envelope” calculation• Provides intuition of circuit timing
characteristics in complex circuitry
![Page 4: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/4.jpg)
How does it work?
• Assumes RC model of a transistord = gh + p
d = propagation delaygh = effort delay
• g = logical effort• h = electrical effort = Cout/Cin
p = parasitic delay
![Page 5: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/5.jpg)
Defining Logical Effort
• Ratio of the input capacitance of the gate to the input capacitance of an inverter that can deliver the same output current
• Measure of a gate to drive a particular fan-out relative to an inverter
![Page 6: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/6.jpg)
Visualizing Logical Effort
![Page 7: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/7.jpg)
Application of Logical EffortEstimating Delay Propagation
d = g h + p
timeofunitsCCCCd inAinAinAinB 5141)/4(11)/(1
timeofunitsCCd inAinB 6242)4/34(3/412)/(3/4
INVERTER
NAND
![Page 8: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/8.jpg)
Multi-Stage Design and Logical Effort
• Often circuits are more complicated than an inverter or a NAND gate
• Same framework applies with the modification…
)(igG
![Page 9: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/9.jpg)
Logical Effort and Transistor Sizing
• Interested in choosing transistor sizing to minimize stage and overall delay
f (min) = g(i) * h(i) = F1/N
• Delay equation becomes…PFND N /1
min/)()()( fiCigiC outin
• In the end…
![Page 10: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/10.jpg)
Application of Transistor Sizing
timeofunitspGBH 14)128*1*37.2(3)2(3 33
How do we choose stage capacitances given we want to minimize propagation delay?
3/88137.2(min) 33 GBHf
CCfiCigC outlastgatein 4)3/8/(8)3/4((min)/)()((min)
CCfiCigC outtendtolastgain 2)3/8/(4)3/4((min)/)()((min)2
![Page 11: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/11.jpg)
Optimal Number of GatesPath
Effort F
Optimal N
Minimum Delay, D
Stage Effort, f
0-5.83 1 1.0-6.8 0-5.8
5.82-22.3 2 6.8-11.4 2.4-4.7
22.3-82.2 3 11.4-16.0 2.8-4.4
82.2-300 4 16.0-20.7 3.0-4.2
300-1090 5 20.7-25.3 3.1-4.1
1090-3920
6 25.3-29.8 3.2-4.0
FN 4log
Rule of thumb is …
Note that single gate does not always translate to minimized delay
![Page 12: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/12.jpg)
Example: The Implementation Problem
Which do you choose?
![Page 13: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/13.jpg)
Using Logical Effort…
• Option 1:• Path logic effort G = 1 * 6/3 * 1 = 2• Path Branch Effort B = 1• Path electrical effort H = Cout/Cin = 8C/C = 8• Path Stage effort = F = GBH = 2*1*8 = 16• Dmin = N*F1/N+P = 3*(16)1/3 + (1+4*1 + 1)
= 3*3.25 + 6 = 13.5
![Page 14: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/14.jpg)
Using Logical Effort…
• Option 2:• Path logic effort G = 1 * 4/3 * 5/3 = 20/9• Path Branch Effort B = 1• Path electrical effort H = Cout/Cin = 8C/C = 8• Path Stage effort = F = GBH = 20/9*1*8 =
160/9• Dmin = N*F1/N+P = 3*(160/9)1/3 + (1+2*1
+ 2) = 3*3.25 + 5 = 12.8
![Page 15: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/15.jpg)
Using SPICE…
![Page 16: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/16.jpg)
Example: Choosing the Optimal N
The Buffer Problem• Must drive 64 parallel inverters• Choose 1, 3, or 5 series inverter stages to
drive the load?
![Page 17: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/17.jpg)
finding optimal #of stages
N 5 3 1
f 2.3 4 64
D 16.5 15 65
![Page 18: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/18.jpg)
1 inverter
![Page 19: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/19.jpg)
3 inverters
![Page 20: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/20.jpg)
5 inverters
![Page 21: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/21.jpg)
all together
![Page 22: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/22.jpg)
Problems with logical effort
• It’s only an approximation– But a good one
• It does not guarantee optimal solution– but gets quite close
• Chicken and egg problem– chicken
• Built for speed– Does not account for power consumption and physical size
![Page 23: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/23.jpg)
So What Have We Learned?
• Logical Effort…– Provides method to quickly determine
speed of design topologies for comparison
– Displays changes to parameter tweaking
![Page 24: Logical Effort A Method to Optimize Circuit Topology](https://reader035.vdocument.in/reader035/viewer/2022062304/56813d3a550346895da6fb91/html5/thumbnails/24.jpg)
I agree withstupid
It’s so… logical!
now that makes sense!