Vous êtes sur la page 1sur 55

Algebra Logic

Circuite Combinaionale Logice

Cuprins

Logica binar i pori logice


Algebra boolean

Forme Standard, Forme Canonice

Proprieti
Calcule algebrice
Mintermeni i Maxtermeni (Forme canonice)
Sum de Produse i Produs de sume (Forme
standard)

Diagrame Karnaugh (K-Diagrame)

12/12/15

Funcii de 2, 3, 4, 5 variabile
Simplificarea funciilor logice folosind
diagramele Karnaugh
2

Funcii logice
F(variabile) = expresie

Mulime de variabile
binare

Operatori ( +, , )
Variabile
Constante ( 0, 1 )
Grupri n paranteze

Exemple:

12/12/15

F(a,b) =a b b
H(x,y,z) =
x (y z)
3

Operatori logici de baz

AND ( sau )
OR ( sau + )
NOT ( )

Operatori binari
Operator unar

F(x,y) = xy,
F este 1 ddac
x=y=1
G(x,y) = x+y, G este 1 dac fie
x=1, fie y=1
H(x) = x , H este 1 dac x=0

12/12/15

Operatori logici de baz


(cont.)

Operaia I logic (AND) este


echivalent cu nmulirea binar:
0 0 = 0, 0 1 = 0,
1 0 = 0, 1 1 = 1

Operaia SAU logic (OR) este


echivalent cu adunarea binar, cu
excepia unei operaii:
0 + 0 = 0, 0 + 1 = 1,
1 + 0 = 1, 1 + 1 = 1 ( 102)

12/12/15

Tabele de adevr
pentru operatorii logici
Tabel de adevr: form tabular ce reprezint n
mod unic relaia dintre variabilele de intrare i
valoarea funciei
2-Intrri AND
2-Intrri OR

x y F=x
y
0 0
0
0 1
0
1 0
0
1 1
1
12/12/15

x
0
0
1
1

y
0
1
0
1

F=x+
y
0
1
1
1

NOT

x F=
x
0 1
1 0
6

Tabele de adevr (cont.)

: Fie o funcie boolean F() de n


variabile. Cte linii exist n tabela
de adevr a funciei F() ?
n

R: 2 linii, deoarece exist 2


combinaii binare posibile pentru n
variabile

12/12/15

Pori logice
Porile logice sunt reprezentri grafice ale
componentelor circuitelor electronice ce
opereaz cu unul sau mai multe semnale
de intrare pentru a produce un semnal de
ieire AND
2-Intrri
2-Intrri OR
NOT (Invertor)

x
y

F = xy
12/12/15

x
y

G = x+y

H=x

Diagrame - funcie de timp


t0 t1 t2 t3 t4 t5 t6
Semnal
e de
intrare

Semnal
e
poart
de
ieire
12/12/15

1
0
1
0

F=xy

1
0

G=x+y

1
0

H=x

1
0

Tranziii

Circuite combinaionale logice

Un circuit logic al crui ieire nu depinde dect de intrri


s.n. circuit combinaional
n cazul blocurilor (circuitelor) cu memorie, ieirea poate
depinde att de intrri ct i de valorile stocate n memorie
circuit secvenial
Fie funcia F = x + y z + x y
Se poate construi un circuit combinaional logic pentru a
implementa funcia F prin conectarea semnalelor de
intrare pentru porile logice corespunztoare:

Semnale de intrare Variabilele funciei (x, y, z)


Semnale de ieire Valoarea de ieire x funciei (F)
Pori logicez Operaiile logice

y
12/12/15

10

Circuite combinaionale logice


(cont.)

Pentru a proiecta un circuit


eficient trebuie s minimizm
dimensiunea acestuia (aria) i
latena de propagare (timpul
necesar ca semnalul sau
semnalele de intrare s
produc valoarea la ieire)
Tabela de adevr pentru

F=x + y z + x y
G=x + y z

Tabelele de adevr pentru


funciile F i G sunt identice
avem de-a face cu aceeai
funcie
Vom utiliza forma G pentru a
12/12/15
implementa circuitul logic

11

Circuite combinaionale logice


(cont.)
z
x

z
y
x

12/12/15

12

Dualitate

Duala unei expresii logice se obine


interschimbnd ntre ele operaiile i +
i valorile 1 i 0 n expresia iniial,
respectnd precedena iniial a
operaiilor.
Nu se interschimb x cu x
Exemplu de expresie dual:

Gsii H(x,y,z), duala funciei F(x,y,z) = x y


z+xyz

H = (x + y + z) (x + y + z)

Duala nu are ntotdeauna aceeai valoare


