Sunteți pe pagina 1din 46

BAZELE PROGRAMRII CALCULATOARELOR 6

MINIMIZAREA FUNCIILOR LOGICE.


STRUCTURI LOGICE COMBINAIONALE.
1. Obiective
Prin parcurgerea acestei edine de laborator studenii vor fi capabili:

S implementeze o funcie logic descris n limbaj natural;


S observe efectul intrrii de comand a unei pori logice;
S minimizeze funcii logice folosind metoda Veitch-Karnaugh;
S defineasc principalele structuri logice combinaionale;
S explice modul de propagare al unui semnal printr-o schem cu pori logice.

Dac pn acum am tratat porile logice ca fiind pura implementare a unor funcii booleene
dependente de anumite variabile de intrare i nu am considerat posibilitatea ca variabilele de intrare
s poat fi de mai multe tipuri, ne vom concentra n continuare pe aceast idee. Variabilele
booleene pot fi de dou tipuri: date sau variabile de control. Variabilele de control vor restriciona
fluxul de date din circuitul logic. Mai jos este ilustrat un exemplu simplu, pentru un circuit cu o
variabil de control, o intrare de date i o ieire:

Specificaiile funcionale informale ale circuitului logic sunt: Dac variabila de control este
1, atunci ieirea circuitului copie intrarea, altfel ieirea va fi 0. Cu alte cuvinte, circuitul fie permite
propagarea semnalului nemodificat de la intrare pn la ieire, fie l blocheaz i totul depinde de
variabila de control. Implementarea circuitului este extrem de simpl deoarece acesta const ntro simpl poart AND:

85

BAZELE PROGRAMRII CALCULATOARELOR 6


Conceptul poate fi extins pentru proiectarea unui circuit extrem de folositor. Acesta are
dou intrri de date: A i B, o intrare de control C i o ieire R. Specificaiile de proiectare solicit
urmtoarele: Dac intrarea de control este 0, atunci ieirea copie intrarea A, altfel ieirea copie
intrarea B.. n alt ordine de idei funcionarea este similar unui comutator ntre cele dou linii
de date. Pornind de la specificaii, construim tabelul de adevr:
C
0
0
0
0
1
1
1
1

A
0
0
1
1
0
0
1
1

B
0
1
0
1
0
1
0
1

R
0
0
1
1
0
1
0
1

Am observat n cadrul primului exemplu c o poart logic AND poate fi folosit pentru a
bloca propagarea unui semnal i putem merge pe aceast idee n selecia intrrii de date prin
inversarea intrrii de control astfel nct atunci cnd C este 0 se va propaga semnalul de la intrarea
A, iar semnalul de la intrarea B va fi blocat i invers. Putem implementa circuitul folosind doua
pori AND i un invertor:

Cazul 1. Dac A=1, B=1, C=0, atunci RA=0 i RB=1

Cazul 2. Dac A=1, B=1, C=1, atunci RA=1 i RB=0

n acest caz, circuitul obinut va avea dou ieiri i . Pentru a obine un circuit cu o
singur ieire R ne vom folosi de elementul neutru la adunare din algebra boolean + 0 = i
vom introduce cele dou ieiri ntr-o poart OR, astfel:

86

BAZELE PROGRAMRII CALCULATOARELOR 6

Dac A=1, B=1, C=1, atunci RA=1 i RB=0.

Dac A=1, B=1, C=0, atunci RA=0 i RB=1.

Circuitul obinut poart denumirea de multiplexor i vom vedea mai trziu c este unul
dintre cele mai folositoare circuite logice.

87

BAZELE PROGRAMRII CALCULATOARELOR 6


S considerm schema logic din figura de mai sus. Funcia reprezentat prin aceast
schem are tabelul de adevr:

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

Inspectnd tabelul de adevr i schema logic putem obine uor formula funciei reprezentate:
= + + + +

Astfel, putem construi schema logic echivalent folosind 5 pori AND cu 3 intrri i o poart OR
cu 5 intrri. Oricum, putem reprezenta schema logic ntr-o form generalizat care s conin
toate cele 8 pori AND cu 3 intrri:

88

BAZELE PROGRAMRII CALCULATOARELOR 6

89

BAZELE PROGRAMRII CALCULATOARELOR 6


1. Intrri de comand pentru circuitele logice elementare

1.1.

Poarta SAU

Dac semnalul de comand este 1,


