Sunteți pe pagina 1din 48

Bazele tehnologiei

informaţiei

Bazele logice ale calculatoarelor

Prof. univ. dr. Fl. NĂSTASE


Cuprins
1. Definirea algebrei logice
2. Reprezentarea funcţiilor logice
2.1. Formele canonice ale funcţiilor logice
2.2. Funcţiile logice de bază
3. Circuite logice
3.2. Circuitele logice combinaţionale
3.3. Circuite logice secvenţiale
4. Blocuri funcţionale (registrul, numărătorul, sumatorul,
matricea de comutaţie)
2
Definirea algebrei logice

• Algebra booleană (algebra logicii) este o mulţime B ≠ {Ø}


(B = B2 = {0,1}) înzestrată cu:
• două legi de compoziţie:
9 ∩ (*) produs logic (ŞI)
9 ∪ (+) sumă logică (SAU)
• aplicaţie a mulţimii B în ea însăşi:
9 ⎯ complement (NU)

3
Definirea algebrei logice

• Proprietăţile algebrei logicii (x, y, z ∈{0,1}):


a. idempotenţa: x ∩ x = x; x ∪ x = x;
b. comutativitate: x ∩ y = y ∩ x; x ∪ y = y ∪ x;
c. asociativitate: (x ∩ y) ∩ z = x ∩ (y ∩ z)
(x ∪ y) ∪ z = x ∪ (y ∪ z)
d. absorbţie: x ∩ (x ∪ y) =x ; x ∪ (x ∩ y) = x
e. distributivitate: x ∩ (y ∪ z) = (x ∩ y) ∪ (x ∩ z)
x ∪ (y ∩ z) = (x ∪ y) ∩ (x ∪ z)

4
Definirea algebrei logice

• Proprietăţile algebrei logicii (continuare) :


f. ∃ un element 0, numit prim element:
x ∩ 0 = 0; x ∪ 0 = x
g. ∃ un element 1, numit ultim element, astfel că:
x ∩ 1 = x; x ∪ 1 = 1
h. legea dublei negaţii: x = x
i. principiul contradicţiei: x ∩ x = 0
j. principiul terţiului exclus: x ∪ x = 1
k. legile lui de Morgan: x ∩ y = x ∪ y ; x ∪ y = x ∩ y
5
Definirea algebrei logice
• Expresia booleană (logică) se obţine prin aplicarea operaţiilor
∩, ∪, ⎯ unor elemente ale unei algebre booleene.
• O valoare a unei expresii booleene E (x1, x2,..., xn) se obţine
prin înlocuirea variabilelor (x1, x2,..., xn) cu setul de valori
(i1, i2,...,in) şi efectuarea operaţiilor indicate.
• E1 (x1, x2,..., xn) este echivalentă cu E2 (x1, x2,..., xn) dacă

E1 (i1j, i2j,..., inj) ≡ E2 (i1j, i2j,...,inj) pentru ∀ j = 1, 2n

E1(x1, x2, x3) = x2 ∪ ( x1 ∩ x2 ∩ x3)


E2(x1, x2, x3) = ( x1 ∩ x2) ∪ ( x1 ∩ x3) ∪ (x1 ∩ x2) 6
Reprezentarea funcţiilor logice

• Funcţia logică (booleană):


f : B2 → B2 funcţie logică de o singură variabilă
f : B2 X B2 → B2 funcţie logică de 2 variabile

f : B2 X B2 X...X B2 → B2 funcţie logică de n variabile

7
Reprezentarea funcţiilor logice
• O funcţie logică este complet definită dacă:
f (i1j, i2j,..., inj) ∈ {0,1} pentru ∀ j = 1, 2n
• O funcţie logică este incomplet definită dacă:
f (i1j, i2j,..., inj) ∉ {0,1} pentru un j =1, 2
n

8
Reprezentarea funcţiilor logice

• Funcţiile booleene se reprezentă sub forma:


9 tabelelor de adevăr
9 expresiilor booleene
NU SAU ŞI SAU-NU ŞI-NU
x y
f1(x) = x f2(x,y) = x ∪y f3(x,y)= x ∩ y f4(x,y) f5(x,y)

0 0 1 0 0 1 1

0 1 1 1 0 0 1

1 0 0 1 0 0 1

