Professional Documents
Culture Documents
Digit 3
Digit 3
tervezése
2. fejezet:
Kombinációs Hálózatok
Slides to accompany the textbook Digital Design, with RTL Design, VHDL, and
Verilog, 2nd Edition,
by Frank Vahid, John Wiley and Sons Publishers, 2010.
http://www.ddvahid.com
Bevezetés
• Let’s learn to design digital circuits, starting with
a simple form of circuit:
– Kombinációs hálózat
• A kimeneti függvények értékét kizárólag a bemeneti
változók értékének kombinációja határozza meg.
• A sorrendi hálózatok kimeneti függvényei „emlékeznek” az
előző állapotra
b=0 Digital F=0
System
Motion a
b=0 Digital F=0
sensor Digital
System
System F b=1 Digital F=1
Lamp System
Light b
b=1 Digital F=1 sensor
System b=0 Digital F=1
if a=0 and b=0, then F=0 System
if b=0, then F=0 if a=0 and b=1, then F=0
if b=1, then F=1 if a=1 and b=0, then F=1 Cannot determine value of
(a) a (b) if a=1 and b=1, then F=0 (c) F solely from present
a input value a
Digital Design 2e
Copyright © 2010 2
Frank Vahid Note: Slides with animation are denoted with a small red "a" near the animated items
2.2
Kapcsolók
• A kapcsolók a digitális áramkörök alap
alkatrészei (az áramot átengedi vagy
nem)
– Villamosságtani fogalmak
4.5 A
4.5 A
• Feszültség: Két pont közötti – +
potenciálkülönbség (volt, V) 9V
– Analógia: pl. víz nyomás
• Impedancia (Resistance): az anyag azon 2 ohms
tulajdonsága, hogy az áram folyását gátolja,
és az I²×R villamos teljesítményt hővé 9V
0V
alakítja (ohms, )
– Analógia: pl. csővezeték átmérője
4.5 A
• Áram: a töltéssel rendelkező részecskék
rendezett áramlása (Amper, A) a
quarter
Digital Design 2e (to see the relative size)
Copyright © 2010 4
Frank Vahid
Moore’s Törvénye
• Az integrált áramkörök elemsűrűsége
(db_tranzistor/mm2) 18 havonta duplázódik
– Gordon Moore az Intel társalapítója által
megfogalmazott „önbeteljesítő jóslat”
• 1965-ös jóslat – mára finomított változatban
érvényes
– A Digitális rendszerek tárgy érinti a témát
• Egy adott számú tranzisztor esetében az IC
integráláshoz használt terület 18 hónaponként
feleződik (csökken a méret)
– 10 éves időtartamban mekkora
méretcsökkenés?
– Kis alapterületen nagy számítási erő
– Napjainkban az ICk több millió tranzisztort
tartalmaznak
• Az első Pentium processor (~ 1990s évek )
csupán 3 millió tranzisztor
An Intel Pentium processor IC
Digital Design 2e having millions of transistors
Copyright © 2010 5
Frank Vahid
2.3
A CMOS Tranzisztor
• CMOS transisztor
– A modern IC-k alapvető kapcsoló eleme
a
Pozitív Vezérlő ...csatorna bekapcsolása
Feszültség ide... elektronok vándorlását
eredményezi a forrás (source) nMOS
és a nyelő (drain) között 1 0
gate
gate
oxide
IC package
source drain Vezet Nem
vezet
- - -
pMOS
1 0
IC gate
(a)
gate gate
source source
drain drain
Digital Design 2e
Copyright © 2010 7
Frank Vahid
Boole algebrán alapuló logikai kapuk 2.4
Digital Design 2e
Copyright © 2010 8
Frank Vahid
Boole Algebra és a Digitális Áramkörök kapcsolata
• Hogy a logikai kapuk használatának előnyeit megértsük
előbb meg kell értenünk a Boole algebrát!!!
• Algebra (hagyományos - általános)
– Az elemi algebra a valós és komplex számokon értelmezett
műveleteket vizsgálja konstansok és változók segítségével;
– Az absztrakt algebrában olyan fogalmak kerülnek axiomatikus
definiálásra, mint a csoport, gyűrű és test.
– A lineáris algebra foglalkozik a vektorterekkel, azok
tulajdonságaival (mátrixok, lineáris leképezések) a
• Boole Algebra
– A változók 0 vagy 1 – igaz és hamis
– Műveletek eredménye 0 vagy 1 – igaz és hamis
– Basic operators
• AND: a AND b returns 1 only when both a=1 and b=1
Digital Design 2e
• OR: a OR b returns 1 if either (or both) a=1 or b=1 9
Copyright © 2010
Frank Vahid
• NOT: NOT a returns the opposite of a (1 if a=0, 0 if a=1)
Boole Algebra és a Digitális Áramkörök kapcsolata
• Boole Algebra
– A változók 0 vagy 1 – igaz és hamis
– Műveletek eredménye 0 vagy 1 – igaz és hamis
– Alapvető műveletek
• AND: A AND B; A Λ B; A*B; igaz akkor és csakis akkor ha A=1 és B=1
• OR: A OR B; A V B; A + B; igaz ha egyik (vagy mindkét) A=1 és B=1
• NOT: NOT A; A ; /A; igaz ha A=0 (1 if a=0, 0 if a=1)
A NOT B A AND B A OR
0 0 0 0 0 0
0 1
0 1 0 0 1 1
1 0 1 0 0 1 0 1
1 1 1 1 1 1
Digital Design 2e
Copyright © 2010 10
Frank Vahid
Boole Algebra Azonosságok (Logikai) és
a Digitális Rendszerek kapcsolataCircuits
• 1800-as évek közepe George Boole: az emberi gondolkodás
formalizmusának ábrázolására
– Pl: „Vacsorázom ha Mari is vacsorázik vagy János vacsorázik és Sára
nem vacsorázik”
• Legyen F Vacsorázom (1 = igaz; 0 hamis = koplalok)
• Mari = M; János = J; Sári = S vacsorázik BA AND
• Akkor F = (M OR J) AND NOT(S) 00 0
01 0
– Egyszerű nem? 10 0
11 1
• Kiértékelés (Ma nem lesz vacsora )
– M=1, J=0, S=1 --> F = (1 OR 0) AND NOT(1) = 1 AND 0 = 0
• Transzformáció - Átalakítás - „Vacsora vagy koplalás”
BA OR
– F = (M AND NOT(S)) OR (J AND NOT(S)) 00 0
» Egyenértékű DE átalakított egyenlet 01 1
» Az átalakítás módszereit később ismertetjük 10 1
11 1
• Formális bizonyítás
– Ha Sári vacsorázik (S=1), akkor Én nem (F=0)
– F = (M OR J) AND NOT(1) = (M OR J) AND 0 = 0 A NOT
0 1
Digital Design 2e
1 0
Copyright © 2010 11
Frank Vahid
Logikai egyenletek kiértékelése
a • Példa:
• F = (A AND B) OR (C AND D)
• A, B, C, D logikai váltózók: a b AND
0 0 0
– K1: A=1, B=1, C=1, D=0. 0 1 0
1 0 0
• Válasz: F = (1 AND 1) OR (1 AND 0) = 1 OR 0 = 1. 1 1 1
– K2: A=0, B=1, C=0, D=1.
a b OR
• Válasz: F = (0 AND 1) OR (0 AND 1) = 0 OR 0 = 0. 0 0 0
0 1 1
– K3: A=1, B=1, C=1, D=1. 1 0 1
1 1 1
• Válasz: F = (1 AND 1) OR (1 AND 1) = 1 OR 1 = 1.
a NOT
0 1
1 0
Digital Design 2e
Copyright © 2010 12
Frank Vahid
Logika és egyenletek = Józan paraszti ész
a • A feladat megfogalmazása és átalakítása
egyenletté (igaz=1; hamis=0)
– K1. A igaz és B igaz.
• Válasz: F = a AND b
– Q2. vagy A vagy B igaz.
• Válasz: F = a OR b
– Q3. A igaz és B hamis.
• Válasz: F = a AND NOT(b)
– Q4. Nem igaz, hogy A nem igaz.
• Válasz:
– (a) 1. lehetőség: F = NOT(NOT(A))
– (b) 2. lehetőség: F = A
Digital Design 2e
Copyright © 2010 13
Frank Vahid
Feladatok megfogalmazása => Logikai egyenletek
=> Boole azonosságok
a • K1. Tűzoltó rendszer: Ha engedélyeztem (bekapcsoltam) és
gyors hőmérsékletemelkedést érzékel akkor azonnali
tűzoltás (vízspric).
– Válasz: Legyen E az engedélyezés és T a magas hőmérséklet, F a
tűzoltás vezérlés, akkor. F = T AND E.
• Q2. Autóriasztó: Ha engedélyezem a riasztást akkor
riasszon (nino-nino) ha rezgéseket vagy ajtónyitást érzékel a
rendszer.
– Válasz : Legyen A az engedélyezés, S a rázkodás – sokkhatás, D
pedig az ajtónyitást jelképezze. Akkor: F = A AND (S OR D).
– (a) Esetleg: Ha az feltételezzük, hogy az ajtónyitó érzékelő a
becsukott ajtót jelzi (azaz D=1 zárt, 0 nyitott),
akkor F = A AND (S OR NOT(D)).
Digital Design 2e
Copyright © 2010 14
Frank Vahid
Áramkörök hozzárendelése logikai egyenletekhez
Boole algebra logikai kapuk NOT OR AND
Boole Boole az emberi
x x
algebra gondolkodás formalizmusa Szimbólum x F F F
y y
(mid-1800s)
Telefonos x F x y F x y F
Kapcsoló kapcsolások és Igazság tábla 0 1 0 0 0 0 0 0
1 0 0 1 1 0 1 0
(~1930) egyéb
1 0 1 1 0 0
alkalmazások
1 1 1 1 1 1
1 1
1
Shannon (1938) A Boole algebra y x
alkalmazása x
kapcsoló alapú F y
Tranzisztoros x F
áramkörökben
F
áramkör x
1
1
x F
0 1 0 1 1
x F x F
1 0 0
1
0 a a
x 0
0 (a)
(b)
1 Ha a bemenet 0 Ha a bemenet 1
F
Alacsony feszültség Magas feszültség
0
L H
time
Digital Design 2e
Copyright © 2010 16
Frank Vahid
VAGY (OR) kapu
0 0
x y F
0 0 0 1 0
y y
0 1 1
1 0 1 0 0
x 1 x 0
1 1 1
F F
1 0 1 y 0 0 y
x x x
0 a a
1
y
0 1 1
1 (a) (b)
F
0 Ha egyik bemenet Ha mindkét bemenet
time H szintű L szintű
Digital Design 2e
Copyright © 2010 17
Frank Vahid
ÉS (AND) kapu
0 0
x y F
0 0 0
1 1 0 1
0 1 0 x y x y
1 0 0
F F
y 1
1 1 1
y 1 1 0
1
x 0
0 1 x
x a a
1
y
1
0 1
1 (b)
(a)
F
0
Ha mindkét bemenet Ha egyik bemenet
time H szintű L szintű
Digital Design 2e
Copyright © 2010 18
Frank Vahid
Logikai kapuk használata alkalmazásokban
a
b F
c
Digital Design 2e
Copyright © 2010 20
Frank Vahid
Példák
F = (A AND NOT(B)) OR (B AND NOT(C))
2 1 3
F = A AND (S OR D)
1 2 a
a b
s F F
d
c
(a) a a
(b)
F = a AND b AND c
a
a
b b F
F c
c
(a) (b)
Digital Design 2e
Copyright © 2010 22
Frank Vahid
Példa: Biztonsági öv
bekapcsolását jelző rendszer
•• Figyelmeztető rendszer tervezése:
• Érzékelők:
– s=1: öv „bekötve”
– k=1: kulcs be
w = NOT(s) AND k
BeltWarn
• Boole egyenlet:
k w
– Nincs öv és kulcs be
• Áramkör a
• Az idődiagram szemlélteti az
Seatbelt
áramkör viselkedését Inputs
– A bemenetek értéket felvehet (0,1) 1
k
– A kimenetek a függvénynek 0
megfelelő értéket vesznek fel 1
s a
0
Outputs
1
w
0
Digital Design 2e
Copyright © 2010 23 time
Frank Vahid
Kapuk és kapcsolók (?!)
Megjegyzés:
– A Boole algebra megkönnyíti a kapcsolás
rajzolását az egyenletek használatával
• Ha kapcsolókat használunk?
• A logikai kapuk is kapcsolók, de nem kell a
kapcsolók szintjén gondolkoznunk (tranzisztor)
w = NOT(s) AND k
1 BeltWarn
0 BeltWarn
s
k w
k s
1 Seatbelt a
Digital Design 2e
Copyright © 2010 24
Frank Vahid
Még több példa a biztonsági övvel
• Figyelmeztetés csak ha k Belt W a rn
és a kulcs be
s
• w = p AND NOT(s) AND k
(működés ellenörzése)
t
• w = (p AND NOT(s) AND k) OR t
Digital Design 2e
Copyright © 2010 25
Frank Vahid
Néhány rajzolási (áramköri) konvenció
MSZ szerinti jelölés
no yes
x
F
y
&
no yes
a
&
ok ok
& a
&
not ok not ok
Digital Design 2e
Copyright © 2010 26
Frank Vahid
2.5
Digital Design 2e
Copyright © 2010
Simplification of circuits is covered 31
Frank Vahid in Sec. 2.11 / Sec 6.2.
Példa that Applies Boolean Algebra Properties
• Olcsó áramkör amely az f függvényt
valósítja meg: DoorOpener
h
• f = c’hp + c’hp’ + c’h’p
f
– Használható az ajtónyitónál? c
• Commutative • Azonos az f = hc’ + h’pc’? p
– a+b=b+a • Boole algebra szabályaival:
– a*b=b*a
• Distributive
– a * (b + c) = a * b + a * c f = c’hp + c’hp’ + c’h’p
– a + (b * c) = (a + b) * (a + f = c’h(p + p’) + c’h’p (disztributivitás)
c)
• Associative f = c’h(1) + c’h’p (komplemens)
– (a + b) + c = a + (b + c) f = c’h + c’h’p (azonosság)
– (a * b) * c = a * (b * c)
f = hc’ + h’pc’
a
• Identity (kommutativitás)
– 0+a=a+0=a Azonosság! Válasz: Tehát az áramkört használhatjuk
– 1*a=a*1=a a megvalósításban.
• Complement
– a + a’ = 1
– a * a’ = 0
Digital Design 2e
Copyright © 2010 32
Frank Vahid
Boolean Algebrai Tulajdonságok (még)
• Egységelem (Null elements)
– a+1=1
– a*0=0
• Idempotecia
– a+a=a
– a*a=a
• Kettős negáció (Involution Law)
– (a’)’ = a
• De Morgan’s törvénye
– (a + b)’ = a’b’
– (ab)’ = a’ + b’
– Nagyon hasznos azonosságok!
• Bizonyítás az igazságtábla használatával
Digital Design 2e
Copyright © 2010 33
Frank Vahid
Példa a De Morgan tulajdonság (a + b)’ = a’b’
alkalmazására (ab)’ = a’ + b’
Circuit
a
Circuit
S a S
b b
c
c
Digital Design 2e
Copyright © 2010 34
Frank Vahid
Példa a tulajdonságok alakalmazására
• Kommutatív • „Ajtónyító” példa: f = c'(h+p) ,
–a + b = b + a
–a * b = b * a bizonyítás: ha c=1 akkor az ajtó
• Disztributív
– a * (b + c) = a * b + a * c
zárva (f=0)
– a + (b * c) = (a + b) * (a + c) – HA c = 1 vezérelt ajtó zárás
• Asszociatív
– (a + b) + c = a + (b + c)
– f = 1'(h+p)
– (a * b) * c = a * (b * c) – f = 0(h+p)
• Semleges elem
–0 + a = a + 0 = a
– f = 0h + 0p (disztributivitás)
–1 * a = a * 1 = a • egységelem – f=0+0 (egységelem)
• Komplemens –a + 1 = 1
– a + a’ = 1 –a * 0 = 0
– f=0
– a * a’ = 0 • Idempotencia
–a + a = a
–a * a = a
• Kettős negáció
– (a’)’ = a
• De Morgan azonosság
– (a + b)’ = a’b’
Digital Design 2e
Copyright © 2010
– (ab)’ = a’ + b’ 35
Frank Vahid
Függvények inverz függvénye; komplemense;
kiegészítő függvénye
• A fügyvény komplemensét inverzióval számítjuk ki:
– Ha F = 0 akkor F’ = 1; Ha F = 1 akkor F’ = 0
• A De Morgan tétel ismételt használatával számoljuk ki:
– Megyjegyzés: A De Morgan tétel több változóra is igaz (n>2 =>több)
• (a + b + c)' = (abc)'
• (abc)' = (a' + b' + c')
• Számítsuk ki az f = w'xy + wx'y'z' komplemensét:
– f ' = (w'xy + wx'y'z')'
– f ' = (w'xy)'(wx'y'z')' (DeMorgan)
– f ' = (w+x'+y')(w'+x+y+z) (DeMorgan)
• A módszer kiterjeszthető összegek szorzatára is (sum-of-
products)
Digital Design 2e
Copyright © 2010 36
Frank Vahid
2.6
Truth table
a F (d)
Circuit 2
The function F
nagyobb számok 1
1
0
1
1
0
1
1
(c)
jelzésének igazság 1 1 1 1
táblája?
Digital Design 2e
Copyright © 2010 38
Frank Vahid
Ábrázolások ekvivalenciája
avagy függvény konverziók 1
• Az függvény ábrázolások ekvivalensek
és egymásba átalakíthatók Equations Circuits
2
• Gyakori átalakítások
4 6
– Egyenletből áramkör (megvalósítás)
3 5
– Áramkörből egyenlet ( áramköri elemzés)
• Kiindulunk a bemeneti jelektől és felírjuk Truth tables
lépésenként a függvényt.
c c'
h F = c'(h+p)
p
h+p
Digital Design 2e
Copyright © 2010 39
Frank Vahid
1
4 6
3 5
• Gyakori átalakítások (még) Truth tables
a ab (ab)'
b
c' F
c (ab)'c'
Bemeneti vált. Kimeneti F
a b c ab (ab)' c' F
0 0 0 0 1 1 1
0 0 1 0 1 0 0
0 1 0 0 1 1 1
0 1 1 0 1 0 0
1 0 0 0 1 1 1
1 0 1 0 1 0 0
1 1 0 1 0 1 0
Digital Design 2e 1 1 1 1 0 0 0
Copyright © 2010 42
Frank Vahid
Logikai függvények szabványos ábrázolása:
Kombinációs tábla
• Hogyan dönthetjük el hogy kée f = c’hp + c’hp’ + c’h’
függvény azonos? f = c’h(p + p’) + c’h’p
– Önműködő ajtónyitó (megint!)
f = c’h(1) + c’h’p
• f = hc’ + h’pc’? Azonos? = ? f = c’h + c’h’p (itt is megállhatunk?)
• Elemzéshez Algebrai
módszerek használata f = hc’ + h’pc’
• Ha hibázunk akkor nem azonos
a két függvény?
• <= rossz következtetés
• Megoldás: Igazságtábla K: Határozzuk meg hogy F=ab+a’ fgv
– EGY tábla EGY függvény azonos-e az F=a’b’+a’b+ab, fgv-vel?
ábrázolás
• Szabványos ábrázolás – egy és F = ab + a' F = a’b’ +
csakis függvény értékeivel a’b + ab
a b F a b F
e
0 0 1 0 0 1 a
0 1 1
a
0
m 1 1
Digital Design 2e
Copyright © 2010
1
1
0
1
0
1 S 1
1
0
1
43
0
1
Frank Vahid
Kanonikus alak - Kombinációstábla
• K: Igazságtáblák segítségével határozzuk meg, hogy a az alábbi
kanonikus alakú függvények azonosak-e? ab+a' (a+b)' ?
F = ab + a' F = (a+b)'
a b F a b F
0 0 1 0 0 1
0 1 1 0 1 0
1 0 0 1 ! 0 0
s ak
1 1 1
o n o 1 1 0
az
em
N
a
Digital Design 2e
Copyright © 2010 44
Frank Vahid
Kanonikus alak – szozatok összege
Teljes diszjunktív normal alak
• Az igazságtábla túl bonyolult n>4 változó (bemenet)
esetében
• Ilyenkor az algebrai egyenlet használata javasolt
– Imsert nevén: Kanonikus alak (canonical form)
– Albegra: polinomok ábrázolása
• ax2 + bx + c (3x2 + 4x + 2x2 + 3 + 1 5x2 + 4x + 4)
– Boole algebra: mintermek összege
• Minterm: szorzat (AND) term - minden egyes változó legalább egyszer
igaz vagy negált (invertált, komplementált) alakban
• Logikai egyenletet addig bővítjük míg szorzatok összege nem lesz
• Majd minden termet (tagot) felírunk minterm formájában
K: Bizonyítsuk be hogy: F(a,b)=ab+a’ G(a,b)=a’b’+a’b+ab
Módszer: kanonikus alak használata, G már kanonikus alak!
F = ab+a’ (ez már szorzatok összege – ÉS kapcsolatok VAGY kapcs.)
a F = ab + a’(b+b’) (bővítés)
F = ab + a’b + a’b’ (Ekvivalencia – Azonos a G 3 term-jével)
Digital Design 2e
Copyright © 2010 45
Frank Vahid
Kanonikus alak – Mintermek összege
• K: Bizonyítsuk be, hogy G(a,b,c,d,e) = abcd + a'bcde és
H(a,b,c,d,e) = abcde + abcde' + a'bcde + a'bcde(a' + c) ekvivalensek?
G = abcd + a'bcde
G = abcd(e+e') + a'bcde
G = abcde + abcde' + a'bcde
G = a'bcde + abcde' + abcde (ÉS kapcsolatok VAGY kapcsolata)
Digital Design 2e
Copyright © 2010 47
Frank Vahid
Többkimenetű kombinációs hálózatok
• A letöbb hálózat több kimeneti függvényt valósít meg
• Mindenik függvény megvalósítható külön-külön vagy
osztozhatnak a közös term-eken
• Ex: F = ab + c’, G = ab + bc
a
a
b
b
F
F
c
c
a
a
G
G
(b)
(a)
a
f
b
g
e
c
d
Digital Design 2e
Copyright © 2010 49
Frank Vahid
Példa több kimenetű függvényre:
BCD => 7- szegmenses átalakító
a
f
b
g
e
c
d
a a a a
b b b b
c c c c
a a
b'
b c
(a) (b) a
Digital Design 2e
Copyright © 2010 55
Frank Vahid
Példa: Billentyűzet kódoló
• Step 1: Viselkedés leírás
– Igazság tábla sorai: (2^7 sor); egyenletek használhatatlanok
– Billentyű táblázat esetleg
a
Step 2b:
Megvalósítás
w = r3c2 + r3c3 + r4c1 + r4c3 + r1'r2'r3'r4'c1'c2'c3' (figyelem: közös
a
x = r2c1 + r2c2 + r2c3 + r3c1 + r1'r2'r3'r4’c1'c2'c3' termek!) ...
Digital Design 2e
y = r1c2 + r1c3 + r2c3 + r3c1 + r4c1 + r4c3 + r1'r2'r3'r4'c1'c2'c3'
Copyright © 2010 56
z = r1c1 + r1c3 + r2c2 + r3c1 + r3c3 + r4c3 + r1'r2'r3'r4'c1'c2'c3'
Frank Vahid
Példa: Öntözőberendezés Vezérlő
• Mikroprocesszor kimenetei az egyes öntőzőket vezérlik.
(pl.: cba=110 6-os zóna) és öntözés engedélyezés (e=1)
• A dekóder a megfelelő szelepet vezérli 1-be
zone 0
Step 1: Viselkedés
zone 1
d0
a
d1
b d2 2
Micro d3 3
4
d0 = a'b'c'e a
processor c
d4
d5
d1 = a'b'ce
decoder d6 5
e d7 6 d2 = a'bc'e
7
d3 = a'bce
d4 = ab'c'e
d5 = ab'ce
Digital Design 2e
Leírás egyenletekkel d6 = abc'e
Copyright © 2010
Frank Vahid kézenfekvő megoldás d7 =57abce
Példa: Öntözőberendezés Vezérlő
• Step 2b: Áramköri megvalósítás a
b
c d0
zone 0 zone 1
d0
a
d1
Micro
b d2
d3 3
2 d1
c 4
processor d4
d5
decoder d6 5
6
e d7 7 d2
d3
d0 = a'b'c'e
d1 = a'b'ce d4
d2 = a'bc'e
d3 = a'bce d5
d4 = ab'c'e
d6
d5 = ab'ce
d6 = abc'e d7
Digital Design 2e
Copyright © 2010
d7 = abce e
58
Frank Vahid
2.8
• NAND: Tagadott AND (“NOT AND”) • NAND hasonló mint az AND csak a táp
• NOR: Tagadott OR (“NOT OR”) és föld tükrözve
• XOR: pontosan egy bemenet ‚1’-es • nMOS vezeti a 0, de nem az 1 (az
XOR. (több bemenet esetében – előadás célján túl mutat) – tehát a
páratlan számú bemenet ‚1’-es) NAND hatékonyabb
• XNOR: Tagadott XOR (“NOT XOR”) • Hasonlóan NOR és OR felcserélt táppal
és földdel
• NAND/NOR gyakoribb
• CMOS AND : NOT (NAND)
Digital Design 2e • CMOS OR : NOT (NOR)
Copyright © 2010 59
Frank Vahid
More Gates: Példa Uses
• Aircraft lavatory sign Példa Circuit
a
– S = (abc)’ b
c
S
• Detecting all 0s
– Use NOR 0
0 1 a0
0
• Detecting equality b0
Digital Design 2e
Copyright © 2010 60
Frank Vahid
A NAND függvény teljessége
• Minden Boole algebrai függvény kifejezhető NAND kapukkal.
• Miért?
– Amire szükség van: AND, OR és NOT
– NOT: egy bemenetű (vagy két bemenetű NAND azonos vezérléssel)
– AND: NAND után NOT
– OR: NANDot megelőzik NOTok
– Tehát a NAND univerzális kapu
• Minden áramkör megvalósítható NAND kapukkal
• Ugyanez elmondható a NOR kapuról is
Digital Design 2e
Copyright © 2010 61
Frank Vahid
Boole algebrai függvények
• Hányféle függvénykapcsolat hozható létre a b F
0 0 0 vagy 1 2 lehetőség
két bemeneti változó között? 0 1 0 vagy 1 2 lehetőség
– 22 soros igazság tábla, minden kimenet 0 1 0 0 vagy 1 2 lehetőség
vagy 1 lehetőséggel 1 1 0 vagy 1 2 lehetőség
– 2(22) = 24 = 16 lehetséges függvény
24 = 16
• N változó Lehetséges függvények száma
– 2N sor
– 2(2N) lehetséges függvény
a b f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
a NOR b
a XNOR b
a XOR b
a NAND b
a OR b
a
1
b’
a’
0
a AND b
Digital Design 2e
Copyright © 2010 62
Frank Vahid
2.9
Dekódoló és Multiplexer
• Decoder: Popular combinational
logic building block, in addition to
logic gates d0 1 d0 0 d0 0 d0 0
– Converts input binary number to 0 i0 d1 0 1 i0 d1 1 0 i0 d1 0 1 i0 d1 0
one high output 0 i1 d2 0 0 i1 d2 0 1 i1 d2 1 1 i1 d2 0
• 2-input decoder: four possible d3 0 d3 0 d3 0 d3 1
input binary numbers
– So has four outputs, one for each
possible input binary number d0 d0 0
i1’i0’
• Internal design 1 i0 d1 0
– AND gate for each output to i1’i0 d1 1 i1 d2 0
detect input combination e d3 1
• Decoder with enable e i1i0’ d2
1
– Outputs all 0 if e=0
– Regular behavior if e=1 i1i0 d3 d0 0
• Recall sprinkler decoder design 1 i0 d1 0
• n-input decoder: 2n outputs 1 i1 d2 0
e d3 0
i1 i0 a a
0
Digital Design 2e
Copyright © 2010 63
Frank Vahid
Példa Dekódoló áramkörre
• Szilveszteri 210 21 0 0 BÚÉK!
visszaszámlálás kijelző 0
1
1
0
0
0
i0 d0 0
0
0
1
1
0
Processor
i1 d1 1
vezérlése 0 0 0 i2 d2 1 0 0 2
0 0 0 i3 d3 0 0 0 3
– Mikroprocesszor számol 0 0 0 i4
a
használata
• Nem használt 4 kimenet
Digital Design 2e
Copyright © 2010 64
Frank Vahid
Multiplexer (Mux)
• Mux: Egy másik gyakran használt logikai egység
– A kiválasztó (címző) bemenet alapján a sok bemenet közül a
megfelelő sorszámút továbbítja a kimenetre (N-ből 1).
• 4 bemenetű mux 2 címvezeték - selector
• 8 bemenetű mux 3 szelector
• N bemenet log2(N) szelector
– Min a pályaudvar válóti
Digital Design 2e
Copyright © 2010 65
Frank Vahid
Mux belső tervezés
i0 i0 (1*i0=i0)
2×1 2×1 2×1 d
1 i0 (0+i0=i0)
i0 i0 i0 i1
d d d 0
i1 i1 i1
0
s0 s0 s0
a
0 1
2x1 mux 0 s0
i0
41
i0 i1
i1 d
d
i2 i2
i3
s1 s0 i3
4x1 mux
s1 s0
Digital Design 2e
Copyright © 2010 66
Frank Vahid
Példa: Mux
• Szavazó: 0, 1, 2, 3 lehetséges javaslat közül a polgármester
szavazatát kijelző (LED) áramkör. A választó (címző) pedig 2
kapcsoló. Melyik javaslatra hogyan szavaz.
• 4x1 mux használata
Mayor’s switches
a
1
4x1 on/off
i0
2 i1
d
i2
Proposal
i3 Green/
3
s1 s0 Red
LED
4
manager's
switches
Digital Design 2e
Copyright © 2010 67
Frank Vahid
N-bit Mux – Mux kiterjesztés
2x1
a3 i0 Simplifying
d
b3 i1 notation:
s0
4-bit 4
2x1 4 C
a2 i0 2x1
d A I0 4
b2 i1 D C is short
s0 4
B I1 for
2x1
a1 i0 s0
d
b1 i1 c3
s0
s0 c2
2x1
a0 i0
d c1
b0 i1
s0
s0 c0
Digital Design 2e
Copyright © 2010 68
Frank Vahid
Példa: N-bit Mux
Fedélzeti 8bit a
T 8
számítógép I0 4x1
A 8 Kijelző
I1 8 D Visszapillantó
I 8 D
I2
M 8
I3
s1 s0
x y
Tervezés később
nyomógomb
1 1 1
y y y
0 0 0
(1.8 V) 1 1 1
F F F
(0 V) 0 0 0
time time time
(a) (b) a
(c)
ideális a
reális
késleltetéssela
de ideális
• Valós áramkörök késleltetési idővel rendelkeznek ábrázolással
– A kimenetek változása nem azonnal követi a bemeneteket
Digital Design 2e
Copyright © 2010 70
Frank Vahid
Hálózat késleltetési idő – Kritikus adatút
k BeltWarn Kritikus késleltetési idő: 6,5ns
s 1 ns 1+1+1+1+1 = 5 ns
1 ns
1 ns 1 ns 1+0.5+1+1+1+1+1 = 6.5 ns
0.5 ns
t 1 ns 1+1+1 = 3 ns
1 0
(a) (b)
Digital Design 2e
Copyright © 2010 72
Frank Vahid
Kapcsolási rajz és szimuláció
a
Inputs Inputs
i0 i0
i1 i1
Simulate Simulate
Outputs Outputs
d3 d3
d2 d2
d1 d1
d0 d0
Digital Design 2e
Copyright © 2010 74
Frank Vahid