Atunci ieirea este forat pe valoarea 1
Altfel ieirea copie intrarea de date.
Notaii:
- Intrarea de comand (masca) x=0/1;
- Intrarea de date b;
Tabelul de adevr:

0
1

y=b
OR

x=0/1
masca

90

b/1

BAZELE PROGRAMRII CALCULATOARELOR 6


1.2.

Poarta I

Dac semnalul de comand este 1,


Atunci ieirea copie intrarea de date
Altfel ieirea este forat pe valoarea 0.
Notaii:
- Intrarea de comand (masca) x=0/1;
- Intrarea de date b;

y=b
OR
AND

Tabelul de adevr:

0
1

x=0/1
masca

91

0/b

BAZELE PROGRAMRII CALCULATOARELOR 6


1.3.

Poarta XOR

Dac semnalul de comand este 0,


Atunci ieirea copie intrarea de date
Altfel ieirea copie intrarea de date inversat.
Notaii:
- Intrarea de comand (masca)
x=0/1;
- Intrarea de date b;

y=b

Tabelul de adevr:

0
1

b/NOTb
XOR

x=0/1
masca

92

BAZELE PROGRAMRII CALCULATOARELOR 6


1.4.

Invertorul cu trei stri

Dac semnalul de comand este 0,


Atunci ieirea copie intrarea de date
Altfel ieirea copie intrarea de date inversat.
Este folosit pentru a conecta ieirile mai multor circuite electrice la o magistral evitnd apariia
unor scurt-circuite.
Notaii:
- Intrarea de comand (masca)
x=0/1;
- Intrarea de date b;
- HZ = deconectat;

y=b

Tabelul de adevr:

x=0/1


0
1

93

HZ/b

BAZELE PROGRAMRII CALCULATOARELOR 6


2. Metoda Veitch-Karnaugh
Minimizarea unei funcii logice presupune obinerea unei expresii cu cost minim pentru un
numr de nivele dat.
O funcie logic poate fi minimizat prin:
1) Aplicarea proprietilor i teoremele algebrei logice;
2) Metode sistematice (metoda Veitch-Karnaugh sau metoda Quine McCluskey).
Un sir de variabile poate fi partiionat n dou grupe astfel:
1 2 1 0
1
{

cu = {

2
+1
2

Se vor parcurge urmtoarele etape:


1) Se construiete o matrice ce conine un numr de linii i coloane determinat de partiia de
variabil fixat: 2 , 2 , unde reprezint numrul de elemente din primul termen al
partiiei, iar numrul de elemente din al doilea termen al partiiei;
2) Pentru ordonarea liniilor i a coloanelor se folosete codul Gray, care are proprietatea de
adiacen. Adunnd dou conjuncii sau nmulind dou disjuncii adiacente dispare
termenul care difer;
3) Se completeaz matricea cu valori de 1 (conjuncii) sau de 0 (disjuncii) sau (indiferent)
ale funciei n celulele matricei, corespunztor combinaiilor variabilelor;
4) Se grupeaz celulele vecine cu acelai coninut n grupe ct mai mari, formate dintr-un
numr de elemente egal cu o putere a lui 2 (1,2,4 sau 8). Celulele laterale care sunt simetrice
fa de o ax median imaginar sunt vecine;
5) Fiecare grup formeaz un termen minimizat, termen ce nu conine variabilele ce-i
schimb semnul i astfel dispar.
Observaii!

Un element poate face parte din mai multe grupe;


Fiecare grup trebuie s conin cel puin un element nou fa de restul grupelor;
Orice element aparine mcar unei grupe, fie aceasta format chiar dintr-un singur element;
Variabilele independente se scriu conform regulilor de la formele canonice.

94

BAZELE PROGRAMRII CALCULATOARELOR 6


2.1.

Codificarea Gray

Am utilizat n lucrrile precedente reprezentarea funciilor logice n limbaj natural, prin


tabel de adevr, prin realizant, prin schem logic. Diagrama Veitch-Karnaugh reprezint o alt
form de reprezentare a unei funcii logice. n cazul unei funcii logice de variabile, diagrama
V-K va fi alctuit din 2 csue. Dispunerea csuelor n tabela V-K se va face astfel nct
gruprile vecine s difere printr-un singur bit. Codificarea csuelor n tabel att pe orizontal ct
i pe vertical se va face n cod Gray, deoarece acesta are proprietatea c dou coduri succesive
difer printr-un singur bit.
Cod binar
00
01
10
11

