You are on page 1of 74

Digitális Rendszerek

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

Copyright © 2010 Frank Vahid


Instructors of courses requiring Vahid's Digital Design textbook (published by John Wiley and Sons) have permission to modify and use these slides for customary course-related activities,
subject to keeping this copyright notice in place and unmodified. These slides may be posted as unanimated pdf versions on publicly-accessible course websites.. PowerPoint source (or pdf
Digital
with animations) may Design 2e
not be posted to publicly-accessible websites, but may be posted for students on internal protected sites or distributed directly to students by other electronic means.
Copyright © 2010
Instructors may make printouts of the slides available to students for a reasonable photocopying charge, without incurring royalties. Any other use 1 requires explicit permission. Instructors
Frank Vahid
may obtain PowerPoint source or obtain special use permissions from Wiley – see http://www.ddvahid.com for information.
2.1

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

– Analógia: pl. a víz áramlása a csőben


• V = I * R (Ohm’s törvénye) 9V-os potenciál különbség
– 9 V = I * 2 ohms létrehozásával egy 2 ohmos
– I = 4.5 A
Digital Design 2e
ellenálláson keresztül 4.5 A erősségű
Copyright © 2010
áram folyik. 3
Frank Vahid
Kapcsolók
control
• Kapcsoló részei: input

– Két kivezetése van (be, ki) “off”


• Az áram irány be -> ki
– Vezérlő bemenet source output
input a

• Feszültség vezérelt control


input
• „Vezérelt kapcsoló történet”: “on”

– 1930s: Relé (Relays)


source output
– 1940s: elektroncső (Vacuum input
tubes) (b)

– 1950s: Tranzisztor (Discrete


transistor)
– 1960s: Integrált áramkörök
Integrated circuits (ICs) discrete
• Pár tranzisztor egy lapkán IC transistor
IC
• Több tíz, száz, ezer, tízezer, stb. relay vacuum tube

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)

Szilicium – se nem vezető se nem szigetelő: Nem Vezet


vezet
Félvezető - Semiconductor
Digital Design 2e
Copyright © 2010 6
Frank Vahid
CMOS Tranzisztor Analógia

gate gate
source source

drain drain

Digital Design 2e
Copyright © 2010 7
Frank Vahid
Boole algebrán alapuló logikai kapuk 2.4

Digitális áramkörök építő elemei


(Mert kapcsolókkal nehéz dolgozni)

• A „logikai kapuk” jobb építőeleek min a kapcsolók vagy a tranzisztorok


– Miért?...

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

Digitális Rendszerek Tervezése


x y
y
0
0 0
• Tranzisztorok használatával Boole
1.8 V
függvények megvalosítása “1”
Folyt köv.
Megj:: működés később
– Logikai kapuk logic gates. 1.2 V kapcsolás hatékonyság
vizsgálat később
– Áramkörök építésének matematikája 0.6 V
“0”
– eszköz a tervező kezében 0V
Digital Design 2e 1 és 0 feszültségértékekhez
Copyright © 2010
rendelés 15
Frank Vahid
Inverter (NOT) kapu

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

• Pl: 1 fejezet - mozgásérzékelés a sötétben


– Ha mozgást érzékel (A=1) és sötét van (B=0) =>
lámpa bekapcsolás (F=1)
– F = A AND NOT(B)
– Logikai kapukkal: AND, NOT
– Első digitális áramkör megépítve!
Digital Design 2e
Copyright © 2010 19
Frank Vahid
Példa: Boole (Logikai) Egyenletek megvalósítása
logikai kapukkal – kapcsolási rajz
Kiindulási pont: a kimenet (F) és visszafejtük az egyenletet

• K: Adott a következő egyenlet. Mi a kapcsolási rajz? F


= a AND NOT( b OR NOT(c) )

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)

Start from the output, work back towards the inputs


Digital Design 2e
Copyright © 2010 21
Frank Vahid
Több bemenetű kapuk (kettőnél több) használata

F = a AND b AND c

a
a
b b F
F c
c
(a) (b)

3 bemenet éskapcsolata AND(a,b,c)

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

személy van az ülésben p w

(p=1), és az öv nincs bekötve a

és a kulcs be
s
• w = p AND NOT(s) AND k

• 5 másodperces késleltetéssel k BeltWarn

