Sunteți pe pagina 1din 301

PARETEA a II-a ELECTRONICA DIGITALA

Partea I: Functii si circuite logice


Introducere Manualul de fata este conceput conform tematicii cursului DNC - Dispozitive numerice si calculatoare electronice, pentru studentii din anul III ai Academiei Navale Mircea cel Batran, Constanta. Cursul DNC cuprinde doua parti, corespunzatoare celor doua semestre: semestrul I: Functii si circuite logice (Partea a I a), semestrul II: Calculatoare electronice (Partea a II a). Pe durata semestrului I sunt repartizate, prin programa aprobata de Ministerul Apararii si Ministerul Educatiei si Cercetarii, un numar de 21 de sedinte de curs si cate o sedinta de laborator (seminar) pe saptamana. Tinand cont de acest lucru, materialul a fost conceput din cinci teme principale, fiecare cu cate un numar corespunzator de subteme, astfel incat sa acopere numarul total de 21 de sedinte de curs. Le vom prezenta, pe scurt, in cele ce urmeaza. Tema 1, contine doua subteme: T 1.1. si T 1.2. Se definesc sistemele de numeratie (mai ales sistemele binare si hexazecimale, devenite sisteme de baza in orice dispozitiv numeric modern), operatiile matematice (aritmetice) si operatorii corespunzatori, conversiile numerelor intre diferite sisteme de numeratie, precum si notiunile de semnal analogic, semnal digital si trecerea semnalului analogic in semnal digital, in vederea prelucrarii, stocarii. etc, folosind dispozitivele numerice. Nu se insista asupra operatiei de impartire, care in domeniul digital se executa prin repetarea operatiei de scadere si nici asupra numerelor zecimale fractionare, deoarece acestea sunt reprezentate in dispozitivele numerice moderne (computerul fiind cel mai complex dispozitiv numeric) folosindu-se conventia firgulei flotante (Floating Point), aceasta fiind expusa in partea a doua a cursului, respectiv: Calculatoare. Tema 2, cuprinde de asemenea doua subteme: T 2.1. si T 2.2. Sunt prezentate elementele de baza ale algebrei booleene: notiunile de variabila logica, expresie logica, functie logica in cadrul axiomaticii booleene, insistandu-se asupra sistemelor complete (fundamentale) de functii logice, precum si asupra minimizarii acestor functii. Pentru date culese din observarea unui desfasurarii unui fenomen, in conditiile repetabilitatii corespunzatoare a acestuia, prin precizarea variabilelor logice si folosind functiile logice elementare, se poate obtine functia logica mai complexa, care reda din punct de vedere logic explicarea functionarii acelui fenomen sau a ansamblului de fenomene aflate sub observatie. Indiferent de forma functiei respective, exprimata prin compunerea variabilelor logice, se poate trece, dupa minimizare (simplificarea expresiei functiei logice complexe), la implementarea acestei functii, adica la realizarea ei concreta, folosind elemente logice de un tip sau altul: pneumatice, hidraulice, relee electromagnetice cu seturi de contacte, porti logice electronice.. 3

Ultima categorie de elemente logice este luata de noi in consideratie, deoarece, datorita semiconductorilor si tehnologiei moderne de prelucrare a acestora se poate realiza o miniaturizare extrema, consum foarte mic de energie, siguranta in functionare si o mare versatilitate (complexitate oricat de mare a circuitelor, practic fara limite). Aceste elemente logice vor fi prezentate in cadrul Temei 3, tema urmatoare. Tema 3, continand sapte subteme (T 3.1, T 3.2, . T 3.7), se ocupa cu descrierea circuitelor electronice continute de portile logice din familiile de circuite integrate (CI) realizate cu tranzistoare bipolare (seriile: CI - TTL) si cu tranzistoare monopolare (seriile: CI - NMOS, CI - CMOS). Sunt prezentate circuitele portilor fundamentale, insistandu-se asupra fenomenelor de baza care caracterizeaza functionarea acestora: existenta a doua stari complementare in care se pot afla elementele active de circuit (dioda si tranzistorul bipolar - monopolar), respectiv starea de conductie, notata si starea ON si starea de blocare, notata starea OFF. S-au preferat aceste notatii (ON, OFF) pentru evitarea confuziilor generate de termeni preluati din limbajul comun (de exemplu: deschis inchis), care pot descrie aceste stari, dar pot duce la obtinerea de intelesuri opuse sensului normal. Aceste doua stari, prinse in jocul valorilor de tensiune (zero logic egal 0 Volti, unu logic egal +5 Volti, in cadrul logicii pozitive) sunt esentiale pentru intelegerea functionarii si a modului de concepere al portilor logice. Apare ca evident faptul ca fenomenele care au loc in jonctiunea p n si cele care folosesc efectul de camp constituie cheia intelegerii functionarii acestor circuite. Tema 4, contine patru subteme (T 4.1, T 4.2, T 4.3, T 4.4), care trateaza probleme legate de Circuitele logice combinationale (CLC), acestea fiind circuite complexe, care sunt formate din porti logice elementare, avand un set de variabile la intrare si un set de valori de iesire. Sunt ansambluri de porti logice, care apar ca blocuri logice cu functii precise: decodificator, multiplexor, sumator, comparator, .., etc, pana la memorii ROM si dispozitive logice programabile cu diferiti parametri si cu functii diverse. Tema 5, de-a lungul a sase subteme (T 5.1, .., T 5.6.), descrie Circuitele logice secventiale (CLS), care sunt, in esenta, o combinatie intre circuitele logice combinationale si elementele de memorare (celule bistabile). Circuitele bistabile, prin posibilitatea de memorare, ofera o mai mare capacitate circuitelor logice de a descrie mai complet unele fenomene sau situatii intalnite in natura. Ele constituie si elementul fundamental pentru conceperea blocurilor de memorii de tip RAM - Random Access Memory, strict utile pentru functionarea oricarui dispozitiv numeric.

Cuprins Tema 1: Sisteme de numeratie T 1.1: Numar pagina

..9 1. Sisteme de numeratie: zecimal, binar. Conversii. 2. Operatii algebrice cu numere binare. 3. Sistemul hexazecimal.

T 1.2:

15 1. Coduri zecimal - binare, coduri ponderate, coduri neponderate. 2. Coduri detectoare si corectoare de erori. Coduri alfanumerice. 3. Semnal analogic, semnal digital, digitalizare. Chestionar...24

Tema 2: Elemente de algebra booleana. T 2.1: . 25 1. Definitii. Operatori. Tabele de adevar. Axiome: 1 6.Teoreme: 1 5. 2. Functii booleene. Sistem complet de functii booleene.

T 2.2:

1. Forme ale functiilor booleene. 37 2. Minimizarea functiilor logice. Chestionar. 43

Tema 3: Poarta logica. Circuite poarta. Circuite integrate. T 3.1: ..45 1. Poarta logica: definitii. 2. Parametrii portilor logice. 3. Relatii intre parametrii portilor logice. Chestionar .. 57

T 3.2: Teoria comutarii. Comutarea dispozitivelor samiconductoare bipolare. 59 1. Regimul de comutare al diodei. 2. Regimul de comutare al tranzistorului bipolar. Chestionar. 71 T 3.3: Familii de circuite logice integrate - CI. 73 1. CI - DTL - parametri. 2. CI - TTL - seria clasica: normala, rapida, de putere redusa, - seria open collector ( CI - TTL OC) Chestionar. 88

T 3.4:

89 1. Poarta de putere, poarta de mare putere. 2. Seria TTL de putere redusa. Seria TTL rapida. 3. Seria TTL Schottky. Chestionar. 98 99 1. Seria TTL cu trei stari, TSL Three State Logic. 2. Parametrii circuitelor integrate TTL. 3. Circuite integrate ECL Emitter Coupled Logic. Parametrii. 4. Familia de CI - IIL (Integrated Injection Logic) Chestionar. .. 110 Circuite integrate cu tranzistoare MOS. .. 111

T 3.5:

T 3.6:

1. Tranzistorul MOS in regim de comutare. 2. Avantaje TR MOS. Avantaje TR bipolare. 3. Porti logice N MOS. 4. Porti logice CMOS (complementary symmetry MOS). Chestionar T 3.7: Porti C MOS.

125 127

1. Porti CMOS complexe. 2. Porti CMOS speciale. 3. Circuite integrate LVCMOS (Low Voltage CMOS). 4. Interfatarea TTL-CMOS si CMOS-TTL. Chestionar. .

139

Tema 4. Circuite logice combinationale (CLC). T 4.1: . 1. CLC cu CI TTL - MSI (Medium Scale Integration). 2. Decodificator BCD zecimal. 3. Multiplexor, demultiplexor (MUX, DMUX). 4. Sumatoare. Chestionar 141

155

T 4.2:

157 1. Comparatoare. 2. Circuite de incrementare, decrementaresi complementare fata de 2. 3. Hazardul logic. 4. Rejectia zgomotelor. Chestionar.. 166 6

T 4.3: . 167 1. Memoria ROM. 2. Variante de memorii ROM. Chestionar .. 177 T 4.4: Dispozitive logice programabile, PLD (Programmable Logic Device).179 1. Matricea logica programabila, PLA (Programmable Logic Array). 2. Matricea logica programabila cu nivel OR fix, PAL (Prgrammable Array Logic). Chestionar .. 192

Tema 5. Circuite logice secventiale (CLS) T 5.1: .193 1. Definitii. CLS asincrone si sincrone. 2. Circuite basculante (CB): bistabile CBB, circuite latch, CBB D. 3. CBB - Master-Slave. Chestionar206 207 2. CBB asimetric. 3. CBM - monostabile. 4. CBA - astabil. Chestionar.215

T 5.2:

T 5.3: 217 1. Numaratoare asincrone. 2. Numaratoare sincrone. 3. Numaratoare presetabile. 4. Numaratoare modulo C. Chestionar ..232 T 5.4: Circuite registru. 233

1. Registru paralel. 2. Registru de deplasare. 3. Registru serie paralel. 4. Memoriile FIFO, LIFO. Convertoare paralel seriale. Chestionar 245 T 5.5: . 249 1. Memoria cu acces aleatoriu, RAM. 2. Memoria RAM statica, SRAM. 3. Memoria RAM dinamica, DRAM. Chestionar .261 7

T 5.6:

. 263 1. Memorii DRAM. Parametrii de functionare. 2. Memoria DRAM sincrona, SDRAM. 3. Memoria adresabila prin continut, CAM (Content Addressable Memory). Chestionar . 272

PROBLEME - Enunturi 275 - Solutii ale problemelor propuse.. 281 ANEXA 1. Valorile curentilor pentru seriile de porti logice TTL.. Parametrii seriilor din familia TTL. 298

ANEXA 2. Nivelurile logice de tensiune pe intrare si iesire pentru familiile . 299 CMOS si TTL. BIBLIOGRAFIE. 301

Tema 1 : T. 1.1:

Sisteme de numeratie.

1. Sisteme de numeratie: zecimal, binar. Conversii. 2. Operatii algebrice cu numere binare. 3. Sistemul hexazecimal. 1. Sisteme de numeratie: zecimal, binar. Conversii.

Sistemul de numeratie, alaturi de alfabet si alte seturi de simboluri (printre care notele muzicale, simbolistica folosita in proiectare in cadrul diferitelor stiinte, etc) sunt elemente fundamentale ale civilizatiei umane. Nu insistam asupra evolutiei in timp a acestuia. Ne intereseaza legile care i guverneaza existenta, noi fiind obisnuiti cu sistemul zecimal in activitatea de zi cu zi. Un numar cuprins intre 0 si 9 necesita o singura cifra pentru reprezentarea sa, n timp ce numerele mai mari dect 9 necesita mai multe cifre pentru reprezentare, fiecare cifra avnd o pondere diferita. De exemplu, numarul o mie opt sute patruzeci si opt, exprimat prin patru cifre, poate fi considerat ca rezultatul operatiilor:
3 2 1 0

1848 = 1x10

8x10

4x10

8x10 .

Aceasta evidentiaza faptul ca fiecare cifra are o pondere corespunzatoare pozitiei pe care o ocupa in cadrul numarului: cifra aflata la extremitatea dreapta are ponderea 100, urmatoarea cifra are ponderea 101 , apoi 102, continund pna la ponderea n, n cazul general. In acest caz, 10 constituie baza sistemului de numeratie (zecimal n situatia de fata), iar cifrele 1, 8, 4, 8 sunt numiti coeficienti. Astfel, putem exprima orice numar, in orice sistem de numeratie sub forma urmatoare:
i= n

Q =

i =0

ci x bi

Datorita acestui mod de evaluare a numarului, putem sa spunem ca sistemul descris de aceasta formula este un sistem pozitional. Sa observam ca marimea bazei defineste si numarul de elemente folosite drept coeficienti. In cazul sistemului zecimal, baza fiind egala cu 10, vom avea 10 coeficienti, de la 1 la 9, la care se adauga elementul nul, 0, propriu oricarui sistem de numeratie, deci in total 10 elemente. Deci, elementul 1, notat element unitate, creeaza prin adaugarea unitatii la sine insusi celelalte elemente ale sistemului respectiv, la care se adauga elementul nul (zero), crendu-se sistemul de numeratie respectiv. Sistemul binar este un sistem de numeratie a carui baza este 2. Aceasta nseamna ca vor fi in total doua elemente si anume: - unitatea: 1, - elementul nul: 0. Deci, pentru exprimarea numerelor in acest sistem se folosesc doar doua cifre (1, 0), aceasta insemnnd ca vor fi necesare mai multe pozitii pentru coeficientii respectivi, comparativ cu oricare alt sistem de numeratie, a carui baza este mai mare dect 2. 9

In tabelul T 1.1.1 sunt date echivalentele intre sistemul binar si cel zecimal, cifrele fiind aranjate in functie de ponderile respective (puterile lui 2 pentru sistemul binar si puterile lui 10 pentru sistemul zecimal), fiind atasate si valorile sistemului HEXA, despre care se va vorbi mai trziu, pe orizontala pastrndu-se corespondenta.

BINAR 23 22 21 20 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

ZECIMAL 101 100 0 1 2 3 4 5 6 7 8 9 1 1 1 1 1 1 0 1 2 3 4 5

1 1 1 1 1 1 1 1

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

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

10

HEXA Baza 16 Tabel 1.1.1. De exemplu, numarul se poate desfasura:


3

1101binar, conform formulei


2 1 0

1101 = 1 x 2 + 1 x 2 = 13 zecimal

+ 0x2

1x2

Cu aceasta ocazie am facut, practic si conversia echivalentul sau ca numar zecimal, respectiv: 1101 Precizam ca elementele sistemului binar ( 0, 1 ) domenii ale cunoasterii umane, astfel, 1 semnifica si etc, iar zero (0) semnifica exact contrariile celor fals, neexistent, invalid. Conversia zecimal binara.

0 1 2 3 4 5 6 7 8 9 A B C D E F

prezentate mai nainte, 8 + 4 + 0 + 1

numarului binar n 13. au semnificatii si in alte adevarat, existent, valid, specificate mai inainte:

In general, cand se fac conversiuni dintr-o baza in alta, se vor efectua calcule conform unui algoritm de conversiune. Conversia din zecimal in binar inseamna efectuarea unor calcule, intr-o anumita ordine, pentru a folosi baza 2 in exprimarea numarului aflat in forma zecimala (adica, aplicarea unui algoritm, intelegand prin algoritm tocmai aceasta succesiune de operatii, desfasurate intr-o anumita ordine, respectand reguli impuse sau general valabile). Conversia zecimal binara a numerelor intregi se face dupa metoda impartirii repetate prin 2. Un numar intreg zecimal N poate fi exprimat in functie de puterile lui 2 sub urmatoarea forma:
n-1 n-2 1 0

N = a
n-1

x 2

a
n-2

x 2

++

a x 2
1

a
0

x 2 .

Putem scrie:
n-2 n-3

N = a
n-1

x 2

a
n-2

x 2

+ ..+ a ) x 2
1

a
0

= N x 2 +
1

a
0

Din ultima egalitate rezulta ca cifra cea mai putin semnificativa a2 din reprezentarea binara a numarului zecimal N constituie restul impartirii lui N cu 2. Analog, numarul N1 se divide pe mai departe cu 2, retinandu-se resturile respective, acestea avand semnificatia cifrelor din numarul in forma binara. Exemplificare: se cere trecerea numarului zecimal 53 in echivalentul sau binar. Vom aplica algoritmul prezentat mai sus:

53 : 2 = 26 + 1 26 : 2 = 13 + 0

a0 a1

= =

1 pondere 20 0 pondere 21 11

13 : 2 = 6 : 2 = 3 : 1 : 2 = 2 =

6 + 1 3 + 0 1 + 1 0 + 1

a2 a3 a4 a5

= = = =

1 0 1 1

pondere 22 pondere 23 pondere 24 pondere 25

Deci 53zecimal = 110101binar.

( reamintim ponderile: 25, 24, 23, 22, 21, 20 1 1 0 1 0 1)

2. Operatii algebrice cu numere binare. Operatiile aritmetice cu numerele binare sunt foarte simple si numai noutatea bazei 2 prezinta un oarecare inconvenient. Prezentam tabelul adunarii binare si un exemplu de adunare, mai jos: 0 0 1 1 + + + + 0 1 0 1 = = = = 0 1 1 10 Sa adunam: 1910 2310 19 + 23: 10011 + 10111 -------------101010

= 100112 = 101112

Verificare: 101010 = 32 + 8 + 2 = 42 = 19 + 23. Tabelul scaderii binare: 0 - 0 = 0 1 - 0 = 1 1 - 1 = 0 10 - 1 = 1 Sa scadem: 2610 1710 26 - 17: = 110102 = 100012 11010 10001 ---------1001 1 = 9 = 26 - 17 .

Verificare: 1001 = 8 +

Tabelul inmultirii binare: 0 0 x 0 = 0 x 1 = 0 Sa inmultim: 7 x 5: 12

1 x 0 = 0 1 x 1 = 1

710 510

= 1112 = 1012

111 x 101 -----------111 111 ------------100011

Verificare: 100011 = 32 + 2 + 1 = 35 = 7 x 5 .

3.

Sistemul de numeratie hexazecimal.

Este sistemul care are baza 16, insemnand ca are nevoie de 16 elemente, inclusiv elementul nul ( 0 ), astfel ca pe langa cele 9 elemente ale sistemului zecimal (1 9) se adauga A = 10, B = 11, C = 12, D = 13, E = 14, F = 15, asa cum este trecut in tabelul T 1.1.1. Aplicandu se aceeasi lege de formare a numerelor, dam cteva exemple. Trecem numarul 2BC8 - hexa, in format zecimal:
0 1 2 3

2BC8
16

= 8 x 16 + 12 x 16 + 11 x 16 = 8 + 192 + 2816

+ 2 x 16 = + 8192 = 11208
10

Transformam numarul zecimal 12632 in echivalentul sau hexa: 12632 = 3 x 163 344 = 1 x 162 88 = 5 x 161 8 = Deci, avem:
3 2 1 0 16

+ 344 = 3 x 4096 + 344. + + + 88 8 0.

8 x 160

12632
10

= 3 x 16 + 1 x 16 + 5 x 16 + 8 x 16 = 3158

Operatiile aritmetice cu numere hexazecimale au aceleasi reguli ca cele cunoscute pentru numere zecimale.

13

Pentru a reprezenta in computer alte caractere decat numere (litere, semne de punctuatie), au fost utilizate initial 6 cifre binare; astfel se puteau codifica 64 = 26 caractere. Foarte curand s-a ajuns in situatia de a nu putea satisface necesitatea de codificare a altor caractere, trecandu-se la codificarea folosind 8 cifre binare (opt biti, adica un octet), numarul maxim de caractere care puteau fi codificate crescand la 28 = 256. Mentionam si sistemul de numeratie octal, a carui baza este 8, deci contine elementele 1 7, plus, in mod inevitabil, elementul nul ( 0 ). Operatiile aritmetice se fac in mod asemanator celorlalte sisteme descrise mai sus. Daca sistemul zecimal este folosit in viata de toate zilele, celelalte sisteme (binar, hexa, octal ) sunt foarte importante pentru functionarea computerelor, in sistemele logice, etc...

14

T 1.2:

1. Coduri zecimal binare, coduri ponderate, coduri neponderate. 2. Coduri pentru detectarea si corectarea erorilor. Coduri alfanumereice. 3. Semnal analogic, semnal digital, digitalizare.

1. Coduri zecimal binare, coduri ponderate, coduri neponderate. Deoarece calculatoarele functioneaza folosind sistemul binar, a trebuit sa se gaseasca forma cea mai buna pentru a reprezenta in binar toate celelalte sisteme de numerotatie, care descriau evolutiile unor fenomene prelucrate prin metodele informaticii. In general, cu ajutorul a n cifre binare se pot realiza un numar de combinatii egal cu
n

2. De exemplu cu ajutorul a trei cifre binare ( pozitii succesive) pot fi realizate 8 combinatii, iar cu patru cifre binare 16 combinatii posibile. Acest lucru este foarte important, deoarece prin patru pozitii binare pot fi cuprinse toate elementele sistemului hexa ( cu baza 16 ), si desigur, elementele sistemului zecimal. In tabelul 1.1 avem descrisa aceasta corespondenta. Prin codificare se intelege tocmai aceasta schimbare a formei de exprimare a datelor, fie pentru a fi stocate, prelucrate sau transmise catre o alta destinatie, deci transformarea lor in informatii. Prin intermediul sistemului binar se pot codifica numere din sistemul de numeratie binar, octal, zecimal, hexazecimal, etc.... Coduri zecimal binare. Exista o clasa de coduri zecimal binare, numita BCD ( Binary Coded Decimal ), in care cele 10 elemente zecimale ( 1 - 9, si 0 ) trebuie sa fie continuta in multimea de termeni obtinuta prin gruparea a n cifre binare. Deoarece: 23 < 10 < 24 = 16,

15

numarul de cifre (pozitii, celule ) binare trebuie sa fie de patru. 10 Teoretic, numarul de coduri posibile este foarte mare ( A16 - aranjament de 16, luate cate 10, conform analizei combinatorice, adica zeci de miliarde), dar sunt alese anumite variante mai uzuale care pot fi divizate in: -coduri ponderate, -coduri neponderate. Coduri ponderate. Un cod ponderat asociaza fiecarei cifre zecimale o tetrada binara, iar ponderea fiecarui bit din tetrada este egala cu valoarea cifrei din denumirea codului. Cifra zecimala codificata se obtine prin suma pozitiilor binare ( le vom numi biti, desi vom denumi mai tarziu unitatea de informatie) ale tetradei binare. De exemplu, prin codul ponderat 8421, bitul zero are ponderea 1 = 20 , bitul unu are ponderea 2 = 21 , bitul doi 4 = 22 , si trei 8 = 23. Vom numi fiecare pozitie a unui cod cuvant de cod, asupra notiunii de cuvant vom reveni mai tarziu, fiind o notiune foarte importanta pentru explicarea functionarii elementelor digitale din orice sistem digital. Deoarece fiecare bit are ponderea numararii in binar si cuvintele de cod chiar numerele succesive in sistemul binar natural, acest cod se numeste si codul zecimal binar natural NBCD (Natural-Binary-Coded-Decimal), desi se numeste curent doar codul BCD. De exemplu, cifra 9 se codifica 1001, adica: 1x8 + 0x4 + 0x2 + 1x1 = 9.

Aceeasi regula de fixare a ponderii bitului din cuvantul de cod, egala cu cea din notatia codului, se respecta la toate celelalte coduri ponderate. De exemplu, pentru codul 2421: 1011 = 1 x 2 + 0 x 4 + 1 x 2 + 1 x 1 Pentru codul 4221 : 1001 = 1 x 1 + 0 x 2 + 0 x 2 + 1 x 1 Coduri neponderate. Cele mai uzuale sunt cele prezentate in tabelul T 1.2.1 , de mai jos:
zecimal

5zecimal.

5zecimal.

coduri 8421

ponderate 2421 4221 Exces 3

coduri

neponderate 8421 cu bit Gray


paritate

16

0 1 2 3 4 5 6 7 8

0000 0001 0010 0011 0100 0101 0110 0111 1000

0000 0001 0010 0011 0100 1011 1100 1101 1110

0000 0001 0010 0011 0110 1001 1100 1101 1110

0011 0100 0101 0110 0111 1000 1001 1010 1011

000 0001 0011 0010 0110 0111 0101 0100 1100

10000 00001 00010 10011 00100 10101 10110 00111 01000

11001 1101 1100 1111 1111 1001 9 Cuvantul de cod in EXCES 3 se obtine din cuvantul de cod 8421, al cifrei zecimale respective, la care se adauga 0011, adica 3 in binar. Sa observam ca a disparut cuvantul 0000, lucru foarte important in functionarea calculatoarelor, pentru ca daca se face referire la o adresa de memorie, disparitia cuvantului de cod 0000 ( practic, lipsa unei informatii ) implica neadresarea registrilor generali ( vom detalia aceasta in cele ce urmeaza). Codul Gray are proprietatea de adiacenta, in sensul ca trecerea de la o cifra zecimala la urmatoarea se face prin modificarea unui singur bit din cuvantul de cod. Acest cod este util pentru marimile care cresc succesiv (traductoare unghiulare de pozitie, codificarea in diagrama Karnaugh de minimizare a functiilor logice, etc...). Transmisia informatiei prin medii puternic influentate de zgomote poate fi insotita de introducerea de erori. Pentru detectarea eventualelor erori in transmiterea datelor in interiorul calculatorului sau din exterior spre interior si invers, se folosesc coduri speciale, dintre care prezentam codurile urmatoare. 2. Coduri pentru detectarea si corectarea erorilor. Coduri alfanumerice.

Una din cele mai utilizate metode de verificare a corectitudinii reprezentarii datelor printrun cod binar zecimal consta in introducerea in cod a unui bit suplimentar, denumit bit de paritate. Acesta se alege in asa fel ca numarul total al bitilor avand valoarea 1 in exprimarea numarului sa fie par sau impar. De exemplu, codul 8421 cu bit de paritate, pune in evidenta aparitia unei singure erori, aparitia a doua erori avand efectul de anulare a actiunii bitului de paritate. In tabelul 1.2 este trecut acest cod si se poate face comparatia cu codul 8421 simplu. Bitul de paritate este trecut intotdeauna in partea stanga a cuvantului de cod, neintervenind in continutul valoric al informatiei. O pozitie asemanatoare o are si bitul de semn, despre care vom vorbi cand vom trata problema functionarii memoriilor.

17

Mentionam ca exista o diversitate de coduri pentru detectarea erorilor, aceasta fiind o problema capitala inca de la construirea primului calculator, numit MARK I, de profesorul Howard Aiken, in anii 1939 1944, la Universitatea Harvard. In calculatoarele moderne, circuitele electronice sunt atat de sigure incat probabilitatea aparitiei unei erori este practic exclusa. In plus, exista o serie de programe de test care pun in evidenta eventuala eroare. Exista cazuri, in special la calculatoarele cuplate direct in conducerea unor procese industriale, cand mediul poate fi puternic perturbator, ca posibilitatea aparitiei erorilor sa fie posibila. In astfel de situatii este necesara nu numai detectarea erorii, ci chiar corectarea ei. Astfel au aparut codurile corectoare de erori, cel mai folosit fiind: Codul Hamming - pentru corectarea erorilor. Acesta foloseste sapte biti pentru reprezentarea unei cifre zecimale, patru pentru codificarea informatiei numerice si trei biti de verificare a paritatii, cum este aratat in figura F 1.2.1: 1 BP1 2 BP2 3 INF4 4 BP3 Fig. F 1.2.1 Bitii de paritate se calculeaza astfel: BP1 = INF4 + INF3 + INF1 + ( BP1 = 1) BP2 = INF4 + INF2 + INF1 + (BP2 = 1) BP3 = INF3 + INF2 + INF1 + (BP3 = 1) Daca transmiterea cifrei zecimale se face corect, toti bitii de paritate verifica corect paritatea. Daca apare o eroare in transmisiune, fie la un bit de informatie fie la un bit de paritate, aceasta eroare se poate corecta, dar, numai o singura eroare. In tabelul 1.2.2, de mai jos exemplificam o corectie. Se transmite 5 si se receptioneaza eronat 7. Se obseva ca transmiterea cifrei zecimale 5 = 0101, respectiv 5 = INF4-INF3-INF2-INF1, a fost receptionata gresit, aparand o eroare in transmiterea bitului de informatie din pozitia 6 5 INF3 6 INF2 7 INF1 cei 7 biti BP bit paritate INF bit informatie

Pozitia bitilor

Actiunea intreprinsa

18

1 BP1

2 BP2

3 INF4

4 INF3

5 BP3

6 INF2

7 INF1 Transmis

1 1 1

0 0

0 0 0

1 1

1 1 1

0 1

1 Receptionat 1 1 Paritatea 1 corecta Paritatea 2 corecta

0 1 1

1 1

1 Paritatea 3 incorecta 1 Corectat in pozitia 6

in loc de 0 (zero ), este 1. Mod ul de verifi care a parit atilor a fost stabil it anter ior.

Astfel, BP1 = INF4 + INF3 + INF1 + 1 = 0 + 1 + 1 + 1 = 1, fara sa tinem cont de transportul de unitate aparut. BP2 = INF4 + INF2 + INF1 + 1 = 0 + 1 + 1 + 1 = 1, deci gresit, pentru ca BP2 a fost receptionat cu valoarea 0. La fel, BP1 este incorect. Aceasta duce la corectarea automata a bitului INF2, pozitia 6, data de insumarea ponderilor 2 - BP2 si 4 - BP3, adica 2 + 4 = 6.

19

Tabel 1.2.2. Coduri alfanumerice. Deoarece calculatorul prelucreaza informatii reprezentate in forma binara, un element de informatie care face parte dintr-un grup poate fi codificat printr-o combinatie de cifre binare. Cu cat numarul elementelor din grup este mai mare, cu atat mai mare este si numarul de cifre binare (biti) necesarepentru a realiza aceasta codificare. Reamintim ca avand n biti la dispozitie, putem realiza un numar de 2n combinatii distincte. De exemplu, daca vrem sa codificam cele 26 litere ale alfabetului latin, vor fi necesare cel putin 5 cifre binare (biti), deoarece 2 la puterea 5 este : 25 = 32 si avem 32 < 26,

deci se pot exprima codificat in binar toate literele alfabetului, ramanand cateva combinatii neutilizate. Calculatorul prelucreaza informatia formata atat din numere, cat si din litere, semne de punctuatie, semne aritmetice, diverse simboluri etc... De aici necesitatea codului alfanumeric, care poate reprezenta numere, litere si alte caractere. Pentru acoperirea necesarului de combinatii se folosesc 7 biti, rezultand 128 de combinatii, eventual cel de-al optulea bit putand fi folosit ca bit de paritate. Exista doua coduri cu larga raspandire in lume: -ASCI I - American Standard Code for Information Interchange codul american standard pentru schimb de informatii; -EBCDIC Extended Binary Coded Decimal Interchange Code - codul pentru transferuri cu codificarea zecimal-binara extinsa. Ambele coduri folosesc 8 biti (codul ASCII are doar 7 pozitii semnificative, a opta fiind completata cu zero) pentru cuvantul de cod, aceasta formatie de 8 biti fiind numita octet sau bait (de la englezescul byte). De exemplu: caracterul A ------L cifra 3 apare in codul EBCDIC: 1100 0001 - - - - - - - - - - - - - - - - - - - 1101 0011 - - - - - - - - - - - - - - - - - - 1111 0011.

Daca exprimam continutul codului EBCDIC prin sistemul hexa avem, pentru aceleasi caractere de mai sus o alta prezentare: caracter EBCDIC hexa

A -- - - - - - - - - - - - - - 1100 0001 - - - - - C1 L - - - - - - - - - - - - - - - -1101 0011 - - - - - - D3 3 - - - - - - - - - - - - - - - -1111 0011 - - - - - - F3 20

Redam in tabelele T 1.2.3. si T 1.2.4. codurile, respectiv EBCDIC si ASCII.

Tabel

T 1.2.3. Continutul codului EBCDIC. 21

Tabel T 1.2.4. Continutul codului ASCII. 22

3.

Semnal analogic, semnal digital, digitalizare.

Trecand in revista sistemele de numeratie mai importante, am fost nevoiti sa utilizam notiuni care au o adanca semnificatie. Notiunea de informatie are mai multe definitii, in functie de domeniul de aplicare. In dictionarul de matematica si cibernatica, informatia este definita ca fiind o instiintare in general. Daca pornim de la ideea ca informatia este una din cele trei forme de manifestare ale materiei, alaturi de substanta si energie, atunci insasi incercarea de definire a informatiei este un nonsens, fiind un concept primar, axiomatic. Putem spune ca informatia este un mesaj, un semnal ce reflecta starea unui sistem sau a mediului in care acesta functioneaza si care aduce receptorului ei un spor de cunoastere. Informatiile se obtin in general din pocesul de prelucrara a datelor, dar nu se confunda cu datele. Data reprezinta o insiruire de caractere numerice sau alfanumerice, ce au o anumita semnificatie. Orice informatie este o data, dar nu orice data este o informatie, ci numai acea data ce aduce receptorului ei un spor de cunoastere. Toate formele de existenta ale materiei sunt si un suport de reflectare a informatiei. Semnalul electric (tensiune, curent, sarcina, etc), semnalul optic sau magnetic sunt suporturile cele mai potrivite in reprezentarea si procesarea informatiei. In electronica digitala ( digit = cifra in lb. engleza ) informatia poate lua numai valori discrete, care se reduc la doua niveluri considerate prin conventie : 1 (unu logic) si 0 ( zero logic). Pozitia in care se poate inscrie 1 sau 0 se numeste bit, abreviatie din lb. engleza: BInary digiT = BIT = cifra binara. Prin notiunea de cuvant se intelege o succesiune de biti. Pentru cuvintele de patru biti e folosita si denumirea tetrada sau nibble, iar pentru lungimea de 8 biti exista denumirea consacrata de byte, sau octet. In electronica exista doua grupe mari de semnale: analogice si digitale (discrete, numerice etc..). Pentru trecerea de la semnal discret la semnal analogic se folosesc diferite metode de interpolare, specifice domeniului care impune aceasta. Pentru trecerea de la semnalul analogic (1), care poate fi reprezentat printr-o curba continua ce reprezinta evolutia unei functii matematice, la cel digital (discret) se procedeaza prin: esantionare (2), cuantizare (3), digitalizare - numita si discretizare(4), asa cum se precizeaza in figurile de mai jos, figura F 1.2.2. Semnalul discretizat y* = f*(kT, ny) reprezinta practic cantitatea (numarul de cuante, ny) sau amplitudinea pe care o are semnalul analogic y = f(t), in momentul de timp kT, n si k fiind strict determinate in fiecare punct. 23

Aceasta cantitate poate fi exprimata in binar si astfel, pentru fiecare pozitie precisa in timp, kT, se cunoaste aceasta marime, putand fi memorata si prelucrata de un computer sau de orice dispozitiv numeric.

1) Semnalul analogic, reprezentat prin functia y = f(t).

2) Semnalul esantionat, cu o perioada de esantionare T.

3) Semnalul este cuantizat prin introducerea valorii de cuantizare: y

4) Semnalul este descris de valorile discrete, obtinute pentru diferite valori ale valorii kT, pe orizontala timpului si prin cuantificarea ny, care apare pe fiecare verticala.

F 1.2.2. Etapele procesului de discretizare a semnalului analogic, f(t).

24

Chestionar.

1. Cum definim sistemul de numeratie si care sunt elementele acestuia? 2. Ce semnifica notiunea de sistem pozitional de numeratie? Exemplificati. 3. Ce se intelege prin algoritm de conversie? 4. Considerand un sistem de numeratie cu baza 3, efectuati operatii de adunare, scadere si inmultire. 5. Cum definim notiunile de informatie si de data? Care este deosebirea dintre ele? 6. De ce este foarte folosit sistemul hexa in dispozitivele numerice? 7. Ce se intelege prin codificare? Dar prin cuvant de cod? 8. Cum definim codurile ponderate si codurile neponderate? 9. In ce consta importanta codurilor alfanumerice? 10. Care este cel mai simplu sistem de verificare a corectitudinii transferului de informatie? 11. Cum definim semnalul analogic si semnalul discret (digital)? 12. In ce consta procesul de digitalizare a unui semnal analogic? 13. Care este importanta transformarii semnalului analogic in semnal digital? 14. Care este importanta marimilor T si y in procesul de digitalizare?

15. Avand in vedere ca inversul perioadei T se numeste frecventa, notata cu f si masurata in Hertz-i (f [Hz] = 1 / T[Sec.]), cum este privit procesul de digitalizare din punctul de vedere al frecventei (de esantionare)?

25

Tema 2. Elemente de algebra booleana. T 2.1: 1. 2. Definitii. Operatori. Tabele de adevar. Axiome. Teoreme. Functii booleene. Sisteme complete de functii booleene.

1. Definitii. Operatori. Tabele de adevar. Axiome. Teoreme. Algebra booleana sau algebra logica este o metoda simbolica care permite studiul relatiilor logice. Denumirea sa a fost data in onoarea matematicianului englez George Boole (1815 1854), care prin lucrarea sa The Laws of Thought, publicata in 1853, a pus bazele acestei algebre. Considerata o simpla curiozitate la inceput, dupa aproape un secol, odata cu aparitia calculatoarelor numerice, a revenit in actualitate. In logica aristoteliana, al carei obiect il constituie stabilirea conditiilor corectitudinii gandirii, se opereaza pe baza de rationament, efectuat asupra unor propozitii. Se poate vorbi de logica propozitiilor, acestea putand sa fie adevarate sau false, demonstrandu-se acest lucru, de fiecare data. Sunt luate in considerare propozitii simple, care prin compunere, pot deveni mai complexe. Propozitiile compuse pot fi de asemenea adevarate sau false in functie de valoarea de adevar sau fals al propozitiilor simple, dar si de modul de compunere a acestora. Acest mod de compunere consta fie intr-o reuniune de atribute (caracteristici scoase in evidenta sau considerate necesare in cazul respectiv) continute de propozitiile simple, fie intr-o juxtapunere, o comparatie pentru identificarea unor atribute comune. Cu cat complexitatea propozitiilor (compuse) era mai mare, cu atat cautarea adevarului sau falsului prin demonstratie devenea mai greoaie. Este foarte adevarat ca dupa perioada Evului Mediu, cand algebra a inceput sa se dezvolte, a aparut calculul diferential (secolul XVII), care a impulsionat increderea in metodele si principiile matematicii, mai cu seama ca mecanica isi rezolvase majoritatea problemelor recurgand la metodele matematicii, si mai mult decat atat, le folosea permanent. Aceasta apropiere intre matematica si principiile ei (care apareau efectiv imbatabile, fara piedici, existand posibilitatea abordarii oricarui subiect din lumea naturala spre a fi explicat si stapanit) pe de o parte si principiile gandirii (logica), pe de alta parte, trebuia sa duca la acest simbolism al logicii formale, o logica distantata de concret. Postulatele lui Euclid au constituit o baza pentru dezvoltarea metodelor gandirii, deci inclusiv ale logicii. Algebra, ca un capitol al matematicii devenita criteriu absolut al adevarului, alaturi de calculul diferential si integral, oferea consistenta si posibilitati noi de abordare ale tututror problemelor. In vremea noastra (secolul XXI), cele trei stiinte aparute in a doua jumatate a secolului XX, ne referim la teoria sistemelor, informatica si mecanica cuantica, au creat posibilitatea unor interpretari diferite ale realitatii, situand pe primul plan constiinta umana si manifestarile acesteia.

26

Astfel, a fost descoperita si oferita lumii o noua logica, de catre Stefan Lupascu, capabila sa abordeze complexitatea lumii in care traim in perspectiva generarii si evolutiei sale: logica dinamica a contradictoriului. Nu avem spatiul necesar si nici nu este obiectul studiului de fata dezbaterea acestui extrem de important subiect. Sa reamintim ca demonstratia (logica) era o cale de urmat cu multa rigurozitate, inspirata din procedeele geometriei (Platon considera ca nimeni nu se poate ocupa de probleme filosofice daca nu cunoaste foarte bine geometria) . Este meritul matematicianului George Boole (1815 1854), care a interpretat constructiile logice din categoria logicii propozitiilor, nu din perspectiva geometriei ci, din punctul de vedere al algebrei, transformand domeniul rationamentului bazat pe propozitii intr-un limbaj formal, care opereaza cu simboluri. Opozitia adevarat / fals era reprezentata prin simboluri, alegandu-se elementele: 0 (zero, lipsa, fals.) si 1 (unitate, adevarat, existent, valoros), care au devenit astfel zero logic si unu logic, exact componentele sistemului binar. Astfel dispare orice legatura cu concretul, simbolurile logice putand avea orice sens, in functie de situatia sau fenomenul care era analizat cu mijloacele logicii formale. In loc de rationamente orale, discursive, intrau in actiune operatori fundamentali (se numesc fundamentali, deoarece prin compunerea lor se poate acoperi logic orice situatie luata in considerare), definiti precis. Daca rationamentul apartinand logicii propozitiilor putea fi vorbit si scris, deductiile logicii formale pot fi reprezentate fizic prin elemente care au in functionarea lor doar doua stari distincte: mecanice, electrice, electronice, pneumatice, hidrauliceetc, noi ocupandu-ne doar de elementele electronice din circuite electronice (care au aceste doua stari distincte, mai precis: stare de conductie, stare de blocare), asa cum vom vedea mai departe. Exista si logici formale care opereaza cu mai mult de doua elemente, numite logici polivalente, un caz special constituindu-l logica fuzzy (logica vagului), caz in care variabilele pot lua valori continue din intervalul [0, 1]. Sa precizam ca toate sistemele logice propuse, diferite de logica booleana, au la baza lor tot logica aristotelica (logica propozitiilor se transforma in variante ale logicii booleene), caracteristica lor principala fiind aproximarea cantitativa diferita, conform unor algoritmi diferiti de calculare a acestor cantitati. Doar logica dinamica a contradictoriului (Stefan Lupascu) este fundamentata pe baze diferite, avand in spate o profunda filosofie (toti marii logicieni ai lumii, printre care si romanul Anton Dumitriu, considerat cel mai mare logician al secolului XX, au sustinut ca este imposibila implementarea unei logici la nivelul unei societati umane, fara ca aceasta sa se bazeze pe o filosofie solida). Logica folosind doar doua stari logice se numeste logica binara, algebra logica binara sau mai simplu: algebra booleana. Cele doua elemente apartin sistemului binar, modurile de compunere (numite si legi de compozitie interna sau operatori fundamentali) ale celor doua elemente fiind urmatoarele trei: - disjunctia sau suma logica (OR / SAU), - conjunctia sau produsul logic (AND / SI) si - negatia sau complementarea (NOT / NON). Formal, ca orice sistem matematic deductiv, algebra booleana B(2) poate fi definita : - printr-o multime S a elementelor: S = {0, 1}, 27

- o multime a operatorilor elementari: - un numar de axiome si teoreme.

{ x, +, },

Conform acestei definitii, in algebra booleana variabilele nu pot avea decat doua valori posibile, notate simbolic prin 1 si 0, orice valoare intermediara neavand nici o semnificatie. Matematic, valoarea unei variabile logice este: A = 0, daca A = 1, daca A 1, A 0.

Variabilele logice (considerate ca marimi de intrare) sunt reunite cu ajutorul operatorilor pentru a forma expresii logice. Daca valoarea unei expresii logice o atribuim unei alte variabile, obtinem o functie logica. Orice functie poate fi exprimata cu ajutorul celor trei operatori care alcatuiesc multimea operatorilor din definitia algebrei booleene. Din acest motiv, acestia se numesc operatori fundamentali si conduc la functiile elementare. Redam mai jos modul in care trebuie inteleasa aceasta devenire:

n variabile + (n marimi de intrare)

operatori (+, , -)

expresii logice functii logice. f(x1, x2, xn, +,, -) (x1, x2,, xn, +, , -)

_ _ De exemplu, expresia logica: AB + AB sau exprimata altfel: _ _ x1 x2 + x1x2, reprezinta o expresie logica rezultata din combinatiile diferite ale celor doua variabile, indiferent cum sunt notate acestea, asa cum am precizat mai inainte. Daca atribuim acestei expresii logice valoarea: f(A, B) _ _ = AB + AB, sau _ x1x2,

_ f(x1, x2) = x1x2 +

inseamna ca avand valorile de intrare (variabilele: A, B sau x1, x2), am definit expresia logica care contine modul in care se compun variabilele de intrare respective, notate mai 28

inainte, si implicit functia logica: f(A, B) = f(x1, x2), ale carei valori vor fi stabilite de valoarea marimilor de intrare (variabile). Sa precizam, cu aceasta ocazie, ca din combinatia celor doua variabile, in respectiva asociatie, s-a definit un alt operator, compus din operatorii fundamentali, dupa cum se vede, operator numit SAU EXCLUSIV, pe care il vom descrie mai tarziu (sa nu confundam: nu este un operator fundamental, ci rezultatul unei compuneri ale acestora). Definirea functiilor elementare este pusa in evidenta prin metode grafice, sau tabele de adevar, prin care se prezinta valorile unei functii in raport cu toate combinatiile posibile ale valorilor variabilelor fata de care este definita functia, asa cum se arata mai jos:

Tabel de adevar al functiei logice: NU { , NOT} _ A F = A ------------------1 0 0 1

Tabel de adevar al functiei logice: SI {}sau{ x, AND, } A B F = AB ----------------------0 0 0 0 1 0 1 0 0 1 1 1

Tabel de adevar al functiei logice: SAU{ +}sau {U, OR} A B F = A+B --------------------------0 0 0 0 1 1 1 0 1 1 1 1

Algebra booleana B(2) este functional completa (ceea ce inseamna ca pentru o functie de un numar n de variabile, oricare ar fi acest n din corpul numerelor naturale, se genereaza doar o singura reprezentare sau expresie, neexistand posibilitatea de a exista si functii cu rezultate opuse primei functii; acesta fiind un corolar al teoremei completitudinii - Godel ), putand fi suport pentru implementarea sistemelor logice. Modul de actiune al unei functii logice poate fi materializat cu ajutorul circuitelor logice, cuprinzand simbolurile folosite pentru aceste circuite. Repetam ca variabilele logice vor fi notate fie cu litere mari (A, B, C, ) sau cu simbolurile algebrice consacrate (x1, x2, x3,, xn).

29

Axiome: 1 6. In scopul satisfacerii definitiei formale data algebrei booleene, se vor prezenta axiomele (postulatele) introduse de Huntington, cu precizarea ca aceste axiome nu sunt unice. Axioma 1. (Inchiderea). Multimea elementelor {0,1} = S este inchisa in raport cu operatorii: SI, SAU. Acest fapt este evident din analiza tabelelor de definire a functiilor elementare SI, SAU care conduc la valori 0 sau 1, deci nu exista alte elemente in afara de 0, 1. Altfel spus, oricare ar fi elementele binare x S, y S, x y, exista: x y S x + y S (corespunzator operatorului SI) si (corespunzator operatorului SAU).

Axioma 2. (Asociativitatea). Oricare ar fi elementele logice: x, y, z S, operatorii SI, SAU respecta asociativitatea: x (y z) = (x y) z, pentru operatorul SI; x + (y + z) = (x + y) + z, pentru operatorul SAU. Axioma 3. (Comutativitatea) Operatorii SI si SAU respecta axioma comutativitatii. Aceasta se poate observa si din simetria tabelelor de adevar care definesc functiile elementare SI, SAU: x y = y x; x + y = y + x.

Axioma 4. (Existenta elementului neutru). Exista un element neutru in raport cu operatorul SI si un element neutru in raport cu operatorul SAU. Din tabelele de adevar care definesc functiile SI, SAU rezulta: 1 1 = 1; 0 + 0 = 0; 1 0 = 0 1 = 0, 0 + 1 = 1 + 0 = 1, pentru operatorul SI; pentru operatorul SAU.

Generalizand, pentru orice variabila logica notata cu A, avem: x 1 = 1 x = x; 30

x + 0 = 0 + x = x, - elementul

adica:

neutru in raport cu operatorul SI este 1,

- elementul neutru in raport cu operatorul SAU este 0. Axioma 5. (Distributivitatea) Operatorii SI, SAU respecta axioma distributivitatii: x ( y + z ) = (x y) + (x z), distributivitatea operatorului SI; x + (y z) = (x + y) (x + z), distributivitatea operatorului SAU. Aceasta se observa formand tabelul de adevar pentru toate combinatiile posibile ale variabilelor A, B, C verificand apoi identitatea coloanelor pentru cei doi membri ai identitatii. Axioma 6. (Elementul de negatie sau existenta complementului). Pentru fiecare element x apartinand multimii S exista un element complement, astfel ca: _ x x = 0, _ x + x = 1. Din tabelul de adevar al functiilor SI, SAU rezulta: _ _ 0 0 = 0 1 = 0 si 1 1 = 1 0 = 0; _ _ 0 + 0 = 0 + 1 = 1 si 1 + 1 = 1 + 0 = 0. Aceste relatii verifica aceasta axioma. Observatie. O proprietate importanta a algebrei booleene este principiul dualitatii. Acesta este pus in evidenta prin faptul ca: fiecare relatie dedusa dintr-o axioma, ramane valabila daca operatorul si elementul de identitate (elementul neutru) se schimba. Daca o axioma, teorema sau expresie booleana este adevarata, atunci si forma sa duala este adevarata. Vom ilustra acest principiu prin prezentarea celor 10 relatii fundamentale ale algebrei booleene care cuprind, in forma concisa 5 axiome, fara axioma 1 (care nu este corelata cu nici o relatie), cele 5 teoreme, toate date in perechi (corespunzatoare celor doi operatori SI, SAU ), una find duala celeilalte, in tabelul T 2.1.1. Verificarea teoremelor se poate face cu ajutorul tabelelor de adevar sau folosind axiomele. De exemplu, teorema T 1 Idempotenta (x + x = x) se poate verifica astfel: x + x = (x + x) 1 conform Axiomei 4 (existenta elementului neutru _ forma cu SI), 31 _ x S denumit

= (x + x) (x + x) conform Axiomei 6 (existenta complementului _ forma cu SAU), = x + x x conform Axiomei 5 (distributivitatea, forma cu SAU), = x + 0 conform Axiomei 6 (existenta complementului, forma cu SI), = x conform Axiomei 4 (existenta elementului neutru, forma cu SAU). Se obtine astfel verificarea (demonstratia) teoremei T 1.
Denumirea Forma cu operatorul SI ( ) Forma cu operatorul SAU ( + )

Axioma 2. Asociativitatea. Axioma 3 Comutativitatea Axioma 4: Existenta elementului neutru Axioma 5. Distributivitatea Axioma 6. Existenta complementului. Teorema 1. Idempotenta sau tautologia Teorema 2. Legea lui zero si a lui unu. Teorema 3. Dubla negatie. Involutia. Teorema 4. Absorbtia. Absorbtia inversa.

x (y z) = (x y) z x y = y x x 1 = 1 x = x x (y + z) = x y + x z _ xx = 0 xx = x x 0 = x = x (x + _ x (x + _ x (x + = 0 x y) = x _ y) = x y y) = x y

x + (y + z) = (x + y) + z x + y = y + x x + 0 = 0 +x = x x + y z = (x + y) (x + z) _ x + x = 1 x + x = x x + 1 = 1 = x = x x + xy = x _ _ x + xy = x + y _ x + xy = x + y ______ _ _ x + y = x y

Teorema 5. De Morgan

_____ _ _ x y = x + y

T 2.1.1. Tabelul axiomelor si teoremelor logice.

32

2.

Functii booleene. Sisteme complete de functii booleene.

Fie B (2) = ({ 0,1 }, , +, ) algebra booleana binara, fiind compusa din doua variabile (elementele sistemului binar) si trei operatori, asa cum au fost descrisi mai inainte Un cuvant binar este o succesiune de biti, caracterizat de numarul de biti din aceasta succesiune. Cu doi biti se pot forma patru cuvinte distincte cu lungimea de doi biti: 00, 01, 10, 11. Cu trei biti se pot forma opt cuvinte distincte de trei biti : 000, 001, 010, 100, 011, 101, 110, 111. In general, cu n biti se pot forma 2n cuvinte distincte, fiecare cu lungimea de n biti. Definim functia booleana, f, cu n intrari si m iesiri, ca o aplicatie:
n m

f : { 0, 1} { 0, 1},
n m

cu domeniul de definitie in X = { 0, 1} si cu domeniul de valori in Y = { 0, 1}. Trebuie precizat ca termenul de functie booleana este sinonim cu functie logica. Functiile logice de o singura variabila sunt descrise de tabelul de mai jos.

f
0

f
1

f
2

f
3

0 1

0 0 | | |

0 1 | | |

1 0 | |

1 1 | functia tautologie, conectare la sursa de alimentare,

33

| functia inversor, functia de identitate, functia zero (conectare la masa). Prezentam si simbolurile aferente celor patru functii, figura F 2.1.1: f0 conectare la masa f1 functia de identitate f2 functia inversor f3 conectare la sursa de alimentare

F 2.1.1. Cele patru functii logice cu o singura variabila.

Functii de doua variabile. Pentru o functie de doua variabile multimea de definitie (domeniul) este compusa din cele patru cuvinte de intrare, asa cum s-a aratat mai inainte. Pentru cele patru cuvinte de intrare se obtin pentru functie 42 = 16 cuvinte, deci exista in total 16 functii diferite de doua variabile, care au denumiri ce exprima actiunea realizata, asa cum este prezentat in tabelul urmator:

x1 0 0

x2 0 1

f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 0 0 1 0 0 1 1 1 0 0 1 0 0 1 1 1 0 0 1 0 0 1 1 1 0 0 1 0 0 1 1 1

34

1 1

0 1

0 0

0 0

0 0

0 0

1 0

1 0

1 0

1 0

0 1

0 1

0 1

0 1

1 1

1 1

1 1

1 1

Semnificatia functiilor: 1. f0(x1, x2) = 0, se numeste functia zero. Indiferent de valorile variabilelor de intrare, x1, x2, iesirea este zero, adica legatura cu masa pentru un semnal electric. __________ 2. f1(x1, x2) = ( x1 + x2 ), se numeste functia SAU-NEGAT. __ 3. f2(x1, x2) = x1 x2, se numeste functia interdictie ( inhibare ), negarea implicatiei inverse. __ 4. f3(x1, x2) = x1, negarea lui x1. __ 5. f4(x1, x2) = x1 x2, functia interdictie, negarea implicatiei directe. _ 6. f5(x1, x2) = x2, negarea lui x2. _ _ 7. f6(x1, x2) = x1 x2 + x1 x2, functia negarea coincidentei, SAU-EXCLUSIV, XOR, numita si suma modulo 2. _____ 8. f7(x1, x2) = x1 x2, functia SI-NEGAT, NOT-AND. 9. f8(x1, x2) = x1 x2, functia conjunctie, produsul logic, SI, AND. _ _ 10. f9(x1, x2) = x1 x2 + x1 x2, functia SAU-EXCLUSIV NEGAT. 11. f10(x1, x2) = x2, nu depinde de x1. _ 12. f11(x1, x2) = x1 + x2, functia implicatie directa. 13 f12(x1, x2) = x1, nu depinde de x2. _ 14. f13(x1, x2) = x1 + x2, functia implicatie inversa. 15. f14(x1, x2) = x1 + x2, functia suma logica, SAU, OR. 16. f15(x1, x2) = 1, functia tautologie, este 1 indiferent de x1 si x2. Pentru functiile de trei variabile, multimea de definitie va contine 23 = 8 cuvinte binare de 3 biti si se pot defini 256 de functii diferite( 2 la puterea 8). Pentru n variabile numarul de functii logice distincte este de 2 la puterea 2 la puterea n:
2n

35

numar de functii: M = 2 Definim un sistem complet de functii logice: un set minimal de functii booleene (logice) elementare cu ajutorul carora se poate exprima orice functie booleana (logica) Operatorii SI, SAU, NU formeaza un sistem complet. La fel, operatorii SI, NU formeaza un sistem complet, precum si setul de operatori SAU, NU. Sistemul SI, NU ( AND, NOT) formeaza sistemul NAND. Sistemul SAU, NU ( OR, NOT) formeaza sistemul NOR. Acest lucru inseamna ca o functie logica, oricat de complexa, poate fi realizata fie cu elemente ale sistemului NAND, fie NOR, astfel incat putem vorbi chiar de logica NOR, sau logica NAND. Apare, deci, posibilitatea ca un sistem logic sa poata fi realizat doar cu un singur operator. Consecinta practica a acestei observatii este foarte importanta prin faptul ca implementarea unui sistem se poate obtine prin folosirea aceluiasi operator (acelasi tip de circuit), ceea ce duce la costuri scazute si o mai mare siguranta in functionare. Vom reveni pe parcurs asupra acestui lucru. Prezentam mai jos simboluri ale operatorilor logici si modelarea acestor operatori logici pe baza de NAND sau NOR, figura F 2.1.2, prezentata mai jos:

F 2.1.2.

36

37

T 2.2: 1. Forme ale functiilor logice (booleene). 2. Minimizari de functii. 1. Forme ale functiilor logice. Reamintim definitia functiei logice f, cu n intrari ( n variabile care nu pot avea decat doua valori; 0, 1) si cu m iesiri (de asemenea, cu valori in binar: 0, 1):
n m

f : { 0, 1} { 0, 1} Cu cele n variabile se pot compune, prin intermediul operatorilor AND, OR, si NOT, termenii functiei, este vorba de expresiile logice care compun in mod explicit functia. Un astfel de termen, continand toate cele n variabile, negate sau nenegate, legate intre ele fie prin insumare logica (OR), fie prin inmultire logica (AND) Termenul canonic produs este produsul logic a tuturor celor n variabile ale functiei, negate sau nenegate. Se mai numeste si minterm. Exemplu de termen canonic produs, pentru n = 3 (variabile) poate fi:
__

x3 x2 x1 Un termen canonic produs nu poate fi format din mai mult de n factori Un termen canonic produs se noteaza prin Pi. El poate avea valoarea 1 logic numai daca toti factorii sai au valoarea logica 1. _ Pentru exemplul prezentat deja, rezulta o unica configuratie de valori: x3 = 1, x2 = 0, x1 = 1, adica: 1 0 1. Aceasta valoare binara inseamna valoarea 5 in sistemul zecimal, mintermul respectiv putand fi codificat (notat) P5. Aceasta metoda de codificare trebuie sa fie respectata si in sens invers: pentru un minterm notat cu P7, valoarea 7 in binar: 1 1 1 impune valorile respective pentru variabile, astfel, x3 = 1, x2 = 1, x1 = 1. Rezulta regula de codificare a termenilor canonici produs: pentru variabilele negate se atribuie valoarea zero, iar pentru variabilele nenegate se atribuie valoarea 1 logic.

38

Termenul canonic suma este suma logica a tuturor celor n variabile ale functiei, negate sau nenegate. Se mai numeste si maxterm. Exemplu de termen canonic suma, pentru _ _ x3 + x2 + x1 n = 3 (variabile) poate fi:

Un termen canonic suma nu poate fi format din mai mult de n factori. Un termen canonic suma se noteaza cu Si. Acest termen are valoarea zero numai atunci cand fiecare termen al sumei are valoarea zero. Regula de codificare a termenilor canonici suma pentru reprezentarea unui maxterm prin simbolul Si: variabilelor negate li se atribuie valoarea 1 logic, iar variabilelor nenegate li se atribuie valoarea zero logic (fiind valabila si reciproca). Se observa ca la aceeasi variabila nenegata se atribuie valoarea 1 in minterm si 0 in maxterm si pentru aceeasi variabila negata se atribuie valoarea 0 in minterm si 1 in maxterm. Astfel, ca o consecinta a acestor reguli de codificare, se pot demonstra relatiile: _ _ Si = Pi; Pi = Si. Termenul canonic suma se obtine prin negarea termenului canonic produs si invers. La fel, pentru i j, I, j, = 0, 1, 2, 2n 1, se pot demonstra relatiile: Pi x Pj = 0; Si + Sj = 1, (conform Axiomei 6)

Forma canonica normala disjunctiva FCND a unei functii logice de n variabile este suma logica a tuturor termenilor ( mintermi) rezultati din toate combinatiile posibile ale celor n variabile ( adica, 2 la puterea n, asa cum s-a aratat mai inainte):
n i =2

f (x , x ,
n n-1

...x , x ) =
2 1

Pi
i=0

Trebuie sa precizam ca nu toti termenii ( mintermi) sunt egali cu 1 logic. Daca excludem acei termeni care sunt egali cu zero, se obtine Forma normal disjunctiva a functiei, notata FND. Forma canonica normala conjunctiva, FCNC , a unei functii logice de n variabile este produsul logic a tuturor termenilor (maxtermi) rezultati din toate combinatiile posibile ale celor n variabile:
n i=2

f ( xn , xn - 1 , ........ x2 , x1 ) = ( Si ).
i =0

Daca se exclud termeni egali cu zero, rezulta Forma normal conjunctiva, notata FNC 39

Sa precizam ca termenul canonic este termenul (mintermi sau maxtermi) care contine toate variabilele care apar in definitia functiei respective. Daca functia este definita pentru n variabile, fiecare termen canonic trebuie sa contina n variable (negate sau nenegate in mod diferit, de la termen la termen. Atunci cand un termen contine mai putine variabile, termenul se numeste necanonic, iar functiile logice se numesc corespunzator, Forme disjunctive, FD, ca o suma de produse, sau Forme conjunctive, FC ca un produs de sume. Dam mai jos tabelul termenilor canonici produs (Pi) si suma (Si) pentru n = 3 variabile:

variabile i 0 1 2 3 4 5 6 x1 0 0 0 0 1 1 1 x2 0 0 1 1 0 0 1 x3 0 1 0 1 0 1 0

mintermul si codul Pi _ _ _ x1 x2 x3 = P0 _ _ x1x2x3 = P1 _ _ x1x2x3 = P2 _ x1x2x3 = P3 _ _ x1x2x3 = P4 _ x1x2x3 = P5 _ x1x2x3 = P6

maxtermul si codul Si

x1+x2+x3 = S0 _ x1+x2+x3 = S1 _ x1+x2+x3 = S2 _ _ x1+x2+x3 = S3 _ x1+x2+x3 = S4 _ _ x1+x2+x3 = S5 _ _ x1+x2+x3 = S6 _ _ _ x1+x2+x3 = S7

x1x2x3 = P7

Sa reamintim: Pi = 1 cand toti factorii sai sunt egali cu 1. Exemplu: P7 = x1 x2 x3 = 1 Si = 0 cand toti membrii sumei sunt egali cu 0. Exemplu S0 = x1 + x2 + x3. 2. Minimizarea a functiilor logice. Formele normal disjunctive (FND) sau normal conjunctive (FNC) ale functiilor logice, respectiv la formele disjunctive - FD si formele conjunctiva - FC este un procedeu de minimizare a functiei, desi uneori nu se obtine forma minima sau se obtin mai multe expresii (neminime). 40

In general orice functie aflata sub forma canonica poate fi adusa la o forma mai simpla, care in ipoteza realizarii practice conduce la folosirea unui numar mai mic de componente logice (circuite logice) si un numar mai mic al intrarilor. Minimizarea functiilor este deci o problema foarte importanta. Exista trei modalitati de minimizare: 1 - Minimizare analitica - utilizand axiomele si teoremele algebrei booleene. Aceasta cale este eficienta doar pentru functii cu numar mic de variabile si de termeni. EXEMPLU. Se da functia F, definita de tabelul de adevar urmator. Explicitam functia luand in considerare valorile de 1, stabilind forma normal disjunctiva a functiei.

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

_ _ _ _ _ _ _ _ _ F = A B C + A B C + A B C + A B C + A B C . 1 2 3 4 5 Pentru a ajunge la o forma mai simpla, reunim termenii doi cate doi, dar adaugam un termen, conform teoremei 1 (idempotenta: A + A = A). Vom adauga termenii: _ _ _ ABC, Rezulta: _ _ _ _ _ _ _ _ _ _ F = A C (B + B) + B C (A + A) + A B (C + C) + A C (B + B). _ 41 _ _ A B C, _ A B C.

Conform axiomei 5 (element de negatie: A + A = 1), se obtine: F = __ __ _ _ _ _ __ _ _ _ AC + BC + AB + AC = C (A + A) + BC + AB = C + AB. A + AB = A

S-a folosit si teorema absorbtiei:

Deci, forma cea mai simpla a functiei date este: _ _ F = C + AB 2 - Minimizare prin metode grafice - utilizabile de asemenea pentru functii care nu au mai mult de 5-6 variabile, de exemplu diagrama Veitch Karnaugh. O functie booleana se reprezinta in diagrama Karnaugh prin introducerea cifrei 1 in casutele pentru care combinatiile variabilelor fac ca valoarea functiei sa aiba valoarea logica 1. De exemplu, functiei de doua variabile, F2, ii corespunde diagrama Karnaugh alaturata: _ A _ _ F2 = AB + AB _ B B 1 1 A

De obicei, nu se trec si variabilele negate. __ _ Pentru functia de trei variabile: F3 = ABC + ABC + ABC, avem diagrama de mai jos: A _____________ C- negat 1 1 ___________ B 1 C

Minimizarea unei functii logice cu ajutorul diagramelor Karnaugh consta in aducerea functiei la forma cea mai simpla, cautand in diagrama termenii adiacenti , aadica termenii care difera prin natura unei singure variabile, astfel incat, prin simplificare, din cei doi termeni rezulta un singur termen, exprimat printr-un numar de variabile mai mic cu o unitate.

42

Termenii rezultati astfel se numesc termeni elementari, acestia compunand forma minimizata a functiei, ca urmare, minimizarea functiilor cu ajutorul diagramelor Karnaugh consta in cautarea termenilor elementari. Pentru exeplificare, reconsideram functia F pe care am minimizat-o folosind metoda analitica. ___ _ _ __ _ _ F = ABC + ABC + ABC + ABC + ABC.

Reprezentarea functiei in diagrama Karnaugh este data mai jos: _______A______ _ C 1 1 1 1 1 _______B_______ Reunind initial termenii adiacenti ___ _ _ __ ABC + ABC = AC, _ __ _ ABC + ABC = AC. ___ ABC si _ _ _ __ ABC, respectiv ABC si ABC rezulta:

Considerand ultimele doua rezultate se obtine: __ _ _ AC + AC = C, _ adica cele patru casute din randul de sus se inlocuiesc cu un singur termen C. Acest rezultat se poate obtine direct din observarea diagramei. Apoi reunind termenii: __ _ _ ABC + ABC = AB, care corespund casutelor din partea dreapta, verticala, obtinem forma finala minimizata: _ _ F = AB + C, relatie identica cu cealalta, obtinuta analitic. Sa precizam ca pentru reprezentarea functiilor logice prin diagrame Karnaugh, functia trebui sa fie exprimata prin suma de produse logice, forma disjunctiva (FD). Un alt procedeu grafic de minimizare a functiilor booleene este cunoscut sub numele de metoda Quine McCluskey, folosita pentru functiile cu mai multe variabile.

43

3 - Minimizare prin algoritmi sau abordari euristice. Exista algoritmi care pot fi aplicati unor functii cu zeci de variabile si iesiri multiple. Acesti algoritmi stau la baza programelor de minimizare ( de exemplu Espresso-MV) incluse in medii de Programare Automata in Electronica, fiind vorba de tehnici EDA (Electronic Design Automation)

Chestionar.

1. Cum se defineste algebra logica? De ce este un sistem formal? 2. Ce inseamna variabila logica, espresie logica si functie logica? Dati exemple. 3. Care sunt operatorii logici fundamentali? 4. Ce semnifica Tabelele de adevar ? 5. In ce consta principiul dualitatii? 6. Care este diferenta dintre functia logica si functia booleana? 7. Care este legatura dintre numarul de variabile logice, numarul cuvintelor de intrare si numarul functiilor logice? Exemplificati. 8. Ce inseamna sistem complet de functii logice? 9. Cum se definesc sistemele NAND si NOR? 10. Cum se definesc termenul canonic produs (minterm) si termenul canonic suma (maxterm)? 11. Cum se definesc Formele disjunctive (FD) si Formele conjunctive (FC) ale functiilor logice? 12. Ce inseamna minimizarea functiilor logice si care sunt scopurile acestei operatiuni? 13. Care sunt m etodele de minimizare cele mai folosite? Exemplificati.

44

45

Tema 3. Poarta logica. Circuite poarta. Circuite integrate. T 3.1: 1. Poarta logica: definitii. 2. Parametrii portii logice. 3. Relatii intre parametrii portilor logice. 1. Poarta logica: definitii.

Cand se trece de la formele FND, FNC la FD, FC si de la modelele acestora pe baza de operatori NOT, AND, OR, NOR, NAND, la implementari reale pe baza de circuite electronice, pentru operatorii logici se foloseste, in exprimare, termenul de poarta logica. Daca implementarea functiilor logice se face cu alte tipuri de elemente logice (pneumatice, hidraulice, mecanice, electrotehnice, ), circuitul logic rezultat va purta numele tipului acestor elemente logice folosite (circuit pneumatic, circuit hidraulic, circuit logic cu relee, ). Folosim notiunea de circuit logic in sensul ca reteaua respectiva are un set de marimi de intrare (variabile logice de intrare) si un set de marimi de iesire (functiile logice, explicitate prin expresii logice), a caror valoare logica se stabileste dupa parcurgerea traseelor logice ale retelei, existand deci un sens de activare si parcurgere al elementelor tuturor componentelor. In cadrul circuitelor electronice, luate in considerare de noi, vom putea asigura functionarea acestor circuite, pentru a deveni suportul fizic al elementelor logice, bazandu-ne pe posibilitatea diodei (jonctiunea p-n) si tranzistoarelor (bipolare si monopolare) de a avea doua stari distincte clare: conductie si blocare. Aceste doua stari vor capata valori din algebra binara (prin conventie se stabilesc valori de tensiune care sa reprezinte fie zero - logic, fie unu logic) prin folosirea lor corespunzatoare. Prin termenul de poarta logica se face referire la orice circuit electronic care implementeaza un operator logic, deci exista: poarta poarta poarta poarta poarta inversor NOT, AND, OR, XOR, NAND, poarta NOR, ....etc.

46

Prin considerarea tuturor circuitelor logice elementare ca porti logice, se pune in evidenta transferul semnalului (variabile logice binare) prin circuit, in functie de o valoare de control, sau de comanda. Este evident ca orice intrare (variabila de intrare) sau iesire (functie) poate capata un nume, depinzand de importanta logica a variabilei respective in functionarea ansamblului logic; astfel apar semnale de comanda, semnale de control, semnal emis sau receptionat, etc. Considerand operatori logici cu doua intrari: - A , semnalul propriu-zis si - C , conditia de transfer a semnalului A catre iesirea f, adica f = A, circuitul electronic care implementeaza un astfel de operator are efectiv un comportament similar cu functionarea unei porti, asa cum se arata in tabelul de mai jos: T 3.1.1.

T 3.1.1.

Cand circuitul poarta este deschis, lasa semnalul A sa treaca spre iesirea f, iar cand poarta este inchisa, semnalul A nu se transfera la iesirea A. Intuitiv, poarta este inchisa sau deschisa de cineva, adica , in cazul circuitelor noastre, de un semnal de control, variabila C. De exemplu, pentru poarta AND cand este deschisa, C = 1, semnalul de intrare A se transfera la iesire f = A, iar cand este inchisa, C = 0, semnalul de intrare A nu se transfera la iesire, f avand continuu valoarea 0. Poarta XOR este ceva mai speciala, se mai numeste si functia NICI (nici A, nici C, adica atunci cand intrarile sunt identice iesirea este 0, cand sunt diferite, iesirea este 1).

47

Analizand poarta AND si poarta OR se poate observa ca poarta AND este deschisa pentru C = 1, iar poarta OR este deschisa pentru C = 0, astfel spunem ca una este deschisa cand semnalul C este activat in 1 logic, iar cealalta cand semnalul C este activat in 0 logic. Daca se considera valoarea 1 pentru o variabila binara, ca valoare adevarata, iar valoarea 0 ca valoare falsa, trebuie sa precizam ca in practica, se ia in considerare starea activa (adica starea care produce actiunea pentru care se justifica acea variabila), care poate fi 1 sau 0. Pentru valoarea falsa se considera variabila in stare de neactivare, care poate fi, de asemenea, 0 sau 1. In tehnica, de foarte mult timp, este utilizat un element ce prezinta doua stari: contactul unui releu. Celor doua stari ale contactului (inchis, deschis ) li se pot asocia elementele multimii binare (0, 1). Rezulta ca pentru circuitele cu contacte, denumite retele de comutatie, se poate aplica formalismului algebrei booleene, B(2); apare astfel posibilitatea de a formaliza proiectarea si analiza retelelor de comutatie. Acest formalism a fost prima data folosit de Claude Shannon in 1938 care a scos din arhiva matematicienilor algebra conceputa de George Boole (1852) si a aplicat-o in acest scop. Deoarece am folosit notiunea de semnal, trecand de la functia logica la implementarea practica prin circuite electronice, trebuie sa facem cunoscut conventia de logica pozitiva, conform careia semnalul respectiv este efectiv un nivel de tensiune, astfel incat pentru 1 logic se adopta o tensiune pozitiva (+5V in general) , iar pentru 0 logic nivelul de zero volti, adica conectare la masa electrica. Privitor la conventia de logica negativa, pentru 1 logic se fixeaza un nivel negativ de tensiune, iar pentru 0 logic nivelul de tensiune 0V, adica conectare la masa. Logica pozitiva este folosita acum aproape exclusiv in circuitele electronice, pentru fapul ca elementul activ, tranzistorul, este de tip n-p-n, cu alimentare +Vcc si masa = 0V, avand purtatorul majoritar de sarcina electronul, a carui mobilitate este mai mare decat a golurilor:

2,6

gol

Faptul ca electronii au viteza de deplasare mai mare face ca frecventele la care elementele de circuit lucreaza pot fi mai mari, avand in vedere ca discretizarea semnalelor impune procese de comutare deschis inchis, blocat conductie, pentru toate aceste elemente. Mai facem precizarea ca este folosit siliciul in tehnologia circuitelor electronice, pentru ca acesta are o mai mica dependenta de temperatura, fata de germaniu care este mult mai dependent.

2.

Parametrii portilor logice.

Am parcurs traseul de la expresie logica la un model al acesteia pe o retea de operatori care, fizic, sunt porti logice. Intr-o implementare de sistem, conectarea portilor logice nu este fara limite, ci trebuie sa se respecte anumite restrictii care sunt exprimate prin anumite valori si care sunt denumite parametrii de catalog ai portilor logice. 48

Prin parametrii ai unei porti logice se inteleg acele valori care ii caracterizeaza functionarea sa in interconectarea cu alte porti din aceeasi familie sau in conditii de test. Vom analiza pe rand urmatorii parametri: A. B. C. D. E. -imunitate la perturbatii, IP -timp de propagare, -factorii de incarcare la intrare si la iesire (FAN IN, FAN OUT) -consum de putere, -factor de merit.

Parametrii unei porti trebuie sa caracterizeze regimul de curent continuu, regimul tranzitoriu si regimul de zgomot. Acesti parametri sunt dati in catalog ca valori tipice (normale), precum si cu valorile pentru cazul cel mai defavorabil (conditiile cele mai defavorabile fiind cele legate de temperatura, umiditate, tensiunea de alimentare). Gama uzuala de temperatura este intre 0C - 70C, pentru aplicatiile civile si -55C +125C, pentru aplicatiile militare. Conditiile defavorabile pentru tensiunea de alimentare se specifica prin abaterile fata de valoarea nominala V, adica prin valorile V V. A. Imunitate la perturbatii. Va trebui sa precizam cateva notiuni, inainte de a defini acest factor. Nivelurile de tensiune. Intr-un circuit logic se poate face referire la doua niveluri constante de tensiune: -tensiunea de alimentare , VDD, VCC, -tensiunea de masa, 0V sau VSS.
-VEE

si

Aceste doua niveluri de tensiune sunt notate prin VH (tensiunea de alimentare, indicele H vine de la termenul High din limba engleza) si VL (tensiunea de 0 V, masa) si li se pot asigna cele doua valori ale multimii binare B = { 0, 1 }, conform conventiei de logica pozitiva, (conventia de logica negativa apare doar in cazuri speciale). Practic, cele doua niveluri de tensiune se extind la doua intervale de tensiune notate cu VH si VL ( H = high, L = low, respectiv sus si jos in lb. engleza), asa cum se arata in figura F 3. 1. 1 :

49

F 3. 1. 1. Niveluri de tensiune pentru valorile logice 1 si 0. Intre cele doua intervale de tensiune permise VH si VL, exista un interval de tensiune interzis, unde niciodata o poarta logica nu trebuie sa-si situeze valorile tensiunilor de intrare sau iesire. Existenta unui domeniu de tensiune pentru 1 logic si pentru 0 logic are o foarte mare importanta, deoarece astfel se insensibilizeaza circuitul la variatiile produse de modificarea tensiunii de alimentare, imbatranirea pieselor, temperatura, zgomot. Poarta logica are specificate in catalogul de componente nivelurile de tensiune garantate la iesire si nivelurile de tensiune permise la intrare. Prezentam, mai jos, in figura F 3.1.2 tensiunile de intrare si iesire la o poarta logica.

50

F 3.1.2. Niveluri de intrare si iesire pentru o poarta logica: a) definirea nivelurilor de tensiune H si L garantate la iesire si permise la intrare; b) caracteristica statica de transfer Vo = f(Vi), pentru o poarta inversor. Nivelurile garantate la iesire sunt acoperitoare in raport cu nivelurile de tensiune permise la intrare, pentru a preintampina influenta zgomotelor. Prin zgomot se intelege orice semnal electric care se suprapune peste semnalul logic. Aceasta acoperire se reflecta in parametrii: 51

- margine de zgomot in curent continuu pentru starea H : - margine de zgomot in curent continuu pentru starea L :

MH si ML.

In figura F 3.1.2 se prezinta aceste niveluri MH este diferenta dintre tensiunea de iesire minima garantata in starea H, VOHmin, si tensiunea de intrare minima permisa in starea H, VIHmin: MH V OHmin V IHmin.

ML este diferenta dintre tensiunea maxima permisa in starea L, VILmax, si tensiunea de iesire maxima garantata in starea L, VOLmax : ML = V ILmax V OLmax.

Valorile garantate la iesire si cele permise la intrarea unei porti pot fi corelate cu caracteristica de transfer VTC (Voltage Transfer Characteristic), VO = f(VI ), care exprima grafic dependenta statica intre tensiunea la iesirea portii, VO si tensiunea aplicata la intrarea portii, VI, in cazul de fata fiind vorba de un inversor. Aceasta caracteristica de transfer este desenata ca o banda punctata pentru a indica faptul ca portile de acelasi tip din cadrul unei familii de circuite au caracteristici ce nu se suprapun identic, ci sunt dispersate in aceasta banda. Imunitatea la perturbatii Se defineste prin tensiunile proportionale cu urmatoarele segmente din figura F 3.1.2: IP+ IP= = VOLmaxNy [ V ] VOHminNy [ V ].

Sa precizam ca punctul N este plasat pe bisectoarea definita de Vo = Vi, avand coordonatele V/2 pe orizontala Vi si Ny pe axa absciselor Vo. Daca din tensiunea de iesire a unei porti VOHmin se scade o tensiune de zgomot egala cu IP, iar aceasta tensiune se aplica la intrarea unei alte porti, nu va produce schimbarea iesirii acesteia, deci zgomotul nu va introduce semnale false in circuitul respectiv, asa cum se arata in figura respectiva. Daca poarta se afla in starea L si peste tensiunea VOLmax se adauga zgomotul IP+ va rezulta o valoare a tensiunii care nu va genera semnale false . In cazul in care, prin semnale ale zgomotului, se depaseste valoarea imunitatii la perturbatii ( + sau -) se pot produce semnale false, parazite, fiind afectata valoarea semnalului si functionarea portii logice nu mai este posibila. Pentru orice dispozitiv numeric, construit cu o multitudine de componente logice electronice (porti logice), trebuie asigurata acuratetea functionarii acestor componente in regim static (cand valorile de la intrare si de la iesire sunt stabilizate), precum si in regim dinamic (cand se produce schimbarea valorilor de la iesire din cauza schimbarilor variabilelor de intrare); in caz contrar dispozitivul respectiv devine inutilizabil. 52

Pentru aplicatiile din mediile cu zgomot de amplitudine mare se recomanda porti care au valori mari pentru imunitatea la perturbatii (IP+, IP-), acestea numindu-se porti cu imunitate ridicata la zgomot. Acestea au tensiuni de alimentare mari (pana la 30 V), deci punctul N (V/2, Ny) este destul de departat de origine si imunitate la zgomot mare, cum rezulta din figura F 3.1.2. Pentru a realiza o comparatie intre imunitatile la perturbatii ale diferitelor familii de circuite logice, se introduc coeficientii adimensionali factori de imunitate la perturbatii:

IP+ FIP [%] = 100 si V


+

IPFIP [%] = 100, V


-

V este saltul de tensiune intre nivelurile logice de tensiune 0 si 1 logic. Daca se ia in considerare cazul ideal, cand saltul de tensiune este egal cu tensiunea de alimentare, rezulta ca cei doi factori definiti mai sus sunt egali cu 50% si egali intre ei. In realitate, factorii de imunitate la perturbatii sunt mai mici decat 50%.

unde:

B. Timpul de propagare. Este un parametru care reflecta viteza de raspuns/comutatie a unei porti, adica intarzierea in timp intre momentul aplicarii semnalului logic la intrarea portii si momentul aparitiei semnalului la iesirea portii. In figura urmatoare, F 3.1.3 sunt precizate notiunile legate de propagarea semnalului. Deosebim urmatoarele valori: - pHL - timpul de propagare prin poarta la comutarea iesirii de la H la L, masurarea facandu-se intre punctele cu amplitudine 50%; - pLH - timpul de de propagare prin poarta la comutarea iesirii de la L la H, masurarea se face intre punctele cu amplitudine 50% ale variatiei semnalului de la intrare si de la iesire; - Tciclu - este intervalul de timp intre doua puncte identice pe doua cicluri succesive de variatie ale unui semnal. In practica circuitelor digitale se recomanda sa se respecte relatia: Tciclu ( 15 40 ) p, unde avem:

= (pHL

pLH)x 1 / 2
53

Timpul de propagare este dependent de structura portii si de sarcina comandata la iesire.

F 3.1.2. a) Definirea parametrilor de timp ai unui semnal care trece printr-o poarta inversoare; b) model simplificat. C. Factorii de incarcare la intrare si la iesire. Factorul de incarcare la intrare (FAN IN , input loading factor) reprezinta sarcina pe care o intrare o introduce cand este conectata la iesirea unei porti. In general pe fiecare familie de circuite logice se stabileste care este sarcina standard (se admite sarcina standard, sarcina care corespunde unei intrari de la o poarta NAND cu doua intrari). 54

In functie de tehnologia de realizare a portilor, sarcina de intrare se masoara in marimi fizice diferite. Pentru tehnologia bipolara, unde comanda se face printr-un curent injectat in baza unui tranzistor, sarcina se masoara in unitati de curent. Pentru tehnologia CMOS, unde comanda se face in tensiune pe o capacitate echivalenta de intrare, sarcina de intrare se masoara in unitati de capacitate. Referitor la o borna, care este un terminal al unei porti, unui curent care prin acea borna i se asociaza semnul +, iar unui curent care iese din borna i se ataseaza semnul - . In catalog este specificata sarcina maxima curent sau capacitate) pe care intrarea unei porti o prezinta pentru nivelurile permise de tensiune H si L. O poarta trebuie sa poata absorbi/genera la iesire un curent mai mare sau egal cu suma tuturor curentilor necesari generati/absorbiti de catre toate intrarile portilor care sunt conectate la acea iesire, dar in acelasi timp poarta trebuie sa asigure la iesire si nivelurile garantate de tensiune pentru stare H si L. Cu aceste valori necesare pe o intrare si disponibile pe o iesire se poate determina un factor de incarcare la iesire, FAN OUT ( output loading factor ) atat in starea L ( FIL), cat si n starea H ( FIH ), conform relatiilor: FIL = IOLmax/ IILmax, FIH = FI IOHmax/IIHmax,

= min ( FIL, FIH ), (factor de incarcare maxim)

Factorul de incarcare maxim FI este egal cu valoarea minima dintre FIL si FIH. Factorul de incarcare maxim exprima numarul maxim de intrari comandate de iesirea unei porti fara deteriorarea nivelurilor normale de tensiune. Ideal, FI ar trebui sa fie infinit, dar are valori de ordinul unitatilor pentru tehnologia bipolara si de ordinul zecilor pentru tehnologia CMOS. In general, iesirile sunt surse de niveluri logice 1 si 0 mai puternice decat intrarile (adica se produce si o oarecare amplificare a semnalului). Liniile de alimentare si masa sunt cele mai puternice surse de semnal pentru 1 si 0 logic; prin conventie, bara de tensiune de alimentare genereaza un curent, iar bara de masa absoarbe un curent. Un semnal poate fi intarit, adica sa fie facut capabil sa comande mai multe intrari. Acesta intarire (marire a curentului) prin intermediul unui etaj numit buffer / driver. Buffer-ul este un circuit care nu proceseaza semnalul, din punct de vedere logic, asa cum face o poarta logica, eventual il inverseaza (buffer inversor), dar ii mareste curentul (amplificare in curent). Circuitele buffer sunt realizate in grup de cate 8 sau 8 x 2 semnale, corespunzatoare unui byte sau doi byti. Unele porti au pe iesire un etaj buffer, caz in care se numesc porti cu iesire buffer-ata. Exemplu de calcul al factorului de incarcare maxim, pentru circuitele integrate din familia 74xxx : Valorile curentilor: intrare (I) ______________________ iesire (O) __________________________ 55

nivel H IIH max, A 40

nivel L IIL max, mA -1,6

nivel H IOH max, mA -0,8

nivel L IOL max, mA 16

FIL =

16 mA IOL max = 1,6 mA IIL max

= 10

IOH max 800 A FIH = = = 20 40 A IIH max

Factorul de incarcare (numarul maxim de intrari comandate de iesirea unei porti) este: FI = min{ 20, 10} = 10

D. Consumul de putere. Consumul de putere Pd (putere disipata) pentru portile unei familii rezulta ca o suma intre doua componente, una statica Pdcc si una dinamica Pdca: Pd = Pdcc + Pdca.

Consumul de putere in regim static (in c.c.) se defineste cu relatia: Pdcc = (PH
+

PL)x = (ICCH +

ICCL)xVCC x1/2,

unde avem:

ICCH , ICCL sunt curentii absorbiti de poarta de la sursa in starea H, respectiv L, VCC fiind sursa de alimentare a portii. De remarcat ca Pdcc este componenta principala de putere disipata la familia TTL, tipic 1mW/poarta, pe cand la tehnologia CMOS este neglijabila, cam 2,5nW/poarta. Consumul de putere in regim dinamic apare numai pe durata intervalelor de comutatie intre cele doua niveluri logice si se pot evidentia doua forme: -prin incarcarea si descarcarea capacitatilor din circuit, -prin scurtcircuitarea sursei de alimentare la masa pe durata fronturilor de comutatie.

56

In prima forma, puterea disipata apare prin incarcarea si descarcarea capacitatilor din circuit, care pentru simplificare, se considera ca o singura capacitate echivalenta ( capacitatile interne din circuit + capacitatea conexiunilor + capacitatile de sarcina). Se iau in considerare procesele de incarcare a acestei capacitati prin rezistente echivalente, de asemenea masurate prin metode speciale, ajungand la calcule prin formule consacrate. A doua forma pentru puterea disipata in regim dinamic apare datorita scurtcircuitarii sursei de alimentare la masa pe durata fronturilor de comutatie. Pe durata acestor fronturi, cand unele tranzistoare comuta din starea de blocat in starea de conductie, iar altele din starea de conductie in starea de blocat, exista un interval scurt cand toate tranzistoarele conduc, ceea ce duce la scurtcircuitarea sursei la masa (chiar daca exista unele rezistente pe anumite portiuni de circuit), aparand varfuri de curent in linia de alimentare a circuitului (VCC). Aparitia acestor varfuri de curent pe linia de alimentare pot sa provoace comutatii false la unele porti alimentate pe aceeasi linie. Puterea disipata de scurtcircuit pe fiecare poarta depinde de valoarea de varf a acestui curent, care este functie de tensiunea de alimentare Vcc, depinde si de frecventa de aparitie a comutatiilor. Puterea disipata de scurtcircuit este cu atat mai mica cu cat semnalele de comanda au fronturi mai abrupte (durata fronturilor trebuie sa fie cel mult a zecea parte din timpul de propagare, ca regula generala). Pentru circuitele CMOS, principala componenta de putere disipata este cea dinamica si reducerea ei se poate face prin micsorarea tensiunii de alimentare

E. Factorul de merit. Notat PDP (Power Delay Product) este un parametru sintetic, in sensul ca poate caracteriza poarta atat din punct de vedere al puterii disipate cat si din punct de vedere al timpului de propagare si este definit prin produsul dintre puterea disipata si timpul de propagare: PDP [Joule] = Pd [Watt] x p [s]. Acest parametru poate fi interpretat ca fiind energia consumata pe decizie logica, pe comutatie. Poate fi de ordinul pJ sau chiar mai mic.

3.

Relatii intre parametrii unei familii logice.

Poarta logica ideala ar trebui sa prezinte simultan valori foarte bune pentru toti parametrii: factor de incarcare foarte mare, imunitate la perturbatii egala cu jumatatea tensiunii de alimentare, timpul de propagare nul, puterea disipata nula, 1 logic sa aibe echivalentul in tensiune exact tensiunea de alimentare, 0 logic sa fie chiar masa. 57

Pentru o astfel de poarta inversor, de exemplu, asa cum este aratat in figura F 3.1.2. caracteristica ar fi de tip releu fara histerezis, cu panta infinita la tensiunea de intrare V/2. Practic, optimizarea simultana a tuturor a tuturor parametrilor este contradictorie. - Marirea excesiva a factorului de incarcare atrage un curent absorbit de valoare mai mare de la sursa, determinand marirea puterii disipate, iar daca sarcinile comandate sunt capacitive, marirea acestora duce la cresterea timpului de propagare. - Micsorarea timpului de propagare implica fortarea regimului de comutatie prin marirea tensiunii de alimentare sau prin micsorarea rezistentei circuitului, ceea ce duce la curenti mari absorbiti de la sursa, deci cresterea puterii disipate. - Micsorarea puterii disipate prin scaderea curentilor duce la marirea timpului de propagare. - Cresterea factorului de imunitate ar necesita un salt logic de tensiune cu valoare marita, ceea ce este posibil prin marirea tensiunii de alimentare, deci implicit marirea puterii disipate. Tendinta de optimizare simultana a tuturor parametrilor intre anumite limite rezonabile pentru aplicatii eficiente a dus la crearea unei serii standard de circuite in cadrul unei familii, avand parametri standard cvasioptimali. In paralel cu seria standard, exista serii speciale care optimizeaza doar un singur parametru, ceilalti fiind mentinuti in limite acceptabile. Astfel exista seria de viteza ridicata, de putere redusa, seria de viteza ridicata si putere redusa, seria cu imunitate sporita.......etc. Portile logice pot exista fie ca entitati separate sub forma unor circute integrate discrete, care sunt utilizate in realizarea unor sisteme mai complexe, fie pot exista in interiorul unui sistem complex realizat in totalitate integrat. Pentru portile logice realizate discret, care se interconecteaza in exterior cu alte porti, respectarea parametrilor este foarte stricta. In schimb, pentru portile logice dintr-un sistem integrat unde interconexiunile se fac in interior, valorile parametrilor pot fi mai putin restrictive.

Chestionar.

1. Ce se intelege prin poarta logica? 58

2. Dar prin retelele de comutatie? 3. Cum definim conventia de logica pozitiva (logica negativa)? 4. Care este legatura dintre logica pozitiva si tipul de elemente de circuit? De ce tensiunea de alimentare are minusul la masa, aproape in toate dispozitivele numerice? 5. Ce intelegem prin parametrii portilor logice si care sunt cei mai importanti dintre acestia? 6. Cum definim zgomotul? Ezista diferente intre zgomot si perturbatii? 7. Care este semnificata timpului de propagare? 8. Ce reprezinta factorul de incarcare maxim? 9. Cum definim buffer-ul si care este rolul sau in dispozitivele numerice? 10. Care sunt efectele micsorarii timpului de propagare?

59

Tema 3.2.

Teoria comutarii. Comutarea dispozitivelor semiconductoare bipolare.

1. Regimul de comutare al diodei. 2. Regimul de comutare al tranzistorului bipolar.]

60

1. Regimul de comutare al diodei. Transferul, prelucrarea si pastrarea datelor numerice sau nenumerice in interiorul unui dispozitiv digital se realizeaza prin intermediul circuitelor de comutare. Aceste circuite, construite cu diode si tranzistoare, se caracterizeaza prin faptul ca prezinta numai doua stari stabile, deosebite net intre ele, puse in corespondenta cu valorile binare 0 si 1 sau cu valorile logice adevarat si fals. Pentru acest motiv circuitele de comutare se mai numesc si circuite logice. Modul in care se modifica starile unui circuit de comutare in functie de semnalele aplicate la intrarile sale se poate urmari pe reteaua de comutare sau schema logica a circuitului, un model al circuitului in care nu se tine cont de natura fizica a elementelor acestuia. Modificarea curentilor si tensiunilor din cadrul circuitului de comutare, ca urmare a semnalelor aplicate la intrarile sale se poate urmari pe schema electronica a circuitului. Deci, cunoasterea completa a unui circuit de comutare comporta cunoasterea schemei logice a acestuia si cunoasterea schemei electronice a circuitelor de comutare elementare componente si a legaturilor dintre ele. Diodele si tranzistoarele sunt construite folosind proprietatile materialelor semiconductoare (materiale care conduc curentul electric, dar cu valori foarte mici ale acestuia, spre deosebire de materialele conductoare metalele sau materialele izolante, care nu permit trecerea curebtului electric). Aflate in grupa IV din tabelul lui Mendeleev, deci patru electroni de valenta (electronii de pe ultimul strat), Germaniul (Ge) si Siliciul (Si) s-au pretat cel mai bine operatiiilor tehnologice de purificare (pentru realizarea materialului pur), pentru ca apoi sa poata fi prelucrate in functie de tipul de component electronic de circuit care se dorea obtinut. Faptul ca aceste materiale au o structura cristalina (ne putem imagina o structura formata din cuburi asezate unele langa altele, in directia axelor rectangulare ale spatiului tridimensional, in colturile cuburilor aflandu-se atomii materialului respectiv), a permis aparitia procedeelor tehnologice de insertie a unor elemente straine (numite impuritati) in aceasta structura, de aici rezultand cele doua tipuri de semiconductoare (tip p si tip n), alaturi de semiconductorul intrinsec (natural, in stare purificata). Cand impuritatile introduse in structura unui cristal semiconductor intrinsec aveau trei electroni de valenta (sau cinci electroni de valenta), se producea o redistribuire a electronilor din ultimul strat, pentru satisfacerea necesitatii ca fiecare atom sa aiba pe ultimul strat un numar de opt electroni (este o lege a naturii), stabilizati prin legaturi covalente. In primul caz, al impuritatilor trivalente, apareau in structura cristalului pozitii in care era lipsa un electron (tradus ca fiind un gol, respectiv o sarcina electrica pozitiva), desi cristalul era neutru din punct de vedere electric in ansamblul sau. Spunem ca s-a format un nou tip de cristal semiconductor, de tip p (p vine de la faptul ca sarcinile respective sunt pozitive). In al doilea caz, al impuritatilor pentavalente, apareau in structura cristalului pozitii care aveau un electron in plus, deci o sarcina electrica negativa. Spunem ca s-a format tipul n de cristal semiconductor (n venind de la sarcina negativa a electronului respectiv). Tot prin mijloace tehnologice se poate realiza o alipire a doua cristale de tip p si de tip n, aparand in zona alipirii asa-zisa jonctiune p-n, ale carei proprietati sunt puse in valoare prin aplicarea unor tensiuni electrice pe terminalele fixate pe cele doua extremitati ale ansamblului de cristale. 61

In figura F 3.2.1 apare jonctiunea p-n, supusa unor tensiuni U cu polaritatile bine precizate, urmand sa analizam compunerea campurilor electrice si in functie de aceasta, starea electrica a intregului ansamblu.

a)

b)

F 3.2.1. Jonctiunea p-n. a) starea de blocare a jonctiunii, datorita polaritatii tensiunii U; b) starea de conductie a jonctiunii. S-au folosit notatiile urmatoare: - Ej - campul electric al jonctiunii p-n, considerat orientat de la + la -, prin conventie, aceasta conventie fiind respectata in toate situatiile; - Eu - campul electric generat de polaritatile tensiunii continue U; - Er - campul electric rezultat prin compunerea campurilor jonctiunii (Ej) si a celui generat de aplicarea pe terminalele A si K a tensiunii continue U. In partea a) a figurii F 3.2.1, se observa jonctiunea aparuta in urma alipirii celor doua cristale, prin difuzia sarcinilor dintr-o parte in cealalta. 62

Aceasta difuzie nu poate continua pana la anihilarea tuturor sarcinilor, deoarece apare ansamblul campurilor electrice generate de fiecare sarcina in parte si se instituie astfel un echilibru intre fortele de atractie si de respingere caracteristice sarcinilor electrice. Sa reamintim ca efectul de camp consta tocmai in aparitia fortelor de atractie intre sarcinile opuse si a fortelor de respingere dintre sarcinile de acelasi semn. Prin aplicarea tensiunii continue U pe terminalele metalice ale cristalului se observa ca cele doua campuri electrice se insumeaza (Er = Ej + Eu), ceea ce are ca efect marirea zonei jonctiunii p-n si implicit imposibilitatea existei unui curent electric intre cele doua terminale. (Exista, totusi un curent foarte mic, notat cu Io, curentul invers de saturatie, despre care vom vorbi mai tarziu). Aceasta stare a cristalului este numita starea de blocare. Tensiunea U aplicata celor doua terminale, in acest caz, se numeste tensiune inversa, jonctiunea p-n fiind polarizata invers. In partea b) a figurii F 3.2.1. se schimba polaritatea tensiunii U si astfel campul electric al jonctiunii p-n este anulat, practic jonctiunea dispare si nimic nu mai poate opri trecerea purtatorilor de sarcina intr-un sens sau altul. Tensiunea U aplicata jonctiunii p-n se numeste, in acest caz, tensiune directa si se poate spune ca este o polarizare directa a jonctiunii. Se stabileste un curent intre cele doua terminale, cristalul aflandu-se acum in starea de conductie. Valoarea acestui curent este data de formula de mai jos:

U UT

kT

I = I0 (e

- 1),

unde UT = qe

26 mV;

UT I0 qe

- este tensiunea termica (la temperatura normala, 300C este de 26 mV) - este un factor care tine seama de recombinari (Ge = 1, Si = 2 ) - curentul invers de saturatie, - sarcina electrica a electronului.

Conform relatiei de mai sus dioda este polarizata direct daca U > 0, adica zona p are un potential mai ridicat decat zona n (daca, de exemplu pe terminalul A - anod avem potentialul de -2V, iar pe terminalul notat K catod exista un potential de -5V, intre cele doua terminale exista o diferenta de tensiune de 3V = -2 - (-5), adica anodul este mai pozitiv decat catodul cu 3V, deci este polarizare directa si prin jonctiune trece curentul corespunzator acestei tensiuni. Cazul este similar cu aplicarea a +3V pe anod si 0V pe catod.) Acest ansamblu de cristale care formeaza jonctiunea p-n, impreuna cu terminalele A si K aplicate pe zonele de capat, metalizate, se numeste dioda semiconductoare (doua terminale) si este un component important pentru electronica analogica sau digitala. Simbolul si caracteristica tensiune curent a unei diode este data in figura F 3.2. 2 de mai jos: 63

F 3.2.2. Simbolul diodei si caracteristica I = f(U). Graficul are doua zone distincte: - U < U , caracteristica se apropie de o dreapta ce coincide cu abscisa I = 0 - U > U , caracteristica este o dreapta cu panta egala cu = arctg1/Rd. Curentul Io este curentul invers de saturatie, asa cum s-a precizat mai inainte, valoarea lui depinzand de fiecare material in parte (Ge sau Si). Tensiunea U se numeste tensiunea de prag, fiind valoarea tensiunii de la care incepe sa creasca sensibil curentul prin dioda. Aceasta tensiune reprezinta si cheltuiala de tensiune necesara pentru infrangerea campului electric al jonctiunii (Ej) despre care s-a vorbit, fiind o caracteristica care depinde de material. Rezistenta Rd se numeste rezistenta diferentiala si se poate calcula astfel:

dI Gd = = dU

Io eU / UT UT

I + Io = UT

I 1 = , UT Rd

UT Rd = . I Deci, rezistenta dinamica depinde de curentul prin dioda. Dam, mai jos, valorile acestor parametri: Rezulta: Material Io [A] U [V] Rd [] 64

Germaniu Siliciu

5 0,05

0,2 0,6

20 15

Trebuie sa retinem ca dioda cu Siliciu in stare de conductie apare ca o rezistenta de valoare foarte mica (in jurul a zeci de ), pe care exista o cadere de tensiune de 0,6 0,7V, lucru de mare importanta pentru analiza circuitelor electronice din paginile urmatoare. In stare blocata, dioda apare ca o intrerupere a circuitului, daca nu se ia in considerare curentul invers de mica valoare, practic zero. Vom lua in considerare numai diodele cu siliciu deoarece acestea au o dependenta mica fata de temperatura, in comparatie cu diodele cu Germaniu si curentul invers saturat (Io) de valori foarte mici. In figura de mai jos sunt aratate echivalentele (prin sageti), din punct de vedere al circuitului electric (se tine cont de valoarea curentului si a tensiunii din circuite), situatiilor cand dioda este deschisa, prima situatie (figura F 3.2.3.) si cand dioda este blocata, a doua situatie (figura F 3.2.4.) In serie cu dioda este introdusa o rezistenta cu rolul de a limita curentul prin dioda, protejand-o astfel.

F 3.2.3. Dioda D conduce - este ON. Echivalenta diodei aflate in starea de conductie este aproximata printr-o legatura directa intre cele doua puncte in care se afla conectata (punctele A si B din circuitul de mai sus). Deoarece dioda conduce, prin ea va trece curentul I pe care il calculam: U - UD UR I = = U - 0,7 = U , deoarece U >> 0,7V 65

Daca R >> Rd, se considera Rd = 0, adica inca un motiv ca dioda aflata in starea de conductie sa fie considerata ca o legatura directa, asa cum este aratat in figura F 3.2.3. Pentru situatia cand dioda este blocata (nu conduce, starea OFF) avem urmatoarea figura:

F 3.2.4. Dioda D nu conduce - este OFF. Echivalenta diodei blocate (OFF) din punct de vedere al circuitului electric este clar aratata, deoarece curentul prin dioda este nul (I = 0) dioda apare acum ca o intrerupere a circuitului, astfel incat, tensiunea de la borne (U) se poate masura intre punctele A-C sau intre punctele A-B. Putem spune ca dioda in regim de comutatie va prezenta o rezistenta foarte mica in circuit (practic nula) atunci cand va fi polarizata direct (potential pozitiv la Anod fata de Catod) si va fi ca un intrerupator care desface o legatura, cand va fi polarizata invers. Timpii de comutatie sunt foarte mici si se iau in consideratie numai cand dioda lucreaza la frecvente foarte mari; sunt diode construite special pentru asemenea situatii (diode rapide). Studiul regimului de comutare al unui dispozitiv electronic prezinta doua aspecte: analiza starilor stationare (blocare, conductie) si analiza proceselor tranzitorii de la o stare la alta. In regimul de comutare, pot aparea supratensiuni, mai ales la revenirea in starea de blocare (OFF), datorita energiei inmagazinate in inductivitatile din circuit (care sunt totusi de valoare mica, mai ales in dispozitivele numerice). Noi am analizat dioda din punct de vedere al parametrilor statici de comutare, accentuand asupra desfasurarii fenomenelor respective ce au loc in interior. Prezentam, mai departe, doua circuite logice realizate cu diode: circuitul SI (F 3.2.5), urmat de circuitul SAU (F 3.2.6.). Figura a) arata circuitul realizat cu componente discrete: doua diode (D1, D2) si o rezistenta R, rolul acesteia fiind sa separe bara de alimentare (sursa, identica cu 1 logic) de linia de masa (masa fiind identica cu 0 logic). Figurile b), c), d) arata care din diodele D1 si D2 sunt in stare ON sau OFF, in functie de valorile logice pe care le iau variabilele A si B. 66

Astfel, pentru b), A = B = 0 determina iesirea F = 0, deoarece ambele diode sunt deschise: este respectata conditia de a conduce (ON) a diodelor, avand anodul conectat la sursa (1 logic) prin rezistenta R, deci mult mai pozitiv fata de catod care este conectat la 0V = 0 logic prin valorile variabilelor A si B. Doar in figura d), unde A = B = 1 logic impune blocarea celor doua diode, iesirea fiind F = 1. Este circuitul logic SI.

Figura F 3.2.5.

In figura F 3.2.6 este prezentat circuitul SAU: figura a) arata circuitul concret, celelalte figuri exemplificand starea logica a fiecarei diode, in functie de valoarea logica a variabilelor de intrare. Analiza functionarii se face similar analizei circuitului SI prezentat mai inainte. 67

F 3.2.6. Circuitul logic SAU.

2. Regimul de comutatie al tranzistorului bipolar. Descoperit in anii 49, tranzistorul avea sa intre rapid in productia de serie si sa contribuie din plin la dezvoltarea societatii umane si la schimbarea ei, chiar. 68

Realizat din materiale semiconductoare, ca si diodele, are o arhitectura putin mai complicata: contine structuri n-p-n sau p-n-p, prima structura fiind cea mai folosita din motive pe care le-am prezentat deja. Prin figura urmatoare, F 3.2.7. vrem sa punem in evidenta principiile care stau la baza functionarii tranzistorului bipolar (este numit bipolar, pentru ca la stabilirea curentilor prin tranzistor participa ambii purtatori de sarcina: electroni si goluri). Alaturi este aratat simbolul cel mai folosit al tranzistorului n-p-n. Cele trei terminale ale tranzistorului se numesc baza, emitor si colector. Emiterul, care este mai puternic dopat cu impuritati, emite purtatori de sarcina (electroni) care vor fi puternic atrasi de colector, conectat la tensiunea pozitiva a alimentarii cu energie. Baza are rolul de a controla fluxul de purtatori de sarcina emisi de emiter si colectati de colector.

F 3.2.7. Tranzistorul bipolar: constructie si functionare. Distanta dintre cele doua jonctiuni (B E si B C) este numita si latimea (sau largimea) bazei tranzistorului si este notata cu w. Conditia necesara pentru a apare fenomenul de tranzistor este ca latimea bazei (w) sa fie foarte mica. Daca aceasta conditie nu este indeplinita avem de-a face cu doua diode legate ca atare, fara nimic deosebit. Fenomenul de tranzistor consta in urmatoarele: daca jonctiunea B-E incepe sa se deschida, permitand aparitia unui curent de baza, notat IB, imediat apare un curent intre colector si emitor, notat IC, care este de ori mai mare ( = Ic / IB, numit facor de amplificare in curent al tranzistorului). Daca IB creste, va creste si Ic de ori; daca IB va scade, va scade si Ic corespunzator. Injectia de curent in baza se poate face prin aplicarea unei tensiuni UBE pozitive fata de emitor. Pentru simplificarea polaritatilor, am conectat emiterul la masa; astfel, pe baza trebuie sa apara o tensiune strict mai mare ca zero, apare injectia de curent in baza si implicit curentul de colector. Deci, tranzistorul este format din doua jonctiuni, fiecare putand fi polarizata direct sau invers, astfel ca pot fi definite patru regimuri de functionare ale tranzistorului: 69

polarizare jonctiune E - B

polarizare jonctiune C - B

regim de functionare al tranzistorului

------------------------------------------------------------------------------------------------------------sens direct sens invers normal - folosit ca amplificator in electronica analogica, sens direct sens direct saturat - folosit in regim de comutatie in electronica digitala, sens invers sens invers blocat - folosit in regim de comutatie in electronica digitala, sens invers sens direct invers - situatie evitata. ---------------------------------------------------------------------------------------------------------------

Regimul de comutatie al tranzistorului se caracterizeaza prin trecerea acestuia in starea blocata din starea de conductie (de obicei saturat) si invers. In figura de mai jos, F 3.2.8. este trasata caracteristica de iesire, Ic = f ( Uce), si se prezinta un montaj simplu (emitor comun) al tranzistorului n-p-n.

F 3.2.8. Caracteristica de iesire: Ic = f(UCE) si montaj cu emitorul comun. Sunt figurate zona de blocare (sub dreapta IB = 0), zona regiunea activa (RAN, regim activ normal, cand tranzistorul poate lucra ca amplificator, oscilator...etc), zona de saturatie. Tranzitia de la blocare la saturatie sau invers se face prin zona activa, dar aceasta nu este caracteristica regimului de comutare. 70

In starea blocata, curentul de baza este nul, prin tranzistor circuland numai un curent rezidual de valoare foarte mica, intre colector si emitor nefiind practic nici o legatura. In starea saturata se ajunge prin tensiuni suficient de mari aplicate pe baza, astfel crescand curentul de baza si implicit curentul de colector. In figura de mai sus, in schema tranzistorului alimentat de la tensiunea pozitiva +Ec, putem scrie ecuatia (conform teoremelor Kirchhoff): Ec = Ic Rc + UCE. Pentru UCE = 0, avem: Ec = Ic Rc, Ec Ic = Rc

Tranzistorul saturat are UCE 0V si Ic cu valoare maxima. Fenomenul de intrare in saturatie este prezentat prin diagramele din figura F 3.2.7. Daca se mareste suficient de mult tensiunea de intrare, se va ajunge la un moment dat ca UBE si UcE sa devina egale, aceste valori fiind marcate cu indicele s de la saturat. Marind in continuare tensiunea Ui, tensiunea UCE va deveni si mai mica decat UBE, in asa fel incat potentialul colectorului este mai mic decat potentialul bazei, adica jonctiunea B C se polarizeaza direct si tranzistorul devine saturat. In figura de mai jos (F 3.2.9.)este aratat un circuit simplu, cu un tranzistor npn, cu emitorul la masa si alimentarea Ec, precum si diagramele care arata dependenta curentului de colector si a tensiunii de colector de tensiunea de intrare, UBE.

F 3.2.9. Tensiuni si curenti de saturatie. Tensiunea de saturatie UCES are valori mici, cam 0,2 - 0,3V pentru tranzistoarele cu Siliciu, UBES 0,8V. Valorile acestea sunt orientative, depinzand si de tehnologia de realizare a componentelor respective. 71

Sa analizam un tranzistor care va primi pe baza valorile logice 0 si 1, respectiv valorile de tensiune 0V (masa) si +5V (uzuale in logica dispozitivelor electronice digitale), asa cum se arata in figura F 3.2.10.

F 3.2.10. Tranzistorul ca inversor logic. Cand tranzistorul primeste pe baza 0 logic (0V), este blocat si legatura C E este total intrerupta, astfel ca iesirea F va avea nivelul logic 1, aproape +5V, culesi de la sursa de alimentare Vcc prin rezistenta Rc. Daca pe baza apare 1 logic, tranzistorul va intra in saturatie, legatura C E este ca o legatura directa, iesirea F aparand ca fiind legatala masa, adica masa se transfera la iesire, F = 0. Astfel se realizeaza functia de inversor logic, prin comutatia tranzistorului.

Chestionar.

72

1. Ce inseamna materiale semiconductoare? Prin ce se caracterizeaza acestea? 2. Cum este posibila impurificarea? Cum se obtin cristalele tip n si tip p? 3. Ce efect produce polarizarea directa a fonctiunii p-n? 4. Care este efectul polarizarii inverse a jonctiunii p-n? 5. Care este semnificatia tensiunilor de prag? 6. Care este semnificatia curentului invers de saturatie? 7. Ce inseamna tranzistorul bipolar? 8. Care este conditia pentru existenta fenomenului de tranzistor? In ce consta fenomenul de tranzistor? 9. Ce semnifica , in functionarea tranzistorului?

10. Care este legatura dintre starea jontiunilor B-E, B-C si zonele de functionare ale tranzistoarelor. 11. In ce consta regimul de comutatie al tranzistoarelor? 12. Care este semnificatia notiunilor tranzistor - ON si tranzistor - OFF?

73

Tema 3.3. Familii de circuite logice integrate (CI). 1. 2. CI cu diode si tranzistoare - DTL. TTL - seria clasica : normala, rapida, putere redusa, 74

- seria open-collector (OC). In circuitele integrate (CI) nu exista piese discrete separate, functiile acestora fiind indeplinite de anumite domenii ale unui cristal de siliciu, domenii care sunt analoge rezostoarelor, condensatoarelor, diodelor sau tranzistoarelor si care sunt formate prin anumite procedee tehnologice. Primul circuit integrat a fost realizat in 1959 in SUA si a constituit o copie exacta, in versiune integrata, a unui circuit logic cu componente discrete. In primii ani de fabricatie industriala a CI (1960 - 1963) schemele electrice ale acestora erau copii ale circuitelor logice cu componente discrete. Tehnologia a evoluat, aparand familiile de CI: RTL Resistor Transistor Logic, RTCL RTL cu condensator de accelerare, DCTL - Direct Coupled Transistors Logic (CI cu cuplaj direct cu tranzistoare, in care tranzistorul era folosit si pentru functia logica restectiva, dar si pentru amplificare), urmand apoi diferite tipuri de familii DTL - Diode Transistor Logic. De la familiile de CI DTL au derivat circuitele logice integrate de tip TTL, diodele fiind inlocuite cu tranzistoare multiemitor, realizate avantajos in tehnologie integrata. CI TTL functioneaza cu logica de comutare a curentului de baza, adica BCSL - Base Current Switching Logic. Datorita cuplajului direct intre tranzistoare, CI TTL lucreaza cu tensiuni de alimentare scazute ( + 5V) 1. CI cu diode si tranzistoare DTL Familia de CI DTL (Diode Transistor Logic) a cunoscut o larga raspandire in prima etapa de dezvoltare a circuitelor logice integrate (CI). Aceasta situatie a fost determinata de popularitatea circuitelor logice cu diode si tranzistoare cu deplasare de nivel prin diode, care prezinta performante foarte bune. Odata aparuta si perfectionata tehnica integrarii, pretul acestor circuite scade. Cu timpul, schema lor a fost imbunatatita, aparand CI - DTL, prin inlocuirea unei diode cu un tranzistor. Aparitia CI - TTL, cu performante superioare, mai ales timpi de propagare mai redusi a dus la inlocuirea acestor circuite din aplicatiile care impun viteze de functionare ridicate. CI - DTL, intr-o varianta perfectionata sunt utilizate in sisteme numerice industriale, care impun o imunitate ridicata la perturbatii. Poarta fundamentala DTL - Diode Transistor Logic. Este un circuit NAND cu doua intrari A,B si iesirea F a carui schema este aratata in figura F 3.3.1. Daca la una din intrari se aplica nivelul inferior de tensiune ( 0,3 V ), in punctul P se stabileste tensiunea Up = 1,05 V. Aceasta tensiune nu este suficienta pentru a provoca conductia diodelor D3 si D4 si a jonctiunii baza emitor a tranzistorului T, cele trei elemente inseriate necesitand cel putin 3 x 0,6 1,8V pentru a putea conduce (am folosit semnul deoarece caderea de tensiune pe o dioda cu Siliciu, aflata in conductie desigur, este 0,6 0,7 V, iar in unele carti este considerata 0,8V). 75

F 3.3.1

Poarta fundamentala DTL: NAND cu doua intrari.

In consecinta, in punctul Q rezulta o tensiune pozitiva mica ( 0,1 V), data de curentii redusi care circula prin diodele D3, D4, aceasta tensiune fiind insuficienta pentru a provoca intrarea in conductie a tranzistorului T. Sursa de tensiune VEE si rezistenta R3 asigura o blocare sigura a tranzistorului T, dar contribuie si la reducerea timpului de comutare inversa, usurand golirea de sarcini a bazei lui T. Tranzistorul T blocat (T este OFF, este intrerupt, intre colector si emitor neexistand nici o legatura) iesirea F este aproape de valoarea tensiunii de alimentare Vcc, fiind conectata la Vcc prin rezistenta R2. Daca ambele intrari sunt conectate la 1 logic, tensiune apropiata de Vcc, diodele D1 si D2 se blocheaza, sursa Vcc se inchide pe circuitul diodelor D3 si D4, pozitivand baza tranzistorului T, acesta intrand in saturatie (T este ON, T este deschis total, caderea de tensiune colector emitor fiind foarte mica, UCE = 0,1V), iesirea F avand tensiune apropiata de 0 logic. Putem spune ca T ON inseamna cuplarea iesirii F la masa (iesirea este 0 logic), iar T OFF semnifica cuplarea iesirii F la sursa de alimentare, prin rezistenta de colector respectiva (care nu introduce pierderi semnificative de tensiune). Acest lucru a fost deja precizat in cursul trecut si exemplificat prin figura F 3.2.8. Deci se realizeaza 1 logic la iesire daca una dintre intrari are valoarea 0, si avem 0 la iesire, daca ambele intrari au valoarea 1 logic. Exact functia NAND (SI - negat) cu doua intrari. Poarta DTL are urmatoarele valori tipice ale parametrilor: IP = 1V, FO = 5, tp = 30ns, Vcc = +4V, VEE = -2V, Pc = 6mW.

Se obseva ca timpul de propagare este mare, aproximativ 30 ns. Acest inconvenient si faptul ca iesirea nu se poate conecta decat la 5 intrari (FO = 5) au facut sa se porneasca cerecetarile pentru a gasi solutii spre a rezolva aceste lipsuri. Pentru a se mari numarul de intrari la care se poate conecta iesirea, trebuie asigurat un factor de amplificare in curent ( = Ic / IB) cat mai mare, deci un curent de colector (Ic) cat mai mare. Apoi, necesitatea de a folosi doua tensiuni de alimentare constituie un alt dezavantaj important pentru poarta fundamentala DTL. 76

De aceea s-a trecut la proiectarea unui alt circuit DTL cu o singura tensiune de alimentare, dar performantele acesteia au fost mai slabe decat ale portii DTL originale. Noul circuit realizat este poarta DTL modificata (DTL), pe care o prezentam mai jos.

Poarta DTL modificata DTL. Cercetarile efectuate pentru imbunatatirea performantelor CI - DTL au dus la modificari ale circuitului DTL, prin inlocuirea diodei D3 cu tranzistorul T1, figura F 3.3.2:

F 3.3.2 Poarta DTL Inlocuirea diodei cu un element activ, folosirea unei singure tensiuni de alimentare, precum si divizarea rezistentei R1 in doua rezistente (1,75K si 2K) asigura un factor de cuplare cu sarcina marit (FO = 8). Tranzistorul T1 functioneaza in zona activa, ca amplificator, furnizand un curent mare pentru comanda directa a tranzistorului T2. Divizarea rezistentei R1 din schema DTL originala are urmatoarele efecte: 77

- cand la o intrare se aplica un nivel inferior de tensiune ( 0 logic ), T1 este blocat, astfel curentul cu care trebuie comandata poarta este determinat de suma rezistentelor 2k + 1,75k, fiind mai mic decat la poarta originala, - in cazul in care la ambele intrari se aplica nivelul superior de tensiune ( 1 logic ), T1 conduce, iar curentul sau de colector este determinat doar de rezistenta de 1,75k, avand o valoare mai mare. In consecinta, apar efecte noi care duc la marirea factorului de incarcare la iesire ( FO, FAN OUT ) al CI. Parametrii portii DTL sunt: IP = 1V, FAN IN = 1, FAN OUT = 8, p = 30ns, Vcc = 5V, Pc = 8,5mW. Principalul dezavantaj al portii DTL il constituie timpul de propagare relativ mare. datorat incarcarii capacitatilor parazite prin rezistenta de colector a lui T2. Aceasta constanta de timp poate fi redusa prin reducerea rezistentei din colector, dar acest lucru ar avea efecte negative: - daca curentul de colector al lui T2 se mentine acelasi, scade FAN OUT, - daca curentul de colector al lui T2 se mareste, creste puterea consumata de circuit. Cautarea solutiilor pentru a rezolva aceasta problema adus la aparitia unei noi familii de CI - familia TTL ( Tranzistor Tranzistor Logic).

2. CI - TTL,

seria clasica : normala, rapida, de putere redusa, open collector.

Seria standard 74XX de porti logice din familia de CI TTL (TTL este prescurtarea de la Transistor Transistor Logic) a fost introdusa de firma Sylvania in 1963, dezvoltata si comercializata de Texas Instruments. 78

De fapt, la poarta NAND cu doua intrari s-a ajuns pornind de la structura de poarta NAND cu doua intrari DTL, care era deja realizata cu componente discrete (prezentata mai sus). Trebuie sa prezentam clasificarea CI din punct de vedere al complexitatii: SSI - Small Scale Integration - cu integrare pe scara mica - 10 porti / cip, MSI - Medium Scale --------- - cu integrare pe scara medie - 100 porti/cip, LSI - Large Scale ------------ - cu integrare pe scara larga - 1000 porti/cip, VLSI - Very LSI - cu integrare pe scara foarte larga - 1000 - 10.000 porti/cip, UVLSI - Ultra VLSI- cu ultra integrare pe scara larga - peste 100.000 porti/cip. Familia TTL cuprinde un mare numar de tipuri de module, integrate pe scara mica, medie si larga. Seria clasica normala este cea mai completa, celelalte serii derivand din poarta fundamentala NAND (SI - NU), dupa cum urmeaza: -HTTL - TTL rapid ( High speed TTL ), dezvoltate pentru aplicatii care necesita o viteza mare de lucru. -LPTTL - TTL de mica putere ( Low Power TTL ) , dezvoltate pentru aplicatii unde se cere un consum redus de putere si unde o viteza de lucru mai mica poate fi tolerata. Reducerea consumului de putere s-a obtinut prun marirea valorii rezistentelor din schema standard. -STTL - Shottky TTL, au fost dezvoltate pentru viteza. Cresterea vitezei de lucru s-a obtinut prin conectarea intre baza si colectorul tranzistoarelor, din schema standard, a unei diode Shottky. -LSTTL - Shottky TTL de mica putere ( Low Power Shottky TTL), foarte raspandita in aplicatii si care s-a obtinut din varianta de mica putere prin inlocuirea tranzistoarelor bipolare obisnuite cu tranzistoare Shottky. -ALSTTL - Shottky TTL de mica putere imbunatatita ( Advanced Low power Shottky TTL ) , reprezinta o combinatie excelenta intre viteza de lucru marita si consumul de putere redus. Ameliorarea performantelor fata de LSTTL s-a obtinut prin reducerea dimensiunelor componentelor. Comparatie intre subfamiliile TTL: ______________________________________________________________________________ Familia TTL Puterea medie consumata pe poarta [mW] Timp de propagare [ns] ______________________________________________________________________________ standard 20 10 H 30 6 S 20 3 L 2 35 LS 2 15 Poarta fundamentala NAND (SI NU). Poarta NAND a fost realizata din circuitul DTL prezentat anterior, inlocuindu-se diodele din circuitul de intrare D1, D2 si D3 cu tranzistorul multiemitor T1, dupa cum se vede in figura F 3.3.3: 79

F 3.3.3: Poarta TTL standard: a) structura portii DTL, b) structura initiala a portii TTL, c) structura standard pentru poarta 7400-NAND2, d) caracteristica statica de transfer. Deci, T1 inlocuieste diodele D1, D2 si D3, schema b) din figura, functionarea fiind aceeasi, ca si pentru circuitul DTL. La aceasta structura s-a adaugat un etaj de iesire (totem pole) , compus din tranzistoarele T3 si T4, figura c), obtinandu-se structura standard de poarta NAND cu doua intrari. 80

Aceasta structura se compune din circuitul AND de intrare, circuitul defazor, realizat pe T2, pentru comanda tranzistoarelor T3 si T4 din etajul de iesire. La intrare, se pot monta diode cu catodul pe intrare si anodul la masa pentru protectia impotriva supratensiunilor negative care pot apare la intrare. Existenta acestor diode va produce scurtcircuitarea la masa a oricarei tensiuni negative fata de masa, aplicata pe intrare si care in valoare absoluta este mai mare decat tensiunea de deschidere a diodei (0,7V). Caracteristica statica de transfer a portii se poate trasa prin segmente de dreapta, calculandu-se sau masurandu-se punctele de frangere PF1, PF2, PF3. Astfel, cu intrarea B la Vcc = +5V ( 1 logic), iar tensiunea la intrarea A parcurgand intervalul [0 , Vcc], se obtin urmatoarele puncte de frangere: VOH = 3,6V; conduce; conduce; -cand VA = 0, T1 conduce, T2 este blocat, T4 conduce, iar iesirea este in starea H, -PF1 ( 0,6V, 3,6V) cand VA = 0,6V, T1 conduce, iar T2 intra in conductie, T4 -PF2 (1,3V, 2,5V) cand VA = 1,3V, T1 si T2 conduc, iar T3 intra in conductie, T4

-PF3 ( 1,5V 0,1V) cand VA = 1,5V. T1 conduce in regim activ inversat, T2 si T3 conduc in saturatie, iar T4 este blocat, iesirea este in nivel L. In intervalul dintre PF2 si PF3 conduc toate tranzistoarele, sursa este conectata la masa prin rzistentele circuitului, puterea disipata corespunde componentei dinamice de scurtcircuit. De aceea, intervalul respectiv trebuie sa fie cat mai scurt, adica fronturile tensiunii de intrare sa fie cat mai abrupte. Dioda D dintre T4 si T3 are rolul de a impiedica intrarea in conductie a lui T4 cand T2 si T3 conduc in saturatie. In acest caz, Vbe T4 = Vbe sat T3 + Vce sat T2 - Vbe sat T3 = 0,8V, ceea ce ar insemna ca T4 va putea sa intre in conductie. Dioda D impiedica acest lucru. Tensiunea de 0,8 nu este suficienta sa deschida cele doua jonctiuni inseriate (dioda D si jonctiunea BE-T4).

Realizarea functiei logice cablate. TTL - OC (open collector) Portile DTL, prezentate mai inainte, au proprietatea foarte importanta de a permite realizarea functiei logice SI intre variabilele desenate de iesirile a doua module, prin simpla 81

legare a lor in scurtcircuit, asa cum este aratat in figura F 3.2.4, unde s-au reprezentat numai tranzistoarele da la iesirea portilor DTL. Notand iesirile cu A si B, se observa cu usurinta ca, punctul comun notat cu f va avea nivelul de tensiune dictat de tensiunile egale ale celor doua iesiri. Daca o iesire este 0 logic (nivel L, tensiune 0V) si cealalta este 1 logic (nivel H, tensiune 5V), f va avea 0 logic, pentru ca tranzistorul deschis care transfera masa in colectorul lui, fiind saturat, va impune acest 0 logic si punctului comun notat cu f. Tranzistorul blocat prezinta o rezistenta mult mai mare decat tranzistorul saturat (care, practic este un scurtcircuit fata de masa), cu care este legat in paralel, tensiunea comuna de la cele doua iesiri va avea nivelul 0 logic, L. Aceste consideratii au fost sistematizate in tabelul alaturat, obsevandu-se ca este realizata functia logica SI : f = A B.

A 0 0 1 1

B 0 1 0 1

f = AB 0 0 0 1

F 3.3.4. Realizarea finctiilor logice cablate cu porti DTL. Spre deosebire de portile DTL, poarta fundamentala TTL nu permite realizarea functiei cablate, acesta fiind unul din dezavantajele acestei familii de circuite, deoarece dispozitivele digitale mai evoluate sunt organizate pe magistrale de informatie, la care se leaga iesirile unui mare numar de circuite. Motivul pentru care nu se permite legarea in scurtcircuit a mai multor iesiri este analizat in figura F 3.3.5. Se observa ca daca un etaj final, spre exemplu etajul a, este in starea H (1 logic), ceea ce inseamna T3a - conduce si T4a - blocat, iar etajul de iesire b este in starea L ( 0 logic) , adica T3b blocat si T4b conduce, se produce un scurtcircuit intre tensiunea de alimentare si masa pe traseul Vcc - T3a - T4b - 0V(masa), aceasta ducand la distrugerea circuitelor. Pentru situatia care impune realizarea unei functii cablate, seriile TTL normale sunt prevazute cu porti destinate special acestui scop, numite porti TTL OC (open collector - cu colector deschis), F 3.3.5 - c. Aceste porti se obtin din poarta standard prin eliminarea tranzistorului T3, a diodei D si a rezistentei de 130 din clectorul lui T3. Iesirile mai multor porti TTL cu colector deschis pot 82

fi legate impreuna, punctul comun fiind conectat printr-o rezistenta Rc la sursa de 5V, cum se arata in F 3.2.5 c. Rezistenta Rc nu este inclusa in structura integrata, ea fiind calculata separat, in functie de numarul de porti care sunt legate impreuna si de numarul portilor care trebuie comandate de catre aceasta iesire comuna , tinandu-se cont si de starea H si L. Pentru usurarea proiectarii exista tabele care dau aceste valori ale Rc. Trebuie precizat ca rezistenta Rc are o valoare mai mare decat rezistenta care a fost inlocuita in etajul final al portii TTL standard, astfel ca portile TTL OC au timpi de propagare mai mari, ceea ce constituie un dezavantaj.

F 3.3.5. a) Analiza legaturii a iesirilor a doua CI TTL; b) CI TTL-OC, c)modul de conectare a circuitelor CI TTL-OC. Observatie. Tranzistorul multiemitor prezentat in schemele precedente este aratat intr-o configuratie posibila, in figura de mai jos.

Desigur, tehnologic, ansmblul de semiconductoare poate fi foarte diferit, dar intentia noastra a fost de a prezenta la nivel de principiu aceasta configuratie. Intre cele doua emitere exista un strat izolator (hasurat), astfel incat ele pot lucra independent, exact asa cum au fost descrise in schemele respective. Teoretic, numarul emiterelor poate fi foarte mare, dar realizabilitatea isi spune cuvantul: pe de o parte tehnologia si pe de alta parte necesitatea efectiva, imperioasa de a dispune de asa ceva; deci numarul lor este limitat (uzual: 2 ). 83

Prezentam o pagina de catalog cu circuitul

7400 (CDB 400):

Poarta SAU - NU (NOR). Sinteza schemelor logice cu circuite TTL se face utilizand mai ales poarta fundamentala SI NU a acestei familii. 84

Uneori este mai indicat sa se foloseasca si alte tipuri de porti (chiar daca numai pentru economia de porti), de aceea exista in fabricatie o diversitate de porti logice: SI, SAU, SAUNU, SI SAU NU, ..etc. Noi descriem poarta SAU NU (7402, produsul romanesc identic fiind CDB 402), schema ei fiind prezentata in figura F 3.3.6.

F 3.3.6. Poarta SAU NU. Pentru fiecare variabila de intrare, poarta contine un tranzistor, conectat ca si tranzistorul multiemitor din poarta SI NU: A T1, B T1. Caracteristica acestei porti o constituie faptul ca tranzistoarele T2 si T2 au colectoarele si emitoarele legate impreuna, aceasta insemnand ca in momentul in care, pe o intrare avem 1 logic (aproximativ + 5V), tranzistorul corespunzator (T1 sau T1) va transmite aceasta tensiune pozitiva (1 logic, aproximativ + 5V) catre urmatorul tranzistor, pe care il va satura (T2 sau T2), determinand astfel valorile pentru potentialele V3 si V4. Tanzistorul saturat prezinta o rezistenta mult mai mica decat cel blocat. In tabelul de mai jos se dau valorile potentialelor si a iesirii in functie de intrari: A B V2 [V] V2 [V] V3 [V] V4 [V] F 0 0 0,45 0,45 4,70 0 1 -------------------------------------------------------------------------------0 1 0,45 1,50 0,95 0,75 0 --------------------------------------------------------------------------------1 1 1,50 1,50 0,95 0,75 0 ---------------------------------------------------------------------------------Prezentam, mai jos, pagina de catalog a circuitului integrat 7402 (CDB 402):

85

Exemplul urmator ilustreaza modul de folosire a diverselor porti logice pentru realizarea unei functii logice date, figura F 3.3.7. Figura a) contine realizarea cu porti SAU si SI a functiei logice F1 = AB + CD, pe care o putem realiza si numai cu circuite NAND, asa cum se vede in figura c): 86

_________ _________ F1 = AB + CD

_________ ___ ___ = (AB) (CD)

Figura b) este realizarea functiei F2 = (A + B) (C + D), pe care o putem forma numai cu porti NOR, asa cum se arata in figura d): _________________ _________________ F2 = (A + B) (C + D) = _____________________ ________ ________ (A + B) + (C + D).

= Am folosit teorema numarul 3: Teorema dublei negatii (Involutia): A = A

F 3.3.7. Realizarea functiilor logice folosind porti diferite.

Poarta logica SI - SAU NU.

87

Aceasta poarta permite efectuarea unor operatii logice complexe, intr-un singur circuit integrat, cu un timp de propagare si o putere consumata mai reduse decat in cazul in care se realizeaza aceleasi operatii cu porti SI NU. In figura F 3.3.8. este aratata schema acestei porti.

F 3.3.8.

Schema portii Si SAU NU.

Functionarea portii SI SAU NU este mai usor de explicat prin reluarea analizei efectuata in cazul portii SAU NU. Apare ca o schimbare faptul ca fiecare intrare are un tranzistor multiemitor cu doua intrari, cele doua intrari compunandu-se prin operatorul logic SI, asa cum a fost aratat mai inainte. Sa observam ca: - tranzistorul T3 este saturat (starea ON) doar daca tranzistoarele T1 si T2 sunt blocate; - tranzistorul T1 este blocat daca cel putin una din intrarile A, B se afla la nivel logic inferior (0 logic); - similar, tranzistorul T2 este blocat daca cel putin una din intrarile C, D se afla la nivel logic inferior (0 logic). Asadar, avem: ____ ____ _____________ F = A B C D = A B + C D. Parametrii acestei porti sunt aproape identici cu paramerii portii fundamentale, doar timpul de propagare fiind putin mai mare, dar poarta ofera mai multe posibilitati logice, fapt ce constituie un important avantaj.

88

In cazul in care se includ mai multe nuclee de tranzistoare care au colectorii si emitorii conectati ca in schema de sus (T1 si T2) se poate vorbi de o extindere a posibilitatilor circuitului respectiv, existand mai multe variante in acest sens. In pagina de catalog pe care o prezentam in continuare este aratata poarta expandabila SI SAU NU cu 4 x 2 intrari (CDB 453):

89

Chestionar.

1. Care este prima familie de CI, recunoscuta ca atare? 2. In ce au constat modificarile facute portii fundamentale a primei familii de CI? 3. Care era principalul dezavantaj al portilor din familia DTL? 4. Cum a aparut familia de CI - TTL? 5. Care este seria standard a CI din familia TTL? 6. Numiti cateva familii de CI care au derivat din CI - TTL clasic normala (familia standard). 7. Care sunt etajele de baza ale structurii standard pentru poarta 7400 - NAND 2? 8. Ce inseamna functie logica cablata? 9. De ce CI - TTL - standard nu pot realiza functia logica cablata? 10. Care este semnificatia CI - TTL - OC?

90

Tema 3.4.

1. Poarta de putere, poarta de mare putere. 2. Seria TTL de putere redusa. Seria TTL rapida. 3. Seria TTL - Shottky.

1. Poarta de putere, poarta de mare putere. Poarta de putere. CI TTL se caracterizeaza printr-o valoare ridicata a factorului de incarcare la iesire FAN-OUT (in jur de 10), suficienta in majoritatea schemelor logice. In practica apar situatii care reclama o valoare si mai mare a acestui factor, un exemplu fiind circuitele care comanda aducerea in stare zero (resetare) a tuturor rangurilor unui registru. In principiu, aceasta problema se poate rezolva utilizand mai multe porti obisnuite, fiecare comandand o parte din rangurile registrului, in limitele incarcarii admise, dar aceasta solutie are dezavantajul unei mariri a consumului de porti, aparand si o complicare a schemei . Pentru situatiile de acest gen, familia TTL este prevazuta cu porti speciale, numite porti de putere, fiindca pot comanda un numar mai mare de circuite decat portile obisnuite. Schema unei porti de putere fara functie logica de inversare este data in figura F 3.4.1.

T1 A L 0 H 1 ON ON

T2 T3 Ube2 Ube3 OFF OFF 0,45V 0V

T4 Ube4 F=A ON 0,75V L 0 H 1

ON ON OFF 1,50V 0,75V 0,10V

F 3.4.1 Poarta de putere si tabelul potentialelor din schema. Din punct de vedere logic, aceasta poarta indeplineste functia identitate, adica F = A. 91

Rolul portii de putere este similar cu al unui amplificator de putere. La intrare contine un tranzistor T1, comandat in emitor si un etaj de comanda, cu functii identice ca si la poarta fundamentala. Iesirea se realizeaza printr-un tranzistor T4, cu colector deschis, comandat printr-un circuit suplimentar, format de T3 si rezistenta sa din colector, care asigura un curent direct de baza important pentru T4. Alaturat schemei este prezentat tabelul cu starile tranzistoarelor, conform celor doua intrari posibile : - A = L (0 logic) duce la blocarea lui T1 (OFF), acesta il blocheaza pe T2 (OFF), mai daparte T3 blocat (OFF), asigurandu-se pozitivarea bazei lui T4 care va fi deschis (ON), astfel preluandu-se nivelul L, prin translatarea acestuia din emitor in colector (T4-saturat), F = A; - A = H (1 logic), produce deschiderea in lant a tranzistoarelor T1, T2, T3 ceea ce duce la blocarea lui T4 (OFF), si astfel iesirea F este H deoarece rezistenta exterioara din colectorul lui T4 va asigura un potential H, fiind conectata direct la Vcc.

Porti de mare putere. Portile de mare putere sunt formate dintr-o poarta SI NU normala, cu doua intrari, care comanda un tranzistor special, care permite trecerea unui curent de colector de valoare ridicata ( 300 mA ) si suporta la blocare o tensiune colector emitor de valoare mare (30V). Schema este aratata in figura F 3.4.2.

F 3.4.2 Poarta de mare putere. Aceste circuite se folosesc pentru comanda releelor, a indicatoarelor luminoase, in memorii . . . .etc 92

2. Seria TTL de putere redusa. Seria TTL rapida. Aceasta serie a aparut prin optimizarea structurii portii TTL dupa parametrul (criteriul) puterii consumate. In acest scop s-a acceptat marirea timpului de propagare. Parametrii tipici ai portii TTL de putere redusa sunt: - puterea consumata : 1mW, - timpul de propagare : 33 ns. Structura portii TTL de putere redusa este similara cu a portii TTL normale. Reducerea puterii consumate se obtine prin marirea tuturor rezistentelor circuitului, desigur in detrimentul timpului de propagare. In schema au fost trecute si valorile normale (cele care sunt mai mici) sub valorile rezistentelor portii TTL de putere redusa. Schema circuitului este data in figura F 3.4.3.

F 3.4.3. Poarta TTL de putere redusa.

Seria TTL de putere redusa nu cuprinde o mare varietate de circuite ca seria normala, dar este perfect compatibila cu circuitele TTL normale. Cele doua serii sunt compatibile in privinta nivelurilor logice de tensiune si a tensiunii de alimentare. Difera curentii de intrare si iesire, ceea ce este foarte important cand se folosesc circuite din ambele serii. 93

Seria TTL rapida. HTTL - High speed TTL. Este destinata aplicatiilor care impun o viteza de functionare marita, timpul de propagare al acestor serii fiind de numai 6ns, in schimb puterea consumata este mai mare, avand valoarea tipica de 22 mW. Aceasta crestere a puterii comsumate se datoreaza cresterii curentilor (pentru ca rezistentele sunt mai mici si pentru ca in etajul final se utilizeaza un etaj Darlington), dar asigura o reducere a timpului de propagare la circa 6 ns. Imunitatea la perturbatii si factorii de incarcare sunt similare cu cei ai seriei normale. Modulele seriei rapide si ale seriei normale sunt perfect compatibile intre ele. Poarta fundamentala SI NU (NAND) a seriei rapide este desenata in figura F 3.3.5, din pagina urmatoare. In privinta structurii exista asemanari cu poarta NAND a seriei normale. La intrare exista un tranzistor multiemitor T1, dupa care urmeaza un etaj de comanda pentru invertorul complex de la iesire. Poarta rapida nu contine dioda de deplasare de la iesire, in schimb, in partea superioara a inversorului complex se foloseste un tranzistor compus (montaj Darlington). Reducerea timpului de propagare al portii rapide se datoreste urmatorilor factori: -rezistenta de emitor a inversorului complex este de numai 58, fata de 130 la poarta normala; in felul acesta scade constanta de timp la incarcarea sarcinilor capacitive, timpul de ridicare al impulsului de iesire fiind in jur de 5,9 ns, fata de 11 ns la poarta normala; -rezistenta de baza a tranzistorului multiemitor este mai mica, astfel creste curentul direct de baza cu care este deblocat T2; in consecinta, supraactionarea la deblocarea tranzistoarelor T2 si T4 este mai mare, fapt care se reflecta in reducerea timpului de coborare al impulsului de iesire la 6,2 ns, fata de 7 ns la poarta normala; -toate rezistentele din componenta portii rapide au valori mai mici, astfel ca si incarcarea si descarcarea capacitatilor interne ale portii sunt mai rapide, in acelasi timp crescand si puterea consumata de poarta.

F 3.4.4 Poarta fundamentala a seriei TTL rapida. 94

Tranzistorul T5 indeplineste doua functiuni: -comanda cu un curent mai mare tranzistorul T3, acest lucru fiind necesar pentru ca s-a redus rezistenta de colector a inversorului complex; -jonctiunea baza-emitor a acestui tranzistor joaca un rol similar cu dioda de deplasare a portii normale, adica blocarea sigura a tranzistorului T3 in cazul cand este in conductie tranzistorului T4. Seria TTL rapida contine, ca si seria normala, mai multe tipuri de porti, dar numarul de tipuri de module ale acestei serii este totusi mai redus. Din cauza consumului considerabil (aproape dublu fata de CI TTL normale) s-au cautat solutii pentru a le inlocui, iar solutia a fost aparitia CI TTL cu tranzistoare Schottky, desi acestea au o mai mare sensibilitate la zgomot (le vom prezenta in paginile urmatoare). Privitor la consumul de energie, exista o serie de CI TTL la care se reduce acest consum, dar creste timpul de propagare: seria LTTL - Low Power TTL, care are un consum de 1 mW / poarta, dar timpul mediu de propagare este de 33 ns.

95

3. Seria TTL cu diode Schottky. Seria rapida a variantei clasice TTL permite realizarea unor viteze de comutare ridicate, dar reducerea in continuare a timpului de propagare este extrem de dificila, din cauza intarzierii determinate de saturatia tranzistoarelor. Pentru aplicatiile care impun viteze de comutare ultrarapide, sub limita de 5 ns a timpului de propagare, se folosesc circuitele logice cu cuplaj in emitor (ECL), acestea fiind cele mai rapide circuite din categoria CI cu tranzistoare bipolare, insa cu mai mare consum de putere. A aparut un nou tip de circuite integrate (CI) ultrarapide, obtinut din seria rapida a familiei TTL prin introducerea unor diode de evitare a saturatiei tranzistoarelor, diodele Schottky. Aceasta este constituita dintr-o jonctiune metal-semiconductor (aluminiu-siliciu), care prezinta avantajul unui timp de stocare practic nul, in jur de 1 ns. In figura F 3.4.5 sunt prezentate: a) caracteristicile curent-tensiune pentru dioda Schottky - I si dioda cu siliciu normala -II, in vederea unor comparatii, b) simbolul diodei Schottky, c) tranzistorul Schottky, rezultat din tranzistorul normal, caruia i se adauga intre colector si baza dioda Schottky, d) compunerea dintre tranzistorul normal si dioda Shottky.

F 3.4.5. Dupa cum se observa din caracteristica diodei Schottky, in comparatie cu dioda cu siliciu, aceasta are proprietatea de a se deschide la tensiunea de 0,2V (in unele carti este trecuta valoarea de 0,3V sau 0,4V) si nu la 0,6 0,7V, tensiunea de deschidere a diodei cu siliciu. Acest lucru este foarte important, pentru ca evita intrarea in saturatie a tranzistorului, captarea de sarcini electrice in plus in zona bazei, sarcini care vor trebui evacuate pentru a se asigura inversarea starii tranzistorului (acest timp mareste timpul total, necesar pentru comutatie). Conectand o astfel de dioda intre baza si colector, in paralel cu jonctiunea baza-colector, tensiunea pe aceasta jonctiune nu poate sa fie mai mare decat tensiunea de deschidere a diodei Schottky. 96

In figura F 3.4.6. sunt reprezentate diagramele de semnal la iesirea celor doua inversoare, unul facut cu un tranzistor obisnuit si celalalt cu un tranzistor Schottky (acestea sunt reprezentate de aceeasi figura, F 3.4.6 b) Semnalul de intrare este un impuls cu durata bine determinata (t1 - t2), timpul S fiind timpul de saturatie, respectiv, timpul necesar pentru eliminarea sarcinii in surplus stocata in baza tranzistorului.

F 3.4.6. Evidentierea timpului de raspuns pentru T Schottky: linia punctata a) si b) compunerea T Schottky. Evitarea saturatiei tranzistorului prin conectarea diodei Schottky asigura un timp de comutatie practic nul, dupa cum rezulta din diagrama timpilor de comutatie a unui inversor simplu, caruia i se aplica la intrare (Vi) un semnal dreptunghiular, iar iesirea (UCE) pentru tranzistorul Schottky (linie intrerupta) are o intarziere nula (S = 0), iar pentru tranzistorul normal este de aproximativ: Acest timp S este datorat fenomenului de saturatie. Pentru tranzistorul normal, Vce.sat este de 0.1V 0,2V. Prin montarea diodei Schottky intre colector si baza, cum este aratat in F 3.4.6, aceasta valoare a tensiunii nu va mai putea fi atinsa, pentru ca nu va putea fi mai mica decat tensiunea de 0,3 - 0,4V, deci tranzistorul nu intra in saturatie: UcE = UBEsat - Uschottky = 0,7V - 0,3V = 0,4V < Fara dioda Schottky: UBC = UBEsat - UCEsat = 0,8V - 0,1V = 0,7V, tensiune care comanda jonctiunea B-C sa fie deschisa, tranzistorul fiind in saturatie. 97 VCE.sat = 0.2V.

= 24 ns.

In seriile de porti logice din tehnologia bipolara, cu exceptia seriei standard initiala, toate tranzistoarele de comutatie sunt tranzistoare Schottky, ceea ce este indicat prin litera S, inclusa in codul seriei respective: 74SXX, seria CI - TTL Schottky, aparuta in anii 70, 74LSXX, seria CI TTL Low Power Schottky, 74ASXX, seria Advanced Schottky TTL seria Schottky imbunatatita, 74ALSXX, seria Advanced Low Power Schottky TTL, 74FXX, CI cu performante medii intre seriile AS si ALS, numita seria Fast TTL.

Ultimele patru serii de CI TTL Schottky au fost intronuse in circuitul comercial in perioada anilor 80. Seria 74AS este o dezvoltare a seriei 74S, una din schimbari a constituit-o inlocuirea tranzistorului multiemitor cu un circuit SI cu diode, pentru a economisi din suprafata cristalului si pentru ca se micsorau capacitatile parazite pe intrare in acest fel. La fel, privitor la seria 74ALS, care este derivata din seria 74LS. Schimbarea consta in includerea unui tranzistor T1 ca repetor pe emitor ceea ce a dus la viteze de lucru mai ridicate si la injumatatirea curentilor de intrare (IIL). Totodata, rezistentele au valori duble, ceea ce duce la curenti aproape la jumatate, deci puteri disipate mai mici. Pentru toate seriile TTL Schottky, in cazul in care o intrare a unui circuit nu este utilizata, aceasta nu trebuie lasata in gol, deoarece sunt sensibile la zgomot. Aceste intrari trebuie sa fie conectate la 1 logic, pentru a avea timpi de propagare mai buni si sensibilitate micsorata la zgomot. Sufixul XX este un numar zecimal care constituie codul portii respective, corespunzand functiei logice a acestei porti. De exemplu, poarta logica NAND cu doua intrari (NAND2) este referita cu urmatoarele coduri: 7400 - CI TTL standard, 74S00, 74LS00, 74ALS00, 74F00. Prezentam parametrii portilor din seriile familiei TTL (poarta de referinta fiind NAND2):

Seriile familiei TTL Simbol parametru timp propagare [ns] Pd [mW] PDP [p] VILmax [V] V0Lmax [V] VIHmin [V] V0Hmin [V] IILmax [mA] I0Lnax [mA] IIHmax [A] I0Hmax [A] 74 74S 74LS 74AS 74ALS 74F __________________________________________________ 10 10 100 0,8 0,4 2 2.8 -1,6 16 40 -800 3 19 57 0,8 0,5 2 2.7 -2,0 20 50 -1000 9 2 18 0,8 0,5 2 2,7 -0,4 8 20 -400 1,7 8 13,6 0,8 0,5 2 2,7 -0,5 20 20 -2000 4 1,2 4,8 0,8 0,5 2 2,7 -0,2 8 20 -400 3 4 12 0,8 0,5 2 2,7 -0,6 20 20 -1000 98

Poarta fundamentala a seriei TTL cu diode Schottky.

F 3.4.7 a) poarta fundamentala a seriei TTL Schottky, b) caracteristica de transfer a portii TTL Schottky (linie continua), comparativ cu a portii TTL-normala (linie intrerupta). Structura acestei porti este asemanatoare cu structura portii TTL din seria rapida, T1T5 indeplinind functiuni similare, cu deosebirea ca T1, T2, T4, T5 sunt tranzistoare Schottky, tranzistorul T3 fiind un tranzistor compus ( tip Darlington) care nu se poate satura nu trebuie sa fie tranzistor Schottky. Tranzistorul T6 contribuie la imbunatatirea formei caracteristicii de transfer UOUT = f(Ui). In intervalul 0,6V < Ui < 1,2V, dupa cum s-a aratat in F 3.3.3., caracteristica de transfer are o panta neabrupta, fapt care influenteaza defavorabil imunitatea la perturbatii. Aceasta panta se datoreaza amplificarii mici pe care o realizeaza poarta TTL in acest interval. Datorita tranzistorului T6, poarta TTL cu diode Schottky prezinta o caracteristica de transfer cu o panta mult mai abrupta, cum este aratat in figura F 3.5.2, b, ( linia punctata ). Tranzistorul T2 incepe sa conduca, in regiunea activa, abia cand: Ui > 2 x 0,6 = 1,2V,

accelerand comutarea tranzistorului T4 prin marirea curentului de baza. Seriile TTL Schottky au un timp de propagare de aproximativ 3ns si un consum de putere de 22 mW. Sunt deplin compatibile cu celelalte serii ale familiei TTL. 99

Chestionar.

1. In ce consta importanta portii de putere? 2. Cum corelati datele inscrise in tabelul figurii F 3.4.1. cu functionarea schemei din aceeasi figura? 3. Care este utilitatea portilor de mare putere? 4. Cum se poate reduce puterea consumata de o poarta logica? 5. Caror factori se datoreaza aparitia timpului de propagare a semnalului printr-o poarta logica? 6. Cum se modifica timpul de propagare al portii logice cand se maresc rezistentele interne? Dar cand se micsoreaza? 7. Care este parametrul esential al diodei Schottky? 8. Cum se realizeaza tranzistorul Schottky si cu ce scop? 9. Care este marimea timpului de propagare ale CI TTL Schottky? Dar ale CI TTL standard? 10. Enumerati seriile de CI care contin tranzistoare Schottky. 11. Care este raportul de compatibilitate intre CI TTL standard si seriile de CI TTL Schottky?

100

Tema 3.5. 1. Seria TTL cu trei stari, TSL ( Three State Logic). 2. Parametrii CI - TTL. 3. CI - ECL ( Emitter Coupled Logic). Parametri. 4. Familia de CI - IIL (Integrated Injection Logic). 1. Seria TTL cu trei stari, TSL (Three State Logic). Dupa cum s-a precizat, portile TTL normale nu admit realizarea functiei cablate. De aceea au fost concepute portile TTL OC ( open collector - colector deschis), circuite care au fost prezentate deja; reamintim problema pe care o aveau, timp de propagare considerabil marit. Necesitatea realizarii functiei cablate apare frecvent in sistemele logice complexe, mai cu seama in calculatoare, unde circulatia informatiei se face prin magistrale, la care pot fi cuplate diferite dispozitive digitale in orice moment. Utilizarea unui sistem comun de magistrale (compus din n linii pe care pot fi vehiculate, in acelasi timp, cuvinte de n biti) se impune ca cel mai simplu si economic mod de transferare a informatiei, in conditii de maxima siguranta. Se impune ca un singur dispozitiv sa emita un cuvant (Emitator) si un altul singur sa recepteze (Receptor) cuvantul (informatia), selectia acestora fiind foarte riguroasa. Problema este ca, daca sunt multe emitatoare si receptoare conectate la magistrala si nu se executa nici un transfer de informatii, datorita curentilor reziduali pe care fiecare etaj final al portilor ii are, se produce un consum de putere suplimentar care nu este deloc de neglijat. De asemenea, daca se ia in considerare saltul de tensiune de la nivelul logic 0 la nivelul logic 1, sau invers, apar fluctuatii de curent care pot creea probleme, desi sunt implantate condensatoare de filtraj in anumite locuri ale sistemului numeric. Pentru a se evita acest gen de probleme au fost concepute circuitele TSL. Nu este vorba de existenta a trei nivele logice, asa cum s-ar creea impresia, ci de circuite logice obisnuite, dar care, pe langa 0 logic si 1 logic au si o stare intermediara, numita starea de inalta impedanta, HZ - High Z (High impedance). In figura F 3.5.1 este aratata poarta logica TSL.

F 3.5.1. Poarta logica inversoare TSL. 101

Structura portii TSL se obtine prin completarea portii normale TTL cu dioda D1 si a inversorului I. __ Cand semnalul de validare a iesirii, OE = 0 (Output Enable = iesire valida - 0 logic) este activ, pe emitorul E2 si pe catodul lui D1 tensiunea aplicata este H, deci poarta functioneaza normal, iesirea este validata si poate fi in starea L sau H, dupa valoarea intrarii logice A. __ Daca OE nu este activ (este H), atunci tensiunea de valoare L de la iesirea inversorului, aplicata pe emitorul E2 va duce la blocarea tranzistorului T3 din etajul de iesire si aplicata pe catodul diodei D1 va comanda conductia acesteia, deci semnal L pe baza lui T4, ceea ce duce la blocarea tranzistorului T4 din etajul de iesire, ambele tranzistoare din etajul de iesire fiind blocate. Aceasta stare cu T3 si T4 blocate nu este o stare logica ci este starea de impedanta marita, HZ (high impedance); chiar daca, in mod real, exista curenti foarte mici, de ordinul A, se poate considera ca poarta TSL este deconectata electric de la magistrala. Avantajele utilizarii portilor TSL in raport cu utilizarea celor cu colectorul in gol sunt: -ofera o impedanta mica la iesire in H si L (ca la poarta normala) -nu necesita rezistenta aditionala, -in starea de HZ incarca extrem de putin circuitele cu care sunt cuplate la iesire. Inversorul TSL prezentat in figura F 3.5.1 poate fi simbolizat ca un bloc cu o intrare, A si iesirea corespunzatoare, A negat, dar si cu semnalul de comanda OE - output enable. Cerculetul mic de la iesire semnifica faptul ca este vorba de inversare a semnalului. Daca acesta lipseste, nu mai este simbolul unui inversor ci al unui repetor (A intrare, A iesire) care are rolul de a mari puterea semnalului A, un lucru foarte necesar in orice dispozitiv numeric. Semnalul de comanda, OE, permite functionarea inversorului din punct de vedere logic, atunci cand este 0 logic; iesirea este determinata de valoarea logica de la intrare (F 3.4.2). Daca OE nu permite functionarea inversorului, atunci iesirea va fi in starea de HZ (inalta impedanta), ceea ce este echivalent (din punct de vedere electric) cu deconectarea de la linia la care este totusi cuplat fizic (este conectat, in acest caz, prin rezistente foarte mari, practic infinite, adica deconectat) Cerculetul aflat pe intrarea in inversor semnifica faptul ca semnalul OE este activ in starea logica 0 (Low); lipsa lui ar fi implicat activarea pe nivel logic 1 (High).

F 3.5.2. Inversor TSL simbol.

102

2. Parametrii portii fundamentale TTL. Familia de CI TTL reprezinta prima familie de CI logice care a cunoscut o larga raspandire. Poarta TTL a fost standardizata in 1964 de Texas Instruments si a fost perfectionata continuu, aparand diferite serii de CI, dupa cum urmeaza: - Seria clasica: seria normala, seria rapida, seria de putere redusa.

- Seria cu diode Schottky. - Seria TSL

Folosirea tranzistorului multiemitor a asigurat cateva avantaje care ar fi fost greu de obtinut intr-un alt fel: timp de comutare inversa mai mic decat la alte tipuri de CI, deoarece asigura eliminarea sarcinii stocate in baza lui T2 prin calea de rezistenta minima creata de saturarea lui T1, cand la una din intrari este prezenta valoarea 0 logic. Tranzistorul multiemitor inlocuieste combinatiile de diode si rezistente, simplificand geometria spatiului ocupat in cristalul semiconductor (siliciu), reducand implicit si capacitatile parazite si asigurand viteze mai mari de comutare. Dimensiunea mai mica duce si la scaderea pretului de cost, dar si la posibilitatea realizarii mai multor circuite pe acelasi cip. Constructia etajului de iesire in contratimp (totem-pole) asigura o impedanta redusa a sursei de semnal, de aici rezultand timpi redusi de comutare si capacitatea mare de comanda (FAN OUT = 10, destul de mare). S-au realizat si CI - OC, open collector (cu colectorul in gol) cu posibilitatea realizarii functiei SI cablat; de asemenea exista o larga gama de CI cu diferiti parametri de consum si timpi de propagare. Aparitia seriei CI TTL Schottky si a seriei TSL au insemnat adevarate salturi tehnologice, dar si in cresterea calitatii dispozitivelor numerice folosite in toate domeniile de activitate de omul de astazi. Vom trece in revista parametrii mai importanti ai CI TTL. 1. Carcteristica de transfer Uo = f(Ui) este prezentata in figura F 3.5.3, unde s-au trecut si valorile reale de tensiune, rezultand: Pentru iesire: plaja nivel inferior garantat: plaja nivel superior garantat: Pentru intrare: plaja nivel inferior admis: plaja nivel superior admis: 0V V0Lmax (0,4V); V0Hmin(2,4V) +5V; 0V VILmax (0,8V); VIHmin (2V) +5V.

Altfel spus, - intrare: VIHmin = 2V, VILmax = 0,8V si - iesire: V0Lmax = 0,4V, V0Hmin = 2,4V. 103

F 3.5.3 Caracterstica UOUT = f(UIN) si valorile reale de tensiune.

2. Imunitatea la perturbatii a portii TTL se calculeaza cu relatiile cunoscute: ML MH = = VILmax VIHmin V0Lmax V0Lmin = 0,8 - 0,4 = 0,4V = 2,0 - 2,4 = -0,4V

Valorile de mai sus se refera la cazul cel mai defavorabil (valorile cele mai mici pentru marginile de tensiune); ca valori tipice se pot considera ML = 1V, MH = -1V.

104

3. Factorii de incarcare la intrare si la iesire pot fi determinati avand masurate valorile curentilor de intrare si iesire pentru marimile L si H (deci 4 valori) si rezultand in final FAN-OUT = 10. Astfel avem: - curentul de intrare m,axim in cazul cand se aplica nivelul logicsuperior este: IIHmin = 40 A; - curentul de intrare maxim in cazul cand se aplica nivelul logic inferior este: IILmax = -1,6 mA; - curentul de iesire minim cand la iesire apare nivelul logic inferior este: I0Lmax = 16 mA; - curentul de iesire minim cand la iesire apare nivelul logic superior este: IoHmin = -0,8 mA. In consecinta, FAN-OUT = 10, respectiv FAN-OUT = 20, dupa cum iesirea portii se gaseste la nuvelul logic inferior sau superior. Asa cum s-a precizat, se alege valoarea minima dintre ele, rezultand FO = 10 pentru portile TTL. 4. Timpul de propagare al portilor TTL din seria normala este de 10ns. Este datorat folosirii etajului totem-pole pentru iesire (tranzistoarele T3 si T4 si rezistenta de 130 ), astfel incat incarcarea capacitatilor parazite de la iesirea portii se va face printr-o rezistenta mult mai mica, aparand o constanta de timp redusa (t = RC). Rezistenta de iesire a etajului final este 15 in starea Low (T4 - ON, T3 - OFF) si 70 in starea H (T4 - OFF, T3 - ON); acest fapt permite si amortizarea rapida a perturbatiilor dinamice. Descarcarea capacitatilor de la iesire se face prin tranzistorul T4, tot cu o constanta de timp redusa. Tranzistorul multiemitor asigura curenti mari pentru baza lui T2, atat la blocarea cat si la deblocarea acestuia, fapt cu influenta pozitiva asupra timpului de propagare (micsorare). Atunci cand tranzistorul multiemitor (T1) trece de la conductia in regim invers la conductia in regim normal, curentul sau de colector asigura un curent de baza invers mare pentru blocarea tranzistorului T2 5. Consumul mediu de putere al portii TTL fundamentale este in jur de 10 mW. Trebuie subliniat faptul ca, in timpul comutarii etajului final ( numit totem-pole in documentatia de limba engleza), exista un interval de timp relativ scurt cand conduc ambele tranzistoare T3 si T4. In acest timp circuitul absoarbe un curent important de la sursa de alimentare si pot apare supracurenti de scurta durata care pericliteaza sursele de tensiune si creeaza perturbatii importante in schema. Pentru aceasta se iau masuri de decuplare a surselor, nu numai la bornele de iesire, ci si local, pentru fiecare 3 -5 module integrate (prin montarea de condensatoare).

105

3. CI cu cuplaj in emitor - ECL (Emitter Coupled Logic). Parametri. Circuitele ECL fac parte din categoria circuitelor logice ultrarapide, avand timpi de propagare extrem de redusi, de 1 4 ns, dar la un consum de putere relativ ridicat, ceea ce a dus la utilizarea lor mai limitata, mai ales in aplicatiile care impun viteze de functionare foarte ridicate, adica, implicit la frecvente ridicate (1 GHz). CI - ECL functioneaza cu tranzistoare nesaturate, adica, procesele de comutare se fac intre regiunea de blocare si regiunea de saturatie a caracteristicilor de iesire (practic in RAN regiunea activ normala), la valori mici ale curentilor de baza si de colector. O alta caracteristica a acestor circuite este ca trecerea de la o stare logica la alta se face cu salturi de tensiune mici ca amplitudine, in comparatie cu CI in care tranzistoarele lucreaza intre blocare si saturatie, acest lucru contribuind de asemenea la performantele circuitelor ECL. Timpul de propagare marit la CI TTL este determinat de timpul de comutatie inversa a tranzistorului (din starea ON-conductie in starea OFF-blocat), care este mai mare decat timpul de comutare directa (OFF ON), deoarece trebuie extrasa sarcina in surplus, stocata in baza in timpul lucrului in saturatie. Deci, lucrand in regiunea activ normala, comutarea va fi la fel de rapida si intr-un sens si in celalalt, in total rezultand timpi de comutatie foarte scurti. CI ECL nu mai functioneaza pe baza comenzii de inchidere (tranzistor blocat, OFF) sau deschidere (saturatie, tranzistor ON) ci, prin comutarea curentului de la un tranzistor la altul. Sructura de baza este aceea a unui amplificator diferential la care se comanda trecerea curentului comun din emitoare de pe un tranzistor pe celalalt, asa cum se arata in figura de mai jos, F 3.5.4.

F 3.5.4. Schema de principiu a unui amplificator diferential. Baza tranzistorului T2 este mentinuta la tensiunea de referinta VR. Daca tensiunea de intrare VI este destul de mica fata de VR, tranzistorul T1 este blocat si T2 conduce, notam curentul cu I. Valorile VR, RC2, si I se aleg astfel incat T2 sa conduca in regim activ normal (RAN). 106

Cand VI = VR, ambele tranzistoare conduc (in RAN) cu un curent egal cu I / 2. Odata cu cresterea tensiunii VI, creste si tensiunea din emitorul comun, deoarece: VRe = VI VBE1.

Cand VI atinge si depaseste valoarea de referinta VR, T2 se blocheaza si T1 intra in conductie, preluand tot curentul I. Totul se desfasoara ca si cum o variatie a tensiunii VI peste valoarea VR comuta curentul de emitor de pe T2 pe T1. Deoarece emitoarele celor doua tranzistoare sunt legate impreuna printr-o rezistenta de emitor, familia logica se numeste CI cu cuplaj prin emitor si se caracterizeaza prin folosirea tranzistoarelor nesaturate si nici blocate, mai precis: tranzistoarele functioneaza in RAN. Schema unui circuit ECL care realizeaza functiile SAU si SAU NU cu doua intrari este prezentata in contunuare in figura F 3.5.5.:

F 3.5.5. Poarta ECL: schema electrica. In paralel cu T1, din schema precedenta, este conectat si T1, pentru a se asigura intrarile pentru cele doua variabile: A, B. Tensiunea de referinta (VR) este asigurata de grupul D1, D2 si R8, prin intermediul repetorului de tensiune realizat cu tranzistorul T3. Semnalele de iesire se culeg din cele doua colectoare ale amplificatorului diferential de baza. Se observa ca tranzistoarele au colectorul legat la masa (0V), iar emiterul este legat la tensiunea negativa (-5,2) prin rezistentele respective. S-a preferat acest tip de alimentare pentru a se preintampina un scurtcircuit intre iesiri (T4 si T5), care ar afecta doar rezistentele R9 si R10, in stuatia actuala. 107

In tabelul urmator prezentam valorile logice ale intrarilor si starea corespuzatoare a tranzistoarelor din schema, inclusiv valorile iesirilor F1 si F2:

A 0 0 1 1

B 0 1 0 1

T1 OFF OFF ON ON

T1 OFF ON OFF ON

T2 ON OFF OFF OFF

F1 0 1 1 1

F2 1 0 0 0

Nivelele tensiunilor de iesire sunt: - pentru 1 logic - pentru 0 logic -0,8V, -1,8V.

Poarta ECL este formata din trei grupe de circuite: -amplificatorul diferential de intrare, care cuprinde in partea sa stanga doua tranzistoare legate in paralel (T1, T1) si in partea dreapta, tranzistorul T2, -circuitul de polarizare, care da tensiunea de polarizare pentru baza tranzistorului T2, format din T3, grupul de diode (D1, D2) si rezistentele respective, -doua repetoare pe emitor (T4 si T5). Amplificatorul diferential asigura o impedanta de intrare mare circuitului si o buna stabilitate la fluctuatiile tensiunii de alimentare. Circuitul de polarizare elimina necesitatea unei surse separate de tensiune si prezinta avantajul ca regleaza in mod automat tensiunea de pe vaza lui T2, astfel incat la variatia nivelelor logice cu temperatura, valoarea ei sa se mentina la jumatatea zonei de tranzitie a caracteristicii de transfer. Repetoarele pe emitor prezinta o impedanta redusa de iesire, deci un factor de incarcare la iesire foarte ridicat si un timp de propagare redus, datorita incarcarii rapide a capacitatilor parazite. Ele au rolul ca, pe langa amplificarea mare de curent, sa introduca si deplasarea de nivel necesara pentru asigurarea nivelului logic de tensiune la iesire. Nivelurile de tensiune logica sunt determinate nu de rezistentele R3 si R5, ci de raporturile de rezistente R3 / RE si R5 / RE, ceea ce constituie un alt avantaj, deoarece tolerantele raporturilor de rezistente pot fi reduse la 1% la circuitele integrate, in timp ce valorile nominale ale unei rezistente separate sunt afectate de tolerante de 20%. Existenta a doua iesiri complementare, la care se obtin simultan functiile SAU si SAUNU, constituie un avantaj foarte important al circuitelor ECL, deoarece se poate reduce cu 30% numarul componentelor necesare, daca ar fi disponibila o singura iesire, de tip SI - NU sau SAU - NU. Poarta fundamentala ECL a fost elaborata de catre firma MOTOROLA, in anul 1963. 108

Parametrii portii fundamentale ECL. Dupa aparitie, circuitele ECL au cunoscut perfectionari frecvente, dezvoltandu-se o varietate mare de astfel de circuite. Imunitatea la perturbatii este de 0,2V, reprezentand 25% din saltul efectiv de tensiune ligica, deci, un procent ridicat, satisfacator. Acest parametru este influentat favorabil si de modul de alimentare al circuitului: circuitul de colector se conecteaza la borna de masa, iar circuitul de emitor la borna negativa a sursei. Acest mod de conectare foloseste faptul ca, in toate schemele elctronice, conductorul mesei prezinta rezistenta cea mai mica, astfel ca perturbatiile care apar pe aceasta cale sunt minime. De aceea poarta ECL este bine protejata impotriva perturbatiilor. Factorul de incarcare la iesire, FAN-OUT = 10, timpul de propagare este de 4 ns, tensiunea de alimentare Vee = -5,2, puterea consumata este 95 mW.

109

4. Familia de CI - IIL, I2L (Integrated injection Logic). Familia de CI - IIL este realizata cu tranzistoare bipolare pnp si npn. Structura de circuit a acestei familii nu foloseste decat tranzistoare ca elemente componente; acest fapt, plus acela ca intre diferite zone de circuit nu sunt necesare difuzii pentru izolarea componentelor fac posibila realizarea unor circuite cu o densitate foarte mare de elemente, comparabila cu cea a circuitelor tip NMOS sau CMOS, pe care le vom prezenta in capitolul urmator. Elementul de baza a acestei familii de circuite este inversorul. Principial, circuitul este aratat in figura urmatoare (F 3.5.6), conectat cu circuite similare, atat la iesire cat si la intrare:

F 3.5.6. Inversorul IIL. Tranzistorul T2 functioneaza blocat sau saturat, corespunzator nivelelor logice prezente la intrare: - pentru T2 saturat (T2 - ON),nivelul logic la iesire, reprezentand nivelul L, este dat de tensiunea de saturatie a tranzistorului (VCEsat 0V); pentru T2 blocat, nivelul logic la iesire corespunde nivelului H; daca aceasta iesire este conectata la o poarta identica, cum este cazul de fata, atunci acest nivel H va fi chiar tensiunea baza-emitor a lui T3, respectiv 0,7 0,8V; daca iesirea este in gol, nivelul logic H poate fi recunoscut numai prin conectarea lui intr-o retea, important fiind ca tranzistorul este blocat (T2 OFF) si prin colectorul lui nu trece nici un curent.

Din punct de vedere electric, nivelul L corespunde unui scurtcircuit la iesire, iar nivelul H corespunde unui circuit intrerupt. Daca T2 are la intrare nivelul L (T1 ON), generatorul de curent (Io) din baza lui T2 este scurtcircuitat la masa si baza ramane nepolarizata, T2 este OFF, iesirea lui logica fiind H si generatorul Io al lui T3 va furniza curentul necesar pentru intrarea acestuia in saturatie (intrarea lui T3 este la nivel H). Daca T2 are la intrare nivelul H, adica T1- OFF, iesirea lui T2 va fi in starea L. Logic, aceasta este functionarea unui inversor. 110

Pentru obtinerea a mai multor functii logice, este util ca T2 sa fie realizat cu mai multe colectoare, fiecare colector fiind o iesire independenta a inversorului, putand fi conectata la diferite intrari. Legarea impreuna a mai multor colectoare de la diferite inversoare permite obtinerea de functii logice de mai multe variabile. Generatorul de curent constant Io este realizat printr-o structura de tranzistor pnp lateral. Colectorul acestuia este acelasi cu baza inversorului, iar baza T pnp este aceeasi cu emitorul lui T, prin legatura la masa, asa cum se arata in figura urmatoare (F 3.5.7).

F 3.5.7. a) Inversorul IIL; b) circuitul NAND - IIL. Circuitele nu functioneaza fara sarcina. Daca Vcc = 1,5V, VL < 20 mV si VH 0,8. Inversorul IIL si simbolul lui sunt aratate in figura a), F 3.5.7. Operatorul NAND IIL, figura b) F 3.5.7. se deosebeste de inversor doar prin existenta a doua borne de intrare. Iesirea va fi in starea H numai daca ambele intrari sunt in starea logica L. Familia IIL este perfect adaptata la realizarea functiei cablate, un exemplu in acest sens fiind circuitul NOR IIL:

F 3.5.8. Circuit NOR IIL. 111

Chestionar.

1. Ce inseamna TSL si care este rolul CI TSL? 2. In ce a constat impactul CI TSL in proiectarea si constructia computerelor? 3. Care sunt avantajele portilor TSL, in raport cu CI OC (open collector)? 4. Care este semnificatia semnalului OE - output enable? 5. Care sunt cele mai importante serii de CI - TTL? 6. Care este valoarea timpului de propagare a CI TTL? Dar conumul de putere? 7. Care este principala caracteristica a CI ECL? 8. Cum este obtinut timpul de propagare foarte scazut al CI ECL? 9. Care este principiul de functionare al CI ECL? 10. Care este semnificatia initialelor: I I L? 11. Care este elementul logic de baza al CI TTL? 12. Caror factori se datoreste posibilitatea realizarii unei mari densitati de componente pe unitatea de suprafata a cristalului, referitor la CI TTL?

112

Tema 3. 6.

CI cu tranzistoare MOS. 1. 2. 3. 4. 5. T MOS in regim de comutare. Avantaje tranzistoare MOS - avantaje tranzistoare bipolare. Porti logice N - MOS. Porti logice CMOS. Familia CI BiCMOS.

1. Tranzistoare MOS in regim de comutare. Tranzistorul cu efect de camp (FET - Field Effect Transistor), a aparut dupa tranzistorul bipolar. Ne vom referi la tranzistoarele FET cu canal n, deoarece sunt cele mai folosite in tehnologia actuala a circuitelor integrate, mai ales tranzistoarele FET - MOS (cu grila izolata, metal oxid semiconductor) cu canal indus (imbogatire), dar si la tranzistoarele FET - MOS cu canal p, care sunt utilizate de componentele complementary symmetry numite CMOS. Daca tranzistoarele npn si pnp erau numite tranzistoare bipolare, pentru ca la conductia curentului electric prin ele participa ambii purtatori de sarcina (electroni si goluri), tranzistoarele cu efect de camp se numesc tranzistoare monopolare, deoarece la conductia curentului electric prin ele participa un singur tip de purtator de sarcina. Inainte de a le prezenta pe scurt, sa reamintim ca efectul de camp consta in exercitarea fortelor de atractie intre sarcini electrice de semn contrar si a fortelor de respingere intre sarcini electrice de acelasi semn; orice sarcina electrica avand generat in jurul sau acest camp electric, care are aceasta proprietate. Este una din caracteristicile fundamentale ale materiei. La tranzistorul bipolar, controlul curentului care il strabate se realizeaza ca o consecinta a unor fenomene de injectie in baza a purtatorilor si de difuzie a acestora catre colector. In tranzistoarele unipolare (monopolare), controlul curentului se realizeaza cu ajutorul unui camp electric care moduleaza conductanta caii de trecere a curentului. Calea de trecere a curentului se realizeaza la suprafata sau in volumul unui semiconductor (Siliciu, de obicei) si se numeste canal (existand canal de tip n sau tip p). Acest canal reprezinta partea activa a unui tranzistor FET si este delimitat de doua contacte ohmice care servesc la introducerea si extragerea curentului: sursa (S) si drena (D). Prin aplicarea unei diferente de potential celor doua contacte (potentialul de referinta il va constitui sursa S), prin canal va circula un curent electric, notat ID curent de drena (asa cum la tranzistoarele bipolare aveam curentul de colector Ic). Valoarea curentului este determinata de campul electric aplicat din exterior (se aplica un potential pozitiv sau negativ pe grila, comparat cu potentialul existent in sursa (S), perpendicular pe canal, prin intermediul unui electrod numit grila (G) sau poarta (G - gate, in engleza). Dupa modul in care se obtine un canal cu conductanta dependenta de campul electric, exista urmatoarele tipuri de tranzistoare FET: - FET cu jonctiune (jFET), - FET cu grila izolata, MOS FET (Metal-Oxid-Semiconductor - FET): - MOS FET cu canal indus si - MOS FET cu canal initial. 113

Vom prezenta, pe scurt, cele trei tipuri de tranzistoare FET. A. FET - J, cu jonctiune si canal n, simbol si caracteristica de transfer:

canal n

canal p

F 3.6.1. Tranzistorul FET jonctiune: a) structura de principiu; b)simboluri: in dreapta FET cu canal p, in stanga FET cu canal n; c) caracteristica de iesire: ID = f(UGS). Intre zona p+ (conectata la terminalul grilei, G) si canalul n care leaga sursa (S) de drena (D) se afla jonctiunea p-n, asa cum se vede in figura a). Daca aceasta jonctiune este polarizata invers (negativ pe G si pozitiv pe sursa-S) se va petrece ceea ce se intampla in orice jonctiune p-n: zona jonctiunii se mareste, canalul n devine din ce in ce mai ingust, curentul de drena (ID) se micsoreaza, pana devine nul. Tensiunea UGS (de ordinul voltilor) la care curentul de drena devine egal cu zero se numeste tensiune de prag si se noteaza cu Up. Invers, cand tensiunea grilei, UGS < 0, ia valori de la valoarea -Up pana la 0V, curentul de grila creste (cum se arata in figura c) F 3.6.1), pana la valoarea maxima Iss, care corespunde valorii nule a tensiunii de grila (Iss = 2 20mA). Fara sa insistam asupra altor parametri ai tranzistorului jFET, prezentam principalele aplicatii ale acestuia: folosite in etaje de amplificare de zgomot mic si impedanta mare de intrare (circuite Hi-Fi, High Fidelity), comutatoare de semnal analogic din circuite de esantionare se memorare, in circuitele de multiplexare si demultiplexare a semnalelor analogice, amplificatoare de inalta frecventa.. 114

B. FET - MOS cu canal initial (depletion - cu saracire), simbol si caracteristica de transfer: Tranzistoarele MOS-FET sunt foarte utilizate in circuitele integrate digitale, atat ca dispozitive active cat si ca rezistente sau capacitati. CI cu MOS-FET pot fi produse cu un nivel mare de complexitate si la preturi de cost scazute. Chiar daca performantele lor, legate de frecventa nu sunt deosebite, cresterea gradului de integrare prin micsorarea dimensiunilor duce la reducerea capacitatilor parazite si la cresterea vitezei de lucru. MOS-FET cu canal initial poate fi cu canal n sau cu canal p. Vom prezenta pe cel cu canal n, celalat fiind asemanator, schimbandu-se doar polaritatea tensiunii UGS.

F 3.6.2. MOS-FET cu canal initial: a) structura de principiu; b) simboluri si diagrame; c) simbol uzual. 115

Asa cum se observa in figura F 3.6.2. a), canalul initial, obtinut tehnologic, poate fi ingustat (slabit, subtiat) prin aplicarea unei polaritati negative (UGS < 0) pe grila, ceea ce duce la micsorarea curentului de drena, pana la anularea lui in punctul Up = UGS, sau poate fi crescut prin aplicarea unor polaritati pe grila din ce in ce mai pozitive. C. FET - MOS cu canal indus (enhancement - cu imbogatire), simbol si caracteristica de transfer:

F 3.6.3 MOS-FET cu canal indus:a) cu canal n; b) cu canal p; c)simboluri uzuale. Structura fizica este aceeasi cu a tranzistorului cu saracire (se numeste asa, saracire pentru ca din stratul care conduce curentul, canalul initial, se pot indeparta sarcini electrice, prin efect de camp pentru canal n se aplica o tensiune negativa pe grila producandu-se o slabire, o ingustare a canalului), doar ca nu exista canalul initial. 116

Acesta trebuie creeat, indus, prin aplicarea unei tensiuni pozitive pe grila si prin efect de camp, sarcinile pozitive vor fi indepartate, iar sarcinile negative vor fi atrase, constituind canalul indus. Daca aceasta tensiune pozitiva (fata de sursa S) creste, creste si canalul se imbogateste, creste si curentul de drena (ID); lucrurile se petrec invers, daca aceasta tensiune scade. Cand tensiunea UGS = Up, curentul de drena se anuleaza.

Inversorul MOS. Prin definitie, tensiunea de prag Vp (are valori tipice de 2 5 V) este tensiunea la care curentul de drena are valoarea de 10 A . Marindu-se tensiunea de drena, se ajunge la un punct de saturatie in regiunea caracteristicilor de iesire, dincolo de care curentul de drena ramane constant, tranzistorul intrand in zona de saturatie, asa cum se arata in caracteristica de iesire: ID = f(UDS), din figura urmatoare, F 3.6.4.

F 3.6.4. Caracteristica de iesire: ID = f(UDS).

Intrarea la un tranzistor MOS-FET este o capacitate, cu marimea de ordinul pF, in paralel cu o rezistenta de ordinul 1014 , deci foarte mare. Comanda se face in tensiune si nu in curent, ca in cazul tranzistorului bipolar. Referindu-ne la valorile logice de tensiune: 0V = 0 logic, +5V = 1 logic, vom analiza functionarea inversorului format cu tranzistoare MOS FET, adica variabilele de intrare vor lua aceste valorile logice si vom urmari valorile logice ale iesirilor. Inversorul cu tranzistor MOS FET functioneaza asemanator inversorului cu tranzistoare bipolare. 117

In figura F 3.6.5. prezentam inversorul cu tranzistoare MOS FET.

F 3.6.5. Inversor MOS FET: a) cu canal indus n; b) situatia T OFF; c) situatia T ON. In cazul in care variabila de la intrare are valoarea 0 logic, cazul b), tranzistorul MOS cu canal n indus nu poate sa se deschida; mai mult, este blocat, adica OFF, iesirea F fiind conectata la alimentare, care este bara de 1 logic. Deci, F = 1. In cazul in care intrarea este 1 logic (figura c), T are pe grila un potential pozitiv puternic, canalul n este indus si T este ON, potentialul masei aparand la iesire: F = 0 logic. Circuitul cu tranzistor MOS FET cu canal p indus, identic ca forma cu cel anterior este analizat in continuare (F 3.6.6).

F 3.6.6. Circuit cu MOS cu canal p indus: a) repetorul; b) T este ON; c) T este OFF. Se observa ca este cazul unui repetor: cand A = 0, datorita montarii sursei catre tensiunea logica si a drenei la masa, grila tranzistorului este negativa fata de sursa, deci se formeaza canalul p si T este ON, conectand iesirea la masa, deci F = 0. Acest mod de conectare o sa-l gasim in CI care folosesc tranzistoarele complementare. 118

2. Avantajele tranzistoarelor MOS si a tranzistoarelor bipolare. A. T MOS - monopolare.

a. In legatura cu tehnologia tranzistoarelor MOS, trebuie subliniat faptul ca aceasta este substantial simplificata, necesitand un numar de aproximativ 35 de operatii de baza, in comparatie cu 140 operatii, in cazul tranzistoarelor bipolare. Aceasta simplificare duce la reducerea numarului de rebuturi, concretizata intr-o scadere 10 ori a pretului de cost, pentru o functie data. b. Rezistenta de intrare a T MOS este extrem de ridicata, in jur de 1015 , in cazul dispozitivului integrat. c. Suprafata ocupata de T MOS pe plcheta de siliciu este de numai 0,0009mm2, fata de suprafata de 0,04 mm2 necesara pentru un T bipolar. Aceasta se datoreste faptului ca rezistenta de intrare a T MOS este foarte mare, curenrul de comanda avand doar rolul de incarcarea capacitatii reduse a portii (0,2 - 0,5 pF) d. Cuplajul dintre etajele cu tranzistoare MOS se poate face direct, fara circuitele de polarizare sa deplasare de nivel. e. T MOS integrate in aceeasi placuta de siliciu nu trebuie izolate intre ele prin insule, fapt care contribuie la marirea densitatii elementelor utile. f. Realizarea rezistentelor mari este dificila in tehnica bipolara. In cazul T MOS, acestea se pot folosi ca rezistente active, obtinandu-se valoarea dorita prin alegerea punctului de functionare pe caracteristicile de iesire ale dispozitivului. Posibilitatea de utilizare a T MOS ca rezistenta activa, prin legarea portii la sursa de alimentare, rezistenta intervenind in circuit atunci cand T MOS legat in serie cu rezistenta activa este aratata in figura urmatoare.

F 3.6.7 Montaj cu T MOS rezistenta activa. Toate T MOS care intervin in schemele prezentate ulterior sunt de acelasi tip, cu canal n sau p indus (imbogatire), fara a se mai reprezenta legatura la masa a substratului.

119

B.

T -bipolare. T bipolar saturat, definita de raportul: Uce.sat / Ic.sat T MOS au rezistente de trecere mari, in jur

a. Rezistenta de trecere a

rt =

este redusa, avand valori tipice de cca 15 . de 10 k, in cazul circuitelor integrate.

b. Factorul de zgomot al T MOS este relativ mare in comparatie cu al T bipolare, motiv pentru care nu este posibila utilizarea T MOS in primul etaj al amplificatoarelor. c. Timpul de comutare al T MOS este mai mare decat al T bipolare, fiind limitat inferior de constantale de timp relativ mari, asociate incarcarii si descarcarii capacitatilor interne si parazite. Din cele prezentate rezulta clar superioritatea T MOS fata de T bipolare in privinta puterii consumate, a densitatii de asmblare si a pretului de cost. Viteza lor de comutare redusa a dus la cautarea unor solutii, respectiv la tehnologii, care sa rezolve acest lucru, astfel aparand familia de ciruite COS MOS (Complementary symmetry - MOS, prescurtat CMOS), care vor fi prezentate mai tarziu.

120

3. Porti logice N MOS. Poarta elementara cea mai simpla este inversorul, iar acesta poate fi realizat in diferite variante. Ca structura de circuit, inversorul MOS este asemanator cu cel cu T bipolar, dar apar diferente in functionare, determinate de tranzistorul unipolar ( tranzistor la care curentul este asigurat prin participarea unui singur tip de purtator de sarcina, fie goluri - tip p, fie electroni tip n, cele mai folosite fiind cele de tip n, datorita mobilitatii mai mari ale electronilor decat a golurilor). Intrarea la un tranzistor MOS (metal-oxid-semiconductor), numit si cu poarta izolata, este echivalenta cu o capacitate de ordinul picofarazilor ( 1 pF), in paralel cu o rezistenta de ordinul a 1014 (pe care o putem considera infinita), asa cum s-a precizat mai inainte. Deci la un inversor MOS comanda se face in tensiune, iar sarcina inversorului, daca e tot un inversor, va fi tot o capacitate. Sa ne reamintim ca la T bipolare, comanda se facea practic prin injectie de curent, a carui marime se asigura prin anumite valori ale tensiunii, stabilite prin polarizare. Viteza de comutatie a inversorului depinde de timpul necesar pentru incarcarea si descarcarea capacitatilor, acestea putand fi capacitati interne ale tranzistorului si capacitatile traseelor de conexiuni. Capacitatile interne ale T MOS, cu valori cuprinse 0,01 1 pF, pot fi capacitatile: sursa-substrat (Csb), drena-substrat (Cdb), poarta-substrat (Cgb), precum si capacitatile poartadren Cgd) si poarta-sursa (Cgs). Pentru un model simplificat, toate capacitatile sunt grupate intr-o singura capacitate totala Ct, conectata pe iesire. Capacitatea poarta-sursa Cgs, de ordinul 0,01 pF, poate fi utilizata pentru stocarea unei sarcini. Tensiunea produsa pe aceasta capacitate de intrare de catre sarcina stocata are acelasi efect ca si o tensiune de comanda aplicata pe poarta. Un astfel de inversor care utilizeaza sarcina stocata pe Cgs este denumit inversor dinamic si este celula de baza pentru organizarea unor familii de circuite logice (registre de diferite tipuri, memorii....etc). Deoarece sarcina nu se poate pastra intacta timp indelungat, este nevoie de o refacere periodica a acesteia la cel putin 2 ms (f = 500Hz), fenomen numit refreshment (reimprospatare). Sa mai precizam ca parametrii T MOS realizat intr-un CI depind matematic de dimensiunile geometrice ale suprafetelor folosite pentru implantarea acestuia. Lungimea canalului, notata L si latimea acestuia W, sunt cei mai importanti parametri. Prezentam mai jos inversorul NMOS, folosind doua T NMOS, T1 fiind cu canal initial (depletion saracire), cu functia de rezistenta de drena pentru T2, inversorul, cu canal indus (enhancement imbogatire), figura F 3.6.8:

F 3.6.8 Inversorul NMOS. 121

Tranzistorul cu canal initial Tn conduce, chiar daca UGS = 0 (exista legatura grila sursa), datorita acestui canal initial. Tranzistorul activ, notat T, are tensiunea de deschidere pozitiva (Up > 0), si va fi ON sau OFF in functie de marimea tensiunii de intrare (variabila logica).

Poarta NOR cu circuite NMOS. Geometria acestei porti se obtine din cea a inversorului la care se adauga un tranzistor in paralel cu tranzistorul inversor. Am folosit simboluri simplificate pentru tranzistoare. T1 este cu canal initial, T2 si T3 sunt cu canal indus. Timpul de intarziere pe o poarta NOR cu o singura intrare activa (stare H) este la fel ca al unui inversor, daca nu se considera capacitati parazite adaugate. Daca sunt mai multe intrari activate, timpul de intarziere se micsoreaza proportional cu numarul de intrari activate.

F 3.6.9. Poarta NOR cu circuite NMOS

122

Poarta NAND cu CI NMOS. Poarta NAND se obtine din schema inversorului, prin adaugarea in serie a mai multor tranzistoare inversoare. Odata cu cresterea numarului intrarilor, lungimea echivalenta a canalului inversor (pull down) se mareste, iar timpul de propagare pe poarta este timpul de propagare al inversorului inmultit cu numarul intrarilor. De aceea, poarta NOR este preferabila in raport cu poarta NAND.

F 3.6.10. Poarta NAND cu NMOS.

4. Porti logice CMOS. Portile CMOS se obtin din structura de inversor CMOS, prezentat in figura F 3.5.6 La inversorul NMOS, procesul de comutare de la L, la H este mai lung decat cel de comutare de la H la L, adica regimul de incarcare a capacitatii de sarcina (CT) este mai lung decat cel de descarcare. Aceasta diferenta este determinata de constantele de timp diferite de incarcare si descarcare. Incarcarea se face printr-o rezistenta de sarcina, sau un tranzistor conectat ca o rezistenta de sarcina, pe cand descaracrea se face prin tranzistorul inversor, a carui rezistenta de canal este mult mai mica decat a primului tranzistor. Solutia pentru simetrizarea celor doi curenti, de incarcare si de descarcare, este introducerea in locul lui T1 a unui tranziator complementar de tip p obtinandu-se astfel ansamblul MOS - complementar. 123

F 3.6.11. Inversorul C - MOS. Alaturi de schema inversorului este figurata caracteristica de comanda, din care rezulta ca daca A = 0V (0 logic, L) conduce T1 (pMOS conectat cu sursa la alimentare si drena in drena lui T2), deci la iesire vom avea tensiunea de alimentare, din care se scade caderea de tensiune pe T1, dar ramanand puternic pozitiva, respectiv 1 logic, realizandu-se inversarea intrarii, adica functia de inversor. Daca A = VDD (1 logic, H), T2 (NMOS) conduce, aducand la iesire potentialul masei, adica 0 logic, deci realizarea inversarii semnalului de la intrare. Puterea disipata pe inversor in regim static este teoretic nula, pentru ca totdeauna sursa de alimentare este conectata la masa prin rezistenta unui canal blocat (cand nMOS conduce, pMOS este blocat si invers); practic aceasta putere disipata are valori de ordinul nW. Dar puterea consumata in regimurile tranzitorii este foarte pronuntata, sub cele doua forme: -se absoarbe putere de la sursa pentru incarcarea si descaracrea capacitatilor de saecina, care este proportionala cu frecventa semnalului de comanda; -deoarece fronturile semnalului de comanda nu sunt de panta infinita (perfect dreptunghiulare), in intervalul de variatie, cand ambele tranzistoare conduc, sursa VDD este scurtcircuitata la masa, aparand varfuri de curent care maresc puterea consumata si provoaca perturbatii pe linia de alimentare, cu consecinte imprevizibile foarte suparatoare. Prezentam portile CMOS: NOR si NAND in figura F 3.6.12.

F 3.6.12. Poarta NOR si NAND, CMOS. 124

Seria CMOS 4000 a fost introdusa la inceputul anilor `70, cu tensiuni de alimentare VDD = 3 15V si un timp de propagare de 20 150 ns, in functie de tensiunea de alimentare. Deoarece curentul de comanda pe poarta este zero, factorul de incarcare la iesire, teoretic este nelimitat. Totusi, fiecare poarta conectata ca sarcina la iesirea unei alte porti adauga capacitatea sa de intrare, ceea ce duce la cresterea timpului de propagare si a puterii dsipate la poarta care comanda, deci viteza de comutatie a portii scade cu numarul sarcinilor comandate. Uzual, nu se construiesc porti cu mai mult de patru intrari. Intrarile neutilizate nu se lasa sa floteze intre 1 si 0 logic, legandu-se la VDD sau la masa. Primele porti CMOS din seria 4000 erau susceptibile la strapungerile statice ale stratului de SiO2 de sub poarta de comanda, de aceea au fost introduse diodele de descarcare pe intrare. Dupa seria 4000 au aparut seriile HC (High Speed CMOS) si AC (Advanced CMOS) cu tensiuni de alimentare intre 2 6V. Seria HC este optimizata pentru realizarea de sisteme numai cu porti CMOS. Alimentarea este in gama de 2 6V; valorile mai mici ale tensiunii de alimentare sunt recomandate cand se doreste o putere disipata mai mica, iar valorile mai mari cand este necesara o viteza mai ridicata (totusi, practic s-a constatat ca viteze mari de lucru se pot obtine si cu circuite CMOS cu joasa tensiune). Intre HC si TTL nu exista compatibilitate a tensiunilor de intrare si de iesire, de aceea s-a conceput seria HCT (High- speed CMOS, TTL compatible). Seria FCT - Fast-CMOS, TTL compatible - introdusa prin anii 90 a fost perfectionata realizandu-se seria FCT-T - Fast-CMOS, TTL compatible with TTL V0H - care a devenit foarte populara. Seria FCT-T nu contine porti simple ci numai porti complexe pentru comanda liniilor de magistrala, comenzi pentru sarcini mari. S-a cautat ca aceste serii sa fie compatibile cu seriile TTL, obtinandu-se astfel seriile CMOS: 74C, HCT, ACT, cu corespondentele respective: 74C 74TTL(S); HCT 74TTL(LP); ACT 74TTL(ALS). In tehnologie CMOS exista o varianta silicon-on-saphire (SOS) care utilizeaza ca substrat safirul (oxid de aluminiu). Componentele CMOS realizeaza capacitati de intrare mai mici, viteze de comutatie mai ridicate, rezistente la radiatii Tehnologii alternative non-silicon sunt cele cu arseniura de galiu (GaAs) sau cele cu jonctiuni Josephson (metal semiconductor). Exista si dispozitive care combina atat tehnologia bipolara cat si pe cea CMOS. Numite BiCMOS, combina avantajele tehnologiei bipolare (viteza si capacitatea de comanda a sarcinilor) cu cele ale tehnologiei CMOS (puterea disipata redusa si margine de zgomot marita).

125

5. Familia de CI logice BiCMOS. Aceasta tehnologie combina avantajele tehnologiilor bipolare (viteza mare de lucru, putere mare de comanda, imunitate la incarcare electrostatica) cu avantajele tehnologiei CMOS (consum redus, posibilitatea realizarii de structuri foarte complexe, cu un mare grad de integrare). Ca urmare, componentele BiCMOS au o viteza de lucru ridicata si un consum de putere redus (cu 90% mai mic decat componentele TTL cele mai rapide). Structura CI BiCMOS este realizata cu CI CMOS in etajele de intrare, care asigura o impedanta de intrare foarte mare, curent de intrare practic nul si capacitate de intrare mica si componente TTL in etajele finale, acestea marind viteza de lucru si puterea de comanda. Tranzistoarele bipolare au un consum static de putere destul de mare (circuitele de polarizare consuma putere permanent), dar puterea dinamica absorbita este redusa (deoarece plaja de variatie a tensiunilor de iesire este mai mica decat la tranzistoarele MOS, de aici rezultand si viteza marita de lucru), ceea ce face ca CI BiCMOS sa aiba un consum de putere dinamica foarte mic la frecvente mari. Pentru exemplificare, prezentam schema etajelor de intrare si de iesire ale unui circuit realizat in tehnologia BiCMOS in figura F 3.6.13.

F 3.6.13. Schema unui CI BiCMOS. Pentru a asigura compatibilitatea intrarii cu nivelele logice TTL, s-a introdus in circuitul de intrare dioda D1 si tranzistorul T1, care fac ca tensiunea de prag a intrarii CMOS sa coboare la nivelul de 1,5V.

126

Chestionar.

1. Ce inseamna tranzistoare bipolare si monopolare? 2. Ce inseamna camp electric? 3. Cum se realizeaza controlul curentului de drena la tranzistoarele monopolare? 4. Care sunt tipurile de Tranzistoare monopolare? 5. Descrieti functionarea T MOS cu canal n, cu saracire (depletion). Cum se mai numeste canalul? 6. Descrieti functionarea T MOS cu canal n cu imbogatire (enhancement). Cum se mai numeste canalul. 7. Explicati functionarea inversorului MOS cu rezistenta R in circuitul de drena. 8. Enumerati avantajele T MOS si ale T bipolare. 9. Explicati functionarea portii NOR cu circuite NMOS (F 3.6.9.) 10. Explicati functionarea portii NAND - NMOS (F 3.6.10.) 11. Cum functioneaza inversorul C-MOS (F 3.6.11.) 12. Explicati functionarea portilor NOR si NAND CMOS (F 3.6.12). 13. Cum sunt structurate CI BiCMOS? 14. Care sunt avantajele CI BiCMOS?

127

128

Tema 3. 7

Porti C - MOS diverse. 1. 2. 3. 4. Porti C - MOS complexe. Porti C - MOS speciale. CI - LVCMOS, Low Voltage CMOS. Interfatarea TTL-CMOS si CMOS-TTL.

1. Porti CMOS complexe. Pe langa portile standard (AND, OR, NOT, XOR) cu diferite numere de variabile la intrare, tehnologia moderna este capabila de a implementa porti complexe, pentru usurarea realizarii de functii logice diverse cu mai mare usurinta si rapiditate. Implementarea portilor complexe (cu mai multe variabile) impune micsorarea numarului de tranzistoare folosite, aceasta ducand la un consum mai mic de putere si la un timp de propagare mai mic, dar si la micsorarea ariei utilizate pe placheta de siliciu. Trebuie subliniat ca tendinta de miniaturizare a circuitelor impune acest lucru, dar si faptul ca suprafata ocupata de tranzistorul MOS este un parametru decisiv in calcularea curentilor si a tensiunilor de functionare a acestor tranzistoare ( lungimea canalului de conductie, L si latimea acestuia, w definesc parametrii T MOS-ului respectiv). Sa reamintim ca tranzistoarele MOS (cu canal indus sau canal initial) prezinta fenomenul de conductie de suprafata, spre deosebire de tranzistorul cu efect de camp cu jonctiune, T jFET, care se caracterizeaza prin conductie in volum. Odata stabilita expresia functiei logice ce urmeaza a fi implementata, se realizeaza circuitul electric corespunzator, iar pentru realizarea fizica a acestuia se trece la constituirea mastii conform careia se vor implanta pe placheta de siliciu componentele, operatiune care se numeste mapare. Se realizeaza astfel straturi de difuzii cu purtatori de sarcina p si n, adica asa numitul layout, continand desigur si legaturile metalice necesare. Trecand peste fazele tehnologice, sa luam ca exemplu realizarea functiei logice: _______________ F = A (D + E) + BC . Structura portii este data in figura de mai jos, F 3.7.1.

F 3.7.1 Structura portii C-MOS complexe. 129

Se observa partea superioara a circuitului, deasupra punctului de iesire a functiei F, care contine tranzistoarele complementare pMOS si partea inferioara a circuitului continand tranzistoarele nMOS, respectandu-se principiul complementaritatii circuitelor CMOS. In partea inferioara, tranzistoarele asezate in succesiune verticala (unul sub altul) definesc functia AND, iar tranzistoarele asezate in paralel, pe orizontala, definesc functia OR. Astfel, neglijand negatia intregii expresii, avem de-a face cu doua AND-uri: A (D + E), BC, doua produse aflate in disjunctie. AND-ul al doilea, BC, se poate realiza imediat prin asezarea pe verticala a tranzistoarelor care primesc la intrare (pe poarta) variabilele B si C. Primul produs, A (D + E), fiind in disjunctie cu celalat, va ocupa o pozitie paralela fata de BC, dar tinand cont ca avem un AND intre A si (D + E), deci o asezare pe verticala a acestor termeni, tinand cont de disjunctia dintre D si E, care vor aparea pe orizontala, avand deasupra variabila A cu care este in conjunctie (AND). ______________ De aici rezulta schema partii inferioare a circuitului functiei logice F = A (D + E) + BC. Partea superioara a circuitului este diferita ca organizare, circuitul AND impune o asezare pe orizontala a tranzistoarelor, iar circuitul OR pe verticala, datorita complementaritatii componentelor folosite. Structura generala a circuitului este de inversor, asfel negatia pe care am neglijat-o este, de fapt realizata implicit. Sa presupunem ca avem, de exemplu: A = D = B = 1, E = C = 0.

______________ ______ Conform expresiei functiei F = A (D + E) + BC , rezulta imediat F = 1 + 0 = 0. Reamintim ca tranzistoarele NMOS conduc cu 1 logic pe poarta si PMOS conduc cu 0 logic pe poarta. Se observa, tinand cont de aceste lucruri, ca T1 si T2 se deschid, translatand potentialul masei la iesirea circuitului. Pe de alta parte, T1` si T2` deschise nu pot avea nici un efect asupra iesirii, functia F avand valoarea 0, asa cum s-a dedus logic.

130

Prezentam inca un exemplu de circuit CMOS complex, care realizeaza functia: ______________________ F = (B + C)(D + E + A). Functionarea schemei este principial asemanatoare.

F 3.7.2 Circuit CMOS complex. Pentru a intelege mai bine compunerea elementelor logice din etajul superior, trebuie sa transformam expresia data, dupa cum urmeaza: ___________________ ______ __________ _ _ _ _ _ (B + C) (D + E + A) = B + C + D + E + A = B C + D E A. Astfel avem doua circuite inseriate, exact cum arata si figura, dar variabilele sunt negate, conform cerculetului de pe grila fiecarui element al etajului superior. 131

2. Porti CMOS speciale. Atunci cand anumite scheme logice se repeta de mai multe ori in diverse aplicatii, pentru usurinta implementarii se recurge la folosirea circuitelor logice complexe. Dar sunt si situatii care impun anumite configuratii ale circuitelor, de aici aparand circuitele speciale. Vom prezenta cateva astfel de circuite. Pseudo - poarta CMOS. Portile Cmos complexe, cu n intrari, necesita pentru fiecare intrare doua tranzistoare, deci un total de 2n tranzistoare, plus inca doua tranzistoare (un inversor) pentru fiecare din intrarile negate. Rezulta ca reducerea numarului de tranzistoare se impune, mai ales cand numarul de intrari este mare. O varianta de reducere a numarului de tranzistare de la 2n la n + 1 se obtine prin structura denumita pseudo-poarta CMOS, prin substituirea retelei pMOS (partea superioara a circuitului) cu un singur tranzistor pMOS a carui poarta se conecteaza la potentialul masei (deci permanent in conductie, avand rolul de sarcina rezistenta pentru reteaua nMOS) Dezavantajul pseudo-portii CMOS consta in consumul mare de putere in regim static, datorat unui permanent curent prin canalul p, atat timp cat Vo < VDD. Schema acestui circuit este prezentata in figura F 3.7.3, de mai jos.

F 3.7.3 Pseudo-poarta.

F 3.7.4 Poarta cu drenul in gol

Poarta cu drenul in gol (open-drain). Restrictia de a nu se conecta impreuna iesirile portilor TTL este valabila si pentru portile CMOS, deoarece se poate crea o cale de scurtcircuit intre VDD (tensiunea de alimentare) si Vss (potentialul masei, 0V) Eliminarea acestei restrictii se poate obtine prin scoaterea retelei p din structura portilor, acestea avand numai reteaua n. Se numesc porti cu drenul in gol, asemanator circuitelor TTL, porti cu clectorul in gol. 132

Schema de principiu este aratata in figura F 3.7.4. Portile open-drain sunt necesare pentru urmatoarele aplicatii: comanda unor sarcini externe (LED-uri, relee, bobine, rezistente.....), realizarea conexiunii AND-cablat, comanda unor linii de magistrala..... Rezistenta RD se calculeaza in functie de numarul de circuite conectate si de valorile maxime ale curentilor din timpul functionarii.

Poarta TSL. Aceasta poarta prezinta pe langa cele doua stari logice normale H si L, existente la o poarta obisnuita si starea cand iesirea este in inalta impedanta, HZ. Structura unei porti TSL se obtine din cea a unei porti normale la care se inseriaza cate un tranzistor n si p respectiv cu reteaua n si p, figura F 3.7.5.

F 3.7.5. Poarta tip TSL.

F 3.7.6 Buffer TSL neinversor.

Cand semnalul de validare EN (ENable) este activ, EN = 1, poarta are functionarea unei porti normale, iar cand validarea nu este activata, EN = 0, cele doua tranzistoare inseriate sunt blocate, atat calea de conductie prin reteaua n cat si cea prin reteaua p nu sunt in conductie, deci iesirea este in HZ. Aceasta stare este comandata de o alta poarta care ordoneaza traficul de informatii pe magistrala de date. Pentru cazurile cand sarcina ce trebuie camandata este relativ mare sunt utilizate sunt utilizate buffere, asa cum este aratat in figura F 3.7.6. Un buffer TSL se compune din doua tranzistoare complementare T1 si T2 comandate prin portile NAND si NOR. 133

Cand T1 si T2 sunt blocate, iesirea este in stare HZ, fiind conectata la magistrala printro rezistenta teoretic infinita (practic deconectata). Cand T1 conduce, iesirea F este egala practic cu tensiunea de alimentare, deci 1 logic. Daca T2 conduce, iesirea F este conectata la masa, fiind egala cu 0 logic, asa cum rezulta si din tabelul de adevar respectiv. Bufferele CMOS TSL sunt folosite pentru comanda liniilor de magistrale. Daca toate iesirile bufferelor conectate la magistrala sunt in starea HZ, atunci potentialul pe linie este flotant, fiind o sursa pentru zgomot ce poate afecta serios functionarea dispozitivului digital respectiv. Acest inconvenient poate fi inlaturat prin conectarea la linia magistrala a unui circuit (celula) activ de mentinere a nivelului -bus holder- cu rolul de a mentine starea anterioara a magistralei pana la aparitia unei noi configuratii de date. Schema acestui circuit este data in figura F 3.7.7 de mai jos.

F 3.7.7 Circuit de mentinere - bus holder. Celula de mentinere a nivelului pe linia magistrala nu este eficienta cand la magistrala sunt conectati receptori de tip TTL, care necesita curenti de intrare de valori mari (40 50A), in comparatie cu 1 A, curentii de intrare pentru CMOS.

134

Poarta de transmisie CMOS. Este un circuit format din doua tranzistoare MOS, unul cu canal p si celalalt cu canal n, puse in paralel, care permite transmiterea sau blocarea semnalului intre cele doua puncte notate IN si OUT (F 3.7.8).

F 3.7.8. Comutatorul portii de transmisie. Comanda tranzistoarelor Tp si Tn se face cu impulsuri de tact si -negat (semnale in antifaza) produse de un inversor care are valorile logice 0V - 0 logic si VDD - H -1 logic.

F 3.7.9. Poarta de transmisie CMOS. Pentru valoarea H = Uc, semnalul dela intrarea comutatorului (IN) trece la iesirea OUT, deoarece Tn este ON. Pentru valoarea L = 0 = Uc, ambele tranzistoare ale comutatorului sunt OFF si trecerea semnalului prin poarta este imposibil, iesirea OUT fiind in starea de HZ (high impedance). Circuitul este foarte util in prelucrarea semnalelor analogice sau ca element logic in compunerea circuitelor logice (chiar si pentru obtinerea iesirilor cu trei stari TSL a unor etaje logice).

135

3. CI - LVCMOS, Low Voltage CMOS. Circuitele CMOS cu tensiune de alimentare redusa au fost create din doua motive: - reducerea puterii disipate - valoarea redusa a tensiunii de alimentare permite folosirea onor straturi de oxid care izoleaza poarta mai subtiri, deoarece pericolul strapungerii va fi mai scazut. Au fost selectate tensiunile de alimentare: 3,3 V 0,3V; 2,5 V 0,2 V; 1,8 V 0,15V ca valori pentru standardele viitoare. Familia CMOS cu tensiunea de alimentare la 3,3V are definite doua seturi de niveluri logice de tensiuni. Primul set de niveluri, abreviat prin LVCMOS este definit pentru portile CMOS care se interconecteaza numai cu porti CMOS si care corespund seriilor HC si VHC (Very High Speed CMOS), tensiunea fiind 3,3V. Al doilea set de niveluri logice de tensiune, abreviat prin LVTTL (Low-Voltage TTL) este definit pentru portile CMOS care sunt utilizate in aplicatii cu sarcini marite si care pot produce pentru tensiunea de iesire valorile V0L = 0,4V, V0H = 2,4V. Se poate demonstra ca reducerea tensiunii de alimentare de la 5V la 3,3V conduce, teoretic, la o micsorare a consumului de putere cu 34%. Practic, se constata o reducere cu 50 70%, deoarece se micsoreaza si contributia celorlalti parametri care intervin in expresia puterii consumate. Reducerea tensiunii de alimentare s-ar parea ca reduce si viteza de lucru, dar aceasta reducere este compensata de cresterea de viteza prin utilizarea unei geometrii mai fine (componentele au dimensiuni mai mici si deci si capacitati parazite mai mici). In cadrul fiecarui domeniu de tensiuni au fost definite si nivelurile logice de intrare si de iesire. Se impune ca noile CI LV sa suporte tensiunile de intrare si de iesire ale CI TTL si CMOS, aceasta toleranta fiind necesara pentru realizarea de sisteme digitale cu intermixare a circuitelor, cum sunt microprocesoarele si ASIC-urile (Application Specific Integrated Circuit), chiar daca este necesara uneori alimentarea cu dubla sursa de tensiune. In interiorul CI exista circuite buffer speciale care fac deplasarile de nivel necesare. Structurile circuitelor de joasa tensiune permit realizarea unor facilitati noi, cum ar fi: protectie la descarcari electrostatice (Electrostatic Discharge Protection), evitarea starii de flotare a liniilor de magistrale (Bus Hold), intrari / iesiri tolerante la supratensiuni, solutii pentru reducerea perturbatiilor si cresterea imunitatii la perturbatii, inlocuire in stare activa (Live Insertion).etc. Alte aplicatii vizeaza domenuile spatiale, militare, industriale in medii ostile.etc. Utilizarea circuitelor logice de joasa tensiune tinde sa ajunga si sa depaseasca utilizarea circuitelor logice clasice. In viitor va continua dezvoltarea tehnologiei de fabricatie a CI cu tensiune scazuta de alimentare datorita avantajelor evidente ale acestora, precum si realizarea de interfete corespunzatoare cu CI din familiile existente inca in uz. Familia de circuite logice AVC (Advanced Very low-voltage CMOS) sunt optimizate pentru o tensiune de alimentare de 2,5V, dar pot opera si la tensiuni de 3,3V si 1,8V. Deoarece se lucreaza cu tensiuni foarte mici, circuitele de intrare trebuie sa fie bine protejate impotriva oricarei perturbatii, adica linia de intrare nu trebuie sa floteze (sa nu apara varfuri de tensiuni peste semnalele logice L - 0 logic sau scaderi de tensiune, cand semnalul de la intrare este H -1 logic). O solutie este folosirea celulei de mentinere a starii logice (F 3.7.10): 136

F 3.7.10. Schema celulei de mentinere a starii logice. Celula este compusa dintr-un amplificator inversor si doua tranzistoare complementare Tp si Tn care vor conecta linia la masa daca semnalul liniei este L (0-logic este inversat in 1logic si aplicat pe grilele celor doua tranzistoare; Tp este OFF, Tn va fi ON, conectand linia la masa), iar daca linia este H -1logic, celula va conecta linia la tensiunea de alimentare prin Tp (caz asemanatjor celui de mai sus). Celula se numeste Bus Hold Cell si este o solutie moderna pentru situatia cand apare fenomenul de flotare a tensiunii unei linii de semnal (magistrala). In cazul circuitelor LVCMOS aceasta solutie este aplicata obligatoriu. La familia de circuite AVC s-a adoptat o solutie cu control dinamic al iesirii, care consta in modificarea impedantei de iesire si implicit a curentului de iesire pe portiunile de tranzitie a semnalului (impedanta mare si curent mic sau impedanta mica si curent mare).

137

4. Interfatarea TTL CMOS si CMOS-TTL. Interfatarea intre cele doua familii se poate face cu conditia respectarii compatibilitatii nivelurilor de tensiune si a factorilor de incarcare la iesire, Fan-out. Respectarea nivelurilor de tensiune inseamna realizarea unor margini de zgomot in curent continuu: MH, ML pozitive. Valorile nivelurilor de tensiune pe intrare si pe iesire pentru ambele familii sunt reprezentate in figura de mai jos.

F 3.7.11. Niveluri de tensiune pentru seriile CI TTL si CMOS. Exista compatibilitate pe nivelurile de tensiune intre seriile HCT, VHCT, FCT si familia TTL, dar nu exista compatibilitate completa intre HC, VHC si familia TTL. De exemplu, la interfatarea TTL cu HC sau VHC rezulta: ML = VIlmax - V0Lmin MH = V0Hmin - VIhmin = 1,35 - 0,4 = 2,7 - 3,85 = 0,95, valoare foarte buna; = -1,15, valoare imposibila; ar trebui ca

V0Hmin de la TTL sa fie crescuta cu cel putin 1,15V! 138

Respectarea factorului de incarcare in curent la iesire impune ca valoarea maxima a curentului absorbit sau generat la iesirea portii sa fie mai mare sau egal cu suma curentilor respectiv generati sa absorbiti de intrarile tuturor portilor comandate. Conectarea TTL CMOS nu pune probleme, deoarece portile CMOS aproape ca nu necesita curent de intrare (sunt elemente comandate in tensiune). Conectarea CMOS TTL impune calcularea valoarea Fan-out a portii; de exemplu portile HC sau HCT pot comanda 10 porti 74LSXXTTL, dar pot comanda numai doua porti 74SXXTTL. Dam, mai jos, tabelul cu parametrii porilor familiilor CMOS:

La interconectarea portilor CMOS, factorul de incarcare se calculeaza nu in functie de un curent de intrare, ca sarcina standard, ci in functie de de o sarcina capacitiva standard prezentata pe intrare de o poarta. 139

In general, se considera capacitatea de 5pF ca sarcina standard, care aproximeaza capacitatea de intrare medie la o poarta CMOS. Factorul de incarcare la iesire se exprima prin numarul de sarcini standard (numar de intrari) pe care le comanda la iesire. Marirea sarcinii capacitive pe iesire duce la timpi de propagare crescuti (cam cu 1nS pentru fiecare sarcina de 5pF adaugata. Pentru acuratetea unei alegeri a componentelor unei familii de CI, trebuie cautat in catalogul firmei producatoare fiecare parametru luat in discutie; indicatiile generale, date pe o intreaga familie sau serie de CI reprezinta doar o orientare in domeniul respectiv. Prezentam, mai jos, nivelel logice ale principalelor familii CI logice (digitale):

140

Chestionar.

1. Ce inseamna conductie de suprafata si conductie in volum, la tranzistoarele FET? Precizati tipurile de tranzistoare FET respective. 2. Ce inseamna porti complexe si care este utilitatea lor? 3. Care sunt regulile de constituire a portilor complexe (partea inferioara si partea superioara)? 4. Care sunt diferentele si asemanarile in ceea ce priveste condtituirea partii inferioare si a partii superioare a portii complexe? 5. Trasati schema circuitului portii complexe care are functia logica: ________________________ F = (A + B)(C + D) + BC.

6. Care este noutatea pseudo-portii logice CMOS? 7. Explicati functionarea portii logice CMOS TSL (F 3.7.5.). 8. Ce este un buffer si cand se foloseste? 9. Cand apare potentialul de linie flotant si cum se inlatura? 10. De ce au fost create CI LVCMOS? Care sunt tensiunile selectate? 11. Cum functioneaza si care este rolul celulei de mentinere a starii logice?

141

142

Tema 4. Circuite logice combinationale (CLC). T 4.1 1. CLC cu CI - TTL - MSI (medium scale integration). 2. Decodificator BCD zecimal. 3. Multiplexor, demultiplexor ( MUX, DMUX). 4. Sumatoare. 1. Circuite logice combinationale (CLC). Un sistem este caracterizat prin natura semnalelor de intrare, a celor de iesire, prin clasele de functii intrare iesire (transfer) si prin natura prelucrarilor ce au loc in structura sa interna. CLC este un sistem logic, la care putem deosebi cele trei multimi mentionate mai inainte: CLC = ( X, Y, F), unde:

-X reprezinta multimea de configuratii binare ale intrarii, sau multimea cuvintelor de intrare, n elemente: X = {x0, x1, x2,........ xn 1} Multimea cuvintelor de intrare X este complet definita daca cuprinde toate cuvintele binare formate cu cele n variabile (xi), adica un numar maxim de cuvinte: m = 2n -Y reprezinta multimea de configuratii binare de iesire: Y = {y0, y1, ..........yp},
n 2

unde

z = 2m = 2 si p < z. Multimea Y este o multime incompleta, deoarece la iesire nu se regasesc toate cuvintele binare posibile. -F este functia de transfer, inteleasa ca o aplicatie: F : X Y, adica,

y0 = F0 (x0, x1,.............xn - 1 ), = F1 (x0, x1, ......... xn -1 ) y1 ............................................................ yp = Fp (x0, x1, ..........xn - 1 ). Circuitele combinationale reprezinta circuite logice lipsite de legaturi inverse (reactii, feed-back) sau de elemente de memorie. Intr-un CLC semnalele de iesire sunt determinate in orice moment de combinatia semnalelor aplicate pe intrari, conform functiilor logice ale circuitului. CLC realizeaza o anumita prelucrare a variabilelor logice prezente la intrarea circuitului, aceasta prelucrare fiind exprimata complet prin ecuatii logice, dar parametrul timp lipseste cu desavarsire. In general, CLC este realizat printr-un ansamblu de porti logice elementare si complexe, avand n variabile de intrare si p variabile de iesire, scopul CLC fiind de a obtine anumite functii la iesire. 143

In figura F 4.1.1 de mai jos se prezinta simbolurile pentru CLC.

F 4.1.1 Simboluri pentru reprezentarea CLC: a) cu o singura iesire, b) cu iesiri multiple. Etapele parcurse in realizarea (sinteza) unui CLC sunt: -descrierea necesitatilor ce trebuie sa le rezolve CLC - ul, prin text, desen, ....etc -reprezentarea acestei descrieri sub forma unui tabel de adevar, -deducerea functiei logice si minimizarea acesteia, -implementarea acestei functii minimizate sub forma unei retele de comutare, -completarea retelei de comutare cu elemente auxiliare (amplificatoare, elemente de formare a semnalelor, sisteme de afisaj, elemente de executie, de protectie, ........). Ca o exemplificare, se deduce CLC al carui tabel de adevar este dat in figura F 4.1.2.

F 4.1.2. CLC, intrari, iesiri; tabel de adevar. _ _ F1 = CBA + F1 _ CBA + _ _ = CBA + _ _ _ CBA = CBA + CA( B + CA. 144 B),

Din tabelul de adevar a rezultat functia F1, care prin minimizare a capatat forma finala, a treia expresie, pe care o realizam folosind circuite SI si SAU. CLC este delimitat de linia intrerupta, precizandu-se primul nivel logic ( circuitele SI) si al doilea nivel logic ( circuitele SAU ). Cu cat complexitatea unui CLC este mai mare, cu atat mai importante devin nivelurile logice (numarul de straturi de circuite logice, indiferent de tipul lor) pentru ca acestea impun si anumite valori pentru timpul de propagare total, iar acesta trebuie luat in considerare pentru realizarea in bune conditii a functiilor logice. Vom reveni asupra acestui lucru cand vom aborda problema hazardului logic si a sigurantei in functionare a dispozitivelor electronice (digitale). CI in tehnologia MSI sau LSI ofera posibilitatea realizarii oricarei functii logice, respectiv CLC, cum sunt : codificatoare decodificatoare, multiplexoare demultiplexoare, circuite de prioritate, sumatoare, memorii ROM (Read Only Memory), PLA (Programmable Logic Array), ......etc. Exemplu: se cere sa se realizeze un circuit detector de paritate, pentru 4 biti. Paritate para a unui cuvant de informatie format din n biti semnifica un numar par de biti care au valoarea 1-logic; paritate impara inseamna ca acel cuvant are un numar impar de biti cu valoarea 1-logic. Deci, daca se insumeaza toti bitii cu valoarea 1-logic (fara sa se tina cont de transportul unitatii) si rezultatul este 1=logic, avem imparitate. Invers, daca suma este zero. Aceasta operatie de insumare, fara a tine cont de transport de unitate catre rangul urmator, se poate realiza folosind functia logica SAU EXCLUSIV (suma modulo doi) al carei tabel de adevar il reamintim: A 0 0 1 1 B 0 1 0 1 F = SAU-EXCLUSIV 0 1 1 0 x0, x1, x2, x3 vom calcula suma lor folosind

Asadar, pentru cele patru variabile, notate: elemente logice SAU EXCLUSIV (F 4.1.3.):

F 4.1.3. CLC detector de paritate pe patru biti. Variabila w poate fi interpretata ca un semnal de prescriere a paritatii: iesirea F va avea valoarea 1-logic pentru un numar impar de biti 1-logic daca w = 0; daca w = 1 F va avea valoarea 1 pentru in numar par de biti (prescriere prestabilire a valorii). 145

Exemplu: CI CMOS MMC 4030, aplicatii.

F 4.1.4. CI CMOS 4030, Data Book 1989, Microelectronica, Bucuresti.

146

Exista o larga gama de componente care pot fi folosite pentru implementarea unor circuite logice combinationale, problema alegerii lor se pune in mod diferit de la caz la caz. Tehnologia este cea care face mari schimbari in elaborarea de noi elemente logice, dar trebuie tinut cont si de raportul pret / performanta. Procesarea informatiei, in cadrul CLC, consta in trecerea acesteia prin toate nivelele logice si pozitionarea valorilor la iesire; performanta acestei procesari se reduce chiar la timpul de propagare prin circuit. Fiecare poarta are un timp de propagare caracteristic: tp. In cazul inserierii mai multor porti, intarzierea de propagare pe intreg circuitul este suma timpilor de propagare ai fiecarei porti. Dar, timpul de propagare este puternic dependent de factorul de incarcare la iesire (este mai putin dependent la circuitele cu componente bipolare), mai cu seama pentru circuitele folosind tehmologie monopolara. Se recomanda ca implementarea CLC sa se faca folosind porti inversoare datorita efectelor de propagare (si pentru facilitatile tehnologice, de uniformitate structurala). Evidentiem efectul de propagare studiind formele de unda care se obtin la transferul unui impuls cu o durata relativ mica prin cele doua cai ale circuitului din figura F 4.1.4.

F 4.1.5. Efecte de propagare pe lanturi de porti inversoare si neinversoare. Se considera ca timpul de propagare (intarziere) cand poarta comuta de la starea H la starea L (tpHL) este mai mic decat timpul de propagare in timpul comutarii de la starea L la starea H (tpLH). Pe calea neinversoare (A, B, C) exista o tendinta de scadere a duratei impulsului (figura b - A, B, C); pe un lant de mai multe porti impulsul poate sa dispara, mai ales daca este vorba da sisteme rapide, cu impulsuri cu durata mica. 147

La trecerea prin lantul de porti inversoare (NAND) exista tendinta de refacere, dupa fiecare doua nivele logice, a duratei impulsului; posibilitatea pierderii impulsului este foarte redusa in acest caz. Valoarea totala a timpului de propagare, in cazul a n porti inversoare este: tp = n max(tpLH, tpHL). In cazul a n porti neinversoare, unde n este par, avem; tp = n (tpHL + Daca n este impar: tp = n (tpHL + tpLH) / 2 + max(tpHL + tpLH). tpLH) / 2.

De aceea portile fundamentale sunt portile NAND in familia TTL si NOR in tehnologia monopolara (de fapt este unul din argumente).

148

2. Decodificator BCD zecimal. Exista mai multe tipuri de decodificatoare si anume: -din codul zecimal codificat binar (BCD) in zecimal, -din codul zecimal binar exces de trei in zecimal, -din codul BCD intr-un cod de afisaj cu sapte segmente. Vom prezenta un decodificator din BCD in zecimal, intr-o schema de principiu:

F 4.1.6. Decodificator BCD - zecimal, schema de principiu. Cele patru valori binare, notate A, B, C, D reprezinta puterile lui 2 (la zero, la unu, la doi, la trei), rezultand valorile zecimale prin intermediul circuitelor SI cu patru intrari. Astfel, pentru: A = 20 = 1, B = 21 = 0, C = 22 = 1, D = 23 = 0,

149

prin circuitul SI respectiv se obtine 1 logic, ceea ce inseamna validarea valorii 5 din sistemul zecimal. Asemanator se petrec lucrurile pentru celelalte valori zecimale. In exemplul urmator aratam un decodificator CMOS, MMC 4028.

F 4.1.7. Decodificator BCD zecimal, CMOS, MMC 4029.

150

3. Multiplexor. Demultiplexor ( MUX, DMUX ). 3.1. - Circuite multiplexoare - MUX. Circuitele multiplexoare pot fi identificate (ca functionalitate) cu comutatoarele rotative multipozitionale din figura F 4.1.4 a, adica din cele n linii (variabile) la intrare este conectata direct la iesire doar una singura. Selectarea liniei dorite de la intrare spre iesire se realizeaza cu ajutorul unui cuvant de selectare de m biti, unde m are valoarea data de relatia: n = 2m .

De exemplu, notatia simbolica, MUX 4 : 1 reprezinta un circuit cu patru intrari (I0, I1, I2, I3), doua linii de selectare S1, S2 si tabelul de adevar din figura F 4.1.4 a, b, c.

F 4.1.8 a)Schema unui comutator rotativ multipozitional; b) simbol MUX 4:1, c) tabelul de adevar. Din tabelul de adevar rezulta prin dezvoltarea functiei logice de iesire sub forma canonic disjunctiva: _ _ _ _ F = I0 S1 S2 + I1 S1 S2 + I1 S1 S2 + I3S1 S2. Aceasta functie poate fi implementata cu circuite logice discrete, sau circuite integrate specializate. _ Multiplexoarele integrate poseda doua iesiri F si F ( de obicei de tip TSL) pentru __ realizarea magistralelor si in acest caz este necesara si o comanda de autorizarea iesirii: OE (Output Enable), care poate fi denumita selectarea circuitului CS - Chip Select. 151

Folosit ca un comutator comandat, semnalul CS poate fi obtinut prin conjunctia unor alte semnale de comanda, obtinandu-se scheme logice foarte complexe. Reluand exemplul multiplexorului cu patru intrari, sa realizam circuitul care implementeaza functia logica F, care descrie functionarea lui: _ _ _ _ F = I0S1S2 + I1S1S2 + I2S1S2 + I3S1S2.

F 4.1.9. Realizarea multiplexorului MUX 4:1 cu functii elementare. Se observa existenta a doua etaje in structura multiplexorului: circuitele SI si circuitul SAU, al doilea etaj. Nivelul doi poate fi realizat simplu printr-o singura cablare a tuturor iesirilor din primul nivel daca acestea sunt de tip TSL. Circuitul multiplexor poate fi privit ca un comutator multi-cai, selecteaza semnale de pe aceste cai la o singura iesire; aplicatiile care utilizeaza aceasta facilitate sunt cele de tipul selectare date. Dar, circuitul poate fi suport pentru implementarea functiilor logice. O conversie paralel-serie a datelor poate fi realizata usor si simplu cu un Mux 2n:1. Bitii unui cuvant de lungimea 2n se aplica pe cele 2n intrari ale multiplexorului. Aplicand succesiv pe intrarile de selectare cuvintele corespunzatoare numararii in binar narural, de la n 1, se transfera la iesire in ordine succesiva toti bitii cuvantului aplicat pe intrari; succesiunea cuvintelor de selectare se poate obtine de la iesirea unui numarator modulo 2n. Pe durata a 2n tacte aplicate aplicate la intrarea numaratorului se pot citi la iesirea MUX 2n:1 toti bitii cuvantului aplicat pe cele 2n intrari. Serializarea cu un MUX 2n:1 poate fi facuta in scopul transmisiei seriale pe un singur fir. Dar daca elementul receptor al transmisiei seriale este un DMUX 1:2n cuvantul transmis se poate reface sub forma paralela si eventual inscrie intr-un registru. Cele mai uzuale multiplexoare sunt MUX 16:1 (CI - SN 74150), MUX 8:1 (CI SN 74151), MUX 4:1 (CI SN 74153 - doua circuite pe cip), MUX 2:1 (CI SN 74157 - patru circuite pe cip). 152

3.2 Demultiplexoare (decodificatoare). Decodificatoarele sunt CLC care activeaza una sau mai multe iesiri, in functie de cuvantul de cod aplicat la intrare. Circuitele de demultiplexare (DEMUX) sunt CLC care permit trecerea datelor de pe o intrare unica spre iesirea selectata, selectarea facandu-se cu un cuvant cod de adresa. Deseori, una si aceeasi structura de circuit poate indeplini atat functia de decodificare cat si aceea de demultiplexare. Circuitele demultiplexoare realizeaza operatia inversa multiplexarii, adica informatia de la o linie de intrare I este distribuita la n linii de iesire, cum este aratat in figura F 4.1.5. Alaturi de simbolul demultiplexorului DMUX 1:4 este diagrama de functionare a acestuia si simbolul demultiplexorului cu n semnale de selectie, S0 Sn 1, carora le corespund caile de semnal de iesire: L0 L2n- 1.

F 4.1.9 Demultiplexorul; tabel de adevar; schema de realizare a demultiplexorului Deci, demultiplexorul poate fi folosit ca un circuit distribuitor sau pentru implementarea unei functii logice, selectarea facandu-se prin semnale speciale, care pot fi la randul lor obtinute prin semnale de comanda ale unor circuite de mare complexitate. 153

Iesirile vor fi validate prin selectarea lor (prin circuite SI) de catre cuvantul de cod format de S0S1. Daca linia de semnal I devine 1-logic (deci, putem sa o desconsideram, deoarece nu mai intervine in derularea activitatii logice, iesirile sunt strict dependente de cele doua variabile de selectare; spunem ca avem un decodificator (de adrese) care va activa cate o linie de iesire, in functie de semnalele de selectare, care pot fi considerate formand un cuvant de adrese. Acest tip de coneziune este foarte folosit in circuitele computerelor. _ Dam mai jos schema unui decodificator de adresa cu intrare de validare (E).

F 4.1.10. Decodificator de adrese. Deoarece iesirile decodificatorului reprezinta functii elementare de n variabile (mintermi), se pot realiza combinatii ale acestor iesiri, asfel incat sa se realizeze functii logice complexe. In exemplul urmator arata cum se pot obtine trei functii din iesirile decodificatorului de adrese, cuvantul adresa avand doi termeni: x1 si x0.

F 4.1.11. Principiul realizarii unor functii cu un decodificator. 154

Prin conectarea in cascada a mai multor demultiplexoare se pot realiza scheme de demultiplexare cu iesiri multiple. In exemplul urmator se arata o structura in cascada, folosind demultiplexoare cu 4 iesiri, realizandu-se o demultiplexare pe 16 iesiri.

F 4.1.12. Conectarea in cascada a demultiplexoarelor. Prin legarea in cascada a unui circuit de multiplexare cu unul de demultiplexare, se poate realiza o schema de selectie care va permite cuplarea oricarei intrari de date cu oricare iesire.

F 4.1.13. Schema de selectie cu circuite MUX si DEMUX. Exista urmatoarele tipuri de CI DEMUX: SN 74154 DEMUX 1:16, DEMUX 1:8, SN 74139 DEMUX 1:4 doua pe cip..etc. SN 74138

155

3. Sumatoare. Una din principalele operatii efectuate asupra informatiei stocate in circuite specializate sau transmise de la un alt dispozitiv este efectuarea de operatii arimetice elementare,mai ales adunarea si scaderea. Sa consideram un circuit capabil sa insumeze doua cifre binare si sa puna in evidenta aparitia transportului la un rang superior. Fie A, B cele doua valori binare ce trebuie insumate; fie S suma rezultata si T cifra de transport catre rangul superior. Acest circuit trebuie sa functioneze conform tabelului de adevar care cuprinde toate posibilitatile logice (situatii sau valori logice), conform tabelului de mai jos. Din tabelul de adevar rezulta si forma functiilor logice pentru realizarea lui S si T (F 4.1.11)

F 4.1.14. Sumator pentru doi biti: tabelul de adevar si schema logica. Deoarece acest sumator nu tine cont de un eventual transport al unei cifre de la un rang inferior, se mai numeste si semisumator. In realitate este deseori necesar sa se efectueze operatii de insumare pe cuvinte intregi, astfel incat problema transportului devine esentiala. De aceea, un sumator de cuvinte va contine mai multe (in functie de numarul pozitiilor binare) elemente de insumare, numite celule de insumare care tin cont de transportul de la rangul inferior (adunandu-l la suma celulei respective), dar si de transportul catre rangul superior.

F 4.1.15. Celula de insumare, simbolul celulei, sumator pentru cuvinte de n biti. 156

Chestionar.

1. Cum definim un CLC? 2. Ce inseamna si care este importanta straturilor logice? 3. Cum se formeaza si de ce depind maimile de iesire ale CLC? 4. Ce semnifica tpHL si tpLH si care este raportul dintre ele pentru portile logice?

5. In ce consta efectul de propagare in cazul inserierii unor porti inversoare sau neinversoare. 6. Care este principiul de functionare al unui decodificator? 7. Cum se realizeaza iesirea logica zecimala 7 din schema logica din figura F 4.1.6.? 8. Care este principiul de functionare al unui multiplexor? Dar al unui demultiplexor? 9. Cum functioneaza schema logica din figura F 4.1.9.? 10. Ce semnifica celula de insumare? circuitul logic din figura F 4.1.12.

11. Explicati functionarea

157

158

Tema 4.2

1. 2. 3. 4.

Comparatoare. Circuite de incrementare si decrementare. Hazardul logic. Rejectia zgomotelor.

1. Comparatoare. Un circuit comparator realizeaza compararea, in acelasi timp, a doua cuvinte binare (numere binare, notate cu A si B) cu n pozitii (biti), pentru a vedea daca: A = B, A < B, A > B. Acestor relatii le corespund functiile respective: -functia de egalitate, Fe, -functia de inferioritate, Fi, -functia de superioritate, Fs. Daca s-ar folosi metoda clasica de sinteza, pentru un cuvant cu n biti ar trebui scrise formele FCD (formele canonic disjunctive) pentru cele trei functii: Fe, Fi, Fs dintr-un tabel cu 22
n

linii.

Mai practic, pentru o celula care compara doua cuvinte de un bit se deduc cele trei functii si apoi cu aceasta celula se construieste un modul comparator de patru biti, de opt biti, ......etc. In figura F 4.2.1 sunt date tabelele de adevar pentru relatiile de ordine =, >, < si circuitul care implementeaza cele trei functii, pentru un comparator de doi biti (pentru simplitate). Sinteza relatiilor de ordine stabilite pentru cuvinte de un bit se pot extinde la doua cuvinte de patru biti, apoi de opt biti si asa mai departe.

F 4.2.1 Comparator pe doi biti. 159

Corespunzator celor trei tabele de adevar din figura F 4.2.1., se poate scrie fiecare functie logica (Fe, Fs, Fi), exprimandu-se prin FCD (forma canonic disjunctiva), adica prin suma de produse. Respectiv, pentru Fe avem doua valori 1-logic, carora le corespund cele doua produse logice ale variabilelor A si B, asa cum sunt trecute in tabelul de adevar, tinandu-se cont de faptul ca 0-logic inseamna variabila negata, iar 1-logic inseamna variabila nenegata. Astfel se obtin cele trei functii logice, dupa cum urmeaza: __ Fe = A B + A B _ Fs = A B, _ Fi = A B.

Se observa ca Fe este functia SAU-EXCLUSIV negata (Fe = 1 pentru egalitatea celor doua variabile), Fs si Fi fiind iesirile unor circuite SI. Astfel a rezultat implementarea comparatorului folosind functii logice elementare, asa cum este aratat in figura F 4.2.1. Folosind blocul de comparare pe doi biti, putem sa realizam un comparator pe patru biti (A0, A1, A2, A3 comparat cu: B0, B1, B2, B3) asa cum a fost deja figurat in F 4.2.1., obtinand schema de mai jos:

F 4.2.2. Comparator pe patru biti. Numarul de biti ai celor doua cuvinte poate fi, teoretic, oricat de mare. Pentru implementarea unor astfel de circuite, care ajung de o mare complexitate cu cat numarul de biti ai cuvantului creste, trebuie avuta in vedere uniformizarea timpului de propagare, astfel incat sa nu se produca decalaje (intarzieri) intre semnalele de iesire, existand posibilitatea aparitiei unor erori. 160

2. Circuite de incrementare si decrementare. Complement fata de 2. Circuite de incrementare. Prezentam circuitul care realizeaza incrementarea cu 1 a unui cuvant de n biti: x = (x0, x1, ....xi,...........xn - 1). Se pune problema adunarii bitului 1 in pozitia cea mai putin semnificativa, x0, a cuvantului dat. De fiecare data cand se adauga 1 bitului x0, rezultatul va fi negarea lui x0, deci circuitul de incrementare are in pozitia x0 o poarta inversoare (daca este 0: 0 +1 = 1 = 0-negat, daca este 1: 1 + 1 = 0-logic, plus unitatea pentru transport, care nu ne intereseaza). Un bit xi va fi afectat, adica schimbat in xi-negat, de adunarea efectuata in pozitia x0 numai daca aceasta adunare a generat un transport si acest transport s-a propagat pana in pozitia xi. Dar transportul se propaga pana in pozitia xi, doar daca toti bitii anteriori lui xi, incepand cu x0, au valoarea 1. Detectarea sirului de biti 1 de la x0 la xi se realizeaza printr-un lant de porti AND, iar iesirea acestui lant, la fiecare pozitie, comanda complementarea bitului de la pozitia respectiva, adica se aplica la intrarea unei porti XOR. Circuitul este prezentat in figura F 4.2.2:

F 4.2.3.

Circuit de incrementare.

Sa luam ca exemplu un cuvant binar cu configuratia urmatoare: 0 1 0 1 1 0, pozitia cea mai din dreapta semnificand pozitia bitului x0 (Least significant bit - cel mai putin semnificativ). Primul bit se neaga, 0 devine 1; al doilea bit este 1 si impreuna cu 0 sunt la intrarea circuitului SAU-exclusiv, a carui iesire devine 1. Se continua in acest fel verificarea fiecarei pozitii (bit), rezultand noua configuratie: 0 1 0 1 1 1 , adica s-a adaugat 1 vechii configuratii binare. 161

2.2 Circuit de decrementare. Prin scaderea bitului 1 din pozitia cea mai putin semnificativa x0 a cuvantului rezulta totdeauna x0-negat, deci implementarea pentru ultimul bit se face tot cu o poarta inversoare. Daca un xi = 1, acesta va fi complementat de modificarea in pozitia x0 doar daca toti bitii anteriori, incepand cu x0, au valoarea 0, deoarece numai atunci imprumutul necesar scaderii x0 - 1 se propaga pana la xi, schimband zerourile in 1. Detectarea sirului de zerouri se face cu un lant de porti OR, iar iesirea acestui lant, la fiecare pozitie, comanda complementarea bitului de la pozitia respectiva aplicandu-se la intrarea unei porti NXOR. Circuitul este prezentat in figura F 4.2.3

F 4.2.3. Circuit de decrementare. Sa luam ca exemplu aceeasi configuratie binara, pe care o aplicam pe intrarile circuitului de decrementare, in pozitie similara: 0 1 0 1 1 0. Pozitia cea mai din dreapta este bitul notat x0, acesta avand valoarea 0. Conform schemei, noua configuratie binara va avea in aceasta pozitie valoarea negata a lui x0, adica: 0-negat = 1. Urmatoarea pozitie initiala este 1, care impreuna cu 0 de la primul bit va duce la valoarea 1 prin circuitul SAU-exclusiv; pe de alta parte, intrarile primului XOR-negat sunt 0 si 1, astfel iesirea devine 0, aceasta fiind valoarea noului bit, cel de-al doilea. Pozitia x1 = 1 trece prin circuitul SAU si ajunge la intrarea circuitului XOR-negat, impreuna cu x2 = 1, ceea ce face ca iesirea sa fie 1-logic, adica cea de-a treia pozitie din noua configuratia logica. Continuand astfel, vom obtine noua configurtie binara: 0 1 0 1 0 1 , usor de verificat ca este exact cuvantul introdus in circuit, din care s-a scazut o unitate.

162

Circuit de complementare fata de 2. Regula de obtinere a complementului fata de de doi a unui numar consta in complementarea tuturor bitilor si apoi se aduna 1-logic. Daca reluam exemplul nostru, ar trebui sa avem: Cuvantul initial: Complementul lui: Se adauga 1: Rezultat: 010110 101001 1+ 1 0 1 0 1 0.

Aceasta valoare trebuie gasita la iesirea circuitului de complementare fata de 2 (F 4.2.4.).

F 4.2.4.

Circuit de decrementare fata de 2.

Sa consideram ca valoarea deja stabilita ca exemplu: 0 1 0 1 1 0 este prezenta pe intrarile circuitului de mai sus. Prima pozitie ramane neschimbata, deci primul bit al rezultatului are tot valoarea 0. Acest 0, impreuna cu x1 = 1 fac iesirea circuitului XOR = 1, deci valoarea celui de-al doilea bit este 1. Pe mai departe, intrarile urmatorului XOR sunt 1-logic, venit din urma si x2 = 1, deci iesirea lui va fi 0-logic; aceasta fiind cea de-a treia pozitie a noului cuvant. Procedand la fel in continuare, se va obtine exact valoarea pe care am stabilit-o mai inainte prin calcul: 1 0 1 0 1 0.

163

3.

Hazardul logic.

Un aspect considerat foarte important la implementarea unui CLC este asigurarea unei functionari corecte, fara erori. Hazardul logic se manifesta prin aparitia unor semnale parazite (impulsuri) in perioadele tranzitorii de functionare. In aceste perioade tranzitorii axioma existentei complementului este infirmata: _ A A 0, _ A + A 1.

Considerand efectuarea operatiilor logice in timp, portile reale genereaza la iesire valori care nu corespund cu valorile logice de intrare, aparand decalaje intre momentele de comutatie ale variabilelor la intrarea unei porti. In regim static (teoretic), valoarea logica a iesirii se calculeaza corect cu functia logica a circuitului. Dar, ce se intampla in intervalele tranzitorii, cand semnalele sunt in propagare de la intrare la iesire? La aplicarea unei cofiguratii pe intrare, valoarea logica reala, obtinuta la iesire pe durata regimului tranzitoriu nu este identica cu valoarea logica la iesire calculata cu functia logica a circuitului, devenind egala cu aceasta dupa consumarea regimului tranzitoriu. Aceste situatii prezinta o functionare hazardata (necontrolata) fata de analiza in regim static sunt referite cu termenul de hazard static, datorata aparitiei unor impulsuri parazite (glitch-uri), fie cu nivel logic H, fie cu nivel logic L. Posibilitatea de producere a acestor impulsuri apare ca o consecinta a doua cauze: - comutarea asincrona a valorilor variabilelor de intrare (hazardul datorat asincronismului la intrare), - existenta pentru o variabila de intrare a doua trasee de propagare cu intarzieri diferite (hazardul de propagare). Se poate evita hazardul de nesincronizare daca se impune ca in configuratia de intrare niciodata sa nu comute mai mult de o singura variabila sau, inainte de aplicarea configuratiei pe intrarile circuitului, aceasta sa fie sincronizata. S-a considerat ca aceasta comutare a tuturor variabilelor de intrare de la o anumita configuratie la o alta se face in acelasi moment, se realizeaza in mod sincron. In realitate exista un decalaj intre momentele de comutare ale diferitelor variabile. Acest asincronism face ca intre configuratia de intrare prezenta si configuratia de intrare urmatoare sa se interpuna, pe durata regimului tranzitoriu, una sau mai multe configuratii de intrare care produc glitch-uri in semnalul de iesire. Daca la o poarta din interiorul circuitului, sau din nivelul de iesire al circuitului, semnalele aplicate la intrarea circuitului ajung pe trasee diferite, care implica intarzieri diferite, atunci la iesirea acelei porti poate sa apara hazard ul de propagare. Calculul exact al intarzierilor pe fiecare traseu intampina dificultati deoarece in catalogul producatorilor este trecut doar timpul de propagare maxim nu si cel minim, care nu este identic la toate portile si este functie si de incarcarea pe iesirea portii. La iesirea unui CLC poate aparea pentru o comutare a unei variabile de intrare de la 0 la 1 si urmatoarea cumutare hazardata 1010 (trei schimbari ale valorii iesirii). 164

Sau, pentru o comutare de la 0 la l pot aparea alte trei schimbari ale iesirii: 0101; acest comportament este referit ca hazard dinamic. Hazardul dinamic este cauzat de existenta in circuit a trei sau mai multe trasee diferite pentru o variabila de intrare, fiecare traseu avand un alt timp de propagare. Astfel de structuri rezulta in urma factorizarii expresiilor suma de produse sau cand exista trasee lungi de interconectare intre porti de viteza ridicata. Hazardul dinamic poate fi evitat daca se realizeaza implementari numai pe doua niveluri logice, adica aducerea expresiei de implementat la o forma FD. Pentru un sistem mai complex, functia acestuia se cauta a fi sintetizata din functii uzuale pentru care exista deja circuite implementate, deci realizarea sistemului se reduce la selectarea potrivita de componente integrate deja existente si conectarea lor corespunzator. Functiile uzuale cu circuite implementate sunt de urmatoarele tipuri: logic, aritmetic si de comunicatie.

165

4.

Rejectia zgomotelor.

Prin semnal de zgomot se intelege orice semnal electric nedorit care apare in sistem. In sistemele digitale, spre deosebire de cele analogice, zgomotul nu se cumuleaza cand se trece de la un nivel logic (poarta) la urmatorul nivel logic, pentru ca o poarta comandata in limita valorilor de intrare permise va genera la iesire numai semnale in limita valorilor garantate. Semnalele de zgomot nu trebuie considerate numai ca surse potentiale de producere a unor functionari eronate ci si ca posibile cauze de distrugere fizica a portilor. Supratensiunile aplicate pe terminalele de intrare pot duce la strapungerea unor jonctiuni sau, pentru CMOS, la strapungerea stratului de oxid de sub poarta, ori la aparitia efectului de zavorare (latch-up). Aceste supratensiuni pot apare la intrarile portilor datorita: reflexiilor pe liniile neadaptate, tensiunilor induse, alimentarea sistemului cu mai multe niveluri de tensiune, descarcarilor electrostatice. Efectul de zavorare se manifesta prin aparitia in interiorul plachetei de siliciu a unui traseu de scurtcircuitare intre Vdd si masa, care daca nu este eliminat, poate duce la distrugerea cipului. Acest efect este cel mai negativ efect al tehnologiei CMOS. Efectul are ca explicatie formarea unei structuri (parazite) de tiristor. Intre zonele difuzate (sursa, dren, contacte metalice) si substrat se formeaza structuri care, atunci cand sunt polarizate corespunzator, au functionare de tranzistor NPN si PNP, sau determina o functionare de tiristor (posibila scurtcircuitarea tensiunii de alimentare Vdd la masa). Tiristorul parazit odata amorsat nu poate fi intrerupt, de unde denumirea de zavorare, intreruperea tiristorului putand fi realizata prin deconectarea alimentarii. Rejectia zgomotelor externe. Zgomotul extern are ca sursa: instalatiile de electronica de putere, motoarele electrice, motoarele termice, comutatiile in cablurile electrice de forta, supratensiunile pe linia electrica, instalatiile de inalta frecventa de putere, transmisiunile emitatoarelor RTV si alte surse de radiatii electromagnetice si este introdus in sistem prin inductie electromagnetica sau prin conductie pe firele de alimentare de la retea. Zgomotul de conductie poate intra in sistem prin firele de alimentare de la retea si se poate atenua prin separarea galvanica (prin transformatorul circuitului de redresare) si/sau prin filtrare (se elimina frecventele joase cat si cele inalte generate de sursa de alimentare). Zgomotul electromagnetic patrunde in sistem prin inductie electromagnetica, deci poate fi atenuat sau anulat prin ecranarea sistemului, cu ajutorul unui ecran din materiale feroase si legarea acestui ecran la priza de impamantare, prin filtre capacitive, precum si prin folosirea de tehnologii adecvate de transmisie a semnalelor (transmisia diferentiala, constand in transmiterea simultana a semnalului digital respectiv si a semnalului negat, deci semnale complementare, pe doua linii torsadate).

166

Rejectia zgomotelor interne. Acesta este produs chiar de insusi sistemul respectiv, iar in functie de natura fenomenului care il genereaza pot fi identificate urmatoarele tipuri: zgomot de masa, zgomot datorat neadaptarii liniilor, zgomot indus prin cuplaj electromagnetic (diafonia) si zgomotul datorita curentilor de alimentare. In general, zgomotul intern poate provoca mai multe probleme decat cel extern. Prin masa electronica intr-un circuit se intelege potentialul de referinta pentru toate tensiunile din circuit. Fizic, masa electronica este materializata printr-un conductor/traseu la care se conecteaza toate componentele circuitului, acest traseu trebuind sa fie echipotential pentru toate componentele. Conductorul de masa fiind comun pentru toate circuitele de aplicare sau de culegere a semnalelor, rezulta ca acest conductor este parcurs de toti curentii de intoarcere a semnalelor. Daca rezistenta conductorului de masa nu este nula, curentii de intoarcere produc caderi de tensiune, iar diferitele puncte ale traseului de masa nu mai sunt echipotentiale, deci componentele circuitului au potentiale de masa diferite. Solutia in acest caz o constituie realizarea unui traseu de masa care sa aiba o rezistenta nula (suprafata cat mai mare), o ramificare in stea aleasa judicios si sa nu contina cu nici un chip bucle ale traseului de masa (realizate prin greseli de proiectare sau prin gabarite neadecvate ale componentelor).

167

Chestionar.

1. Ce functii realizeaza un comparator logic? 2. Explicati functionarea comparatorului pe patru biti. 3. Cum se poate realiza un comparator logic pe 16 sau 32 de biti? 4. Explicati functionarea circuitului de incrementare; X = {101010}. 5. Explicati functionarea circuitului de decrementare; X = {1101010}. 6. Explicati functionarea circuitului de complementare fata de 2; X = {101011}. 7. In ce consta hazardul logic? 8. Care sunt cauzele producerii hazardului de nesincronizare? 9. Care sunt cauzele producerii hazardului de propagare?

10. Similar pentru hazardul dinamic. 11. Ce se intelege prin zgomot? 12. In ce consta efectul de zavorare? 13. Ce se intelege prin masa electronica? 14. Ce semnifica expresia bucla a traseului de masa?

168

Tema 4.3. 1. Memorii ROM. 2. Variante de memorii ROM. 1. Memorii ROM. Functia de memorare o poseda acele circuite digitale care pot stoca (inmagazina) si regenera, la comanda, informatia sub forma de cuvant. Aceasta inmagazinare de date presupune pozitionarea unor valori logice (0 sau 1 logic), in locatii strict determinate ale memoriei, operatie numita scriere (write), executata la o comanda speciala, elaborata in acest sens. Pentru accesul la una din locatiile memoriei trebuie validata comanda de citire (read), continutul locatiei respective devenind utilizabila prin prezenta ei pe liniile de date. Pentru identificarea unei locatii de memorie avem nevoie de adresa ei, unica si inconfundabila, conventional descrisa ca fiind o orizontala, care este validata corespunzator tipului de memorie - asadar, putem vorbi de linii de adrese, care formeaza magistrala de adrese, una din notiunile de baza in alcatuirea oricarui dispozitiv digital, de complexitate medie. Continutul acestei locatii de memorie va fi prezent pe liniile de date, fiecare linie semnificand pozitia unui bit de informatie; aceste linii de date, reprezentate conventional ca verticale, formeaza magistrala de date (numarul de linii fiind un multiplu al lui opt, adica multiplu de octeti). Termenul uzual pentru magistrale este de bus, avand astfel bus-ul de adrese, bus-ul de date, alaturi de care apare si bus-ul de comenzi (read, write, OE output enable, CS chip select, semnale de ceasetc). Aceste bus-uri reprezinta legatura functionala intre toate componentele unui dispozitiv numeric. Circuitele de memorie, privite ca structuri care pot implementa functii logice sub forma FCD (forma canonic disjunctiva), se incadreaza tot in clasa circuitelor combinationale. Memoriile semiconductoare numai de citire, ROM (Read Only Memory) sunt folosite doar pentru citirea informatiei inscrisa anterior, informatie ce este rezidenta permanent in cadrul sistemului. Inscrierea informatiei se face prin procedee speciale, in functie de tipul memoriei respective, citirea fiind realizata prin explorare digitala obisnuita. Pentru realizarea rezidentei permanente, memoria ROM trebuie sa fie de tip nevolatil, adica la pierderea tensiunii de alimentare, informatia nu se distruge, find pastrata in circuitul respectiv. Structural, un circuit ROM se prezinta sub forma unei matrice de dimensiune A m linii (orizontale) si n coloane, in fiecare nod al matricei (intersectia unei linii cu o coloana, cazul general fiind linia i si coloana - j) este memorat un bit, deci capacitatea de memorare a circuitului fiind m x n biti. Capacitatea unui circuit de memorie este data in Kb (kilobiti - 210 = 1024 biti), Mb (megabiti - 1000Kb) sau KB (kilobyte kiloocteti), MB (megabyte - megaocteti), GB (gigabyte 1000MB). Cuvantul memorat are n biti, dimensiunea m = numarul de linii, fiind adresa cuvantului, numita si linie de cuvant sau adresa cuvant. In figura de mai jos, F 4.3.1, prezentam schema de principiu a memoriei ROM de tip AND si tipul de celula (dat de tipul de circuit din intersectia linie coloana). 169

F 4.3.1

Schema de principiu al memoriei ROM, de tip AND

Prin fabricatie, in fiecare nod se afla o dioda inseriata cu un fuzibil sau un tranzistor aplicat numai in pozitia care contine bitul memorat. Pentru matricele cu diode + fuzibil in fiecare nod, exista posibilitatea de a se arde fuzibilul respectiv, daca nu se memoreaza bitul respectiv, adica este posibila programarea liniei conform necesitatilor. In procesul de programare, cu ajutorul unui aparat programator, utilizatorul poate selecta oricare nod si prin aplicarea unei tensiuni de valoare 10 - 30V fuzibilul se va arde. Producatorii de dispozitive ROM programabile asigura fiecarui nod al matricei fie un element fuzibil, fie un antifuzibil. Un fuzibil din tungsten-titan sau nichel-crom este necesar un curent de 10 - 60 mA timp de 1 - 10 ms (Texas Instrument), dar exista pericolul ca in timp, datorita efectelor termice din circuitul integrat, unele fuzibile arse sa duca la refacerea conexiunii. La dispozitivele cu antifuzibil, prin programare, rezistenta conexiunii dintr-un nod este modificata de la o valoare initiala foarte mare, de ordinul 100 M la o valoare sub 1 K.

170

Antifuzibilul realizat fie dintr-un dielectric (de exemplu ONO, Oxigen-Nitrura-Oxigen), fie din siliciu amorf, in procesul de programare, i se aplica un curent de ordinul a zeci de mA cu durata sub 1s, prin aceasta producand modificarea rezistentei. Conexiunile pe baza de antifuzibil, spre deosebire de cele pe baza de fuzibil, nu se pot reface intamplator. Dispozitivele programabile (cu fuzibil sau antifuzibil) sunt dispozitive care se pot programa o singura data, dispozitive OTP ( One Time Programmable). Repetam, informatia este stocata sub forma unui cuvant cu lungumea de n biti, deci ocupa o linie intreaga a matricei. Selectarea unei linii de adrese Ai inseamna a face Ai = 0V (identic 0 logic). Acolo unde, de-a lungul liniei, fuzibilul este ars, verticala bitului va avea valoarea 1 logic, preluand tensiune pozitiva de la alimentare; in pozitiile unde fuzibilul nu a fost ars, dioda respectiva se deschide (devine ON) si potentialul 0V este transmis verticalei bitului respectiv, acesta avand valoarea logica 0. In acest fel se stabileste configuratia binara de n digiti, in functie de numarul de fuzibile arse, printr-o succesiune 1 si 0 logic. In figura urmatoare, F 4.3.2., prezentam o memorie ROM de tip OR.

F 4.3.2. Schema de principiu a memoriei ROM de tip OR. 171

Folosindu-se schema operatorului SAU (OR) este normal sa apara schimbarile respective in circuitul memoriei ROM: iesirile bitilor de informatie se fac prin intermediul unor amplificatoare neinversoare, care au rolul de a intari semnalul (am mai vorbit despre acest lucru cand precizat notiunea de buffer); selectarea unei linii de adrese se face prin a se fixa valoarea liniei la 1 logic (Ai = 1), astfel incat, pentru vericala care are fuzibilul intreg acest 1 logic va fi prezent la iesire (bit = 1 logic) deoarece se deschide dioda D si voltajul pozitiv se culege din capatul rezistentei R, iar pentru verticala de informatie care are in punctul de conexiune cu orizontala adrese fuzibilul ars, valoarea bitului este 0 logic. Faptul ca selectarea liniilor de adrese se face fie prin 0 logic, fie prin 1 logic nu are importanta, deoarece, in general, acestea sunt preluate de pe magistrala de adrese prin circuite de bufferare, iar acestea au iesiri negate, dar si iesiri nenegate. Cele doua scheme sunt scheme de principiu. In realitate, liniile de adresa (m linii) intra intr-un decodor care va avea la iesire 2m linii, rezultate din combinatiiile celor m linii. Acest lucru este prezentat in figura urmatoare, F 4.3.3.

F 4.3.3.Memorie ROM: a) cu decodor de adrese si comenzi TSL b) blocul memoriei si cele trei magistrale. Numarul de adrese A0 - Am-1, cules de pe magistrala de adrese, intra in decodificatorul de adrese DCD, obtinandu-se 2m - linii. La o adresa de memorie se afla un singur cuvant de informatie, cules din cele n coloane. In figura F 4.3.2 se arata acest lucru.

172

Se precizeaza si cele trei magistrale existente in orice dispozitiv digital modern: adrese, informatie, control (comenzi) Magistrala de control contine, printre altele, cele doua semnale: CS - chip select - slectie a circuitului, OE - output enable - validare a iesirii. Daca sunt negate inseamna ca sunt active pe zero logic, daca nu sunt negate sunt active pe 1 logic. In figura F 4.3.4 sunt prezentate diagramele de semnale pentru efectuarea operatiei de citire. La momentul t1, cuvantul adresa se aplica pe magistrala de adrese la intrarea memoriei si incepe decodificarea adresei. _____ In momentul t2, prin semnalul READ se comanda trecerea etajelor de iesire in starea normala de lucru.Abia din momentul t3 datele din locatia de memorie sunt validate pe magistrala de date si pot fi citite, preluate, folosite....etc. Se defineste timpul de acces, aa ca intervalul de timp din momentul aplicarii cuvantului de adresa la intrarea memoriei (t1) pana cand datele la iesire sunt valide (t3), deci pot fi citite. Acesta este un parametru foarte important al circuitelor ROM si are valoarea: 20 - 90 ns pentru cele in tehnologie bipolara si 70 - 400 ns pentru cele in tehnologie CMOS.

F 4.3.4 Diagrame de semnal pentru citire din memorie.

173

2. Variante ale memoriilor ROM. Personalizarea unui circuit ROM pentru o anumita aplicatie este realizata prin inscrierea informatiei respective in matricea programabila. In functie de modalitatea de inscriere / programare a informatiei exista mai multe tipuri de memorii ROM.

A.

ROM programat prin mascare.

Informatia pentru aplicatie, elaborata de proiectant, este trimisa la turnatoria de siliciu. Fabricantul, pe baza acestei informatii, genereaza una sau doua masti si termina fazele de fabricatie ale circuitului ROM, adica se inscrie 1 sau zero in nodurile matricei. Fizic, aceasta inscriere prin mascare se reduce la prezenta sau absenta in fiecare nod a unei conexiuni, intre linia de adresa si coloana de bit. Datorita costului ridicat de fabricatie si imposibilitatea corectarii unei erori, realizarea aplicatiilor cu ROM programat prin mascare este indicata pentru generarea de functii standard, cum ar fi tabele de conversie (LUT), functii specifice generate de de catre utilizator mai ales cand este nevoie de o productie de serie mare (produse auto, de larg consum, etc). LUT (Look-UP Table) este o reprezentare a unei functii prin valorile sale numerice, inscrise in diferite locatii ale circuitului ROM, deci pentru o anumita configuratie a variabilelor functiei adresa unei locatii- din locatia respectiva, se obtine, la iesirea circuitului ROM, cuvantului binar care reprezinta valoarea functiei.

B. ROM programabil, PROM (Programmable Read Only Memory). Acest tip de circuit ROM a aparut ca un raspuns la nevoia utilizatorului de a nu fi legat de turnatoria de siliciu si de timpul necesar realizarii aplicatiei. Fabricantul produce circuitul care este deja inscris in toate nodurile sale fie cu bitul 1, fie cu bitul 0, depinde cum este organizat ROM ul. Fizic, aceasta inseamna ca in fiecare nod exista un fuzibil intre linia de cuvant-adresa si coloana de bit sau un tranzistor conectat cu drenul la coloana de bit iar poarta este comandata de linia de cuvant-adresa, ca in figura F 4.3.5 si a carei sursa S este legata la masa printr-un fuzibil, notat F. Intr-un nod realizat cu tranzistor T (MOS FET, canal n), al carui fuzibil inseriat in sursa nu este ars, atunci cand linia de cuvant care comanda poarta este in stare activa (adica 1 logic), va forta la potentialul masei tensiunea pe coloana de bit (tranzistorul devine ON si potentialul sursei masa devine potentialul coloanei de bit), respectiv coloana de bit va fi 0 logic, care negat prin inversorul I, se obtine 1 logic la iesire de date. Programarea PROM-lui este efectuata de catre utilizator cu ajutorul unui programator, prin care fuzibilul este ars numai in acele noduri in care informatia initiala inscrisa prin fabricatie trebuie schimbata in bitul complementar. Practic, se selecteaza nodul prin linia de cuvant si coloana de bit corespunzatoare si apoi, pe linia de bit se aplica un impuls de tensiune de valoare ridicata (10 30V) care forteaza un curent prin fuzibil ce duce la arderea acestuia. 174

F 4.3.5

Elementul memoriei PROM.

Desi PROM ul elimina dependenta de turnatoria de siliciu, totusi dezavantajul rebutarii circuitului in cazul unei erori de programare nu este eliminat, acest dezavantaj este eliminat de urmatoarele tipuri de ROM reprogramabile.

C.

ROM reprogramabil, EPROM (Eraseble Programmable ROM).

Facilitatea de stergere a continutului unui circuit ROM si apoi reprogramerea se bazeaza pe functionarea tranzistorului cu poarta flotanta. Acesta, fata de un nMOS normal, are doua porti suprapuse, poarta flotanta si poarta de control, separate printr-un strat de SiO2. Poarta flotanta, spre deosebire de cea de control, nu are in exterior un terminal de acces si este izolata in masa de SiO2 care o inconjoara, iar stratul de SiO2 intre aceasta poarta si substrat este foarte subtire, cel mult 10 nm. In anumite conditii, tensiuni aplicate pe terminalele tranzistorului fac posibila trecerea unor electroni cu energie ridicata ( hot electron ) din canal, prin stratul foarte subtire de SiO2 pana la poarta flotanta, iar aceasta, fiind izolata, ramane incarcata permanent cu sarcina negativa captata ( permanent inseamna cel putin 10 ani chiar si la temperatura de 125 grade Celsius). Aceasta sarcina negativa permanenta de pe poarta flotanta creste tensiunea de prag a tranzistorului nMOS la aproximativ 7V, ceea ce practic inseamna ca acesta este blocat pentru toate tensiunile normale ale circuitului (5 6 V).

175

Procesul poate fi reversibil, prin aplicarea unui fascicol de radiatie ultravioleta care anuleaza sarcina negativa acumulata pe poarta flotanta, deci tranzistorul devine iarasi comandabil cu tensiunile normale ale circuitului, figura F 4.3.6.

F 4.3.6. Nod de ROM programabil. Structurarea unui nod pentru un circuit EPROM este similara cu cea a unui nod dintr-un circuit PROM descrisa anterior - un tranzistor care conecteaza coloana de bit la masa printrun fuzibil, doar ca la EPROM, tranzistorul de acces care leaga la masa linia de bit are in sursa inseriat un tranzistor cu poarta flotanta in loc de fuzibil. Programarea nodului, adica blocarea tranzistorului cu poarta flotanta prin colectarea unei sarcini negative pe poarta flotanta, se face in felul urmator: -se -se flotanta o -se colectarea activeaza linia de cuvant (poarta tranzistorului de acces), aplica prin linia de bit (si tranzistorul de acces) pe drenul tranzistorului cu poarta tensiune in jur de 12 V aplica un impuls de tensiune de 13 - 14V pe poarta de control care ajuta la sarcinii negative (electroni) pe poarta flotanta.

Rezulta ca tranzistorul cu poarta flotanta intrerupe conectarea la masa in acel nod al liniei de bit chiar daca tranzistorul de access corespunzator este comandat. Stergerea nodului se face prin expunerea circuitului, timp de 20 30 de minute, in radiatii ultraviolete. Circuitele EPROM au pe partea superioara o fereastra, transparenta la radiatii ultraviolete, realizata din cuartz. Pentru a fi sters, circuitul trebuie scos din soclul sau si montat in dispozitivul de stergere, iar stergerea este totala. 176

D.

Memoria ROM cu stergere pe cale electrica EEPROM (Electricaly Erasable Programmable ROM).

Acest tip de ROM elimina dezavantajele de la EPROM si anume si anume, circuitul nu mai trebuie scos din soclu pentru stergere pentru ca aceasta operatie se face pe cale electrica. Practic, stergerea se face ca si inscrierea prin aplicarea unei tensiuni pe poarta de control, dar de data aceasta, o tensiune de polaritate inversata, care elimina spre substrat sarcina negativa acumulata pe poarta flotanta. Stergerea se face nu pe bit ci pe blocuri care pot ajunge pana la 64 Kbytes (la o memorie de 1 Mbyte sau mai mare). O varianta de EEPROM este memoria flash. Acestea se produc sub forma de cartele, astfel incat sa fie utilizate in aparatura portabila cum ar fi: camere digitale, telefoane mobile, transferul informatiei intre doua calculatoare....... In viitor, memoria Flash poate substitui harddisk-ul, oferind un timp de acces in jur de 100 ns, fata de 6 - 10 ms la hard-disk-urile actuale.

Dam ca exemplu CI - MMN 2716, EEPROM 16Kb, din catalogul Data Book Microelectronica, Bucuresti, 1989.

177

178

Chestionar.

1. Ce inseamna memoria ROM? 2. Care sunt cele trei magistrale ale unui dispozitiv digital? 3. Care este rolul fuzibilului si al antifuzubulului? 4. Ce inseamna dispozitiv OTP? 5. Care este principiul functionarii memoriei ROM - AND? 6. Care este principiul de functionare al memoriei ROM OR? 7. Care este rolul decodorului de adrese? 8. Cum se defineste timpul de acces al memoriei

aa?

9. Cum functioneaza memoria ROM programabil (PROM)? 10. Cum functioneaza memoria EPROM? 11. Cum functioneaza memoria EEPROM?

179

180

Tema 4.4 1. Dispozitive logice programabile PLD (Programmable Logic Device). 2. Circuite logice programabile complexe - CPLD (Complex Programmable Logic Device). 3. Arii logice programabile FPGA (Field Programmable Gate Array).

Este normal ca evolutia circuitelor logice (digitale, numerice) sa fie direct dependenta de evolutia tehnologiei de realizare a acestor circuite, aceasta insemnand nu numai o mai mare diversitate de circuite logice (cu functii logice diverse), dar si o crestere a densitatii de componente pe unitatea de suprafata (elementul luat in consideratie fiind tranzistorul, respectiv numarul de tranzistoare pe unitatea de suprafata sau pe cip), paralel cu asigurarea deplinei sigurante in functionare. A aparut posibilitatea de a reuni mai multe blocuri logice (avand functii logice diferite) intr-un cip, obtinandu-se o foarte mare complexitate a circuitelor. Folosirea unor asemenea circuite impune ca dupa faza de elaborare a schemei logice sa se treaca la alegerea circuitelor integrate, dintr-o anumita familie, cu care sa se realizeze fizic circuitul pentru schema respectiva. Aceasta procedura este costisitoare si mare consumatoare de timp, de aceea, s-au conceput circuite cu un anumit grad de flexibilitate, care sa acopere un areal problematic mai larg, si prin anumite modificari, sa se poata realiza configuratii logice performante. Aceste modificari raman la latitudinea utilizatorului, fiind facute in functie de necesitatea construirii unei anumite configuratii logice; astfel au aparut circuitele programabile (configurabile) de catre utilizator, la ora actuala existand o larga varietate de astfel de circuite, folosite cu eficienta maxima la realizarea de prototipuri, serii mici, sisteme dedicate .etc. Un circuit integrat digital este programabil daca utilizatorul il poate configura in functie de aplicatia concreta dorita, astfel incat sa realizeze implementarea schemei logice respective. Aceste circuite sunt livrate de fabricant fara un anume continut informational, ele urmand sa fie personalizate prin programarea facuta de utilizator. Exista trei mari categorii de circuite integrate digitale programabile, in functie de structura lor interna: - circuite de memorie, - microprocesoare, - circuite logice programabile, la care programarea se face prin arderea sau nu a unor fuzibile sau prin utilizarea unor celule de memorie speciale etc. Memoriile de tip ROM, pe care le-am prezentat anterior, sunt folosite in diverse aplicatii, care pot fi grupate in doua categorii: fie aplicatii de tip aritmetic (implementarea unor tabele de date LUT - Look-Up Table, practic tabele de adevar ale unor functii date, astfel ca o locatie a memoriei determina configuratia binara a variabilelor functiei), fie aplicatii de tip logic, bazate pe faptul ca memoria ROM este un circuit combinational. Microprocesoarele sunt diferite, in ceea ce priveste programarea, de circuitele logice programabile, avand caracteristici superioare acestora, ele fiind descrise in partea a doua a cursului de fata. Circuitele logice programabile vor fi descrise in continuare. 181

1. Dispozitive logice programabile - PLD (Programming Logic Device). Dispozitivele logice programabile, PLD au aparut ca o necesitate pentru eliminarea inconvenientelor pe care le prezentau circuitele logice universale MUX, DEMUX, ROM, in implementarea functiilor logice sub forma de suma de produse, si anume: - generarea tuturor termenilor canonici produs desi, in general, nu sunt necesari toti; - formele reduse (minimalizate) ale functiilor logice nu pot fi implementate; pentru implementarea acestora trebuie parcurs drumul invers, adica expandarea formelor reduse la o forma canonica; - inexistenta facilitatii de implementare a functiei si prin forma negata a acesteia, cand functia negata este mai simpla (doar unele circuite MUX au atat iesirea negata cat si nenegata). Un circuit logic programabil trebuie sa aiba o structura care sa permita realizarea practica a oricarei functii booleene, fiind realizat fie dintr-o multime de porti logice corespunzatoare unui set complet de functii (SI, SAU, NU), fie dintr-o multime de circuite capabile sa realizeze functii universale de un numar oarecare de variabile (circuite MUX, DEMUX, memorii). In primul caz, prin programare se va asigura interconectarea acestor porti elementare pentru a realiza functia dorita (suma de produse ce mai frecvent sau produs de sume mai putin folosit). In al doilea caz, programarea va viza atat alegerea functiei generate de catre fiecare bloc de functii universale cat si interconectarea acestora. Sa reamintim ca memoria ROM este, in principiu, o matrice cu circuite logice, fie de tipul SAU, fie de tipul SI (figura F 4.4.1.), continand si valori negate ale variabilelor de intrare, existand posibilitatea de a se constitui la iesire orice configuratie logica cu aceste variabile, mai ales daca se fac combinatii intre structurile SAU si structurile SI.

F 4.4.1. Exemple de obtinere a unor functii logice folosind memorii ROM. 182

In figura F 4.4.1. punctele de conexiune intre orizontalele variabilelor si coloanele iesirilor de functii sunt marcate printr-un cerculet (conexiunea semnifica fuzibil intreg, nears). Exemplul arata realizarea unor functii logice simple utilizand matricele ROM de tip SAU, SI, existand si posibilitatea combinarii acestor doua circuite, pentru obtinerea de circuite mai complicate, asa cum vom vedea mai departe (iesirile unui circuit devin intrari pentru celalalt). In functie de modul de programare, circuitele PLD pot fi clasificate in trei categorii: - programabile ireversibil - un circuit odata programat va realiza numai o anumita functie, nefiind posibile corecturi sau modificari ulterioare; - reprogramabile, care permit stergerea programarii anterioare, fie selectiva (pentru anumite locatii (circuitele EEPROM), fie neselectiva (circuitele EPROM); - configurabile in mod dinamic, tipica ariilor logice din ultimele generatii. La aceste circuite, in punctele de conexiune se afla un tranzistor care se afla in starea de conductie sau blocare in functie de informatia prezenta in celula de memorie, existenta pentru fiecare tranzistor; programarea circuitului insemnand incarcarea acestor celule cu informatia corespunzatoare, aceasta putand sa fie schimbata in orice moment. Inainte de a prezenta structurile de baza ale circuitelor logice programabile sa trecem in revista notatiile si simbolurile folosite pentru reprezentarea acestora. In figura F 4.4.2. este aratat notatia clasica a unei functii SI cu patru variabile la intrare, starea fuzibilelor si notatia simbolica folosita in cazul circuitelor logice programabile.

F 4.4.2. Notatia pentru un produs logic. Pentru o functie SAU (suma logica) cu patru variabile la intrare este prezentat simbolul in figura urmatoare:

F 4.4.3. Notatia pentru suma logica. 183

Notatia simbolica pentru o suma de produse este reprezentata in figura F 4.4.4.

F 4.4.4. Simbolizarea unei sume de doua produse. Orice expresie de functie logica poate fi scrisa ca o suma de m termeni, fiecare termen fiind un produs de n variabile, la randul lui. Ca urmare, un circuit SAU cu m intrari insumeaza logic iesirile a m circuite SI, formand un circuit logic combinational. Numarul de intrari in circuitele SI poate fi mai mic sau egal cu numarul n al variabilelor de la intrare. Arhitectura de baza a unui circuit logic programabil care lucreaza pe acest principiu va contine o arie de circuite SI, care primesc din exterior variabilele de intrare, si o arie de circuite SAU, care prin insumarea produselor oferite de circuitele SI vor putea realiza functiile dorite. Acest lucru este aratat in figura urmatoare, F 4.4.5., fiind schema de baza a circuitelor logice programabile.

F 4.4.5. Structura de baza a circuitelor logice programabile. Gradul de complexitate al unui asemenea circuit va fi dat de numarul variabilelor de intrare, numarul produselor logice si de numarul iesirilor. 184

In functie de zona programabila (zona in care se pot face modificari) se disting trei structuri fundamentale: - Structura PROM, - Structura PLA, - Structura PAL. Structura PROM - Programmable Read Only Memory, consta in faptul ca zona circuitelor SI nu este programabila, ceea ce inseamna obtinerea unui numar fix de produse logice in cazul unei decodari complete: 2n, unde n este numarul de variabile. Zona programabila este doar a portilor SAU, ceea ce permite alegerea produselor necesare formarii functiilor. In figura urmatoare este prezentata schema unui circuit PROM cu doua intrari.

F 4.4.6. Structura PROM Dezavantajul structurii PROM este tocmai faptul ca furnizeaza toate cele 2n produse posibile pentru cele n variabile aflate la intrare. Daca numarul de variabile creste cu 1, adica avem n + 1 variabile, vom vaea 2x2n produse, deci numarul lor se dubleaza. Acest lucru inseamna o folosire ineficienta a suprafetei cristalului de siliciu pe care este realizat circuitul, o marire a pretului de cost. Majoritatea aplicatiilor impun folosirea mai multor variabile la intrare, dar nu toate produsele logice sunt necesare, ceea ce dus la cautarea unei solutii in acest sens, descoperinduse structura urmatoare.

185

Structura PLA - Programmable Logic Array. Prima varianta de circuit PLA a fost introdus in anul 1975 de catre firma Signetics. Principala caracteristica este ca ambele zone (zona SI, zona SAU) sunt programabile. Astfel, prin programarea zonei SI se pot selecta numai acele produse logice care sunt necesare, se pot folosi variabile de intrare in numar mai mare, deoarece numarul de produse logice va fi mai mic. Prezentam in figura F 4.4.7 structura PLA.

F 4.4.7.

Structura PLA.

Introducerea fuzibilelor in zona SI inseamna utilizarea unui numar crescut de circuite de selectie pentru programare (cost ridicat), dar si marirea timpilor de propagare a semnalelor de la intrare la iesire (viteza redusa). O structura tipica pentru un circuit PLA (82S100, Signetics) este cea din figura urmatoare, F 4.4.8.

F 4.4.8. Structura tipica pentru un circuit PLA. 186

Circuitul 82S100 are 16 intrari (I0, I1,.I15), 48 de porti AND, fiecare avand cate 32 de intrari; se pot genera cel mult 48 de termeni produs, fiecare de maximum 16 variabile. Cele 8 functii care se pot implementa, ca o suma de mazim 48 de termeni produs, pot fi generate la iesirile O0, O1,. O7, fie negate, fie nenegate prin programarea portilor XOR. Iesirile sunt generate prin buffere de iesire TSL, comandate prin semnalul OE-L -validare iesire (Output Enable), activ pe valoarea L (Low, 0 logic). Numarul total de fuzibile este de 1928. La circuitul PLA, implementarea functiilor dorite necesita minimizarea lor, iar daca se implementeaza mai multe functii, implementarea acestora necesita o minimizare corelata. In softul specializat exista programe care, pornind de la functia logica, gaseste expresia minima in suma de produse atat a functiei respecrive, cat si a functiei negate, iar apoi decide care din cele doua este mai avantajoasa (are mai putine produse)si in functie de tipul de circuit PLA folosit, trimite programul pentru implementare finala.

Structura PAL - Programmable Array Logic. Este prezentata in figura F 4.4.8., avand zona circuitelor programabile in zona SI, cealalta zona (zona SAU) fiind fixa, fiind o varianta modificata a circuitului PLA.

F 4.4.9. Structura PAL. Aceasta structura reprezinta o solutie optima din punct de vedere al raportului performanta/cost, in comparatie cu celelalte doua structuri. Flexibilitatea generarii functiilor logice este mai redusa, dar se simplifica programarea si se usureaza folosirea terminalelor circuitului. Daca se adauga la iesire circuite bistabile (vor fi prezentate in urmatoarele pagini), se obtine o structura utila la realizarea automatelor finite (descrise in tema suplimentara). Daca in locul fuzibilelor sunt utilizate structuri EPROM sau EEPROM, se obtine o structura de circuit logic programabil EPLD - Erasable Programmable Logic Device. O structura tipica de circuit PAL (PAL 16L10) este aratata in figura F 4.4.10. 187

F 4.4.10. Structura circuitului PAL 16L10 (16 intrari, 10 iesiri). Exista grupuri de porti AND programabile, fiecare poarta din grup avand 32 de intrari (16 nenegate, 16 negate). Un numar de 10 terminale sunt utilizate numai pentru aplicarea variabilelor de intrare, doua terminale O1 si O8 sunt numai terminale de iesire, iar 6 terminale (I / O) pot fi programate atat ca terminale de intrare, cat si ca terminale de iesire. 188

Exista facilitatea de aplicare inapoi, ca o solutie pentru pentru functiile care au mai mult de 7 termeni produs. Aceste treceri repetate prin retea maresctimpul de calcul pentru functie. Valori curente pentru timpul de propagare, de la oricare intrare la oricare iasire, sunt sub 10 nS. Circuitul de tip GAL - Generic Array Logic. Este un circuit PAL la care s-au introdus anumite facilitati, pentru extinderea posibilitatilor de utilizare (a fost introdus de firma Lattice Semiconductor). Astfel de facilitati apar pe terminalele bidirectionale I / O prin imbogatirea circuitelor respective - constituirea de macrocelule de iesire. In figura F 4.4.11 aratam schema de principiu a unui astfel de circuit.

F 4.4.11. Schema de principiu al circuitului GAL. Macrocelula contine si poarta OR, colectoare de termeni produs, care are uzual la iesirea sa un XOR pentru a putea selecta polaritatea: fie functia negata, fie functia nenegata. Macrocelula contine si buffere de iasire TSL, celula pentru validarea iesirii buffer-ului, multiplexoare pentru diferite selectari de semnale, circuite latch (vor fi prezentate in paginile urmatoare) pentru memorarea de semnale, cale de reintroducere a semnalului obtinut la iesirea portii OR (suma de produse logice). Circuitul GAL poate implementa o gama mare de circuite combinationale.

189

2.

Circuite logice programabile complexe - CPLD.

Circuitele PLD prezentate anterior au doua mari dezavantaje: - nu permit realizarea de functii logice cu mai multe nivele; - nu permit folosirea in comun, de catre mai multe functii, a produselor logice. Ambele dezavantaje se datoreaza faptului ca nu se pot interconecta functiile obtinute prin programare si sunt eliminate de CPLD printr-o modificare a arhitecturii. Un circuit CPLD se compune din doua parti, asa cum se arata in figura F 4.4.9.

F 4.4.9. Structura unui circuit CPLD. Structura circuitului contine un numar de macrocelule universale programabile (MUP) care realizeaza functii booleene de n variabile, folosindu-se diferite variante de implementare a acestora (cu circuite MUX, cu circuitr SI - SAU, cu memorii). Reteaua de interconexiuni permite selectarea variabilelor de intrare si aplicarea lor macrocelulelor universale, dar si interconectarea acestor macrocelule universale. Prezentam circuite CPLD Altera, realizate prin tehnologie CMOS, elementul de baza fiind macrocelula logica programabila (macrocell) a carei schema este prezentata in figura F 4.4.10. Aceasta contine o zona programabila (AND Array) care permite realizarea a opt produse logice programabile distincte, conectate la o poarta SAU. Polaritatea functiei de iesire este controlata de o poarta SAU Exclusiv prin valoarea semnalului Invert Control. Semnalul astfel obtinut este memorat intr-un circuit basculant bistabil. Cu ajutorul unui multiplexor programabil (Output MUX), buffer-ului de iesire I se poate aplica fie semnalul direct, fie varianta memorata de bistabil. Astfel, orice iesire poate fi programata ca o iesire combinationala (sau ca o iesire secventiala, atunci cand in schema circuitelor combinationale se amesteca si elemente de memorare).

190

F 4.4.10. Structura unei macrocelule logice programabile. Circuitul permite si controlul semnalului de reactie care se intoarce in aria programabila si care poate fi luat fie pe iesirea bistabilului, fie de pe pinul de conexiune (PAD) Alegerea o asigura multiplexorul programabil F / B MUX. Astfel, numerosi pini de conexiune externa pot fi programati fie ca iesiri, fie ca intrari. Circuitele Altera, realizate pe acest principiu (folosind structura acestei macrocelule) contin cateva zeci de astfel de macrocelule (de exemplu, seria EP 1800 contine 48 de macrocelule). Unul din marile dezavantaje ale structurilor PAL il constituie faptul ca nu permit utilizarea in comun a produselor logice, ceea ce duce la repetarea lor ori de cate ori sunt necesare, lucru care inseamna irosirea unor resurse logice. Odata cu dezvoltarea tehnologica, a aparut posibilitatea realizarii unor structuri mai complexe si in cadrul acestora s-a putut rezerva un spatiu mai mare interconexiunilor, asigurandu-se posibilitatea reutilizarii unor produse logice generate intr-o macrocelula programabila si de catre alte macrocelule programabile. Firma Altera a dezvoltat acest concept in cadrul arhitecturii MAX - Multiple Array Matrix. Ideea de baza este aceea ca mai multe macrocelule programabile sunt grupate impreuna pentru a forma un bloc logic LAB - Logic Array Bloc, fiecare avand posibilitatea formarii unui numar aditional de produse logice(numite Expander Product Terms) care vor putea fi folosite in comun, in cadrul blocului, de toate macrocelulele programabile.

191

3. Arii logice programabile - FPGA (Field Programmable Logic Array). Un circuit FPGA este format dintr-o multime (arie) de celule logice plasate intr-o retea de interconexiuni, aratata in figura urmatoare, F 4.4.11.

F 4.4.11.Structura de principiu a unei arii logice programabile. Celulele logice sunt formate din generatoare universale de functii, care pot fi programate pentru a realiza o functie logica data. Celulele de intrare/iesire, amplasate pe marginea structurii, sunt la randul lor programabile, dar cu posibilitati mai reduse decat celulele logice. Prin programarea acestora se specifica sensul de transfer al informatiei (intrare sau iesire), daca informatia sa fie memorata sau nu, valoarea nivelelor de tensiuneetc. Reteaua de interconexiuni programabile strabate in mod sistematic intreaga structura. Complexitatea la nivelul structurii logice interne a unei arii logice programabile (FPGA) este comparabila cu complexitatea circuitelor logice programabile (circuite de tipul PLD), iar algoritmul de proiectare sunt similari. Marele avantaj al circuitelor FPGA, in comparatie cu circuitele PLD, consta in durata de realizare a aplicatiei, care in cazul primelor este doar de cateva minute dupa programare, pe cand in cazul circuitelor PLD poate ajunge la saptamani sau chiar luni de zile. In privinta costului, circuitele PLD sunt mai ieftine decat cele FPGA, motiv pentru care acestea din urma sunt folosite la realizarea de prototipuri sau aplicatii dedicate. Circuitele FPGA, in functie de gradul de complexitate a celulei logice de baza, pot fi imprtite in doua categorii: - Circuite logice cu o structura simpla a celulei logice. La aceasta categorie de circuite FPGA, celula logica este realizata fie dintr-un numar restrans de porti logice, fie dintr-un generator universal de functii logice cu o structura simpla (de exemplu, multiplexoare cu doua sau trei intrari). Acest tip de circuite are avantajul unei utilizari extrem de eficiente a celulelor logice dar si dezavantajul necesitatii unui numar mare de conexiuni intre celule pentru a realiza functia ceruta. Acest dezavantaj poate fi compensat, intr-o oarecare masura prin folosirea unor algoritmi optimali pentru realizarea conexiunilor interne.

192

Exemple de circuite din aceasta categorie sunt cele din familia Actel, care se bazeaza pe folosirea multiplexoarelor cu doua intrari pentru realizarea celulelor logice. - Circuite logice cu o structura complexa a celulei logice. Un exemplu tipic pentru aceasta categorie de circuite il reprezinta familia de circuite Xilinx, la care o celula logica este formata dintr-un generator universal de functii cu 7 intrari, 5 multiplexoare programabile si doua bistabile. Aceasta categorie de circuite au avantajul ca, pentru o aplicatie data, sunt necesare un numar redus de celule logice si un numar mai redus de interconexiuni. Dezavantajul acestor circuite consta in faptul ca celulele logice sunt utilizate ineficient, sub posibilitatile pe care le-ar putea oferi.

193

Chestionar.

1. Cum se poate explica aparitia circuitelor PLD? 2. Ce se intelege prin circuit programabil? 3. Cum se realizeaza aceasta programare? 4. Care sunt inconvenientele eliminate prin aparitia circuitelor PLD? 5. 6. Ce inseamna circuit programabil ireversibil, reprogramabil, configurabil in mod dinamic? Care este structura de baza a circuitelor logice combinationale programabile?

7. Care sunt cele trei structuri fundamentale ale circuitelor PLD? 8. Prin ce se caracterizeaza structura PROM? 9. Cum functioneaza circuitul PLA? 10. Prin ce se caracterizeaza structura circuitului PAL? 11. Care este noutatea introdusa de circuitul GAL? 12. Care sunt dezavantajele esentiale ale circuitelor 13. Din ce este constituit un circuit FPGA? 15. Care este avantajul circuitelor FPGA, in ciuda pretului de cost destul de ridicat? PLD?

194

Tema 5.

Circuitele Logice Secventiale ( CLS ). 1. Definitii. CLS asincrone. CLS sincrone. 2. Circuite basculante bistabile - CBB: crcuite latch, CBB D. 3. CBB Master Slave.

T 5.1

1. Definitii. CLS asincrone. CLS sincrone. Circuitele logice combinationale, prezentate mai inainte, asigurau realizarea valorilor logice ale functiilor de iesire prin prelucrarea variabilelor logice de intrare de catre straturile de elemente logice care compun circuitul respectiv. In functionarea CLC nu se ia in considerare variabila timp, valoarea functiilor de iesire depinzand instantaneu (daca nu se ia in considerare timpul de propagare propriu fiecarui circuit) de valorile variabilelor de intrare. O alta caracteristica a CLC este faptul ca transferul informatiei este unidirectional, de la intrare spre iesire, neexistand nici o legatura de la iesire catre intrare, adica reactie inversa. Circuitele logice secventiale (CLS), sunt organizate tinand cont de timpul t, adica de momentul in care o anumita variabila devine activa (nu conteaza nivelul logic) aparand elemente de memorare, adica starea iesirilor nu mai depinde numai de starea intrarilor ci si de situatii anterioare memorate. Intrarile unui circuit secvential, denumite si intrari principale sau primare, sunt notate x1, x2, ..... xn, iar iesirile principale ale circuitului sunt notate F1, F2, ... Fm. Memoria circuitului secvential este realizata de catre elemente de circuit secundare, ale caror iesiri: y1`, y2`, .... yk`, sunt aduse prin legaturi inverse la intrarea circuitului, formand intrarile secundare ale circuitului secvential: y1, y2, ..... yk. Starea iesirilor y1`, y2`, ... yk` formeaza starea interna urmatoare a circuitului: yi` = yi`(x1, x2, ..xn, y1, y2, ..yk) - ecuatiile starii urmatoare,

1 k fiind intarzierile acestora, iar starea intrarilor: y1, y2, .....yk formeaza starea interna prezenta . Starea interna urmatoare (intermediara) devine starea interna prezenta dupa un timp, determinat de intarzierile elementelor de timp special introduse in buclele de reactie. Circuitul secvential se afla intr-o stare stabila atunci cand, pentru o anumita stare a intrarilor, starea sa interna prezenta este identica cu starea interna urmatoare: yi = yi `(x1, x2, .xn, y1, y2, .yk), i = 1, 2, k.

Daca, pentru o anumita stare a intrarilor, starea prezenta a circuitului difera de starea sa urmatoare, adica yi yi` , cel putin pentru un anumit i (cuprins intre 1 si k), circuitul se afla intr-o stare instabila. Pentru ca un sistem secvential sa se comporte determinist, trebuie ca pentru fiecare stare posibila a intrarilor { xi } si o anumita stare interna { yi } sa existe o singura tranzitie posibila intr-o stare urmatoare { yi` }. 195

Iesirile unui circuit secvential, prezentat in figura F 5.1.1, pot fi exprimate ca functii booleene depinzand de variabilele de intrare (primare si secundare) si starea interna a acestuia. Astfel, avem setul de ecuatii ale iesirii: Fi = Fi(x1, x2, ...xn, y1, y2, .... yk), i = 1, 2, ....m.

F 5.1.1. Circuit logic secvential. Circuitele secventiale la care ecuatiile iesirii { Fi } si ecuatiile starii urmatoare { yi` } sunt de forma celor prezentate mai sus se numesc circuite secventiale de tipul Mealy, iar modelul lor matematic, automat de tipul Mealy. Exista circuite secventiale la care starile iesirilor { Fi } nu depind de de starile intrarilor principale { xi }, ci numai de starile intrarilor secundare { yi }, adica de starea interna a circuitului; in acest caz, ecuatiile iesirii se scriu: Fi = Fi(y1, y2, .yk). Circuitele secventiale la care ecuatiile iesirii sunt de aceasta forma, iar ecuatiile starii urmatoare {yi` } sunt aceleasi cu cele exprimate mai sus, se numesc circuite secventiale de tipul Moore, iar modelul lor matematic, automat de tipul Moore. Atunci cand numarul de stari interne ale unui circuit secvential este finit, circuitul este denumit circuit secvential finit, iar modelul sau matematic, automat finit. In continuare se vor trata numai circuitele secventiale binare, la care fiecare dintre variabilele de intrare, de iesire, respectiv de stare pot avea numai doua valori {0 si 1} si un numar finit de stari. 196

Intr-o abordare foarte generala, un Circuit Logic Secvential - CLS se poate considera ca o extensie a unui CLC cu o conexiune de reactie si, in functionarea sa, implicit se considera si variabila timp (propagarea neinstantanee). Se poate lua si reciproca: un CLS cu transfer unidirectional si instantaneu este un CLC. Aceasta abordare a definirii determina o structurare generala a unui CLS pornind de la un CLC. Secventialitatea implica evenimente/stari care se succed in timp unul dupa altul. In functie de modul cum este marcata aceasta tranzitie, de la un eveniment la urmatorul, sistemele pot fi asincrone sau sincrone. Pentru CLS asincrone, aceasta tranzitie este determinata de insasi structura circuitului prin timpul sau propriu de propagare (constanta de timp). Pentru CLS sincrone, tranzitia este marcata (decisa) din exterior prin frecventa unui semnal de ceas/clock. Ceasul, in circuitele sincrone, poate actiona pentru marcarea timpului prin unul din palierele sale, considerat ca palier activ, asa cum apare in figura F 5.1.2.

F 5.1.2. Semnale de ceas pentru sincronizare: a) pe palier; b) pe frontul pozitiv/crescator; c) pe frontul negativ/descrescator; d) fereastra de decizie axata pe frontul de sincronizare, pe durata caruia semnalul de sincronizat nu trebuie sa-si modifice valoarea. Prin sincronizarea unui semnal se intelege aducerea acelui semnal in acelasi timp cu semnalul de ceas, aceasta insemnand ca semnalul asincron va avea numai tranzitii validate de prezenta semnalului de ceas, impunandu-se conditia ca semnalul asincron sa nu-si modifice valoarea pe un interval de timp de prestabilire SU (set-up) inainte de front si apoi pe inca un interval de timp de mentinere H (hold) dupa front, asa cum se poate vedea in figura F 5.1.2 d). Este vorba de o fereastra de decizie impusa de catre functionarea elementului fizic de memorare a semnalului asincron, numit bistabil, de care ne vom ocupa mai departe.

197

2. Circuite basculante. Elementul de memorie binara este un circuit cu doua stari distincte, destinat a pastra o informatie formata dintr-un singur bit. Realizarea electronica a elementului de memorie binara o reprezinta circuitul bistabil. Un bistabil poate memora un timp nedefinit informatia binara si in acelasi timp starea lui poate fi citita in orice moment. Se asociaza uneia din cele doua stari functia de pastrare a cifrei binare 1 si celei de-a doua stari functia de pastrare a cifrei binare 0. Bistabilul are doua iesiri, una care pune in evidenta cifra binara memorata, denumita iesire adevarata (notata Q, de obicei) si a doua, care pune in evidenta valoarea negata a cifrei binare memorate, denumita iesire negata (notata Q-negat). Bistabilul poate fi comutat de la o stare la alta prin aplicarea semnalelor de comanda pe intrari, petrecandu-se fenomenul de basculare, adica trecere de la o stare la cealalta. Bascularea este un proces de comutare a iesirii, initiata de o modificare a valorii unei variabile de intrare, dar iesirea este mentinuta la nivelul logoc respectiv chiar daca dupa un interval de timp nu mai ramane aplicata valoarea variabilei de intrare. Bascularea este o comutatie care trebuie doar initiata dupa care se autocomanda, acest efect de automentinere este o consecinta a reactiei din structura circuitului. Desi exista deosebiri intre comutatie (notiune care se aplica de obicei circuitelor combinationale) si basculare (notiune folosita in domeniul circuitelor bistabile) din punct de vedere al caracteristicilor procesului de schimbare al starilor circuitelor respective, esenta acestei schimbari permite folosirea celor doua notiuni in exprimarea uzuala, cu sensuri aproape egale. Datorita utilizarii lor foarte extinse ca elemente fundamentale de memorare si procesare a informatiei, exista o terminologie si moduri de tratare specifice. Deosebim urmatoarele tipuri de circuite basculante: a) Circuitele basculante bistabile (CBB) : circuitele latch, CBB tip D, CBB tip JK, CBB tip T, CBB tip trigger Schmitt; b) Circuitele basculante monostabile (CBM); c) Circuite basculante astabile (CBA).

a) Circuite basculante bistabile, CBB latch. Celula elementara pentru circuitele bistabile este prezentata in figura F 5.1.3, constand dupa cum se vede dintr-o bucla realizata cu doua inversoare, F 5.1.3 a), reconfigurate ca in figura F 5.1.3 b), unde deosebim si intrarile inscriere si stergere care pot avea doua pozitii: -activ, 0 logic, -inactiv, comanda de tipul nici o operatie NOP (No OPeration). Se scot in evidenta conexiunile de reactie realizate incrucisat, de la iesirea inversorului 1 la intrarea inversorului 2 (Vin2 = Vo1), si de la iesirea inversorului 2 la intrarea inversorului 1 ( Vin1 = Vo2). O implementare a acestei organizari poate fi cu inversoare CMOS ca in figura F 5.1.3. c) 198

Deoarece intre iesirile celor doua inversoare exista un decalaj de 180 a semnalelor, evident ca iesirea unui inversor va fi in nivelul H si se noteaza Q, iar iesirea celuilalt inversor va fi in nivelul L si se noteaza prin Q-negat. La conectarea tensiunii de alimentare, deoarece practic cele doua inversoare nu pot avea timpi de propagare identici, una din iesiri va fi fortata in H, iar cealalta in L.

F 5.1.3 Celula elementara pentru circuitele bistabile. FM inseamna fara modificari; ND inseamna nedeterminare. Intrarile de comanda (intrare activa: 0-logic; intrare inactiva: 1-logic) sunt: - intrarea de inscriere, notata cu S (Set), care prin activare va inscrie iesirea in starea logica 1, Q = 1, QN = 0; - intrarea de stergere, notata cu R (Reset), care prin activare va inscrie iesirea in starea logica 0, Q = 0, QN = 1. Cu cele doua intrari se pot realiza patru comenzi de intrare, asa cum este aratat in tabelul comenzilor de inscriere / stergere. Din tabelul caracteristic al celulei elementare rezulta ca atunci cand intrarile sunt active amandoua, iesirile sunt in starea de nedeterminare (ND), situatie nedorita pentru orice implementare a unei functii logice si care va fi rezolvata de CBB-urile urmatoare. Sa precizam ca numele circuitului vine de la termenul englezesc latch = zavor.

199

Latch-ul tip SR. In figura F 5.1.4 este prezentat acest circuit realizat cu doua circuite logice NOR.

F 5.1.4. Latch SR NOR: a) schema de principiu, b) tabel caracteristic. Am notat cu Sn si Rn starile circuitului latch la un moment, si Qn + 1 iesirea de set a circuitului latch, in momentul urmator. Din analiza tabelului caracteristic rezulta ca pentru intrari; S = 0, R = 0, starea circuitului latch ramane neschimbata, portile P1 si P2 nefiind afectate de valorile de 0-logic (sa ne reamintim ca poarta SAU are la iesire 1-logic imediat ce una din intrari devine 1-logic, adica este comandata prin 1-logic). Cand intrarile devin: S = 0, R = 1 iesirea Q = 0; daca S = 1, R = 0 iesirea Q = 1; in primul caz spunem ca circuitul latch este resetat, in al doilea, ca este setat, asa cum se arata in figura F 5.1.5.

F 5.1.5. Valorile logice ale latch-ului: a) Q = 0, resetat; b) Q = 1, setat. Se observa ca nici latch-ul NOR nu rezolva problema nedeterminarii aparuta cand intrarile de comanda SR (S = Set, R = Reset) au valorile 1 si 1. Varietatea circuitelor de acest tip este destul de mare, astfel exista latch-uri SR cu ceas, latch SR tip D, latch SR tip Early..... etc. 200

O alta structura de circuit latch este cea realizata cu porti NAND, figura F 5.1.5. Daca latch-ul tip SR NOR era comutat prin valorile S = 1/ R = 0 (Q = 1, setare), sau S = 0/R = 1 (Q = 0, resetare), latch-ul tip NAND va fi comutat prin valorile S = 0/R = 1 (setare) sau S = 1/R = 0 (resetare). _ _ In figura s-a preferat notatia Sn si Rn pentru a scoate in evidenta aceasta complementaritate.

F 5.1.5. Latch-ul SR - NAND: a) schema de principiu, b) tabel caracteristic. Schema latch-ului SR-NAND difera de schema SR-NOR prin notarea intrarilor de date. Circuitele NOR erau comandate prin 1-logic si putem numi aceste comenzi ca fiind Active High, iar in cazul circuitelor NAND, comenzile active fiind 0-logic, sunt numite Active Low (de aceea au fost trecute in schema cu notatiile negate). Nici acest circuit nu rezolva nedeterminarea precizata mai sus: comanda S = 0/R = 0 ducand la nedeterminare, fiind nepermisa. Pentru evitarea nedeterminarilor care pot apare in urma unor comenzi S = 1/R = 1 exista doua solutii: - sa se utlizeze circuitul numai in acele aplicatii in care asemenea comenzi nu apar (ceea ce ar insemna o serioasa restrictie, practic de neacceptat); - sa se modifice schema circuitului astfel incat acesta sa aiba o evolutie cunoscuta si stabila si dupa o astfel de comanda. Privitor la cea de-a doua posibilitate, exista patru posibilitati de rezolvare a nedeterminarii: Qn+1 Qn+1 Qn+1 Qn+1 = = = = Qn, 0, 1 si Qn-negat.

Primele trei coincid cu situatii deja existente si ar insemna dublarea acestora (ca stare a iesirii) in conditiile in care intrarile difera; deci de neacceptat.

201

Ultima varianta ar completa tabelul caracteristic cu o stare care nu exista deja: trecerea iesirii (Q) in starea opusa celei in care se afla cand se aplica setul de valori S = 1/R = 1 la intrare. Pentru a se obtine aceasta evolutie a circuitului, schema SR (set-reset) a fost completata cu doua porti SI, comandate prin semnalele Q si QN (Q-negat), asa cum se arata in figura urmatoare, F 5.1.6.

F 5.1.6. Transformarea circuitului SR in circuit JK: a) schema, b) tabela de adevar, c) forme de unda. Intrarile de comanda se noteaza cu J si K. Poarta logica SI, P3 are la intrare comanda K si iesirea de set a circuitului, Q. Poarta logica SI, P4 are la intrare comanda J si iesirea de reset a circuitului, Q-negat. Pentru cazul J = 0/K = 0, portile P3 si P4 au 0-logic la iesire, astfel ca portile P1 si P2 (porti NOR, care sunt comandate prin 1-logic) nu vor fi afectate de aceasta valoare, iesirile lor ramanand neschimbate, asa cum este trecut si in tabelul de adevar. Pentru cazul J = 1/K = 0, sau situatia simetrica J = 0/K = 1, poarta care va primi la intrare comanda 1-logic (fie P3, fie P4), daca aceasta are la intrarea si starea de 1-logic de la Q sau Q-negat, va produce la iesirea respectiva 1-logic si va bascula circuitul NOR (poarta P1 sau P2), trecand iesirea respectiva din 1-logic in 0-logic. Aceasta schimbare va impune si schimbarea starii celeilalte, in final, din starea Q se ajunge in starea Q-negat. 202

Se poate urmari aceasta evolutie si pe graficul semnalelor de intrare si de iesire, al formelor de unda. In prima parte a graficului, J = 0/K = 0 duc la pastrarea starii existente (Q = 0); apoi, pentru J = 1/K = 0 se produce basularea (Q = 1); pentru J = 0/K = 1 apare iar basularea iesirii (Q = 0). Pentru cazul in care J = 1/K = 1, circuitul va bascula in mod repetat, producand la iesire oscilatii dreptunghiulare, situatie care nu poate fi acceptata (situatie care va fi rezolvata pentru circuitele urmatoare). Acest circuit este denumit si S-R unlocked latch, CI 74279 continand patru asemenea celule binare. Prezentam si schema circuitului SR sincron, in functionarea caruia intervine si semnalul de ceas (clock-ul) pe care il vom nota cu T (activ pe palierul impulsului de tact, una din formele de acticare a semnalelor de ceas, aratata in figura F 5.1.2).

F 5.1.7. Circuit SR-sincron: a) cu porti NOR, b) cu porti NAND, c) tabela de adevar pentru schema a), d) tabela de adevar pentru schema b). Se observa cum intrarea de tact T se suprapune peste intrarile logice ale circuitului, permitand trecerea acestora catre urmatorul etaj. Pe durata cat portile de intrare sunt deschise, circuitul functioneaza asincron. 203

CBB tip D. Dintr-o structura de bistabil sincron, activ pe palierul impulsului de tact, se poate realiza un circuit basculant bistabil (CBB), numit D Latch, folosit in multe aplicatii practice. Intr-o celula SR sincrona se introduce un inversor intre intrarile de comanda, asa cum se arata in figura F 5.1.8.

F 5.1.8. CBB tip D: a) schema logica, b) formele de unda, c) simbol, d) tabela de functionare. Pe durata tactului (CK = 1), celula este transparenta, in sensul ca iesirea este copia fidela a intrarii; cand impulsul de tact dispare (trecerea 1 0), celula pastreaza valoarea care a fost deja stabilita, asa cum se arata in tabelul de functionare. S-au fabricat si se mai fabrica multe tipuri de CI care folosesc structura CBB D, un exemplu il constituie CI 7475 care, contine patru asemenea celule. Prezentam in figura urmatoare CI - CDB 475, produs romanesc (IPRS Baneasa).

204

F 5.1.9. CI 7475, quadruple CBB-D.

205

3. CBB Master Slave. In sistemele digitale, pentru o procesare eficienta, este necesar sa existe un control asupra felului/modului procesarii (cum?), momentul procesarii (cand?) si care punct (adresa) sa fie procesat (unde?). La aceste intrebari, prin circuitele de tip latch, nu se pot gasi raspunsuri, ceea ce constituie o deficienta, care se adauga peste aceea a nedeterminarii aparuta in cazul activarii ambelor intrari. In plus, pentru asigurarea unui transfer de date de la o celula de memorare (CBB) la alta, pot apare probleme foarte dificil de rezolvat Pentru rezolvarea acestor probleme s-a recurs la principiul Master Slave de realizare a CBB-urilor, adica folosirea doua etaje pentru transferul de date, primul fiind partea de comanda, Masterul, al doilea find etajul subordonat, Slave, primind datele precizate de Master. In acest fel se elimina propagarea in cascada a informatiei, de la o celula la alta. De aici rezulta ca la transferul intrare-iesire al datelor, niciodata iesirile nu sunt conectate direct la intrare, deci un bistabl M S nu mai are transparenta unui latch. CBB de tip Master-Slave sunt bistabile sincrone, active pe frontul negativ al impulsului de tact. Dam mai jos schema de principiu a CBB Master-Slave.

F 5.1.10. CBB - Master-Slave: a) schema logica, b) simbol, c)diagrama de timp, d) tabela de adevar.

206

Noul tip de CBB este realizat prin conectarea in cascada a doua CBB de tipul SR sincrone, comandate in antifaza. Acest tip de circuit se numeste circuit basculant bistabil de tip SR Master-Slave. Sunt scoase in evidenta urmatoarele parti constituente: portile de intrare P1 si P2, CBBMaster, portile de transfer P3 si P4 si CBB-Slave. Intrarea de tact (clock) s-a notat cu CK-negat, acest lucru semnificand ca impulsul de tact este activ pe partea cazatoare a frontului (front posterior) impulsului. Pe portiunea 2 3 a impulsului de tact, portile de intrare P1 si P2 sunt deschise, permitand accesul informatiei in bistabilul Master; portile P3 si P4 sunt inchise, bistabilul Slave fiind izolat, pastrandu-si iesirile neschimbate. Pe portiunea 4 5 a impulsului de tact, portile de intrare P1 si P2 sunt blocate, nepermitand accesul informatiilor de la intrare sa aibe acces in bistabilul Master; portile P3 si P4 se deschid, astfel ca informatia noua sa treaca din Master in CBB-Slave si deci, sa apara la iesire. Pentru ca informatia sa fie preluata corect din Master in Slave, trebuie ca pe durata timpului de pregatire tSU (numit si timp de prestabilire - Set-Up, este intervalul de timp dinainte de inceperea tranzitiei active a frontului, in care intrarile de date trebuie sa fie stabile) si de mentinere tH ( timp de mentinere Hold este intervalul de timp dupa tranzitia frontului activ, in care intrarile de date trebuie sa fie stabile) din jurul frontului negativ al tactului informatia din Master sa nu se schimbe. Bistabilele cu organizare master-slave prezinta uneori si intrari prioritare (numite intrari de fortaj), similare intrarilor de date nesincronizate de la nivelul slave-ului, numite: _______ ______ PRESET si CLEAR. Acestea nu pot fi activate simultan si produc aceleasi comenzi ca si intrarile normale S si R (Set si Reset). ________ ______ Astfel, activand PRESET, se comanda Q = 1, QN = 0, iar activand CLEAR, se comanda Q = 0, QN = 1. In sistemele digitale intrarile prioritare sunt utile pentru inscrierea informatiei de initializare sau de resetare a anumitor bistabili. Structura unui bistabil SR organizat pe principiul master-slave este aratata in figura F 5.1.11.

F 5.1.11. Organizarea de tip master-slave a unui bistabil SR: a)schema de principiu, b) diagrama de timp, c) simbolul. 207

Chestionar.

1. Care sunt caracteristicile principale ale CLS? 2. Cum definim intrarile primare (principale) si intrarile secundare ale unui CLS? 3. Cum definim starea stabila a unui CLS? 4. Cum se defineste un automat Mealy? 5. Dar un automat Moore?

6. Ce inseamna automat finit? 7. Cum definim circuitele CLS sincrone si asincrone? 8. Care este raportul dintre notiunile comutatie si basculare? 9. Cum functioneaza latch-ul SR tip NOR si tip NAND? 10. Cum functioneaza circuitul SR sincron? 11. Care este principiul schemei circuitului Master-Slave? 12. Care este rolul intrarilor de fortaj: CLREAR si PRESET?

208

Tema 5.2

1. 2. 3. 4.

CBB - tip JK, tip T, CBB asimetric, CB - monostabile, CB - astabile.

1. CBB tip JK, tip T. Bistabilul JK. Restrictia de neactivare simultana a celor doua intrari nu a fost eliminata inca. Aceasta restrictie poate fi eliminata impunand ca circuitul sa basculeze in starea opusa cand intrarile sunt activate simultan. Bascularea in stare opusa, fara o modificare a intrarilor, poate exista doar atunci cand exista o functionare cu autonomie ridicata fata de intrari. Latch-ul a rezultat, principial, din bucla constituita cu doua inversoare, indiferent de tipul de circuite iversoare folosite. Solutia problemei mentionate se afla in aplicarea inca a unei reactii, asa cum este aratat in figura F 5.2.1, alaturi fiind tabelul caracteristic.

F 5.2.1 Bistabil JK sincron, schema de principiu a aplicarii celei de-a doua reactii. Intrarile J si K corespund intrarilor S, respectiv R ale bistabilului SR. Daca se aplica semnal logic 1 simultan pe cele doua intrari, bistabilul comuta in starea complementara. Astfel, se considera J = K = 1 si Q(t) = 1 (adica starea actuala, inaintea aplicarii noilor valori ale intrarilor), Q(t)-negat = 0.

209

Legatura de reactie de la Q-negat face ca NAND-ul notat cu 1 sa aiba 1 logic la iesire, asteptand la intrarea portii NAND-3 aparitia celuilalt semnal. Legatura de reactie de la Q(t) intra in poarta NAND notata cu 2 si face ca iesirea acestuia sa fie 0-logic, acest 0-logic fortand poarta NAND - 4 in 1 logic. Acest 1 logic este prezent, prin reactie la intrarea portii NAND - 3, care mai are un 1 logic stabilit mai inainte, astfel ca iesirea Q(t) sa devina Q(t + 1) = 0-logic. Astfel, cand ambele intrari sunt egale cu 1 logic, la aparitia semnalului de clock se produce bascularea iesirilor. Bistabilul JK master-slave se compune din doua latch-uri SR, intr-o organizare clasica master-slave, la care se realizeaza cele doua legaturi de reactie (figura F 5.2.2) alaturi fiind aratata diagrama de semnale. Separarea iesirii de intrare elimina posibilitatea de aparitie a oscilatiilor, existenta la bistabilului JK realizat pe baza unui latch SR transparent. Daca pe intrarea K apare intamplator un impuls scurt (ca in figura), cu durata suficienta sa comande bascularea latch-ului master, acesta va fi basculat din starea unu in starea zero. Bistabilul JK master-slave este cu comutare pe front (edge-triggered), adica pe tranzitia pozitiva (0 1) este comutata partea master a bistabilului, iar pe frontul negativ, adica tranzitia negativa (1 0) este comutata partea slave. Majoritatea bistabilelor JK utilizate sunt comutate pe front. Se introduce semnul dinamic > pentru indicarea comutatiei pe frontul pozitiv, iar pentru comutatia pe frontul negativ se mai adauga in exterior cerculetul de negatie.

F 5.2.2 Bistabilul JK master-slave: a) structura, b) diagrama de semnale, c) simbol. Analizand atent functionarea bistabilului JK sincron, prezentat anterior, se poate observa o importanta deficienta a acestuia. 210

Astfel, daca J = K = 1 si Q(t) = 1, in momentul sosirii impulsului de ceas, CLK bistabilul isi schimba starea conform celor spuse anterior. Daca semnalul de ceas persista la valoarea logica 1, dupa stabilirea noii stari, urmeaza o alta schimbare a starii, sau altfel spus, bistabilul va intra in oscilatie atat timp cat semnalul CLK = 1. Pentru a exista o singura basculare, durata impulsului CLK trebuie sa fie mai mare ca timpul de propagare a semnalului printr-o poarta si mai mic decat timpul de propagare prin doua porti. Problema duratei impulsului CLK este eliminata la bistabilele de tip JK master-slave. Prezentam schema CI 7472 si tabelul de adevar corespunzator.

F 5.2.3. Schema CI 7472 si tabela de functionare.

211

Bistabilul de tip T (Toggle) Bistabilul de tip T are urmatoarea functionare: pentru intrarea T = J = K = 1, la aplicarea impulsului de clock bistabilul comuta in starea complementara, iar pentru T = J = K = 0, impulsul de clock nu modifica starea bistabilului. Bistabilul de tip T sincron reprezinta o varianta cu o singura intrare a bistabilului JK sincron, analizat mai inainte (a nu se confunda cu bistabilul JK master-slave). Bistabilul T sincron prezinta aceleasi deficiente ca cele mentionate in cazul bistabilului JK sincron. Trebuie amintit ca toate tipurile de bistabile pot fi realizate in variante asincrone, insa acestea sunt destul de rar utilizate in constructia dispozitivelor numerice. In figura F 5.2.3 este prezentat simbolul bistabilului T care comuta pe frontul crescator al ceasului, diagrama de semnale si tabelul caracteristic.

F 5.2.4. Bistabilul de tip T, comutat pe frontul crescator al clock-ului.

F 5.2.5. Bistabil de tip T, comutat pe frontul descrescator al ceasului. Asa dupa cum indica si simbolul bistabilului T, avem un mic triunghi, care semnifica faptul ca bistabilul va bascula pe frontul semnalului de ceas, cerculetul exterior indica faptul ca este vorba de frontul descrescator, cum este si exemplul dat. 212

2. CBB asimetric. Este cunoscut sub numele de Triggerul Schmitt. Circuitul asincron obtinut prin legaturi simetrice incrucisate intre doua inversoare prezinta in caracteristica statica de transfer doua stari stabile, circuitul acesta fiind celula elementara pentru toate circuitele basculante bistabile. Daca legaturile de conectare intre cele doua inversoare nu mai sunt simetrice din punct de vedere al conductantei, una incluzand o rezistenta R2, se obtine un circuit numit trigger Schmitt, care prezinta o caracteristica statica de transfer similara cu cea a unui releu cu histerezis. O structura de trigger Schmitt cu tranzistoare, in care cele doua inversoare sunt realizate cu tranzistoarele T1 si T2, existand figurata doar o singura legatura de reactie din colectorul lui T1 in baza lui T2. Facem referiri la figura F 5.2.6, unde prezentam celula elementara a circuitelor basculante bistabile, precum si modificarile aduse acesteia pentru obtinerea structurii triggerului Schmitt.

F 5.2.6. Triggerul Schmitt: a) celula elementara a CBB, b) schema de principiu a triggerului Schmitt, c) schema triggerului cu tranzistoare, d) diagrame de functionare. 213

Cand tensiunea de intrare Vi = 0, atunci tranzistorul T1 este blocat, deci T2 va fi in saturatie, rezultand Vo = VoL. La cresterea tensiunii de intrare Vi, tranzistorul T1 incepe sa conduca si tensiunea din colectorul lui incepe sa scada, ducand la blocarea lui T2. Cand Vi = Vp+, T2 se blocheaza, T1 fiind la saturatie, tensiunea de iesire basculeaza astfel de la VoL la VoH. Invers, la scaderea tensiunii de intrare, prin efectul de reactie, cand se ajunge la tensiunea de intrare Vi = Vp-, apare bascularea de la VoH la VoL. Se obtine astfel caracteristica de functionare de tip releu (histerezis). Aceasta caracteristica recomanda triggerul Schmitt pentru formarea si conditionarea fronturilor si amplitudinilor semnalelor digitale, cand acestea se obtin fie din semnale distorsionate, fie din semnale analogice. In figura d) , pentru un semnal de intrare cu variatie rampa care se stabilizeaza cu oscilatii, se obtine la iesirea triggerului o tensiune cu variatie treapta care poate fi digitalizat, devenind posibila prelucrarea lui ulterioara pe sisteme digitale. De asemeni, circuitul are diverse aplicatii in electronica industriala, fiind realizat in diferite forme si cu diferite componente.

3. CBM - Circuit basculant monostabil. Se poate obtine structura de principiu a circuitului monostabil daca una din legaturile de reactie ale celulei de baza a circuitelor bistabile este realizata capacitiv, asa cum este aratat in figura F 5.2.7. Aceasta inseamna ca se transmite prin condensatorul Cx, de la iesirea portii 1 la intrarea portii 2, numai variatii (componenta continua este intrerupta). Circuitul se pastreaza intr-o stare stabila: Q = 0, QN = 1, un timp nedefinit, daca nu se aplica un impuls din exterior. La aplicarea unui impuls din exterior, monostabilul basculeaza in starea opusa: Q = 1, QN = 0, care este mentinuta de o reactie pozitiva a celor doua legaturi incrucisate. Dar aceasta rectie pozitiva exista doar in intervalul de timp w , care corespunde duratei regimului tranzitoriu prin condensatorul Cx, dupa care se intrerupe, iar monostabilul revine in starea Q = 0, QN = 1. Durata regimului tranzitoriu este functie de constanta de timp a legaturii de reactie in care este introdus condensatorul. 214

Modificand aceasta constanta de timp apare posibilitatea ca acest circuit sa poata genera/marca intervalele de timp controlabile.

F 5.2.7. Circuit basculant monostabil: a) structura, b) diagrame de timp, c) simbol. Monostabilul este realizat cu porti NOR - CMOS. In starea stabila, iesirea portii 1 este Vo1 = Vdd, iesirea portii 2 este Vo2 = 0V, intrarea portii 2 este Vdd, deci tensiunea pe condensator este zero. La aplicarea unui impuls pozitiv de comanda T pe intrarea portii 1, iesirea acesteia comuta in Vo1 = 0V, care transmisa prin condensatorul Cx determina tensiunea in punctul x : Vx = 0V, iesirea portii 2 comuta in Vdd, iar aceasta tensiune de iesire aplicata pe intrarea portii 1 face ca sa nu mai fie necesara prezenta impulsului T. In continuare, printr-un curent de la Vdd, prin rezistenta Rx si iesirea portii 1, condensatorul Cx se incarca (constanta de timp fiind RxCx) iar tensiunea Vcx va creste de la Vcx = oV inspre Vcx = Vdd. Dar, dupa un interval de timp w , tensiunea pe condensator atinge valoarea de prag de comutatie Vt a portii 2, iesirea acestei porti comuta in Vo2 = 0V, iar ceasta tensiune aplicata la intrarea portii 1 comanda iesirea acesteia in starea Vo1 = Vdd. Tensiunea pe condensator devine zero, transferul prin condensator se intrerupe, deci starea Qn = 0, Q = 1 s-a terminat. Marcarea intervalelor de timp, precum si reproductibilitatea lor nu pot avea o precizie ridicata cu ajutorul monostabilului

215

4. Circuit basculant astabil - CBA. CBA se obtine tot din celula de baza a circuitului bistabil, prin realizarea a doua legaturi de reactie capacitive, in locul legaturilor galvanice obisnuite. Prin cele doua condensatoare se transmit numai regimurile tranzitorii, nu si componentele continui, in felul acesta circuitul va fi caracterizat de doua stari instabile. La monostabil durata starii instabile este determinata de constanta de timp (RxCx) si asa se petrec lucrurile si in cazul astabilului, durata unei stari instabile depinzand de valorile RC de la intrarea inversorului respectiv, figura F 5.2.8.

F 5.2.8. Circuitul basculant astabil. Avantajul simplitatii acestei structuri de astabil, realizat cu porti logice, este diminuat de lipsa de stabilitate a frecventei semnalului generat. Circutele astabile care genereaza o frecventa precisa si o mentin in timp, se realizeaza cu cristale de cuart.

216

Chestionar.

1. Cu ce scop se aplica a doua reactie inversa la bistabilele tip JK? 2. Explicati functionarea schemei din figura F 5.2.1.? 3. In ce consta comutarea pe front, folosita in bistabilul JK? 4. Explicati cum functioneaza bistabilul JK - CI 7472, figura F 5.2.3.? 5. Care este modul de functionare al bistabilului T (Toggle)? 6. Cum se poate obtine un CBB asimetric? 7. La ce foloseste triggerul Schmitt? 8. Cum se obtine structura CBM? 9. In ce domenii sunt folosite circuite monostabile? 10. Cum se obtine structura CBA?

217

218

Tema 5.3.

1. 2. 3. 4.

Numaratoare Numaratoare Numaratoare Numaratoare

asincrone. sincrone presetabile. modulo C.

Numaratoarele sunt circuite secventiale care au rolul de a numara (contoriza) numarul de impulsuri aplicat la intrare. Sunt realizate prin asocierea circuitelor bistabile, avand rol de elemente de memorie binara, cu circuite logice care determina modul concret in care numaratorul urmeaza sa-si modifice starea, la fiecare nou impuls prezent la intrare. Numaratoarele electronice se realizeaza cu celule binare de tip T. Prin interconectarea adecvata a n celule, se va obtine schema unui numarator care poate fi privit ca un circuit secvential cu un numar de stari distincte. Fiecarei stari ii putem asocia cate un cuvant de cod de lungime n, reprezentand continutul celor n celule binare pentru starea data a numaratorului; codul in care numara un numarator va fi dat de succesiunea cuvintelor de cod binare, asociate starilor numaratorului. Alegerea codului in care va numara numaratorul este dictata de aplicatia care urmeaza a i se da numaratorului. Cele mai frecvent utilizate coduri sunt: codul binar natural, coduri BCD.. Numaratoarele se pot clasifica si din acest punct de vedere in numaratoare binare, zecimaleetc. Capacitatea de numarare a unui numarator este data de numarul starilor distincte pe care le poate avea, iar factorul de divizare al numaratorului este definit prin raportul dintre numarul impulsurilor de la intrare si numarul impulsurilor de la iesire. Numarul starilor distincte posibile ale unui numarator format din n celule este 2n, operatia pe care o realizeaza numaratorul, din punct de vedere matematic se numeste operatie modulo 2n. Daca din cele 2n stari se elimina un numar k de stari (prin conditionari realizate logic cu elemente logice de circuit), rezulta un numarator cu un numar de stari p: p = 2n - k.

In acest caz, numaratorul va realiza o operatie modulo p (un simplu bistabil este un numarator modulo 2), numindu-se numarator modulo p. Revenirea numaratorului in starea initiala (asociata cuvantului de cod 00000) este insotita de aparitia unui impuls la iesire - impuls de tranzitie (transport), a carui semnificatie va fi prezentat mai departe. Circuitele logice asociate pot fi omise daca bistabilul utilizat poate realiza prin structura sa functiile logice impuse de modul corect de functionare al numaratorului. Dupa modul de modificare a starilor numaratorilui, deosebim urmatoarele tipuri: directe, la care continutul numaratorului creste cu fiecare impuls (count-up), inverse, la care continutul numaratorului descreste cu fiecare impuls (count-down) reversibile, care la comanda, numara intr-un sens sau altul.

Circuitele numaratoare pot fi incadrate in doua grupe, dupa modul de functionare: asincrone, sincrone. 219

1. Numaratoare binare asincrone. 1.A Numaratoare binare asincrone directe. Denumirea de asincron reflecta faptul ca, in functionarea sa, celulele de memorare (bistabilele) nu comuta toate sincron, in acelasi moment, la comanda semnalelor de ceas, ci treptat, prin functionarea normala a seriei de bistabile de tip T. Reamintim ca bistabilul de tip T, avand semnalul T = J = K = 1, fiind in starea 0 (Q = 0, QN = 1), la primul impuls de clock, bistabilul basculeaza in starea opusa ( Q = 1, QN = 0), iar la al doilea impuls revine in starea initiala Intr-o inseriere de bistabile de tip T, fiecare din acestea, cand revine in starea initiala, transmite o comanda pe intrarea de clock (ceas) la urmatorul bistabil, basculandu-l. Deoarece intr-o astfel de inseriere fiecare bistabil divide prin 2 numarul de impulsuri de clock de la intrare, acest lucru este echivalent cu o operatie de numarare in baza 2 a impulsurilor de clock aplicate primului bistabil ( in cod 8421). Figura F 5.3.1. este prezentat un numarator asincron cu trei bistabile (deci va avea 23 = 8 stari distincte, capacitatea numaratorului find 8, iar factorul de divizare fiind tot 8) tip T si diagramele de semnal.

F 5.3.1

Numarator binar asincron direct: a) schema, b) diagrame ale functionarii.

Citirea starilor numaratorului poate fi facuta direct in binar, prin examinarea starilor logice ale iesirilor Q0, Q1, Q2 sau in zecimal, daca se foloseste un decodor binar zecimal, atasat iesirilor numaratorului, asa cum se arata in figura urmatoare, F 5.3.2. 220

F 5.3.2. Numarator binar asincron direct cu decodor binar-zecimal. Se observa ca la intrarea portii logice Po (care indica starea 0 a numaratorului) pot aparea impulsuri suplimantare situatiei Q0 = Q1 = Q2 = 0, datorati timpilor de propagare ai circuitelor, fapt scos in evidenta in figura urmatoare, F 5.3.3.

F 5.3.3. Exemplificarea posibilitatii aparitiei erorii si eliminarea ei. 221

In diagrama de timp, apar doua impulsuri parazite, aratate pe orizontala Po fara strobe. Eliminarea acestora se poate face daca intrarile vor fi validate prin semnalul STROBE, care va fi pozitionat in timp, in asa fel, incat sa fie evitate starile de tranzitie ale semnalelor de iesire sau de intrare. Orizontala Po cu STROBE demonstreaza acest lucru. Revenind la numaratorul nostru (F 5.3.1.) sa precizam ca acesta poate lucra si in regim de divizor, iar frecventa maxima pe care o poate folosi va depinde de timpii de propagare ai celulelor bistabile. In figura de mai jos sunt aratate modurile de functionare ale numaratorului binar asincron direct.

F 5.3.4. Moduri de functionare ale numaratorului. Sa evidentiem si comanda CLEAR-negat (activ pe valoarea L = 0-logic) care are rolul de aducere la zero a tuturor celulelor in acelasi moment (stergerea numaratorului). Procesul de numarare poate fi efectuat si invers, descrescator (count-down), numaratorul fiind binar asincron invers, care va expus in continuare.

222

1.B. Numaratoare binar asincron invers. Schema acestui numarator, impreuna cu formele de unda care evidentiaza functionarea sunt prezentate in figura urmatoare, F 5.3.5.

F 5.3.5. Numarator binar asincron invers. Schema se deosebeste de cea a numaratorului direct prin faptul ca legatura de la o celula la alta se face prin iesirea QN a fiecarei celule. Deoarece comenzile sunt active pe frontul descrescator al intrarii CK (trecerea 1 0), se poate urmari diagrama de semnale b) unde sunt trecute toate pozitiile binare ale bistabililor, rezultand continuturile specificate. Citirea continutului numaratorului se face pe iesirile directe ale bistabililor, ca si la tipul de numarator de mai inainte. Sa observam ca evolutia iesirilor negate (QN) arata un proces de numarare.

223

1.C. Numarator binar asincron reversibil. Daca se cupleaza cele doua scheme prezentate anterior: numaratorul direct si invers, printr-o schema logica care sa poata selecta cele doua moduri de functionare, se poate realiza numaratorul reversibil. Aceasta schema logica de cuplare poate fi realizata in mai multe moduri, cea mai folosita fiind cea care utilizeaza multiplexoare plasate intre celulele binare. Astfel, printr-o comanda aplicata multiplexoarelor (MUX 2 : 1), notata CM in figura F 5.3.6, se poate selecta care dintre iesirile bistabililor va fi validata pentru a comanda etajul urmator, in functie de aceasta comutare se va stabili sensul de numarare.

F 5.3.6. Numarator reversibil Pentru comanda CM = 0, multiplexoarele fac legatura Qi Y, ceea ce va face ca numaratorul sa functioneze ca un numarator direct, iar pentru comanda CM = 1, se va valida legatura QiN Y, numaratorul functionand invers. Numaratoarele binare asincrone au avantajul de a fi simple, obtinandu-se prin interconectarea unor bistabile de tip T. Frecventa maxima de lucru a acestor numaratoare este limitata de numarul de celule n si de timpul de basculare a fiecarei celule: t b. Daca luam in considerare functionarea unui numarator care are n celule, perioada T minima a impulsurilor care urmeaza a fi numarate trebuie sa fie: T > n x t b, astfel ca frecventa va fi: fmax 1 = T 1 < n x tb sau fmax 1 < , n x t b + Ts daca se tine

cont si de intervalul de timp necesar pentru STROBE (Ts). 224

2. Numaratoare binare sincrone. 2. A. Numarator binar sincron de tip serie. La numaratoarele sincrone, spre deosebire de cele asincrone, impulsul de clock (ceas) se aplica simultan pe intrarile CLK ale tuturor celulelor, deci bistabilele de tip T pot comuta sincron. Celula numaratorului asincron totdeauna basculeaza cand se aplica un impuls de clock daca este indeplinita conditia de basculare T = 1. La numaratorul sincron, oricare celula comuta sincron cu celelalte la aplicarea impulsului de clock, daca este inscrisa conditia de basculare T = 1, care rezulta ca o functie calculata din starile celulelor anterioare. Un bistabil trebuie sa indeplineasca conditia de basculare Ti = 1 numai atunci cand toate celulele anterioare sunt in starea 1 logic. Conditiile de basculare Ti se calculeaza cu relatiile: To = 1, T1 = Qo T2 = QoQ1 T3 = QoQ1Q2 ....................................... Tn-1 = QoQ1 Q2......Qn-1 Qn-2. Conform acestui grup de relatii se poate structura un numarator sincron ca in figura de mai jos, F 5.3.7.

F 5.3.7. Numarator binar sincron serie de patru biti. Conform relatiilor de mai sus, poarta P1 inseamna Q0Q1, adica conjunctia starilor celor doua celule anterioare, poarta P2 insemnand P1Q2 = Q0Q1Q2. Privitor la frecventa maxima la care functioneaza acest numarator, aceasta depinde de timpii de basculare ai fiecarei celule bistabile, la care se adauga si timpii de propagare prin portile SI, incluse in linia de comenzi a numaratorului. 225

2. B. Numarator binar sincron de tip paralel Daca portile SI dintre celule nu se mai leaga in cascada, ca in schema numaratorului de tip serie prezentat anterior, ci fiecare poarta SI este cuplata direct la iesirile bistabililor care conditioneaza deschiderea. In acest fel se obtine si o marire suplimentara a vitezei de lucru. Schema acestui numarator este prezentata in figura urmatoare, F 5.3.8.

F 5.3.8. Numarator binar sincron paralel. In cazul acestei structuri, frecventa maxima de lucru nu mai este atat de mult influentata de timpul de propagare al portilor SI, deoarece toate portile de comanda comuta simultan. De aceea, acest tip de numarator este cel mai rapid dintre toate cele prezentate pana acum. Dezavantajul schemei consta in faptul ca portile SI consecutive au cate o intrare in plus, iar fiecare poarta de comanda nou introdusa mareste cu cate o unitate gradul de incarcare al bistabililor. Aceasta incarcare in plus mareste timpul de basculare, reducand frecventa de lucru a numaratorului. Cresterea numarului de intrari ale portilor SI duce, de asemenea, la marirea timpilor de comutare ai portilor, ceea ce este un dezavantaj.

226

2. C. Numarator binar sincron reversibil. In general, numaratoarele binare sincrone se fabrica sub forma de numaratoare reversibile. Interconectarea celulelor pentru obtinerea functionarii ca numarator sincron reversibil se face ca in figura F 5.3.9.

F 5.3.9. Schema numaratorului binar sincron reversibil. Schimbarile care apar in aceasta schema fata de cele aratate pana acum sunt urmatoarele: - toate intrarile J si K ale celulelor bistabile sunt la nivel 1-logic, - impulsul de tact (ceas) este dirijat prin intermediul unor porti spre celulele care trebuie sa basculeze, conform fabelei de functionare. Bascularea celulelor binare se produce la tranzitia 0 1 a semnalului de pe una din intrarile de tact: CU (Count Up) pentru numararea directa, CD (Count Down) pentru numararea inversa. Sensul de numarare este determinat de intrarea activata, in timp ce cealalta intrare este in stare 1-logic. De exemplu, in cazul numararii directe, cand comanda CU este activa (0-logica), comanda CD este 1-logic, la intrarea inversorului NU2, iesirea acestuia fiind 0-logic, blocand portile de tip SI: P2, P4, P6. Impulsurile care urmeaza a fi numarate se aplica pe borna CU, sunt inversate de NU1 si aplicate portilor P1, P3, P5 si apoi portilor SAU pentru a comanda bascularea celulelor. Numaratorul mai este prevazut cu doua porti suplimentare de tip NAND, P7 si P8, pentru generarea comenzilor: Carry (CY), cand numaratorul este umplut: Q0 = Q1 = Q2 = Q3 = 1, Borrow (BR), cand numaratorul se goleste: Q0 = Q1 = Q2 = Q3 = 0.

227

3. Numaratoare presetabile. La numaratoarele sincrone presetabile se poate realiza ca, la un anumit impuls de ceas, tranzitia sa se efectueze intr-o stare urmatoare, prescrisa din exterior. Starea de inceput a noului ciclu de numarare, validata prin actiunea semnalului de control de incarcare LOAD (in general activ, in starea Low), este inscris in celulele bistabil de stare ale numaratorului. Dar inscrierea (fortarea) unei stari urmatoare din exterior inseamna ca in numarator se introduce noua valoare de inceput, adica numaratorul este presetat, iar numaratorul respectiv se numeste presetabil. Inscrierea (presetarea, incarcarea) in paralel a cuvantului de date se face in mod asincron, pe palier, fie in mod sincron, pe front. ________ ______ Pentru incarcarea asincrona se utilizeaza intrarile prioritare PRESET si CLEAR, figura F 5.3 5, ale bistabilului de tip D, intrarea datelor este validata de semnalul de incarcare LOAD-negat, pe durata acestuia semnalul de clock neavand efect.

Celula numarul n a numaratorului. I - intrare de la logica numaratorului. a)

Celula numarul n a numaratorului. b)

F 5.3.10 Numarator presetabil: a) circuit de incarcare asincrona intr-un bistabil b) circuit pentru incarcarea sincrona. Incarcarea sincrona este mult mai frecvent inclusa la numaratoarele presetabile. Pentru inscrierea datelor actioneaza semnalul LOAD, dar inscrierea datelor se realizeaza numai o data cu urmatorul front activ de clock. Semnalele de control pentru un numarator presetabil sunt: - LOAD - incarcare - CLEAR - stergere, - ENABLE - de validare. Operatia de stergere, CLEAR activ, se realizeaza indiferent de valorile celorlalte semnale de control, deci CLEAR are prioritate maxima. Activarea semnalului LOAD incarca din exterior celulele numaratorului chiar daca acesta nu este validat pentru operatia de numarare, prin activarea semnalului ENABLE.

228

Daca toate cele trei semnale de control nu sunt activate numaratorul este inhibat inghetat intr-o anumita stare, adica nu se produce nici o modificare la aplicarea semnalelor de ceas. Numaratoarele presetabile sunt recomandate a fi utilizate in implementarea circuitelor digitale complexe, pentru ca se poate obtine o reducere a efortului de proiectare si o imbunatatire a sigurantei in functionare si a pretului de cost.

229

4. Numaratoare modulo p. Un numarator modulo-p este un numarator care poate avea p stari distincte. Numaratoarele binare prezentate anteriore erau numaratoare care contineau n bistabili interconectati prin inseriere si care primeau la intrare ceasul de numarare si isi cresteau valoarea acumulata in cei n bistabili cu 1 logic la fiecare impuls. Fiecare bistabil devine 1 logic la fiecare doua impulsuri. Putem spune ca divizeaza numarul N de impulsuri cu 2, sau exprimat in termeni matematici, bistabilul este un numarator modulo 2. Daca avem trei celule de numarare (bistabili), numarul N de impulsuri ale intrarii va fi divizat cu 2 x 2 x 2 = 8. Spunem ca avem de-a face cu un numarator modulo 8. Caracteristica principala a acestor numaratoare (cu n celule) este aceea ca, plecand dintro stare initiala arbitrara, acesta va evalua astfel incat va trece prin toate cele 2 stari posibile. In cazul in care dorim realizarea unui numarator modulo p se poate proceda astfel: a- se determina numarul minim de celule binare necesare pentru realizarea numaratorului cu relatia: 2n p b- se interconecteaza celulele numaratorului astfel incat din cele 2n stari posibile sa se elimine 2n - p stari. In functie de starile omise, pentru acelasi numar p, vor exista mai multe variante de numarator modulo p. De exemplu, un numarator modulo 5 este aratat mai jos, F 5.3.11.

F 5.3.11 Numarator modulo 5: a) schema, b) diagrame. 230

Sa analizam functionarea acestui numarator modulo 5. Starea initiala a bistabilelor este: Q2 = 0, Q1 = 0, Q0 = 0. Pe primul front negativ al clockului se va petrece setarea bistabilului Q0, acesta devenind Q0 = 1. Acest clock nu-l poate seta pe Q1, deoarece J1 = 0 (deci conditia de setare a lui Q1 este zero, bistabilul nu poate fi setat) si J2 = 0, ca iesire a AND lui respectiv ( deci nici Q2 nu poate fi setat). Avem noua stare: Q2 = 0, Q1 = 0, Q0 = 1, rescrisa pe scurt 001. Urmatorul clock il basculeaza pe Q1 (J1 = K1 = 1, deci avem conditia de basulare) si il reseteaza pe Q0, starea bistabilelor fiind o1o. Clockul urmator va produce setarea lui Q0, acesta fiind singurul bistabil care are conditiile de setare: J0 = K0 = 1. Se ajunge la starea: 011. Sa observam ca acum circuitul AND are ambele intrari 1 logic, deci J2 = 1, adica avem conditia de setare a lui Q2. La urmatorul clock se produce setarea lui Q2 si resetarea lui Q0 si Q1, noua stare fiind 100. Acum, la cel de-al cincilea clock, sa observam ca: - J0 = 0 (deci Q0 va ramane in starea resetat, Q0 = 0), - J1 = 0 (deci Q1 va ramane resetat, Q1 = 0), - J2 = 0 (deci Q2 va fi resetat, Q2 = 0). Am ajuns in starea initiala 000, trecand succesiv prin cinci stari, ceea ce insemna ca se realizeaza fnctionarea normala a unui numarator modulo-5. Acest lucru se poate urmari si pe diagrama de semnale din figura F 5.3.6. Prin conectarea in cascada a unor numaratoare cu factori de divizare diferiti, putem obtine noi numaratoare. De exemplu, daca cuplam in cascada un numarator modulo-2 (un bistabil), cu un numarator mudulo-5, rezultand un nou numarator, modulo-10 (numarator decadic),reprezentat in figura F 5.3.12, de mai jos.

F 5.3.12.

Divizor cu 10 = 2 x 5.

231

Numaratoare modulo p realizate prin aducere la zero. Procedeul aducerii la zero este des utilizata pentru realizarea numaratoarelor modulo p. Acest procedeu consta in urmatoarele: - se lasa numaratorul sa veolueze pana la starea p 1; - in momentul in care se atinge valoarea p, se aplica un impuls de stergere (resetare) a tuturor celulelor numaratorului. Daca vrem sa realizam un numarator decadic folosind tehnica aducerii la zero aplicata unui numarator asincron direct, vom avea nevoie de patru celule, deoarece p = 10, iar din relatia: 2n p = 10, rezulta n = 4 Schema acestui numarator este data mai jos:

F 5.3.13. Numarator modulo 10, schema prin aducere la zero: a) schema de principiu, b) schema circuitului de aducere la zero. Diagramele de timp prezentate mai jos explica functionarea acestui numarator.

F 5.3.14 Diagramele functionarii numaratorului modulo 10. 232

Se observa ca numaratorul trece succesiv prin starile 0, 1, 2, .9 si cand ajunge in starea 10, circuitul de recunoastere a acestei stari se activeaza (circuit NAND) si comanda aducerea la zero a numaratorului. ______ Comanda se numeste resetare (fortata) sau CLEAR, asa cum s-a precizat mai inainte.

Numaratoare (divizoare) programabile. Un divizor programabil este un circuit electronic la care factorul de divizare poate fi modificat de un cuvant de cod (comanda) aplicat din exterior. Realizarea unui numarator cu factor de divizare p, se poate face prin utilizarea unor numaratoare reversibile. Prezentam o schema de principiu a unui astfel de numarator, figura F 5.3.15.

F 5.3.15

Numarator programabil, schema de principiu.

Daca incarcam numaratorul (in paralel) ci cifra p iar apoi se aplica impulsuri care trebuie contorizate pe intrarea de numarare inversa (CD), dupa p impulsuri numaratorul se goleste si se semnaleaza prin aceasta ca divizarea cu p a avut loc (iesirea Borrow - BR). Daca se foloseste acest impuls pentru reincarcarea numaratorului, se obtine un numarator divizor cu p - apare un impuls pe iesirea BR pentru p impulsuri aplicate pe intrarea CD. Legarea directa a iesirii BR la intrarea de incarcare LOAD (valoarea p este incarcata) nu este posibila, deoarece semnalul BR apare in momentul golirii numaratorului, de aceea acest semnal trebuie memorat. Astfel, la fiecare sfarsit de numarare a p impulsuri, prin conectarea iesirii Borrow la intrarea Load se reincarca cifra p si se starteaza un nou ciclu.

233

Chestionar.

1. Cum se defineste numaratorul? 2. Ce semnifica capacitatea de numarare si factorul de divizare a unui numarator? 3. Care sunt tipurile de numaratoare conform cu modul de modificare al starilor lui? 4. Dar, conform cu modul de functionare? 5. Ce inseamna numarator sincron si asincron? 6. Eplicati functionarea numaratorului binar asincron direct, schema din figura F 5.3.1. 7. Care este necesitatea comenzii STROBE, figura F 5.3.2. 8. Explicati functionarea numaratorului binar asincron invers F 5.3.5. 9. Explicati functionarea numaratorului reversibil, F 5.3.6. 10. Care sunt conditiile de functionare ale numaratorului binar sincron serie? 11. Care este princioiul de organizare achemei numaratorului binar sincron paralel? 12. Ce semnifica semnalele (comenzile) CU Count-Up, CD - Count-Down, BR Borrow, CY - Carry? 13. Ce inseamna numarator presetabil? 14. Cum se definesc numaratoarele modulo p? 15. Cum este conceput si realizat numaratorul modulo p cu aducere la zero?

234

T 5.4. 1. 2. 3. 4.

Circuite registru. Registrul paralel. Registrul de deplasare. Registrul serie - paralel. Memoriile FIFO, LIFO. Convertoare paralel seriale.

La nivel de bit, suportul fizic pentru stocare/memorare, sincronizare, cuplare si izolare este circuitul bistabil. La nivel de cuvant, definit ca o succesiune de n biti, suportul fizic pentru functiile de stocare, cuplare, sincronizare si izolare este un circuit compus din n circuite bistabil, numite circuit registru sau uzual, registru. Odata inscrisa informatia de un bit intr-un bistabil, aceasta este disponibila a fi citita. La fel si la un registru, cuvantul inscris poate fi citit ca atare. Sistemele de procesare a informatiei foloseste informatia sub forma de cuvant. In functie de modul cum se realizeaza conexiunile pentru extensia de la circuitul bistabil la organizarea de circuit registru exista: registru paralel (numit si registru de memorie), registru serie si combinatii intre acestea (serie-paralel si paralel-serie). Daca luam in considerare faptul ca datele pot fi introduse (inscrise) sau citite in / din registru in mod serie sau paralel, se poate face o clasificare a registrelor si din acest punct de vedere, existand patru categorii: registru registru registru registru cu cu cu cu intrare intrare intrare intrare serie si paralela serie si paralela iesire serie, si iesire serie, iesire paralela, si iesire paralela.

Pentru toate tipurile de registru exista un parametru comun - lungimea registrului. Ca suport fizic pentru functiile enumerate mai sus, registrul este o componenta fundamentala in arhitectura si implementarea sistemelor digitale. 1. Registrul paralel. Acesta are o structura simpla, rezultata prin considerarea in paralel a n celule bistabil, uzual de tip D. In afara de semnalul de ceas comun pentru toate celulele, poate sa nu existe nici o alta conexiune intre celulele bistabil, cum se arata in figura F 5.4.1. Sunt folosite bistabile tip D, comandate sincron pe frontul anterior (trecerea 0 1), astfel ca informatia se inscrie la aparitia comenzii Write sau LSI - Latch Strobe Input (daca bistabilele sunt de tip D Latch, cazul CI 7475, comanda fiind in acest caz facuta pe palier valoarea 1 a semnalului LSI). Cand impulsul de comanda trece din nou in 0-logic, celulele de tip D se blocheaza si mentin valoarea memorata corespunzator in fiecare celula (valorile de intrare AL, BL, CL, DL sunt deja memorate si prezente la iesirile (Q) ale celulelor. Daca registrul este realizat cu celule de tip D master-slave, in registru se va memora informatia prezenta pe intrarile de date in momentul trecerii 1 0 (front descrescator) a impulsului de tact si se pastreaza pana la urmatoarea trecere 1 0 a impulsului de tact. 235

F 5.4.1 Registrul paralel: a) structura sircuitului; b, c, d, e) CI cu functie de registru paralel. De obicei, registrele paralele se realizeaza cu celule de tip D sincrone, cu comanda activa pe front. Diversele variante constructive introduc anumite facilitati, oentru usurarea folosirii lor in acheme mai complicate; de exemplu, CI SN74171 este un registru cu patru celule cu posibilitatea stergerii continutului (comanda CLR-negat, adica CLEAR, F 5.4.1 - b). La CI - SN74377, registru paralel de 8 biti, F 5.4.1. c, a fost introdusa o comanda Enable EN pentru autorizarea inscrierii informatiei in registru, activa cand EN = 0-logic. La CI - SN74374, de asemenea un registru de 8 biti este prevazuta o comanda de validare a iesirilor: Output Enable - OE, activa cand OE = 0-logic. Cand acest semnal este activ, OE = L 0-logic, continutul celulelor registrului va putea fi citit pe iesirile Q0..Q7; prezenta acestei comenzi semnifica faptul ca se pot conecta mai mulye asemenea circuite la o singura magistrala, citirea informatiei, adica punerea datelor pe magistrala facandu-se doar cand circuitul respectiv este selectat prin comanda OE- L activa. Cat timp aceasta comanda este inactiva, OE = H 1-logic, iesirile registrului sunt in starea HZ. Circuitul SN74670 contine o arie de patru registre de cate patru biti fiecare, cu posibilitatea de a scrie si citi informatia din oricare dintre ele. Pentru citire se activeaza comanda RE-negat, iar selectia registrului se face printr-o comanda aplicata pe terminalele RA si RB. Pentru scriere se activeaza comanda WE-negat, selectia facandu-se prin semnalele WA si WB, in acest caz, circuitul lucrand fara tact extern, folosindu-se semnalul WE-negat. 236

2. Registrul de deplasare. Registrul de deplasare, la fel ca si registrul paralel, este o structura simpla ce se obtine prin inserierea de celule bistabil de celule bistabil, uzual de tip D - master-slave, de unde si denumirea de registru de deplasare serie sau, mai frecvent, registru serial. In figura F 5.4.2 este prezentata organizarea unui registru de deplasare stanga-dreapta, prin inserierea a patru celule de tipul S-R master-slave, utilizate intr-o conexiune de tip D master-slave.

F 5.4.2.

Registru serial (de deplasare) stanga-dreapta.

Functionarea acestui registru este ilustrata in figura F 5.4.3. La fiecare impuls de tact continutul registrului se muta cu cate o pozitie spre dreapta. Trebuie observat ca pentru un cuvant de n biti, introducerea se produce bit cu bit, in ordine, incepand cu bitul cel mai semnificativ ( MSB, Most Significant Bit - ponderea cea mai mare), continuandu-se apoi pana la introducerea ultimului bit (numit LSB, Least Significant Bit - bitul cu ponderea cea mai mica) Tactul de ceas se aplica sincron, la fiecare celula, continutul registrului fiind luata in considerare numai pe durata dintre fronturile active de ceas. Acest lucru inseamna ca semnalul de iesire va fi identic cu cel de intrare, dar intarziat cu un numar de perioade de tact egal cu numarul de celule din care a fost format registrul.

F 5.4.3. Functionarea registrului de deplasare (serial) stanga-dreapta. 237

Pentru tactul 1T, intrarea I0 (poate fi 0 sau 1) va fi memorata in Q0, celelalte celule raman neschimbate, deoarece se pleaca din starea initiala 0 0 0 0 , asa cum se specifica in schema data, intrarile de set fiind mentinute la 0-logic. In momentul tactului urmator: 2T, I0 avanseaza, fiind memorat de Q1, iar in Q0 se memoreaza bitul I1, restul continuand in acelasi fel. Pentru a obtine un registru de deplasare dreapta-stanga trebuie schimbate legaturile dintre celule in mod corespunzator, asa cum se arata in figura urmatoare F 5.4.4.

F 5.4.4. Registru de deplasare (serial) dreapta-stanga. __ __ Legaturile sunt facute in sensul: Qn = Sn-1, iar Qn = Rn-1. Astfel se obtine registrul serie cu deplasarea dreapta-stanga, avand functionarea asemanatoare cu a celuilalt registru.

238

Registrul inel. Structura de registru inel se obtine dintr-un registru de deplsare, la care iesirea serie se conecteaza la intrarea serie, deci se inchide o bucla de reactie in jurul registrului de deplasare. Cuvantul initial inscris nu este pierdut prin deplasarea sa, ci recirculat in interiorul inelului. O structura de registru inel, compus din patru celule bistabil D, este prezentata in figura F 5.4.4 a. Prin intrarile asincrone CLEAR si PRESET se forteaza un cuvant care va fi apoi deplasat prin succesiunea impulsurilor de ceas. De exemplu, daca se introduce prin fortaj valoarea 0001, continutul numaratorului va fi, succesiv, urmatoarea: 0010, 0100, 1000, 0001,........ Printre altele este utilizat pentru producerea de semnale defazate, cu anumite frecvente, adica are rolul de generator de faze, lucru foarte util in functionarea unor dispozitive digitale.

F 5.4.4 Registrul inel: a) structura de regestru inel cu patru celule, b) diagrama semnalelor de faze, c) structura de numarator Johnson cu patru celule si succesiunea normala a cuvintelor in procesul de numarare (e), d) decodificatorul de faze si diagrama fazelor (f). 239

In figura F 5.4.4 b sunt prezentate fazele generate de un registru inel cu patru celule. Uneori, in registrul inel este recirculat un segment compact de m pozitii de 1-logic, in interiorul cuvantului, care poate fi izolat logic, adica preluat si folosit cu semnificatii speciale in cadrul unei scheme logice mai complexe. In figura F 5.4.4 c este prezentat un numarator Johnson (sau Moebius), care este tot un registru inel, cu particularitatea ca reactia de la celula Qn la celula Q1 este complementata, adica se ia de pe iesirea negata. Aceasta reactie inversata introduce un defazaj de 180, deoarece intrarile fiecarei celule sunt comandate in opozitie (de la Q si Q-negat ale celulei anterioare). Spre deosebire de de un registru inel cu n celule care genereaza in ciclul sau n cuvinte de stare, numaratorul Johnson cu n celule poate avea 2n stari. Denumirea de numarator Moebius este data pentru asemanarea care exista cu bucla lui Moebius, care se poate confectiona dintr-o bucata de hartie, ale carei capete, inainte de a fi lipite se rasucesc; drumul parcurs dintr-un punct oarecare, pana la revenirea in acel punct este dublu fata de lungimea buclei de hartie. Aplicatia cea mai eficienta pentru numaratorul Johnson este, ca si a numaratorului inel, cea de generator de faze; daca la registrul inel fazele sunt date chiar de iesirile celulelor bistabil, in cazul registrului (numarator) Johnson, cele 2n faze sunt date prin porti AND cu doua intrari, cum se arata in figura d).

240

3. Registrul serie-paralel. Cu n bistabile D se poate realiza un registru serie sau paralel, sau un registru combinat, care sa aiba functiunile ambelor tipuri, adica un registru serie care sa poata executa si deplasari ale continutului sau de la stanga la dreapta si invers. Acesta este registrul serie-paralel. Pentru acest tip de registru cuvantul de intrare poate fi prezentat sub forma seriala, sau in format paralel. Intr-o serie intreaga de aplicatii este util ca registrul sa aiba pe langa intrarea serie (ca in cazul registrului de deplasare) si intrari paralele. In figura F 5.4.5. este sintetizata functionarea registrului serie-paralel care corespunde circuitului CI 74194.

F 5.4.5. Registrul serie paralel: a) structura circuitului, b-c) mod de functionare si Simbol pentru CI 74194, registru cu patru celule.

S1, S0 sunt semnalele de selectare care vor valida conexiunile facute automat de circuitul multiplexor MUX 4:1, conform tabelului alaturat. Intrarile LIN (deplasare stanga, left IN) si RIN ( deplasare dreapta, right IN) sunt folosite pentru incarcarea serie a cate unui bit, la fiecare ceas. Pentru iesirea paralela, cuvantul cu lungimea de n biti continut in registru poate fi accesat permanent (daca iesirea nu este de tip TSL), dar la iesirea serie se obtine cate un bit la fiecare tact de ceas, deci sunt necesare n impulsuri de ceas. 241

Combinand cele patru operatii : - intrare seriala, - intrare paralela, - iesire paralela, - iesire seriala, apare posibilitatea utilizarii registrului ca suport pentru urmatoarele patru operatii de conversie/transfer: paralel-paralel, serie-serie, paralel-serie, serie-paralel. Conversiile serie-paralel si paralel-serie sunt operatii fundamentale in implementarea transmisiilor la distanta, pe un singur fir, iar la receptie, printr-o conversie serie-paralel, sunt deserializate. Prezentam inca un exemplu de registru combinat, serie paralel, figura F 5.4.6.

F 5.4.6. Registrul combinat serie-paralel, CI 7495. In functie de valoarea semnalului CM (control de mod) care comanda circuitele de multiplicare, putem avea un registru serie stanga-dreapta (CM = 0) care functioneaza cu tactul Ts-negat, sau intr-un registru paralel (CM = 1), care functioneaza cu tactul Tp-negat.

242

Registru universal. Un registru universal cumuleaza functiile tuturor registrelor prezentate pana acum. Astfel, acest registru poate sa execute deplasarea de la dreapta la stanga si invers a continutului sau, sa se incarce paralel si sa poata fi citit paralel. Poate avea posibilitatea de stergere a informatiei (CLEAR). In figura F 5.4.7. este aratata schema unui registru universal realizat cu celule bistabile tip D sincrone active pe front si cu ajutorul unor multiplexoare.

F 5.4.7. Registrul universal. Prin comutarea efectuata de circuitelor multiplexoare, comandate de liniile de selectie A0 si A1; astfel, daca A0 = 0 si A1 = 1, iesirea Y va conecta linia de impulsuri Ts cu intrarea de clock a celulelor bistabile, asigurandu-se functionarea in regim de registru de deplasare. Daca se selecteaza intrarea 3 a multiplexorului, conectata la iesirea Y, linia de impulsuri de tact Tp devine activa, dar in acelasi timp, devin active si intrarile paralele, asigurandu-se functionarea ca registru paralel. De asemenea exista si posibilitatea de a executa deplasari ale continutului registrului catre stanga sau dreapta, pe linia de impulsuri Ts, intrarile 1 si 2 ale circuitelor multiplexoare.

243

4.

Memoriile FIFO, LIFO.

Registrele paralele (numite si registre de memorie) sunt utilizate pentru memorarea unor cuvinte de cod si se realizeaza cu celule binare de tip D. Se poate realiza un circuit din k registre serie, fiecare cu lungimea de n biti, cu deplasare stanga-dreapta (reversibil), iar deplasarile (numar de pozitii si sens) se fac sincron in toate aceste registre. Intr-un astfel de circuit pot fi stocate n cuvinte, fiecare cu lungimea de k biti, deci poate fi privit ca o memorie de capacitate n x k biti. Se pot realiza, pe aceasta structurare, doua tipuri speciale de memorie: FIFO si LIFO. A. Memoria FIFO (First-In-First-Out).

Caracteristica de baza a memoriei FIFO este faptul ca primul cuvant inscris va fi si primul cuvant citit; memoria se poate realiza cu ajutorul unor registre de deplasare stangadreapta. Numarul registrelor va fi determinat de lungimea cuvantului care urmeaza a fi memorat (pentru 16 sau 32 de biti vor exista 16 sau 32 de registre). In figura de mai jos, F 5.4.8, cuvantul are 4 biti (x1,x4), care intra in 4 registre de deplasare (RD1,..RD4), fiecare bit intrand in registrul sau corespunzator, deci o pozitionare pe verticala, totul fiind comandat de impulsurile de tact Ts-negat. Urmatorul cuvant va produce deplasarea (avansarea) spre dreapta a primului si se continua astfel pana cand primul cuvant va ajunge in pozitia ultima, QD iesire, notata cu Y1 Y4.

F 5.4.8.

Memoria FIFO

Astfel primul cuvant intrat va fi si primul cuvant care va fi prezent la iesire. Capacitatea memoriei va fi dictata de lungimea (numarul de celule bistabile) registrelor. 244

B.

Memoria LIFO (Last-In-First-Out).

Memoria LIFO este de fapt o memorie stiva. Aceasta se caracterizeaza prin faptul ca ultimul cuvant inscris va fi primul citit. O asemenea memorie poate fi realizata cu ajutorul unor registre serie-paralel (registre universale). Pentru inscriere se procedeaza ca si la memoria FIFO (deplasare stanga), dar de data aceasta citirea nu se mai face pe celulele de iesire ci pe celulele bistabile de intrare, la care de fapt s-a introdus cuvantul. Pentru citirea cuvintelor inscrise in memoria LIFO comanda de citire produce o deplasare dreapta, deci la celulele bistabil de intrare se obtine ultimul cuvant introdus (ultimul inscris, primul citit). In figura F 5.4.9 se prezinta schema de principiu a memoriei tip LIFO.

F 5.4.9. Schema de principiu a memoriei stiva tip LIFO. Avem patru registre cu lungimea de patru biti, cuvantul de intrare fiind de patru biti, exact ca numarul de registre. Functionarea memoriei este explicata prin tabelul de mai jos.

inscriere

inscriere

inscriere

citire 245

Cuvantul x1, x2, x3, x4 se aplica pe intrarile serie ale registrilor RU1 RU4. La aparitia primului impuls de tact, acest cuvant este memorat. Urmatorul cuvant y1 y4 va intra in registru, la urmatorul impils de tact, primul cuvant avansand ca pozitie; la fel se deruleaza faptele si privitor la cuvantul al treilea z1 z4, la cea de-a treia comanda de inscriere (A1 = 0, A0 = 1, deplasare dreapta). Deoarece fiecare intrare este prezenta si la iesire (Q1) al fiecarui registru, la aparitia comenzii de citire (A1 = 1, A0 = 1, deplasare stanga), ultimul cuvant introdus este extras (citit) si celelalte cuvinte coboara cu o pozitie, asa cum se arata in tabelul de functionare. Memoria stiva poate fi organizata si prin soft intr-o zona a memoriei RAM a sistemului. In acest caz, adresa bazei stivei este aleasa de programator, iar adresa varfului curent al stivei este memorata in permanenta intr-un registru indicator de stiva, acesta crescand sau descrescand conform actiunilor de introducere/extragere a datelor in/din stiva. Memoria stiva este folosita practic in toate computerele si dispozitivele numerice cu un grad de complexitate suficient de mare, singurul dezavantaj fiind timpul de acces marit, fata de memoria realizata cu registre universale.

Convertor paralel serie. Deseori este nevioe sa se transforme unele cuvinte de cod paralel (cu acces simultan la toate simbolurile cuvantului) in cuvinte de cod serie (cu aparitia consecutiva a simbolurilor cuvantului de cod). O astfel de conversiune poate fi realizata cu ajutorul unui convertor de cod, un registru combinat, asa cum se arata in figura F 5.4.10. In figura F 5.4.10. c) se arata diagramele de functionare.

246

F 5.4.11. Convertor paralel-serie: a) schema circuitului, b) tabela de functionare, c) diagrame de functionare. Cuvantul care trebuie convertit (x1.x4) se aplica pe intrarile paralele (Ai.Di) ale registrului RC. Daca CM = 1 (modul de comanda), la primul impuls Tp-negat acest cuvant de intrare este memorat (inscris in registru); CM devine 0-logic si registrul va functiona in regim de registru serie (de deplasare), cu deplasare stanga-dreapta, astfel, conform comenzilor date de intrarea de tact Ts-negat, va avea loc evacuarea cuvantului de cod pe iesirea serie, in ordinea x4 x1.

247

Convertor serie paralel. Acest tip de convertor transforma succesiunea serie de simboluri (cuvant de cod serie) intr-un cuvant de cod paralel, folosind un registru de deplasare si a unui registru paralel, asa cum se arata in figura F 5.4.12.

F 5.4.12 Covertor serie-paralel: a) schema circuitului, b) tabela de functionare, c) diagrama de functionare. Cuvantul se aplica pe intrarea seriala IS, in ritmul impulsurilor Ts-negat. Cand registrul s-a umplut, apare comanda de transfer a cuvantului receptionat intr-un registru de deplasare, pe iesirile caruia va aparea cuvantul paralel. Momentul aparitiei comenzii de transfer dintre registre trebuie fixat cu multa atentie, pentru a fi evitate posibile erori. Convertoarele paralel-serie si serie-paralel sunt componente de baza ale sistemelor de transmisie de date.

248

Chestionar.

1. Care este functia de baza a unui registru si din ce este constituit? 2. Cum se clasifica registrele in functie de modul de inscriere / citire? 3. Explicati functionarea registrului paralel din figura F 5.4.1. 4. Explicati functionarea registrului serial (de deplasare) stanga-dreapta, figura F 5.4.2. 5. Ce schimbari trebuie facute pentru a transforma registrul de deplasare stanga -dreapta in registru de deplasare dreapta-stanga? 6. Cum se obtine un registru inel si care este functia sa de baza? 7. Prin ce se caracterizeaza un registru (numarator) Johnson cu n celule? 8. Explicati functionarea registrului serie-paralel, figura F 5.4.5. 9. Cum se defineste un registru universal? 10. Care este caracteristica de baza a memoriei FIFO? 11. Cum se defineste, cum functioneaza si unde este folosita memoria LIFO?

249

250

Tema 5.5 1. Memoria cu acces aleatoriu (RAM) 2. Memoria RAM statica, SRAM. 3. Memoria RAM dinamica, DRAM. 1. Memoria cu acces aleatoriu, RAM. Circuitul RAM (Random-Access-Memory, memorie cu acces aleatoriu), ca si circuitul ROM, este un suport pentru stocarea informatiei sub forma de cuvinte binare. Spre deosebire de ROM (Read-Only-Memory, memorie numai pentru citit), pe langa posibilitatea de citire a informatiei, exista si facilitatea de modificare a informatiei, adica de inscriere. Termenul de memorie RAM exprima faptul ca accesul la orice locatie (adresa de continut) se poate face fara nici o restrictie (random = aleatoriu) de timp, indiferent care este adresa locatiei accesate, posibilitate care este evidenta si la memoria ROM, cu deosebirea ca exista si posibilitatea de a inscrie la acea adresa un alt continut. Primele memorii cu citire si inscriere aveau accesul serial, adica accesul la o locatie nu putea fi realizat decat numai dupa parcurgerea tuturor adreselor locatiilor anterioare. Exemplu de acest tip de memorie: banda magnetica, unde accesul la o anumita informatie (date, sunet, imagine) se face prin derularea benzii pana la pozitia respectiva. Un alt exempu de memorie seriala este registrul inel, la care inscrierea sau citirea unui bit se face prin recircularea cuvantului in inel pana cand pozitia din cuvantul respectiv ajunge sa fie transferata din ultima celula in prima celula. Aparitia memoriei RAM a constituit un mare avantaj pentru dispozitivele digitale prin posibilitatea accesarii oricand a oricarei adrese, nu numai din punct de vedere al simplitatii functionarii acesteia, dar si al vitezei de acces (timpul necesar pentru extragere/inscriere de date), in raport cu memoriile seriale. Spre deosebire de circuitul ROM, memoria RAM este de tip volatil, adica la pierderea tensiunii de alimentare, informatia stocata se sterge, se volatilizeaza, datorita faptului ca stocarea unui bit are ca suport fizic o stare a unui circuit, stare care dispare la nealimentarea circuitului, deci nu prezenta sau absenta unui unui element fizic (fuzibil, dioda, tranzistor) asa cum apare la memoria de tip ROM. Am vazut ca mai multe registre de memorie pot constitui asa zisa memorie stiva cu modul de functionare descris, corespunzator tipului respectiv. Pentru un volum de date mai redus, o anumita configuratie de astfel de registri poate fi o solutie. Problemele apar atunci cand este necesar a fi tratata o mare cantitate de informatii. O colectie de registre ca suport pentru un volum extins de cuvinte are urmatoarele dezavantaje: pret de cost ridicat, acces doar pe cuvant si decodificator (de adrese) complex. Pentru un volum mare de informatii solutia eficienta este o memorie realizata ca o colectie de celule de memorare, fiecare celula avand posibilitatea de selectare pentru stergere, inscriere, citire a unui bit. Cand numarul de celule este mare, circuitul de selectare a adreselor si a operatiilor ce se vor desfasura (scriere, citire, stergere) este foarte complex. Aceasta complexitate se poate reduce printr-o structurare a multimii celulelor intr-o retea matriceala cu o selectare bidimensionala, pe linii si pe coloane. 251

Pentru aceasta structurare adresa de n biti este divizata in doua grupe de biti, una care se aplica decodificatorului liniilor matricei iar cealalta grupa multiplexoarelor pentru coloane. Din punct de vedere tehnologic este recomandat ca matricea de celule sa fie patrata. Reamintim ca pentru n biti avem 2n configuratii logice. O matrice patrata va avea nevoie de n/2 biti pentru pozitionarea pe orizontala (linii) si n/2 biti pentru pozitionarea pe verticala (coloane). Astfel, pentru selectarea unei linii, si a unei coloane avem matricea: 2n/2 x 2n/2 . La intersectia liniei activate cu a coloanei selectate se afla celula asupra careia se poate realiza o operatie de inscriere sau citire. Deoarece o celula poate primi date, prin inscriere si poate genera date prin citire, circuitul de selectare pe orizontala trebuie sa permita transferul bidirectional al datelor. In figura F 5.5.1 este prezentata schema de principiu de organizare a unei memorii RAM, care are pe orizontala: 512 linii = 64 x 4 x 2 = 26 x 22 x 21 = 29 .

Vor fi necesare 9 linii de adresa pentru selectare orizontala: A6,......A13, A14. Pe verticala, sunt constituite 8 blocuri de cate 64 de coloane care vor fi selectate de un circuit multiplexor MUX 64 : 1 (din cele 64 de coloane, va fi selectata doar una singura, la un moment dat), deci 8 circuite multiplexoare, corespunzatoare celor 8 biti, un octet, adica un cuvant de un octet care va putea fi citit, sters sau inscris in acelasi timp. Pe verticala avem: 64 coloane = 26 , deci sunt necesare 6 linii de adresa: A0, A1,.....A5, care vor decodifica toate cele 64 de coloane. Memoria are o capacitate de 32 kbiti, sau de 4 kocteti (32 / 8), unitatea de informatie cu care lucreaza (cuvantul) fiind de un octet. Sa reamintim ca: 1 Kilobit (Kb) = 210 biti, 1 Kilobyte (KB, Kilooctet) = 210 octeti, 1KB = 8 Kb.

Sa observam ca in acest caz nu este vorba de o impartire cu 2 a numarului de biti pe care ii contine cuvantul, adica octetul (8 : 2 = 4). Este vorba de folosirea unor circuite deja realizate cu astfel de parametri (512 x 64). Circuitul notat MDX este un circuit multiplexor-demultiplexor care poate sa distribuie date, dar si sa selecteze date (F 5.5.1 b) Mai precis, este vorba de selectarea coloanelor respective, dar si de asigurarea posibilitatii de trecere a informatiei intr-un sens sau altul, in functie de felul operatiei stabilite. La terminalele decodificatorului propriu-zis este adaugata o retea de tranzistoare care au portile conectate la iesirile decodificatorului (F 5.5.1). Cand o astfel de iesire este 1 logic, tranzistorul respectiv (MOS-FET cu canal n indus) intra in saturatie, capata o rezistenta foarte mica, practic zero, astfel coloana respectiva poate transfera date memorie-iesire (citire) sau iesire-memorie (scriere). Cand se aplica data pe liniile de adresa, decodificarea acestora precizeaza fiecare pozitie a bitilor care compun cuvantul respectiv.

252

F 5.5.1. Memoria RAM: a) organizarea cu adresa bidirectionala, b) structura circuitului demultiplexor-multiplexor MDX, c) organizarea sub forma de matrice patratica a unei capacitati de 32K x 8 biti. Se cuvine mentionat ca si adresele si data de inscris sau citit sunt informatii. Trebuie facuta distinctia intre adrese, notate in general cu A0........Ak si informatiile propriu-zise, notate in general cu D0........D7 (sau D15, D31....etc in functie de lungimea cuvantului). Adresele descriu locatia din memorie unde se afla continutul informatiei. Liniile de adrese compun magistrala de adrese, liniile datacompun magistrala de date, chiar daca uneori si datele si adresele sunt vehiculate pe magistrala de date. Mai trebuie precizat ca exista si o magistrala a (semnalelor de control) comenzilor si a indicatorilor de stare, fara de care operatiunile legate de prelucrarea informatiei nu se pot desfasura. Semnalele de control pentru memoria RAM sunt: ___ CS - Chip Select, selectare circuit, ___ OE - Output Enable, validarea iesirii (citire), 253

___ WE - Write Enable, validare inscriere, ______ I / OE - Input/Output-Enable, validare a bufferelor TSL de iesire/intrare. Aceste semnale se obtin din circuite care urmaresc dezvoltarea logica a prelucrarii informatiei . In figura F 5.5.2 a) este prezentata structura de principiu pentru o celula de memorie RAM, iar b), schema de principiu a circuitelor de citire/scriere.

F 5.5.2. Structura de principiu: a) celula de memorie RAM, b) circuite de citire/scriere. Celula de memorie RAM este constituita dintr-un circuit latch, format din doua inversoare, care pot memora informatia de pe coloana C1 (coloana de scriere), daca linia de adrese respectiva este validata (1-logic) si cele doua tranzistoare T1 si T2 sunt deschise (saturate). Cand linia de adrese este validata este posibila si citirea informatiei, dar cele doua comenzi (scriere si citire) nu pot fi validate concomitent. Acest lucru este evidentiat de figura b), in care apar comenzile WE-negat (validare scriere - Write Enable) si OE-negat (validare iesire, citire Output Enable), care selecteaza intrarea si iesirea datelor, amplificandu-le corespunzator.

254

2. Memoria RAM statica, SRAM. Celula de memorie RAM poate fi cu o functionare statica sau dinamica. Celula statica este de fapt o celula bistabila care prin cele doua stari ale sale poate stoca bitul 1 sau 0. Aceasta celula poate fi un latch sau un bistabil. Se prefera celula pe baza de latch pentru ca necesita mai putine componente decat un bistabil, deci se pot realiza memorii de capacitate mai ridicata. Dar utilizarea unui latch (figura F 5.5.2 a) are dezavantajele de transparenta (ce este la intrare este si la iesire) si de functionare asincrona (semnalele de control nu sunt raportate la aparitia semnalului de ceas). Prezentam schema de principiu a unei celule a memoriei SRAM in figura F 5.5.3.

F 5.5.3. Celula memoriei SRAM: a) schema de principiu, b) celula SRAM in tehnologie NMOS, c) celula SRAM cu tranzistoare CMOS. Celula statica de memorie din nodul matricei de la intersectia liniei Li cu coloana Cj este realizata printr-un latch format din doua inversoare, asa cum am descris deja celula RAM, in locul celor doua tranzistoare aparand figurate doua intrerupatoare T3 si T4. Cand linia Li este activata, prin cele doua intrerupatoare se conecteaza iesirile celor doua inversoare la cele doua coloane corezpunzatoare nodului de matrice ij. Se considera ca pe coloana din stanga se aplica data de intrare Dj care se inscrie in latch, Q = Dj (coloana pentru scriere-intrare), Q-negat = Do-negat (coloana de citire-output), iar pe coloana din dreapta se citeste data inscrisa in latch. In varianta b), inversoarele sunt realizate cu tranzistoare MOS-FET-canal n indus, respectandu-se cele stabilite pentru schema de principiu a celulei SRAM: inversoarele sunt chiar T1 si T2, intrerupatoarele sunt T3 si T4, tranzistoarele T5 si T6 avand rol de rezistenta montata in drena inversoarelor. Inscrierea sau citirea celulei ij se face prin doua bare de coloana notate Cj1 si Cj0. Aceste doua bare de coloana nu sunt utilizate intr-un mod diferential ci intr-o functionare simetrica pentru ca sa obtina o siguranta a operatiilor de citire / inscriere in conditii de variatie a parametrilor se de regimuri de functionare. Fata de schema anterioara, unde o bara era utilizata numai pentru inscriere si cealalta numai pentru citire, aici cele doua bare sunt utilizate simultan. 255

Cand o bara este utilizata intr-o comanda, cealalta este fixata la un potential de aproximativ +3V intermediar intre nivelul High (+5V) si Low (0V). Pentru inscrierea bitului 1 in celula, bara Cj0 este fortata la nivel Low, iar bara Cj1 la un nivel High, ceea ce duce la conductia lui T2 (prin T3 si T4 aflati in conductie) iar T1 sa fie blocat (astfel Q = 1, Q-negat = 0). Inscrierea lui bitului 0 fixeaza un nivel H pe bara Cj0 si forteaza un nivel L pe bara Cj1, ceea ce determina starea logica zero: Q = 0, Q-negat = 1. Pentru citirea celulei ij, se activeaza linia Li, de asemenea, iar pe cele doua bare ale coloanei se aplica un nivel H; daca in celula este inscris bitul 1, atunci prin tranzistorul T2 care este in conductie, bara Cj0 este conectata la masa, potentialul ei scade fata de valoarea de 3V, deci diferenta de potential intre barele Cj1 si Cj0 este pozitiva. Invers, daca este inscris bitul zero, atunci prin tranzistorul T1, bara Cj1 este legata la masa, potentialul ei scade, deci diferenta de potential intre barele Cj1 si Cj0 este negativa. Cate un amplificator diferential de detectare (sense amplifier) atasat fiecarei coloane sesizeaza semnul diferentei, deci poate genera nivelul logic al bitului continut in celula. Celula statica de memorare dintr-un nod al matricei poate fi formata din 6 sau 4 tranzistoare, fiind incluse si cele doua tranzistoare de trecere prin care se conecteaza celula la linia de bit. De aici denumirea de celula 6T SRAM sau 4T SRAM. Actualmente, majoritatea implementarilor VLSI (Very Large Scale Integration) de memorii SRAM se bazeaza pe o celula 6T CMOS datorita urmatoarelor avantaje: 1 - putere redusa (puterea disipata in regim stationar este practic nula) 2 - imunitate ridicata la zgomot, avand margine de zgomot de valoare mare, 3 - posibilitatea de functionare intr-o larga plaje de tensiuni de alimentare. Dezavantajele memoriei CMOS SRAM sunt: 1 - consum mai ridicat de suprafata pe aria cristalului de Si, 2 - proces tehnologic mai complex, 3 - tendinta de aparitie a fenomenului de zavorare (aparitia in interiorul plachetei de structuri semiconductoare de tip tiristor). Prin tehnologiile actuale, cu straturi multiple de siliciu si metal se reduce dezavantajul consumului de suprafata al cristalului. Implementarile de putere si tensiune redusa utilizeaza o celula 6T CMOS, de aceea vom analiza functionarea memoriei cu astfel de celula, prezentata in figura F 5.5.4. O celula 6T este la intersectia liniei de cuvant j (activata de iesirea j a decodificatorului de linii) cu coloana de bit I (compusa de cele doua coloane de bit C1 si C2), care este selectata prin cuvantul An-1.A0, aplicat grupului MUX / DMUX. Daca presupunem ca este deja inscrisa valoarea 0 logic, asta inseamna ca V1 = 0, aceasta implicand tranzistorul T1 ON, T5 OFF , pe de alta parte, V2 = Vdd = 1 logic, aceasta implicand T2 OFF, T6 ON. Cand linia j este selectata, T3 si T4 se deschid si barele C1 = 0, C2 = 1, acestea fiind coloanele de bit i. Daca am presupune ca celula de memorie are inscrisa valoarea 1 logic, avem inversarea situatiei de mai sus: T1 OFF, T5 ON, T2 ON, T6 OFF. 256

F 5.5.4. Memoria CMOS-RAM statica: a) structurarea unei coloane dintr-o matrice RAM, b) tabelul de adevar pentru generarea semnalelor de comanda.

257

Citirea unei celule SRAM. Fie ca este 0 sau 1 continutul celulei de memorie, intre barele C1 si C2 aferente bitului oarecare i, exista diferenta de potential de valoare apropiata tensiunii de alimentare Vdd. Aceasta diferanta este trimisa de amplificatorul de sens format cu T9, T10 (structura de latch), validat sa functioneze de T11 prin semnalul de selectare a coloanei bitului i. Prin tranzistoarele de trecere T15, T16, care devin saturate in momentul aparitiei comenzii de citire, cele doua semnale ajung la amplificatorul de sens (T16, T17, T18, T19), care este validat (adica poate functiona) de comanda de citire aplicata pe poarta lui T20. Amplificatorul de sens va genera prin driverul de iesire TSL un semnal 0-logic pentru V < 0 si un semnal 1-logic pentru V > 0 Iesirea acestui amplificator trece prin bufferul de iesire, validat de semnalul I/OE-negat, astfel ca linia de date Di va avea valoarea bitului citit din memorie, fiind prezent pe magistrala de date, alaturi de ceilalti biti care formeaza cuvantul intreg, unitatea de informatie pe care o prelucreaza dispozitivul numeric. Pentru operatia de scriere vom privi, in continuare, figura F 5.5.4, in care distingem circuitele de inscriere care preiau informatia de pe linile de date si o valideaza prin comanda WR-L (valoarea negata este activa). Daca valoarea care trebuie inscrisa este Di = 1, aceasta valoare trece de bufferul neinversor si intra in circuitul NOR, iesirea acestuia devenind 0 logic, implicit poarta NOR urmatoare va avea iesirea 1 logic. Mai departe, T12 este blocat prin comanda WC1, bara C1 avand potentialul apropiat de tensiunea de alimentare, deoarece T7, T8 sunt ON prin comanda de preincarcare PC, care egalizeaza potentialele pe cele doua bare intre doua citiri sau scrieri, incarcand cele doua condensatoare de egalizare Ce1 si Ce2. In cazul in care se citeste o celula de pe o coloana inscrisa cu 0-logic (V < 0), iar citirea urmatoare este de la o celula de pe aceeasi coloana, care are inscrisa valoarea 1-logic (V > 0), pentru a citi rapid si corect, trebuie incarcate condensatoarele Ce1 si Ce2, adica C1 si C2 trebuie aduse la acelasi potential, in intervalul dintre cele doua citiri. De aceea este introdusa comanda de preincarcare - PC, de aducere a coloanelor de bit C1 si C2 la acelasi potential. Valoarea 1 logic pe bara C1 inseamna V1 = Vdd, apoi T2 ON si T6 OFF si T1 OFF, T5 ON, deci celula va memora valoarea 1 logic. Reamintim ca prin selectarea coloanei bitului i, T3 si T4 sunt ON. Iesirea circuitului NOR WC2 fiind 1 logic, tranzistorul T13 este ON si cand coloana de bit i este selectata, T21 este ON, astfel bara C2 fiind pusa la potentialul masei. Se observa ca operatiile de inscriere si citire din memoria SRAM sunt asincrone, aparitia lor nefiind determinata de un semnal de ceas, lucru de care trebuie tinut cont atunci cand sunt folosite aceste memorii in dispozitive numerice, care folosesc si circuite comandate prin ceas (sincrone), pentru a se evita aparitia unor neconcordante logice.

258

3. Memoria RAM dinamica, DRAM. Aceeasi structura matriceala a memoriei SRAM este pastrata si la memoria DRAM. Memoria dinamica DRAM (Dynamic RAM) s-a impus pentru capacitati de stocare mari (chiar de ordinul Gb), desi fata de memoria statica prezinta circuitele de control suplimentare. Celula DRAM folosita in general este celula cu un singur tranzistor, notata prin 1T- DRAM. De fapt, celula de memorie este o capacitate minuscula (10 30 femtoFarad, 1 femtoF = 10-15 F), integrata in circuitul respectiv si care este conectata la o coloana de bit printr-un tranzistor, cum era T3 sau T4 la memoria SRAM, astfel ca cele doua coloane existente la amintita memorie devin una singura. Tocmai aceasta simplitate duce la o mare densitate de integrare si la un consum redus de putere, memoriile DRAM fiind cele mai folosite in cadrul memoriilor RAM de mare capacitate. Sarcina existenta pe capacitatea integrata in nod, care corespunde valorii 1-logic, se diminueaza in timp datorita curentilor de scurgere, necesitand regenerarea continua a acesteia la intervale de 2 4 ms. Capacitatea echivalenta (Ce) a coloanei unui bit este de 10 - 20 de ori mai mare decat capacitatea integrata Cp (purtatoare de informatie), ceea ce face ca citirea informatiei sa se faca prin amplificatoare de sens In figura F 5.5.5 este aratata o celula de memorie DRAM si condensatorul integrat Cp.

F 5.5.5. Memoria dinamica DRAM: a) structura unei celule dinamice, b) variatia de semnale pe linie si coloana. 259

Selectarea celulei din nodul ij se face activand linia Li (care comanda intrarea in conductie a tranzistorului de trecere Tij) la coloana Cj. Deoarece Tij este ON, condensatorul Cp se conecteaza la coloana Cj, in paralel cu capacitatea echivalenta Cej, rezultand o tensiune care depinde de tensiunea avuta de condensatorul Cp inainte de conectare. Aceasta tensiune este detectata de un amplificator de sens (exista unul pentru fiecare coloana), stabilind valoarea informatiei care va fi emisa pe liniile DATA (Dj). Operatia de scriere in celula jk se realizeaza in felul urmator: 1 - se selecteaza celula prin activarea liniei Lj, 2 - pe intrarea de date se aplica valoarea Din a bitului ce trebuie inscris, 3 - semnalul R / W =1 dezactiveaza bufferul de iesire TSL, activeaza bufferul de intrare, iar condensatorul Cp se incarca cu o sarcina proportionala cu nivelul de tensiune al bitului aplicat pe intrare, 4 - se blocheaza tranzistorul Tjk, prin dezactivarea liniei Lj, deci condensatorul ramane incarcat cu o sarcina corespunzatoare bitului Din. Operatia de citire necesita urmatoarea succesiune: 1 - se selecteaza celula jk, 2 - semnalul R / W = 0 dezactiveaza bufferul de intrare si activeaza bufferul de iesire (amplificatorul de sens), 3 - Valoarea bitului inscris in celula este generata ca data de iesire Dout de catre amplificatorul de sens, __ 4 - se dezactiveaza Lj si R / W. Fiecare operatiune (scriere, citire, regenerare) este privita ca un ciclu de memorie, numite ciclu de scriere, ciclu de citire, pentru fiecare ciclu existand o analiza precisa a timpilor necesari pentru desfasurarea lui (exista si ciclul de regenerare). Durata unui ciclu de memorie este un parametru important al circuitului de memorie, alaturi de capacitatea memoriei si consumul de putere. Celulele de memorie dinamica au ca suport fizic starea de functionare a unui tranzistor MOS care poate fi comandat de sarcina stocata pe capacitatea de intrare (poarta-sursa), aceasta determinand un potential de comanda ce trebuie pastrat constant. Deoarece aceasta sarcina se descarca in timp prin curenti de scurgere este necesar sa fie reincarcata ( refresh) cel putin o data la 2ms, adica un acces la fiecare celula si reimprospatata informatia. Operatia de regenerare a sarcinii este o operatie de citire a celulei cu reinscriere in celula a aceluiasi bit, dar cu nivelul logic refacut, operatie la care participa si semnalul regenerare, in felul urmator: 1 - se selecteaza celula jk, 2 - semnalul R / W = 0 activeaza amplificatorul de sens, deci nivelul de tensiune corespunzator bitului inscris in celula se aplica la intrarea bufferului de regenerare, 3 - prin activarea semnalului Regenerare, bufferul de regenerare reface nivelul de semnal care se aplica pe condensatorul celulei __ 4 - se dezactiveaza semnalele Lj, R / W si Regenerare. 260

La activarea liniei Lj sunt selectate toate celulele de pe aceasta linie, dar alegerea celulei jk se face numai printr-o comanda de selecte pe coloana k. Selectarea simultana a tuturor celulelor de pe o linie este utilizata pentru operatia de regenerare, aplicand semnalul Regenerare tuturor celulelor de pe o linie, toate acestea sunt reimprospatate in acelasi timp.

F 5.5.6. Circuitul de memorie DRAM de 64 Kb (256x256 = 216 = 26Kb). 261

In figura F 5.5.6 a) este aratat o structurare de principiu pentru memoria de 64 Kb, succesiunea aplicarii cuvantului de adresa, a datelor de iesire / intrare si a semnalelor de control in efectuarea operatiilor de citire / regenerare (b) si de inscriere (c). Operatia de selectare se face pe cele doua directii: pe linie printr-un decodificator si pe coloana printr-un DMUX care va activa o anume coloana de bit. Aceasta succesiune in selectarea unei celule face posibila divizarea cuvantului de adresa in doua subcuvinte, unul pentru decodificator (continand bitii superiori) si al doilea pentru DMUX (continand bitii inferiori); astfel, intai se aplica pe magistrala de adresa jumatatea superioara a cuvantului de adresa si acesta este strobat, cu semnalul de strob RAS-negat (Row Address Strobe), dupa care pe magistrala se aplica jumatatea inferioara a cuvantului de adresa, strobat cu semnalul CAS-negat (Column Address Strobe). Intelegem prin strobare testarea valorilor logice ale unui dispozitiv intr-un anumit moment, printr-un impuls (numit impuls de strobe, pe scurt strobe), aceasta ducand la evitarea unor erori in stabilirea valorilor logice datorita unor eventuale perturbatii generate de cauze diverse. Activarea liniilor pentru regenerarea informatiei inscrise in celule se poate realiza prin intretesere sau in rafala; regenerarea intretesuta se face prin introducerea de operatii de improspatare, cand exista intervale disponibile, printre operatiile de scriere si citire; regenerarea in rafala realizeaza reimprospatarea tuturor liniilor, una dupa alta, dupa care memoria este disponibila pentru alte operatii. Exista mai multe variante de adresare, care permit o crestere a timpului de lucru cu memoria, aceste variante bazandu-se pe eliminarea timpului de acces la o celula prin adresa de linie (acest timp are ponderea cea mai mare in timpul de ciclu al memoriei); acest lucru poate fi realizat prin activarea unei linii si culegerea tuturor informatiilor de pe linia respectiva, evitandu-se un nou acces la linie. Prin achimbarea adreselor de coloana se poate avea acces la orice locatie a liniei respective (se numeste pagina de memorie). Pentru o memorie dinamica, principalii parametri din catalog sunt: - intervalul de timp minim de la frontul de activare a semnalului RAS-L pana in momentul cand datele sunt valide la iesirea bufferului TSL. Viteza unui cip de memorie este specificata prin aceasta valoare de acces. - intervalul de timp minim din momentul pornitii accesarii unei linii de cuvant pana in momentul accesarii liniei de cuvant urmatoare, adica distanta minima intre doua activari ale semnalului RAS-L (este un timp de ciclu). - intervalul de timp minim din momentul activarii semnalului de strob CAS-L pana la obtinerea datelor valide la iesirea bufferului TSL. - PC - intervalul de timp minim din momentul pornitii accesarii unei coloane pana in momentul accesarii coloanei urmatoare (este un timp de ciclu). Se defineste ca timp de ciclu intervalul de timp minim dintre doua operatii (citire, scriere) consecutive, sau altfel spus, la ce distanta in timp, de la inceperea unei operatii, se poate incepe o alta operatie. Pentru memoriile DRAM timpul de ciclu este 110 150 ns, iar aceasta valoare este cam de 5 10 ori mai mare decat timpul de ciclu al memoriilor SRAM. 262

- RAS

- RC

- CAS

Urmatoarele valori reflecta dinamica memoriilor de tip DRAM: crestere de capacitate de 60% pe an, scadere de cost de 30% pe an, cresterea continua a densitatii de integrare.... Memoria este o componenta foarte importanta in sistemele de calcul, unde se impune un volum mare de schimb de date in unitatea de timp. Acest lucru impune timpi de acces la date cat mai mic si folosirea unor cuvinte care contin cati mai multi biti. Exista diferite modalitati prin care se obtine o latenta (intarziere) micsorata pentru memorie: accesarea tip pagina si iesirea extinsa de date, EDO (Extended Data Out). Modul de accesare tip pagina, prin adresa de linie, activeaza o intreaga pagina / linie de cuvant (poate sa fie pana la 8096 biti) si apoi prin schimbarea numai a adresei de coloana, conjugata cu activarea semnalului CAS, poate accesa oricare celula cuprinsa in acea linie. trecerea la o alta pagina impune aplicarea noii adrese de linie si reactivarea semnalului RAS. Modul de accesare tip EDO este de fapt tot o adresare de tip pagina, numai ca se extinde timpul cat datele sunt valide pe iesire. Se exclude activarea succesiva a semnalului CAS pentru fiecare citire. Din prezentarile anterioare rezulta ca atat memoria statica cat si memoria dinamica au o functionare de tip asincron. In modul sincron, functionarea interna a circuitului de memorie ramane aceiasi, dar semnalele ed conectare cu exteriorul (adrese , date, semnale control) sunt citite/esantionate pe frontul pozitiv al semnalului de ceas. Memoriile SRAM, DRAM inzestrate cu interfete de sincronizare sunt cunoscute ca memorii de tipul SSRAM si SDRAM.

263

Chestionar.

1. Ce diferenta exista intre memoria ROM si memoria RAM? 2. Ce semnifica faptul ca memoria RAM este de tip volatil? 3. Din ce se compun magistralele de adrese si magistralele de date? 4. Din ce este constituita celula de memorare RAM? 5. Explicati functionarea celulei statice de memorie SRAM, figura F 5.5.3. 6. Care sunt avantajele si dezavantajele celulei de memorie 6T - Cmos? 7. Explicati scrierea celulei de memorie DRAM, figura F 5.5.5. 8. Explicati citirea si regenerarea celulei celulei de memorie, figura F 5.5.5. 9. Care este semnificatia semnalelor RAS si CAS? 10. Definiti parametrii de catalog ai memoriei DRAM.

264

Tema 5.6. 1. Memoria DRAM sincrona, SDRAM. 2. Memoria adresabila prin continut, CAM. 3. Circuite actuale pentru memoriile de date. 1. Memoria DRAM sincrona, SDRAM. Integrarea unei memorii DRAM, a carei functionare de tip asincron este fixata prin fronturile HL si LH ale semnalelor de control RAS-negat si CAS-negat, intr-un sistem sincron necesita anumite circuite de interfata. In ultimii ani, aceste circuite au fost integrate pe acelasi cip cu memoria, numindu-se circuite IDRAM (Integrated DRAM), iar pentru exterior (pentru utilizator) apare ca un circuit cu functionare sincrona, pe baza unui semnal de ceas, circuitul fiind numit memorie dinamica Sincrona SDRAM. Pentru circuitele DRAM de capacitate mare, datorita dificultatilor de realizare a unei matrice patratica de dimensiune mare, matricea este segmentata in mai multe submatrice, denumite prin termenul de banca sau plan. Aceste banci functioneaza in paralel, dar independent una de alta. Selectarea acestor banci se va face prin 2 - 4 biti ai cuvantului de adresa, in functie de numarul real de banci existente. De exemplu, daca exista 4 banci ale memoriei, vor fi necesari 2 biti de adresa pentru al selecta pe fiecare (00 - B0, 01 B1, 10 B2, 11 B3), asa cum este aratat in figura F 5.6.1.

F 5.6.1 Memoria sincrona DRAM. 265

La nivel de celula de memorare, intr-o banca operatiile de citire, scriere, refresh se fac prin succesiunea semnalelor CAS, RAS si bitilor de intrare si iesire, la fel ca la memoria dinamica deja prezentata, diferenta apare in modul cum aceste semnale interne se obtin, prin circuitul de interfatare din semnalele externe aplicate la pinii circuitului de memorie sincrona, deoarece acest circuit are o functionare programata, care este sub controlul semnalului de ceas, CLK. Pe langa semnalul de ceas mai exista un semnal de validare a semnalului de ceas, CKE, care este activ in starea H. Operatiile de citire si inscriere sunt facute in continuu, adica pe fiecare front activ al ceasului se genereaza sau se inscrie cate un cuvant. Pe fiecare front pozitiv al semnalului de ceas (CLK), semnalele externe de control (CS-L, WE-L, RAS-L, CAS-L) sunt inregistrate in blocul de decodificare comenzi, cuvantul adresa A11 A10 si bitii de adresare a bancilor BA1 si BA0 sunt inscrisi in registrele de adrese, iar cuvantul de date DQ31 DQ0 este inscris in registrul de date de intrare DQI (inscriere) sau este generat la iesirea registrului de date de iesire DQ0 (citire). In afara de accesarea aleatorie a locatiilor de memorie exista si o accesare de tip rafala (burst) - accesarea porneste de la o adresa selectata continuand apoi, fara intrerupere (rafala), cu un numar precis de locatii, intr-o succesiune programata. Pentru circuitul SDRAM se obtine cu flux continuu de date de intrare (inscriere) sau de iesire (citire), cate un cuvant de date la fiecare impuls de ceas, indiferent daca accesarea coloanelor se face aleatoriu sau in mod rafala.

F 5.6.2. Modalitatea de programare, prin cuvantul inscris in registrul de mod, a tipurilor de rafale pentru operatiile de inscriere si de citire. 266

Pentru realizarea unei operatii de preincarcare, citire, inscriere sau refresh, comenzile necesare se obtin din valorile semnalelor aplicate din exterior, esantionate pe frontul pozitiv de ceas, interpretate impreuna sub forma unui cuvant de control. Pentru SDRAM exista un cuvant de control extern, format din bitii CS-L, WE-L, CAS-L, RAS-L, un cuvant de adresare format din bitii A11 A0 si BA1, BA0 si un cuvant de mascare format din bitii DQM3 DQM0. Operatiile de citire si inscriere sunt pipelinizate, adica pe fiecare front al impulsului de ceas se genereaza sau se inscrie cate un cuvant de 32 de biti, accesarea pornind de la o adresa selectata, continuand fara intrerupere (rafala) cu un numar prescris de locatii, intr-o succesiune programata. Programarea succesiunii, continuta in cuvantul de mod M10 M0, pentru modul de accesare de tip rafala se realizeaza in exterior si se inscrie, prin cuvantul de adresa A10 A0 in registrul de mod. Aceasta operare este programata prin aplicarea din exterior a cuvintelor de comanda. Continutul acestor cuvinte de comanda si succesiunea lor in timp, pentru realizarea unor operatii, se efectueaza in exterior de catre circuitul controller pentru SDRAM. Memoria RAM de capacitate mare este utilizata in primul rand in scopul de a stoca date pentru procesare (functie aritmetica) si nu atat pentru a implementa functii logice. In afara modului de lucru in rafala, exista si alte modalitati de crestere a debitului de date pentru lucrul cu memoria. Accesarea dubla pe perioada de ceas, DDR (Double Data Rate) este o modalitate de marire a debitului de date. La memoria SDRAM accesarea se realizeaza la un singur cuvant de date pe o perioada de ceas (pe frontul pozitiv). La memoriile de tip DDR-SDRAM, pe durata unei perioade de ceas sunt accesate doua cuvinte (pe magistrala) care pot fi trimise (inscrise) sau primite (citite), adica un cuvant pe frontul pozitiv si un cuvant pe frontul negativ al semnalului de ceas. De fapt, se transmit circuitului DDR-SDRAM doua semnale de ceas CLK si negatul acestuia CLK-negat. Astfel se obtin rate de transfer de zeci, sute de M-cuvinte/s.

267

2. Memoria adresabila prin continut, CAM. La toate tipurile de memorie prezentate pana acum procesul de obtinere/restabilire a unei informatii (cuvant) se realizeaza in felul urmator: prin cunoasterea unei adrese (deci se impune memorarea adresei) care se aplica memoriei, se extrage din locatia respectiva informatia cautata. Dar, se poate realiza acest proces si in sens invers, adica se cunoaste informatia (cuvant de date) si se determina adresa unde este stocat acest cuvant in memorie. Practic, acest proces invers se realizeaza in felul urmator: cuvantul data cunoscut Do,........,Dn-1 se compara, in paralel, cu cuvintele data din toate locatiile memoriei si se genereaza un semnal de gasire M (match) daca exista stocat acest cuvant si totodata se obtine si adresa (sau adresele) locatiei care contin acest cuvant, figura F 5.6.3. Deoarece la acest tip de memorare, explorarea se realizeaza prin continut si nu prin adresa, numirea sa se face prin sintagma memorie adresabila prin continut, CAM (Content Addresable Memory). Pentru structurarea de principiu a unei memorii CAM, se poate porni de la circuitul pentru generarea identitatii a doua cuvinte, realizat cu tranzistoare de trecere, F 5.6.3-d. Cate un astfel de circuit de generare a identitatii este realizat pentru toate celulele unei locatii a memoriei. Poarta XOR pentru celula I este realizata cu tranzistoarele de trecere T1 si T2, figura b). Cele doua valori xi si xi-negat se gasesc inscrise in celula i, ca iesiri ale celor doua inversoare CMOS, iar cele doua valori Di si Di-negat, ale bitului de rang I din cuvantul de comparat, D = {Dn-1,..Di,.D1, Do} se aplica din exteriorul memoriei, respectiv pe coloanele de bit C1 si C2 la celulele i de pe toate liniile de cuvant adresa. Circuitul NOR al generatorului de identitate, intre cuvantul D si cuvantul X (continut in memoria CAM) pe o linie de cuvant, este constituit din tranzistoarele T3, cate unul pentru fiecare celula de memorie, si care sunt comandate de catre iesirile portilor XOR. Memoria CMOS CAM poate fi utlizata pentru inscriere si citire; inscrierea este necesara pentru a stoca cuvintele DATA X la oricare adresa, iar citirea este necesara numai pentru unitati de testare. Pe langa aflarea adresei locatiei unde exista identitate, structura de memorie CAM trebuie inzestrata si cu generarea unui semnal de gasire, M = 1. Uneori este necesar a se cauta in memorie un cuvant care este incomplet cunoscut, adica valorile anumitor biti ai sai nu se cunosc. La accesarea printr-un cuvant incomplet definit, structura celulei (pentru un bit) a generatorului de identitate foloseste un indice m pentru fiecare bit, acesta fiind 1 logic daca bitul este definit si 0 logic daca bitul respectv este nedefinit. O utilizare foarte frecventa a memoriei CAM este in cadrul sistemelor pe baza de microprocesor, pentru translatarea adresei virtuale in adresa reala prin asa numitul circuit TLB (Translation Lookaside Buffer). Intr-un sistem de calcul, spatiul de adresare virtual cu care lucreaza programele este mult mai mare decat spatiul de adresare real (fizic) cu care lucreaza procesorul, adica numarul de adrese (fizice) din modulele de memorie ale sistemului. De exemplu, sa consideram ca spatiul virtual ar fi de 4 GB, adica 232 adrese, deci memoria poate fi accesata cu un cuvant de adrese cu 32 de biti, iar spatiul real de adrese este de 220 adrese, adica 1M, cuvant de adrese de 20 de biti. Translatarea unei adrese virtuale intr-o adresa reala se realizeaza cu un tabel, TLB (Translation Lookaside Buffer) implementat cu o memorie CAM. 268

F 5.6.3.

Memorie CAM.

Memoria CAM cu un numar de n locatii are pe fiecare linie stocate doua cuvinte; in prima lumatate a liniei este un cuvant care reprezinta o adresa virtuala, iar in a doua lumatate a liniei este un cuvant care reprezinta o adresa reala.

269

In tabel (TLB) se inscriu in prima jumatate doar acele adrese virtuale care se preconizeaza ca vor fi folosite prin rularea programului, iar in a doua jumatate se inscriu adresele reale din memoria RAM a sistemului. La aplicarea unui cuvant de adresa virtuala (primei jumatati a memoriei CAM), acest cuvant este comparat cu toate adresele virtuale inscrice si in aczul unei identitati se genereaza pentru acea linie semnalul AMk = 1, care va produce citirea adresei reale de pe a doua jumatate a liniei respective, aceasta adresa intrand in lucru in cadrul sistemului respectiv.

270

2. Circuite actuale pentru memoriile de date. Asa cum s-a precizat mai inainte, memoria RAM de capacitate mare este folosita pentru stocarea datelor si a programelor apelate pentru intrarea in executie. Circuitele de memorie, ca toate circuitele folosite in electronica digitala, prezinta un timp de propagare (intarziere) care afecteaza intreg procesul de prelucrare a datelor. Daca tehnologia este cea care poate sa micsoreze timpul de propagare, acest lucru constituind o cale pentru rezolvarea problemei, o alta cale consta in gasirea de metode de organizare a lucrului direct cu memoria (citire, scriere, refresh) in asa fel incat utilizarea memoriilor sa fie cat mai eficienta, obtinand timpi de acces cat mai scurti posibili. O prima astfel de metoda a fost citirea si inscrierea sub forma de rafala, existand si alte modalitati de crestere a debitului de date. Accesarea dubla pe perioada de ceas DDR (Double Data Rate) a fost o solutie in sensul celor prezentate mai sus, constand in accesarea dubla a memoriei (fie scriere, fie citire) pe perioada unui impuls de ceas (un acces pe frontul pozitiv al ceasului, adica 0 1, si un alt acces pe frontul negativ al ceasului, adica 1 0). Practic sunt trimise circuitului memoriei DDR-SDRAM doua semnale de ceas: CLK si CLK-negat, asa cum se arata in figura F 5.6.4.

F 5.6.4. Semnale de comanda pentru memoria DDR-SDRAM. Daca frecventa ceasului este 100,, 400 MHz, folosindu-se si frontul pozitiv si frontul negativ al ceasului rezulta o dublare a frecventei respective, deci o dublare a debitului de date. Pentru a se trece de la o structurare de tip SDRAM la tipul de memorie DDR-SDRAM se modifica partea de inerfatare a datelor. Astfel apare semnalul DQS, semnal de (strob) sincronizare a datelor, generat de controler, pentru a se realiza inscrierea corecta a datelor (DQin) in memorie si un alt semnal de strob generat de memorie catre controler pentru a asigura receptia corecta in controler a datelor citite (DQout) in memorie. Strobarea datelor citite se face pe frontul semnalului DQS, iar la inscriere in memorie se face pe mijlocul palierului semnalului DQS, asa cum este reprezentat in figura de mai sus. 271

Memoria DDR2 SDRAM este o varianta imbunatatita a DDR, in vederea cresterii ratei de transfer pe magistrala. Aceasta crestere a ratei fluxului de date se poate obtine printr-o adaptare a liniei de conexiune intre controler si memoria propriu-zisa, figura F 5.6.5.

F 5.6.5. Memoria DDR2-SDRAM: a) structura circuitului, b) exemplificarea a adaptarii circuitului dintre controler si memorie pentru operatia de citire, c) pentru operatia de scriere.

272

Trebuie imbunatatita structura semnalelor de date (DQ), de strobare (DQS), de mascare (DQM), atat pentru scriere cat si pentru citire. Adaptarea la intrarea pe circuitul DDR2 (figura a) se face printr-un divizor 2Zo fata de tensiunea de alimentare, VDD si un divizor 2Zo la Vss, astfel incat rezistenta echivalenta este egala cu impedanta caracteristica a liniei Zo. Printr-un pin suplimentar ODT (On Die Termination) se aplica un semnal de la controler care, pe baza registrului de mod extins EMR (Extended Mode Register), poate realiza comanda, prin comutatoarele SW1 si SW2, de conectare sau deconectare retelei Thevenin (sunt doua divizoare cu doua valori de rezistente, 2Zo1, 2Zo2 pentru a realiza adaptarea la doua valori de impedante caracteristice Zo1 si Zo2). Pentru operatia de citire, cand datele ies din memorie catre controler (figura b) este prezentata adaptarea in controler atat pentru cazul cand exista un singur modul de memorie activ cat si pentru cazul cand sunt doua module de memorie conectate. Adaptarea pe iesirea driverului pentru datele DQout de pe modulul de memorie activ, consta in egalizarea impedantei de iesire in starea H cu cea din starea L la valoarea de 18 1,5. In figura c) este prezentata adaptarea pentru inscrierea in memorie atat pentru un singur modul cat si pentru doua module de memorie active. Memoria QDR-SDRAM este o memorie accesata prin metoda DDR2 la doua porturi in acelasi timp (Quad Data Rate), unul din porturi este de inscriere, celalat de citire, fiecare fiind accesat de doua ori, prin semnalele de ceas CKL si CKL-negat, figura F 5.6.6.

F 5.6.6. Memoria de tip QDR-SDRAM. Porturile fiind accesate simultan, cuvuntele adresa sunt multiplexate pe magistrala de adresa, memoria aparand ca realizand un flux de date in acelasi sens.

273

Chestionar.

1. Cum sunt constituite memoriile SDRAM? 2. Cum se definesc accesul aleatoriu si accesul in rafala la o memorie SDRAM? 3. Ce inseamna cuvantul de control extern pentru memoria SDRAM si care semnale il compun? 4. Care este functia generala a controlerului? 5. Care este caracteristica fundamentala a memoriei CAM? 6. Cum functioneaza generatorul de identitate, F 5.6.3? 7. Care este semnificatia tabelului TLB (Translation Lookaside Buffer)? 8. In ce consta realizarea accesului dublu la memorie pe o perioada de ceas? 9. Care este principiul de functionare al memoriei DDR2-SDRAM? 10. Idem pentru memoria QDR-SDRAM?

274

PROBLEME - Enunturi. P 1. Sa se demonstreze ca exista egalitatile: _ a) A + AB = A + B ; _ _ b) A + AB = A + B; __ _ c) A + AB = A + B; P 2. Sa se verifice identitatile: _ _ a) AB + AC + BC = AC + BC; _ _ b) ABC + ABC + ABC = (A + B)C. Complementati functia urmatoare: _ F = A ( BC + D + E ) Sa se demonstreze urmatoarele identitati:

P 3.

P 4.

Indicatie : se aplica expresia desfasurata a functiei XOR. P 5. Sa se exprime cu ajutorul functiei elementare NAND urmatoarea functie logica: _ F = A + B( C + D ) + ( A + B ) ( C + D) . P 6. Sa se exprime functia F cu ajutorul functiei elementare NAND: _ ___ F = AB + AC + ABC. P 7. Sa se exprime cu ajutorul functiei NOR urmatoarea expresie logica: __________________________________ _ _ F = A + ( B + C ) + ABD + BCD 275

P 8. Sa se exprime functia F prin functii NOR: __________________________ __ _ F = AB + ABC + B( A + C ).

P 9. Sa se exprime functia F, data prin tabelul de mai jos, cu diagrame Veitch. A B C D F ___________________ 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1

FCND, FCDC si

P 10.

Sa se minimizeze functia F, utilizand teoremele algebrei booleene: F = _ _ __ ABD + ABCD + _ ABCD.

P 11.

Idem pentru functia F: _ _ F = A + B( C + D)

(A + B)(C + D).

P 12. Sa se implementeze cu porti NAND cu trei intrari functia logica: __ _ _ F = AB + AC + BC.

276

P 13. Se da functia F, definita cu ajutorul tabelului de adevar alaturat. Sa se minimizeze si sa se implementeze functia F cu porti NAND. A B C F _____________ 0 0 0 1 1 0 0 0 0 1 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1 1 0 P 14. Se da diagrama Veitch de mai jos. Sa se exprime functia F, sa se minimizeze si sa se implementeze cu functii NAND

P 15.

Sa se implementeze functia F cu componente NOR: F = _ __ AB + BC + CD. + __ BD.

P 16. Se da functia F =

__ AC + AC + BD

Sa se implementeze cu functii logice elementare. P 17 Sa se descrie cu ajutorul diagramelor de semnale functionarea schemei din figura de mai jos:

277

P 18. Sa se realizeze functia XOR cu porti NAND. P 19. Sa se realizeze functia XOR cu circuite AND-OR-NOT.

P 20. Sa se explice functionarea circuitului de mai jos prin diagrame de timp, tinand cont de timpul de propagare prin porti ( tp ).

P 21. Se da CI 74LS138, figurat mai jos, cu trei intrari de date A, B, C si o intrare pentru comanda de validare, iesirile fiind cele 8 semnale I0 - I7. Se cere sa se extinda la zece numarul iesirilor circuitului prin adaugarea de circuite corespunzatoare.

P 22. Sa se realizeze un comparator pe patru biti cu iesirea de egalitate Fe, folosind porti XOR si NOR.

P 23. Sa se proiecteze o schema logica cu porti AND, OR, NOT cu ajutorul careia sa se poata realiza orice functie cu 3 intrari.

P 24. Sa se implementeze cu porti AND, OR, XOR un circuit care sa semnalizeze prin 1 cand cuvantul A(A0, A1, A2) este mai mare ca B(B0, B1, B2).

278

P 25. Sa se exprime in kilobiti capacitatea unor memorii ROM organizate astfel: a) b) c) d) e) f) 256 x 4; 512 x 4; 512 x 8; 1024 x 4; 1024 x 8; 2048 x 8.

Care este numarul bitilor de adresa in fiecare caz? P 26. Sa se imagineze o organizare interna de memorie ROM de 256 cuvinte x 4 biti, matricea de memorie fiind de 32 x 32 biti. P 27. Pentru retelele de comutatie din figurile de mai jos sa se deduca functiile logice realizate.

P 28. Sa se determine functia de comutatie F pentru structura de retea din figura de mai jos, sa se simplifice functia si sa se implementeze cu porti logice.

279

P 29. Sa se deseneze structura retelei de porti care realizeaza urmatoarea functie logica: __ ______ F = (ABC + D)EF + GH(I + J + K). P 30. Pentru circuitul din figura de mai jos sunt redate alaturat formele de unda pe intrari. Este corecta forma de unda a functiei F? Daca nu, in ce consta disfunctionalitatea?

280

Solutii ale problemelor propuse. S 1. a) Vom folosi axioma 5, distributivitatea: x + yz = (x + y)(x + z). _ _ A + AB = (A + A)(A + B) = 1 (A + B) = A + B. Deci, relatia este adevarata. La fel se procedeaza si in cazurile b si c. S 2. a) Trebuie sa aratam ca AB + scris: AC + _ _ BC = AC + BC.

_ Conform axiomei 6, existenta complementului: x + x = 1, primul termen poate fi _ _ AB = AB1 = AB(C + C) = ABC + ABC. Astfel, vom avea: AB + AC + _ _ = (ABC + BC) + _ _ ABC + ABC + AC + BC = _ (ABC + AC) = BC(A + 1) + AC(B + _ BC =

1)

Deoarece conform teoremei 2 (legea lui 0 si a lui 1) avem : x + 1 = 1, expresia noastra devine: _ BC + AC, ceea ce trebuia aratat. Trebuie aratat ca : _ _ ABC + ABC + ABC = (A + B)C _ _ _ _ _ ABC + AC(B + B) = ABC + AC = C(A + AB) = C(A + A)(A + B) = = C(A + B), ceea ce se cerea. b)

S 3. Avem: ________ _ _ _ = A + (BC + D) E

____________________ _ _ F = A [(BC + D) + E] = = _ _ __ A + (B + C)DE.

______________ _ _ A + BC + D + E

281

S 4. Se aplica expresia desfasurata a functiei XOR: _ _ x + y = xy + xy . S 5. Mai intai desfacem parantezele: _ _ _ _ F = A + B(C + D) + (A + B)(C + D) = A + BC + BD + AC + AD + BC + BD = _ _ = A +(BC + BC) + (BD + BD) + AC + AD = A + B + B + AC + AD = = A + AC + AD + B = A + B. Am folosit axiomele si teoremele amintite mai inainte, minimizand functia F. Deoarece trebuie sa exprimam functia F prin elemente NAND de circuit, aplicam teorema 3 (dubla negatie) si teorema De Morgan: _ ______ _____ _ ______ _ _ F = F = A + B = A B, acesta fiind un circuit NAND cu doua intrari: _ _ A si B.

S 6. Pentru a exprima functia F, fie cu elemente NAND, fie NOR, se foloseste dubla negatie (teorema 3) si prin folosirea regulelor De Morgan se poate ajunge la o forma a functiei respective care se preteaza utilizarii elementelor mentionate. Astfel: _ __ F = AB + AC + ABC = ___ _ __ AB AC ABC

282

S 7. F

__________________________________ _ _ = A + (B + C) + ABD + BCD = ____________ _ _ _ _ = ( A + B + C) (A + B + D) (B + C + D) =

====================================== ______________ _ _ _ _ = (A + B + C) (A + B + D) (B + C + D) = ______________________________________________ ____________ _____________ _ _ _ _ = (A +B + C) + (A + B + D) + (B + C + D). Rezulta trei circuite NOR cu trei intrari, conform schemei de mai jos.

S 8.

_________________________ __ _ F = AB + ABC + B(A + C) = _ _ _ _______ = (A + B) (A + B + C) (B + A + C) = =============================== _ _ _ _______ = (A + B) (A + B +C) (B + A + C) = ___________________________________________ ________ _____________ ______________ _ _ _ _______ = (A + B) + A + B + C + B + A + C .

Rezulta trei elemente NOR care pot fi aratate mai jos

283

S 9.

Reluam tabelul de adevar: Nr. A B C D F curent Pi Si ---------------------------------------------------------0 0 0 0 0 0 P0 S0 --------------------------------------------------------1 0 0 0 1 1 P1 S1 --------------------------------------------------------2 0 0 1 0 1 P2 S2 --------------------------------------------------------3 0 0 1 1 0 P3 S3 --------------------------------------------------------4 0 1 0 0 1 P4 S4 ---------------------------------------------------------5 0 1 0 1 1 P5 S5 --------------------------------------------------------6 0 1 1 0 0 P6 S6 --------------------------------------------------------7 0 1 1 1 1 P7 S7 --------------------------------------------------------8 1 0 0 0 0 P8 S8 --------------------------------------------------------9 1 0 0 1 1 P9 S9 --------------------------------------------------------10 1 0 1 0 1 P10 S10 ---------------------------------------------------------11 1 0 1 1 0 P11 S11 ---------------------------------------------------------12 1 1 0 0 0 P12 S12 ---------------------------------------------------------13 1 1 0 1 0 P13 S13 ---------------------------------------------------------14 1 1 1 0 1 P14 S14 ---------------------------------------------------------15 1 1 1 1 1 P15 S15 284

Am numerotat pe verticala cele 16 expresii ale variabilelor. Prin P0 - P15 vom nota produsele variabilelor, iar prin S0 S15 suma variabilelor negate. FCND - forma canonica normal disjunctiva este formata din suma produselor (au sens produsele care au valoarea 1 logic): ___ FNCD = P1 + P2 + P4 + P5 + P7 + P8 + P9 + P10 + P14 + P15 = ABCD + __ _ _ __ _ _ _ ___ __ _ _ _ ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD. Reprezentarea acestei functii prin diagrama Veitch-Karnaugh este data mai jos:

FCNC - forma canonica normal conjunctiva este produsul sumelor variabilelor negate: _ _ _ _ _ FCNC = S0 S3 S6 S11 S12 S13 = (A + B + C + D) ( A + B + C + D)(A + B + C + D)(A + _ _ _ _ _ _ _ + B + C + D)(A + B + C + D)(A + B + C + D). Diagrama Veitch Karnaugh pentru aceasta functie este aratata mai jos.

S 10.

_ _ __ _ _ _ _ _ F = ABD + ABCD + ABCD = ABD + ABD(C + C) = _ _ _ _ _ = ABD + ABD = BD(A + A) = BD.

285

_ _ _ _ F = A + B(C + D) + (A + B)(C + D) = A + BC +BD + AC + AD + _ _ + BC + BD = A + BC + BC + BD + BD + AC + AD = _ _ = A + B(C + C) + B(D + D) + AC + AD . Deoarece : A + AC = A(1 + C) = A A + AD = A(1 + D) = A B + BD = B(1 + D) = B datorita rezulta: F = A + AC + AD + B + BD = A + B. 1 = A, 1 = A, 1 = B, teoremei 4 (absorbtia) si

S 11.

B + B = B, conform teoremei 1 (idempotenta sau tautologia),

S 12.

================= __ _ _ AB + AC + BC _____________ = __ _ _ F = F = A B AC BC = F =

Dupa ce functia F a fost adusa la aceasta forma se poate trece la realizarea schemei logice folosind circuite NAND cu trei intrari, dupa cum urmeaza:

286

S 13.

Reluam tabelul de adevar pentru aflarea functiei F:

A B C F Pi _______________________ 0 0 0 1 P1 1 0 0 0 P2 0 1 0 1 P3 1 1 0 1 P4 0 0 1 0 P5 1 0 1 1 P6 0 1 1 1 P7 1 1 1 0 P8 F = P1 + P3 + P4 + P6 + P7. ___ _ _ _ _ _ F = ABC + ABC + ABC + ABC + ABC _ _ _ _ ABC = BC(A + A) = BC, _ _ _ _ _ __ BC = C(B + A)(B + B) = CB + CA, _ _ _ _ _ __ _ ABC = A(C + BC) = A(C + C)(C + B) = AC + AB.

FCND a functiei: _ _ Avem: ABC + ___ ABC + __ CA + Rezulta:

_ __ _ _ F = ABC + AC + AB + CB. ________________ ====================== ____ ___ ___ ___ = _ __ _ _ _ _ __ _ F = F = ABC + AC + AB + CB = ABC AB AC BC

Avand functia adusa la aceasta forma, se poate realiza circuitul de mai jos:

287

S 14. Reluam diagrama functiei:

_ __ ____ F =ABCD + ABCD + Avem: _ __ ABCD

___ ABCD

_ __ ABCD

_ _ + ABCD.

____ ___ _ ___ + ABCD = ABC(D + D) = ABC. ____ Dublam termenul ABCD, conform teoremei 1 (idempotenta sau tautologia): x + x + x = x ___ ____ ___ _ ___ ABCD + ABCD = BCD(A + A) = BCD. _ __ _ _ _ _ _ _ _ ABCD + ABCD = ABD(C + C) = ABD. Obtinem: _______________________ ___ ___ _ _ _ ___ ___ _ _ F = ABC + BCD + ABD = F = ABC + BCD + ABD = ________________ ___ ___ _ _ = ABC BCD ABD , rezultand circuitul logic cu functii NAND de mai jos:

288

S 15. Transformam functia F pe care vrem s-o implementam cu componente NOR: =============== _ __ _ _ F = AB + BC + CD = B(A + C) + CD = ____________________ ______________ ___________________ _ _ _ = B + A + C + CD = B + A + C + C + D . Ultima expresie a functiei F este compusa din elemente NOR, aranjate in schema de mai jos:

S 16.

========= ========= __ __ __ __ F = AC + AC + BD + BD = AC + AC + BD + BD = ________________ ________________ __________ __________ _ _ _ _ _ _ _ _ = (A + C)(A + C) + (B + D)(B + D) = AC + AC + BD + BD =

Implementarea este data mai jos.

289

S 17.

Daca tinem cont de timpii de propagare tpHL si astfel:

tpLH se pot trasa diagramele de timp

Circuitul este un oscilator cu frecventa:

1 _______________________________

1 ______________

(tLH + 2tHL) + (tHL + 2tLH)

3(tHL + tLH))

Pentru cazul a n circuite (n impar), frecventa f este:

1 _________________ .

n( tHL + tLH )

290

S 18. Functia XOR cu doua intrari A si B este: _ _ _ _ _ _ F = AB + AB = A(A + B) + B(A + B) Conform De Morgan: ____________ _____ _____ = __ ___ F = F = A AB B AB Aceasta expresie contine numai NAND uri si se poate trece la realizarea schemei logice: ___ = A AB + ___ B AB

S 19.

======== _ _ _ _ F = AB + AB = AB + AB = _______________________ _ __ _ = AA + AB + AB + BB =

________________ _ _ (A + B)(A + B) = __________ __ AB + AB

Realizam schema logica cu elemente de circuit SI - SAU NU:

291

S 20.

Reluam circuitul:

La prima vedere semnalul d este zero, pentru ca orice semnal in conjunctie cu inversul sau este zero (1 0 = 0, axioma 6, existenta complementului). Ambele porti au o intarziere (timp de propagare), pe care o consideram aceeasi, de care trebuie sa tinem cont. Diagramele de semnal arata astfel:

Dupa cum rezulta din diagrame, iesirea (d) este un impuls cu durata timpului de propagare, circuitul servind la generarea de impulsuri foarte scurte, in anumite conditii. S 21. Pentru 10 linii de iesire este necesar un set de 4 intrari. Langa intrarile A, B, C, adaugam circuitul aferent pentru a patra intrare, format din trei NAND uri:

292

S 22. Schema comparatorului este data mai jos:

Avem: a0 = b0, implica fe0 = 0, ............................................... a3 = b3, implica fe3 = 0. __ __ __ ___ Iesirea Fe = fe0 fe1 fe2 fe3 = 1, in caz de egalitate.
n 3 S 23. Pentru n = 3 intrari exista 2 = 2 = 8 combinatii (functii logice) exprimate astfel: _ _ _ __ __ _ _ F = X0ABC + X1ABC + X2ABC + X3ABC + X4ABC + X5ABC + X6ABC + ___ + X7ABC. Vectorul X(X0, .....X7) este asociat intrarilor ABC, Xi = {0, 1}, reprezentand cai de intrare a informatiei. Implementarea functiei F se face ca in figura urmatoare:

Se realizeaza astfel multiplexorul de 8 cai. Intrarile ABC au rolul de adrese pentru selectarea caii Xi ce se va conecta la iesirea F, la un moment dat. 293

S 24. 1. Adoptam schema cu transport succesiv, adica se fac comparatiile bit cu bit:

2.

O alta solutie este schema cu transport simultan:

294

S 25. a) b) c) d) e) f) S 26. 256 512 512 1024 1024 2048 x x x x x x 4 4 8 4 8 8 = = = = = =

1024 2048 4096 4096

1 kbit, 256 = 28 , deci 8 biti pentru adresa, 2 kbiti, 9 biti de adresa, 4 kbiti, 9 biti de adresa, 4 kbiti, 10 biti de adresa, 8 kbiti, 10 biti de adresa, 2 x 8 = 16 kbiti, 11 biti de adresa. = = = =

Matricea de 32 x 32 biti are 32 de linii orizontale si 32 de coloane.


5

32 =

2 , deci vom avea 5 linii de adresa .

Cuvantul are 4 biti, deci cele 32 de coloane vor forma 4 grupe de 8 coloane care vor fi explorate, prin 4 multiplexoare, fiecare avand la iesire un bit, asa cum arata schema de mai jos. Multiplexoarele au 8 semnale de informatie care trebuie sa fie selectate de 3 linii de adresa: 3 8 = 2 . Validarea cuvantului de 4 biti se face prin semnalul EN = ENABLE.

295

S 27. Avem:

____ _ F1 = ABC + (EF + G) B _ _ ___ F2 = B(DCE + EFG)(AB + C)

S 28. Avem

__ _ _ F = (AB + AB)C + (AB + AB)C =

Implementarea functiei F este data mai jos:

S 29. Implementarea functiei F este:

296

S 30.

Reluam schema si diagrama de timp:

Analizam circuitul pe zone (unitati de timp) notate ca in figura. __ __ _______ 1. AB = 0, C D = 1, F = 1 + 0 = 0 Deci, valoarea adevarata a lui F este 0 si nu 1, ca in diagrama. Figuram si aceste valori corecte ale lui F, pentru comparatii. 2. Situatie __ 3. AB = __ 4 AB = __ 5. AB = __ 6. AB = identica cu precedenta. __ 0, CD = 0, F = __ 0, CD = 0, F = __ 0, CD = 1 F = __ 1, CD = 1, F = ______ 0 + 0 = 1, aici F are valoare corecta. _______ 0 + 0 = 1, valoare corecta, F corect. ______ 0 + 1 = 0, deci, iar este F incorect. _______ 1 + 1 = 0, valoare corecta, F corect.

Desenam si forma corecta a semnalului F si facem comparatia cu F dat de problema. Rezulta ca F corect este identic cu semnalul D, comportandu-se ca si cand semnalul __ AB = 0 (punere la masa) tot timpul, A + B = 1, asa cum rezulta din tabelul de adevar alaturat.

297

ANEXA 1.

Valorile curentilor pentru seriile de porti logice TTL.

_______________________________________________________________________ Seria INTRARE -----------------------------nivel H nivel L IESIRE ------------------------------------nivel H nivel L

IIHmax , A IILmax , mA IOHmax , mA IOLmax , mA ________________________________________________________________________ 74 40 -1,6 -0,4 16 ________________________________________________________________________ 74S 50 -2,0 -1,0 20 ________________________________________________________________________ 74LS 20 -0,36 -0,4 8 ________________________________________________________________________ 74AS 20 -2,0 -0,4 4 ________________________________________________________________________ 74ALS 20 -0,1 -0,4 8 ________________________________________________________________________

Parametrii seriilor din familia TTL. ______________________________________________________________________ Seriile familiei TTL Parametru 74 74S 74LS 74AS 74ALS ______________________________________________________________________ t-propagare (ns) 10 3 9 1,7 4 Pd (mW) 10 19 2 8 1,2 0,8 0,8 0,8 0,8 0,8 VILmax (V) VOLmax (V) 0,4 0,5 0,5 0,5 0,5 VIHmin (V) 2,0 2,0 2,0 2,0 2,0 2,8 2,7 2,7 2,7 2,7 VOHmin (V) -1,6 -2,0 -0,4 -0,5 -0,2 IILmax (mA) IOLmax (mA) 16 20 8 20 8 IIHmax (A) 40 50 20 20 20 IOHmax (A) -800 -1000 -400 -2000 -400 pLH-max (ns) 22 4 15 4 11 pHL-max (ns) 15 5 15 4 8

298

ANEXA 2.

Nivelurile logice de tensiune pe intrare si iesire pentru familiile CMOS si TTL.

Familiile 5V CMOS HC, VHC

Familiile 5V TTL HCT, TTL

Familiile 3,3V LVTTL

Familiile 2,5V CMOS

Familiile 1,8V CMOS

Prima serie de porti logice CMOS a fost seria 4000. Ulterior au aparut serii mai performante: varianta civila ( 0 70C), notata 74SERxxx si varianta militara (-55 125C), notata 54SERxxx. SER - sunt doua sau trei litere (abreviatie) din denumirea seriei; xx - codul portii. De exemplu, o poarta NAND 2 cu doua intrari, are codul 7400 si c poate fi specificata: 74HC000, 74CT000, 74VHC000, 74VHCT000. Litera C specifica faptul ca este o poarta CMOS. Celelalte specificatii sunt: - HC - High Speed CMOS, - HCT - High Speed CMOS - TTL compatible, - FCT - Fast CMOS - TTL compatible, - FCT T - FCT, comtibile cu TTL VCC 3,3V. Foarte utilizata, in special pentru porti foarte complexe, cuprinzand sute de tranzistoare. - VH - Very High Speed, abreviere. 299

Familii TTL: S - (74Sxx) LS - (74LSxx) AS - (74ASxx) ALS - (74ALSxx) - (74Fxx) seria Schottky, seria Low Power Schottky, seria Advanced Schottky TTL, seria Schottky imbunatatita, de putere redusa - Advanced - Low Power Schottky - TTL, - seria rapida, Fast TTL.

- F

300

BIBLIOGRAFIE. 1. Colectiv, Iulian Ardelean - Circuite integrate CMOS, E. T. Bucuresti, 1986. 2. Gheorghe Toacse, Dan Nicula - Circuite integrate digitale, Teora, 1996, - Electronica digitala, vol. I, II, E. T. 2005. 3. Gheorghe Toacse, - Introducere in microprocesoare, Ed. Stiintifica si Enciclopedica, Bucuresti, 1986. 4. Colectiv, I. Sztojanov - De la poarta TTL la microprocesoare, vol. I, II, E. T. Bucuresti, 1987. 5 I. Spanulescu, S. Spanulescu - Circuite digitale si sisteme cu microprocesoare, Editura Victor, Bucuresti, 1996. 6. Vasile Pop, Volker Popovici - Circuite de comutare aplicate in calculatoarele electronice, Editura Facla, Cluj, 1976. 7. Nicolae Cupcea - Structura circuitelor digitale, Editura Matrix-Rom, Bucuresti, 1999. 8. Colectiv, Stanescu Maria - Bazele informaticii, Editura CISON - 1995. 9. Dan Nicula - Proiectarea sistemelor digitale implementate cu dispozitive programabile, E. T. Bucuresti, 2000. 10 I. Sztojanov, Sever Pasca, Nicolae Tomescu - Electronica analogica si digitala, vol. I, II, III, Editura Albastra, Cluj, 2004. 11. Colectiv, Adelaida Mateescu - Semnale si sisteme, Teora, Bucuresti, 2001. 12. Corneliu Hutanu - Circuite logice si comenzi secventiale, Junimea,Iasi, 1983. 13. Dumitru Scheianu - Microelectronica, Ed. Militara, Bucuresti, 1988. 14. Robert Boylestad, Louis Nashelsky - Electronic devices and circuit theory, second edition 1978, Prentice Hall, New Jersey 0763. 15. Delton T. Horn - Electronic Theory, 4-th edition, 1994, TAB Books - Division of McGraw Hill. 16. IPRS Baneasa - Catalog: Circuite integrate logice, I.Poligrafica Cluj, 1990. 17. Microelectronica - Catalog: Data Book, a II-a editie 1989.

301

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