1 1 0 1 1 0 0

9
Reprezentarea funcţiilor logice

• În practică se apelează la expresiile logice.

• Shannon a stabilit existenţa expresiilor booleene care


reprezintă funcţii definite (în totalitate) prin tabele de
adevăr.

10
Reprezentarea funcţiilor logice
• Produs elementar: produsul de variabile booleene sau complemente
ale acestora.
• Mintermen (în raport cu variabilele logice x1, x2,..., xn) - produsul
elementar în care apar simple sau complementate toate variabilele
x1, x2,..., xn.

• Un mintermen se notează prin mk(x1, x2,..., xn); se are în vedere că:


9 funcţia identitate se notează prin x1 (= x)

9 iar funcţia complement prin x0 (= x )

• Exemplu: m2(x1, x2, x3) = x10 x21 x30 = x1 x2 x3


11
Reprezentarea funcţiilor logice
• Un mintermen este o expresie logică particulară asociată unei
combinaţii de valori binare. Pentru n variabile există 2n
mintermeni.

• Forma canonică disjunctivă (FCD) pentru funcţiile booleene


de n variabile se poate scrie:
2n
f(X) = U f(Ik) ⋅ mk(X)
k =1

9 cele n variabile se notează prin X = (x1, x2,…xn) (xi∈{0,1})

9 seturile de valori sunt: Ik = (i1k, i2k,..., ink ) k = 1, 2n 12


Reprezentarea funcţiilor logice
• Teorema este adevărată pentru toate funcţiile de o singură
variabilă (X = (x1) unde x1∈{0,1})
2n 2

U f(Ik) ⋅ mk(X) =
k =1
U f(i
k =1
1k) ⋅ i1k
x1
0 1
= f(0) ⋅ x1 + f(1) ⋅ x1
= f(0) ⋅ x1 + f(1) ⋅ x1
Dacă x1=0, atunci: f(0) ⋅ x1 + f(1) ⋅ x1 = f(0) ⋅ 0 + f(1) ⋅ 0 = f(0)

Dacă x1=1, atunci: f(0) ⋅ x1 + f(1) ⋅ x1 = f(0) ⋅1 + f(1) ⋅1 = f(1)


13
Reprezentarea funcţiilor logice
• Aşadar pentru x1∈{0,1})
2

U f(i1k ) ⋅ x1 = f(x1)
i1k

k =1

• Presupunem teorema adevărată pentru o funcţie de n variabile


şi vom considera o funcţie de n+1 variabile: f (x1, x2,…xn, xn+1)
• Vom utiliza notaţiile:

X' = (x1, x2,…xn, xn+1) sau X' = (X, xn+1) (xi∈{0,1}) – pentru
variabile
I' k = (i1k, i2k,..., ink, i(n+1)k) sau I' k = (Ik, i(n+1)k) k = 1, 2n+1
pentru setul de valori 14
Reprezentarea funcţiilor logice
• Se stabileşte că ∀ X’: f(X' ) = f(X,0) ⋅ ( x n +1 ) 0 + f(X,1) ⋅ ( x n +1 )1

Aceasta se poate scrie: f(X' ) = U f(X, i (n+1)k) ⋅ ( x n +1 ) i (n+1)k


(1)
i(n+1)k∈{0 ,1}

Dacă xn+1= 0 f(X,0) ⋅ ( x n +1 ) 0 + f(X,1) ⋅ ( x n +1 )1 =


f(X,0) ⋅ 0 0 + f(X,1) ⋅ 01 =
f(X,0) ⋅1 + f(X,1) ⋅ 0 = f(X,0) = f(X, x n +1 ) = f(X' )

Dacă xn+1= 1 f(X,0) ⋅ ( x n +1 ) 0 + f(X,1) ⋅ ( x n +1 )1 =


f(X,0) ⋅10 + f(X,1) ⋅11 =
f(X,0) ⋅ 0 + f(X,1) ⋅1 = f(X,1) = f(X, x n +1 ) = f(X' ) 15
Reprezentarea funcţiilor logice
• Dar f(X,0) şi f(X,1) sunt funcţii de n variabile, pentru care
am presupus că teorema este adevărată, ceea ce ne permite să
scriem: n
2
f(X,0) = U f(Ik,0) ⋅ mk(X)
k =1
2n
f(X,1) = U f(Ik,1) ⋅ mk(X)
k =1

De unde va rezulta:
2n
f(X, i(n+1)k) = U f(Ik, i(n+1)k) ⋅ mk(X) (2)
k =1
16
Reprezentarea funcţiilor logice
• Din relaţiile (1) şi (2) rezultă
2n
f(X' ) = U U f(Ik , i (n+1)k) ⋅ mk(X) ⋅ ( x n +1 ) i (n+1)k

i(n+1)k∈{0 ,1} k =1

Dar f(Ik, i(n+1)k) este chiar f(I' k ) şi mk(X' ) = mk(X)⋅ ( x n +1 )i (n+1)k

2n 2n +1
Dacă se scrie echivalent cu va rezulta:
U U
i(n+1)k∈{0 ,1} k =1
U
k =1

2n +1
f(X' ) = U f(I' k) ⋅ mk(X' )
k =1

17
Reprezentarea funcţiilor logice
• Sumă elementară: suma de variabile booleene sau complemente ale
acestora.

• Maxtermen (în raport cu variabilele logice x1, x2,..., xn) - suma


elementară în care apar simple sau complementate toate variabilele
x1, x2,..., xn. Un maxtermen se notează: Mk(x1, x2,..., xn); se are în
vedere că:
9 funcţia identitate se notează prin x0 (= x)

9 iar funcţia complement prin x1 (= x)

• Exemplu: M2(x1, x2, x3) = x10+ x21 + x30 = x1 + x2 + x3


18
Reprezentarea funcţiilor logice

• Forma canonică conjunctivă (FCC) pentru funcţiile booleene


de n variabile se poate scrie:

2n
f(X) = I [f(Ik) + Mk(X)]
k =1

9cele n variabile s-au notat X = (x1, x2,…xn) (xi∈{0,1})

9seturile de valori sunt: Ik = (i1k, i2k,..., ink ) k = 1, 2n

19
Reprezentarea funcţiilor logice

• Forma canonică disjunctivă/conjunctivă a unei funcţii logice


este unică.

• Forma normală disjunctivă a unei expresii logice este o sumă


de produse elementare egală cu expresia dată.

• Forma normală conjunctivă a unei expresii logice este un


produs de sume elementare egal cu expresia dată.

• Forma normală disjunctivă/conjunctivă a unei funcţii nu este


unică.
20
Reprezentarea funcţiilor logice

x y z f(x,y,z) mi Mi

0 0 0 1 m0 = x y z M0 = x + y + z
0 0 1 1
m1 = x y z M1 = x + y + z
0 1 0 1 M2 = x + y + z
m2 = x y z
0 1 1 0 M3 = x + y + z
m3 = x y z
1 0 0 1 m4 = x y z M4 = x + y + z
1 0 1 0 m5 = x y z M5 = x + y + z
1 1 0 0 m6 = x y z M6 = x + y + z
1 1 1 0 m7 = x y z M7 = x + y + z
21
Reprezentarea funcţiilor logice
FCD a funcţiei se va determina aplicând relaţia:
f1(x,y,z) = f(0,0,0)⋅m0 + f(0,0,1)⋅m1 + f(0,1,0)⋅m2 + f(0,1,1)⋅m3 +

f(1,0,0)⋅m4+ f(1,0,1)⋅m5 + f(1,1,0)⋅m6 + f (1,1,1)⋅-m7

FCC a funcţiei se calculează:


f2 (x,y,z) = [f (0,0,0) + M0] [f (0,0,1) + M1]

[f (0,1,0) + M2] [ f(0,1,1) + M3]

[f (1,0,0) + M4] [f (1,0,1) + M5]

[f (1,1,0) + M6] [f (1,1,1) + M7]

f1 (x,y,z) ≡ f2 (x,y,z)
22
Funcţiile logice de bază
• Dacă f(x1, x2…xn) : B2 X B2 X...X B2 → B2 va exista un număr
n
de 2 2 funcţii distincte.
• Fiind funcţie de n variabile vor exista 2n mintermeni sau
maxtermeni.
• Forma canonică disjunctivă/conjunctivă este o funcţie logică
reprezentată prin suma/produsul a k minitermeni/maxtermeni
distincţi.
• Valoarea maximă a lui k=2n - mulţimea funcţiilor logice distincte
este: k
N = ∑Ck = 2 = 2j k 2n

j= 0 23
Funcţiile logice de bază
• Principalele funcţii logice sunt:
9 funcţia complement (NU): f10 (x1, x2,..., xn) = xi ∀ i= 1, n
9 funcţia identitate : f3 (x1, x2,..., xn) = xi ∀ i = 1, n ;
9 funcţia ŞI: f1 (x1, x2,..., xn) = x1 . x2 . ... . xn, funcţiea are valoarea
logică 1 dacă toate variabilele au valoarea logică 1;
9 funcţia SAU: f7 (x1, x2, ..., xn) = x1 + x2 +...+ xn , are valoarea
logică 1 dacă cel puţin o variabilă are valoarea logică 1;
9 funcţia ŞI-NU, are valoarea logică 1 dacă cel puţin o variabilă
are valoarea logică 0:

f 14 ( x1 , x2 , .. , x n ) = x1 ⋅ x2 ⋅ .. ⋅ x n = x1 + x2 + .. + x n
24
Funcţiile logice de bază
• Principalele funcţii logice sunt:
9 funcţia SAU-NU, are valoarea logică 0 dacă cel puţin o variabilă
are valoarea logică 1:
f 8 ( x1 , x2 , .., x n ) = x1 + x2 + .. + x n = x1 ⋅ x2 ⋅ .. ⋅ x n
9 funcţia INHIBARE:
f 4 ( x1 , x 2 , ..., x n ) = x1 ⋅ x2 ⋅ ⋅ x k-1 ⋅ x k ⋅ x k+1 ⋅ ..⋅ x n
k ∈ {1,2,...,n};
9 funcţia IMPLICARE:
f 11 ( x1 , x 2 , .. , x n ) = x1 + x 2 + x k-1 + x k + x k+1 + .. + x n

k ∈ {1,2,...,n}. 25
Simplificarea funcţiilor logice

• Metodele de simplificare a funcţiilor logice sunt:


9 procedee algebrice
9 diagramele de minimizare Veitch

FCD FCC 26
Simplificarea funcţiilor logice

9 diagramele de minimizare Karnaugh - exemplu: f(x,y,z,t)

mi - pentru FCD

Mi - pentru FCC

27
Simplificarea funcţiilor logice

• Algoritmul de minimizare, prin diagramele Veitch sau Karnaugh,


este (pentru FCD):
9 se scriu valorile funcţiei în diagramă, scrierea după 1
9 se grupează 2k (k= 0,1,2,...) suprafeţe elementare adiacente
care au valoarea logică 1
9 fiecărei suprafaţe extinse se asociază un produs elementar
constituit variabilele care nu-şi schimbă valoarea pe
respectiva suprafaţă
9 expresia logică rezultată va fi o sumă de produse.

28
Circuite logice

• Circuitele logice sunt componente electronice interconectate,


capabile să realizeze operaţii logice;
• Schema logică reprezintă implementarea unei expresii logice – se
folosesc o serie de simboluri specifice;
• Circuitele logice se clasifică după:
9 nivelul de tensiune asociat cifrelor binare (logică pozitivă
sau negativă)
9 modul de funcţionare în timp:
– circuite logice combinaţionale;
– circuite logice secvenţiale
29
Circuite logice

Reprezentarea cifrelor binare în:


(a) logica pozitivă şi (b) logica negativă
30
Circuite logice

Circuitele logice combinaţionale

yj(t) = fj (i1(t), i2(t),… im(t)) j = 1, n

31
Circuite logice

Exemple de circuite logice combinaţionale:


• Circuitul pentru funcţia complement

• Circuitul logic ŞI

• Circuitul logic SAU

32
Circuite logice

• Circuitul logic ŞI-NU (NAND,


NUMAI)

• Circuitul logic SAU-NU


(NOR,NICI)

• Circuitul SAU-EXCLUSIV
(MODULO 2)

33
Circuite logice

• Circuite logice secvenţiale

y(t)=f((u1(t),u(t),...,un(t),y(t-τ))

• Circuitul basculant bistabil este folosit ca element de bază pentru


memorare (se stochează un bit).
34
Blocuri funcţionale

• Registrele sunt dispozitivele digitale realizate cu elemente de


memorare şi au rolul de a stoca temporar datele reprezentate în
formă binară.

• Funcţie de modul de păstrare a informaţiei registrele pot fi:


9 statice - când oprirea impulsurilor de comandă nu afectează
conţinutul memorat;
9 dinamice - când oprirea impulsurilor de comandă duce la
pierderea conţinutului memorat.

• Operaţia de înregistrare a datelor binare într-un registru se


numeşte scriere, iar operaţia de transfer a conţinutului citire.
Trecerea tuturor celulelor de memorare din structura unui registru
în starea “0” se numeşte ştergere. 35
Blocuri funcţionale

• Operaţia de citire , respectiv scriere, se poate efectua:


9 serie - cifrele binare fiind preluate secvenţial;
9 paralel - cifrele binare se înscriu/citesc simultan.

J(t) K(t) Q(t-τ) Q(t)

0 0 0/1 0/1
0 1 0/1 0
Registru serie (de deplasare)
1 0 0/1 1
1 1 0/1 1/0
36
Blocuri funcţionale

Registru paralel

37
Blocuri funcţionale

Numărătoarele sunt utilizate pentru controlul execuţiei unor


operaţii. Ieşirile circuitelor (circuite basculante bistabile) care
formează numărătorul sunt interpretate împreună - reprezintă o
stare a numărătorului.

38
Blocuri funcţionale

Sumatorul elementar Intrări Ieşiri


ai bi Ti Si Ti+1
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
Formele canonice disjunctive 0 1 1 0 1
1 0 0 1 0
ale celor două funcţii Si şi Ti+1 1 0 1 0 1
1 1 0 0 1
sunt:
1 1 1 1 1

Si (ai, bi,Ti) = ai biTi + aibi Ti + ai bi Ti + aibiTi


Ti + 1 (ai, bi,Ti) = aibiTi + ai biTi + aibi Ti + aibiTi 39
Blocuri funcţionale

Însumarea serială

40
Blocuri funcţionale

Însumarea paralelă

41
Blocuri funcţionale

• Matricea de comutaţie este un circuit logic cu ieşiri multiple - ieşirile


sunt dependente de intrări print-o relaţie matricială. După rolul în
utilizare există:
9 matricea pentru codificare (codifică datele care se prelucrează prin
sistemul de calcul);

42
Blocuri funcţionale

9 matricea pentru decodificare se utilizează pentru scrierea selectivă


a datelor în memoria adresabilă RAM (Random Access Memory);

43
Blocuri funcţionale

9 matricea pentru selecţie se utilizează pentru:


– citirea selectivă a unei locaţii dintr-o zonă de memorie;
– generararea de funcţii logice;
– partajarea unei linii de transmisie prin multiplexarea în timp.

44
Blocuri funcţionale

9 matricea pentru distribuţie are rolul de a selecta o ieşire, din cele 2n,
spre care se transferă informaţia de pe intrare.

45
Blocuri funcţionale

9 Memoria - un ansamblu de
registre de aceeaşi dimensiune,
accesibile printr-o magistrală
unică

46
Blocuri funcţionale
9 Circuitul integrat reprezintă un circuit electronic ale cărui componente
(rezistoare, diode, condensatoare, tranzistoare etc.) sunt realizate pe o pastilă
de material semiconductor în scopul obţinerii unei funcţii specifice.

Familia de CI Circuite combinaţionale Circuite secvenţiale


Integrare pe scară mică (SSI) Porţi: NU, ŞI, SAU, Circuite basculante bistabile
(10-100 comp/cip) NAND, NOR
Integrare pe scară medie Decodificatoare, Registre, Numărătoare
(MSI) sumatoare, multiplexoare
(100-1000 comp/cip)
Integrarea pe scară largă Memorii fixe Memorii cu acces aleator
(LSI) (ROM,PROM), Matrici (RAM)
(1000-10000 comp/cip) logice programabile (PLA)
Integrarea pe scară foarte
largă (VLSI) Circuite specializate
(>10000 comp/cip)
47
Bibliografie

1. Năstase Fl., Zota R., TimofteC., Constantinescu R., Bazele


tehnologiei informaţiei, Ed. InfoMega, Bucureşti, 2007

48

S-ar putea să vă placă și