t=1 jelzés ha kulcs be. p


w
Figyelmeztetés amikor t=1 s
a

(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

Boole Algebra – józan paraszti ész!!!


• Algebrai módszerek használatával - Boole algebra - logikai
függvényeket határozhatunk meg
• Jelőlés: a AND b, a OR b, NOT(a) nehézkes ezért
– A „fóliák”: a * b (vagy ab), a + b, és a’ (/a) jelölést használják
• Egyenlet: w = (p AND NOT(s) AND k) OR t
• Jelölés: w = ps’k + t
– W egyenlő P és nem S és K vagy T
– Vagy: W egyenlő PnemSK vagy T
– s’ az s” komplemense
• NE HASZNÁLJUK a „szor” és a „plusz” kifejezéseket
– „logikai szorzat„ és „logikai összeg” még elfogadható

Boole algebrai precedencia azaz műveleti sorrend


Szimb.  Függv  Leírás 
( )  Zárójel  A zárójelben lévő kifejezések kiértékelése először
’  NOT  Kiértékelés balról jobbra 
*  AND  Kiértékelés balról jobbra
Digital Design 2e
Copyright © 2010
+  OR  Kiértékelés balról jobbra 27
Frank Vahid
Boole Algebra: Műveletek sorrendje -Precedencia
• Értékeljük ki az alábbi Boole algebrai függvényeket feltételezve, hogy
a=1, b=1, c=0, d=1.
– Q1. F = a * b + c.
• Válasz: * fontosabb mint +, tehát a kiértékelés balról jobbra történik
F = (1 *1) + 0 = (1) + 0 = 1 + 0 = 1.
– Q2. F = ab + c.
• Válasz: a feladat hasonló csak a rövidített jelölést használtuk a * helyett.
– Q3. F = ab’.
• Válasz: először a b’ {NOT(B)} értékeljük, mert a műveleti sorrend ezt kívánja, majd az AND,
a kapcsolatot értékeljük ki. Így: F = 1 * (1’) = 1 * (0) = 1 * 0 = 0.
– Q4. F = (ac)’.
• Válasz: először a zárójelben lévő kifejezést értékeljük ki , majd az inverziót (NOT)
F = (1*0)’ = (0)’ = 0’ = 1.
– Q5. F = (a + b’) * c + d’.
• Válasz: Zárójelek elöször! (1 + (1’)) = (1 + (0)) = (1 + 0) = 1. majd AND (*) végül OR (+)
(1 * 0) + 1’ = (0) + 1’. A NOT sorrendben az OR előtt =>
F= (0) + (1’) = (0) + (0) = 0 + 0 = 0.

Boole algebra precedencia, azaz műveleti sorrend


Szimb.  Függv  Leírás 
( )  Zárójel  A zárójelben lévő kifejezések kiértékelése először
Digital Design 2e ’  NOT  Kiértékelés balról jobbra 
Copyright © 2010 *  AND  Kiértékelés balról jobbra 28
Frank Vahid
+  OR  Kiértékelés balról jobbra
Boole Algebra: Terminológia
• Példa: F(a,b,c) = a’bc + abc’ + ab + c
• Változó
– (0 vagy 1) értékű
– A függvény három változót tartalmaz: a, b és c
• Betű szerint – szó szerint - Literal
– Egy változó ábrázolása; Igaz vagy hamis formájában
– Kilenc lehetséges érték: a’, b, c, a, b, c’, a, b, and c
• Szorzat (Product term)
– Változók ÉS kapcsolata
– Négy szorzat: a’bc, abc’, ab, c
• Szorzatok összege (Sum-of-products)
– Szorzatok ÉS kapcsolata
– A fenti függvény szorzatok és kapcsolata.
– Az “F = (a+b)c + d” pedig nem szorzatok és kapcsolata.
Digital Design 2e
Copyright © 2010 29
Frank Vahid
A Boole Algebra Tulajdonságai
Példák a tulajdonságok
• Kommutatív
– a+b=b+a használatára
– a*b=b*a • abc’  c’ba? Bizonyítás:
• Disztributív – Kommutativitás használatával:
– a * (b + c) = a * b + a * c • a*b*c’ = a*c’*b = c’*a*b = c’*b*a
• Úgy is írható, hogy: a(b+c) = ab + ac • abc + abc’ = ab ? Bizonyítás:
– a + (b * c) = (a + b) * (a + c) – 1. Disztributív tulajdonsággal => a
• (Trükkös azonosság!)
• abc + abc’ = ab(c+c’).
• Úgy is írható, hogy: a+(bc) = (ab)(ac)
– 2. Komplemens használata =>
• Asszociatív • Helyettesítéssel:
– (a + b) + c = a + (b + c)
c+c’ by 1: ab(c+c’) = ab(1).
– (a * b) * c = a * (b * c)
– 3. Azonosság:
• Azonosság • ab(1) = ab*1 = ab.
– 0+a=a+0=a
– 1*a=a*1=a
• x + x’z  x + z ?
– Disztributiv tulajdonság
• Komplemens • Helyettesítéssel: x+x’z  (x+x’)*(x+z).
– a + a’ = 1
– Komplements tulajdonság
– a * a’ = 0
• Helyettesítéssel: (x+x’) = 1,
• A bizonyításhoz elég az összes – Azonosság tulajdonság:
lehetőséget figyelembe venni
• Helyettesítéssel: 1*(x+z) = x+z.
Digital Design 2e
Copyright © 2010 30
Frank Vahid
Példák a Boole Algebra tulajdonságainak
alkalmazására
•Want automatic door opener • Egyszerűsíthető-e az áramkör?
circuit (e.g., for grocery store)
– Kimenet: f=1 ajtó nyitva f = hc' + h'pc‘ a

– Bemenetek: f = c'h + c'h'p (kommutativitás)


• p=1: mozgás érzékelés f = c'(h + h'p) (disztributivitás)
• h=1: kapcsoló kényszerített nyitva f = c'((h+h')*(h+p)) (trükkös disztributivitás)
tartása f = c'((1)*(h + p)) (komplemens)
• c=1: ajtó zárva f = c'(h+p) (azonosság = identitás)
– Ajtó nyitás amikor:
• h=1 and c=0, or
a
• h=0 and p=1 and c=0
– Kimeneti Függv.: f = hc’ + h’pc’
DoorOpener
DoorOpener c
Egyszerűsített
h
f
áramkör
c
h f
p p

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’

