Sunteți pe pagina 1din 14

CAP.

2__ FUNCŢII BOOLEENE

2.3. IMPLEMENTAREA FUNCŢIILOR BOOLEENE CU


AJUTORUL FUNCŢIEI NAND (↑)

! Implementarea funcţiilor booleene cu funcţia NAND se face pornind de la


forma disjunctivă (canonică sau elementară) a funcţiei

Forma generalizată a funcţiei NAND pentru „n” variabile este:

x1 ↑ x 2 ↑ ... ↑ x n = x1 ⋅ x 2 ⋅ ... ⋅ x n = x1 + x 2 + ... + x n

Succesiunea transformărilor pentru implementarea cu funcţia NAND este:

f cd ( x1÷n ) = ∑ ( p1i ⋅ p 2i ⋅ ... ⋅ p ni ) = ∑ ( p1i ⋅ p 2i ⋅ ... ⋅ p ni ) =


1 1

= ∑ ( p1i ↑ p 2i ↑ ... ↑ p ni ) = ↑( p1i ↑ p 2i ↑ ... ↑ p ni )


1 1

Algoritmul de implementare a unei funcţii booleene cu circuite tip NAND:

• se porneşte de la forma disjunctivă (canonică sau elementară) a funcţiei;

• în fiecare termen conjunctiv (canonic sau elementar) se înlocuieşte operatorul „ .”


cu operatorul „↑”;

• se reunesc prin operatorul „↑” toţi termenii obţinuţi la punctul anterior.

OBSERVAŢIE:

x = x ↑ x ⇒ în cazul în care forma canonică disjunctivă a funcţiei are un singur


termen, atunci acesta se neagă.

Conf. dr. ing. Gloria CIUMBULEA 18


CAP.2__ FUNCŢII BOOLEENE

Exemplu:

Se consideră următoarele funcţii booleene:


f1 ( x1 ÷ x3 ) = f1cd ( x1 ÷ x3 ) = x1 x 2 x3 + x1 x 2 x3 + x1 x 2 x3
f 2 ( x1 ÷ x3 ) = f 2 ed ( x1 ÷ x3 ) = x 2 x3 + x1 x 2 + x1 + x 2 x3

Expresiile funcţiilor f1 şi f2 implementate cu funcţia NAND sunt următoarele:

( ) (
f 1, NAND ( x1 ÷ x3 ) = x1 ↑ x 2 ↑ x3 ↑ (x1 ↑ x 2 ↑ x3 ) ↑ x 1 ↑ x 2 ↑ x3 )
f 2, NAND ( x1 ÷ x3 ) = (x 2 )
↑ x3 ↑ (x1 ↑ x 2 ) ↑ (x1 ↑ x1 ) ↑ (x 2 ↑ x3 )
x 1 = x1 ↑ x1 ; x 2 = x 2 ↑ x 2

x1
Schema logică a funcţiei f1 & &
implementată cu funcţia
NAND:
x2
& f1
& &

x3 &

x1
& &
Schema logică a funcţiei f2
implementată cu funcţia
NAND: x2
& f2
& &

x3 &

Conf. dr. ing. Gloria CIUMBULEA 19


CAP.2__ FUNCŢII BOOLEENE

2.4. IMPLEMENTAREA FUNCŢIILOR BOOLEENE CU


AJUTORUL FUNCŢIEI NOR (↓)

! Implementarea funcţiilor booleene cu funcţia NOR se face pornind de la


forma conjunctivă (canonică sau elementară) a funcţiei

Forma generalizată a funcţiei NOR pentru „n” variabile este:

x1 ↓ x 2 ↓ ... ↓ x n = x1 + x 2 + ... + x n = x 1 ⋅ x 2 ⋅ ... ⋅ x n

Succesiunea transformărilor pentru implementarea cu funcţia NAND este:

f cc ( x1÷ n ) = ∏ (s1i + s 2i + ... + s ni ) = ∏ (s1i + s 2i + ... + s ni ) =


