RO-Electronica Digitala Aplicatii 104 Pag
December 30, 2016 | Author: speedymc | Category: N/A
Short Description
Download RO-Electronica Digitala Aplicatii 104 Pag...
Description
Cuprins
1
2
3
Prefaţă
3
Familii logice
7
1.1 Consideraţii teoretice
7
1.1.1 Poarta TTL standard
7
1.1.2 Poarta logică CMOS
11
1.1.3 Zgomote şi reflexii
14
1.2 Demonstraţii practice
19
1.3 Probleme rezolvate
24
Sisteme combinaţionale
31
2.1 Consideraţii teoretice
31
2.1.1 Implementarea cu porţi logice
31
2.1.2 Implementarea cu multiplexoare/demultiplexoare
33
2.2 Demonstraţii practice
35
2.3 Probleme rezolvate
40
Circuite de impuls
45
3.1 Consideraţii teoretice
45
3.1.1 Circuite astabile
45
3.1.2 Circuite monostabile
48
3.1.3 Circuite bistabile
4
5
6
49
3.2 Demonstraţii practice
50
3.3 Probleme rezolvate
54
Sisteme secvenţiale
59
4.1 Consideraţii teoretice
59
4.1.1 Sisteme secvenţiale asincrone
59
4.1.2 Sisteme secvenţiale sincrone
62
4.1.3 Hazard 4.2 Demonstraţii practice
63 64
4.3 Probleme rezolvate
69
Structuri programabile
79
5.1 Consideraţii teoretice
79
5.1.1 Memoria ROM
79
5.1.2 Memoria RAM
80
5.1.3 Structuri PLD
81
5.1.4 Structuri FPGA
83
5.2 Demonstraţii practice
84
5.3 Probleme rezolvate
88
Analiza şi sinteza automată
91
6.1 Consideraţii teoretice
91
6.1.1 Analiza circuitelor prin simulare PSPICE
91
6.1.2 Sinteza circuitelor folosind limbajul VHDL
97
6.2 Demonstraţii practice
101
6.3 Probleme rezolvate
106
Bibliografie
109
1
FAMILII LOGICE
Aplicaţiile din acest capitol îşi propun să prezinte familiile de porţi logice TTL şi CMOS, să facă un studiu comparativ al parametrilor şi caracteristicilor unor porţi logice realizate în cele două tehnologii fundamentale şi să analizeze sursele posibile de zgomote în sistemele reale cu circuite integrate numerice.
1.1 Consideraţii teoretice 1.1.1 Poarta TTL standard Structura porţii ŞI-NU (NAND) în tehnologie TTL standard este dată în figura 1.1. Dacă tensiunea pe cel puţin una dintre intrări este nulă, tranzistorul T1 are cel puţin o joncţiune polarizată direct şi potenţialul bazei lui T1 este de circa 0,6V. În aceste condiţii, tranzistorii T2 şi T3 sunt blocaţi, iar tranzistorul T4 conduce, rezultând la ieşire starea 1 logic. Tensiunea la ieşire este VOH (Voltage Output High):
VOH = VCC − VBE ( T 4 ) − VF ( D1) R1
R2 1K6
4K
R4 130 T4
T1
A B
T2 DA DB
Vcc
R3 1K
D1
A Vout
B
T3
Fig. 1.1 Structura porţii ŞI-NU în tehnologie TTL standard
A. B
8
1 FAMILII LOGICE
Fig. 1.2 Caracteristica de transfer a inversorului TTL standard
Fig. 1.3 Consumul de curent de la sursa de alimentare Dacă tensiunile pe intrări sunt în 1 logic, joncţiunea BC a tranzistorului T1 conduce, polarizând baza tranzistorului T2. Intrarea în conducţie a lui T2 determină şi conducţia lui T3, rezultând la ieşire 0 logic. Tensiunea la ieşire este VOL (Voltage Output Low):
VOL = VCEsat ( T 3) Caracteristica Vout = f (Vin ) se numeşte caracteristica de transfer de tensiune a porţii şi are forma din figura 1.2, pentru o anumită tensiune de alimentare şi temperatură. Tensiunea de intrare se aplică simultan pe cele 2 intrări A şi B ale porţii, care devine astfel un simplu inversor. Variaţia consumului de curent de la sursa de alimentare se poate vedea pe caracteristica din figura 1.3. Standardul TTL garantează anumite valori de tensiune pentru cele patru nivele logice de ieşire şi intrare în poarta logică. Pentru o încărcare a ieşirii cu 10 intrări TTL standard (fan-out = 10), aceste nivele garantate sunt:
9
1.1 Consideraţii teoretice
- V IL , nivelul de tensiune necesar pentru a avea 0 logic la intrare: VIL ≤ V IL max = 0,8 V - VIH , nivelul de tensiune necesar pentru a avea 1 logic la intrare: VIH ≥ VIH min = 2 V - VOL , nivelul de tensiune de la ieşire în starea 0 logic: VOL ≤ VOL max = 0,4 V - VOH , nivelul de tensiune de la ieşire în starea 1 logic: VOH ≥ VOH min = 2,4 V .
Caracteristica I in = f (Vin ) se numeşte caracteristică de intrare şi este reprezentată în figura 1.4, pentru o anumită tensiune de alimentare şi temperatură. Caracteristica
Vout = f ( I out ) se numeşte caracteristică de ieşire. Există două caracteristici de ieşire, câte una pentru fiecare din cele două stări logice (figurile 1.5 şi 1.6). Figura 1.7 prezintă o comparaţie între caracteristicile de transfer pentru diverse grupe ale familiei logice TTL. Se observă asemănarea lor, deci putem spune că toate grupele TTL se pot interconecta direct, cu observaţia că frecvenţa de lucru trebuie să fie mai mică decât frecvenţa maximă a celor mai lente circuite din structură.
Structura porţii ŞI-NU cu colector în gol (open colector) este reprezentată în figura 1.8. În circuitul de ieşire a tranzistorului cu colector în gol se conectează rezistenţa RC . Această modificare permite deplasarea nivelului semnalului logic de la ieşire din TTL (circa 0 - 4V) în 0 - Vcc , unde Vcc poate fi o tensiune mai mare de 5V. Configuraţia cu colector în gol permite şi realizarea funcţiei logice ŞI, prin conectarea directă a ieşirilor, fără a mai utiliza alte porţi logice în acest scop. Circuitul astfel obţinut se numeşte ŞI CABLAT, deoarece funcţia ŞI a fost obţinută numai prin cablarea împreună a ieşirilor.
Fig. 1.4 Caracteristica de intrare
Fig. 1.6 Caracteristica de ieşire în 0 logic
Fig. 1.5 Caracteristica de ieşire în 1 logic
Fig. 1.7 Diverse grupe TTL
10
1 FAMILII LOGICE
R1
Vcc
R2
RC
T1
A B
+
1K6
4K
T2
*
B
Vout
A.B
T3
R3
DA D B
RC
A
1K
Fig. 1.8 Structura porţii ŞI-NU cu colector în gol VCC
VCC
RC
RC
IIH
I IL
IOH
. .
IOH
IOL
. . .
. . .
. . I IL
IOH IIH
N n curenţii în circuit pentru 1 logic
N n curenţii în circuit pentru 0 logic
Fig. 1.9 Calculul rezistenţei RC Dezavantajul acestei structuri este dat de faptul că rezistenţa de ieşire este dată de valoarea rezistenţei RC , valoare mai mare decât rezistenţa de ieşire a etajului în contratimp de la poarta standard. Valoarea rezistenţei RC depinde de numărul n al porţilor cu colector în gol conectate în paralel şi de numărul N al sarcinilor comandate. Din condiţia de respectare a nivelelor standard de tensiune pentru fiecare dintre cele două nivele logice rezultă două valori pentru RC , iar valoarea rezistenţei se alege în acest interval. pentru 1 logic: VOH = VCC − ( n ⋅ I OH + N ⋅ I IH ) ⋅ RC ≥ VOH min , deci RC max =
VCC − VOH min n ⋅ I OH max + N ⋅ I IH max
pentru 0 logic:
VOL = VCC − (I OL − N ⋅ I IL ) ⋅ RC ≤ VOL max , deci RC min =
VCC − VOL max I OL max − N ⋅ I IL max
11
1.1 Consideraţii teoretice
1.1.2 Poarta logică CMOS Configuraţia logică fundamentală la circuitele CMOS (Complementary-symmetry MOS) este cea de inversor, configuraţie prezentată în figura 1.10. Dacă la intrare se aplică nivelul logic 1 (tensiunea V+), tranzistorul T1 intră în conducţie şi tranzistorul T2 se blochează, iar la ieşire nivelul logic este 0 (o tensiune practic nulă). La aplicarea unei tensiuni nule pe intrare se blochează T1 şi intră în conducţie T2, ieşirea fiind în acest caz la nivelul logic 1 (tensiunea de alimentare V+). Caracteristica Vout = f (Vin ) se numeşte caracteristica de transfer de tensiune a porţii,
iar caracteristica I (V+ ) = f (Vin ) este caracteristica de curent (în figura 1.10, I (V+ ) este notat cu I (VDD ) ; valoarea negativă a curentului indică faptul că acesta este absorbit de la sursă). Sunt puse în evidenţă 5 regiuni pe parcursul variaţiei tensiunii de intrare în domeniul 0..V+ : - în regiunea I, pentru Vin ≤ VTN , unde VTN este tensiunea prag pentru tranzistorul T1 (nMOS), T1 blocat şi T2 este în conducţie liniară, iar Vout = V+ . Consumul de curent de la sursa de alimentare este practic nul, unul dintre tranzistoare fiind blocat; - în regiunea II, definită pentru intervalul VTN < Vin ≤ Vout − VTP , T1 este saturat şi T2 rămâne în conducţie liniară. VTP este tensiunea prag pentru tranzistorul T2 (pMOS) şi are o valoare negativă; - în regiunea III, definită pentru intervalul Vout − VTP < Vin ≤ Vout + VTN , ambele tranzistoare sunt saturate, iar consumul de curent de la sursă este maxim. Regiunea IV oferă o comportare identică cu regiunea II, dar de data aceasta stările tranzistoarelor sunt inversate, adică T1 este în conducţie liniară, iar T2 este în saturaţie, iar în regiunea V, tranzistorul T1 rămâne în conducţie liniară, iar T2 intră în blocare. V+= 15V
Vin
T2 Vout T1
Fig. 1.10 Structura de inversor CMOS şi caracteristicile de transfer
12
1 FAMILII LOGICE
Datorită faptului că cele două tranzistoare din structură au caracteristici aproape identice, pragul de basculare a stării logice este situat la jumătatea excursiei semnalului logic de intrare şi la jumătatea tensiunii de alimentare, frontul crescător al semnalului de ieşire este aproximativ egal cu cel descrescător, iar consumul static de curent este practic nul (familie logică ideală). Configuraţia unei porţi logice în tehnologie CMOS este direct legată de funcţia logică cerută. Structura din figura 1.11 este o poartă ŞI-NU cu 2 intrări, dar ieşirea din nodul 4 este trecută prin alte două structuri inversoare ca cele din figura 1.10 pentru a obţine o caracteristică cât mai apropiată de una ideală şi pentru a asigura simetria ieşirii faţă de V+ şi faţă de masă. Ieşirea din nodul 7 al structurii este ieşirea porţii logice, ieşire care este disponibilă la unul dintre pinii circuitului integrat. Simulările s-au făcut pentru o tensiune de alimentare de +15V, dar, la circuitele CMOS din seria 4000, de care ne ocupăm la laborator, tensiunile de alimentare pot fi alese între +3V (tensiune impusă de existenţa obligatorie a zonelor I şi V din figura 1.10, ştiind că VTN ≈ VTP ≈ 1,5V ) şi +18V, sau chiar +20V, în funcţie de structura circuitului respectiv.
Nivelele logice de ieşire şi intrare garantate prin standard sunt: - V IL , nivelul de tensiune necesar pentru a avea 0 logic la intrare: VIL ≤ VIL max = 30% ⋅V+ - VIH , nivelul de tensiune necesar pentru a avea 1 logic la intrare: V IH ≥ V IH min = 70% ⋅ V + - VOL , nivelul de tensiune de la ieşire în starea 0 logic: VOL ≤ VOL max = 0,05 V - VOH , nivelul de tensiune de la ieşire în starea 1 logic: VOH ≥ VOH min = V+ − 0,05 V
1
V+
4
6
7
2 5
3 0
Fig. 1.11 Structura porţii ŞI-NU cu 2 intrări şi caracteristici de transfer
13
1.1 Consideraţii teoretice
Imunitatea la zgomot se defineşte ca fiind tensiunea maximă de zgomot prezentă la intrare, care nu comută parazit poarta. Se observă că marginile de zgomot garantate sunt de 30% din valoarea tensiunii de alimentare, dar practic ele pot atinge 45% din valoarea tensiunii de alimentare ([Ardelean, 1986]). Impedanţa de intrare de curent continuu este de circa 1012 Ω , deoarece intrarea inversorului este complet izolată de substrat prin dielectricul capacitorului poartă-substrat, care are o grosime de circa 1000 Å. Orice sursă de tensiuni electrostatice poate astfel genera o tensiune mare pe poartă, care să producă distrugerea ireversibilă a stratului izolator, prin străpungere. Această impedanţă mare este atenuată în mare măsură de dispozitivele amplasate pentru protecţia intrării (vezi figura 1.12) şi de elementele parazite proprii circuitului integrat şi montajului în care acesta se găseşte. Cu toate acestea, valoarea impedanţei de intrare depăşeşte 10 MΩ, fapt ce influenţează favorabil posibilitatea comandării în curent continuu a unui număr mare de intrări CMOS. Aici, practic nu sunt limite teoretice ale "fan-out"-ului, el fiind limitat de fapt numai de sarcina capacitivă de circa 5pF pentru fiecare intrare CMOS. De remarcat un parametru de catalog care surprinde la prima vedere, deoarece curentul de intrare la un circuit CMOS este considerat de obicei nul: I I − DC input current = ± 10 mA
Este vorba de curentul maxim ce poate trece prin diodele din reţeaua de protecţie, în orice sens, deoarece aceste diode se pot deschide fie în conducţie directă, fie în conducţie inversă, prin efect Zener. Avem de-a face şi aici cu o valoare maximă absolută, ca şi tensiunea de alimentare de +18V! Depăşirea acestor valori are ca efect distrugerea cu mare probabilitate a structurii! Comportamentul ieşirii este preponderent rezistiv, un tranzistor MOS având o rezistenţă drenă-sursă mai mică de 1KΩ în conducţie şi mai mare de 10MΩ în blocare. Acest lucru determină o sensibilitate crescută la sarcini capacitive de ieşire, sarcini ce influenţează viteza de comutare şi puterea consumată de circuit. Pe de altă parte, limitarea curentului de saturaţie la tranzistoarele MOS asigură protecţia ieşirilor la scurtcircuite accidentale la masă sau la V+ , cu condiţia ca valoarea tensiunii de alimentare, durata scurtcircuitului şi numărul de ieşiri aflate în scurtcircuit să nu provoace distrugerea circuitului integrat prin ambalare termică. V+ D1 Vin
D1
T2
D2
D1
R
Vout D2
T1
D2
Fig. 1.12 Circuitul de protecţie a intrării la seria CMOS 4000
14
1 FAMILII LOGICE
1.1.3 Zgomote şi reflexii Zgomotele sunt semnale perturbatoare, nedorite, care pot afecta funcţionarea structurilor numerice. La aplicarea unui algoritm de sinteză a unei structuri numerice proiectantul foloseşte modele teoretice în care ecuaţiile boolene exprimă perfect funcţiile dorite. La implementarea acestor ecuaţii cu circuite integrate reale se constată că porţile logice au anumite limitări, iar firele de conexiune pot distorsiona forma semnalului transmis. Ne putem aştepta în anumite condiţii la o funcţionare incorectă a structurilor numerice, iar dacă aceasta este aleatoare, evenimentul este cu atât mai grav. Structurile numerice implementate în tehnologia CMOS - 4000 se apropie de modelul ideal. Fiind circuite lente, ele sunt în mică măsură afectate de zgomote şi reflexii. Familiile logice rapide pot produce însă mari neplăceri, chiar şi în cazul unor conexiuni relativ scurte (de ordinul centimetrilor). Zgomotul generat de reflexii pe liniile de transmisiune
Reflexiile se produc la capetele firelor sau traseelor de circuit imprimat în cazul neadaptării dintre impedanţa de ieşire şi impedanţa liniei. Unui semnal care parcurge linia de transmisiune aceasta i se înfăţişează ca o impedanţă constantă numită impedanţă caracteristică. Dacă se neglijează valorile rezistenţelor distribuite şi se notează cu L inductanţa liniei pe unitatea de lungime şi cu C capacitatea ei pe unitatea de lungime, atunci impedanţa caracteristică a liniei este ([Nicula, 1994]):
Z0 =
L C
iar viteza de propagare a semnalului pe linia de transmisiune este:
v=
1 L⋅C
Considerăm acum circuitul din figura 1.13, care generează la momentul de timp t = 0 o tranziţie de la 0 la V d , tranziţie care se propagă pe linie până la destinaţia cu impedanţa terminală Z t . Vd , unde I d este curentul care circulă pe linie La propagarea pe linie Z 0 = Id datorită tensiunii Vd . Tensiunea şi curentul parcurg linia ca o funcţie treaptă, aşa cum se vede în figura 1.13. Când tranziţia atinge destinaţia, aceasta se prezintă ca o impedanţă Z t . Dacă Z t = Z 0 atunci legea lui Ohm este în continuare satisfăcută şi nu apar reflexii. Dacă însă Z t ≠ Z 0 , tensiunea şi curentul trebuie să se modifice pentru a asigura verificarea legii lui Ohm şi la bornele rezistenţei terminale. Schimbarea are ca efect apariţia unui semnal tranzitoriu numit reflexie care va străbate linia în sens invers, de la destinaţie la sursă. Dacă Z t > Z 0 acest semnal se va aduna la cel original, iar dacă Z t < Z 0 se va scădea din acesta.
15
1.1 Consideraţii teoretice
Zs Z0
Vs
Zt
sursa
destinaţia Circuitul
v
Vd
distanţa
Semnalul înainte de atingerea receptorului Vt distanţa
Vd Semnalul după reflexie (cazul Z t > Z 0) Vd
Vt distanţa
Semnalul după reflexie (cazul Z t < Z 0)
Fig. 1.13 Reflexiile pe liniile de transmisiune Dacă folosim indicii d pentru semnalele directe, i pentru cele inverse şi t pentru cele tranzitorii, atunci putem scrie legile lui Kirchoff considerând rezistenţa terminală ca un sistem închis: I t = I d + I i şi Vt = Vd + Vi Conform legii lui Ohm: Z t =
Vt pe sarcină, It
Z0 =
Vd V înainte de sarcină, şi Z 0 = i Id − Ii
după sarcină. Prin rezolvarea sistemului format din ecuaţiile de mai sus se deduce valoarea saltului de tensiune în funcţie de impedanţa caracteristică şi cea de terminaţie:
Vi = Vd ⋅
Zt − Z0 Zt + Z0
Zt − Z0 se numeşte coeficientul de reflexie a tensiunii şi măsoară Zt + Z0 raportul dintre tensiunea undei reflectate şi tensiunea undei directe. Unda se va propaga în continuare de la sarcină spre sursă, în sens invers. Când unda reflectată atinge sursa se poate produce o nouă reflexie dacă Z 0 este diferită de Z S . Reflexiile vor continua între sursă şi destinaţie însă amplitudinea lor este atenuată datorită pierderilor prin rezistenţele ohmice ale liniei, care au fost neglijate până acum. Efectul reflexiilor se materializează prin apariţia unor oscilaţii care însoţesc tranziţiile între cele două nivele logice. Aceste oscilaţii pot fi cauza funcţionării necorespunzătoare a unui sistem numeric. Există o metodă grafică care permite analiza reflexiilor pe linii, cunoscută ca metoda diagramelor lui Bergeron. Ea foloseşte caracteristicile de intrare şi ieşire ale Raportul K =
.
16
1 FAMILII LOGICE
A
B
Z 0 = 100 Ω Fig. 1.14 Interconexiunea dintre 2 porţi TTL standard porţilor studiate şi presupune cunoscută impedanţa caracteristică a liniei. Vom exemplifica metoda pentru două porţi TTL standard conectate printr-o linie cu impedanţa caracteristică de 100Ω (pentru circuite imprimate Z 0 are valori cuprinse între 80Ω şi 200Ω). Figura 1.15 prezintă caracteristicile de intrare şi cele de ieşire pentru cele 2 stări logice ale unui circuit tipic din seria TTL standard. Prima diagramă este utilizată pentru evaluarea tranziţiei logice din 0 în 1. Dreapta de pantă Z 0 ce reprezintă linia de transmisie va intersecta caracteristica de ieşire în starea logică 1, punct care va determina la momentul de timp t 0 tensiunea de ieşire a porţii emiţătoare, tensiune de circa 1,75 V. Din acest moment panta liniei de transmisie devine − Z 0 şi de această dată va intersecta caracteristica de intrare. Pentru evaluarea tranziţiei logice din 1 în 0 se foloseşte a doua diagramă. Dreapta de pantă Z 0 va intersecta caracteristica de ieşire în starea logică 0 la circa 0,25V. Din acest punct, dreapta cu panta modificată intersectează caracteristica de intrare la circa -1,5V, valoarea tensiunii în punctul B, şi aşa mai departe până la amortizarea reflexiilor. Formele de undă rezultate în urma tranziţiilor sunt reprezentate în figura 1.16, iar figura 1.17 arată câteva forme de undă vizualizate pe osciloscop pentru porţile TTL standard. S observă că poarta de ieşire comută normal, în ciuda reflexiilor existente pe linia de intrare, dar aceste reflexii pun în pericol funcţionarea corectă a circuitului. La ora actuală, pachetele CAD care permit analiza prin simulare a sistemelor numerice, cum ar fi, de exemplu, Protel 99 SE, permit şi simularea reflexiilor care apar pe linii.
Fig. 1.15 Diagramele Bergeron pentru cele două tranziţii posibile
17
1.1 Consideraţii teoretice A
A
[V]
4
4
3
3
2
2
1
1
0
t
τ 2τ
0
t
τ 2τ
B [V]
B [V] 4
4
3
3
2
2
1
1
0
[V]
t
τ 2τ tranziţia din 0 în 1
0
t
τ 2τ tranziţia din 1 în 0
Fig. 1.16 Formele de undă teoretice în punctele A şi B pentru cele 2 tranziţii
Fig. 1.17 Forme de undă reale vizualizate pe osciloscop Pentru reducerea efectului reflexiilor se recomandă utilizarea unor conexiuni cât mai scurte (reflexiile se produc pe durata frontului, iar palierele îşi păstrează valorile logice), adaptarea liniei lungi pe rezistenţa caracteristică prin plasarea unui divizor rezistiv în punctul B, sau prin folosirea unor porţi cu histerezis pentru mărirea marginii de zgomot în curent continuu. Valorile rezistenţelor de adaptare ar putea fi cu până la un ordin de mărime mai mari, sau, una dintre ele, ar putea lipsi complet. Se mai poate mări şi impedanţa de ieşire a porţii, prin amplasarea unei rezistenţe de zeci de ohmi între punctele A şi B ([Nicula, 1994]). +5V 150 Ω A
B
Z 0 = 100 Ω 470 Ω
Fig. 1.18 Adaptarea liniei pe impedanţa caracteristică şi formele de undă reale
18
1 FAMILII LOGICE
Zgomotul generat de diafonia dintre liniile de transmisiune
Datorită apropierii dintre două linii din circuit, semnalul existent pe una din ele poate influenţa nedorit semnalul de pe cealaltă linie. Acest cuplaj se face prin intermediul unor capacităţi şi inductanţe mutuale. Dacă notăm cu Z M impedanţa mutuală dintre două linii şi pe una din ele avem o tranziţie de tensiune VOUT , atunci în cealaltă apare o tranziţie de tensiune:
V IN =
Z0 ⋅V = Z 0 + Z M OUT
1 ⋅V Z M OUT 1+ Z0
Pentru micşorarea efectelor diafoniei trebuie mărită impedanţa mutuală Z M şi micşorată impedanţa caracteristică Z 0 . Prima condiţie se realizează prin folosirea unor medii izolatoare cât mai bune şi evitarea menţinerii în paralel a unor trasee apropiate pe lungime mare. A doua condiţie presupune alăturarea unor trasee de masă (plan de masă, fire de masă între fire de semnale utile etc.). Zgomotul generat de injecţia de curent
Acest tip de zgomot se manifestă la porţile cu mai multe intrări. Variaţia curentului printr-un emitor al tranzistorului multiemitor de intrare într-o poartă TTL poate fi zgomot pentru celelalte intrări. Se produce de fapt un salt de curent, care produce un salt de tensiune pe intrările conectate la impedanţa caracteristică. Dacă intrarea A a porţii ŞI-NU din figura 1.1 este conectată la masă printr-o linie cu impedanţa caracteristică de 200Ω, iar intrarea B comută din 0 în 1 logic, atunci în A apare un salt de curent de la 0,8mA la 1,6mA, care va genera la intrarea A un salt de tensiune de 0,16V. Acest zgomot este cu atât mai mic cu cât curenţii de intrare sunt mai mici şi amplitudinea lui este prea mică pentru a produce modificarea parazită a nivelului logic la intrare. El ar putea însă interveni împreună cu alte zgomote într-o conjunctură nefavorabilă care să perturbe funcţionarea corectă a circuitului ([Nicula, 1994]). Reducerea efectelor acestui zgomot se face prin folosirea unei legături scurte, cu impedanţă caracteristică mică şi prin evitarea folosirii porţilor cu mai multe intrări pe anumite linii de sistem. Zgomotul generat de variaţia curentului de alimentare
Sursa acestui zgomot o constituie inegalitatea dintre curenţii absorbiţi de circuit în cele două stări logice 0 şi 1. La comutarea rapidă a porţilor din circuit apare o variaţie a tensiunii de alimentare a circuitelor integrate, datorită inductanţei parazite a liniei de alimentare. Pe de altă parte, la comutare apar pulsuri tranzitorii de curent datorită capacităţilor parazite de la ieşirile porţilor din circuit. Metodele de reducere a zgomotului constau în reducerea inductanţei liniei de alimentare prin utilizarea unor plane de alimentare (trasee cât mai groase) şi în plasarea condensatoarelor ceramice de decuplare care filtrează pulsaţiile tranzitorii de înaltă frecvenţă ce nu pot fi eliminate de condensatoarele electrolitice.
19
1.2 Demonstraţii practice
Zgomotul generat de traseele de masă Cauzele acestui zgomot sunt discontinuităţile de impedanţă a traseelor de masă şi închiderea curenţilor spre masă pe trasee incorecte. Aceste fluxuri de curent determină căderi de tensiune parazite care se suprapun peste semnalul util. Reducerea acestui zgomot se face printr-o maximă separare a traseelor de alimentare pentru fiecare circuit de pe placă şi existenţa unui plan de masă. Zgomotul generat de interferenţe electromagnetice Sursele acestui zgomot pot fi: reţeaua de alimentare cu tensiune alternativă, motoare, relee, întrerupătoare sau alte dispozitive generatoare de câmp electromagnetic. Reducerea zgomotului se face prin ecranare sau filtre de reţea.
1.2 Demonstraţii practice Se alimentează panoul logic cu o tensiune de 5V de la o sursă de tensiune reglabilă. ATENŢIE LA RESPECTAREA POLARITĂŢII ŞI LA VALOAREA INIŢIALĂ A TENSIUNII! Datorită diodei de protecţie la alimentare inversă, se măsoară cu un voltmetru tensiunea între pinii de alimentare indicaţi de catalog (la circuitele de pe panou, între pinii 14 şi 7, aşa cum se arată în figura 1.19). Se porneşte de la 0V şi se măreşte tensiunea de la sursă, până ce valoarea măsurată ajunge la +5V. Această tensiune este tensiunea nominală de alimentare pentru circuitele TTL. Valoarea limită absolută de catalog este de +7V la circuitele TTL şi de +18V la circuitele CMOS – seria 4000. Depăşirea valorii limită absolute va distruge cu o mare probabilitate circuitul integrat! Circuitele CMOS din seria 4000 nu au o tensiune nominală precizată. Tensiunea de alimentare trebuie să fie sub valoarea limită absolută de circa +18V şi mai mare de circa +3V, pentru a asigura o comutare stabilă. Tensiunile de alimentare folosite în lucrare pentru aceste circuite sunt de +5V, +10V şi + 15V. Observaţiile de mai sus sunt valabile pentru toate panourile logice folosite şi în alte capitole, aşa că nu vom mai reveni cu aceste indicaţii. Dacă un panou logic are cordon de alimentare la reţea, atunci există o sursă de alimentare cu tensiune continuă încorporată, iar panoul NU MAI TREBUIE ALIMENTAT la o sursă de tensiune de laborator! _
+
14
13
12
11
10
9
8
+ V 5 V cc _ 1
2
3
4
5
6
7
Fig. 1.19 Stabilirea tensiunii corecte de alimentare a panoului logic
20
1 FAMILII LOGICE
1.2.1 Se realizează montajul din figura 1.20. La intrarea porţii ŞI-NU, în tehnologie TTL standard (circuitul integrat CDB400, echivalent cu SN7400), cu intrările conectate împreună, se aplică o tensiune continuă, variabilă între 0 şi 5V, iar valorile măsurate ale tensiunii de ieşire se trec într-un tabel. Se reprezintă punct cu punct caracteristica statică de
( )
transfer Vout = f Vin . Să se compare cu caracteristica de transfer din figura 1.2, obţinută prin simulare analogică PSPICE. Se repetă măsurătorile pentru o poartă ŞI-NU cu 2 intrări realizată în tehnologie CMOS 4000 (circuitul integrat MMC4011, echivalent cu CD4011), având grijă ca tensiunea de intrare să nu depăşească tensiunea de alimentare. Se folosesc următoarele tensiuni de alimentare: VCC = +5V , VCC = +10V şi VCC = +15V . Se măsoară nivelele logice şi se compară cu valorile garantate prin standard. Caracteristica de transfer pentru VCC = +15V se compară cu caracteristica de transfer din figura 1.11, obţinută prin simulare analogică PSPICE. Sarcina porţii este considerată rezistenţa de intrare a voltmetrului folosit pentru măsurare. Vcc = +5V
+ Vin = 0..5V _
sarcină + V Vout _
Fig. 1.20 Montajul pentru trasarea punct cu punct a caracteristicii de transfer
V
1.2.2 Se realizează montajul din figura 1.21 pentru poarta TTL standard. La intrarea porţii ŞI-NU cu intrările conectate împreună se aplică un semnal sinusoidal cu amplitudinea de circa 4V şi frecvenţa de circa 100Hz. Se scoate baza de timp a osciloscopului şi pe ecranul tubului catodic apare caracteristica de transfer. Măsuraţi nivelele logice de ieşire şi intrare garantate prin standard. Modificaţi sarcina porţii prin adăugarea circuitului care simulează 10 intrări TTL standard (vezi figura 1.24) şi refaceţi măsurătorile. Comentaţi modificarea caracteristicii cu frecvenţa semnalului de intrare şi explicaţi ce se întâmplă dacă una dintre intrările porţii este lăsată în aer. Se repetă montajul pentru poarta CMOS 4000. Analizaţi modificarea caracteristicii cu modificarea tensiunii de alimentare şi stabiliţi tensiunea minimă de alimentare. Scurtcircuitaţi pe rând ieşirea porţii la masă şi apoi la VCC şi observaţi ce se întâmplă. generator R int
Vin
Vcc = +5V sarcină Vout
Y
X
Fig. 1.21 Montajul pentru vizualizarea caracteristicii de transfer
V
21
1.2 Demonstraţii practice
1.2.3 Se măsoară în cazurile cele mai defavorabile curenţii de intrare pentru cele două nivele logice la poarta TTL standard, folosind montajele din figura 1.22. Testarea în cazul cel mai defavorabil este realizată pentru toate circuitele, pentru a garanta funcţionarea în toate condiţiile posibile. VCC are valoarea maximă admisă (+5,25V la seria 74SN) pentru a maximiza curentul I IL . Cu excepţia intrării supuse testării, celelalte intrări nefolosite sunt conectate la 1 logic pentru a maximiza orice contribuţie a acestor intrări asupra curentului de intrare I IL . Acest 1 logic este de 4,5V, valoare în general superioară lui VOH . Comparaţi rezultatele obţinute prin măsurare cu cele din figura 1.4, obţinute prin simulare PSPICE. Valorile obţinute trebuie să fie în concordanţă cu datele de catalog:
I IH ≤ I IHMAX = 40µA
I IL ≤ I ILMAX = − 1,6mA DACĂ AMPERMETRUL ESTE ANALOGIC POLARITATE ŞI LA DOMENIUL DE MĂSURĂ !
Vcc = +5,25V VIL = 0,4V _
mA +
+4,5V
(TIP
MAVO-35),
ATENŢIE
LA
Vcc = +5,25V
I IH _ VIH= 2,4V + mA
I IL
Fig. 1.22 Montajele pentru măsurarea curentului de intrare la poarta TTL
V
1.2.4 Folosind montajul din figura 1.23 se trasează caracteristicile de ieşire ale porţii TTL standard. Dacă ampermetrul este analogic (tip MAVO-35), atenţie la polaritate şi la domeniul de măsură! Comparaţi rezultatele cu cele din figurile 1.5 şi 1.6, obţinute prin simulare analogică PSPICE.
Vcc = +5V I out _
mA +
(-) + (+) V V out _
5K
100
Fig. 1.23 Montajul pentru trasarea caracteristicilor de ieşire la poarta TTL
V
1.2.5 Se măsoară timpii de propagare prin poarta TTL cu ajutorul montajului din figura 1.24. Generatorul furnizează la intrare impulsuri TTL cu frecvenţa de câţiva MHz. Circuitul de ieşire ( C L = 15 pF ) simulează încărcarea porţii cu o sarcină echivalentă cu 10 intrări TTL standard. Se măsoară timpii de propagare şi pentru C L = 220 pF şi se compară rezultatele. Dacă performanţele osciloscopului nu sunt satisfăcătoare pentru efectuarea măsurătorii, se poate încerca înserierea mai multor porţi identice şi medierea rezultatelor astfel obţinute. Se repetă măsurătoarea pentru poarta CMOS, folosind la intrare impulsuri de amplitudine 5V. Sarcina porţii este dată acum numai de condensatorul C L , iar intrările sunt .
22
1 FAMILII LOGICE
in
50%
generator TTL R int
50%
t pHL
CL
50%
50%
400Ω
out
+2,4V in
t pLH out
Vcc = +5V
Fig. 1.24 Definirea timpilor de propagare şi montajul pentru măsurarea lor la poarta TTL conectate împreună. Pe un osciloscop cu 2 canale se vizualizează atât semnalul de intrare cât şi semnalul de la ieşirea porţii logice. Prin suprapunerea celor două semnale se măsoară cei doi timpi de propagare t PHL şi t PLH . Se verifică egalitatea aproximativă a celor doi timpi de propagare la poarta CMOS. Studiaţi variaţia timpilor de propagare cu modificarea tensiunii de alimentare şi cu modificarea sarcinii de la ieşirea porţii CMOS şi comparaţi valorile măsurate cu datele de catalog. V .
1.2.6 Se realizează montajul din figura 1.25, folosind al doilea circuit integrat de pe panoul logic TTL. Se calculează limitele de variaţie admise pentru valoarea rezistenţei de colector şi se verifică dacă rezistenţa de pe panou se încadrează între aceste limite. Se verifică conexiunea "ŞI cablat" folosind tabelul de adevăr al funcţiei binare Y, precum şi excursia tensiunii la ieşire.
Vcc = +5V RC A
Y
. .
Y = A B C
B C Fig. 1.25 Montajul pentru verificarea conexiunii "ŞI cablat"
V
1.2.7 Se realizează montajul din figura 1.26. Se vizualizează formele de undă la ieşirea porţii CMOS (tensiunea de ieşire) şi pe rezistenţa înseriată în circuitul de alimentare (curentul consumat de circuitul integrat). Intrările celorlalte porţi logice din circuitul integrat se conectează la nivele logice stabile, 0 sau 1. Astfel consumul de curent al circuitului integrat este dat în exclusivitate de poarta care comută. Comentaţi imaginea de pe ecranul tubului catodic. Ce se întâmplă dacă se măreşte tensiunea de alimentare? Dar dacă se măreşte frecvenţa impulsurilor aplicate la intrare? Acest comportament se întâlneşte la orice structură CMOS, nu neapărat numai la seria 4000. Şi procesoarele Pentium au un comportament similar. Acest consum de curent pe poartă la comutare, determină o creştere accentuată a disipaţiei termice odată cu creşterea frecvenţelor de lucru. Care este soluţia adoptată în ultimul timp pentru rezolvarea acestei probleme? (vezi problema 1.3.5)
23
1.2 Demonstraţii practice
VDD = +5V
generator impulsuri R int
sarcină
Y1
Vin
Y2
R
Fig. 1.26 Montaj pentru estimarea consumului circuitului integrat care conţine poarta CMOS din seria 4000 V 1.2.8 Se realizează circuitul din figura 1.14 folosind două porţi TTL standard şi un cablu de conexiune lung (de circa 2 m). Se introduce pe intrarea primei porţi un semnal TTL cu o frecvenţă de circa 5 MHz. Se vizualizează semnalele în punctele A şi B când conductorul AB este scurt şi atunci când are o lungime de circa 1m. Desenaţi semnalele vizualizate şi explicaţi forma lor. Măsuraţi întârzierea semnalului pe linia lungă AB. V .
1.2.9 Se dublează circuitul din figura 1.14 şi cele două linii lungi se apropie pe o lungime cât mai mare una de alta. Se aplică un semnal TTL pe intrarea unui circuit şi se vizualizează pe linia celuilalt circuit semnalul indus datorită diafoniei. V .
1.2.10 Se realizează montajul din figura 1.27 pentru vizualizarea zgomotului datorat injecţiei de curent. Se aplică semnal TTL pe linia A, iar linia B se conectează la masă prin intermediul unui conductor lung. Urmăriţi apariţia pulsurilor de tensiune în punctul B sincron cu semnalul din punctul A şi măsuraţi durata şi amplitudinea lor.
A B
Fig. 1.27 Circuit pentru evidenţierea zgomotului datorat injecţiei de curent la TTL V 1.2.11 Se conectează toate porţile circuitului integrat TTL la sursa de semnal TTL, pentru o comutare sincronă a lor. Se conectează în serie cu sursa de alimentare un fir cu inductanţă mare (se bobinează nişte spire pe un tor de ferită). Linia de alimentare poate fi astfel asimilată unei linii lungi de transport al tensiunii. Se vizualizează variaţia tensiunii de alimentare pe pinul Vcc al circuitului integrat. Măsuraţi durata şi amplitudinea variaţiilor şi desenaţi formele de undă. Repetaţi măsurătorile după cuplarea unui condensator de decuplare între Vcc şi GND. V .
1.2.12 Să se imagineze şi să se experimenteze un montaj pentru vizualizarea zgomotelor datorate formei traseelor de masă. .
25
1.3 Probleme rezolvate
VCC − VOLMAX 5V − 0,4V = = 1,437 KΩ I OLMAX − 8 ⋅ I ILMAX 16mA − 8 ⋅ 1,6mA Se alege pentru rezistenţa R o valoare standardizată cuprinsă în intervalul [1,437KΩ ..3,846KΩ]. Nu am luat aici în considerare variaţiile admisibile ale tensiunii de alimentare. In această situaţie, ar trebui să luăm în calcul valoarea care minimizează R MAXH , adică VCC min , respectiv valoarea care maximizează Rmin L , adică VCCMAX . Rmin L =
c) M L = VOLMAX − VILMAX = 0,4V − 0,8V = 0,4V
V
.
1.3.3 Se înlocuiesc cele 8 inversoare ale circuitului din figura 1.29 cu un număr necunoscut N de porţi ŞI-NU cu câte 2 intrări conectate împreună, în tehnologie TTL standard. Să se calculeze N, dacă se ştie că R = 1KΩ şi marginea de zgomot în 1 logic trebuie să fie mai mare de 1V. Rezolvare: - pentru starea logică 1:
R ⋅ (2 ⋅ I OHMAX + 2 ⋅ N H ⋅ I IHMAX ) ≤ VCC − VIH min − M H , adică VCC − V IH min − M H − 2 ⋅ R ⋅ I OHMAX 5V − 2V − 1V − 2 ⋅ 1KΩ ⋅ 0,1mA NH ≤ = = 22,5 2 ⋅ R ⋅ I IHMAX 2 ⋅ 1KΩ ⋅ 0,04mA Curentul de intrare în poartă pentru starea logică 1 este suma curenţilor de pe fiecare intrare. Dacă variază şi VCC , atunci se ia în calcul VCC min . - pentru starea logică 0:
R ⋅ ( I OLMAX − N L ⋅ I ILMAX ) ≥ VCC − VOLMAX − VCC + VOLMAX + R ⋅ I OLMAX − 5V + 0,4V + 1KΩ ⋅ 16mA NL ≤ = = 7,12 R ⋅ I ILMAX 1KΩ ⋅ 1,6mA Curentul de intrare în poartă pentru starea logică 0 este acelaşi, indiferent de numărul de intrări ale porţii. Dacă variază şi VCC , atunci se ia în calcul VCCMAX . Deci răspunsul este N = 7. .
1.3.4 Care este marginea de zgomot asigurată de conexiunea din figură? Porţile sunt TTL standard, dar poarta comandată este un inversor cu histerezis. V out VOHmin
Fig. 1.30
Circuitul şi caracteristica de transfer a inversorului cu histerezis VOLmax V T-
V in
V T+
Rezolvare: Inversorul cu histerezis are pragul VT − cuprins între 0,6V şi 1,1V, iar pragul VT + este cuprins între 1,5V şi 2V, conform datelor de catalog. - pentru starea logică 1: M H ≥ V H min − VT − max = 2,4V − 1,1V = 1,3V , - pentru starea logică 0: M L ≥ VT + min − VOL max = 1,5V − 0,4V = 1,1V . Marginile de zgomot la o conexiune între două porţi TTL standard sunt de numai 0,4V! .
26
1 FAMILII LOGICE
1.3.5 Se consideră inversorul CMOS din figura 1.10 alimentat la tensiunea V+ = +5V . Tranzistorul T1 suportă un curent de drenă I D1 = 1mA , iar T2 un curent I D2 = 1,5mA . Tensiunea de prag a circuitului este VT = 2,5V , iar capacitatea de ieşire este Cout = 20 pF . a) Să se calculeze timpii de propagare pentru ambele tranziţii ştiind că sarcina inversorului este formată din 10 intrări CMOS, fiecare de 5 pF, iar capacitatea traseelor exterioare circuitului integrat este de 30 pF. b) Calculaţi consumul de putere dinamic şi static şi arătaţi care sunt modalităţile de reducere a consumului de putere din sursă, ştiind că frecvenţa de comutaţie a porţii este de 1MHz, iar fronturile semnalului de ieşire sunt egale cu 100ns. Rezolvare: a) Capacitatea totală de sarcină este: C = Cout + N ⋅ Cin + Ctrasee = 20 pF + 10 ⋅ 5 pF + 30 pF = 100 pF Pentru tranziţia ieşirii LOW-HIGH se deschide T2 şi se blochează T1, iar timpul de propagare este: C ⋅ VT 100 pF ⋅ 2,5V t PLH = = = 167ns 15 . mA I D2 Pentru tranziţia ieşirii HIGH-LOW se deschide T1 şi se blochează T2, iar timpul de propagare este: C ⋅ (V+ − VT ) 100 pF ⋅ (5V − 2,5V ) t PHL = = = 250ns 1mA I D1 b) Puterea disipată în regim dinamic este puterea necesară pentru încărcarea şi descărcarea periodică a capacităţii de sarcină de la ieşire: Pd = V+ ⋅
C ⋅ V+ = C ⋅ V+2 ⋅ f = 100 pF ⋅ 52 V 2 ⋅ 1MHz = 2,5mW T
V+ 0V IM 0A tr
T
tf
Fig. 1.31 Aproximarea formelor de undă la comutare Puterea disipată în regim static este puterea disipată în timpul comutării. Figura 1.31 indică o reprezentare simplificată a tensiunii de ieşire şi a curentului consumat pe durata unei perioade. T
Ps =
³ u(t ) ⋅ i(t ) ⋅ dt 0
T
≈
V+ ⋅ I M t r + t f 5V ⋅ 0,5mA 100ns + 100ns ⋅ ≈ ⋅ = 125µW 4 T 4 1000ns
Valoarea exactă a lui I M este mai greu de apreciat. Având însă în vedere datele problemei, valoarea de 0,5mA este pe deplin acoperitoare.
27
1.3 Probleme rezolvate
Ambele componente ale puterii disipate se reduc odată cu micşorarea tensiunii de alimentare şi a frecvenţei de comutaţie. Capacitatea de sarcină contribuie şi ea la expresia puterii în regim dinamic. .
1.3.6 Dacă pe o intrare CMOS apar tensiuni mai mari decât V + (notat de obicei cu V DD ) sau mai mici decât potenţialul masei (notat de obicei cu VSS ) există pericolul distrugerii diodelor din circuitul de protecţie al intrării prin depăşirea valorii maxime admise a curentului prin diode. Să se realizeze un circuit extern de protecţie şi să se dimensioneze elementele de circuit. Rezolvare: Se introduce o rezistenţă serie Rext la intrare care limitează curentul la valoarea maximă I MAX = 10mA . Se stabilesc valorile maxime ale tensiunilor la intrare: + − V MAX > VDD şi V MAX < VSS Dimensionarea rezistenţei se face urmărind schema de protecţie a intrării din figura 1.12: Rext
+ V MAX − VDD − V F ≥ , I MAX
Rext ≥
− V MAX − VF
I MAX
−R
VF este căderea de tensiune în conducţie directă pe diode. Se alege pentru Rext o valoare care acoperă ambele inegalităţi. O intrare CMOS nu se lasă niciodată "în aer". Pentru eliminarea eventualelor sarcini statice induse, se recomandă conectarea unei rezistenţe de circa 100KΩ la masă sau la V+ , după caz. .
1.3.7 Să se arate cum se poate face cuplajul CMOS - TTL. Rezolvare: Verificăm pentru început dacă o ieşire CMOS poate comanda o intrare TTL standard, din punctul de vedere al tensiunilor şi al curenţilor: VOLMAX ( CMOS ) < V ILMAX ( TTL ) , adică 0,05V < 0,8V
VOH min( CMOS ) > V IH min( TTL ) , adică 4,95V > 2V Din punctul de vedere al tensiunilor inegalităţile sunt satisfăcute fără probleme, iar la curenţi:
I OLMAX ( CMOS ) > I ILMAX ( TTL ) , adică 2mA > 1,6mA I OHMAX ( CMOS ) > I IHMAX ( TTL ) , adică 2mA > 40µA Relaţia subliniată indică faptul că o ieşire CMOS poate comanda o intrare TTL standard, dar nu două sau mai multe, deoarece nu ar mai putea asigura curentul de intrare pe 0 logic. Verificăm în continuare dacă o ieşire TTL poate comanda o intrare CMOS:
VOLMAX ( TTL ) < V ILMAX ( CMOS ) , adică 0,4V < 30% ⋅ 5V = 1,5V VOH min( TTL ) > V IH min( CMOS ) , adică 2,4V > 70% ⋅ 5V = 3,5V I OLMAX ( TTL ) > I ILMAX ( CMOS ) , adică 16mA > 100nA I OHMAX ( TTL ) > I IHMAX ( CMOS ) , adică 400µA > 100nA Relaţia subliniată nu este respectată, deci conexiunea directă TTL-CMOS nu este corectă! Pentru a ridica tensiunea la ieşirea porţii TTL aflate în 1 logic se conectează o rezistenţă între ieşirea porţii TTL şi tensiunea de alimentare.
28
1 FAMILII LOGICE Pentru dimensionarea rezistenţei: Rmin L =
VCC − VOLMAX ( TTL ) I OLMAX
=
5V − 0,4V = 0,287 KΩ 16mA
Se alege o valoare mai mare, dar apropiată de R min L , pentru că R MAXH este mai greu de calculat. Dacă consideram şi variaţia tensiunii de alimentare, foloseam VCCMAX în calculul lui Rmin L , în scopul maximizării lui Rmin L . .
1.3.8 Datorită lipsei circuitelor integrate TTL standard care trebuiau să echipeze un produs de serie, acesta este realizat cu circuite integrate LSTTL. Garantaţi o funcţionare corectă a circuitului? Dar dacă lucrurile ar fi stat exact invers? Rezolvare: Nu se poate garanta o funcţionare corectă a circuitului pentru că circuitele LSTTL sunt mai rapide şi deci sunt mai sensibile la zgomotele care se propagă pe traseul de masă. Este posibilă deci o funcţionare defectuoasă a circuitului. Dacă în loc de LSTTL se montează TTL standard nu mai avem probleme de zgomot, dar probabil că sistemul nu va funcţiona din cauza frecvenţei prea mari, la care circuitele TTL standard nu fac faţă. .
1.3.9 Un BUS cu impedanţa caracteristică Z 0 = 75Ω este adaptat ca în figura 1.32. Ştiind că pe acest BUS pot fi cuplate cel mult 16 intrări TTL standard şi că se impune în 1 logic o margine de zgomot de cel puţin 0,6V, să se calculeze: a) valorile rezistenţelor R1 şi R2. b) curentul I OLMAX al circuitului ce comandă BUS-ul. +V cc
+V cc
R1
IR 1
R1
IR 2
R2
* I OH
R2
.... N
Fig. 1.32 Circuitul de adaptare a liniei de magistrală Rezolvare: a) Din condiţia de 1 logic pe linie:
R1 R2 = 2 Z 0
VCC = R1 ⋅ I R1 + V IH min + M H 2 I R1 = I OH + N ⋅ I IH + 2 I R 2 V IH min + M H I R2 = R2
Necunoscutele sunt I R1 , I R 2 , R1 şi R2 . Se rezolvă sistemul şi se obţine: R1 ≈ 226Ω şi R2 ≈ 446Ω
29
1.3 Probleme rezolvate
Făcând anumite simplificări prin neglijarea lui I IH şi I OH obţinem rezultate apropiate cu un efort de calcul mult mai mic. b) I OLMAX ≥ 2 I R1 L + N ⋅ I ILMAX − 2 I R 2 L , indicele L indică starea logică 0 în nodul studiat. Rezultă I OLMAX ≥ 64,5mA , o valoare prea mare pentru un circuit integrat. Soluţii însă există: se poate accepta o margine de zgomot mai mică, de cel puţin 0,4V, ca la TTL, sau se pot alege circuite de cuplare la BUS care au curenţi de intrare mai mici. Şi aici se poate neglija I R 2 L . Marginea de zgomot în 0 logic este de 0,4V şi nu poate fi mărită de proiectant. V .
1.3.10 Un BUS cu impedanţa caracteristică Z 0 = 150Ω este adaptat ca în figură. Pe BUS sunt cuplaţi receptori care au caracteristică de transfer cu histerezis (vezi figura 1.33) şi curenţi de intrare neglijabili. Ştiind că circuitul care comandă BUS-ul are I OLMAX = 24mA , VOLMAX = 0,4V şi I OH ≈ 0 , se cere: a) să se dimensioneze rezistenţele R1 şi R2. b) să se calculeze marginea de zgomot garantată în ambele stări logice. +V cc
Vo
R1
VT- = 0,9V
R2
Vi
VT+ = 1,7V
*
....
VT-
VT+
Fig. 1.33 Circuitul de adaptare şi caracteristica de transfer a porţilor cu histerezis Rezolvare:
R1 R2 = Z 0 . Neglijând curentul prin R2 în starea 0 logic, obţinem: VCC − VOLMAX 5V − 0,4V = ≈ 200Ω . Alegem o valoare standard R1 = 220Ω . Din prima R1 ≥ 24mA I OLMAX ecuaţie rezultă R2 = 470Ω . R2 470Ω ⋅ VCC = ⋅ 5V = 3,4V b) - în starea 1 logic: V H = R1 + R2 220Ω + 470Ω Receptorii vor comuta când Vi scade sub valoarea lui VT − = 0,9V , deci: a)
M H ≥ V H − VT − = 3,4V − 0,9V = 2,5V - în starea 0 logic: V L = VOLMAX = 0,4V . Comutarea se face pentru VT + = 1,7V :
M L ≥ VT + − V L = 1,7V − 0,4V = 1,3V
1.3.11 Explicaţi în ce situaţie un circuit integrat CMOS din seria 4000 poate să funcţioneze în lipsa tensiunii de alimentare. Care sunt riscurile unei astfel de situaţii şi ce măsuri de prevenire recomandaţi ? Rezolvare: Deşi este greu de crezut, un circuit integrat CMOS din seria 4000 poate funcţiona în lipsa tensiunii de alimentare, cu condiţia ca cel puţin una din intrările lui să fie pe 1 logic. Este clar că 1
30
1 FAMILII LOGICE
logic înseamnă tensiunea de alimentare, dioda respectivă din reţeaua de protecţie a intrării intră în conducţie, iar pe linia de alimentare din circuit apare o tensiune V+ − V F , adică cu circa 0,6V mai mică decât tensiunea de alimentare a sistemului. Dacă curentul consumat de partea nealimentată depăşeşte însă valoarea de 10mA şi nu există o limitare a acestui curent pe intrarea de 1 logic (ieşirea unei porţi CMOS poate asigura această limitare), atunci structura este periclitată. Prevenirea se face numai prin asigurarea unei alimentări corecte a circuitelor integrate din sistem. .
1.3.12 Tensiunea de prag a inversoarelor din figura 1.34 este de 2,5V. Să se calculeze tensiunea de basculare a circuitului echivalent trigger Schmitt şi să se reprezinte tensiunea la ieşire dacă pe intrare se aplică semnalul din figură. Vin
R1
Vin
Vout
2K
+4V
R2
t
0
10K
Fig. 1.34 Trigger Schmitt neinversor realizat cu porţi CMOS şi semnalul de intrare Rezolvare: Comutarea ieşirii din 0 se va face la o valoare a tensiunii de intrare
VT =
§ R2 R · 2 ⋅ V1 , deci V1 = ¨¨1 + 1 ¸¸ ⋅ VT = §¨1 + ·¸ ⋅ 2,5V = 3V R1 + R2 R2 ¹ © 10 ¹ ©
Comutarea ieşirii din 1 se va face la o valoare a tensiunii de intrare
VT =
V1 :
V2 :
R2 R1 ⋅ V2 + ⋅ V DD , V DD fiind tensiunea de alimentare de 5V. R1 + R 2 R1 + R 2
§
R ·
R
§
2 ·
2
1 ¸¸ ⋅ VT − 1 ⋅ V DD = ¨1 + ¸ ⋅ 2,5V − ⋅ 5V = 2V . Rezultă: V 2 = ¨¨ 1 + R2 ¹ R2 10 © 10 ¹ © Funcţionarea circuitului în condiţiile cerute de problemă este reprezentată în figura 1.35.
Vin +4V V1 V2
0
t
Vout +5V
0
t
Fig. 1.35 Funcţionarea circuitului în condiţiile cerute de problemă
2
SISTEME COMBINAŢIONALE
Aplicaţiile din acest capitol îşi propun să prezinte metodele de analiză şi sinteză folosite la implementarea funcţiilor binare cu porţi logice, dar şi cu unele circuite integrate pe scară medie (MSI), cum ar fi multiplexoarele şi demultiplexoarele.
2.1 Consideraţii teoretice 2.1.1 Implementarea cu porţi logice Structurile numerice combinaţionale sau circuitele logice combinaţionale (CLC) implementează funcţii binare. O funcţie binară de n variabile binare independente este o aplicaţie
f : { 0,1} → { 0,1} , n
unde
domeniul
de
{0,1}n = {( x1x2 ... xn ) x1 ∈{0,1}, x2 ∈ {0,1}, ... , xn ∈{0,1}} .
definiţie
este
mulţimea
Numărul maxim de elemente ale mulţimii {0,1} este 2 n , dar nu este absolut necesar ca funcţia să fie definită pentru toate aceste combinaţii de variabile. Numărul maxim de funcţii binare de n variabile este: n
2n
N=
¦C i=0
i 2n
= 22
n
Analiza unui circuit combinaţional are ca scop determinarea funcţiei logice intrareieşire. Aceasta se poate exprima fie în limbaj natural, fie algebric prin expresii logice, fie prin tabele de adevăr, fie prin diagrame Veitch-Karnaugh. Sinteza unui circuit combinaţional urmăreşte determinarea schemei logice, pornind de la unul dintre modurile de reprezentare enumerate mai sus.
32
2 SISTEME COMBINAŢIONALE
Orice funcţie binară poate fi implementată numai cu porţi ŞI-NU. Se spune că operatorul logic ŞI-NU formează un set complet de operatori. Panoul logic conţine 3 tipuri de circuite integrate realizate în tehnologie TTL standard: porţi inversoare, porţi ŞI-NU cu 2 intrări şi porţi ŞI-NU cu 3 intrări. Pentru a găsi circuitul optim care implementează funcţia căutată este necesară operaţia de minimizare a funcţiei binare, în urma căreia rezultă o expresie algebrică cât mai simplă, care permite construcţia circuitului folosind un număr minim de porţi. Există numeroase tehnici de minimizare: pentru calculul manual se preferă utilizarea diagramelor Veitch-Karnaugh, iar pentru calculul automat metode tabelare cum ar fi metoda Quine-McCluskey sau metoda Espresso. Vom prezenta în continuare un exemplu de minimizare a funcţiei binare f, reprezentată prin tabelul de adevăr din figura 2.1, folosind diagramele Veitch-Karnaugh: - funcţia dată are 4 variabile, deci diagrama Veitch-Karnaugh are 2 4 compartimente, fiecare corespunzând uneia dintre cele 16 valori ale funcţiei. Fiecare compartiment este “adresat” de o anumită combinaţie a variabilelor A, B, C şi D. După completarea compartimentelor cu valorile funcţiei din tabelul de adevăr, se grupează compartimentele vecine (diferă valoarea unei singure variabile) care conţin 1 logic, astfel încât fiecare grupare să conţină un număr de 2 i compartimente, unde i = 0,1,2,3 sau 4. Fiecare grupare este definită de un produs de variabile, sub formă directă sau negată, iar expresia funcţiei se obţine prin aplicarea funcţiei SAU acestor “produse logice”. Pentru exemplul considerat:
f ( A, B, C, D) = B ⋅ D + C ⋅ D + A ⋅ C = B ⋅ D ⋅ C ⋅ D ⋅ A ⋅ C S-a folosit o teoremă fundamentală a algebrei boolene cunoscută sub numele de "Legile lui DeMorgan" care permite transformarea operaţiilor binare SAU în ŞI şi invers. Ea permite implementarea funcţiilor binare numai cu porţi ŞI-NU:
X + Y = X ⋅ Y , sau relaţia duală: X ⋅ Y = X + Y A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
f 1 1 1 0 0 1 0 0 1 1 1 0 1 1 0 0
A
A C
C
1
0
1
1
1
1
1
1
0
0
0
0
1
0
0
1
B
B
Veitch
D D D
AB
00
01
11
10
00
1
0
1
1
01
1
1
1
1
11 0
0
0
0
1
0
0
1
CD
10
B
Karnaugh
Fig. 2.1 Exemplu de folosire a diagramelor Veitch-Karnaugh
33
2.1 Consideraţii teoretice A C
A
f
.
A
A A=A
1 A
A 1=A
A
D B
.
Fig. 2.2 Schema logică cu număr minim de porţi ŞI-NU Inversoarele se pot obţine din porţi ŞI-NU prin conectarea împreună a intrărilor (legile de idempotenţă) sau prin conectarea celorlate intrări la 1 logic (elementul neutru pentru operaţia binară ŞI).
2.1.2 Implementarea cu multiplexoare/demultiplexoare Funcţiile binare pot fi implementate cu ajutorul unor structuri combinaţionale MSI, fără a mai fi necesară minimizarea lor. Una dintre aceste structuri este decodificatorul(DCD). Decodificatorul este un circuit integrat pe scară medie, care identifică un cod de intrare prin activarea unei singure linii de ieşire. Dacă circuitul are n variabile binare de intrare, atunci numărul liniilor de ieşire este 2 n . Figura 2.3 arată structura circuitului TTL pentru n = 2. A A 0 0 1 1
B
P0
P1
P2
B 0 1 2 3 0 0 1 1 1 1 1 0 1 1 0 1 1 0 1 1 1 1 1 0
A B
2 2
1
DCD
0
0
1
2
3
P0 P1 P2 P3
P3
Fig. 2.3 Structura, tabelul de adevăr şi reprezentarea decodificatorului TTL pentru n=2 Demultiplexorul(DMUX) este un circuit construit pe structura decodificatorului, care permite transmiterea datelor de pe o singură cale de intrare pe una din cele 2 n căi de ieşire. Selecţia liniilor de ieşire se face prin aplicarea unui cod binar pe n linii de intrare, care devin acum intrări de selecţie. Structura demultiplexorului TTL pentru n = 2 este prezentată în figura 2.4. A B A B
I ENABLE
(
prin conectarea la 0 permite accesul datelor de pe intrare
) P0 .I
P1 .I
2 2
1
DMUX
0
0
1
2
3
I ENABLE
P2 .I P3 .I
Fig. 2.4 Structura şi reprezentarea demultiplexorului TTL pentru n=2
34
2 SISTEME COMBINAŢIONALE
Multiplexorul(MUX) realizează funcţia inversă demultiplexorului, adică permite transmiterea datelor de la una din cele 2 n căi de intrare la o singură cale de ieşire. Selecţia unei anumite intrări de date se face prin aplicarea unui cod binar pe n linii de intrare, linii care sunt intrările de selecţie. Structura multiplexorului TTL pentru n = 2 este prezentată în figura 2.5. I0
I1
I2
I3
A
I0 I1 I2 I3
B E
A B
2
1
2
0
0
1
2
3
MUX
W
E
W
W
W
Fig. 2.5 Structura şi reprezentarea multiplexorului TTL pentru n=2 În descrierile de mai sus, s-a precizat că aceste structuri corespund tehnologiei TTL. În tehnologia CMOS s-ar putea repeta aceste structuri, dar s-au descoperit alte structuri mai eficiente, bazate pe poarta de transmisie CMOS. Circuitele pot fi asimilate cu nişte comutatoare programabile. Aceste comutatoare sunt bidirecţionale, deci acelaşi circuit poate fi utilizat fie ca multiplexor, fie ca demultiplexor, iar semnalele transmise pot fi şi analogice. Schema simplificată a unui MUX/DMUX cu 3 intrări de selecţie în tehnologie CMOS, care selectează intrarea/ieşirea cu numărul 5, este dată în figura 2.6. Aceste structuri combinaţionale MSI implementează toţi termenii produs fundamentali ai unei funcţii cu număr de variabile mai mic sau egal cu numărul de intrări de selecţie n. Din acest motiv, implementarea funcţiilor binare nu necesită operaţii de minimizare, ci numai alegerea corectă a conexiunilor. Dacă numărul de variabile ale funcţiei este mai mic sau egal cu numărul de intrări de selecţie n, atunci implementarea se face direct, iar în caz contrar mai sunt necesare o serie de transformări algebrice pentru a găsi o altă structură adiţională, formată de obicei din porţi, care să completeze lipsa intrărilor de selecţie de la MUX sau DMUX. intrare / ieşire 0
A=1 B=0 C=1
2
1
2
3
4
5
6
7
2
2 2
E
1 0
W
ieşire / intrare
MUX / DMUX
Fig. 2.6 Implementarea funcţiei cu demultiplexor şi cu multiplexor CMOS
35
2.2 Demonstraţii practice
Dacă ne propunem să implementăm cu MUX şi apoi cu DMUX funcţia binară f = P0 + P1 + P2 + P6 + P7 , cele două soluţii TTL sunt prezentate în figura 2.7. 2
A
2
B
2
1
C
2
0
0
1
2
3
4
1
I
DMUX 5
6
7
E
2
A
2
B
2
1
C
2
0
0
1
2
f
3
4
MUX
5
6
7
E
W f
Fig. 2.7 Implementarea funcţiei cu demultiplexor şi cu multiplexor Implementarea cu MUX este imediată. Intrările corespunzătoare indicilor termenilor Pi din suma logică se conectează la 1 logic, iar celelalte intrări la 0 logic. Pentru implementarea cu DMUX ne interesează termenii Pi , deci scriem funcţia sub forma
f = P0 ⋅ P1 ⋅ P2 ⋅ P6 ⋅ P7 . Ieşirile corespunzătoare indicilor termenilor Pi se conectează la intrările unei porţi ŞI-NU. Dacă demultiplexorul este o structură CMOS, atunci la fiecare dintre ieşirile 0, … , 7 se conectează câte o rezistenţă la V+ . În caz contrar, ieşirile care nu sunt selectate rămân în aer (stare de înaltă impedanţă).
2.2 Demonstraţii practice Consideraţiile asupra alimentării panoului logic, formulate în capitolul anterior, rămân valabile pentru toate aplicaţiile practice din această lucrare. Circuitele integrate MSI au deja o complexitate mai mare decât porţile logice şi utilizarea lor la implementarea unor scheme electrice nu se mai poate face fără consultarea foii de catalog. Panoul logic conţine porţi logice, două circuite integrate MSI realizate în tehnologie TTL standard şi un circuit integrat în tehnologie CMOS – seria 4000. Circuitul SN 74150 este un multiplexor TTL cu 4 intrări de selecţie, deci cu 16 căi de intrare, iar circuitul SN 74155 este un circuit TTL cu funcţie dublă: fie un demultiplexor cu 3 intrări de selecţie, fie două demultiplexoare cu câte 2 intrări de selecţie. Circuitul MMC 4097 este un circuit CMOS care conţine două multiplexoare/demultiplexoare cu câte 3 intrări de selecţie. Foile de catalog furnizează informaţia completă pentru utilizarea corectă a acestor circuite integrate. Chiar dacă circuitele sunt fabricate de alt producător, ele trebuie să respecte standardul elaborat de firma TEXAS INSTRUMENTS pentru circuitele TTL, respectiv RCA, pentru circuitele CMOS. Fragmente din foile de catalog, care conţin numai informaţiile strict necesare pentru utilizarea acestor circuite integrate sunt prezentate în figurile 2.8, 2.9 şi respectiv 2.10. În cazul structurilor combinaţionale, aceste informaţii strict necesare sunt cele care permit realizarea conexiunilor conform schemei logice, adică configuraţia pinilor şi tabelul de adevăr.
36
2 SISTEME COMBINAŢIONALE
Fig. 2.8 Configuraţia pinilor şi tabelul de adevăr pentru circuitul SN 74150
Fig. 2.9 Configuraţia pinilor şi tabelul de adevăr pentru circuitul SN 74155 Observăm că pinul ENABLE din descrierea teoretică de mai sus se numeşte aici STROBE şi are rolul de a permite accesul datelor la ieşire. El trebuie conectat la masă (0 logic), după cum rezultă din tabelele de adevăr. O altă deosebire importantă constă în notarea variabilelor aplicate pe intrările de selecţie. La sinteza structurilor combinaţionale cu porţi logice, sau la prezentarea teoretică de mai sus, s-a notat cu A variabila mai semnificativă, iar cea mai puţin semnificativă cu B, C sau D, funcţie de numărul total de variabile. Convenţia adoptată de firma TEXAS INSTRUMENTS, după cum observăm din tabelele de adevăr, este exact inversă: C sau D este intrarea de selecţie mai semnificativă, iar A este intrarea de selecţie cea mai puţin semnificativă. În fond este vorba de o simplă convenţie de care trebuie însă să ţinem seamă pentru folosirea corectă a circuitelor. Iată de ce, printre altele, este obligatorie consultarea foii de catalog atunci când proiectăm diverse structuri folosind circuite integrate numerice! Circuitul integrat MMC 4097(dacă este de fabricaţie românească, sau pur şi simplu 4097, precedat de alte caractere, dacă este fabricat de altă firmă) are un pin numit INHIBIT, cu acţiune contrară pinului ENABLE. Este activ pe 1 logic, având rolul de a bloca accesul datelor .
37
2.2 Demonstraţii practice
Fig. 2.10 Configuraţia pinilor şi tabelul de adevăr pentru circuitul MMC 4097 la ieşire. El trebuie conectat la masă (0 logic), după cum rezultă din tabelele de adevăr. Convenţia de alocare a ponderilor pentru variabilele de selecţie se păstrează la fel ca la TTL: C este intrarea mai semnificativă, iar A este intrarea cea mai puţin semnificativă. 2.2.1 Se face analiza schemei logice din figura 2.11, reprezentând cele 4 funcţii binare prin expresii algebrice, tabele de adevăr şi diagrame temporale. Se verifică experimental rezultatele obţinute în urma analizei teoretice a circuitului. A B
f0 f1 f2 f3
Fig. 2.11 Schema logică a unui decodificator realizat cu porţi
2.2.2 Se implementează cu număr minim de porţi ŞI-NU funcţia binară reprezentată prin tabelul de adevăr din figura 2.12 (x – este 0 sau 1, după cum ne convine). Se realizează montajul din figură şi se face verificarea sintezei prin analiza circuitului folosind tabelul de adevăr. Schema logică obţinută este unică? A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
f 0 1 x x x 1 1 1 0 1 0 0 0 1 0 x
A
A C
C
0
x
0
0 D
1
1
1
1
x
1
x
0
x
1
0
0
B
B
B
A f
D D
C D
.
.
. . .
f=C D+A C= C D A C
Fig. 2.12 Sinteza funcţiei binare reprezentată prin tabelul de adevăr
38
2 SISTEME COMBINAŢIONALE
2.2.3 Se consideră funcţia binară definită de tabelul de adevăr din figura 2.13. Se implementează folosind circuitul integrat SN 74155 ca demultiplexor cu 8 căi de ieşire şi se verifică funcţionarea circuitului obţinut folosind tabelul de adevăr. Se repetă implementarea funcţiei cu circuitul MMC4097 şi se verifică din nou funcţionarea corectă a montajului. C
B A
f
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
1 0 0 0 1 1 0 1
0 1 0 1 0 1 0 1
C
1C
B
B
A
A 0
2C
1G
SN 74155 1
2
3
4
5
6
2G 7
f
Fig. 2.13 Implementarea unei funcţii binare cu circuitul SN 74155
2.2.4 Un juriu format din 4 persoane decide asupra reuşitei unui concurent prin majoritate de voturi, semnalizate prin aprinderea unui element de afişaj. Se implementează funcţia care comandă aprinderea LED-ului, reprezentată prin tabelul de adevăr din figura 2.14, folosind circuitul integrat SN 74150. Se verifică funcţionarea corectă a montajului (în schemele logice cu multiplexoare am folosit pentru intrări notaţia I i ; în foaia de catalog a circuitului 74150 de la TEXAS INSTRUMENTS, ele sunt notate cu Ei , iar complementarea lor la ieşire indică că este disponibilă ieşirea W ; informaţia din catalog trebuie adaptată la cunoştinţele noastre şi este posibil ca în cataloagele altor firme să întâlnim alte notaţii). D 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
f 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1 1
1 0 D
D I0 I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I13 I14 I15
C
C
B
B
A
A
SN 74150
G
W
f
Fig. 2.14 Implementarea funcţiei de vot majoritar cu circuitul SN 74150
2.2.5 Se repetă implementarea funcţiei de la punctul 2.2.4, folosind de această dată circuitul integrat SN 74155 ca demultiplexor cu 8 căi de ieşire şi se verifică funcţionarea circuitului obţinut folosind tabelul de adevăr dat în figura 2.14. Să se arate cum s-a făcut sinteza schemei logice prezentate în figura 2.15.
40
2 SISTEME COMBINAŢIONALE
2.3 Probleme rezolvate 2.3.1 Să se proiecteze un circuit logic combinaţional de tip "cheie electronică" cu 3 intrări şi o singură ieşire. Fiecare intrare reprezintă starea unui contact: dacă contactul este deschis, acesta furnizează 1 logic pe intrarea respectivă. În starea iniţială toate contactele sunt deschise şi ieşirea circuitului este în 1 logic, adică alarma este dezactivată. Dacă închiderea contactelor (care pot acţiona, de exemplu, nişte zăvoare electromagnetice) se face într-o anumită ordine prestabilită, atunci ieşirea rămâne în 1 logic şi alarma nu este declanşată. Dacă ordinea de închidere a contactelor nu este respectată, ieşirea trece în 0 logic şi se afişează starea de alarmă prin aprinderea unui LED. Câte combinaţii posibile există? Dar pentru 5 contacte? Explicaţi cum trebuie să fie contactele şi de ce. Rezolvare: Să presupunem că ordinea prestabilită de închidere a contactelor este B, C, A. Tabelul de adevăr pentru implementarea funcţiei de alarmare, minimizarea funcţiei cu ajutorul diagramei Veitch şi schema logică obţinută sunt date în figura 2.17. A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
f 1 0 0 0 1 1 0 1
A f
A
A C
1
0
0
1
C
0
0
1
1
B
B C
.
.
. . A .C
f=B C+A C= B C
B
B
Fig. 2.17 Sinteza funcţiei binare de alarmare Pentru 3 contacte există 3! = 6 combinaţii posibile, iar pentru 5 contacte avem 120 de combinaţii distincte. Se folosesc întrerupătoare cu menţinere, deoarece este necesară memorarea stărilor contactelor la fiecare pas. În lipsa acestor memorii mecanice, sunt necesare memorii electronice, adică circuite secvenţiale, deci problema nu este rezolvabilă prin metodele prezentate până acum în lucrare. V .
2.3.2 Să se proiecteze un circuit de decodificare pentru afişajul cu 7 segmente din figura 2.18, care să permită afişarea a 4 stări distincte, prin literele O, L, H şi E. Cele 4 stări distincte sunt date de toate combinaţiile posibile realizate cu 2 variabile de intrare, A şi B. Segmentele elementului de afişaj sunt aprinse pentru 0 logic şi stinse pentru 1 logic. a f
g
e
b c
d
Fig. 2.18 Notaţii folosite pentru cele 7 segmente ale elementului de afişaj Rezolvare: Pentru fiecare segment de afişaj se generează câte o funcţie binară conform cerinţelor problemei. Rezultă tabelul de adevăr din figura 2.19. Prin minimizare se obţin ecuaţiile circuitului.
41
2.3 Probleme rezolvate A B a b c d e f g 0
Simbol
g
A
0 0 0 0 0 0 0 1
0
1 1 1 1 0 0 0 1
1
0 1 0 0 1 0 0 0
1
1 0 1 1 0 0 0 0
B
.
.
. . .
a = A B + A B= A B A B
g =A
a b c d e f
b=c= B
.
d= A B e=f=0
Fig. 2.19 Sinteza circuitului de decodificare pentru afişajul cu 7 segmente
V
2.3.3 O companie face angajări de personal pentru diferite compartimente. Candidaţii trebuie să îndeplinească cel puţin una dintre următoarele 5 condiţii: - a: bărbat, necăsătorit, cu studii superioare - b: necăsătorit(ă), cu studii superioare, vârsta sub 30 de ani - c: femeie, necăsătorită, fără studii superioare - d: bărbat, vârsta sub 30 de ani - e: necăsătorit(ă), vârsta peste 30 de ani Să se proiecteze un circuit pentru selecţia candidaţilor. Rezolvare: Se pune problema să găsim o funcţie binară f, de mai multe variabile, pentru selecţia candidaţilor. Dacă f = 1 se consideră candidat acceptat, iar dacă f = 0, atunci avem de-a face cu un candidat respins. Stabilim pentru început care sunt variabilele funcţiei: A - vârsta (A = 1 dacă vârsta este sub 30 de ani, şi A = 0 în caz contrar) B - sexul (B = 1 dacă este bărbătesc şi B = 0 dacă este femeiesc) C - starea civilă (C = 1 dacă este necăsătorit(ă) şi C = 0 dacă este căsătorit(ă)) D - studii (D = 1 dacă are studii superioare şi D = 0 dacă nu are studii) Aceste variabile binare rezultă din datele problemei, iar proiectantul este liber să aleagă modul în care se atribuie valorile logice acestor variabile. Candidatul este acceptat dacă cel puţin una dintre condiţiile cerute este îndeplinită, adică: f = a + b + c + d + e , unde
a = BCD, b = ACD, c = BCD, d = AB, e = AC Expresia algebrică a funcţiei căutate este f = BCD + ACD + BCD + AB + AC , dar această formă a funcţiei nu este minimă. Pentru o minimizare rapidă şi eficientă se trec termenii produs într-o diagramă Veitch. Soluţia problemei este dată în figura 2.20. A
A C
C
0
0
1
0 D
0
0
1
0
1
1
1
1
1
1
1
1 D
B
B
B
D
A B f
C
.
. .
f = C + A B= C A B
Fig. 2.20 Sinteza funcţiei binare f(A,B,C,D)
42
2 SISTEME COMBINAŢIONALE
2.3.4 Să se facă sinteza funcţiei de vot majoritar, reprezentată prin tabelul de adevăr din figura 2.14, cu ajutorul unui demultiplexor cu 8 căi de ieşire. Rezolvare:
Funcţia poate fi scrisă în forma canonică disjunctivă sub forma: f = P7 + P11 + P13 + P14 + P15 . Observăm însă că numărul de variabile ale funcţiei este mai mare decât numărul intrărilor de selecţie ale demultiplexorului. Din acest motiv vom face o serie de transformări algebrice care să pună în evidenţă mintermenii unei funcţii de 3 variabile, mintermeni care sunt disponibili la ieşirile demultiplexorului. Cea de-a patra variabilă va fi introdusă într-o logică combinaţională suplimentară, realizată de obicei cu porţi logice. f = P7 + P11 + P13 + P14 + P15 = DCBA + DC BA + DCBA + DCBA + DCBA =
= A( DCB + DC B + DCB + DCB) + ADCB = A( P3' + P5' + P6' + P7' ) + A ⋅ P7' =
= A( P3' + P5' + P6' ) + P7' = A ⋅ P3' ⋅ P5' ⋅ P6' + P7' = A ⋅ P3' ⋅ P5' ⋅ P6' ⋅ P7'
Expresia algebrică obţinută permite implementarea funcţiei f, conform schemei din figura 2.15. Este evident că oricare alte 3 variabile puteau fi aplicate pe intrările de selecţie ale demultiplexorului, cu condiţia refacerii calculelor de mai sus.
.
2.3.5 Să se proiecteze un convertor de cod din cod binar în cod Gray pentru numere reprezentate pe 3 biţi, folosind: a) un decodificator cu 3 intrări de selecţie. b) multiplexoare cu câte 2 intrări de selecţie. c) un număr minim de circuite. Rezolvare: Două reprezentări succesive în cod Gray diferă printr-un singur bit. Tabelul din figura 2.21 indică corespondenţa cod binar - cod Gray, iar schema logică alăturată prezintă soluţia de la punctul a. Pentru sinteza schemelor logice în probleme, propunem ca variabila A să fie aplicată pe intrarea de selecţie cea mai semnificativă. La problema 2.3.4 am păstrat convenţia din catalog, pentru că schema logică obţinută este implementată cu circuitul SN 74155, aşa cum se vede în figura 2.15. A 0 0 0 0 1 1 1 1
B C 0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
AG BG CG 0 0 0 0 1 1 1 1
0 0 1 1 1 1 0 0
0 1 1 0 0 1 1 0
A
2
2
B
2
1
C
2
0
DCD 0
1
AG
2
3
4
5
6
7
BG
CG
Fig. 2.21 Convertor de cod binar - Gray cu decodificator şi porţi b) Se pot folosi multiplexoare cu câte 2 intrări de selecţie prin transformările:
AG = ABC + ABC + ABC + ABC = ( AB + AB ) ⋅ C + ( AB + AB ) ⋅ C = P2' + P3'
BG = ABC + ABC + ABC + ABC = ( AB + AB ) ⋅ C + ( AB + AB ) ⋅ C = P1' + P2' CG = ABC + ABC + ABC + ABC = ( P0' + P2' ) ⋅ C + ( P1' + P3' ) ⋅ C
43
2.3 Probleme rezolvate 1
0 A B
2
1
2
0
0
2
1
3
MUX
A B
E
W
C
0
1 2
1
2
0
0
2
1
3
MUX
A B
E
W
AG
2
1
2
0
0
2
1
3
MUX
E
W
BG
CG
Fig. 2.22 Convertor de cod binar - Gray cu multiplexoare Schema logică din figura 2.22 prezintă o soluţie a problemei. Sunt posibile şi alte soluţii, funcţie de alegerea variabilelor care se aplică pe intrările de selecţie. c) Implementarea cea mai simplă este cu porţi logice. Prin minimizare cu ajutorul diagramei Veitch-Karnaugh rezultă următoarele relaţii: AG = A , BG = AB + AB = A ⊕ B , CG = BC + BC = B ⊕ C . Deci sunt necesare numai două porţi logice SAU-EXCLUSIV. .
2.3.6 Să se implementeze un sumator complet de 1 bit, folosind: a) multiplexoare cu 4 căi de intrare; b) demultiplexor cu 4 căi de ieşire şi porţi; Comparaţi cele două soluţii din punct de vedere al numărului de circuite integrate şi al timpului de propagare. Rezolvare: Sumatorul de 1 bit are două intrări pentru operanzi, notate aici cu A şi B, şi încă o intrare pentru transportul de la sumatorul de rang inferior, notată aici cu C–1. Circuitul are două ieşiri, suma, notată cu S, şi transportul, notată cu C. Tabelul de adevăr este dat în figura 2.23.
C = P3 + P5 + P6 + P7 = C−1 AB + C−1 (AB + AB + AB) = P3' + C−1 (P1' + P2' )
S = P1 + P2 + P4 + P7 = C−1 (AB + AB ) + C−1 (A B + AB) = C−1 (P1' + P2' ) + C−1 (P0' + P3' ) Schemele logice care se obţin cu aceste ecuaţii sunt date tot în figura 2.23. C -1 A B
C S
0 0 0 0 1 1 1 1
0 0 0 1 0 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
A B
C -1
1
C -1
0 1 1 0 1 0 0 1
2
1
2
0
0
2
1
MUX
3 E
W
A B
2
1
2
0
0
2
1
MUX
C
3 E
W
S
Fig. 2.23 Sumator complet de 1 bit implementat cu multiplexoare b) Pentru implementarea cu demultiplexor, se fac următoarele transformări (punem în '
evidenţă termeni produs Pi ):
C = P3' + C−1 (P1' + P2' ) = P3' ⋅ C−1 ⋅ P1 ' ⋅ P2' S = C−1 (P1' + P2' ) + C−1 (P0' + P3' ) = C−1 ⋅ P1 ' ⋅ P2' ⋅ C−1 ⋅ P0' ⋅ P3'
44
2 SISTEME COMBINAŢIONALE A B
2
1
2
0
I
DMUX 0
1
2
3
E
C -1
C
S
Fig. 2.24 Sumator complet de 1 bit implementat cu decodificator şi porţi ŞI-NU Dacă se compară schemele logice astfel obţinute, observăm că implementarea cu demultiplexor este mult prea costisitoare, atât din punct de vedere al numărului de circuite integrate, cât şi al timpului de propagare. Implementarea cu multiplexoare este mai rezonabilă, dar cea mai simplă soluţie se obţine prin minimizarea funcţiilor şi implementare cu porţi. Această soluţie a fost V prezentată în curs. .
2.3.7 Un circuit logic combinaţional are 4 intrări, 2 ieşiri şi funcţionează astfel încât: - dacă F = 00 , atunci Q = I ; - dacă F = 01 , atunci Q = I + 1 (mod 4) ; - dacă F = 10 , atunci Q = I − 1 (mod 4) ; - dacă F = 11, atunci Q = I , unde F, Q şi I sunt cuvinte de câte doi biţi. a) Să se scrie funcţiile logice Q1 şi Q0 asociate ieşirilor circuitului. b) Să se implementeze circuitul anterior descris. Rezolvare: a) Se poate folosi tabelul de adevăr pentru fiecare dintre funcţiile cerute, dar şi o metodă mai rapidă care presupune scrierea directă a funcţiei pornind de la o formulare convenabilă în limbaj natural. Este evident că pentru F1 = 0 şi F0 = 0 , Q1 = I 1 şi Q0 = I 0 . Pentru F1 = 0 şi F0 = 1 , se impune ca intrarea să fie I 1 = 0 şi I 0 = 1 , sau exact invers, I 1 = 1 şi I 0 = 0 , deoarece numerele 01 şi 10 generează prin incrementare bitul cel mai semnificativ, Q1 = 1 . Se pot folosi şi diagramele Veitch – Karnaugh de două variabile, I 1 şi I 0 , pentru fiecare combinaţie F1 , F0 . Expresiile cerute în problemă devin:
(
)
Q1 = F1 F0 I1 + F1 F0 (I1 ⊕ I 0 ) + F1 F0 I1 ⊕ I 0 + F1 F0 I1 Q0 = F1 F0 I 0 + F1 F0 I 0 + F1 F0 I 0 + F1 F0 I 0 b) Probabil că implementarea cea mai simplă se poate face folosind două multiplexoare cu câte 2 intrări de selecţie ( F1 şi F0 ) şi porţi (două inversoare, o poartă SAU-EXCLUSIV şi o poartă SAU-EXCLUSIV NEGAT). Lăsăm în seama cititorului găsirea altor soluţii posibile. .
3
CIRCUITE DE IMPULS
Aplicaţiile din acest capitol îşi propun să prezinte circuite secvenţiale regenerative, care generează şi prelucrează impulsuri. Este vorba de clasa circuitelor multivibratoare, care conţine circuite astabile, monostabile sau bistabile, realizate cu porţi logice sau cu circuite integrate specializate.
3.1 Consideraţii teoretice 3.1.1 Circuite astabile Circuitele astabile sunt circuite basculante care nu au nici o stare stabilă. Ele au numai două stări cvasistabile, iar trecerea de la o stare la alta se face fără comandă din exterior. Circuitul este de fapt un oscilator care generează semnal numeric. Cvasistabilitatea nu se referă la nivelele logice ale semnalului generat, ele sunt 0 logic sau 1 logic şi sunt perfect stabile pe o anumită durată de timp. Cvasistabilitatea se referă la faptul că nici unul dintre nivelele logice 0 sau 1 nu poate fi menţinut la ieşire un interval de timp oricât de mare. De aici rezultă şi denumirea circuitului. Durata şi frecvenţa impulsurilor generate de circuitul astabil depind de parametrii acestuia, de obicei determinaţi de reţele RC. Pentru o stabilitate ridicată a frecvenţei se utilizează cristale de cuarţ. Circuitele astabile pot funcţiona şi în regim de sincronizare declanşată sau comandată. În primul caz, la fiecare impuls de declanşare astabilul porneşte cu fază fixă a oscilaţiilor. În al doilea caz, se generează impulsuri atât timp cât la intrare există un semnal de comandă activ pe unul dintre cele două nivele logice. Circuitele astabile se pot implementa cu componente discrete, cu porţi logice sau cu circuite integrate specializate. Nu vom discuta în acest capitol implementările cu tranzistoare, iar folosirea circuitelor integrate specializate va fi discutată în secţiunea următoare a acestui capitol.
46
3 CIRCUITE DE IMPULS
Vout V2
V1
Vout
0V V1
R
VT 0V
C
Fig. 3.1 Circuit astabil cu porţi CMOS O schemă simplă de circuit astabil cu porţi CMOS este prezentată în figura 3.1. Vom neglija întârzierea semnalelor prin porţi şi vom presupune că nivelul de tensiune la ieşire se schimbă instantaneu când tensiunea de intrare atinge valoarea de prag VT. Dacă V1 atinge valoarea lui VT, inversoarele comută şi ieşirea Vout trece în 1 logic. Acest salt de tensiune este transmis prin condensator şi V1 devine VT + V+, unde V+ este tensiunea de alimentare a circuitului. De fapt, tensiunea nu poate fi chiar atât de mare, pentru că intervine limitarea din reţeaua de protecţie a intrării, dar deocamdată să neglijăm şi acest lucru. Condensatorul începe să se descarce prin rezistenţa R, iar când tensiunea pe el atinge din nou valoarea VT porţile comută din nou. Se produce un nou salt de tensiune pe intrarea V1, de la VT la VT - V+, cu aceeaşi observaţie de mai sus. Condensatorul se încarcă acum, iar când V1 atinge din nou valoarea lui VT, întregul ciclu se reia. Circuitul nu are o stare stabilă. Salturile de tensiune între nivele se produc cu o periodicitate determinată de elemente pasive R, C şi de pragul de tensiune VT. Pentru VT = V+/2 factorul de umplere este ½, iar frecvenţa este dată de relaţia: f =
1 . Cu 2,2 ⋅ R ⋅ C
acest circuit se pot genera impulsuri cu o frecvenţă stabilă de până la 1MHz. Pentru obţinerea unor frecvenţe stabile în timp (ceasuri electronice, calculatoare etc.) se folosesc astabile cu cristal de cuarţ. Din punct de vedere electric, cristalul oferă o impedanţă cu proprietăţi de circuit rezonant cu factor de calitate foarte mare. În figura 3.2 se prezintă simbolul convenţional pentru cristalul de cuarţ, circuitul electric echivalent şi variaţia reactanţei cu frecvenţa (dacă se neglijează rezistenţa r). Se constată existenţa unei rezonanţe serie la frecvenţa Ω S = 1 , şi a unei L⋅C
rezonanţe paralel la frecvenţa Ω P =
1 C ⋅ C0 L⋅ C + C0
.
X
r
L C0
C
X>0 (inductiv) fp
f
fs X
View more...
Comments