Repülő mosdó • Viselkedés • Alternative jelzés


• Mindhárom mosdó érzékelői jelzik ha „mosdó foglalt”
„foglalt” jelző az ajtó zárva (foglalt) (a, b, c) = (1,1,1)
– Az érzékelők negációja
• Fényjelzés „mosdó szabad” (S)
• Egyenlet és áramkör S = a’ + b’ + c’
• S = a’ + b’ + c’ – Tehát S’ = (a’ + b’ + c’)’
• S’ = (a’)’ * (b’)’ * (c’)’
• Transzformáció
(De Morgan)
• (abc)’ = a’+b’+c’ (De Morgan)
• S’ = a * b * c
• S = (abc)’ (kettős negáció)
• Egyszerűbb áramkör – Józan paraszti ész:
• Foglalt ha minden
ajtó zárva

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

Boole algebrai függvények ábrázolása


English 1: F outputs 1 when a is 0 and b is 0, or when a is 0 and b is 1.
English 2: F outputs 1 when a is 0, regardless of b’s value
(a)
a
a b F
b 0 0 1
1. Egyenlet: F(a,b) = a’b’ + a’b F
0 1 1
2. Egyenlet: F(a,b) = a’
1 0 0
(b) (c)
1 1 0
Circuit 1 a

Truth table
a F (d)
Circuit 2

The function F

• Egy logikai függvényt többféle módon ábrázolhatunk


– A fenti példában ugyanazt a feladatót 7 féle különböző módon írtuk le:
F(a,b), : English, egyenlet, áramkör, és igazság tábla
Digital Design 2e
Copyright © 2010 37
Frank Vahid
Boole/Logikai függvények ábrázolása
igazságtáblával
a b F a b c F a b c d F
• Meghatározza a kimeneti 0 0 0 0 0 0 0 0 0
F függvény értékét 0
1
1
0
0
0
0
1
1
0
0
0
0
0
0
1
1
0
minden lehetséges 1 1 0 1 1 0 0 1 1
1 0 0 0 1 0 0
bemeneti változó (a)
1 0 1 0 1 0 1
értékének 1
1
1
1
0
1
0
0
1
1
1
1
0
1
kombinációjára (b) 1 0 0 0
1 0 0 1
– 2 – változó: 4 sor a b c F 1 0 1 0
– 3 – változó: 8 sor 0 0 0 0 1 0 1 1
0 0 1 0 1 1 0 0
– 4 – változó:16 sor a 0 1 0 0 1 1 0 1
0 1 1 0 1 1 1 0
• K: az 5 vagy 5-nél 1 0 0 0 1 1 1 1

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