Cod Gray
00
01
11
10

Codul Gray pe 2 bii

Cod binar
000
001
010
011
100
101
110
111

Cod Gray
000
001
011
010
110
111
101
100

Codul Gray pe 3 bii

Cod binar
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

Cod Gray
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
1011
1001
1000

Codul Gray pe 4 bii

Numrul de vecini ai unei csue este egal cu numrul variabilelor de intrare. Csuele sunt
considerate vecine doar pe orizontal i vertical. Nu sunt vecine dou csue pe diagonal.
Pentru a stabili toate csuele vecine, diagrama V-K trebuie privit rotit n jurul axelor vertical
i orizontal dar i pliat.

95

BAZELE PROGRAMRII CALCULATOARELOR 6


Pentru o funcie definit cu patru variabile de intrare 3 , 2 , 1 , 0 , tabela V-K va avea
urmtoarea form i coninutul conform cu valorile funciei plasate pe poziiile indicate n colul
fiecrei csue.



00

01

11

10

00

01

11

10

() = ()

() = ()

() = ()

() = ()

() = ()

() = ()

() = ()

() = ()

12

13

15

14

() = () () = () () = () () = ()

() = ()

() = ()

11

10

() = () () = ()

Pentru o funcie definit cu trei variabile de intrare 2 , 1 , 0 , tabela V-K va avea


urmtoarea form i coninutul conform cu valorile funciei plasate pe poziiile indicate n colul
fiecrei csue.


00
01
11
10

1
0

() = ()

() = ()

() = ()

() = ()

() = ()

() = ()

() = ()

() = ()

96

BAZELE PROGRAMRII CALCULATOARELOR 6


2.2.

Transcrierea din tabelul de adevr n tabela V-K


0
0
I
00
0
0
0
0
II 01
0
0
1
1
III 10
1
1
1
1
IV 11
1
1

0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

0
0
1
0
1
1
0
1
0
0
1
0
0
1
1
0

97


00 01 11 10

I 00
II 01
IV 11
III 10

0
1
0
0

0
1
1
0

0
1
0
0

1
0
1
1

BAZELE PROGRAMRII CALCULATOARELOR 6


2.3. Modul de formare al gruprilor n tabela V-K i regula de
reducere a variabilelor de intrare din tabela V-K
2.3.1. Grupare pe elemente de 1
Tabela conine o singur grupare care conine Tabela conine dou grupri, fiecare coninnd
toate cele patru coluri n care se regsete cte o coloan cu 4 ptrele negre.
un ptrel negru.


00 01


00
01
11
10

11 10

00 01 11 10

00
01
11
10

Variabilele de intrare care variaz n cadrul gruprii sunt haurate cu rou i se reduc.
Variabilele de intrare care sunt evaluate cu 1 logic n cadrul gruprii nu vor fi negate, iar
cele care sunt evaluate cu 0 vor fi negate. Variabilele de intrare vor fi legate prin I logic
(.), iar gruprile vor fi legate prin SAU logic (+).


0 0 0 0
1 0 1 0

0
0
1
1

0
=
2
0


00
01
11
10


0 1 1
1
1
0


11 10

0
0
1
1

0
1 0
=
1
0 + 1 0

01
00


0 0 0
1
1
0

00 01 11 10

00
01
11
10

98

BAZELE PROGRAMRII CALCULATOARELOR 6



0 0 0 1
0 1 1 1
1 1
1 0


0 1 0 0
0 1
1 1
1 0

= 0

=
3 2

Tabela conine dou grupri de cte un Tabela conine o grupare format din cele 4
element, localizate n cele dou coluri ptrele negre.
diagonal opuse.

10
00 01 11


00
01
11
10

00 01 11 10

00
01
11
10


1 0 0 0


0 0 1 0


0 1 0 1
1 1 1 1

= 3
2
1
0 +
3
2 1
0

= 2 0

Tabela conine o grupare format din cele 4 Tabela conine o grupare format din cele 4
ptrele negre localizate pe vertical pe ptrele negre localizate pe orizontal pe
marginile tabelei.
marginile tabelei.


00 01 11 10


00
01
11
10

00 01 11 10

00
01
11
10

99

BAZELE PROGRAMRII CALCULATOARELOR 6



0 1 0 0
1 1 1 0


0 0 0 1
1 0 1 1

= 2
0

=
2 0

