Sunteți pe pagina 1din 30

Circuite integrate digitale

Circuite cu porți logice

Prof. dr. ing. Sorin Hintea


Departamentul de Bazele Electronicii
Functii si porti logice fundamentale

Tabelul de adevăr pentru funcţiile logice fundamentale


a
t
a b a ab ab ab ab ab
b
t

0 0 1 0 1 0 1 0 ā
t
0 1 1 0 1 1 0 1
ab
1 0 0 0 1 1 0 1 t

a⋅b
1 1 0 1 0 1 0 0 t

NU ŞI ŞI-NU a+b
t

a+b
t

SAU SAU-NU SAU-EX ab


t

Diagrama de semnale pentru porţile


Simboluri logice pentru porţile fundamentale logice fundamentale

Circuite integrate digitale – Coduri binare si funcții logice 2


Funcția votului majoritar
 Implementarea funcției votului majoritar

abc f f  abc  ab c  abc  abc  P3  P5  P6  P7

000 0
001 0
010 0
011 1
100 0
101 1
110 1
111 1

Circuite integrate digitale – Circuite cu porți logice 3


Funcția votului majoritar
 funcția votului majoritar – minimizarea cu diagrama Karnaugh

f  abc  ab c  abc  abc  P3  P5  P6  P7

DeM
f  ab  bc  ac  ab  bc  ac
 Doua moduri de implementare ale funcției votului majoritar, inainte si
dupa aplicarea formulei De Morgan

Circuite integrate digitale – Circuite cu porți logice 4


Funcția votului majoritar

 Care este solutia cea mai eficienta ?

 In general se doreste ca un circuit sa fie implementat cu cat mai putine tranzistoare si sa contina cat mai
putine trasee de legatura
 Astfel, este evident ca un circuit este mai avantajos cu cat are un numar mai mic de porti si care au mai
putine intrari

 Din punct de vedere al minimizarii si al numarului de porti ultimele doua implementari par la fel de
complexe si mult mai eficiente decat prima
 Daca tinem cont de numarul de tranzistoare care compun structura portilor, concluzia poate fi diferita

Circuite integrate digitale – Circuite cu porți logice 5


Funcția votului majoritar
 Cum se calculeaza numarul de tranzistoare?

 In tehnologia CMOS este nevoie de 2 tranzistoare pentru un inversor, de 4 pentru o poarta SI-NU , respectiv
SAU – NU cu 2 intrari

Exemplu de proiectare – porti cu 2 intrari

Inversor NAND2 NOR2

VDD VDD

Mp1 Mp2
VDD a Mp1

Mp
f b Mp2
Vin Vout
a Mn1 f
Mn

b Mn2
Mn1 Mn2

Circuite integrate digitale – Circuite cu porți logice 6


Funcția votului majoritar
 Cum se calculeaza numarul de tranzistoare pentru portile cu mai multe intrari?

 In tehnologia CMOS este nevoie de 2*n tranzistoare pentru o poarta SI-NU , respectiv SAU – NU cu n
intrari

Exemplu de proiectare – porti cu 3 intrari

Inversor VDD NAND3 VDD


NOR3
Mp1 Mp2 Mp3

a Mp1

VDD
b Mp2
f
Mp
a Mn1
Vin Vout c Mp3

f
Mn b Mn2

c Mn3

Mn1 Mn2 Mn3

Circuite integrate digitale – Circuite cu porți logice 7


Funcția votului majoritar
 Cum se calculeaza numarul de tranzistoare pentru portile cu mai multe intrari care implementeaza functia
directa?

 In tehnologia CMOS este nevoie de 2*n+2 tranzistoare pentru o poarta SI-NU , respectiv SAU – NU cu n
intrari ( 2n pentru poarta SI-NU (SAU-NU) si inca 2 tranzistoare pentru inversor

 Implementarea functiei in logica directa necesita conectarea unui inversor la iesirea


functiei negate

AND2 OR2
VDD VDD

f = ab b

a f = a+b

Circuite integrate digitale – Circuite cu porți logice 8


Funcția votului majoritar
 Cum se calculeaza numarul de tranzistoare?

Cazul a) 3inv+4 porti SI cu 3i + 1 poarta SAU cu 4 i= 3*2T+4*8T+10T=48T

