Digital Design IE24 F3 CMOS-kretsen, Implementeringsteknologier william@kth.se
IE24 Digital Design F F3 F2 F4 Ö Booles algebra, Grindar MOS-teknologi, minimering F5 F6 Ö2 Aritmetik Ö3 KK LAB Kombinatoriska kretsar F7 F8 Ö4 F9 Ö5 Multiplexor KK2 LAB2 Låskretsar, vippor, FSM F F Ö6 KK3 LAB3 FSM, VHDL introduktion F2 Ö7 F3 Asynkron FSM Ö8 F4 tentamen Minnen Föreläsningar och övningar bygger på varandra! Ta alltid igen det Du missat! Läs på i förväg delta i undervisningen arbeta igenom igen efteråt!
Detta har hänt i kursen Talsystem: Decimala, hexadecimala, oktala, binära (75,5) = ( AE.8) = (256.4) = (.) 6 8 2 AND OR NOT EXOR EXNOR Sanningstabell, mintermer Maxtermer PS-form SP-form demorgans lag Bubbelgrindar Fullständig logik NAND NOR
Transistorn en omkopplare utan rörliga delar Gate Styrning Laddning Source Drain Omkopplare Kan leda ström (ström=laddning/tid) Principskiss för SiGe transistor (KTH)
Varför CMOS? CMOS-Transistorer är enkla att tillverka CMOS-Transistorer är gjorda av vanlig sand => billigt råmaterial En transistor är lätt att få att fungera som en switch (omkopplare)
P och N MOS-transistorer Pull Up Pull Down + + - - - - laddning + + + laddning - - - - laddning + + + laddning
Strukturen av en CMOS-krets Två olika nät: PMOS gör kretsens utgång NMOS gör kretsens utgång
Inverteraren V DD T En CMOS-krets består av både PMOS och NMOS-kretsar. CMOS står för (Complementary MOS). V x V f x T T 2 T 2 on off off on f (a) Circuit (b) Truth table and transistor states Area: A inverter = 2 Transistors
Inverteraren V x V DD T OFF V f x T T 2 T 2 ON En CMOS-krets består av både PMOS och NMOS-kretsar. CMOS står för (Complementary MOS). on off off on f (a) Circuit (b) Truth table and transistor states Area: A inverter = 2 Transistors
Inverteraren V DD T ON V x V f x T T 2 T 2 OFF En CMOS-krets består av både PMOS och NMOS-kretsar. CMOS står för (Complementary MOS). on off off on f (a) Circuit (b) Truth table and transistor states Area: A inverter = 2 Transistors
CMOS-inverterarens spänningsnivåer Utspänning V f V x V DD T V f T 2 Inspänning V x
Typiska signalnivåver för CMOS V Hmax Utgångsspänningar V O och ingångsspänningar V I passar varandra som hand i handske, och med marginal! V OHmin V OLmax Marginal er! V IHmin V ILmax V Lmin Matningsspänning 5.V 3.3V.8V V HMAX 5. 3.3.8 V IHMIN 2.9.9. V LMAX 2..4.8 V LMIN...
En instabil punkt! V out VDD CMOS-kretsen har en mycket stabil överföringsfunktion Vid V in =V DD /2 finns en instabil punkt, då både T och T 2 leder. Om en krets tillfälligt fastnar i detta läge så inträder ett tillstånd som kallas för metastabilitet. VDD Instabil punkt V in Om detta tillstånd varar för länge så kan transistorerna i kretsen skadas pga den höga strömmen. Vi återkommer till metastabilitet
CMOS - Dynamisk förlusteffekt! Klassisk CMOS har bara förlusteffekt precis vid omslaget. Förlusteffekten P F blir proportionell mot klockfrekvensen! P V f C 2 f C P f F F C DD f C V Power 2 DD losses Clockfrequency Supply Voltage
Snabbfråga: Vilken grind? VDD VA VB VO V A V B V O V SS () V SS () V SS () V DD () V DD () V SS () V DD () V DD () VSS
Snabbfråga: Vilken grind? VDD ON ON VA OFF VO VB OFF VSS V A V B V O V SS () V SS () V DD () V SS () V DD () V DD () V SS () V DD () V DD ()
Snabbfråga: Vilken grind? VDD OFF ON VA OFF VO VB ON VSS V A V B V O V SS () V SS () V DD () V SS () V DD () V DD () V DD () V SS () V DD () V DD ()
Snabbfråga: Vilken grind? VDD ON OFF VA ON VO VB OFF VSS V A V B V O V SS () V SS () V DD () V SS () V DD () V DD () V DD () V SS () V DD () V DD () V DD ()
Snabbfråga: Vilken grind? VDD OFF OFF VA ON VB ON VO VSS V A V B V O V SS () V SS () V DD () V SS () V DD () V DD () V DD () V SS () V DD () V DD () V DD () V SS ()
NAND-grinden VDD VA VB VO V A V B V O V SS () V SS () V DD () V SS () V DD () V DD () V DD () V SS () V DD () V DD () V DD () V SS () VSS Area: A NAND = 4 Transistors
AND-grinden! VDD VO VA VB AND NOT VSS Area: A AND = 6 Transistors!
NOR-grinden VDD VA VB VOH V A V B V OH V SS () V SS () V DD () V SS () V DD () V SS () V DD () V SS () V SS () V DD () V DD () V SS () VSS Area: A NOR = 4 Transistors
Negativ logik? Man kan också vända på begreppen och låta L (låg spänning) representera en logisk :a och låta H (hög spänning) representera en logisk :a. Detta kallas för negativ logik. En AND-funktion blir då en OR-funktion och vice versa. Negativ logik eller positiv logik är egentligen egalt, men av tradition använder man sig av positiv logik.
Three-state? En CMOS-grind kan förutom eller även förses med ett tredje utgångstillstånd Three-state Z ( = frånkopplad utgång ). Om många utgångar kopplas ihop till samma tråd ( buss ) så kan ju bara en av utgångarna åt gången få vara aktiv. De övriga hålls i Threestatetillståndet.
Three-state? En CMOS-grind kan förutom eller även förses med ett tredje utgångstillstånd Three-state Z ( = frånkopplad utgång ). Om många utgångar kopplas ihop till samma tråd ( buss ) så kan ju bara en av utgångarna åt gången få vara aktiv. De övriga hålls i Threestatetillståndet. ON ON
Three-state? En CMOS-grind kan förutom eller även förses med ett tredje utgångstillstånd Three-state Z ( = frånkopplad utgång ). Om många utgångar kopplas ihop till samma tråd ( buss ) så kan ju bara en av utgångarna åt gången få vara aktiv. De övriga hålls i Threestatetillståndet. OFF OFF
Three state Z Y = A Y ='Z' Connected inverter Unconnected inverter
Transmissionsgrinden (Pass gate) E A Q A E Q E Utan att gå in på kretsdetaljerna så består en transmissionsgrind av en PMOS-transistor i parallell med en NMOS-transistor. Grinden styrs med E (och E ) och är då att jämföra med en vanlig kontakt. En signal kan gå från A till Q, men även baklänges från Q till A. Transmissionsgrindskopplingar utnyttjar färre transistorer än andra grindar, men har sämre drivförmåga. Area: A TG = 2 Transistors
( Transmissionsgrinden ) E E A OFF Q A Q OFF E E V A V E V OH L L Z L H L H L Z H H H A E E Q Transmissions grinden kan ses som en switch A Q som styrs av en signal E och dess invers E.
( Transmissionsgrinden ) E E A ON Q A Q ON E E V A V E V OH L L Z L H L H L Z H H H A E E Q Transmissions grinden kan ses som en switch A Q som styrs av en signal E och dess invers E.
ON ( Inside story ) OFF E Transmission gate ON, both transistors are in parallell and contribute to the low On resistance of the switch. V S, V D V S, V D E The switch will work in both directions!
Vad är en multiplexor, MUX? En multiplexor är en dataväljare. Q=XS+YS X Y Q X Y Q S S
Förenklat ritsätt Exempel: MUX X Y Q X Y S Q Q=XS+YS S X Y S Bubbla Q Av inverteraren blir endast ringen kvar. Mellanliggande ledningar underförstås.
MUX med transmissionsgrind 2 MOS Sel X 2 MOS 2 MOS Y Q Area: A mux = 6 Transistors
MUX med transmissionsgrind 2 MOS Sel X Y 2 MOS ON OFF 2 MOS X Q Area: A mux = 6 Transistors
MUX med transmissionsgrind 2 MOS Sel X Y 2 MOS OFF ON 2 MOS Y Q Area: A mux = 6 Transistors
XOR med transmissionsgrind A B 2 MOS 2 MOS 2 MOS 2 MOS F = A B Area: A XOR = 8 Transistors Knappast självklart?
( XOR med transmissionsgrind ) A B F F = B F = B
Fördröjningar i kretsar Alla ledningar i elektronikkretsar har kapacitans. Det tar ett tag för spänningar att nå slutvärdet. Dessa fördröjningar i kretsar och mellan kretsar begränsar snabbheten.
Typiska fördröjningar NAND,NOR, NOT NOT NAND-NAND AND-OR XOR,XNOR,MUX T NAND=standard T ½ T, T (om NAND-grind) 2T (2 NAND i rad) XOR,MUX (med TG) 2T 4T, 3T (NAND-NOT+NOR-NOT) 3 5T
Optimerade strukturer för MUX DeMorgan AND-OR NAND-NAND Area: A MUX = 2+6+6+6=2 Transistorer Delay: T MUX = 5T NAND Area: A MUX =2+4+4 = = Transistorer Delay: T MUX = 3T NAND Area: A MUX = 6 Transistorer Delay: T MUX = ~2T NAND Bäst!
Optimerade strukturer för XOR DeMorgan Area: A XOR =2+2+6+6+6=22 Transistorer Delay: T XOR =5T NAND Area: A XOR =2+2+4+4=2 Transistorer Delay: T XOR =3T NAND Nand only Area: A XOR =4+4+4+4=6 Transistorer Delay: T XOR =3T NAND Area: A XOR =8 Transistorer Delay: T XOR =~2T NAND Bäst!
Fan-out och Fan-in Fan-out - en utgång driver många ingångar. Utgången lastas ned med summan av ingångarnas kapacitanserna => fördröjningen T blir last-beroende. Fan-in - en grind har många ingångar. Detta medför att den har fler inre kapacitancer => den inre fördröjningen T i (även kallad den intrinsiska fördröjningen) blir större.
Grindar med flera ingångar VA VB VC T i 3-input NAND VDD VQ Lång rad av seriekopplade transistorer ger långsam funktion! Spänningsdelning. Låg spänning över varje transistor VSS Man använder sällan grindar med fler än fyra ingångar.
Hög Fan-in löses med trädstrukturer Bara en kontakt?
Hög Fan-in löses med trädstrukturer 2
Hög Fan-in löses med trädstrukturer 2 3
Hög Fan-in löses med trädstrukturer 2 3 4
Hög Fan-in löses med trädstrukturer Nu fem kontakter! 2 3 4 5
Hög Fan-in löses med trädstrukturer DeMorgan Till priset av ökat grind-djup (fördröjning) ( c) b a c b a = ) ( ) ( d c b a d c b a = d c b a d c b a = + ) ( ) (
Fler trädstrukturer a + b + c + d = ( a + b) + ( c + d) a b c d = ( a b) ( c d) Till priset av ökat grind-djup (fördröjning), men effekten av inre kapacitanser hade blivit värre. a b c d = ( a b) ( c d) Kan Du bevisa dessa likheter?
Fan-out Antalet grindar som en grind driver betecknas som fan-out Alla grindar som drivs ökar den kapacitativa lasten x N f To inputs of n other inverters x V f To inputs of n other inverters C n = n C (a) Inverter that drives n other inverters (b) Equivalent circuit for timing purposes
Fan-out Fördröjningen för olika fan-outs V f for n = V DD V f for n = 4 Gnd Time
Buffer En buffer är en krets som implementerar funktionen f(x) = x ( det vill säga ut = in ) Idén med bufferten är att ökar drivförmågan av kapacitativa laster - För att öka drivförmågan så använder man större transistorer - Buffrar kan dimensioneras så att de kan driva större strömmar
Hög Fan-out använd buffer W 3W x En f x En f Z Z En x f Non-inverting Buffer High-Fan-Out Buffer Tri-state Buffer
Critical path (den längsta vägen) f = + + x x x2 x x2 x x2 x x x 2 f Vilken väg till utgången tar längst tid? x x x 2?
Critical path f = + + x x x2 x x2 x x2 x x x 2 f x x x 2 passerar alla var sin NOT, AND, och OR, på vägen mot utgången f, men x 2 belastas av tre ingångar, x och x bara av två. Critical path blir x 2!
Look-up-tables (LUT) Programmable cells / / / A LUT with n inputs can realize all combinational functions with n inputs The usual size in an FPGA is n=4 f / x 2 x Two-input LUT
Ex. XOR-funktion Programmed values Multiplexer x x 2 Two-input LUT f x x2 f
74-series standard chips
Standardkretsarna används mest som reservdelar Inte så dyra! Men många fler än skolorna behöver kretsarna. Det finns många kvar i lager
Implementering av en logisk funktion V DD 744 f = + x x x 2 2x3 748 7432 x x 2 x 3 f
Hur testar man logiska funktioner? Man kan koppla upp funktionen och kontrollmäta! På kopplingsdäck: Kapsel layout: x x x 2 2x3 f = +
Hur testar man logiska funktioner? Inför laborationerna simulerar vi funktionerna med LTSpice! f = = + x x x 2 2x3
Kommer Du ihåg? Trevägs ljuskontroll Brown/Vranesic: 2.8. Antag att vi behöver kunna tända/släcka vardagsrummet från tre olika ställen. x 3 x 2 f x x 2 x 3 f x
Trevägs ljuskontroll x x 2 x 3 f f = m(,2,4,7) = xx2 x3 + xx2 x3 + xx2 x3 + xx2 x 3
NAND-NAND Om vi byter till NAND-NAND så behövs bara en sorts grindar. x x 2 x 3 f 744 74 74 742
Du måste skriva dit pinn-nummer i schemat annars kommer Du att villa bort dig! 2: 2:2 2:3 2:2 x 3 :2 : :4 :3 :2 :3 2: 2: 2:9 3: 3:3 3:2 # #2 #3 #4 3:3 3:4 3:5 2:8 3:2 3:6 4: 4:2 4:4 4:5 4:6 x x 2 744 74 74 742
På kopplingsdäck
Simulera sanningstabellen Något som Du vill fråga om?
Sammanfattning Logiska grindar kan implementeras med CMOS-teknologin CMOS-kretsar har en fördröjning CMOS-kretsar förbrukar relativ lite effekt
Facebooks första serverhall i Luleå. Argumenten är kylan och ett elnät som inte haft avbrott sedan 979.
Facebooks serverhall i Luleå Driften av de tusentals servrarna slukar enorma mängder energi. Fullt utbyggd kräver anläggningen 2 MW, mer än SSAB:s stålverk!
Hur skulle världen vara utan CMOS?