2.3.2. Grupare pe elemente de 0


Tabela conine 3 grupri: dou dintre ele au n componen un singur element marcat printr-un
ptrel negru, iar cea de-a treia are patru elemente.

10
00 01 11


00
01
11
10

Variabilele de intrare care variaz n cadrul gruprii sunt marcate cu rou i se reduc.
Variabilele de intrare care sunt evaluate cu 1 logic n cadrul gruprii vor fi negate, iar cele
care sunt evaluate cu 0 nu vor fi negate. Variabilele de intrare vor fi legate prin SAU logic
(+), iar gruprile vor fi legate prin I logic (.).


1 0 0 0


0 1 0 1
1 1 1 1


0 0 1 0

= (
3 + 2 + 1 + 0 ) (
2 + 0 ) (3 + 2 +
1 + 0 )

100

BAZELE PROGRAMRII CALCULATOARELOR 6


3. Structuri logice combinaionale
Interconectarea circuitelor digitale este realizat prin intermediul funciilor complementare
de demultiplexare i de multiplexare.

3.1.

Multiplexorul

Multiplexorul este o structur logic combinaional care selecteaz n funcie de codul


binar primit pe cele intrri de selecie, una dintre cele 2 intrri de date i permite propagarea
semnalului de la intrarea respectiv pn la unica ieire. Multiplexorul implementeaz n hardware
funcia de decizie, similar cu dacaatuncialtfel pentru = 2 sau swicthcase pentru
> 2.

I1
I0

MUX

I3
I2
I1
I0

2:1

4:1

0
1
0
1

1 0 3 2 1 0
0 0
0 0 - - 1 1
0
0
0 1 - 1
1
0
0
1 0 - 1
1
0
0
1 1
- - 1
1

MUX

8:1

S2 S1 S 0

S1 S 0

S0

0 1 0
0
0 1
0
1
1

MUX

I7
I6
I5
I4
I3
I2
I1
I0

2 1 0 7 6 5 4 3 2 1 0
0
0 0 0 - - - - - - 1
0
0 0 1 - - - - - 1
0
0 1 0 - - - - - 1
0
0 1 1 - - - - - 1
0
1 0 0 - - - - - 1
0
1 0 1 - - - - - 1
0
1 1 0 - - - - - 1
0
1 1 1
- - - - - - 1

101

0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1

BAZELE PROGRAMRII CALCULATOARELOR 6


Ecuaiile funciilor logice implementate de MUX sunt:

MUX 2:1
MUX 4:1
MUX 8:1

= 0 1 + 0 0 ;
= 1 0 3 + 1 0 2 + 1 0 1 + 1 0 0;
= 2 1 0 7 + 2 1 0 6 + 2 1 0 5 + 2 1 0 4 + 2 1 0 3 + 2 1 0 2 +
2 1 0 1 + 2 1 0 0 ;

Circuitele MUX pot avea o intrare de validare. Funcionarea este neschimbat dac intrarea
de validare este activat. Dac intrarea de validare este inactiv ieirea multiplexorului este egal
cu 0 indiferent de valorile intrrilor de date (multiplexorul nu transmite la ieire nicio valoare
primit la intrare). n acest caz, ecuaiile se modific astfel:

MUX 2:1
MUX 4:1
MUX 8:1

= (0 1 + 0 0 );
= (1 0 3 + 1 0 2 + 1 0 1 + 1 0 0 );
= (2 1 0 7 + 2 1 0 6 + 2 1 0 5 + 2 1 0 4 + 2 1 0 3 + 2 1 0 2 +
2 1 0 1 + 2 1 0 0 );

Structuri logice care implementeaz multiplexoare:

MUX 2:1

MUX 2:1 cu validare

102

BAZELE PROGRAMRII CALCULATOARELOR 6


3.2.

Demultiplexorul

Demultiplexorul este o structur logic combinaional care selecteaz n funcie de codul binar
primit pe cele intrri de selecie una dintre cele 2 ieiri prin care va permite propagarea
semnalului de la unica intrare de date. Circuitele DMUX 1: 2 se comport similar cu
decodificatoarele pe n bii cu intrare de validare. Demultiplexorul implementeaz o structur de
tipul dac selecia este 0, atunci intrarea este conectat la ieirea 0 ; dac selecia este 1, atunci
intrarea este conectat la ieirea 1 n cazul = 2.

DMUX
1:4

Y3
Y2
Y1
Y0