Cazul b) 3 porti SI cu 2i + 1 poarta SAU cu 3 i= 3*6T+8T=26T

Cazul c) 3 porti SI-NU cu 2i + 1 poarta SI-NU cu 3 i= 3*4T+6T=18T


 Concluzie: analizand si tehnologia de implemetare ( CMOS) rezulta ca ultima solutie este cea optima, avand
numarul minim de tranzistoare in schema

 Aceasta rezulta folosind doua principii de baza: atat simplificarea expresiilor logice cat si folosirea functiilor
negate

a) Circuitul rezultat din forma canonica; b) Schema dup aminimizare; c) Schema dupa aplicarea formulei De
Morgan

Circuite integrate digitale – Circuite cu porți logice 9


Diagrame Karnaugh
 simplificarea prin metode algebrice a expresiilor algebrice nu asigura
atingerea formei minime a funcțiilor logice
 de asemenea, poate sa dureze prea mult, mai ales daca expresiile sunt mai
complicate

 Diagrame Karnaugh asigura obtinerea formei minime a funcțiilor logice →


implementare cu număr minim de porți elementare

Circuite integrate digitale – Circuite cu porți logice 10


Diagrame Karnaugh

Diagrame Karnaugh → reguli de minimizare


 se grupeaza termenii egali cu ‘1’ alaturati in grupuri de dimensiune egala cu o putere
a lui 2 (16, 8, 4, 2 sau 1), alte dimensiuni ale grupurilor nefiind permise.
 Scopul este includerea tuturor valorilor de 1 in cel putin un grup. Procedura de
formare a grupurilor se incheie atunci cand nu a mai ramas nici un ‘1’ negrupat;
 la formarea grupurilor pot considerate adiacente si elementele de pe marginile sau
colturile opuse ale diagramei;
 fiecarui grup ii va corespunde un termen de tip produs, format din variabilele care isi
pastreaza valoarea pentru toate elementele grupului. Daca variabila are valoarea ‘1’,
se trece in expresia produsului direct, iar daca are valoarea este ‘0’ atunci se trece
varianila negata;
 dupa identicarea termenilor de tip produs corespunzatoare tuturor grupurilor expresia
finala a functiei se obtine printr-o operatie de adunare (SAU logic) intre toate
produsele obtinute;

Circuite integrate digitale – Circuite cu porți logice 11


Diagrame Karnaugh
 Exemple de minimizare cu diagrame Karnaugh

f  P0  P1  P2  P3  P4  P5  P8  P9  P10  P11  P15


g  P0  P3  P4  P5  P7  P8  P10  P11  P12  P13  P15

´ 𝑎
𝑓  =𝑏+ ´ 𝑐´ +𝑎𝑐𝑑 g  bc  cd  cd  abc

Circuite integrate digitale – Circuite cu porți logice 12


Diagrame Karnaugh
 Exemple de minimizare cu diagrame Karnaugh

h  P0  P1  P2  P4  P5  P6  P7  P8  P10  P14  P15


k  P0  P1  P2  P3  P4  P9  P10  P11

h  x z  yz  y t k  x y  x z t  yt  yz

Circuite integrate digitale – Circuite cu porți logice 13


Exemplu de proiectare – comparator pentru cuvinte de 1 bit

 Tabelul de adevar

f1 f2 f3 a b
a b
a>b a=b a<b
0 0 0 1 0
0 1 0 0 1 f1
1 0 1 0 0
1 1 0 1 0
f2

  Pornind de la tabelul de adevar rezulta cele trei functii f3


generate pe iesiri
 

si

Circuite integrate digitale – Circuite cu porți logice 14


Exemplu de proiectare – comparator pentru cuvinte de 2 biti

A B f1 f2 f3
Exemplu. Proiectarea unui comparator pentru a1 a0 b1 b0 A>B A=B A<B
cuvinte de 2 biti. 0 0 0 0 0 1 0
0 0 0 1 0 0 1
 Se compara cuvintele A=[a1a0] si B=[b1b0] 0 0 1 0 0 0 1
0 0 1 1 0 0 1
 Circuitul are 3 iesiri care semnalizeaza daca 0 1 0 0 1 0 0