de adevr cu expresia iniial

12/12/15
n

13
cazul unei egaliti booleene, duala acesteia

Proprieti de dualitate
Conform regulilor dualitii putem
rescrie teoremele reuniunii i
interseciei:
1.

X+0=X

3.

X+1 =1

4.

X0 =0

X+X=X

6.

X X = X (duala lui

2.

X1 =X

(duala lui 1)
(duala lui

3)
5.
5)
7.

12/12/15

X+X=1

8.

X X = 0 (duala lui
7)
14

Alte proprieti ale algebrei


booleene
Absorbia:
1. x + x y = x
2. x (x + y) = x (duala)

Demonstraie:
x+xy=x1+xy
= x (1+y)
=x1
=x
Q.E.D.

Egalitatea 2 este adevrat conform principiului


dualitii
12/12/15

15

Alte proprieti ale algebrei


booleene (cont.)
Teorema consensului
1. xy + xz + yz = xy + xz
2. (x+y)(x+z)(y+z) = (x+y)(x+z) -(duala)
. Demonstraie:
xy + xz + yz = xy + xz + (x+x)yz
= xy + xz + xyz + xyz
= (xy + xyz) + (xz + xzy)
= xy + xz
Q.E.D.

Egalitatea 2 este adevrat conform


dualitii.
16
12/12/15

Tabele de adevr

Conin toate combinaiile


posibile ale valorilor
variabilelor funciei
Fie funciile:
F1(x,y,z) adevrat dac cel
puin una dintre intrri este
adevrat
F (x,y,z) adevrat dac
2
exact dou dintre intrri
sunt adevrate
F (x,y,z) adevrat dac
3
12/12/15
toate cele trei intrri sunt

x y z

F F2 F3
1

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

0
0
0
1
0
1
1
0
17

0
0
0
0
0
0
0
1

Tabele de adevr

Care sunt expresiile celor trei funcii


logice?

F1(x,y,z) = x + y + z

F3(x,y,z) = x y z

F2(x,y,z) = (x y z) + (x y z) + (x y
z) (1)

(2)

= (x y + x z + y z)(x y z)

Obs. x y z = x + y + z
12/12/15

18

Tabele de adevr (cont.)


Tabel de adevr: reprezentare unic a
unei funcii booleene
Dac dou funcii au tabele de adevr
identice, atunci funciile sunt echivalente
(i reciproc).
Tabelele de adevr pot fi utilizate pentru a
demonstra diverse egaliti.
Tabelele de adevr cresc exponenial (cu
numrul variabilelor) n mrime i nu sunt
foarte uor de neles. De aceea este
utilizat algebra booleean.
19
12/12/15

Expresiile logice nu sunt


unice

Spre deosebire de tabelele


de adevr, expresiile ce
reprezint o funcie
boolean nu sunt unice.
Exemplu:

F(x,y,z) = x y z + x yz +
xyz
G(x,y,z) = x y z + y z

Tabelele de adevr pentru


F() i G() sunt identice.

n concluzie, F() G()


12/12/15

x
0
0
0
0
1
1
1
1

y
0
0
1
1
0
0
1
1

z
0
1
0
1
0
1
0
1
20

F
1
0
1
0
0
0
1
0

G
1
0
1
0
0
0
1
0

Calcul algebric

Algebra booleean reprezint un


instrument util pentru simplificarea
circuitelor digitale.
Mai simplu mai ieftin, mai mic, mai
rapid.
Exemplu: s se simplifice funcia logic
F = xyz + xyz + xz.
Calcul direct:

F = xyz + xyz + xz
= xy(z+z) + xz
12/12/15 = xy1 + xz

21

Calcul algebric (cont.)

Exemplu. Demonstrai c:
xyz+xyz+xyz=xz+yz
Demonstraie:
xyz+xyz+xyz
=xyz +xyz+xyz+xyz
= x z (y + y) + y z (x + x)
= x z 1 + y z 1
=xz +yz
Q.E.D.

12/12/15

22

Funcii complementare

Complementara unei funcii se


obine din funcia iniial
interschimbnd ntre ele operaiile
i +, valorile 1 i 0 i
complementnd fiecare variabil.
n tabela de adevr se face
interschimbarea valorilor 1 i 0 n
coloana ce reprezint valoarea
funciei.
Complementara unei funcii nu este
acelai lucru cu duala funciei !

12/12/15

23

Exemplu de complementare

S se gseasc H(x,y,z),
complementara funciei
F(x,y,z) = x y z + x y z

H=F=(xyz+xyz)
= ( x y z ) ( x y z ) De Morgan
= ( x+y+z ) ( x+y+z )
De
Morgan