S1 S 0

3.3.

I
0
1
0
1
0
1
0 0
1 1

0
1

0
1

3 = 1 0
2 = 1 0
1 =
1 0
0 = 1 0

0
1

Codificatorul prioritar

Codificatorul prioritar de 2 bii este un circuit logic combinaional cu 2 intrri i ieiri. Ieirea
copie codul binar al celei mai prioritare intrri active.

I7 I6 I5 I4 I3 I2 I1 I0

CDP 8:3

1
0
0
0
0
0
0
0

1
0
0
0
0
0
0

Y2 Y1 Y0

103

1
0
0
0
0
0

1
0
0
0
0

1
0
0
0

1
0
0

1
0

1
1
1
1
0
0
0
0

1
1
0
0
1
1
0
0

1
0
1
0
1
0
1
0

BAZELE PROGRAMRII CALCULATOARELOR 6

3.4.

Decodificatorul

Decodificatorul este o structur logic combinaional cu n intrri de selecie i 2 ieiri.


Va fi setat pe 1 logic numai ieirea al crei identificator binar este determinat de ctre cele n
intrri. Restul ieirilor vor avea valoarea 0 logic.

0
0
0
0
1
1
1
1

I2 I1 I0

DCD 3:8

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

0
0
0
0
0
0
0
1

0
0
0
0
0
0
1
0

0
0
0
0
0
1
0
0

0
0
0
0
1
0
0
0

0
0
0
1
0
0
0
0

0
0
1
0
0
0
0
0

0
1
0
0
0
0
0
0

1
0
0
0
0
0
0
0

Y7 Y6 Y5 Y4Y3 Y2 Y1 Y0

3.5.

Sumatorul

Sumatorul este un circuit logic combinaional cu mai multe ieiri care adun dou intrri
se date cu una de transport i genereaz o ieire de tip sum i una de tip transport.
Se dau dou numere binare = 1 0 i = 1 0. Sumarea celor dou numere
se face simultan n toate rangurile. Pentru rangul , =
0, 1 va fi necesar un circuit
combinaional similar cu cel din figura de mai jos:

SUMATOR

104

k-1

BAZELE PROGRAMRII CALCULATOARELOR 6


Sumatorul pentru rangul k
unde s-a notat cu 1 transportul din rangul k-1, iar transportul din rangul k. Tabelul de adevr
al sumatorului pe un rang k este prezentat mai jos

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


1 00 01 11 10
0
0 0 1 0
1
0 1 1 1

1

00
01
11
10

00 01 11 10
0
1
1
0
0 1

1 0 0

= 1 +
( + + 1 )

= + 1 ( + )

3.6.

0
0
0
1
0
1
1
1

Semisumatorul

Fie circuitul cu urmtoarea schem bloc:

SEMISUMATOR

105

BAZELE PROGRAMRII CALCULATOARELOR 6


i urmtorul tabel de adevr:
a
0
0
1
1

b
0
1
0
1

s
0
1
1
0

c
0
0
0
1

Sintetiznd semisumatorul rezult


=
=

Implementarea unui sumator complet folosind semisumatoare este redat n figura:

x
y

SEMISUMATOR

SEMISUMATOR
k-1

= 1
= + 1 ( + )

106

BAZELE PROGRAMRII CALCULATOARELOR 6


4. Aplicaii propuse:
4.1.Se dau numerele:
= 7 6 5 4 3 2 1 0
= 7 6 5 4 3 2 1 0
S se calculeze C cu ajutorul operatorilor logici i a mtilor.
a)
b)
c)

=
7
6 010
5
3 2
=
5
4 3 2 1 2 01
= 101 0 7 6 5 4

d)
e)

a)

b)

c)

107

= 11117 6
5
4
= 007
6
5 4 11

BAZELE PROGRAMRII CALCULATOARELOR 6

d)

e)

4.2.Se dau tabelele Veitch-Karnaugh. S se evidenieze gruprile pe 0 i pe 1 n tabele:

108

BAZELE PROGRAMRII CALCULATOARELOR 6


a)

b)

c)

d)

e)



00
01
11
10


00
01
11
10


00
01
11
10


00
01
11
10


00
01
11
10

00 01 11 10
0 0 0 0
0 1 1 0
0 1 1 0
0 0 0 0
00 01 11 10
0 1 0 1
0 1 0 1
0 1 0 1
0 1 0 1
00 01 11 10
0 1 1 0
0 0 0 0
0 1 1 0
0 1 1 0
00 01 11 10
0 0
1 0
0 0
1 0
0 1
1
0
0
1