cele doua cuvinte sunt egale (f2=1) sau in 0 1 0 1 0 1 0
0 1 1 0 0 0 1
caz contrar, care din ele este mai mare ( f 1=1 0 1 1 1 0 0 1
daca A>B sau f3=1 daca A<B) 1 0 0 0 1 0 0
1 0 0 1 1 0 0
 Intrarile sunt biti cuvintelor care se compara 1 0 1 0 0 1 0
1 0 1 1 0 0 1
 Tabelul de adevar defineste cele trei functii 1 1 0 0 1 0 0
1 1 0 1 1 0 0
de 4 variabile 1 1 1 0 1 0 0
1 1 1 1 0 1 0

Circuite integrate digitale – Circuite cu porți logice 15


Exemplu de proiectare – comparator pentru cuvinte de 2 biti

 Minimizarea celor functii de iesire

a1 a0 b1 b0

 Implementarea functiilor de
iesire dupa minimizare f1

f2

a1a0 a1a0 a1a0


b1b0 00 01 11 10 b1b0 00 01 11 10 b1b0 00 01 11 10
00 1 1 1 00 1 00
01 1 1 01 1 01 1 f3
11 11 1 11 1 1 1
10 1 10 1 10 1 1

Circuite integrate digitale – Circuite cu porți logice 16


Exemplu de proiectare – decodificator BCD–7 segmente

 Afisarea cifrelor de la 0 la 9 se face cu afisaje


alcatuite din elemente luminoase (led-uri)
 Decodificatorul BCD / 7 segmente are rolul de a
comanda cu 4 biti aprinderea unora dintre cele 7
segmente luminoase care compun cifra aleasa
a b g
 Afisajele pot fi cu catod comun (se comanda cu ‘1’
... luminarea elementului) sau cu anod comun (se
comanda cu ‘0’)

R
5V I0 Y0 a
a
I1 Y1 b
... I2 Y2 c f b
g
Y3 d
Y4 e e c
...
...

a b g Y5 f
d
Y6 g

Circuite integrate digitale – Circuite cu porți logice 17


Exemplu de proiectare – decodificator BCD–7 segmente
 Implementarea cu porti logice a decodificatorului BCD / 7 segmente
 Pentru a afisa o anumita cifra se comanda luminarea unora dintre segmente
( conform schemei de mai jos)
 exista un standard de notare a celor 7 segmente luminoase: a,b,c,d,e,f si g.
 de exemplu, pentru a afisa cifra 3 se aplica ‘1’ logic elementelor a,b,c,d si g.
 alt exemplu: pentru afisarea cifrei 6 se aplica ‘1’ logic tuturor elementelor cu
exceptia lui b

Circuite integrate digitale – Circuite cu porți logice 18


Exemplu de proiectare – decodificator BCD–7 segmente

 Decodificatorul BCD / 7
segmente cu afisare xyzt a b c d e f g
exclusiv numerica primeste
0 000 1 1 1 1 1 1 0
numai coduri binare pe 4 0 001 0 1 1 0 0 0 0
biti de la 0 la 9, furnizate de 0 010 1 1 0 1 1 0 1
numaratoare in cod BCD 0 011 1 1 1 1 0 0 1
(zecimale) 0 100 0 1 1 0 0 1 1
 Pentru primele 10 coduri binare se 0 101 1 0 1 1 0 1 1
afiseaza cele 9 cifre de la 0 la 9. 0 110 1 0 1 1 1 1 1
Pentru celelalte 6 coduri, de la 10 la 0 111 1 1 1 0 0 0 0
15, valorile generate sunt indiferente 1 000 1 1 1 1 1 1 1
1 001 1 1 1 1 0 1 1
(“X” in tabelul de adevar).
1 010 x x x x x x x
 Circuitul proiectat este unul cu iesiri 1 011 x x x x x x x
multiple, generand 7 functii a 4 1 100 x x x x x x x
variabile fiecare 1 101 x x x x x x x
1 110 x x x x x x x
1 111 x x x x x x x

Circuite integrate digitale – Circuite cu porți logice 19


Exemplu de proiectare – decodificator BCD–7 segmente
a b c
 Minimizarea cu xy