Observaie: Complementara unei funcii


poate fi obinut din funcia dual n care
24
12/12/15
se complementeaz toate literalele

Definiii forma normal


S.n. produs elementar/sum
elementar un produs/sum de
variabile i/sau negaiile lor

12/12/15

S.n. forma normal disjunctiv


(FND) a unei relaii logice
funcionale, o relaie echivalent (are
aceeai valoare de adevr) care este o
sum de produse elementare
construite cu aceleai variabile ca i
relaia dat iniial, fiecare produs
25

Definiii - forma normal


S.n. form normal conjunctiv
(FNC) a unei relaii logice
funcionale, o relaie echivalent (are
aceeai valoare de adevr) care este
un produs de sume elementare
construite cu aceleai variabile ca i
relaia dat iniial, fiecare sum
coninnd toate variabilele posibile
(ele sau complementarele lor).
12/12/15

26

Definiii mintermen, maxtermen

12/12/15

Literal: O variabil sau complementul


acesteia
Termen produs: literale legate prin
operaia
Termen sum: literale legate prin operaia
+
Mintermen: un termen produs n care
toate variabilele apar exact o singur
dat, complementate sau nu.
Maxtermen: un termen sum n care toate
variabilele apar o singur dat, 27

Mintermeni

Un mintermen reprezint o
combinaie unic n tabela de adevr.
Notai cu mj, unde j este echivalentul
zecimal al combinaiei binare a
mintermenului (bj).
O variabil n mj este complementat
dac valoarea n bj este 0, altfel este
necomplementat.
Exemplu: Fie o funcie de 3 variabile
(x,y,z) i j=3. Atunci bj = 011 iar

12/12/15

28

Maxtermeni

Un maxtermen reprezint o
combinaie unic n tabela de adevr.
Notai cu Mj, unde j este echivalentul
zecimal al combinaiei binare x
mintermenului (bj).
O variabil n Mj este complementat
dac valoarea n bj este 1, altfel este
necomplementat.
Exemplu: Fie o funcie de 3 variabile
(x,y,z) i j=3. Atunci bj = 011 iar

12/12/15

29

Formele canonice de reprezentare


ale funciilor booleene
Forme canonice:
Forma minterm (FCD forma canonic disjunctiv)
SUM de produse variabilele sau complementele lor n
cadrul unui mintermen sunt legate prin operaia
booleana I, iar mintermenii sunt legai prin operaia
boolean SAU. n sum apar mintermenii pentru care
funcia boolean are valoarea 1.
Forma maxterm (FCC forma canonic conjunctiv)
PRODUS de sume variabilele sau complementele lor n
cadrul unui maxtermen sunt legate prin operaia
booleana SAU, iar maxtermenii sunt legai prin operaia
boolean I. n produs apar maxtermenii pentru care
funcia boolean are valoarea 0.
Formele canonice sunt unice.
12/12/15

30

Mintermeni/maxtermeni
pentru o funcie de 2 variabile
booleene
Funcie de 2 variabile

12/12/15

Minterm
eni mi

Maxterm
eniMi

m0 x y

M0 x y

m1 x y

M1 x y

m2 x y

M2 x y

m3 xy

M3 x y
31

Mintermeni/maxtermeni
pentru o funcie de 3 variabile
booleene
Funcie de 3 variabile

12/12/15

Mintermeni
mi

Maxtermen
i Mi

m0 x y z

M0 x y z

m1 x yz

M1 x y z

m2 x y z

M2 x y z

m3 x yz

M3 x y z

m4 x y z

M4 x y z

m5 x y z

M5 x y z

m6 xy z

M6 x y z

m7 xyz

M7 x
32 y z

Exemplu

Fie tabela de adevr


x
urmtoare:
0
FCD pentru f1 este:
0
f1(x,y,z)= m1 + m2 + m4 + m6 0
=xyz+xyz+xyz 0
+xyz
1
FCC pentru f1 este:
1
f1(x,y,z) = M0 M3 M5 M7
1
= (x+y+z)(x+y + z )
1
(x +y+z )( x + y + z ).

12/12/15

y z

f1

0
0
1
1
0
0
1
1

0
1
1
0
1
0
1
0

0
1
0
1
0
1
0
1
33

Prescurtri: i

f1(x,y,z) = m(1,2,4,6), unde indic


faptul c este vorba despre o sum-deproduse, iar m(1,2,4,6) indic faptul c
mintermenii din sum sunt m1, m2, m4 i
m6.

f1(x,y,z) = M(0,3,5,7), unde indic


