Circuite integrate digitale
Circuite cu porți logice
Prof. dr. ing. Sorin Hintea
Departamentul de Bazele Electronicii
Circuite integrate digitale – Coduri binare si funcții logice 2
Functii si porti logice fundamentale
Tabelul de adevăr pentru funcţiile logice fundamentale
Diagrama de semnale pentru porţile logice fundamentale
t
t
t
t
t
t
t
t
a
b
a
a+b
ab
a⋅b
ab
a+b
a b
0 0 1 0 1 0 1 0
0 1 1 0 1 1 0 1
1 0 0 0 1 1 0 1
1 1 0 1 0 1 0 0
NU ŞI ŞI-NU
SAU SAU-NU SAU-EX
ba ba a ba ba ba
Simboluri logice pentru porţile fundamentale
Circuite integrate digitale – Circuite cu porți logice 3
Funcția votului majoritar
Implementarea funcției votului majoritar
a b c f
0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1
00010111
3 5 6 7f abc ab c abc abc P P P P
Circuite integrate digitale – Circuite cu porți logice 4
Funcția votului majoritar
funcția votului majoritar – minimizarea cu diagrama Karnaugh
3 5 6 7f abc ab c abc abc P P P P
DeM
f ab bc ac ab bc ac
Doua moduri de implementare ale funcției votului majoritar, inainte sidupa aplicarea formulei De Morgan
Circuite integrate digitale – Circuite cu porți logice 5
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 putinetrasee de legatura
Astfel, este evident ca un circuit este mai avantajos cu cat are un numar mai mic de porti si care au mai putineintrari
Din punct de vedere al minimizarii si al numarului de porti ultimele doua implementari par la fel de complexesi 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 6
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 , respectivSAU – NU cu 2 intrari
Exemplu de proiectare – porti cu 2 intrari
Inversor NAND2 NOR2
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?
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 NAND3 NOR3
Circuite integrate digitale – Circuite cu porți logice 8
Funcția votului majoritar
Cum se calculeaza numarul de tranzistoare pentru portile cu mai multe intrari care implementeaza functiadirecta?
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 iesireafunctiei negate
AND2 OR2VDD
a
b
f = ab
Circuite integrate digitale – Circuite cu porți logice 9
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, avandnumarul minim de tranzistoare in schema
Aceasta rezulta folosind doua principii de baza: atat simplificarea expresiilor logice cat si folosirea functiilornegate
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 10
Diagrame Karnaugh
Diagrame Karnaugh asigura obtinerea formei minime a funcțiilor logice → implementare cu număr minim de porți elementare
simplificarea prin metode algebrice a expresiilor algebrice nu asiguraatingerea formei minime a funcțiilor logice
de asemenea, poate sa dureze prea mult, mai ales daca expresiile sunt maicomplicate
Circuite integrate digitale – Circuite cu porți logice 11
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 12
Diagrame Karnaugh
Exemple de minimizare cu diagrame Karnaugh
0 1 2 3 4 5 8 9 10 11 15
0 3 4 5 7 8 10 11 12 13 15
f P P P P P P P P P P P
g P P P P P P P P P P P
cdg b abcc cd � � �� � ��� � ��
Circuite integrate digitale – Circuite cu porți logice 13
Diagrame Karnaugh
Exemple de minimizare cu diagrame Karnaugh
0 1 2 4 5 6 7 8 10 14 15
0 1 2 3 4 9 10 11
h P P P P P P P P P P P
k P P P P P P P P
yh x z y tz x z tk zx t yy y
Circuite integrate digitale – Circuite cu porți logice 14
Exemplu de proiectare – comparator pentru cuvinte de 1 bit
Tabelul de adevar
Pornind de la tabelul de adevar rezulta cele trei functiigenerate pe iesiri
� � ���
�� � ���
si
�� � �⨁�
Circuite integrate digitale – Circuite cu porți logice 15
Exemplu de proiectare – comparator pentru cuvinte de 2 biti
Exemplu. Proiectarea unui comparator pentrucuvinte de 2 biti.
Se compara cuvintele A=[a1a0] si B=[b1b0]
Circuitul are 3 iesiri care semnalizeaza dacacele doua cuvinte sunt egale (f2=1) sau in cazcontrar, care din ele este mai mare ( f1=1 dacaA>B sau f3=1 daca A<B)
Intrarile sunt biti cuvintelor care se compara
Tabelul de adevar defineste cele trei functiide 4 variabile
Circuite integrate digitale – Circuite cu porți logice 16
Minimizarea celor functii de iesire
Exemplu de proiectare – comparator pentru cuvinte de 2 biti
Implementarea functiilor de iesire dupa minimizare
a1a000 01 11 10
1
1
1
1
1
1
00
01
11
10
b1b0 00 01 11 10
1
1
1
1
00
01
11
10
a1a0b1b0 00 01 11 10
1
1
1
1
1 1
00
01
11
10
a1a0b1b0
a1
f1
a0 b1 b0
f2
f3
Circuite integrate digitale – Circuite cu porți logice 17
Exemplu de proiectare – decodificator BCD–7 segmente
Afisarea cifrelor de la 0 la 9 se face cu afisajealcatuite 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
Afisajele pot fi cu catod comun (se comanda cu ‘1’ luminarea elementului) sau cu anod comun (se comandacu ‘0’)
...
...
Circuite integrate digitale – Circuite cu porți logice 18
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 19
x y z t a b c d e f g
0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1
1011011111xxxxxx
1111100111xxxxxx
1101111111xxxxxx
1011011011xxxxxx
1010001010xxxxxx
1000111011xxxxxx
0011111011xxxxxx
Decodificatorul BCD / 7
segmente cu afisare exclusiv numerica primeste numai coduri binare pe 4 biti de la 0 la 9, furnizate de numaratoare in cod BCD (zecimale)
Pentru primele 10 coduri binare se afiseaza cele 9 cifre de la 0 la 9. Pentrucelelalte 6 coduri, de la 10 la 15, valorile generate sunt indiferente (“X” in tabelul de adevar). Circuitul proiectat este unul cu iesirimultiple, generand 7 functii a 4 variabile fiecare
Exemplu de proiectare – decodificator BCD–7 segmente
Circuite integrate digitale – Circuite cu porți logice 20
Implementarea cu porti
logice a decodificatoruluiBCD / 7 segmente
xyzt 00 01 11 10
1
1
1
1
1
1
X
X
1
1
X
X
X
X
00
01
11
10
axy
zt 00 01 11 10
1
1 1
1
1 1
X
X
1
1
X
X
X
X
00
01
11
10
bxy
zt 00 01 11 10
1
1
1
1
1
1
1
X
X
1
1
X
X
X
X
00
01
11
10
c
xyzt 00 01 11 10
1
1
1
1
1
X
X
1
1
X
X
X
X
00
01
11
10
dxy
zt 00 01 11 10
1
1 1
X
X 1
X
X
X
X
00
01
11
10
exy
zt 00 01 11 10
1
1
1
1
X
X
1
1
X
X
X
X
00
01
11
10
f
xyzt 00 01 11 10
1
1
1
1
1
X
X
1
1
X
X
X
X
00
01
11
10
g
Exemplu de proiectare – decodificator BCD–7 segmente
Minimizarea cu
diagrame Karnaugh a functiilor generate de decodificatorul BCD / 7 segmente
Circuite integrate digitale – Circuite cu porți logice 21
Diagrame Karnaugh – reguli de minimizare
Functiile minimizate rezultate dupa utilizarea diagramelor Karnaugh
tyytzxa
tzztyb
tzyc
tzytyzyxd
tztye
tyzytzxf
tyzyzyxg
Circuite integrate digitale – Circuite cu porți logice 22
Diagrame Karnaugh – reguli de minimizare
Circuitele cu porti rezultate ca urare a minimizarii functiilor a, b si f
x
a
y z t x
b
y z t x
f
y z t
Circuite integrate digitale – Circuite cu porți logice 23
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 estenevoie pentru a grupa toti termenii egali cu ‘1’;
Grupurile care contin termeni egali cu ‘1’ sau ‘X’ vor lua numele ca si cum ar finumai termeni egali cu ‘1’ in grupul respectiv
Daca valoarea “X” a fost luata in grup, pentru acea combinatie de variabile functia valua valoarea ‘1’, altfel aceasta va lua valoarea ‘0’;
Circuite integrate digitale – Circuite cu porți logice 24
Exemplu – decodificator Cod Hexagesimal –7 segmente
x y z t a b c d e f g
0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1
1011011111101011
1111100111100110
1101111111110100
1011011011111110
1010001010111111
1000111011011011
0011111011110111
decodificatorul BCD / 7
segmente este un circuit care comanda afisajul de tip 7 segmente notate cu litere de la a la e si primind coduri binare pe 4 biti
Pentru primele 10 coduri binare se afiseaza cele 9 cifre de la 0 la 9. Pentru celelalte 6 coduri, de la 10 la 15, se afiseaza literele de la a la f. Pentru elementele care lumineaza primind valoarea “HIGH” circuitul genereaza “1” pentru ca elementul sa lumineze si “0” pentru ca elementul sa ramana stins Circuitul este unul cu iesiri multiple, generand 7 functii de 4 variabile
Circuite integrate digitale – Circuite cu porți logice 25
Exemplu – decodificator Cod Hexagesimal –7 segmente
x za y yt x t y xz yz tx
x z tb xy z x zy xt zzt tx
zte y tz yx x
Minimizarea cu diagrame Karnaugh a functiilor generate de decodificatorul BCD / 7 segmente
Circuite integrate digitale – Circuite cu porți logice 26
Implementarea cu porti logice a decodificatorului pentru cod hexagesimal
Exemplu – decodificator Cod Hexagesimal –7 segmente
Circuite integrate digitale – Circuite cu porți logice 27
Forma minimizată si forma canonică
Se da funcția:
Cum se determină forma canonică ?
f ab bc
{ { {7 6 2
2 6 7
( ) ( )
P P P
f ab bc ab c c a a bc
abc abc abc abc abc abc abc
P P P
1
1
a a
a a
Elemente neutre:
Trecerea de la forma minimizata la cea canonica
Top Related