0 0

= ∏ (s1i ↓ s 2i ↓ ... ↓ s ni ) = ↓(s1i ↓ s 2i ↓ ... ↓ s ni )


0 0

Algoritmul de implementare a unei funcţii booleene cu circuite tip NOR:

• se porneşte de la forma conjunctivă (canonică sau elementară) a funcţiei;

• în fiecare termen disjunctiv (canonic sau elementar) se înlocuieşte operatorul „ +”


cu operatorul „↓”;
• se reunesc prin operatorul „↓” toţi termenii obţinuţi la punctul anterior.

OBSERVAŢIE:

x = x ↓ x ⇒ în cazul în care forma canonică conjunctivă a funcţiei are un singur


termen, atunci acesta se neagă.

Conf. dr. ing. Gloria CIUMBULEA 20


CAP.2__ FUNCŢII BOOLEENE

Exemplu:

Se consideră următoarele funcţii booleene:


( )(
f 1 ( x1 ÷ x 3 ) = f 1cc ( x1 ÷ x 3 ) = x 1 + x 2 + x 3 ⋅ x1 + x 2 + x 3 )
( )(
f 2 ( x1 ÷ x 3 ) = f 2ec ( x1 ÷ x 3 ) = ( x1 + x3 ) ⋅ x 1 + x 2 + x 3 ⋅ x1 + x 2 )
Expresiile funcţiilor f1 şi f2 implementate cu funcţia NOR sunt următoarele:

( ) (
f1, NOR ( x1 ÷ x3 ) = x1 ↓ x 2 ↓ x3 ↓ x1 ↓ x2 ↓ x 3 )
( ) (
f 2, NOR ( x1 ÷ x3 ) = (x1 ↓ x3 ) ↓ x1 ↓ x2 ↓ x 3 ↓ x1 ↓ x 2 )
x i = xi ↓ xi , i = 1 ÷ 3

x1
≥1
Schema logică a funcţiei f1
implementată cu funcţia NOR: ≥1
x2 ≥1
f1
≥1

≥1
x3
≥1

x1
≥1 ≥1
Schema logică a funcţiei f2
implementată cu funcţia NOR:
x2
f2
≥1
≥1 ≥1

x3
≥1 ≥1

Conf. dr. ing. Gloria CIUMBULEA 21


CAP.2__ FUNCŢII BOOLEENE

2.5. LANŢURI NERAMIFICATE DE OPERATORI

Lanţul neramificat de operatori este o schemă logică în care intrările într-un


operator din lanţ reprezintă ieşirea unui operator anterior sau o variabilă de intrare a
schemei (nu se realizează bucle închise prin legături reacţie).

Algoritmul de scriere a funcţiei booleene asociate schemei logice realizate cu


operatori NAND şi respectiv NOR:

• se construieşte lanţul de operatori NAND/NOR pe nivele logice, de la ieşire către


intrare;
• se numerotează nivelele logice începând cu „1” de la ieşire către intrare;
- pentru lanţurile de NAND
operatori NAND, pe nivelele
intrare ieşire
de rang impar se realizează
funcţia SAU, iar pe nivelele de
rang par se realizează funcţia ...... 2K+1 ....... 3 2 1
ŞI :

sau şi sau ....... sau şi sau

- pentru lanţurile de NOR


operatori NOR, pe nivelele de
rang impar se realizează intrare ieşire
funcţia ŞI, iar pe nivelele de
rang par se realizează funcţia
SAU : ...... 2K+1 ....... 3 2 1

şi sau şi ....... şi sau şi

• variabilele care reprezintă intrări ale circuitelor de pe nivele impare se iau


complementate în calculul funcţiei.
OBSERVAŢIE:
Algoritmul de scriere a funcţiei booleene asociate lanţului de operatori se bazează
pe relaţiile lui de Morgan

Conf. dr. ing. Gloria CIUMBULEA 22


CAP.2__ FUNCŢII BOOLEENE

Exemplul 1:

Utilizând algoritmul lanţurilor de operatori NAND, se vor determina expresiile


booleene corespunzătoare funcţiile logice descrise de următoarea schemă logică:

x2 f1
& &

x1
& & &
f2

&
x4
& &

x3

Determinarea expresiei booleene a funcţiei f1

Organizarea pe nivele logice a schemei pentru funcţia f1:

x1 A
x2 & & f1 = x 3 + x1 x 2

x3
2 1

şi sau

Expresiile parţiale ale funcţiei f1, calculate pe fiecare nivel logic sunt:

Nivelul logic 2: A = x1 x 2
Nivelul logic 1: f1 = x 3 + x1 x 2

Conf. dr. ing. Gloria CIUMBULEA 23


CAP.2__ FUNCŢII BOOLEENE

Determinarea expresiei booleene a funcţiei f2

a. Organizarea pe nivele logice a schemei pentru funcţia f2 se face fără a se ţine


seama de faptul că anterior a fost calculată expresia pentru funcţia f1:

x2 C F
& &

x3
x1 D
& & f2
A &
&
x4 G
B E
& &

x3

4 3 2 1

şi sau şi sau

Expresiile parţiale ale funcţiei f2, calculate pe fiecare nivel logic sunt:

Nivelul logic 4: A = x1 ; B = x 4
Nivelul logic 3: C = x1 + x 2 ; D = x1 + x 3 ; E = x 2 + x 3 + x 4
Nivelul logic 2: ( ) ( )(
F = x3 x 1 + x 2 ; G = x1 + x 3 x 2 + x 3 + x 4 )
Nivelul logic 1: (
f 2 = x 3 + x3 x1 + x 2 ) + (x
1 + x3 )(x 2 + x3 +x )4

Conf. dr. ing. Gloria CIUMBULEA 24


CAP.2__ FUNCŢII BOOLEENE

b. Organizarea pe nivele logice a schemei corespunzătoare funcţiei f2, în care una


dintre intrările circuitului de pe nivelul 1 este funcţia f1, determinată anterior:

x2
f1
x1 A D
& & & f2

&
x4 E
B C
& &

x3

4 3 2 1

şi sau şi sau

Expresiile parţiale ale funcţiei f2, calculate pe fiecare nivel logic sunt:

Nivelul logic 4: A = x1 ; B = x 4
Nivelul logic 3: C = x 2 + x 3 + x 4 ; D = x1 + x 3
Nivelul logic 2: ( )(
E = x1 + x 3 x 2 + x 3 + x 4 )
( )(
 f 2 = f 1 + x 3 + x1 + x 3 x 2 + x 3 + x 4 = )

Nivelul logic 1: ( ) ( )(
 = x 3 + x1 x 2 + x 3 + x1 + x 3 x 2 + x 3 + x 4 = )

( ) ( )(
 = x3 x 1 + x 2 + x 3 + x1 + x 3 x 2 + x 3 + x 4 )

Conf. dr. ing. Gloria CIUMBULEA 25


CAP.2__ FUNCŢII BOOLEENE

Exemplul 2:

Utilizând algoritmul lanţurilor de operatori NOR, se vor determina expresiile


booleene corespunzătoare funcţiile logice descrise de următoarea schemă logică:

x1 f1
≥1 ≥1 ≥1 ≥1

x2
≥1 ≥1 ≥1 f2

x3 x4
≥1

Determinarea expresiei booleene a funcţiei f1

Organizarea pe nivele logice a schemei pentru funcţia f1:

B2 E2 f1
≥1 ≥1 ≥1

x1 C2 F
≥1 ≥1
x2 A2
≥1
x3 D2
≥1

4 3 2 1

sau şi sau şi

Conf. dr. ing. Gloria CIUMBULEA 26


CAP.2__ FUNCŢII BOOLEENE

Expresiile parţiale ale funcţiei f1, calculate pe fiecare nivel logic sunt:

Nivelul logic 4: A = x2 + x2 = x2
Nivelul logic 3: B = x1 x 2 ; C = x1 x1 = x1 ; D = x 3 x 3 = x 3

Nivelul logic 2: E = x1 + x 1 x 2 + x 3 ; F = x 1 + x3

( )(
 f1 = x 2 x1 + x 1 x 2 + x 3 x1 + x3 =
Nivelul logic 1: 
)
( )( )
 = x1 x 2 + x 2 x 3 x 1 + x3 = x 1 x 2 x 3 + x1 x 2 x3

Determinarea expresiei booleene a funcţiei f2 (se aplică metoda „b”)

Organizarea pe nivele logice a schemei pentru funcţia f2:

f1 f2
≥1
x4

şi

Expresia booleană a funcţiei f2 este:

( ) ( )
f 2 = f 1 x 4 = x1 x 2 x 3 + x1 x 2 x3 x 4 = ( x1 + x2 + x3 ) x1 + x2 + x 3 x 4 =

( ( ))
= x2 + ( x1 + x3 ) x1 + x 3 x 4 = x2 x 4 + x1 x 3 x 4 + x1 x3 x 4

OBSERVAŢIE:

Şi în cazul lanţurilor de operatori NOR, funcţia f2 poate fi calculată cu oricare din


metodele aplicate la exemplul anterior, cu operatori NAND.

Conf. dr. ing. Gloria CIUMBULEA 27


CAP.2__ FUNCŢII BOOLEENE

2.6. SIMPLIFICAREA ŞI MINIMIZAREA


FUNCŢIILOR BOOLEENE

Minimizarea funcţiilor booleene ⇔ transformarea formelor canonice


şi a formelor simplificate în forme minime.

Forma minimă disjunctivă (fmd)/ conjunctivă (fmc) =


= forma disjunctivă/conjunctivă simplificată care conţine cel mai mic
număr de termeni, fiecare termen având cel mai mic număr de variabile.

Minimizarea se face având în vedere următoarele criterii:


• reducerea numărului de variabile;
• reducere numărului de termeni;
• reducerea pe ansamblu a variabilelor şi termenilor astfel încât suma
lor să fie minimă.

Conf. dr. ing. Gloria CIUMBULEA 28


CAP.2__ FUNCŢII BOOLEENE

2.6.1. Simplificarea funcţiilor booleene prin utilizarea directă a


axiomelor şi teoremelor algebrei booleene

• Metoda constă în aplicare axiomelor şi teoremelor algebrei booleene în scopul


eliminării succesive a variabilelor fictive
• Metoda prezintă dezavantajul că nu totdeauna se poate şti cu certitudine dacă
forma simplificată obţinută este chiar forma minimă

Exemple:

f 1 (x1, 2 ) = x1 x 2 + x 1 x 2 + x1 + x 2 + x1 x 2 =
( )
= x1 + x 1 x 2 + x 2 + x1 + x1 x 2 = 1 ⋅ x 2 + x 2 + x1 =
= x 2 + x 2 + x1 = x 2 + x1

(
f 2 (x1 ÷ 3 ) = ( x1 + x 2 ) x1 + x 2 + x3 = )
( )
= x1 + x 2 x 2 + x3 = x1 + x 2 x 2 + x 2 x3 = x1 + 0 + x 2 x3 = x1 + x 2 x3

f 3 (x1 ÷ 4 ) = x 2 x 4 + x1 x 2 x 4 + x1 x 2 x3 x 4 + x1 x 3 x 4 =
( ) ( )
= x 4 x 2 + x1 x 2 + x1 x 4 x 2 x3 + x 3 =
= x (x + x )(x + x ) + x x (x + x )(x + x ) =
4 2 1 2 2 1 4 2 3 3 3

= x (x + x )⋅ 1 + x x (x + x )⋅ 1 = x (x + x ) + x x (x + x ) =
2 1 3 2 1 3

= x ((x + x ) + x (x + x )) = x (x + x + x x + x x ) =
4 1 4 2 4 1 4 2