0
0
0
0

f)

g)

h)

i)

0
1
0
1
j)

1
1
1
1



00
01
11
10


00
01
11
10


00
01
11
10


00
01
11
10


00
01
11
10

00 01 11 10
0 1 1 0
0 1 1 0
0 1 1 0
0 1 1 0
00 01 11 10
1 0 0 1
0 1 1 0
0 0 0 0
1 0 0 1
00 01 11 10
1 0
0 1
0 0
0 0
0 1
0
0
0
0
0

0
1
1
0
1

1
0
1
0

0
1
0
1

0
0
1
0

4.3.S se minimizeze funciile definite prin tabelele de la problema 4.2.


a)

109

0
0
0
1

BAZELE PROGRAMRII CALCULATOARELOR 6


b)

c)

d)

e)

110

BAZELE PROGRAMRII CALCULATOARELOR 6

f)

g)

h)

111

BAZELE PROGRAMRII CALCULATOARELOR 6

i)

j)

112

BAZELE PROGRAMRII CALCULATOARELOR 6


4.4. S se minimizeze funciile logice folosind metoda Veitch-Karnaugh:
a)
b)
c)
d)
e)
f)
g)
h)
i)
j)
k)
l)
m)
n)
o)
p)

(3 , 2 , 1 , 0 ) = 1 (1,2,6,8,10,11,15);
(2 , 1 , 0 ) = 1 (1,3,4);
(3 , 2 , 1 , 0 ) = 1 (4,5,8,9,10,12,13);
(3 , 2 , 1 , 0 ) = 1 (0,1,2,4) + (3,5,10);
(3 , 2 , 1 , 0 ) = 0 (1,3,4,6,9,11,12,14);
(3 , 2 , 1 , 0 ) = 0 (2,3,4,5,8,9,14,15);
(3 , 2 , 1 , 0 ) = 1 (2,3,6,7,8,9,12,13);
(3 , 2 , 1 , 0 ) = 0 (0,1,4,5,10,11,14,15);
(3 , 2 , 1 , 0 ) = 1 (0,4,8,12);
(3 , 2 , 1 , 0 ) = 1 (3,7,11,15);
(3 , 2 , 1 , 0 ) = 0 (4,5,6,7,8,9,10,11);
(3 , 2 , 1 , 0 ) = 1 (0,2,7,9) + (3,8,10);
(3 , 2 , 1 , 0 ) = 1 (1,4,11,14) + (3,6,9,12);
(3 , 2 , 1 , 0 ) = 1 (2,4,7,8,13,14) + (0,5,6,10,12,15).
(2 , 1 , 0 ) = 1 (1,3,4);
(2 , 1 , 0 ) = 0 (0,1,2,3).
a) (3 , 2 , 1 , 0 ) = 1 (1,2,6,8,10,11,15);


00
01
11
10
Se obin gruprile
=


;
=
;

= ;
=
.

00

01

11

10

0
0
0
1

1
0
0
0

0
0
1
1

1
1
0
1

rezultnd c = 1 + 2 + 3 + 4 =


+

+ +
.

b) (2 , 1 , 0 ) = 1 (1,3,4);

113

BAZELE PROGRAMRII CALCULATOARELOR 6

c) (3 , 2 , 1 , 0 ) = 1 (4,5,8,9,10,12,13);

d) (3 , 2 , 1 , 0 ) = 1 (0,1,2,4) + (3,5,10);

114

BAZELE PROGRAMRII CALCULATOARELOR 6

e) (3 , 2 , 1 , 0 ) = 0 (1,3,4,6,9,11,12,14);

f) (3 , 2 , 1 , 0 ) = 0 (2,3,4,5,8,9,14,15);

115

BAZELE PROGRAMRII CALCULATOARELOR 6

g) (3 , 2 , 1 , 0 ) = 1 (2,3,6,7,8,9,12,13);

h) (3 , 2 , 1 , 0 ) = 0 (0,1,4,5,10,11,14,15);

116

BAZELE PROGRAMRII CALCULATOARELOR 6

i) (3 , 2 , 1 , 0 ) = 1 (0,4,8,12);

j) (3 , 2 , 1 , 0 ) = 1 (3,7,11,15);

117