Függvény konverziók Equations


2
Circuits

4 6
3 5
• Gyakori átalakítások (még) Truth tables

– Igazságtála => egyenlet (ami áramköri


szintézist eredményez) Inputs Outputs Term
• Könnyű feladat: ahol a Függvény 1 ott a b F F = sum of
a szorzatokat OR (VAGY) kapcsolattal 0 0 1 a’b’
összefüzzük 0 1 1 a’b
– Egyenlet => igazságtábla 1 0 0
• Könnyű feladat: minden kombinációra 1 1 0
(sor) kiértékeljük a függvényt F = a’b’ + a’b
• Segítség: alfüggvények külön
oszlopban K: Konverzió egyenletté?
a b c F
0 0 0 0
0 0 1 0
K: Konverzió igazságtáblába: F = a’b’ + a’b 0 1 0 0
Inputs Output 0 1 1 0
a b a' b' a' b F 1 0 0 0
a
0 0 1 0 1 1 0 1 1 ab’c
0 1 0 1 1 1 1 0 1 abc’
1 0 0 0 0 1 1 1 1 abc a
Digital Design 2e 1 1 0 0 0
Copyright © 2010
Frank Vahid
F = ab’c40+ abc’ + abc
Példa: Konverzió Igazságtáblából Egyenletbe
• Paritás bit a b c P
– Adat továbbvitelkor plusz bitet 0 0 0 0 (0 1s: even)
toldunk az adatohoz a hibák
felfedésére (atvitelkor az adat 0 0 1 1 (2 1s: even)
megváltozhat - bithiba) 0 1 0 1
– Pl., elektromágneses interferencia 0 1 1 0
a vezetékeken megváltoztathatja
az információt
1 0 0 1
• Páros bit (Even parity) 1 0 1 0
– A bitek számának párosnak kell 1 1 0 0
lennie (data + parity) 1 1 1 1
– Pl, ha a adat = „001”, akkor a
parításbit 1  ahhoz hogy páros
legyen a parítás „0011” P=1 Egyenletbe alakítás
• Egyenletet kellene felírnunk DE
könnyebb igazságtáblát felírni P = a'b'c + a'bc' + ab'c' + abc
Digital Design 2e
Copyright © 2010
Frank Vahid
Példa: Kombinációs hálózatok elemzése
igazságtáblával
• Első lépés: a logikai függvény felírása

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)

Eq H = abcde + abcde' + a'bcde + a'bcde(a' + c)


ui
v ale H = abcde + abcde' + a'bcde + a'bcdea' + a'bcdec
nc H = abcde + abcde' + a'bcde + a'bcde + a'bcde
a
ia
H = abcde + abcde' + a'bcde (az utolsó két term redundáns)
H = a'bcde + abcde' + abcde
Digital Design 2e
Copyright © 2010 46
Frank Vahid
Mintermes alak
• Számként felsorolja az összes mintermet
• A szám a változók bináris ábrázolásából határozható meg
– a'bcde megfelelője 01111 vagy 15
– abcde' megfelelője 11110 vagy 30
– abcde megfelelője 11111 vagy 31
• Tehát a H = a'bcde + abcde' + abcde függvény úgy is
ábrázolható mint:
– H = ∑m(15,30,31)
– „A H a 15, 30 és 31-es mintermek összege"

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)

1. megoldás: külön-külön 2. megoldás: közös termek


Digital Design 2e
Copyright © 2010 48
Frank Vahid
Példa több kimenetű függvényre:
BCD => 7- szegmenses átalakító
w a
x f
y b
z Converter g
e
c
d

a
f
b
g
e
c
d

abcdefg = 1111110 0110000 1101101


