Documente Academic
Documente Profesional
Documente Cultură
1. UVOD
2. SINTEZA KOMBINACIJSKIH
LOGIKIH STRUKTURA
3. SINTEZA SEKVENCIJALNIH
SKLOPOVA
4. OSNOVE ARHITEKTURE
MIKRORAUNALA
2. SINTEZA KOMBINACIJSKIH
LOGIKIH STRUKTURA
2.1. BOOLEOVA ALGEBRA
B.A. = {G , x , =, S}
G - skup operatora;
x - Booleova varijabla, uzima vrijednosti iz S;
S - Booleove konstante:
S = {0, 1}; x S
LOGIKA SUDOVA
T
T
KONJUNKCIJA DISJUNKCIJA
A&B
AB
T
T
NEGACIJA
A
T
T
ISTINA (TRUTH) T
NEISTINA (FALSE) ,F
tablicu zovemo TABLICA ISTINE
ALGEBRA LOGIKE
Izaberemo G koji sadri:
konjunkciju, disjunkciju i negaciju - ALGEBRA LOGIKE
A.L. = {&, , , =, x , S = {0, 1}}; T 1, 0 (pozitivna log ika )
x1 x 2
0
0
1
1
x1 & x 2
x1 x 2
x1
x2
0
0
0
1
0
1
1
1
1
1
0
0
1
0
1
0
0
1
0
1
ALGEBRA LOGIKE
Oita svojstva (postulati):
1. ZATVORENOST:
a)
b)
x1 , x 2 S x1 x 2 S
x1 , x 2 S x1 & x 2 S
2. NEUTRALNI ELEMENT:
a)
x1 , 0 S x1 0 = x1
b)
x1 , 1 S x1 & 1 = x1
ALGEBRA LOGIKE
Oita svojstva (postulati):
3. KOMUTATIVNOST:
a)
x1 , x 2 S x1 x 2 = x 2 x1 S
b)
x1 , x 2 S x1 & x 2 = x 2 & x1 S
4. DISTRIBUTIVNOST:
a)
b)
x1 , x 2 , x 3 S
x 1 (x 2 & x 3 ) = (x 1 x 2 ) & (x 1 x 3 )
x1 , x 2 , x 3 S
ALGEBRA LOGIKE
Oita svojstva (postulati):
5. KOMPLEMENTIRANJE:
a)
b)
x1 S x1 x1 = 1
x1 S x1 & x1 = 0
6. ASOCIJATIVNOST:
a)
b)
x1 , x 2 , x 3 S
x 1 (x 2 x 3 ) = (x 1 x 2 ) x 3
x1 , x 2 , x 3 S
ALGEBRA LOGIKE
Postulati slijede iz tablice, npr. distributivnost:
x1
x2
x3
x2 & x3
x1 (x 2 & x 3 )
x1 x 2
x1 x 3
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
0
0
0
1
0
0
0
1
1
1
1
1
0
0
1
1
1
1
1
1
0
1
0
1
1
1
1
1
0
0
0
1
1
1
1
1
REDOSLIJED:
1. negacija (i sve ispod)
2. konjunkcija
3. disjunkcija
ALGEBRA LOGIKE
Analogija s operacijama nad skupovima:
Piemo i itamo:
x1 & x 2 = x1 x 2 = x1 x 2 = x1 x 2
x1 x 2 = x1 x 2
x1 i x 2 / x1 x 2
x1 ili x 2 x1 vel x 2
ALGEBRA LOGIKE
Izvedena svojstva (teoremi):
x1 1 = 1
1. APSORPCIJA za disjunkciju:
P2 b
P5 a
P4 a
P2 b
P5 a
x1 0 = 0
5. APSORPCIJA za konjunkciju:
x1 0 0 = x1 0 x1 x1 = x1 (0 x1 ) = x1 x1 = 0
P2 a
P5 b
P4 b
P2 a
P5 b
ALGEBRA LOGIKE
Izvedena svojstva (teoremi):
2. IDEPOTENTNOST za disjunkciju:
x1 x1 = x1
(x 1 x 1 ) 1 = ( x 1 x 1 ) (x 1 x 1 ) = x 1 (x 1 x 1 ) = x 1 0 = x 1
P2 b
P5 a
P4 a
3. IDEPOTENTNOST za konjunkciju:
P5 b
P2 a
x1 x1 = x1
x 1 x 1 0 = x 1 x 1 x 1 x 1 = x 1 (x 1 x 1 ) = x 1 1 = x 1
P2 a
P5 b
P4 b
P5 a
P2 b
ALGEBRA LOGIKE
Izvedena svojstva (teoremi):
4. DVOSTRUKA NEGACIJA:
x1 = x1
x1
x1
(x1 ) = x1
0
1
1
0
0
1
ALGEBRA LOGIKE
Izvedena svojstva (teoremi):
DeMORGANOVI TEOREMI:
T12:
x1 x 2 = x1 x 2
A A =1
A = x1 x 2
A = x1 x 2 = x1 x 2
A = x1 x 2
x 1 x 2 (x 1 x 2 ) = 1
x 1 x 2 (x 1 x 2 ) = (x 1 x 2 x 1 ) (x 1 x 2 x 2 ) = 1 1 = 1
AA = 0
x 1 x 2 (x 1 x 2 ) = 0
ALGEBRA LOGIKE
Izvedena svojstva (teoremi):
DeMORGANOVI TEOREMI:
T13:
x1 x 2 = x1 x 2
x1 x 2 = x1 x 2
x1 x 2 = x1 x 2
x1 x 2 = x1 x 2 = x1 x 2
X = {x 1 , x 2 ,K, x n }
BOOLEOVA FUNKCIJA
y = f (x 1 , x 2 ,K, x n )
je preslikavanje iz skupa svih kodnih rijei u skup Booleovih
konstanti S:
S = {0, 1}; x S
BOOLEOVE FUNKCIJE
Booleova funkcija je interesantna jer opisuje rad digitalnog
sklopa:
x1
xj
f (x 1 , x 2 ,K, x n )
xn
u nekom trenutku
x 1 , x 2 ,K , x n
y je funkcija od
x 1 , x 2 ,K , x n
BOOLEOVE FUNKCIJE
Booleovu funkciju je najjednostavnije zapisati tablino:
s lijeve strane napiemo sve
kodne rijei prirodnim
binarnim nizom
i x1
0 0
1 0
x2
0
0
x3
0
1
y1
1
0
y2
1
R
Ti
T0
T1
2
3
4
5
6
1
1
0
0
1
0
1
0
1
0
0
0
1
1
1
0
0
1
1
1
T2
T3
T4
T5
T6
0
0
1
1
1
T7
BOOLEOVE FUNKCIJE
Osim tablice istine, interesantan je
ALGEBARSKI OBLIK zapisa (formula):
y = x1 x1 x 2 x 3
jer uvodi operatorske veze meu varijablama potrebne za
crtanje logikog dijagrama i sheme:
x1
x2
x3
&
Krui
oznaava
negaciju
10
BOOLEOVE FUNKCIJE
Uvjerimo se u istovjetnost tablice i algebarskog oblika:
x1x 2 x 3
1
0
0
x1
0
0
0
x1 x1x 2 x 3
1
0
0
0
1
1
1
0
0
0
0
0
1
1
1
0
1
1
1
x1
0
0
0
x2
0
0
1
x3
0
1
0
y
1
0
0
0
1
1
1
1
0
0
1
1
0
1
0
BOOLEOVE FUNKCIJE
U praksi su najvaniji
NORMALNI ALGEBARSKI OBLICI
zbog:
mogue ih je napisati neposredno iz tablice istine
omoguavaju izradu sklopa s najmanjim kanjenjem
sklop ima jednoliko kanjenje
mogue ih je minimizirati egzaktnim postupcima
garantiran je prijelaz na NI i NILI operatore
11
BOOLEOVE FUNKCIJE
POTPUNI DISJUNKTIVNI NORMALNI OBLIK (PDNO)
PDNO je disjunkcija svih onih MINTERMA mi
za koje je vrijednost funkcije i-tog retka Ti jednaka jedinici:
2 n 1
f (x 1 , x 2 ,K, x n ) = m i Ti
i =0
m 3 (x 1 , x 2 , x 3 ) = x 1 x 2 x 3
011
BOOLEOVE FUNKCIJE
SVI MINTERMI ZA n=3
i
0
1
2
3
x1
0
0
0
0
x2
0
0
1
1
x3
0
1
0
1
m i (x1 x 2 x 3 )
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
5
6
7
1
1
1
0
1
1
1
0
1
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
12
BOOLEOVE FUNKCIJE
Npr. za gornju funkciju:
f1 (x1 , x 2 , x 3 ) = m 0 T0 m1 T1 m 2 T2 m 3 T3 m 4 T4 m 5 T5 m 6 T6 m 7 T7 =
= m 0 1 m1 0 m 2 0 m 3 0 m 4 1 m 5 1 m 6 1 m 7 1 =
= m 0 m 4 m 5 m 6 m 7 = (0,4,5,6,7 )
f1 (x ) = x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3
BOOLEOVE FUNKCIJE
POTPUNI KONJUNKTIVNI NORMALNI OBLIK (PKNO)
je konjunkcija svih onih MAKSTERMA Mi
za koje je vrijednost funkcije i-tog retka Ti jednaka nuli:
2 n 1
f (x 1 , x 2 ,K, x n ) = & (M i Ti )
i =0
M 3 (x 1 , x 2 , x 3 ) = x 1 x 2 x 3
011
13
BOOLEOVE FUNKCIJE
SVI MAKSTERMI ZA n=3
i
0
1
2
3
4
5
6
7
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
M i (x 1 , x 2 , x 3 )
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
BOOLEOVE FUNKCIJE
Npr. za gornju funkciju:
14
BOOLEOVE FUNKCIJE
PDNO nepotpuno specificirane funkcije:
y 2 = x1 x 2 x 3 x1 x 2 x 3 R 1 x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3
y 2 (x 1 , x 2 , x 3 ) = (0, R 1 ,4,5,6,7 )
BOOLEOVE FUNKCIJE
Prikaz BOOLEOVIH funkcija Vennovim dijagramima:
x1
0
x2
0
x3
0
f1
1
f2
1
0
0
0
1
1
1
1
0
1
1
0
0
1
1
1
0
1
0
1
0
1
0
0
0
1
1
1
1
R
0
0
1
1
1
1
15
BOOLEOVE FUNKCIJE
Stilizirani Vennovi dijagrami - VEITCHEVI dijagrami:
BOOLEOVE FUNKCIJE
VEITCHEVI dijagrami za n=1, 2 i 4:
16
BOOLEOVE FUNKCIJE
VEITCHEV dijagram za n=5:
17
BOOLEOVE FUNKCIJE
BOOLEOVE FUNKCIJE
Dvodimenzionalne tablice:
tablica crtana dvodimenzionalno tede prostor na papiru:
18
BOOLEOVE FUNKCIJE
Grayev kod:
ima svojstvo susjednosti:
i x1
0 0
1 0
x2
0
0
x3
0
1
2
3
4
5
0
0
1
1
1
1
1
1
1
0
0
1
6
7
1
1
0
0
1
0
BOOLEOVE FUNKCIJE
K-TABLICE (Karnaugh):
tablica istine crtana dvodimenzionalno, Grayev kod:
19
BOOLEOVE FUNKCIJE
LOGIKI DIJAGRAM:
f1 (x ) = x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3
BOOLEOVE FUNKCIJE
SHEMA SKLOPA:
x1 x2 x3
f1 (x ) = x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3
f1 (x)
td
td
20
BOOLEOVE FUNKCIJE
SHEMA SKLOPA:
f1 (x ) = (x 1 x 2 x 3 ) (x 1 x 2 x 3 ) (x 1 x 2 x 3 )
x1 x2 x3
f 1 (x)
BOOLEOVE FUNKCIJE
SVOJSTVA NORMALNIH OBLIKA
2 n 1
2 n 1
i =0
i=0
mi = 1
& Mi = 0
mi = M i
Mi = mi
mi M i = 1
mi Mi = 0
mi m j = 0
Mi M j = 1
i j
i j
21
BOOLEOVE FUNKCIJE
NEGIRANA FUNKCIJA
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
f 2 (x )
1
R
0
0
1
1
1
1
f 2 (x )
0
R
1
1
0
0
0
0
BOOLEOVE FUNKCIJE
NEGIRANA FUNKCIJA
2 n 1
f (x ) = m i Ti
i =0
2 n 1
2 n 1
2 n 1
i =0
i =0
i=0
i =0
2 n 1
2 n 1
2 n 1
2 n 1
i =0
i=0
i=0
i=0
f (x ) = & (M i Ti ) = M i Ti = M i Ti = m i Ti
Dokaz dobijemo neposredno preko
f f =1 i f &f = 0
22
BOOLEOVE FUNKCIJE
RAZBIJANJE PDNO-a NA PARCIJALNE (PREOSTALE)
FUNKCIJE: po x1, x2
2 1
f (x ) = m i Ti = x1 x 2 x 3 T0 x1 x 2 x 3 T1 x1 x 2 x 3 T2 x1 x 2 x 3 T3
i =0
n
{x1 , x 2 , x 3 }
x1 x 2 x 3 T4 x1 x 2 x 3 T5 x1 x 2 x 3 T6 x1 x 2 x 3 T7 =
= x1 x 2 (x 3 T0 x 3 T1 ) x1 x 2 (x 3 T2 x 3 T3 ) x1 x 2 (x 3 T4 x 3 T5 )
x1 x 2 (x 3 T6 x 3 T7 ) =
= x1 x 2 f 0 (x 3 ) x1 x 2 f1 (x 3 ) x1 x 2 f 2 (x 3 ) x1 x 2 f 3 (x 3 )
f (x ) = m 0 (x1 x 2 ) f 0 (x 3 ) m1 (x1 x 2 ) f1 (x 3 ) m 2 (x1 x 2 ) f 2 (x 3 ) m 3 (x1 x 2 ) f 3 (x 3 ) =
2 m 1
= m j (x1 L x m )f j (x m +1 L x n );
j= 0
2 n m 1
f j (x m +1 L x n ) = m k (x m +1 L x n )Tj2nm + k
k =0
BOOLEOVE FUNKCIJE
RAZBIJANJE PDNO-a NA PARCIJALNE (PREOSTALE)
FUNKCIJE: po x1
f (x ) = x 1 (x 2 x 3 T0 x 2 x 3T1 x 2 x 3T2 x 2 x 3 T3 )
x 1 (x 2 x 3T4 x 2 x 3 T5 x 2 x 3 T6 x 2 x 3T7 ) =
= m 0 (x 1 ) f 0 (x 2 , x 3 ) m1 (x 1 ) f1 (x 2 , x 3 ) =
2 m 1
= m j (x 1 ) f j (x 2 , x 3 )
i =0
23
BOOLEOVE FUNKCIJE
RAZBIJANJE PDNO - prikaz TABLICOM ISTINE
f 0 (x 2 , x 3 )
f1 (x 2 , x 3 )
x1
x2
x3
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
f (x )
1
0
0
0
1
1
1
1
T0
T1
f 0 (x 3 )
T2
T3
f1 (x 3 )
T4
T5
f 2 (x 3 )
T6
T7
f 3 (x 3 )
BOOLEOVE FUNKCIJE
RAZBIJANJE PDNO - prikaz VEITCHEVIM
DIJAGRAMOM
24
BOOLEOVE FUNKCIJE
RAZBIJANJE PDNO - prikaz VEITCHEVIM
DIJAGRAMOM
Za funkciju f1
BOOLEOVE FUNKCIJE
POTPUNI SKUPOVI FUNKCIJA ALGEBRE LOGIKE:
Interesiraju nas druge mogue funkcije, osim &, V i FUNKCIJE JEDNE VARIJABLE:
x1
0
1
f0
f1
f2
f3
0
0
1
0
0
1
1
1
Oito:
n
n
N = 2 n ; F = 2 N = 2 (2 ) = 2 2
f 0 (x 1 ) = 0
f1 (x 1 ) = x 1
f 2 (x 1 ) = x 1
f 3 (x 1 ) = 1
25
BOOLEOVE FUNKCIJE
FUNKCIJE DVIJE VARIJABLE:
x1
x2
f0
0
0
1
1
0
1
0
1
0
0
0
0
f1
1
0
0
0
f2
0
1
0
0
f3
1
1
0
0
f4
0
0
1
0
f5
1
0
1
0
f6
0
1
1
0
f7
1
1
1
0
f8
0
0
0
1
f9
1
0
0
1
f10
0
1
0
1
f 11
f 12
f 13
f 14
f 15
1
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
1
1
1
1
f15 = 1
f 2 = x 2 x 1 implikacija
f 4 = x 1 x 2 implikacija
f 7 = x 1 x 2 NI SHAEFFER OPERATOR
f11 = x 1 x 2 implikacija
f0 = 0
f 3 = x1
f5 = x 2
f10 = x 2
f12 = x 1
f14 = x 1 x 2 ILI
f8 = x1 x 2 I
f 6 = x 1 x 2 ekskluzivno ILI
f13 = x 2 x 1 implikacija
f 9 = x1 x 2 = x 1 x 2 ekvivalencija
BOOLEOVE FUNKCIJE
Potpuni skup funkcija:
ONAJ, KOJIM SE U KONANOM ALGEBARSKOM IZRAZU
MOE PRIKAZATI PROIZVOLJNA BOOLEOVA FUNKCIJA
SKUP (&,V,-) je potpun:
1. Nad njim je definirana ALGEBRA LOGIKE
2. PDNO i PKNO su potvrdni primjeri
STOGA DOKAZUJEMO:
P.S.F.A.L. : {&, , }
SKUP JE POTPUN AKO MOEMO IZRAZITI (&,V, -)
26
BOOLEOVE FUNKCIJE
Analizirajmo neke skupove funkcija:
{&,}:
{}:
x 1 nije potpun
x1 x 2
x1
x 1 x 2 = x 1 x 2 = x 1 x 2 potpun je!
{,}:
x1 x 2
x1
x 1 x 2 = x 1 x 2 = x 1 x 2 potpun je!
BOOLEOVE FUNKCIJE
NI operator, Shaeffer (NAND) je potpun:
{ }, SHAEFFER, NI, x
x2;
x1 x1 = x1 x1 = x1 ili x1 1 = x1 1 = x1
(x1 | x1 ) | (x 2 | x 2 ) = x1 | x 2 = x1 x 2 = x1 x 2 = x1 x 2
(x1 | x 2 ) | (x1 | x 2 ) = x1 | x 2 = x1 x 2 = x1 x 2
problem zapisa:
x1 | x 2 | x 3 = x1 x 2 x 3
(x1 | x 2 ) | x 3 = x1 x 2 x 3
x 1 | x 2 | x 3 (x 1 | x 2 ) | x 3
27
BOOLEOVE FUNKCIJE
NILI operator, Pierce (NOR) je potpun:
{ }, PIERCE, NILI, x
x2;
x1 x1 = x1 x1 = x1 ili x1 0 = x1 0 = x1
(x
(x
x1 ) (x 2 x 2 ) = x1 x 2 = x1 x 2 = x1 x 2 = x1 x 2
x 2 ) (x1 x 2 ) = x1 x 2 = x1 x 2 = x1 x 2
problem zapisa:
x1 x 2 x 3 = x1 x 2 x 3
x1 x 2 x 3 x1 x 2 x 3
x
=
x
x
1
2
3
1
2
3
koristimo sustav (V,-) i svojstvo asocijativnosti disjunkcije
(x
28
29
30
x1 x 2 x 3 x1 x 2 x 3 K =
P4 b
x 1 x 2 (x 3 x 3 ) K = x 1 x 2 1 K = x 1 x 2 K
P5 a
P2 b
3a
= (x 2 x 3 x1 ) (x 2 x 3 x1 ) (K) =
= (x 2 x 3 (x1 x1 )) (K) =
= (x 2 x 3 0) (K) =
= (x 2 x 3 ) (K)
P4 a
P5 b
P2 a
ISTA UTEDA!
31
x1 x1 = x1
x1 & x1 = x1
x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 K =
= x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 K =
T2
= x1 x 2 x1 x 3 K
32
x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 R =1 K =
= x 1 x 2 x 1 x 2 K = x 1 (x 2 x 2 ) K = x 1 1 K = x 1 K
33
MINIMIZACIJA VEITCHEVIM
DIJAGRAMOM
UPISUJEMO FUNKCIJU U VEITCHEV DIJAGRAM:
ZA PDNO UPISUJEMO 1 i R
ZA PKNO UPISUJEMO 0 i R
x1 x 2 x 3 x1 x 2 x 3 = x1 x 2
npr:
MINIMIZACIJA VEITCHEVIM
DIJAGRAMOM
PRIMJER:
f (x ) = x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3
PDNO:
f (x ) = x 1 x 2 x 1 x 3
PKNO:
f (x ) = x 1 (x 2 x 3 )
34
MINIMIZACIJA VEITCHEVIM
DIJAGRAMOM
PRIMJER:
x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 x1 x 2 x 3 R = x1 x 2 x1 x 2 = x1
PDNO:
PKNO:
f (x ) = x 1
(iznimno)
MINIMIZACIJA VEITCHEVIM
DIJAGRAMOM
MINIMIZACIJA PDNO u MDNO:
u Veitchev dijagram upiemo 1 i R
zaokruimo sve jedinice
to manjim brojem to veih povrina
ispiemo MDNO na osnovu koordinata povrina
dvostruko zaokruivanje jedinice znai
proirenje postojeim lanom
zaokruivanje redundantnog lana znai proirenje izraza
tim lanom i time sklop obavlja preslikavanje u 1
ne-zaokruivanje redundantnog lana znai izostavljanje
tog lana i time sklop obavlja preslikavanje u 0
35
MINIMIZACIJA VEITCHEVIM
DIJAGRAMOM
DEFINIRAMO MDNO:
Minimalni disjunktivni normalni oblik je disjunkcija nunih
elementarnih lanova tipa minterma.
lan tipa minterma je konjunkcija nekih ili svih varijabli,
negiranih prema pravilu pisanja minterma.
Elementarni lan je onaj koji nema susjeda.
Nuni elementarni lan je onaj, bez kojeg bi vrijednost
funkcije bila poremeena.
MINIMIZACIJA VEITCHEVIM
DIJAGRAMOM
DEFINIRAMO MKNO:
Minimalni konjunktivni normalni oblik je konjunkcija
nunih elementarnih lanova tipa maksterma.
lan tipa maksterma je disjunkcija nekih ili svih varijabli,
negiranih prema pravilu pisanja maksterma.
Elementarni lan je onaj koji nema susjeda.
Nuni elementarni lan je onaj, bez kojeg bi vrijednost
funkcije bila poremeena.
36
MINIMIZACIJA VEITCHEVIM
DIJAGRAMOM
MINIMIZACIJA PKNO u MKNO:
preko PKNO - NE
problem disjunkcija, zagrada i negativne logike
preko NEGIRANE (inverzne) FUNKCIJE:
u Veitchev dijagram upiemo PDNO negirane funkcije
provedemo postupak za MDNO i izraunamo MKNO
f = x1 x 2 x 3
f = f = x1 x 2 x 3 = x1 x 2 x 3 =
= x 1 (x 2 x 3 ) = x 1 (x 2 x 3 )
QUINN-McCLUSKY POSTUPAK
POSTUPAK:
ispitujemo susjednost minterma
i formiramo elementarne lanove:
37
QUINN-McCLUSKY POSTUPAK
NPR. ZA RANIJE DEFINIRANU FUNKCIJU:
i
0
1
2
3
4
5
6
7
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
f (x )
1
R
0
0
1
1
1
1
f (x ) = x 1 x 2
QUINN-McCLUSKY POSTUPAK
f (x ) = x 1 x 2
38
HARVARDSKA METODA
UNAPRIJED ISPIEMO ELEMENTARNE LANOVE:
(npr. n=3)
i
0
1
2
3
4
5
6
7
x1
x2
x3
x1 x 2
x1 x 3
x2 x3
x1 x 2 x 3
x1
x1
x1
x1
x1
x1
x1
x1
x2
x2
x2
x2
x2
x2
x2
x2
x3
x3
x3
x3
x3
x3
x3
x3
x1 x 2
x1 x 2
x1 x 2
x1 x 2
x1 x 2
x1 x 2
x1 x 2
x1 x 2
x1 x 3
x1 x 3
x1 x 3
x1 x 3
x1 x 3
x1 x 3
x1 x 3
x1 x 3
x2 x3
x2 x3
x2 x3
x2 x3
x2 x3
x2 x3
x2 x3
x2 x3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
x1 x 2 x 3
f (x )
0
R
0
0
1
1
1
1
HARVARDSKA METODA
LANOVE OZNAIMO BROJEVIMA
(da ne bi ovisili o oznakama varijabli):
i
0
1
2
3
4
5
6
7
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
x1 x 2
0
0
1
1
2
2
3
3
x1 x 3
0
1
0
1
2
3
2
3
x2 x3
0
1
2
3
0
1
2
3
x1 x 2 x 3
0
1
2
3
4
5
6
7
f (x )
1
R
0
0
1
1
1
1
39
HARVARDSKA METODA
PROVODIMO POSTUPAK:
u gornji red upiemo kombinacije varijabli
u desni stupac upiemo vrijednost funkcije
(1) prekriimo sve redove za koje je vrijednost funkcije 0
prekriimo (ravno) sve brojeve koji su prekrieni u (1)
s desna na lijevo, prekriimo (koso) sve brojeve koji s lijeve
strane imaju neprekrien krai broj (lan)
neprekrieni brojevi su elementarni lanovi
izaberemo nune elementarne lanove
ispiemo MDNO
MKNO dobijemo preko inverzne funkcije
Koristi se esto u raunalnim programima za minimizaciju.
HARVARDSKA METODA
Za raniji primjer:
i
0
1
2
3
4
5
6
7
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
x1 x 2
0
0
1
1
2
2
3
3
x1 x 3
0
1
0
1
2
3
2
3
x2 x3
0
1
2
3
0
1
2
3
x1 x 2 x 3
0
1
2
3
4
5
6
7
f (x )
1
R
0
0
1
1
1
1
f (x ) = x 1 x 2
40
f1 (x ) = x1 x 2 x 2 x 3
f1 (x ) = x 1 x 2 x 2 x 3 = x 1 x 2 x 2 x 3
DeM .T .
41
f 2 (x ) = x 2 x 4 x 1 x 3
f 2 (x ) = x 2 x 4 x1 x 3 = x 2 x 4 x1 x 3
42
f 2 (x ) = (x 2 x 4 ) (x1 x 3 ) = x 2 x 4 x1 x 3
PRIMJER ZA NI VRATA
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
f (x )
1
0
0
0
1
1
1
1
f1 (x ) = x1 x 2 x 3 = x1 x 2 x 3
f1 (x ) = x1 x 2 x 3
x1 x2 x 3
f1 (x)
43
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
f (x )
1
0
0
0
1
1
1
1
f 2 (x ) = x1 x 2 x1 x 3
f 2 (x ) = x 1 x 2 x 1 x 3 = x 1 x 2 x 1 x 3
f 2 (x ) = x 1 x 2 x 1 x 3
SKLOPOVI ZA ZBRAJANJE
elimo izraunati sumu:
a+b=s
a n 1 a n 2 a n 3 K a 2 a 1 a 0
+
b n 1 b n 2 b n 3 K b 2 b1 b 0
c n 1 c n 2 c n 3 c n 4 K c 2 c1 c 0
s n 1 s n 2 s n 3
K s 2 s1 s 0
44
SKLOPOVI ZA ZBRAJANJE
Na najmanje znaajnom bitu imamo:
b0
0
0
1
1
a0
0
1
0
1
s0
0
1
1
0
c0
0
0
0
1
s 0 = a 0 b 0 = b0 a 0 b 0 a 0
c0 = a 0 b0 = a 0 b0
SKLOPOVI ZA ZBRAJANJE
Dobijemo sklop:
45
SKLOPOVI ZA ZBRAJANJE
Obavimo transformaciju:
s 0 = b 0 a 0 b0 a 0 0 0 =
= b 0 a 0 b0 a 0 b 0 b0 a 0 a 0 =
= b 0 a 0 b0 a 0 b0 a 0 =
) (
= b0 a 0 b0 a 0 a 0 b0
SKLOPOVI ZA ZBRAJANJE
I dobijemo sklop koji zovemo POLUSUMATOR:
46
SKLOPOVI ZA ZBRAJANJE
Na bilo kojem bitu (osim LSB) imamo:
c j1
aj
bj
sj
cj
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
1
0
1
0
0
1
0
0
0
1
0
1
1
1
SKLOPOVI ZA ZBRAJANJE
Pokuajmo minimizirati:
Transformiramo:
s j = a j b j c j1 a j b j c j1 a j b jc j1 a j b j c j1
s j = c j1 a j b j a j b j c j1 a j b j a j b j
s j = c j1 a j b j c j1 (a j b j )
s j = c j1 (a j b j )
47
SKLOPOVI ZA ZBRAJANJE
Nacrtamo koritenjem dva polusumatora:
SKLOPOVI ZA ZBRAJANJE
Potrebno je generirati pretek:
c j = a j b j b j c j1 a j c j1
proirimo:
c j = a j b j (a j a j )b j c j1 a j b j b j c j1
c j = a j b j a j b j c j1 a j b j c j1 a j b j c j1 a j b j c j1
kako je:
slijedi:
c j = a j b j a j b j c j1 = a j b j (1 c j1 ) = a j b j
c j = a j b j c j1 a j b j a j b j
48
SKLOPOVI ZA ZBRAJANJE
i konano:
c j = a j b j c j1 (a j b j ) = a j b j c j1 sj = cj cj = c j c j
Ili koritenjem preteka koje generiraju dva polusumatora,
i to bez invertora:
SKLOPOVI ZA ZBRAJANJE
Sklop bi izgledao:
49
MULTIPLEKSER, DEMULTIPLEKSER I
ENKODER PRIORITETA
selektor/multiplekser
dekoder/demultiplekser
50
MULTIPLEKSER, DEMULTIPLEKSER I
ENKODER PRIORITETA
dekoder
enkoder prioriteta
MULTIPLEKSER
MULTIPLEKSER je sklop koji ima
51
MULTIPLEKSER
Multiplekser sa m adresnih ulaza:
MULTIPLEKSER
Pokuajmo na osnovu definicije nacrtati shemu i formulu:
2 m 1
i = m j (a ) u j =
j=0
2 m 1
= m j (a ) u j =
j=0
2 m 1
= & m j (a ) u j
j=0
52
MULTIPLEKSER
Multiplekser realiziramo NI vratima:
MULTIPLEKSER
Multiplekser koristimo:
Ako su informacijski ulazi slobodno promjenljivi, a adresa
stacionarna, izlaz e slijediti vrijednost sa odabranog ulaza.
Obavili smo selektiranje ulaza na izlaz.
Ako su informacijski ulazi stacionarni, a adrese mijenjamo u
prirodnom binarnom nizu nekim ritmom, na izlazu e se
pojaviti niz bita ulazne kodne rijei.
Obavili smo paralelno-serijsku pretvorbu.
Multiplekser se esto jo naziva i SELEKTOR, ili
kombinirano multiplekser-selektor.
53
MULTIPLEKSER
Realizirajmo Booleovu funkciju pomou multipleksera:
i = f (x 1 , K, x n )
MULTIPLEKSER
Slijedi:
2 m 1
2 n 1
j= 0
i =0
m j (a m 1 , K, a 0 ) u j = m i (x 1 , K, x n )Ti
2 m 1
j= 0
j= 0
m j (a ) u j = m j (x )Tj
54
MULTIPLEKSER
Obinu jednakost zamijenimo identitetom, te izjednaimo po
dijelovima! Tako dobijemo potrebnih m+ m+2m jednadbi.
u j = Tj
m j (a ) = m j (x )
a m 1 a m 2 K a 1
x1
a e = x me
a0
x 2 K x m 1 x m
MULTIPLEKSER
Struktura sklopa je:
55
MULTIPLEKSER
Za openiti sluaj n>m gubimo strukturni identitet.
2 m 1
2 n 1
j= 0
i =0
m j (a ) u j = m i (x )Ti
mi :
(x1 x 2 K x m ) (x m 1 K x n )
m i (x 1 K x n ) = m j (x 1 K x m ) m k (x m +1 K x n )
MULTIPLEKSER
U PDNO funkcije grupiramo minterme sa zajednikim prvim
dijelom, te koritenjem svojstva distributivnosti izluimo
prvi, zajedniki dio:
2 m 1
f (x ) = m j (x 1 K x m ) m 0 (x m +1 K x n )Tj2
j= 0
K m2
n m
n m
(x m +1 K x n )Tj2
+0
nm
+ 2 n m 1
2 m 1
2 m 1
j= 0
j= 0
j=0
m j (a ) u j = m j (x1 K x m ) f j (x m +1 K x n ) = m j (x ) f j (x )
56
MULTIPLEKSER
Opet je uspostavljen strukturni identitet!
m j (a ) = m j (x )
a e = x m e
uj = fj
MULTIPLEKSER
Sad je struktura sklopa:
57
MULTIPLEKSER
Kod algebarske analize uzimali smo prvih m varijabli.
Znamo da moemo izabrati bilo kojih m varijabli.
Varijable biramo po kriteriju minimalnosti sklopa!
Za sluaj koritenja LOGIKIH VRATA
adresne varijable za osnovni multiplekser biramo tako
da ukupna struktura bude minimalna
Za sluaj koritenja MULTIPLEKSERSKOG STABLA
adresne varijable za osnovni multiplekser biramo tako
da to vei broj grana stabla bude eliminiran
to vei broj preostalih funkcija mora biti
FUNKCIJA JEDNE VARIJABLE
MULTIPLEKSER
SPECIJALNI SLUAJ: n=m+1
Sve preostale funkcije su funkcije jedne varijable
Multiplekserom s m adresnih ulaza moemo realizirati
funkciju s m+1 varijabli.
Multiplekser neposredno realizira PDNO funkcije, bilo u
osnovnom obliku ili nakon razbijanja na parcijalne funkcije.
Preostale funkcije raunamo koritenjem metode
Veitchevog dijagrama.
Veitchev dijagram se izborom adresne varijable raspada na
dijelove, od kojih svaki predstavlja jednu preostalu funkciju!
58
MULTIPLEKSER
Prisjetimo se, za n=3, m=1 i 2:
MULTIPLEKSER
Ili npr. Za n=4, m=2:
59
MULTIPLEKSER
Primjer za ranije zadanu funkciju, m=1:
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
f (x )
1
0
0
0
1
1
1
1
x2 :
f0 x 2 x3 :
f 00 = 1
f1 = x 1
f 01 = x 1
MULTIPLEKSER
Nacrtamo shemu:
60
DEMULTIPLEKSER
DEMULTIPLEKSER je sklop koji ima
DEMULTIPLEKSER
Demultiplekser sa m adresnih ulaza:
61
DEMULTIPLEKSER
Pokuajmo na osnovu definicije nacrtati shemu i formulu:
i j = m j (a ) u
j = 0K 2m 1
i j = m j (a ) u
j = 0K 2m 1
DEMULTIPLEKSER
Demultiplekser realiziramo NI vratima (invertirani izlazi):
62
DEMULTIPLEKSER
Demultiplekser koristimo:
Ako je informacijski ulaz slobodno promjenljiv, a adresa
stacionarna, odabrani izlaz e slijediti vrijednost sa ulaza.
Obavili smo razvoenje ulaza na odabrani izlaz.
Ako se informacijski ulaz mijenja istovremeno (sinkrono) sa
adresama, a adrese mijenjamo u prirodnom binarnom nizu,
na izlazima e se pojaviti niz bita sa ulaza.
Obavili smo serijsko-paralelnu pretvorbu.
Ako na ulaz trajno dovedemo 1, adresom biramo jedan od
izlaza. Demultiplekser preuzima funkciju DEKODERA.
Demultiplekser se esto zove DEKODER ili kombinirano
dekoder-demultiplekser.
DEMULTIPLEKSER
Realizirajmo Booleovu funkciju pomou demultipleksera:
Demultiplekser koristimo u sklopu DEKODERA:
u =1
i j = m j (a ) 1 = m j (a )
j = 0K 2m 1
Vidimo da realizira sve minterme od m varijabli.
Dovoljno je dodati ILI vrata, te direktno realizirati PDNO
funkcije.
63
DEMULTIPLEKSER
Za n=m:
2 m 1
f (x ) = m j (x ) Tj
j= 0
i j = m j (a )
a m 1 , K , a 1 , a 0
x 1 , K, x m 1 , x m
a e = x m e
e = 0 K m 1
m j (a ) = m j (x ) = i j
2 m 1
f (x ) = i j Tj
j= 0
DEMULTIPLEKSER
Na ILI vrata spojimo samo one izlaze, za koje je vrijednost
funkcije jednaka jedinici (simboliki prikaz):
64
DEMULTIPLEKSER
Ako dvostruko negiramo izraz:
f (x ) =
2 m 1
2 m 1
2 m 1
i j T j = i j Tj = & i j T j
j= 0
j= 0
j= 0
moemo koristiti
demultiplekser s
negiranim izlazima
i NI vrata:
DEMULTIPLEKSER
Umjesto ILI odnosno NI vrata koristimo diodnu logiku:
65
DEMULTIPLEKSER
Za n>m pokuamo transformirati PDNO funkcije:
2n 1
2m 1
i =0
j=0
f (x ) = i j f j (x )
i =0
2 m 1
2 n m 1
i =0
k =0
f (x ) = i j m k (x ) T2nm j+ k
DEMULTIPLEKSER
Rjeenje rezultira nezgrapnim sklopom:
66
DEMULTIPLEKSER
Ako preostalu funkciju realiziramo demultiplekserom
moemo koristiti ulaz, koji je konjunktivno vezan sa izlazima,
a ranije smo ga iskljuili:
2 m 1
2 n m 1
i =0
k =0
f (x ) = i j u i k (x ) T2nm j+ k
na nain da izlaz glavnog demultipleksera dovedemo na ulaz
demultipleksera preostale funkcije.
Dobili smo DEMULTIPLEKSERSKO STABLO!
Potpuno stablo ekvivalentno je jednom demultiplekseru.
Izborom adresnih varijabli eliminiramo grane stabla, kad je
preostala funkcija jednaka KONSTANTI 0 ili 1.
DEMULTIPLEKSER
Sklop sada ima strukturu:
67
DEMULTIPLEKSER
Primjer za ranije zadanu funkciju, m=3:
Direktno realiziramo PDNO. Pazimo na REDOSLIJED:
x1
0
0
0
0
1
1
1
1
x2
0
0
1
1
0
0
1
1
x3
0
1
0
1
0
1
0
1
f (x )
1
0
0
0
1
1
1
1
DEMULTIPLEKSER
Primjer za ranije zadanu funkciju, m=1:
x1 :
f1 = 1
f 0 x 1 x 2 : f 00 x 1 x 2 x 3 : f 000 = 1
f 01 = 0
f 001 = 0
68
DEMULTIPLEKSER
Crtamo shemu:
DEMULTIPLEKSER
Primjetimo da osnovni demultiplekser nije potreban:
2 n 1
f (x ) = m i (x ) Ti =
i =0
1
= m j (x 1 ) f j (x 2 K x m ) =
j= 0
= m 0 (x 1 ) f 0 (x ) m1 (x 1 ) f1 (x ) =
= x 1 f 0 (x ) x 1 f1 (x ) =
= i 0 f 0 (x ) i1 f1 (x )
69
DEMULTIPLEKSER
Za gornji primjer:
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
Demultiplekserom realizirajmo preostale funkcije
multipleksera, ili multiplekserom razbijmo ILI vrata
demultipleksera na vie manjih:
70
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
Teimo da matrica bude kvadratina:
f (x 1 , K, x n )
m+d=n
(M je broj multipleksera)
Broj logikih vrata:
L = 2 m + 2d
je minimalan kad je matrica
kvadratina!
Ovu strukturu integriramo
i dobijemo ROM
(Read Only Memory),
M 2 m 2d
2m
2
4
8
m
1
2
3
d
9
8
7
4
5
6
7
6 16
5 32
4 64
3 128
2d
L
512 514
256 260
128 136
64
32
16
8
80
64
80
136
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
odnosno varijante:
PROM, EPROM, EEPROM, Flash-EPROM
PROM:
71
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
EPROM 27256:
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
Demultiplekser i ROM:
programabilna ILI matrica,
demultiplekser realiziran I vratima - FIKSNA I matrica
72
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
Ideja: PROGRAMABILNE OBJE MATRICE - FPLA
omoguiti minimizaciju pojedine funkcije,
omoguiti izbor elementarnih lanova
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
Praksa: PAL, GAL
FPLA kompliciran,
dovoljna je programabilna I matrica
73
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
Struktura GALa:
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
Fleksibilnost:
koncept makro elije,
povratne veze
74
MULTIPLEKSERSKO-DEMULTIPLEKSERSKA
STRUKTURA
CPLD, ASIC
Logiki blokovi
Spojne veze
U/I blokovi
75