4 2 1 1 2 3 4 2 1 1 2 1 3

= x ((x + x )(x + x ) + (x + x )(x + x )) =


4 2 1 2 2 1 1 1 3

= x ((x + x )⋅ 1 + 1 ⋅ (x + x )) =
4 2 1 1 3

= x (x + x + x + x ) = x (x + 1 + x ) = x
4 2 1 1 3 4 2 3 4

Conf. dr. ing. Gloria CIUMBULEA 29


CAP.2__ FUNCŢII BOOLEENE

2.6.2. Simplificarea funcţiilor booleene prin metoda dublu dualităţii

• Metoda dublu dualităţii se bazează pe dualitatea existentă între funcţiile


logice ŞI şi SAU, precum şi între „1” şi „0”.

• Forma duală a unei funcţii se obţine făcând în funcţia iniţială următoarele


schimbări:
•↔+
1↔0

Algoritmul de aplicare practică a acestei metode este următorul:


1. se determină funcţia booleeană f din tabelul de adevăr, din diagrama Karnaugh sau
din schema logică
2. se simplifică cu ajutorul axiomelor şi teoremelor algebrei booleene funcţia
obţinută la pasul 1
3. se determină duala funcţiei simplificate rezultate la pasul 2, df
4. se simplifică cu ajutorul axiomelor şi teoremelor algebrei booleene forma duală a
funcţiei
5. se determină duala funcţiei simplificate obţinute la pasul 4, ddf
6. se simplifică cu ajutorul axiomelor şi teoremelor algebrei booleene forma dublu
duală a funcţiei, ddf
7. se verifică cu ajutorul tabelului de adevăr sau al diagramei Karnaugh dacă funcţia
obţinută la pasul 6 este echivalentă cu funcţia iniţială, f
8. se construieşte schema logică a funcţiei simplificate

Exemplul 1:
f = x1 x 4 ( x 2 + x3 ) + x 2 x3 ( x1 + x 4 ) + x 2 x 4
Expresiile duale ale fiecărui termen al funcţiei sunt:
t1 = x1 x 4 ( x 2 + x3 ) ⇒ dt1 = x1 + x 4 + x 2 x3
t 2 = x 2 x3 ( x1 + x 4 ) ⇒ dt 2 = x 2 + x3 + x1 x 4
t3 = x2 x4 ⇒ dt 3 = x 2 + x 4
Duala funcţiei f este:
df = ( x1 + x 4 + x 2 x3 )( x 2 + x3 + x1 x 4 )( x 2 + x 4 )

Conf. dr. ing. Gloria CIUMBULEA 30


CAP.2__ FUNCŢII BOOLEENE
Exemplul 2:
Se consideră funcţia descrisă de schema logică:

x1
x2 &
≥1

x3 &

f
x4 & ≥1 &

&
≥1

Expresia funcţiei logice f este:


f = ( x1 x 2 + x1 x3 )( x 2 + x3 x 4 )( x1 x 4 + x3 x 4 )
Funcţia simplificată cu ajutorul axiomelor şi teoremelor algebrei booleene este:
f s = x1 ( x 2 + x3 )( x 2 + x3 x 4 )x 4 ( x1 + x3 )
Duala funcţiei simplificate:
df s = x1 + x 2 x3 + x 2 ( x3 + x 4 ) + x 4 + x1 x3
Funcţia duală simplificată cu axiomele şi teoremele algebrei booleene:
(df s )s = x1 + x 2 x3 + x 2 x3 + x 2 x 4 + x 4 + x1 x3 = x1 + x 2 x3 + x 4
Duala funcţiei duale simplificate:
d (df s )s = x1 ( x 2 + x3 )x 4 = x1 x 4 ( x 2 + x3 )

Schema logică pentru funcţia f simplificată d(dfs)s, este:

x1
x2
x3 ≥1 & f
x4

Conf. dr. ing. Gloria CIUMBULEA 31

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