faptul c este vorba despre un produs-desume, iar M(0,3,5,7) indic faptul c
maxtermenii din produs sunt M0, M3, M5 i
M7.

Deoarece mj = Mj pentru orice j,

12/12/15

34

Conversia ntre formele canonice

Se nlocuiete cu (sau invers) i se


nlocuiesc acei termeni de rang j ce au aprut n
forma iniial cu aceia care nu au aprut.
Exemplu:
f1(x,y,z) = x y z + x y z + x y z + x y z
= m1 + m2 + m4 + m6

(1,2,4,6)
= (0,3,5,7)
=

= (x + y + z)(x + y + z )( x + y + z )
( x + y + z )
12/12/15

35

Forme standard
Formele standard sunt
asemntoare cu formele canonice,
cu excepia faptului c nu toate
variabilele trebuie s apar n
termenii produs (respectiv sum).
Exemple:

f1(x,y,z) = x y z + y z + x z
reprezint o form standard sum-deproduse
f (x,y,z) = (x + y + z)(y + z )( x + z )
1

12/12/15

36

Conversia unei sume-de-produse de la


forma standard la forma canonic

Termenii ne-canonici se transform


prin inserarea valorii 1 pentru fiecare
variabil x ce lipsete:
(x+x)=1
Se nltur mintermenii duplicai
f1(x,y,z) = x y z + y z + x z
= x y z + ( x + x ) y z + x(y+y)z
=xyz+xyz+xyz+xyz+x
yz
=xyz+xyz+xyz+xyz

12/12/15

37

Conversia unui produs-de-sume de la


forma standard la forma canonic
Termenii ne-canonici se transform prin
inserarea valorii 0 pentru variabilele ce
lipsesc (de exemplu, xx = 0) i se folosete
proprietatea de distributivitate
Se nltur maxtermenii duplicai
f (x,y,z) = (x+y+z)(y + z )(x + z )
1
= (x+y+z)(xx+y+z)(x+yy+z )
= (x+y+z)(x+y +z )(x +y +z )
(x +y+z)(x +y +z )
= (x+y+z)(x+y +z )(x +y +z )(x
+y+z )
38
12/12/15

Diagrame Karnaugh

Diagramele Karnaugh sunt


reprezentri grafice ale funciilor
booleene.
O celul din diagram corespunde
unei linii din tabela de adevr.
De asemenea, o celul din diagram
corespunde unui mintermen sau
maxtermen al expresiei booleene
Zone ce conin mai multe celule
adiacente corespund termenilor
standard.

12/12/15

39

Diagrama Karnaugh pentru dou


variabile
x
x1 2

m0

m1
3

m2

x2

x1

m3

SAU 0
1

m0
1

m2
3

m1

m3

Obs. Ordinea variabilelor este


important - pentru f(x1,x2), x1 este linia,
x2 este coloana.
Celula 0 reprezint x1 x2 ; Celula 1
reprezint x1 x2; etc. Dac avem un
mintermen n expresia funciei, atunci

12/12/15

40

Diagrama Karnaugh pentru dou


variabile (cont.)

Oricare dou celule adiacente din


tabel difer printr-o singur
variabil, ce apare complementat
ntr-o celul i necomplementat n
cealalt.
Exemplu:
m0 (=x1 x2 ) este adiacent cu m1 (=x1
x2) i cu m2 (=x1x2 ) dar nu i cu m3
(=x1x2)

12/12/15

41

Diagrame Karnaugh - exemple

f(x1,x2) = x1 x2 + x1 x2 + x1x2

= m 0 + m1 + m2
= x 1 + x2
n diagrama Karnaugh
valorile de 1 reprezint
mintermenii m0, m1, m2
Gruparea celulelor cu
valoarea 1 permite
simplificarea
Ce funcii (mai simple) sunt
reprezentate de fiecare
grupare?
x = m + m
1
0
1
x = m + m
0
2
12/12/15 2

x2

x1

1
2

1
3

42

Minimizarea FND folosind diagrame


Karnaugh
Se completeaz cu 1 n diagrama
Karnaugh pentru fiecare termen produs
din funcie.
Se grupeaz celulele adiacente ce conin
valoarea 1 pentru a obine un produs cu
mai puine variabile. Gruprile astfel
obinute trebuie s conin un numr de
celule ce reprezint o putere a lui 2 (2, 4,
8, etc.).
Se grupeaz i termenii adiaceni de pe
margini pentru diagramele Karnaugh de 3
sau mai multe variabile. Cele patru coluri
12/12/15
ale tabelului se pot grupa mpreun. 43

Diagrama Karnaugh pentru trei


variabile
yz
00

x
0

m0
4

01
3