(a) (b)

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 = w’x’y’z’ + w’x’yz’ + w’x’yz +


w’xy’z + w’xyz’ + w’xyz + wx’y’z’
+ wx’y’z
b = w’x’y’z’ + w’x’y’z + w’x’yz’ +
w’x’yz + w’xy’z’ + w’xyz + wx’y’z’
+ wx’y’z
a
...
Digital Design 2e
Copyright © 2010 50
Frank Vahid
2.7

Kombináziós hálózatok tervezési lépései


Step Leírás - Capture
Step 1: Függvény „Józan paraszti ész”: A legkézenfekvőbb a feladat
Viselkedés megadása leírása kombinációs tábla segítségével – Egyben
leírás ez a legtermészetesebb lépés is!

A 2A lépés akkor szükséges ha igazság táblát


használtunk egyenletek helyett.  Adott kimenet
2A:
esetében függvény leírása úgy történik, hogy minden
Step 2: Egyenletek
mintermet VAGY (OR) kapcsolatba hozunk. Ha
Áramkör leírása szükséges algebrai módszerekkel egyszerűsítünk.
megvalósítás

2B: Áramkör Minden kimeneti függvényt a külön-külön


megvalósítás megvalósítunk az egyenleteknek megfelelően
kapukkal (közös termek használata opcionális, de
ajánlott)
Digital Design 2e
Copyright © 2010 51
Frank Vahid
Példa: „111” minta érzékelő (detector)
• Feladat: Érzékeljük egy 8 bites
bemenet 3 egymás melletti „1”-es
értékét bemenetek: abcdefgh
• 00011101  1
• 10101011  0
• 11110000  1
a
– Step 1: Vislekedés leírás a

• Táblázat vagy egyenlet? a abc


