Integrált áramkörök/4 Digitális áramkörök/3 CMOS megvalósítások
Rencz Márta Elektronikus Eszközök Tanszék
Mai témák • Transzfer kapu • Kombinációs logikai elemek különböző CMOS megvalósításokkal • Meghajtó áramkörök • További jellegzetes MOS-CMOS kombinációs hálózati elemek • MOS impulzus adó és tároló elemek szekvenciális hálózatokhoz • Aritmetikai elemek 11/22/2007
2/37
Transzfer kapu MOS áramkörökben alkalmazott különleges eszköz. • A jelfolyamba "vízszintesen" behelyezve egy tranzisztort, annak gate-jét vezérelve a jeláramlást engedélyezhetjük, vagy megszakíthatjuk. Kétirányú
A
A=1 -t veszteséggel viszi át
11/22/2007
B
C
C •NMOS esetén a tranzisztor a jel feszültségét kb. VT - vel csökkenti. •Ha az "A" ponton U jelszint van, A B DD a "B" ponton UDD-VT jelenik meg. •A logikai "1" tartományt tehát kell meghatározni, hogy ez még C "beleférjen". (UHm < UDD-VT)
3/37
Transzfer kapu CMOS verzió: •CMOS kivitelben egy n és egy p típusú tranzisztort kapcsolnak össze, a vezérlő jelek negáltak C=0 : Szakadás • a jel vagy az egyik vagy a másik vezető tranzisztoron veszteség nélkül A B átvitelre kerül.
C=1, A=0 : n vezet C
A
B
C
C=1, A=1 : p vezet C
MOS és CMOS transzfer gate-ek alkalmazásával tovább egyszerűsíthetők az áramkörök. 11/22/2007
4/37
Példa: transzmissziós kapuk alkalmazása A példa: 4/1 multiplexer (kiválasztás: a 4 bemenetből a 2 vezérlő jel által meghatározottat teszi a kimenetre, pl. C0=0, C1=1, akkor Y=D2)
"Klasszikus kivitelben" 2db inverter, 4db 3 bemenetű, 1db 4 bemenetű NOR kapu NMOS 2×2+4× (3+1)+1×(4+1) = 25 tranzisztor CMOS 2×2+4×(3+3)+1×(4+4) = 36 tranzisztor Transzfer gate-ekkel: 2db inverter, 6db transzfer gate NMOS 2×2+6×1 = 10 tranzisztor CMOS 2×2+6×2 = 16 tranzisztor 11/22/2007 5/37
Kombinációs logikai elemek különböző CMOS megvalósításokkal Pseudo n-MOS kapuk •A kiürítéses terheléses nMOShoz hasonló → van statikus teljesítmény felvétel •Kis terület •CMOS áramkörökkel együtt használható ha a tranzisztorszám kritikus
11/22/2007
6/37
Kombinációs logikai elemek különböző CMOS megvalósításokkal Órajel vezérelt CMOS kapu •Kis terület •3 állapotú (tri-state) kapuk φ= 0: a kimenet lebeg φ= 1: a kimenet a bemenet invertáltja
11/22/2007
7/37
Kombinációs logikai elemek különböző CMOS megvalósításokkal CMOS dominó logika Előtöltés: a kimenetet terhelő C-t előre tápfeszültségre töltjük, mert a kisütés gyorsabb mint a feltöltés. Ha kell kisütjük, ha nem, nem. φ= 0: előtöltés VDD-re, p1 = be, n4 = ki φ= 1: kiértékelés, p1 = ki, n4 = be Tranzisztorszám: n+2 Csak dinamikus fogyasztás Problémája: ki = 0, csak késéssel jelenik meg → a kiértékelő fázis elején rövid ideig egy hamis 1 állapot (glitch) van a kimeneten
11/22/2007
8/37
Kombinációs logikai elemek különböző CMOS megvalósításokkal CMOS dominó logika Megoldások: egy további inverter (hagyományos), ami a pozitív glitch-t negatívvá változtatja, ami nem okoz problémát → dupla inverzió → a következő kaput célszerűbb komplementer logikával megvalósítani (UDD és a föld felcserélve)
inverteres megoldás
11/22/2007
9/37
Kombinációs logikai elemek különböző CMOS megvalósításokkal CMOS dominó logika Megoldások: egy további inverter (hagyományos), ami a pozitív glitch-t negatívvá változtatja, ami nem okoz problémát → dupla inverzió → a következő kaput célszerűbb komplementer logikával megvalósítani (UDD és a föld felcserélve), itt a + glitch nem okoz bajt...
váltott logikájú megoldás
Ma a digitális CMOS áramkörökben leggyakrabban 11/22/2007 10/37 alkalmazott megoldás
Meghajtó áramkörök Bonyolult áramkörökben az információ továbbítás hosszú közös adatvonalakon, un. buszokon történik.
Hosszú, azaz nagy szórt kapacitású vonalak meghajtására (pl. belső adatbuszok vagy órajelek) nagy kimeneti áramú kapuk (buffer). Rendszerint 3 állapotú kimenettel (pl. buszok meghajtására).
11/22/2007
11/37
Meghajtó áramkörök Növekvő w/L arányú inverterek sorozata • Nagy w/L arányú tranzisztorokkal lehetne nagy áramokat biztosítani, de az adódó nagyon nagy méretek mellett a buffer bemeneti kapacitása is nagy lenne közönséges kapuk nem tudnák meghajtani. • A probléma pl. egyre növekvő w/L arányú inverterek sorozatával oldható meg, pl. w/L= 5, 20, 80… Jobb megoldások...
11/22/2007
12/37
Meghajtó áramkörök Ellenfázisú inverter
nagy
kicsi
11/22/2007
•Csak az egyik kimeneti tranzisztor vezet → hasonlóan a CMOS-hoz → nagyon alacsony fogyasztás (csak az első, kis méretű inverternek van fogyasztása) •w/L = 20÷100 a második kapu mindkét tranzisztorára → meander gate struktúra
13/37
Meghajtó áramkörök 3 állapotú buffer
Ha egyik kimeneti tranzisztor sem vezet, a kimenet nagy impedanciájú állapotban van. • E = 1 N7 és N8 off→nagyimp. állapot • E = 0 normál CMOS működés
11/22/2007
14/37
További jellegzetes MOS-CMOS kombinációs hálózati elemek Multiplexerek A C1C0 értéke által kijelölt adat (D) kerül a kimenetre
NOR kapus megoldás 11/22/2007
Transzfer gate-es NMOS verzió 15/37
További jellegzetes MOS-CMOS kombinációs hálózati elemek 4 fázisú dinamikus shift regiszter Dinamikus működés: az információ időlegesen a kimenetre kapcsolt kapacitásban tárolódik → az órajelnek nem szabad megállni
Előtöltés
Logikai szintek: VDD és 0 V Probléma: ha a bemenetre kapcsolódó jel 0 V és φ2 = 1 a töltés megoszlik a terhelő kapacitás és a bemeneti vonal kapacitás között → a kimeneti jel szint romlik 11/22/2007
16/37
További jellegzetes MOS-CMOS kombinációs hálózati elemek I/O áramkörök Kimeneti áramkörök Általában olyan 3 állapotú buffer-ek, ahol az áramköröket úgy egészítik ki, hogy egyúttal a kimenő adat tárolását is elvégezzék → általában D tárolóvá kiegészítve. Bemeneti áramkörök • Túlfeszültség védelmet látnak el. ui. az IC-t megérintő ember sztatikus feltöltődéséből származó kisütőáram (néhány kV, néhány μA) a bemeneti tranzisztor vékony gate oxid-ját átüti és tönkreteszi • → a gate-et ellenállásokból és diódákból álló hálózattal védik. 11/22/2007
17/37
További jellegzetes MOS-CMOS kombinációs hálózati elemek CMOS áramkörök bemeneti védelme Pozitív áramimpulzusokra a diódák kinyitnak, negatív impulzusra elérik a letörési feszültséget, így védik meg a gate oxidot.
Egyetlen dióda nyitó ill. letörési karakterisztikáját kihasználó védelem 11/22/2007
2 dióda nyitókarakterisztikáját kihasználó védelem 18/37
MOS impulzus adó és tároló elemek szekvenciális hálózatokhoz Két állapotú elemek: • Monostabil impulzus adó áramkörök (monoflop-ok) • Bistabil két állapotú elemek: flip-flop-ok • Transzparens két állapotú áramkörök (latch-ek) (a bemeneti jelváltozás azonnali kimeneti jelváltozást eredményez) • Master-slave flip-flopok (kimeneti jelváltozás órajelre)
11/22/2007
19/37
MOS impulzus adó és tároló elemek szekvenciális hálózatokhoz Monostabil impulzusadó áramkör A kapukésleltetést használja ki: NOR kapus kivitelben a kimeneten akkor jelenik meg egy rövid ideig tartó + impulzus, amikor a bemenő jel 1-ből 0-ba vált (a NAND kapus verzió a lefutó élre ad impulzust)
11/22/2007
20/37
MOS tároló elemek szekvenciális hálózatokhoz • Két állapotú áramkörök alapja: két, gyűrűbe kapcsolt inverter két stabil állapota van. • Ahhoz, hogy tárolóként lehessen használni, írhatóvá kell tenni, az inverterek helyett logikai kapuk, amiknek a további bemenetei lehetővé teszik a beállítást.
11/22/2007
21/37
MOS tároló elemek szekvenciális hálózatokhoz 1 bites tárolók Transzparens két állapotú áramkörök (latch-ek) Alapelem: SR latch S: set (beíró) , R: reset( törlő) bemenetek, Q: kimenet
Sn
Rn
Qn+1
0 1 0 1
0 0 1 1
Qn 1 0 ?
11/22/2007
SR latch NMOS és CMOS kivitelben
22/37
MOS tároló elemek szekvenciális hálózatokhoz Órajellel szinkronizált SR latch
Csak az órajellel megengedett (ENABLEd) időtartamokban történhet változás A PRESET és CLEAR vezérlőjelekkel a bemenettől függetlenül is vezérelhető verzió:
11/22/2007
23/37
MOS tároló elemek szekvenciális hálózatokhoz D latch: késleltető elem (1 bit delay device, data latch)
11/22/2007
24/37
MOS tároló elemek szekvenciális hálózatokhoz Transzfer kapukkal realizált D latch Dn 1 0
Qn+1 1 0
CP alatt transzparens működés, Q=D CP alatt a kimenet visszaíródik a bemenetre 11/22/2007
25/37
MOS tároló elemek szekvenciális hálózatokhoz Master-slave tároló áramkörök (flip-flopok) 2 sorbakötött, ellenütemű órajellel vezérelt latch-ből állíthatók össze Master-slave SR tároló
11/22/2007
26/37
MOS tároló elemek szekvenciális hálózatokhoz Master-slave D tároló SR tárolókból kötött egy bemeneti inverterrel
Jóval kisebb helyfoglalású a dinamikus megoldás:
Dinamikus CMOS master-slave D tároló Dinamikus áramkörök: az információ időleges tárolása egy kapacitásban történik. CP alatt D→C1-be, CP alatt S→C2-be
11/22/2007
27/37
MOS tároló elemek szekvenciális hálózatokhoz Regiszterek •Sorba kötött flip-flopok, ált. egy byte vagy egy szó (pl.32 bit) tárolására alkalmasak. •Nagyon változatos kialakításúak, változatos célokra.
Egy általánosan használatos kialakítás :
Ez a regiszter 4 bit tárolására, soros-párhuzamos átalakításra, shiftelésre, párhuzamos-soros átalakításra egyaránt használható.
Összeadók
Aritmetikai elemek
Teljes összeadók (full adder, FA)
A COUT
B CIN FA
3 bemenete és 2 kimenete van, •bemenetek: A, B, CIN •kimenetek: S, COUT
S
A teljes összeadás kimeneti logikai függvényei COUT = AB + CIN (A+B) S = ABCIN + (A+B+CIN)COUT 11/22/2007
29/37
Aritmetikai elemek → két komplex kapuval realizálható, de COUT 1, míg S 2 kapu késleltetéssel képződik
További probléma, hogy a kimenetek negáltak → további inverterekre van szükség
Aritmetikai elemek Félösszeadó Ha nincs bemeneti átvitel (pl. legkisebb helyi értékű bitek) a szükséges összeadó az un. half adder, HA áramkör, sokkal egyszerűbb A COUT
B
HA S
11/22/2007
31/37
Aritmetikai elemek Több bites szavak összeadására szolgáló soros összeadó A2 COUT2
B2
FA S2
A1 COUT1
B1
FA
A0 COUT0
B0 CIN FA(HA)
S1
S0
Problémái: Bit1 várni kényszerül COUT0-ra Bit2 várni kényszerül COUT1-re stb. → a művelethez szükséges idő n × COUT előállítási ideje 11/22/2007
32/37
Aritmetikai elemek Az inverterek megspórolhatók: A2 COUT2
B2
FA* S2
A1 COUT1
váltakozó logikájú összeadó B1
FA* S1
A0 COUT0
B0 CIN FA*(HA) S0
Előny: gyorsabb, Hátrány: negált jelek Gyorsabb megoldás: előre kiszámított Carry (look-ahead) (az átvitelt előre generáljuk egyszerre több fokozatra) Előny: gyorsabb Hátrány: bonyolultabb
33/37
Aritmetikai elemek Több szám összeadására: un. Carry-save megoldás A feladat: K darab N bites szám összeadása (k −1)× n × tcarry A művelethez szükséges idő: Gyors összeadás: pl. összeadandó P,Q,R,S,T P2
Q2
FA S2
FA T2
FA
R2 P1
Q1
FA S1
FA T1
FA
R1 P0
Q0
FA S0
HA T0
R0
A szükséges műveleti idő:
(k −1)tcarry + n × tcarry ≈ (k + n )tcarry
További gyorsítás: Pipeline működés az első sor a működés második ütemében már egy következő összeg előállításán dolgozik → a szükséges műveleti idő átlagosan: ≈1× tcarry
HA
Utolsó sor: bármilyen normál összeadó
34/37
Aritmetikai elemek Kombinációs szorzók Az összeszorzandó számok An és Bn Bináris számok szorzása B0=1
A2 A1 A0
B1=0
A2 A1 A0
B2=1
A2 A1 A0
+
M5 M4 M3 M2 M1 M0 Ha B adott bitje 1, bekerül az összegbe, egyébként nem 11/22/2007
35/37
Aritmetikai elemek Az ezt megvalósító áramköri elrendezés A2 A1 B0
A0
&
&
&
α2
α1
α0
&
&
&
β3
β2
β1
&
&
&
γ4
γ3
γ2
B1
B2
11/22/2007
36/37
Aritmetikai elemek Az összeadást elvégző további áramkör részlet β3
HA γ4
γ3
FA M5
M4
β2 α2
β1 α1
FA
HA
α0
γ2
FA M3
HA M2
M1
M0
A minimálisan szükséges terület: & kapu : 3 tranzisztor + HA:7 tranzisztor + FA: 14 tranzisztor→ egy 3×3 szorzás 90, egy 8×8 szorzás 920 tranzisztort igényel, → kritikus művelet, sok 37/37 gyorsító megoldás létezik