00 01 11 10
xy
00 01 11 10
xy
00 01 11 10
zt zt zt
diagrame Karnaugh a 00 1 X 1 00 1 1 X 1 00 1 1 X 1
functiilor generate de 01 1 X 1 01 1 X 1 01 1 1 X 1
decodificatorul BCD /
11 1 1 X X 11 1 1 X X 11 1 1 X X
7 segmente
10 1 1 X X 10 1 X X 10 1 X X

d xy e xy f xy
 Implementarea cu porti zt 00 01 11 10 zt 00 01 11 10 zt 00 01 11 10
logice a decodificatorului 00 1 X 1 00 1 X 1 00 1 1 X 1
BCD / 7 segmente 01 1 X 1 01 X 01 1 X 1
11 1 X X 11 X X 11 X X
10 1 1 X X 10 1 1 X X 10 1 X X

g xy
zt 00 01 11 10
00 1 X 1
01 1 X 1
11 1 X X
10 1 1 X X

Circuite integrate digitale – Circuite cu porți logice 20


Diagrame Karnaugh – reguli de minimizare

Functiile minimizate rezultate dupa utilizarea diagramelor Karnaugh

a  x  z  yt  yt
b  y  zt  z t
c  y z t
d  x  yz  yt  yz t

e  y t  zt
f  x  z t  yz  yt

g  x  yz  yz  yt

Circuite integrate digitale – Circuite cu porți logice 21


Diagrame Karnaugh – reguli de minimizare

Circuitele cu porti rezultate ca urare a minimizarii functiilor a, b si f

x y z t x y z t x y z t

a b
f

Circuite integrate digitale – Circuite cu porți logice 22


Diagrame Karnaugh – reguli de minimizare

Diagrame Karnaugh → reguli de minimizare cu variabile indiferente (‘X’)

 Se grupeaza ‘1’ si ‘X’ alaturate in grupuri de dimensiune egala cu o putere a lui 2


(16, 8, 4, 2 sau 1), alte dimensiuni ale grupurilor nefiind permise.
 Scopul este includerea tuturor valorilor de ‘1’ in cel putin un grup. Procedura de
formare a grupurilor se incheie atunci cand au fot grupati toti termenii egali cu ‘1’;
 Nu este obligatorie includerea tuturor variabilelor ‘X’ in grupuri, doar daca este
nevoie pentru a grupa toti termenii egali cu ‘1’;
 Grupurile care contin termeni egali cu ‘1’ sau ‘X’ vor lua numele ca si cum ar fi
numai termeni egali cu ‘1’ in grupul respectiv
 Daca valoarea “X” a fost luata in grup, pentru acea combinatie de variabile functia va
lua valoarea ‘1’, altfel aceasta va lua valoarea ‘0’;

Circuite integrate digitale – Circuite cu porți logice 23


Exemplu – decodificator Cod Hexagesimal –7 segmente

 decodificatorul BCD / 7
segmente este un circuit xyzt a b c d e f g
care comanda afisajul de tip
0 000 1 1 1 1 1 1 0
7 segmente notate cu litere 0 001 0 1 1 0 0 0 0
de la a la e si primind 0 010 1 1 0 1 1 0 1
coduri binare pe 4 biti 0 011 1 1 1 1 0 0 1
0 100 0 1 1 0 0 1 1
 Pentru primele 10 coduri binare se 0 101 1 0 1 1 0 1 1
afiseaza cele 9 cifre de la 0 la 9. 0 110 1 0 1 1 1 1 1
Pentru celelalte 6 coduri, de la 10 la 0 111 1 1 1 0 0 0 0
15, se afiseaza literele de la a la f. 1 000 1 1 1 1 1 1 1
1 001 1 1 1 1 0 1 1
 Pentru elementele care lumineaza
1 010 1 1 1 1 1 0 1
primind valoarea “HIGH” circuitul 1 011 0 0 1 1 1 1 1
genereaza “1” pentru ca elementul sa 1 100 1 0 0 1 1 1 0
lumineze si “0” pentru ca elementul 1 101 0 1 1 1 1 0 1
sa ramana stins 1 110 1 1 0 1 1 1 1
 Circuitul este unul cu iesiri multiple, 1 111 1 0 0 0 1 1 1
generand 7 functii de 4 variabile

Circuite integrate digitale – Circuite cu porți logice 24


Exemplu – decodificator Cod Hexagesimal –7 segmente

 Minimizarea cu diagrame Karnaugh a