m1
5

m4

11
2

m3
7

m5

10
m2
6

m7

m6

Obs.: ordinea variabilelor conteaz - pentru


(x,y,z), yz este coloana, x este linia.
Obs.: fiecare celul este adiacent cu trei alte
celule (stnga, dreapta, sus, jos sau cu cea de
pe marginea corespunztoare din partea
44
12/12/15
cealalt)

Diagrama Karnaugh pentru trei


variabile (cont.)

mintermen

n dreapta sunt
prezentate tipurile de
structuri ce sunt fie
mintermeni, fie se obin
prin regula de minimizare
a gruprii n grupuri de
cte 2, 4 sau 8 celule.
grup de 2 termeni
grup de 4 termeni
12/12/15

45

Regulile de simplificare

Se completeaz mintermenii funciei


booleene n diagram apoi se
grupeaz termenii 1
Exemplu: f(x,y,z) = xz + xyz + yz
yz
x
Rezultat: f(x,y,z)= x z + y
1

12/12/15

1
1

1
1

1
1

46

1
1

Exemple
yz
X

f1(x, y, z) = m(2,3,5,7)

f1(x, y, z) = x y + xz

00

12/12/15

y, z) = x +y z

11

10

1
1

1
1

0
1

f2(x, y, z) = m (0,1,2,3,6)

f2(x,

01

47

Diagrame cu patru variabile


YZ
WX

00

01

11

10

00 m0

m1

m3

m2

01 m4

m5

m7

m6

11 m12

m13

m15

m14

10 m8

m9

m11

m10

12/12/15

Celule de sus sunt adiacente cu


cele de jos.
Celulele din dreapta sunt adiacente
cu cele din stnga.
48

Simplificarea diagramelor cu patru


variabile
O celul reprezint un mintermen de 4
literale.
Un dreptunghi format din dou ptrate
adiacente reprezint un termen produs de
3 literale.
Un dreptunghi format din 4 celule
reprezint un termen produs de 2 literale.
Un dreptunghi format din 8 celule
reprezint un termen produs dintr-un
literal.
Un dreptungi format din toate cele 16
49
12/12/15
celule reprezint o funcie logic egal
cu

Exemplu

Simplicai funcia boolean

f (a,b,c,d) = m(0,1,2,4,5,7,8,9,10,12,13).

Se completeaz cu 1 diagrama Karnaugh


a funciei f( ) i apoi se grupeaz valorile
de
1.
ab cd
1

1
1

1
1

f(a,b,c,d) = c + b d + a b d
12/12/15

50

Simplificarea produselor de sume

Simplificarea sumei-de-produse se
utilizeaz asupra zerourilor
funciei din diagrama Karnaugh
pentru a obine f.
Complementara lui f, este (f) = f
Complementara unei funcii booleene se
poate obine din dual, complementnd
fiecare literal.
sau
Folosind Teorema lui DeMorgan.

12/12/15

51

Produs-de-sume
cd
ab

f(a,b,c,d) = ab + ac + a b c d
Duala lui f este: (a+b)(a+c )(a +b+c+d )

Complementarea tuturor literalelor n duala lui (f ):


= (a +b)(a +c)(a+b+c+d)
12/12/15

52

Termeni redundani

Pot exista combinaii de valori de intrare care

Nu se vor ntmpla niciodat


Dac se ntmpl, ieirea nu conteaz.

Valorile funciei pentru astfel de combinaii se


numesc valori ce nu conteaz (termeni
redundani).
Se noteaza cu R (sau x). Fiecruia dintre
termeni i se poate atribui valoarea 0 sau 1
ntr-o implementare.
Termenii redundani se pot utiliza pentru
simplificarea funciilor
12/12/15

53

Exemplu
Simplificarea funciei
f(a,b,c,d)
a crei diagram este:
f = acd+ab+cd+abc
sau
f = acd+ab+cd+abd
A 3-a soluie?

12/12/15

cd
ab 00 01 11 10
00 0 1 0 1
01 1 1 0 1
11 0 0 x
10 1 1 x

x
x

0 1 0 1
1 1 0 1
0 0 x

1 1 x

0 1 0 1
1 1 0 1
0 0 x

1 1 x

54

Exemplu

cd
ab

x 1 0 0

1 x 0 x

Simplificai funcia
g(a,b,c,d)
g = ac+ ab
sau
g = ac+bd

1 x

x 1

0 x

x 0

x 1 0 0
1 x 0 x
1 x

x 1

0 x

x 0

x 1 0 0
1 x 0 x

12/12/15

1 x

x 1

0 x

x 0
55

Vous aimerez peut-être aussi