b
– Táblázat – túl nagy: 2^8=256 sor c
– Egyenlet – termek leírása a lehetséges bcd
esetek függvényében a minta („111”) d
alapján: create terms for each possible
cde
case of three consecutive 1s e y
• y = abc + bcd + cde + def + efg + fgh
def
– Step 2a: Egyenlet – „Csíny letudva” f
– Step 2b: Megvalósítás kapukkal az efg
g
egyenlet alapján
fgh
Digital Design 2e h
Copyright © 2010 52
Frank Vahid
Példa: „Igazság számláló” - egyesek száma
• Feladat: A kimeneti függvény ábrázolja
binárisan (xy) a bemeneti változók (abc)
igaz értékeinek (‚1’) számát:
• 010  01 (Egy 1-es)
• 101  10 (Két 1-es)
a
• 000  00 (Nulla 1-es), stb.
– Step 1: Viselkedés leírás
• Truth table or equation?
– Truth table is straightforward
– Step 2a: Egyenletek:
• y = a’bc + ab’c + abc’ + abc
a
• z = a’b’c + a’bc’ + ab’c’ + abc b
c
• Optional: Let's simplify y: a
– y = a'bc + ab'c + ab(c' + c) = a'bc + ab'c + a
b
ab a c
b z
– Step 2b: Áramköri megvalósítás c
a
b
a y c
b
c
a
b
Digital Design 2e
a c
Copyright © 2010
b 53
Frank Vahid
Szimbólumok egyszerűsítése
• Az előző áramkörben használt

a a a a
b b b b
c c c c

a a
b'
b c
(a) (b) a

Válozó többszörös Inverter használata helyett a


előfordulása (címke - név) bemenet negálása „o”
 Kevesebb vezeték a Másik lehetőség: A negált
rajzon jobb áttekinthetőség bemenet jelölése nevének
Digital Design 2e
komplemensével
Copyright © 2010 54
Frank Vahid
Példa: Billentyűzet kódoló
• Billentyűzet kimenetei: 7
(outputs)
r1
– Soronként egy 1 2 3 w
– Oszloponként egy x
r2 y
• Billentyű lenyomás ‚1’ 4 5 6 z
Converter
adott soron és oszlopon r3
7 8 9
– Pl: "5"  r2=1, c2=1
• Cél: A lenyomott r4
* 0 #
billentyűk 4-bites bináris
kódolása a kimeneten
– 0-9  0000 to 1001 c1 c2 c3
– *  1010, #  1011
– Semmi: 1111

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

Kapu, kapuk és még kapuk


1 1
NAND NOR XOR XNOR NAND NOR
x x x
F F x y
y y
F y a
x y F x y F x y F x y F x F
0 0 1 0 0 1 0 0 0 0 0 1
0 1 1 0 1 0 0 1 1 0 1 0 x y
y
1 0 1 1 0 0 1 0 1 1 0 0
1 1 0 1 1 0 1 1 0 1 1 1 0 0

• 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

– Use XNOR a1 A=B


b1
• Detecting odd # of 1s
a2
– Use XOR b2
– Useful for generating “parity”
bit common for detecting
errors

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

59-től – 0-ig. (binárisan 6 0 0 0 i5


d58 0 0 0
biten) e d59 0 0 0
– 60 LED/égő egyenként d60
d61 58
jelzi a bináris számot 6x64 d62 59
– 6x64 –es dekódoló dcd d63

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
41
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

• Pl: Két 4 bites sín bemenet A(a3a2a1a0) és B(b3b2b1b0)


– 4-bites 2x1 mux (csupán 2x1 muxes használatával és közös
címvezetékkel) választhatunk A vagy B között

Digital Design 2e
Copyright © 2010 68
Frank Vahid
Példa: N-bit Mux
Fedélzeti 8­bit 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

• Négyféle adat kijelzése


– Hőmérséklet (T), átlagos fogyasztás (A), pillanatnyi sebesség mpg (I) és
hátralévő út (M) – 8 bites adatok
– A kijelzőre kerülő D adatot x és y címző választja ki
• A nyomógomb segítségével a szekvenciákat vezéreljük
– 8-bites 4x1 mux-ot használunk
Digital Design 2e
Copyright © 2010 69
Frank Vahid
2.10
Megfontolőlások
Kapuk viselkedése – válaszidő (delay)
1 1 1
x x x x
F
y 0 0 0

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

1 ns Leghosszabb jelterjedési idő 6,5ns


p 1 ns
1 ns 1 ns
w a

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

• A vezetékek is késleltetik a jelterjedést


• Feltételezzük, hogy a kapuk és vezetékek a feltüntetett
késleltetéssel rendelkeznek
• Jelterjedési idő – bemenet változás => kimenet változás
• Kritikus adatút – a leghosszabb jelterjedési idővel rendelkezik
• Hálózat késleltetés – a kritikus jelterjedési idő
Digital Design 2e
Copyright © 2010 71
Frank Vahid
Alacsony szinten (Low) akti bemenetek
• Adat bemenet: ide érkezik az információ (pl. mux adat be)
• Vezérlő bemenet: hatással van az alkatrész viselkedésére
– Általában H (1) aktív –a kimenet a függvények megfelelően viselkedik
– L aktív – Ebben az esetben 0 eredményezi a kimenet megfelelő
viselkedését
– Példa: 2x4 dekóder 0-ban aktív engedélyezővel
• 1 tilt, 0 engedélyez
d0 0 d0 0
– Ábrzáolás: invertáló bemenet „o”
1 i0 d1 0 1 i0 d1 0
1 i1 d2 0 1 i1 d2 0
0 1
e d3 e d3

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

• Kapcsolás rajzolása - Schematic capture


– Számítógéppel segített tervezés grafikus eszköze a hálózat megrajzolására
• Szimulátor – Simulator – nem Emulátor
– Számítógéppel segített tervezéseszköze amely a kapcsolás működését
vizsgálja (szoftver) adott bemeneti kombinációkra
• Általában az eredményt hullámformában mutatja (idődiagram)
Digital Design 2e
Copyright © 2010 73
Frank Vahid
Chapter Summary
• Combinational circuits
– Circuit whose outputs are function of present inputs
• No “state”
• Switches: Basic component in digital circuits
• Boolean logic gates: AND, OR, NOT – Better building block than switches
– Enables use of Boolean algebra to design circuits
• Boolean algebra: Uses true/false variables/operators
• Representations of Boolean functions: Can translate among
• Combinational design process: Translate from equation (or table) to
circuit through well-defined steps
• More gates: NAND, NOR, XOR, XNOR also useful
• Muxes and decoders: Additional useful combinational building blocks

Digital Design 2e
Copyright © 2010 74
Frank Vahid

You might also like