Un circuit combinaional real poate avea zeci de intrri i
ieiri, iar pentru descrierea lui ar putea fi necesare sute, mii sau chiar milioane de termeni produs ai unei sume, precum i tabele de adevr coninnd miliarde de rnduri. Din aceast cauz, majoritatea problemelor de proiectare a circuitelor logice combinaionale reale sunt de dimensiuni mult prea mari pentru a putea fi rezolvate prin aplicarea n for a metodelor teoretice. Secretul este concepia structural. Un circuit complex sau un sistem este considerat ca un ansamblu de subsisteme de dimensiuni mai mici, fiecare dintre acestea putnd fi descris mai simplu. n proiectarea circuitelor logice combinaionale se lucreaz cu cteva structuri de baz decodoare, multiplexoare, comparatoare i altele asemenea care apar n mod regulat ca blocuri structurale ale sistemelor de dimensiuni mari. Cele mai importante dintre aceste structuri vor fi prezentate n capitolul de fa. nainte de a face cunotin cu aceste blocuri structurale trebuie s discutm un alt aspect important, care se refer la standardele de documentaie folosite de proiectanii de circuite digitale pentru a se asigura c rezultatele muncii lor sunt corecte i posibil de fabricat i de ntreinut. 1.1 Standarde pentru documentaie O documentaie de calitate este esenial pentru proiectarea corect i ntreinerea eficient a sistemelor digitale. Pe lng faptul c trebuie s fie precise i complete, documentaia trebuie s furnizeze i unele informaii practice, astfel nct inginerul ce testeaz sistemul, tehnicianul care se ocup de ntreinere i
nsui proiectantul s i poat da seama, dup simpl citire a documentaiei, cum funcioneaz acel sistem. Cu toate c stilul unei documentaii depinde de complexitatea sistemului i
de mediile de proiectare i
de fabricaie unde a fost elaborat, un pachet de documentaie ar trebui s cuprind cel puin urmtoarele ase elemente: 1. O descriere tehnic, prin care s se arate cu precizie cum trebuie s funcioneze circuitul sau sistemul respectiv, inclusiv o prezentare a tuturor semnalelor de intrare i de ieire (interfeele) i a funciilor ce trebuie realizate. Reinei c n aceast descriere nu trebuie s se arate i n ce mod sistemul i ndeplinete funciile, ci numai parametrii care trebuie s se Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found. obin. Multe companii obinuiesc s ataeze descrieri tehnice i
unul sau mai multe documente n care s arate cum funcioneaz sistemul.
2. O schem bloc, adic un desen sugestiv care prezint principalele module funcionale ale sistemului i principalele interconexiuni.
3. O schem electric incluznd, ntr-o form standardizat, valorile componentelor electrice ale sistemului, interconexiunile lor i
toate detaliile necesare pentru construirea acelui sistem, printre care tipurile de CI, simbolurile i
notaiile folosite i
numerotarea pinilor. Denumirea de schem logic, folosit pn acum, desemneaz un desen sugestiv care nu conine informaii att de detaliate ca schema electric.
4. O diagram temporal, care indic valorile diferitelor semnale logice ca funcii de timp, inclusiv decalajele cauz-efect ntre principalele semnale.
5. O descriere a dispozitivelor logice structurate, care prezint funcionarea intern a dispozitivelor logice programabile (PLD), a matricelor de pori programabile n cmp (FPGA) sau a circuitelor integrate specifice unei aplicaii (ASIC). Aceasta este scris, n mod normal, ntr-un limbaj descriptor de echipamente (HDL), dar poate avea i
forma unor ecuaii logice, tabele de stri sau diagrame de stri. n unele cazuri, pentru modelarea funcionrii unui circuit sau pentru descrierea funcionrii lui poate fi folosit i
un limbaj de programare convenional, cum este C.
6. O descriere a circuitului, sub forma unui document text narativ care, alturi de celelalte documente, explic funcionarea intern a circuitului. Aici trebuie menionate toate condiiile i defectele de concepie i
de funcionare posibile i
trebuie atras atenia asupra utilizrii unor artificii de proiectare neevidente. O descriere bine realizat a circuitului mat conine definiiile acronimelor i
ale altor termeni de specialitate, precum i
trimiteri la documente cu aceeai tematic.
Ultimul domeniu din documentaie, descrierea circuitului, este de mare importan n practic. Aa cum un programator cu experien redacteaz un document de concepie a programului nainte de a ncepe s scrie codul, un proiectant de circuite logice cu experien va ncepe s elaboreze un document ce descrie circuitul nainte de a desena schema. Din nefericire, uneori, descrierea circuitului este ultimul document ce se elaboreaz, iar alteori nu se ntocmete deloc. n absena descrierii, circuitele sunt dificil de depanat, de fabricat, de testat, de ntreinut, de fabricat i de mbuntit. Circuite integrate digitale 1.1.1 Schema bloc ntr-o schem bloc se arat semnalele de intrare i
de ieire, modulele funcionale, cile interne de date i semnalele de comand importante dintr-un sistem. n general, schema bloc nu trebuie s fie att de detaliat nct s ocupe mai mult de o pagin, ns trebuie s fie suficient de clar. O schem bloc de dimensiuni reduse poate cuprinde trei pn la ase blocuri, pe cnd una de dimensiuni mari poate avea de la 10 la 15 blocuri, n funcie de complexitatea sistemului. n oricare caz, ea trebuie s prezinte cele mai importante elemente ale sistemului i modul n care funcioneaz ansamblul acestora. Pentru sisteme foarte mari este posibil s fie necesar anexarea unor scheme bloc ale unor subsisteme separate, ns ntotdeauna trebuie s existe o schem de ansamblu n care apare ntregul sistem.
Figura 1-1 Exemplu de schem bloc ce constituie tema unui proiect de circuite digitale n figura 5-1 este prezentat un fragment de schem bloc. Pe fiecare bloc apare o etichet cu numele funciei realizate de blocul respectiv, i
nu cu tipul de cipuri pe care este realizat blocul. O magistral este un ansamblu de dou sau mai multe linii de semnal asociate. n schemele bloc, magistralele se reprezint cu linie dubl sau Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found. ngroat. 0 bar oblic (/) i un numr pot arta cte linii de semnal separate conine o magistral. Fluxurile de comenzi i de date dintr-o schem bloc trebuie indicate clar. n schemele logice, semnalele se reprezint, n general, ca avnd sensul de la stnga spre dreapta, ns acest lucru este mai greu de realizat ntr-o schem bloc. Semnalele de intrare i
de ieire pot fi reprezentate pe oricare dintre laturile unui bloc, iar sensul de circulaie al semnalelor se poate alege arbitrar. Pentru eliminarea ambiguitilor, pe magistrale i pe liniile de semnal obinuite se deseneaz sgei. 1.1.2 Simboluri de pori Formele simbolurilor pentru porile AND i OR i pentru circuitele tampon sunt cele din figura 5-2(a). Pentru a reprezenta pori logice cu un numr foarte mare de intrri, simbolurile porilor AND i OR sufer o expandare, ca n figura 5-2(b). Un mic cerc, numit cercule inversor, semnific inversarea logic sau complementarea i se utilizeaz n simbolurile porilor NAND i NOR i ale inversoarelor, ca n figura 5-2(c).
Figura 1-2 Simbolurile porilor logice de baz: (a) AND, OR, TAMPON; (b) pori cu intrri expandate; (c) pori cu cerculee inversoare (NAND, NOR, INVERSOR) Aplicnd teorema lui DeMorgan generalizat, putem aduce expresiile logice ntr-o form adecvat porilor cu ieiri complementate. De exemplu, dac X i Y sunt semnalele de la intrrile unei pori NAND al crei semnal de ieire este Z, putem scrie:
Z = (XY) = X+Y
De aici rezult dou simboluri diferite, dar la fel de corecte, pentru o poart NAND. De fapt, asemenea prelucrri pot fi aplicate la fel de bine i porilor cu semnale de ieire necomplementate. S considerm, ca exemplu, urmtoarele ecuaii, n cazul unei pori AND:
Z = XY = ((XY)) = (X + Y)
Circuite integrate digitale Ca urmare, o poart AND poate fi reprezentat simbolic ca o poart OR cu cerculee inversoare la intrri i
la ieire. Simbolurile echivalente pentru porile standard, care se pot obine prin astfel de transformri sunt prezentate sistematizat n figura 5-3. Dei ambele simboluri dintr-o pereche reprezint aceeai funcie logic, folosirea unuia sau a altuia dintre ele ntr-o schem logic nu este arbitrar, cel puin n cazul n care dorim s ne conformm unor standarde de calitate pentru documentaie. Aa cum vom arta, prin alegerea judicioas a denumirilor semnalelor i a simbolurilor pentru pori, schemele logice devin mult mai uor de utilizat i de neles.
Figura 1-3 Simbolurile echivalente pentru pori, obinute prin aplicarea teoremei lui DeMorgan 1.1.3 Denumiri de semnale i niveluri active Fiecare semnal de intrare i de ieire dintr-un circuit logic trebuie s poarte o etichet alfa-numeric descriptiv denumirea semnalului. Nite denumiri de semnale bine alese furnizeaz informaii celor ce consult schema. Fiecare denumire de semnal trebuie s aib un nivel activ asociat. Un semnal este activ la nivelul HIGH dac efectueaz aciunea numit sau semnalizeaz condiia numit cnd are valoarea HIGH sau 1. Un semnal este activ la nivelul LOW dac efectueaz aciunea numit sau semnalizeaz condiia numit cnd are valoarea LOW sau 0. Se spune c un semnal este confirmat cnd se afl la nivelul su activ. Cnd nu se afl la nivelul activ, semnalul se numete negat. Nivelul activ al fiecrui semnal dintr-un circuit este, n mod normal, precizat n denumirea semnalului, conform unei convenii. ntruct desemnarea nivelului activ face parte din denumirea semnalului, convenia de denumire trebuie s fie compatibil cu parametrii de intrare impui de instrumentul de proiectare asistat de calculator care urmeaz s lucreze cu Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found. denumirile semnalelor, ca, de exemplu, editoarele de scheme, compilatoarele HDL i
simulatoarele. Este foarte important s nelegei care este diferena dintre denumirile de semnale, expresii i
ecuaii. O denumire de semnal este doar un nume, o etichet alfa-numeric. O expresie logic opereaz cu denumiri de semnale folosind operatorii din algebra de comutaie - AND, OR i NOT. O ecuaie logic este atribuirea unei expresii logice unei denumiri de semnal - ea descrie funciile realizate de un semnal n funcie de alte semnale. 1.1.4 Proiectarea cu cerculee Proiectarea cu cerculee este o modalitate de a alege simbolurile logice i denumirile semnalelor n aa fel nct funcia unui circuit logic s devin mai uor de neles. De obicei, aceasta se face prin alegerea denumirilor semnalelor i a tipurilor de pori astfel nct majoritatea cerculeelor inversoare s se anuleze reciproc, iar schema logic s poat fi analizat ca i
cum toate semnalele ar fi active n High. De exemplu, s presupunem c trebuie s obinem un semnal care determin un dispozitiv s intre n FUNCIONARE cnd suntem GATA i
cnd primim o CERERE. Din enunul problemei reiese clar c este necesar o funcie AND (n algebra de comutaie vom scrie FUNCIONARE = GATACERERE). Dar pentru realizarea funciei AND putem folosi diverse pori, n funcie de nivelul activ necesar pentru semnalul FUNCIONARE i de nivelurile active ale semnalelor de intrare disponibile. n figura 5-4(a) este prezentat cazul cel mai simplu, n care FUNCTIONARE trebuie s fie activ n HIGH, iar semnalele de intrare disponibile sunt, de asemenea, active n HIGH - folosim o poart AND. Dac ns dispozitivul comandat necesit un semnal activ n LOW, FUNCTIONARE_L, putem folosi o poart NAND, ca n 5-4(b). Dac semnalele de intrare disponibile sunt active n LOW, putem folosi o poart NOR sau una OR, ca n 5-4(c) i
5-4(d).
Figura 1-4 Diverse ci de a intra n FUNCIONARE: (a) intrri i ieire active n HIGH; (b)intrri active n HIGH i ieire activ n LOW; (c) intrri active n LOW i ieire activ n HIGH; (d) intrri i ieire active n LOW Circuite integrate digitale Nivelurile active ale semnalelor disponibile nu coincid ntotdeauna cu nivelurile active ale porilor disponibile. De exemplu, s presupunem c se dau semnalele de intrare GATA_L (activ n LOW) i CERERE (activ n HIGH). Figura 5-5 prezint dou modaliti de a obine semnalul FUNCIONARE, folosind un inversor pentru a genera nivelul activ necesar realizrii funciei AND. n general se prefer a doua modalitate, deoarece porile inversoare, cum este NOR, sunt mai rapide dect cele neinversoare, ca AND. Am reprezentat inversorul altfel n fiecare caz pentru ca nivelul activ al semnalului de ieire s corespund denumirii semnalului.
Figura 1-5 Alte dou moduri de a intra n FUNCIONARE, pentru niveluri diferite ale semnalelor de intrare: (a) cu o poart AND; (b) cu o poart NOR Iat cteva reguli utile pentru proiectarea schemelor logice cu cerculee: Numele semnalului de ieire al unui dispozitiv trebuie s aib acelai nivel activ ca i pinul de ieire al dispozitivului, adic s fie activ n LOW dac simbolul dispozitivului are cercule inversor la pinul de ieire i
activ n HIGH dac nu apare cerculeul. Dac nivelul activ al unui semnal de intrare coincide cu cel al pinului de intrare la care se aplic, atunci funcia logic realizat n interiorul conturului simbolului este activat cnd semnalul este confirmat. Acesta este cazul cel mai frecvent ntlnit n schemele logice. Dac nivelul activ al unui semnal de intrare este opus celui al pinului de intrare la care se aplic, atunci funcia logic realizat n interiorul conturului simbolului este activat cnd semnalul este negat. Acest caz trebuie evitat ori de cte ori este posibil, deoarece, pentru a nelege cum funcioneaz circuitul, suntem obligai s reinem mental o negaie logic. 1.1.5 Organizarea desenului Schemele logice se deseneaz, n mod normal, cu intrrile porilor orientate spre stnga i cu ieirile spre dreapta. Simbolurile elementelor logice mai complexe se deseneaz, n orientate normal, tot cu intrrile spre stnga i
ieirile spre dreapta. Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found. O schem complet ce ocup o ntreag plan se deseneaz cu intrrile n sistem n stnga i cu ieirile spre dreapta, sensul general de circulaie al semnalelor fiind de la stnga la dreapta. Dac n mijlocul planei apare o intrare sau o ieire, aceasta trebuie prelungit pn n marginea din stnga, respectiv din dreapta, a planei. n acest fel, persoana care consult schema poate gsi toate intrrile i
ieirile urmrind doar marginile schemei. Toate conexiunile cilor de semnal de pe plan trebuie figurate, n msura n care este posibil; dac schema este prea aglomerat, se poate ntrerupe figurarea unora dintre cile de semnal, ns ntreruperea trebuie semnalat la ambele capete. Uneori, schemele bloc se deseneaz fr ca liniile s se intersecteze, pentru un aspect mai aerisit, ns n schemele logice nu se procedeaz aa niciodat. Aici este permis intersectarea liniilor, iar conexiunile sunt marcate clar prin puncte. Totui, unele sisteme de proiectare asistat de calculator i unii proiectani deseneaz nite puncte de conexiune greu de zrit. Pentru a se putea face deosebirea dintre liniile intersectate i
cele interconectate, la aceste sisteme s-a adoptat convenia de a fi acceptate numai conexiunile n T, ca n figura 5- 6.
Figura 1-6 Intersecii de linii i conexiuni Cel mai uor se lucreaz cu schemele care ncap pe o singur plan. Schemele care nu ncap pe o singur coal trebuie mprite pe mai multe coli separate astfel nct numrul de conexiuni la trecerea de pe o plan pe alta s fie minim. O schem ce se ntinde pe mai multe plane are, de obicei, o structur orizontal, aa cum observai n figura 5-7. Un alt mod de a aeza planele este ntr-o structur ierarhic, care este prezentat n figura 5-8. ntr-o astfel de manier, schema de la nivelul cel mai de sus ocup o singur plan, putnd ndeplini rolul de schem bloc. De obicei, ea nu conine pori sau alte elemente logice; aici apar doar blocurile corespunztoare principalelor subsisteme, cu interconexiunile respective. Blocurile sau subsistemele sunt definite, la rndul lor, n planele de la nivelurile inferioare, care pot conine fie detaliile obinuite la nivel de pori, fie alte blocuri, a cror definiie se afl n plane de nivel ierarhic inferior acestora. Circuite integrate digitale
Figura 1-7 Schem cu structur orizontal
Figura 1-8 Schem cu structur ierarhic 1.1.6 Magistrale O magistral este un ansamblu a dou sau mai multe linii de semnal asociate. De exemplu, un sistem cu microprocesor poate avea o magistral de Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found. adrese cu 16 linii, ADDRO ... ADDR15, i o magistral de date cu 8 linii, DATAO ... DATA7. Nu este ns necesar ca denumirile semnalelor din aceeai magistral s fie asemntoare sau s se afle ntr-o anumit ordine. De exemplu, un sistem cu microprocesor poate avea o magistral de comenzi coninnd cinci semnale: ALE, MIO, RD_L, WR_L i RDY.
Figura 1-9 Exemple de magistrale Pe diagramele logice, magistralele beneficiaz de notaii speciale, n scopul simplificrii desenului i
al creterii inteligibilitii. Dup cum observai n figura 5-9, fiecare magistral poart cte un nume descriptiv, ca ADDR[15:0], DATA[7:0] sau CONTROL. ntr-un nume de magistral se pot utiliza paranteze drepte i caracterul : pentru precizarea unui domeniu. Magistralele se reprezint n desene cu linii mai groase dect liniile de semnal obinuite. Semnalele separate care se introduc sau se preiau dintr-o magistral se reprezint prin conectarea la magistral a unei linii de semnal obinuite, n dreptul creia scriem numele semnalului respectiv. Uneori se marcheaz punctul de conexiune printr-un simbol de form special, ca n exemplu. Sistemele de proiectare asistat de calculator urmresc separat fiecare semnal dintr-o magistral. Cnd se ajunge n faza de construire a unui circuit corespunztor unei scheme, liniile de semnal cuprinse ntr-o magistral sunt considerate ca trasate separat. Simbolurile din marginea din dreapta a figurii 5-9 sunt trimiteri ctre alte plane. Ele arat c LA se continu n plana 2, DB este bidirecional i
se Circuite integrate digitale continu n plana 2, iar CONTROL este bidirecional i se continu n planele 2 i
3. 1.2 PLD combinaionale 1.2.1 Matrice logice programabile Cronologic, primele PLD au fost matricele logice programabile (PLA - programmable logic array). PLA sunt dispozitive combinaionale cu dou niveluri AND-OR, care pot fi programate pentru a implementa orice expresie logic sum de produse n limita dimensiunilor dispozitivului. Aceste limite sunt:
numrul de intrri (n) numrul de ieiri (m) numrul de termini produs (p)
Am putea descrie un asemenea dispozitiv ca PLA n x m cu p termeni produs. n general, p este mult mai mic dect numrul de mintermeni de n variabile (2 n ). Deci un PLA nu poate realiza orice funcii logice cu n intrri i
m ieiri; utilitatea lui se limiteaz la funciile ce pot fi exprimate ca sum de produse cu maximum p termeni produs. Un PLA n x m cu p termeni produs conine p pori AND cu cte 2n intrri i
m pori OR cu cte p intrri. n figura 5-10 este prezentat un PLA de dimensiuni modeste, cu patru intrri, sale pori AND, trei pori OR i tot attea ieiri. Fiecare intrare este conectat la cte un circuit tampon care furnizeaz att varianta direct, ct i pe cea complementat a semnalului, spre a fi utilizate n interiorul matricei. Conexiunile posibile din interior sunt marcate cu X; dispozitivul se programeaz prin pstrarea exclusiv a conexiunilor necesare practic. Conexiunile selectate sunt fuzibile, constnd fie din material fuzibil fizic, fie din celule de memorie nevolatil, n funcie de tehnologia aplicat. Deci la intrrile fiecrei pori AND se poate regsi orice subset alctuit din semnale primare de intrare i complementele acestora. n mod asemntor, la intrrile fiecrei pori OR se poate regsi orice subset format din semnale de ieire ale porilor AND. Cum se vede n figura 5-11, un PLA poate fi reprezentat i printr-o schem mai compact. Mai mult dect att, dispunerea elementelor acestei scheme seamn foarte bine cu dispunerea lor real pe cipul de PLA. PLA din figura 5-11 poate realiza oricare trei funciile logice combinaionale cu patru intrri ce pot fi scrise ca sum de produse folosind un total de maximum ase termeni produs diferii. Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found.
Figura 1-10 PLA 4x3 cu ase termeni produs
Figura 1-11 Reprezentare compact a unui PLA 4x3 cu ase termeni produs O1 = I1I2 + I1I2I3I4 O2 = I1I3 + I1I3I4 + I2 O3 = I1I2 + I1I3 + I1I2I4
Ecuaiile de mai sus au n total opt termeni produs, dar primii doi termeni din ecuaia 03 sunt identici cu primii termeni ai ecuaiilor 01 i
02. Matricea de conexiuni programate, din figura 5-12, trebuie s corespund acestor ecuaii logice. Uneori, ieirea unui PLA trebuie programat astfel nct s fie constant 1 sau constant 0. Nu este greu, cum se observ i
n figura 5-13. Termenul produs P1 este ntotdeauna 1 deoarece linia sa de produse nu este conectat la nici o Circuite integrate digitale intrare i
deci este totdeauna forat n HIGH; acest termen constant 1 comand ieirea O1.
Figura 1-12 PLA 4x3 programat cu un set de trei ecuaii logice Ieirea O2 nu este comandat de nici un termen produs, fiind deci totdeauna 0. O alt metod de a obine o valoare de ieire 0 constant este cea aplicat n cazul ieirii O3. Termenul produs P2 este conectat la fiecare dintre variabilele de intrare, precum i la complementele acestora; ca urmare, valoarea lui este totdeauna 0 (X X = 0).
Figura 1-13 PLA 4x3 programat pentru a produce semnale de ieire constante 0 i 1 PLA cu care am lucrat n exemple are prea puine intrri, ieiri i
pori AND (termeni produs) pentru a fi foarte util. Desigur c un PLA cu n intrri ar putea utiliza 2 n termeni produs pentru a implementa toi mintermenii de n Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found. variabile posibili. De fapt, numrul de termeni produs corespunztori unor PLA obinuite, de uz larg, este mult mai mic, de ordinul a 4 ... 16 pentru fiecare ieire, indiferent de valoarea n. Un caz particular de PLA i n prezent cel mai utilizat tip de PLD este dispozitivul logic cu matrice programabil (PAL programmable array logic). Spre deosebire de PLA, la care att matricea de pori AND, ct i cea de pori OR sunt programabile, matricea de pori OR a unui dispozitiv PAL este fix. 1.3 Decodoare Decodorul este un circuit logic cu mai multe intrri i mai multe ieiri, care convertete semnalele de intrare codate n semnale de ieire codate, codurile de intrare i de ieire fiind diferite. n general, codul de intrare este construit pe mai puini bii dect codul de ieire, iar ntre cuvintele de cod de intrare i cuvintele de cod de ieire exist o coresponden biunivoc. Structura general a unui circuit de decodare este cea din figura 5-14. Intrrile de activare, dac exist, trebuie s fie confirmate pentru ca decodorul s realizeze corespondena intrare-ieire n mod normal. n caz contrar, decodorul asociaz tuturor cuvintelor de intrare un singur cuvnt de cod de ieire disabled (neactivat).
Figura 1-14 Structura circuitului de decodare Pentru semnalul de intrare, cel mai frecvent se utilizeaz un cod binar de n bii, n care un cuvnt de n bii reprezint una dintre cele 2 n valori codate diferite, n mod normal - numerele ntregi de la 0 la 2 n -1. Uneori, codurile binare de n bii se trunchiaz, reprezentndu-se astfel mai puin de 2 n valori. De exemplu, n codul BCD, combinaiile de 4 bii de la 0000 la 1001 reprezint cifrele zecimale 1...9, iar combinaiile de la 1010 la 1111 nu sunt utilizate. Pentru semnalul de ieire, cel mai frecvent se utilizeaz un cod 1 din m, care conine m bii, n orice moment fiind confirmat unul dintre bii. Astfel, pentru un cod 1 din 4 cu valorile de ieire active n HIGH, cuvintele de cod sunt 0001, 0010, 0100 i 1000. Dac valorile de ieire sunt active n LOW, cuvintele de cod sunt 1110, 1101, 1011 i
0111. Circuite integrate digitale 1.3.1 Decodoare binare Cel mai comun circuit de decodare este decodorul cu n intrri i 2 n ieiri sau decodorul binar. La un asemenea decodor, codul de intrare este un cod binar de n bii, iar cel de ieire este un cod 1 din 2 n . Decodorul binar se folosete cnd este necesar activarea unei singure ieiri din 2 n posibile, corespunztor unei valori de intrare exprimate cu n bii. Pentru exemplificare, n figura 5-15(a) apar intrrile i ieirile unui decodor cu 2 intrri i
4 ieiri, iar tabelul 5-1 este tabelul de adevr care i corespunde. Cuvntul de cod de intrare I1,I0 reprezint un numr ntreg cuprins ntre 0 i
3. n cuvntul de cod de ieire Y3, Y2, Y1, Y0, Y i are valoarea 1 dac i
numai dac i corespunde cuvntul de cod de intrare ce reprezint numrul i n binar, iar intrarea de activare (enable) EN este 1. Dac EN este 0, toate valorile de ieire sunt 0. Circuitul la nivel de pori corespunztor decodorului cu dou intrri i
patru ieiri este cel din figura 5-15(b). Fiecare poart AND realizeaz decodarea cte unei combinaii cuvnt de cod de intrare I1, I0.
Figura 1-15 Decodor cu 2 intrri i 4 ieiri: (a) intrrile i ieirile; (b) schema logic Tabel 1-1 Tabelul de adevr pentru decodorul binar cu 2 intrri i 4 ieiri Intrri Ieiri EN I1 I0 Y3 Y2 Y1 Y0 0 1 1 1 1 x 0 0 1 1 x 0 1 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0
Codul de intrare al unui decodor binar de n bii nu trebuie s reprezinte neaprat numere ntregi ntre 0 i
2 n -1. Nu este necesar nici s se foloseasc toate ieirile unui decodor, i nici s se decodeze toate combinaiile de intrare posibile. De exemplu, un decodor zecimal sau BCD decodeaz numai primele zece combinaii de intrare binare, de la 0000 la 1001, pentru a genera valorile de ieire YO...Y9. Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found. 1.3.2 Decodorul dublu cu dou intrri i patru ieiri 74x139 Componenta MSI 74x139 conine dou decodoare cu dou intrri i patru ieiri, independente i
identice. Schema la nivel de pori a acestui CI este cea din figura 5-16(a). Circuitul 139 are ieirile i
intrarea de activare active n LOW. Majoritatea decodoarelor MSI au fost concepute iniial cu ieirile active n LOW deoarece porile TTL inversoare sunt, n general, mai rapide dect cele neinversoare. Circuitul 139 mai are nite inversoare suplimentare pe intrrile de selectare. n absena acestora, la fiecare intrare de selectare ar fi conectate trei sarcini de c.a. sau c.c., n loc de una singur, crescnd din aceast cauz solicitarea asupra dispozitivului care comand intrarea respective, din punctul de vedere al parametrului fanout. n figura 5-16(b) apare un simbol logic al circuitului 74x139. Remarcai c toate denumirile semnalelor din interiorul conturului simbolului sunt active n HIGH (nu au sufixul L) i
c prin cerculeele inversoare se arat c intrrile i ieirile sunt active n LOW.
Figura 1-16 Decodorul dublu cu dou intrri i patru ieiri 74x139: (a) schema logic, inclusiv numerotarea pinilor la o capsul standard DIP cu 16 pini; (b) simbolul logic tradiional; (c) simbolul logic aferent unui singur decodor
Circuite integrate digitale Tabel 1-2 Tabelul de adevr pentru jumtate din decodorul dublu cu dou intrri i patru ieiri 74x139 Intrri Ieiri G_L B A Y3_L Y2_L Y1_L Y0_L 1 0 0 0 0 x 0 0 1 1 x 0 1 0 1 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1
1.3.3 Decodorul cu trei intrri i opt ieiri 74x138 74x138 este un decodor MSI cu 3 intrri i 8 ieiri. n figura 5-17 este prezentat schema circuitului la nivel de pori logice i simbolul lui. Ca i 74x139, 74x138 are ieirile active n LOW i trei intrri de activare (G1, G2A_L, G2B_L), oricare dintre acestea trebuind s fie confirmat pentru ca ieirea selectat s fie confirmat. Funcia logic a dispozitivului este simpl - o ieire este confirmat dac i numai dac decodorul este activat i ieirea respectiv este selectat. (ex.:Y5=G1G2AG2B CBA; Y5_L=G1G2A_LG2B_L CBA).
Tabel 1-3 Tabelul de adevr pentru decodorul cu 3 intrri i 8 ieiri 74x138 Intrri Ieiri G1 G2A_ L G2B_ L C B A Y7_ L Y6_ L Y5_ L Y4_ L Y3_ L Y2_ L Y1_ L Y0_ L 0 x x 1 1 1 1 1 1 1 1 x 1 x 0 0 0 0 0 0 0 0 x x 1 0 0 0 0 0 0 0 0 x x x 0 0 0 0 1 1 1 1 x x x 0 0 1 1 0 0 1 1 x x x 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1
Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found.
Figura 1-17 Decodorul cu 3 intrri i 8 ieiri 74x138: (a) schema logic, inclusiv numerotarea pinilor pentru capsula DIP cu 16 pini; (b) simbolul logic tradiional
Circuite integrate digitale
1.3.4 Conectarea n cascad a decodoarelor binare Pentru decodarea unor cuvinte de cod mai mari se pot utiliza mai multe decodoare binare conectate n cascad. n figura 5-18 se arat cum se pot combina dou decodoare cu 3 intrri i
8 ieiri pentru a obine un decodor cu 4 intrri i
16 ieiri. ntruct intrrile de activare ale dispozitivului 74x138 pot fi active att n HIGH, ct i
n LOW, exist posibilitatea activrii unui decodor sau a celuilalt n funcie de starea celui mai semnificativ bit de intrare. Decodorul din partea de sus a desenului (U1) este activat cnd N3 este 0, iar decodorul de jos (U2) este activat cnd N3 este 1. Pentru a prelucra cuvinte de cod chiar mai mari dect acestea, decodoarele binare se pot conecta n cascad ierarhic.
Figura 1-18 Schema unui decoder cu 4 intrri i 16 ieiri, realizat cu decodoare 74x138 conectate n cascad
Metode de proiectare a circuitelor logice combinaionaleError! Reference source not found. 1.3.5 Decodoare pentru apte segmente Privii la ncheietura minii i vei vedea, probabil, un afior cu apte segmente. Acest tip de afiare, la care se utilizeaz, n mod normal, diode luminescente (LED) sau elemente de afiare cu cristale lichide (LCD), se folosete la ceasuri, calculatoare i instrumente care afieaz date numerice. O cifr apare cnd se lumineaz o submulime a celor apte segmente prezentate n figura 5-19(a).
Figura 1-19 Afiare cu apte segmente: (a) notarea segmentelor; (b) cifrele zecimale Un decodor pentru apte segmente are drept cod de intrare un cod BCD de 4 bii i drept cod de ieire, codul de apte segmente din figura 5-19(b). n figura 5-20 i n tabelul 5-4 apar schema logic i, respectiv, tabelul de adevr aferente unui decodor pentru apte segmente 74x49. Cu excepia conexiunii corespunztoare intrrii de tergere (blanking), BI_L, fiecare dintre ieirile unui 74x49 este implementarea unor sume de produse minimale corespunztoare segmentului respectiv, considernd c pentru combinaiile de intrare ce nu reprezint cifre zecimale valorile sunt indiferente. Structura NOT-OR-AND, utilizat pentru fiecare ieire, poate prea puin mai ciudat, dar este echivalent, cu o poart AND-OR-NOT, care are o structur suficient de rapid i de compact pentru a fi folosit n CMOS sau TTL. Majoritatea elementelor de afiare moderne cu apte segmente au ncorporate decodoare, astfel ca unui asemenea dispozitiv i se poate aplica direct un cuvnt BCD de 4 bii. Multe dintre decodoarele discrete cu apte segmente mai vechi sunt dotate cu ieiri speciale pentru valori mari de tensiune sau de curent, adecvate comandrii elementelor de afiare de dimensiuni i