BAZELE PROGRAMRII CALCULATOARELOR 6

k) (3 , 2 , 1 , 0 ) = 0 (4,5,6,7,8,9,10,11);

l) (3 , 2 , 1 , 0 ) = 1 (0,2,7,9) + (3,8,10);

118

BAZELE PROGRAMRII CALCULATOARELOR 6

m) (3 , 2 , 1 , 0 ) = 1 (1,4,11,14) + (3,6,9,12);

n) (3 , 2 , 1 , 0 ) = 1 (2,4,7,8,13,14) + (0,5,6,10,12,15);

119

BAZELE PROGRAMRII CALCULATOARELOR 6

o) (2 , 1 , 0 ) = 1 (1,3,4);

p) (2 , 1 , 0 ) = 0 (0,1,2,3).

120

BAZELE PROGRAMRII CALCULATOARELOR 6

4.5.S se implementeze cu pori logice formulele obinute dup minimizarea funciilor de


la problema 4.4.
)(3 , 2 , 1 , 0 ) = 1 (1,2,6,8,10,11,15);

b) (2 , 1 , 0 ) = 1 (1,3,4);

121

BAZELE PROGRAMRII CALCULATOARELOR 6


c) (3 , 2 , 1 , 0 ) = 1 (4,5,8,9,10,12,13);

d) (3 , 2 , 1 , 0 ) = 1 (0,1,2,4) + (3,5,10);

e) (3 , 2 , 1 , 0 ) = 0 (1,3,4,6,9,11,12,14);

122

BAZELE PROGRAMRII CALCULATOARELOR 6


f) (3 , 2 , 1 , 0 ) = 0 (2,3,4,5,8,9,14,15);

g) (3 , 2 , 1 , 0 ) = 1 (2,3,6,7,8,9,12,13);

h) (3 , 2 , 1 , 0 ) = 0 (0,1,4,5,10,11,14,15);

123

BAZELE PROGRAMRII CALCULATOARELOR 6


i)

(3 , 2 , 1 , 0 ) = 1 (0,4,8,12);

j) (3 , 2 , 1 , 0 ) = 1 (3,7,11,15);

k) (3 , 2 , 1 , 0 ) = 0 (4,5,6,7,8,9,10,11);

124

BAZELE PROGRAMRII CALCULATOARELOR 6


l) (3 , 2 , 1 , 0 ) = 1 (0,2,7,9) + (3,8,10);

m) (3 , 2 , 1 , 0 ) = 1 (1,4,11,14) + (3,6,9,12);

n) (3 , 2 , 1 , 0 ) = 1 (2,4,7,8,13,14) + (0,5,6,10,12,15);

125

BAZELE PROGRAMRII CALCULATOARELOR 6


o) (2 , 1 , 0 ) = 1 (1,3,4);

) (2 , 1 , 0 ) = 0 (0,1,2,3).

126

BAZELE PROGRAMRII CALCULATOARELOR 6


4.6. S se analizeze funcionarea schemei urmtoare i s se gseasc blocul logic
combinaional standard cu acelai rol:
a)

b)
a

DECODOR
3:8

DECODOR
2:4

7 6 5 4 3 2 1 0

x
y
x

a)

127

BAZELE PROGRAMRII CALCULATOARELOR 6


b)

4.7.S se explice de ce schema urmtoare nu produce scurt-circuit pe ieiri, apoi s se


determine funcia logic implementat i s se gseasc blocul logic combinaional
echivalent ca funcionare:
a)

b)
a

a
y

b
y

x0
x1

128

BAZELE PROGRAMRII CALCULATOARELOR 6

a)

b)

129

BAZELE PROGRAMRII CALCULATOARELOR 6


4.8. S se proiecteze folosind pori logice un sistem de alarm. Se consider c alarma va
fi activat n unul din cazurile:
1) Este acionat un buton de validare i ua este deschis; sau
2) Este acionat butonul de validare, ua este nchis, fereastra este deschis i este
trecut de ora 22:00.
Indicaii
Sunt necesare patru variabile de intrare. Se
noteaz variabilele de intrare n felul
urmtor: x butonul de validare; y ua; z
fereastra i w dac este trecut de ora
22:00.

x
y
z

A
ALARMA

5. Referine bibliografice
[1] Manta V., Ungureanu F., Introducere n tiina sistemelor i a calculatoarelor, Volumul I,
Editura Gh.Asachi, Iai, 2002.

130

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