functiilor generate de decodificatorul
BCD / 7 segmente

a  y t  x t  x z  yz  xy z  x yt

e  x y  zt  x z  y t

b  y z  x y  x z t  x z t  x zt  x z t
Circuite integrate digitale – Circuite cu porți logice 25
Exemplu – decodificator Cod Hexagesimal –7 segmente

 Implementarea cu porti logice a decodificatorului pentru cod hexagesimal

Circuite integrate digitale – Circuite cu porți logice 26


Forma minimizată si forma canonică

Trecerea de la forma minimizata la cea canonica

 Se da funcția: f  ab  bc

 Cum se determină forma canonică ?

a  a  1
Elemente 
neutre: 1  a  a

f  ab  bc  ab(c  c )  (a  a )bc 
 abc  abc  abc  abc  abc
  abc
  abc
 
P7 P6 P2

 P2  P6  P7

Circuite integrate digitale – Circuite cu porți logice 27


Probleme propuse

 
Probleme propuse:
1. Implementati functia data sub forma canonica folosind: + +

a) Numai cu porti logice SI – NU

b) Numai cu porti logice SAU – NU

2. Implementati functia data sub forma canonica folosind: + ++

a) Numai cu porti logice SI – NU

b) Numai cu porti logice SAU – NU

3. Realizati un circuit numai cu porti SI – NU problema precedenta pentru functia data sub forma minimizata:

4. Realizati un circuit numai cu porti SAU – NU problema precedenta pentru functia data sub forma minimizata:

5. Minimizaţi funcţia votului majoritar de 3 variable şi implementaţi numai cu porţi SI-NU.

6. Minimizaţi funcţia care comparţ două cuvinte de 2 biţi A şi B şi dă valoarea 1 când A>B şi implementaţi numai cu porţi
SI-NU.

7. Transformati expresia logica a funcţiei: f (a,b,c) = a ⊕b + şi implementaţi cu porti logice SI – NU

Circuite integrate digitale – Circuite cu porți logice 28


Probleme propuse

 
Probleme propuse (2):
8. Implementati functia data sub forma canonica folosind numai cu porti SI – NU:
a) f=P0+P1+P4+P6 folosind numai porţi SI-NU
b) f=P0+P1+P4+P6 folosind porţi logice
c) f=P0+P1+P4+P6+ P10+P13+P14+P15 folosind numai porţi SI- NU
d) f=P0+P1+P4+P6+ P10+P13+P14+P15 folosind porţi logice
9. Repetati problema precedenta folosind numai cu porti SAU – NU:

10. Realizati un circuit numai cu porti SAU – NU problema precedenta pentru functia data sub forma minimizata:

11. Minimizaţi funcţia votului majoritar de 3 variable şi implementaţi numai cu porţi SI-NU.

12. Minimizaţi funcţia care comparţ două cuvinte de 2 biţi A şi B şi dă valoarea 1 când A>B şi implementaţi numai cu porţi
SI-NU.

13. Transformati expresia logica a funcţiei: f (a,b,c) = a ⊕b + şi implementaţi cu porti logice SI – NU

Circuite integrate digitale – Circuite cu porți logice 29


Probleme propuse

Probleme propuse (3):


14. Implementati un circuit combinational care semnalizeaza la iesire cu ‘1’ daca un numar par de biti din cei patru aplicati
la intrare sunt egali cu ‘1’ (Codor de paritate). Folositi numai porti SAU – EXCLUSIV

15. Repetati problema precedenta folosind numai porti SI – NU

16. Sintetizati un circuit logic combinational care semnalizeaza la iesire cu ‘1’ daca toti cei patru biti aplicati la intrare sunt
egali cu ‘1’ sau toti sunt egali cu ‘0’. Folositi numai porti SAU – NU

17. Proiectati un decodificator care semnalizeaza la iesire cu ‘1’ daca cei patru biti aplicati la intrare descriu codul 2, 5, 7
sau 11

18. Proiectati un decodificator care semnalizeaza la iesire cu ‘0’ daca cei patru biti aplicati la intrare descriu codul 4, 6, 9
sau 13.

19. Deduceti expresia canonica a functiilor a si b, implementate cu circuitele acand schema in figura.

x y z t x y z t

a b

Circuite integrate digitale – Circuite cu porți logice 30

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