ee141-fall 2012 digital integrated...
TRANSCRIPT
-
EE141
1
EE141EECS141 1Lecture #8
EE141-Fall 2012Digital Integrated Circuits
Lecture 8LE for Decoders
EE141EECS141 2Lecture #8
AnnouncementsHomework #4 due this Thursday
Homework #5 due next Thursday
-
EE141
2
EE141EECS141 3Lecture #8
Class Material Last lecture Gate delay and logical effort
Today’s lecture Logical effort for decoders
Reading (Chapter 6)
EE141EECS141 4Lecture #8
Decoders
-
EE141
3
EE141EECS141 5Lecture #8
Decoder Design Example
Look at decoder for 256x256 memory block (8KBytes)
EE141EECS141 6Lecture #8
Problem Setup Goal: Build fastest possible decoder with
static CMOS logic
What we know Basically need 256 AND
gates, each one of them drives one word line
N=8
-
EE141
4
EE141EECS141 7Lecture #8
Problem Setup (1)
Each word line has 256 cells connected to it CWL = 256*Ccell + Cwire Ignore wire for now (include it later in the class)
EE141EECS141 8Lecture #8
Problem Setup (2)
Assume that decoder input capacitance is Caddress=4*Ccell
-
EE141
5
EE141EECS141 9Lecture #8
Problem Setup (3)
Each address drives 28/2 AND gates A0 drives ½ of the gates, A0_b the other ½ of the
gates
EE141EECS141 10Lecture #8
Problem Setup (4)
Total fanout on each address wire is: 87 13
2
2256128 2 2
4 2cellcellload
in cell cell
CCCF BC C C
-
EE141
6
EE141EECS141 11Lecture #8
Decoder Fan-Out F of 213 means that we will want to use more
than log4(213) = 6.5 stages to implement the AND8
Need many stages anyways So what is the best way to implement the AND
gate? Will see next that it’s the one with the most stages
and least complicated gates
EE141EECS141 12Lecture #8
8-Input AND
LE=10/3 1 LE = 10/3P = 8 + 1
LE=2 5/3LE = 10/3P = 4 + 2
LE=4/3 5/3 4/3 1LE = 80/27P = 2 + 2 + 2 + 1
-
EE141
7
EE141EECS141 13Lecture #8
8-Input AND
Using 2-input NAND gates 8-input gate takes 6 stages
Total LE is (4/3)3 ≈ 2.4 So PE is 2.4*213 – optimal N of ~7.1
EE141EECS141 14Lecture #8
Decoder So Far 256 8-input AND gates Each built out of
tree of NAND gatesand inverters
Issue: Every address line has
to drive 128 gates (andwire) right away Can’t build gates small enough - Forces us
to add buffers just to drive address inputs
-
EE141
8
EE141EECS141 15Lecture #8
Look Inside Each AND8 Gate
EE141EECS141 16Lecture #8
PredecodersUse a single gate for each of the shared
terms E.g., from A0, A0, A1, and A1, generate four
signals: A0A1, A0A1, A0A1, A0A1
In other words, we are decoding smaller groups of address bits first And using the “predecoded” outputs to do
the rest of the decoding
-
EE141
9
EE141EECS141 17Lecture #8
Predecoder and DecoderA0 A1 A4 A5A2 A3
EE141EECS141 18Lecture #8
Predecoder/Decoder Layout
-
EE141
10
EE141EECS141 19Lecture #8
Predecode Options Two options for predecoding:
EE141EECS141 20Lecture #8
Predecode Options (2) Larger predecode
usually better: More stages
before the long wires Decreases their
effect on the circuit Fewer long wires
switch Lower power
Easier to fit 2-input gate into cell pitch
CL
1 161 16
256
4 to 16 predecoder
A0 A1 A2A3
A0A1A2A3
-
EE141
11
EE141EECS141 21Lecture #8
What We Now Know Given decoder structure, input capacitance,
final load Can size the entire chain using LE for minimum
delay
Is this the “best” we can do in terms of power too? Not necessarily – probably want to reduce sizes
– (especially on final decoder inputs) Is there anything else we can do to improve
energy even further?
EE141EECS141 22Lecture #8
Power
If we lower the supply voltage, energy from switching capacitors drops quadratically!
But, how does this impact delay? Need to look more closely at transistor behavior…
210 DDLVCE
iL
Vin VoutCL
VDD
-
EE141
12
EE141EECS141 23Lecture #8
Next LectureMOS transistor model