Sunteți pe pagina 1din 34

CAPITOLUL 6

CIRCUITE LOGICE COMBINAIONALE (17.05.2004)


Sunt circuite cu n intrri, m ieiri la care vectorul variabilelor logice de ieire depinde numai de valoarea momentan a vectorului variabilelor logice de intrare. Se fabric ca i circuite integrate distincte sau sunt incluse n sisteme numerice integrate pe scar larg.

6.1. DECODIFICATORUL (DCD)


Funcie Servete la identificarea unui cod de intrare cu n bii prin activarea unei singure ieiri (din cele m) corespunde codului de intrare. Fiecare ieire corespunde unei anumite combinaii a valorilor de intrare. n general ntre n i m exist relaia m = 2n, dar exist i DCD la care m < 2n. n schema bloc din figura 6.1, vectorul intrrilor este format din cele n linii notate x0, x1, ... xn-1, iar vectorul ieirilor (active SUS n varianta a, respectiv active JOS n varianta b) din liniile y0, y1, ..., ym-1. En este o intrare de validare care poate inhiba simultan toate ieirile DCD. n tehnologie CMOS, n seria 4000 ieirile DCD disponibile sunt fie active SUS, fie active JOS, iar n tehnologie TTL (implicit i n seriile CMOS rapide 74HC, 74LV, etc) ieirile DCD sunt active JOS.

a.

b.

Figura 6.1. Schema bloc pentru un decodificator n:m cu validare, a ieirile active SUS, b ieirile active JOS.

Cel mai simplu DCD are o intrare i o ieire, fiind realizat cu un inversor (figura 6.2). Un DCD 2:4 necesit 4 pori I-NU i dou inversoare, ieirile fiind active JOS.

a.

b.

Figura 6.2. DCD simple schema electric, a DCD 1:2, ieiri active SUS, b DCD 2:4, ieiri active JOS.

95

Schema electric pentru un DCD 3:8 necesit 8 pori I-NU cu cte 3 intrri (figura 6.3). Intrrile se aplic prin perechi de inversoare pentru a asigura ca fiecare intrare s reprezinte o singur sarcin (TTL). Schema se poate completa cu un circuit de validare (figura 6.4). Dac circuitul nu este validat, toate ieirile DCD sunt n starea 1. Pentru validare este necesar ca E2 = 1, E1A = E2B = 0.

Figura 6.3. Structura unui DCD 3:8.

Fiecrei ieiri i corespunde un circuit I-NU, ceea ce face ca ieirile circuitului s fie active pe 0. Acest lucru nseamn c ieirea activat este pe 0 iar toate celelalte ieiri sunt pe 1. De exemplu: pentru x0 = 1, x1 = 0, x2 = 1, ieirea y5 = E 2 E 1a E 1b ( x2 x1 x0 ) este pe 0 i toate celelalte sunt 1. Decodificatorul din figura 6.4 realizat n tehnologie TTL (74LS138) este foarte rspndit n aplicaii datorit versatilitii oferite de validarea multipl.

Figura 6.4. Un DCD 3:8 foarte rspndit, 74LS138.

6.1.1. Alte tipuri de decodificatoare


Principalele DCD realizate n tehnologie TTL sunt (figura 6.5): 74LS42 DCD care servete pentru decodificarea cifrelor zecimale de la 0,..,9, codificate binar. Aici m < 2n (DCD 4:10), fr intrare de validare.

96

74LS139 conine dou decodificatoare binare 2:4 complet independente, fiecare decodificator avnd n = 2 i m = 4 i are o intrare de validare proprie activ pe 0. 74LS138 DCD 3:8 conine un DCD 3:8 avnd n = 3 i m = 8 i are 3 intrri de validare active pe 0 (2), respectiv pe 1 (o intrare). 74LS154 decodificator binar avnd n = 4 i m = 16 (DCD 4:16).

Figura 6.5. DCD n tehnologie TTL.

Principalele DCD realizate n tehnologie CMOS sunt (figura 6.6): 4555 conine dou DCD 2:4 independente cu ieirile active SUS, fiecare avnd n = 2 i m = 4, o intrare de validare proprie activ JOS. 4556 conine dou DCD 2:4 independente cu ieirile active JOS, fiecare avnd n = 2 i m = 4, o intrare de validare proprie activ JOS. 4028 DCD 4:10 avnd n = 4 i m = 10, cu ieiri active SUS fr nici o intrare de validare. 4514 DCD 4:16 cu ieiri active SUS, intrare de validare activ JOS, avnd n = 4 i m = 16. 4515 DCD 4:16 cu ieiri i intrare de validare active JOS, avnd n = 4 i m = 16.

Figura 6.6. DCD n tehnologie CMOS.

O categorie aparte de decodificatoare sunt utilizate pentru comanda afiajelor cu 7 segmente (figura 6.7). n tehnologie CMOS se fabric circuitele 4511 i 4513, cu 4 intrri i 7 ieiri, iar n tehnologie TTL se produc circuite pereche (74LS47 i 74LS247 pentru afiaje cu anod comun, respectiv 74LS48 i 74LS248 pentru circuite cu catod comun). 4511 este un latch, decodificator i etaj de ieire capabil s furnizeze la ieire un curent de 25 mA, potrivit pentru comanda afiajelor cu catod comun (LED). Poate afia doar cifrele 0...9, pe care le poate i memora de altfel.

97

4543 este un latch, decodificator i etaj de ieire capabil s furnizeze la ieire un curent de 25 mA, potrivit pentru comanda afiajelor cu catod comun (LED), dac PH = 1 logic, a afiajelor cu anod comun (LED), dac PH = 0 logic, respectiv a afiajelor cu cristale lichide (LCD). Poate afia doar cifrele 0...9, pe care le poate i memora de altfel. 74LS47 i 74LS247 sunt decodificatoare realizate pentru comanda afiajelor cu anod comun, care pot afia 16 combinaii (cifrele 0...9 i alte 5 semne, plus afiaj stins). 74LS48 i 74LS248 sunt decodificatoare realizate pentru comanda afiajelor cu catod comun, care pot afia 16 combinaii (cifrele 0...9 i alte 5 semne, plus afiaj stins).

Figura 6.7. DCD binar 7 segmente.

6.1.2. Extinderea capacitii de decodificare


Extinderea capacitii este una din cele mai comune probleme din aria de utilizare a circuitelor integrate digitale, aplicabil practic la toate tipurile de circuite logice: decodificatoare, codificatoare, multiplexoare, numrtoare, memorii, etc. Pentru decodificatoare extinderea tipic se realizeaz dup schema din figura 6.8, n care U4A este utilizat pentru validarea unui singur DCD dintre U0 - U3, n funcie de combinaia variabilelor x4, x3.

Figura 6.8. Obinerea unui DCD 5:32 cu validare.

98

Combinaiile variabilelor x4 - x0 sunt prezentate n tabelul 6.1. nEN este o intrare global de validare; pentru nEN = 1, toate ieirile sunt inactive (1 logic). De obicei x4 - x0 sunt bii de adres, rangurile mai semnificative fiind utilizate pentru selecia decodificatorului activ (x4 x3 selecteaz U0 U3), iar rangurile mai puin semnificative o anumit ieire dintr-un DCD (x2 x0 selecteaz una din cele 8 ieiri ale unui DCD). Versatilitatea intrrilor de validare de la 74LS138 permite o implementare mai simpl a extinderii (figura 6.9), prin utilizarea unui circuit inversor i renunarea la posibilitatea validrii globale. Tabelul 6.1 nE 1 0 0 . 0 0 . 0 0 . 0 0 . 0 x4 x 0 0 . 0 0 . 0 1 . 1 1 . 1 Funcionarea DCD 5:32 cu validare x3 x2 x1 x0 DCD Ieire activ X x x x 0 0 0 0 U0 nY0 0 0 0 1 U0 nY1 . . . . . . 0 1 1 1 U0 nY7 1 0 0 0 U1 nY8 . . . . . . 1 1 1 1 U1 nY15 0 0 0 0 U2 nY16 . . . . . . 0 1 1 1 U2 nY23 1 0 0 0 U3 nY24 . . . . . . 1 1 1 1 U3 nY31

Figura 6.9. Obinerea unui DCD 5:32, varianta a II-a.

99

ntr-un microsistem DCD se utilizeaz la selecia diferitelor circuite integrate sau porturi. Un circuit complex (port) poate rspunde la mai multe adrese adiacente (de exemplu circuitul Intel 8255 are o intrare de selecie circuit nCS i dou linii de adres A0 i A1, coninnd astfel 4 porturi 3 de date i unul de comand). Decodificarea adreselor se poate face complet, caz n care toate liniile de adres ajung la DCD sau incomplet doar o parte din liniile de adres i sau adrese sunt decodificate. Exemplele din figurile 6.8 i 6.9 sunt decodificri complete, pe cnd cea din figura 6.10 este incomplet.

Figura 6.10. Decodificare incomplet a magistralei de adrese ntr-un microsistem.

Tabelul 6.2 Decodificare complet i incomplet cu explicarea spaiului de adresare


nEN 1 0 0 0 0 0 0 0 0 . 0 0 0 . 0 A7 X 0 0 0 0 1 1 1 1 . 1 1 1 . 1 A6 X 0 0 1 1 0 0 1 1 . 1 1 1 . 1 A5 X 0 1 0 1 0 1 0 0 . 0 1 1 . 1 A4 X X X X X X X 0 0 . 1 0 0 . 1 A3 X X X X X X X 0 0 . 1 0 0 . 1 A2 X X X X X X X 0 1 . 1 0 1 . 1 A1 X X X X X X X X X . X X X . X A0 X X X X X X X X X . X X X . X nCS nCS0 nCS1 nCS2 nCS3 nCS4 nCS5 nCS6 nCS7 . nCS13 nCS14 nCS15 . nCS21 Domeniu adresare 0x00 0x1F 0x20 0x3F 0x40 0x4F 0x60 0x7F 0x80 0x9F 0xA0 0xBF 0xC0 0xC3 0xC4 0xC7 . 0xDC 0xDF 0xE0 0xE3 0xE4 0xE7 . 0xFC 0xFF Exemple de trunchiere 0x00, 0x04,..., 0x1C 0x21, 0x25,..., 0x3D 0x42, 0x46,..., 0x5E 0x63, 0x67,..., 0x9F 0x81, 0x85,..., 0x9D 0xA3, 0xA7,..., 0xBF . . DCD 1 1 1 1 1 1 1, 2 1, 2 . 1, 2 1, 3 1, 3 . 1, 3

6.1.3. Aplicaii ale decodoficatoarelor


1. Identificarea unui cod este chiar funcia fundamental a unui DCD. 100

2. Implementarea funciilor logice cu n variabile, unde n corespunde cu numrul de intrri de cod ale DCD. Implementarea funciilor logice folosind DCD este foarte avantajoas pentru c ieirile unui DCD binar reprezint termenii P din exprimarea canonic disjunctiv a funciilor logice. Numrul funciilor (de acelai numr de variabile binare) ce pot fi implementate nu este limitat dect de factorul de branament la ieire, ce corespunde ieirilor DCD. Exist dou variante de implementare: DCD i o poart I-NU, respectiv un DCD i o poart I. n primul caz la intrrile circuitului I-NU se conecteaz ieirile DCD ce corespund termenilor P cuprini n funcie. Pentru a doua variant, la intrrile circuitului I se conecteaz ieirile DCD ce corespund termenilor P necuprini n funcia F. Fie funcia F = P0 + P3 + P5. n acest caz n = 3 i se poate utiliza un DCD 3:8. Varianta DCD + I-NU

F = P0 + P3 + P5 = P0 P3 P5 = A B C A B C A B C
Varianta DCD + I

F = P1 + P2 + P4 + P6 + P7 , adic F = P1 + P2 + P4 + P6 + P7 = P1 P2 P4 P6 P7

Figura 6.11. Implementarea de funcii cu DCD i pori.

Pentru reducerea numrului de circuite, n cazul funciilor de 3 variabile se utilizeaz varianta cu pori I-NU pentru funcii cu maxim 4 termeni P, iar varianta cu I atunci cnd numrul termenilor care nu apar n funcie este mai mic de 4. n tehnologie TTL circuitele I-NU se fabric cu 2, 3, 4, 8, 13 intrri, pe cnd circuitele I se fabric cu 2, 3, 4 intrri. 3. Comanda afiajelor cu 7 segmente. Schemele electrice din figurile 6.9 i 6.10 sunt evident incomplete, lipsind rezistoarele de limitare a curentului prin segmente. Acestea se conecteaz n serie cu ieirile DCD i au o valoare tipic de 330. n ambele figuri este redat situaia afirii semnului corespunztor la 11002 = 0x0C. Intrarea nLT (Lamp Test) activ JOS determin atunci cnd este trecut n 0 logic aprinderea tuturor segmentelor, permind astfel verificarea afiajului. nRBI (Ripple Blank Input) este intrarea de mascare a zerourilor nesemnificative, iar nRBO este ieirea corespunztoare. Pinul nRBO ofer i funcia suplimentar de tergere (BI Blanking Input) prin care se poate comanda stingerea tuturor segmentelor afiajului.

101

Figura 6.12. Afiaje cu anod comun comandate de circuitele TTL 74LS47, respectiv 74LS247.

Figura 6.13. Afiaje cu catod comun comandate de circuitele TTL 74LS47, respectiv 74LS247.

Figura 6.14. Afiaj cu trei cifre configuraie standard.

102

Figura 6.15. Afiaj cu trei cifre mascarea zeroului semnificativ.

Intrarea RBI permite stingerea zerourilor nesemnificative atunci cnd este conectat la ieirea RBO a decodificatorului de rang imediat adiacent.

Figura 6.16. Afiaj cu trei cifre testarea segmentelor.

Figura 6.17. Afiaj cu trei cifre cu zero n poziia cea mai puin semnificativ.

103

Figura 6.18. Afiaj cu trei cifre mascarea zeroului mai puin semnificativ.

Pentru un numr mai mare de cifre comandate se folosesc tehnici de multiplexare a afirii, care vor fi prezentate la x.x. 4. Utilizarea unui DCD 4:10 fr intrare de validare ca DCD 3/8 cu intrare de validare. Se realizeaz utiliznd intrarea de rang semnificativ, notat x3, D sau A3 ca intrare de validare activ jos (nEN). Se pot folosi doar ieirile nY0 nY7 ale DCD. 5. Tem. S se proiecteze un circuit cu 4 intrri care s semnalizeze momentele n care exact una dintre intrri este 1 logic. Rezolvare: sunt necesare un DCD 4/16 cu ieiri active sus i o poart SAU cu 4 intrri.

6.2. DEMULTIPLEXORUL (DMUX)


Funcie. Asigur transmiterea datelor de la o singur surs de date la m receptoare succesive. Selecia receptorului se realizeaz printr-un cod de selecie de n = log 2 m bii.

Figura 6.20. Demultiplexorul schema bloc de utilizare.

Funcia definit anterior sugereaz posibilitatea de a folosi orice DCD care are cel puin o intrare de validare pentru realizarea unui DMUX. Modul n care un DCD 74LS138 devine DMUX i noua semnificaie a intrrilor este ilustrat n figura 6.21. Considernd codul de selecie A = 1, B = 1, C = 0, datele prezente la intrarea de date Di se vor regsi la ieirea L3 dac i numai dac circuitul este validat corect, deoarece L3 = (1 Di 1) ( A B C ) = Di . Datele transmise serial sufer dou inversri, deci ajung la receptorul selectat neinversate. n cazul n care Di se conecteaz la G1, datele ajung la receptoare complementate (dac G2 = Di i G1A = G1B = 0, atunci L3 = Di ).

104

Figura 6.21. Utilizarea unui DCD ca DMUX. a. fr inversare; b. cu inversare.

6.2.1. Extinderea capacitii de demultiplexare


Extinderea capacitii de demultiplexare se realizeaz similar cu extinderea decodificrii. De exemplu dou DCD 4:16 se pot folosi ca un DCD 5:32 sau DMUX cu 32 linii de ieire i cod de selecie de 5 bii.

6.2.2. Aplicaii
Comanda n impulsuri a unui motor de curent continuu cu punte H i DMUX. n acionrile electrice un motor de curent continuu se comand cel mai adesea modulnd n durat un semnal dreptunghiular de frecven fix. Tensiunea medie la bornele motorului este direct proporional cu factorul de umplere al semnalului PWM (pulse-width modulation) de comand. Aceast metod simpl permite variaia n limite largi a turaiei unui motor de curent continuu, dar nu i modificarea sensului de rotaie caz n care este necesar utilizarea unei puni H. O punte H se poate realiza i cu tranzistoare (bipolare sau MOS), dar n cazul cel mai simplu o punte integrat satisface cerinele pentru puteri mici-medii. TA 8050P este o punte H integrat cu tranzistoare bipolare produse de firma Toshiba, care are urmtoarele caracteristici: Comanda bidirecional a motorului de curent continuu; Patru moduri de operare: Direct, Invers, Stop i Frnare; Comanda se face cu nivelurid e tensiune TTL; curent comandat: 1,5 A; Tensiuni de alimentare recomandate cuprinse ntre 6 V i 16 V; Diode de protecie mpotriva tensiunii de autoinduse; Protecie integrat la: - Scurtcircuit; - Supranclzire; - Supratensiune; Capsul HSIP cu 7 pini. Schema tipic de utilizare este cea din figura 6.22, iar tabelul de funcionare 6.x.

105

Tabelul 6.x Intrare Di1 Di2 0 0 0 1 1 0 1 1 Comanda punii TA 8050P Ieire Mod de lucru M(+) M(-) OFF (HiZ) OFF (HiZ) Stop L H Invers H L Direct L L Frnare

Figura 6.22. Schema de aplicaie a punii H.

106

6.3. MULTIPLEXORUL (MUX)


Funcie. Permite transmiterea succesiv a datelor de la m surse de date la un receptor unic. n cazul general, un MUX este prevzut cu: m canale de date de intrare de cte b bii; un canal ieire pe b bii; un cod de selecie a canalului de intrare cu n bii unde n = log2 m; o intrare de validare a funcionrii.

Figura 6.24. Schema funcional a unui multiplexor i simbolul unui MUX 8:1.

Cel mai simplu MUX are 2 intrri i o ieire (figura 6.25.a). Un MUX 4:1 necesit 4 pori I-NU, o poart SAU i minim 3 inversoare (figura 6.25.b).

a.

b.

Figura 6.25. MUX simple schema electric, a MUX 2:1, b MUX 4:1.

6.3.1. Exemple de multiplexoare TTL


74LS151 (figura 6.26): Este un multiplexor cu m = 8 canale de intrare, n = log2 m = 3 linii de selecie i un canal de ieire de b = 1 bit. Ecuaia care descrie funcionarea MUX 74LS151 este:
7

Y = En I i Pi = EN [ I 0 ( S 0 S1 S 2 ) + I1 ( S 0 S1 S 2 ) + I 2 ( S 0 S1 S 2 ) + I 3 ( S 0 S1 S 2 ) +
i =0

+ I 4 ( S 0 S1 S 2 ) + I 5 ( S 0 S1 S 2 ) + I 6 ( S 0 S1 S 2 ) + I 7 ( S 2 S1 S 0 )]

107

Figura 6.26. MUX 74LS151.

74LS251: Are o structur asemntoare cu 74LS151 (m = 8, n = 3, b = 1), fa de care prezint ns urmtoarele deosebiri: ieirile Y i Y sunt de tip trei stri, validate de semnalul OE activ pe 0 (Output Enable), aa cum se poate observa n figura 6.27. Nu mai exist (i nici nu mai este necesar) intrarea En (nlocuit cu OE ). Dac OE = 1 , ambele ieiri sunt n stare de impedan ridicat HiZ. sunt circuite utilizate pentru conectare la magistrale

Figura 6.27. Ieirea multiplexorului 74LS251.

74LS157 (figura 6.28). Este un multiplexor cvadruplu 2:1 cu intrare de validare, avnd m = 4 canale, b = 2 bii, n = 1 bit. Funcionare: Dac En = 1 , liniile L1, L2 vor fi 0 logic, iar ieirile Y0,,Y3 vor fi de asemenea 0 logic. Dac En = 0 , porile P1, P2 funcioneaz pentru semnalul de selecie ca inversoare; pentru S = 0 sunt selectate intrrile I0a, I0b, I0c, I0d, iar pentru S = 1 sunt selectate intrrile I1a, I1b, I1c, I1d.

108

Figura 6.28. Multiplexor cvadruplu 2:1 cu intrare de validare, 74LS157.

Figura 6.29. Multiplexoare n tehnologie TTL.

Figura 6.30. Multiplexoare n tehnologie CMOS.

109

6.3.1. Extinderea capacitii de multiplexare


1. Extinderea numrului de canale m, fr modificarea numrului de bii b pe canal. 2. Extinderea numrului de bii b, fr modificarea numrului de canale m. 3. Extinderea numrului de canale m i a numrului de bii b pe canal.

6.3.2. Aplicaii ale multiplexoarelor


1. Transmiterea succesiv a datelor de la m surse de date la un singur receptor (aplicaia fundamental):

Figura 6.31. Multiplexor utilizat pentru transmisia succesiv a informaiei.

CNT este un numrtor binar modulo m. Cnd este activat, intrarea nCLR determin tergerea numrtorului. Aplicarea unui impuls de tact Clk determin incrementarea codului de la ieirea CNT. Se selecteaz astfel succesiv cele m = 2n canale de date, iar informaia prezent la intrare este transferat succesiv la receptorul Rx. 2. Conversia paralel-serie a unui cuvnt binar cu m bii Se folosete un MUX cu m canale de cte 1 bit. De exemplu pentru conversia paralel-serie a unui cuvnt binar se poate folosi MUX 74LS151. Cei 8 bii aplicai paralel la intrrile de date, apar succesiv la ieire, bit dup bit. Dup 8 impulsuri de tact (CK) la ieire se obine ntregul cuvnt, n form serial.

Figura 6.32. Conversia paralel serie cu MUX 74LS151.

110

3. Implementarea funciilor logice Spre deosebire de decodificator care permite teoretic implementarea unui numr ori ct de mare de funcii n acelai timp, multiplexorul are o singur ieire. Acest lucru permite implementarea doar a unei singure funcii logice (respectiv a valorii negate a acesteia). Se utilizeaz n acest scop multiplexoare care au b = 1. Pot fi implementate funcii cu un numr de variabile egale cu numrul de bii ai codului de selecie n. Implementarea se bazeaz pe relaia care exprima variabila de ieire Y n funcie de codul de selecie i datele de intrare. Exemplul 1. Fie F =P1 + P3 + P5 + P6. Se noteaz cu A, B, C intrrile aferente variabilelor binare.
7

Y = En I i Pi = En ( I 0 P0 + I1 P1 + I 2 P2 + I 3 P3 + I 4 P4 + I 5 P5 + I 6 P6 + I 7 P7 )
i =0

Pentru ca la ieirea Y s se gseasc funcia F, se dau urmtoarele valori intrrilor: I1 = I3 = I5 = I6 = 1, I0 = I2 = I4 = I7 = 0 Dac se dorete utilizarea ieirii Y , se pun pe 0 intrrile Ii care corespund termenilor P existeni n funcie i pe 1 intrrile Ii ce corespund termenilor P care lipsesc din funcie. n exemplul de mai sus, pentru ca Y = F se dau urmtoarele valori intrrilor: I1 = I3 = I5 = I6 = 0, I0 = I2 = I4 = I7 = 1.

Figura 6.33. Implementarea unei funcii cu MUX.

Exemplul 2. n afar de situaia descris anterior, este de menionat c este posibil implementarea unei funcii de n + k variabile binare cu ajutorul unui multiplexor cu n bii ai codului de selecie, dac numrul termenilor P din funcia F nu depete numrul canalelor de intrri m. Pentru 74LS151: codul de selecie fiind pe 3 bii, k = 1 - ceea ce corespunde la 4 variabile de intrare, iar numrul termenilor P trebuie s fie cel mult egal cu 8.

Figura 6.34. Implementarea unei funcii cu multiplexor varianta a II-a.

111

Fie F= P2 + P3 + P11 + P12 + P15. Este o funcie de 4 variabile, dar implementarea se poate face cu un multiplexor avnd n = 3 deoarece numrul termenilor P este mai mic dect m = 23 = 8. Se rescrie funcia:
' ' ' F = ABC D + ABC D + ABC D + A BCD + ABCD = D.( P2 + P3' ) + D.( P3' + P4 + P7 )= ' ' ' ' ' ' = P2 .D + P3' ( D + D ) + P4 D + P7 D = P2 D + P3' + P4 D + P7 D

Dac se folosete 74LS151 i ieirea Y, la intrrile de date se aplic: I0 = I1 = I5 = I6 =0, I2 = D , I3 = 1, I4 = D, 0, D7 = D, iar En = 0 (figura 6.34).

6.4. CODIFICATORUL (CD)


CD furnizeaz la ieire un cod de n bii corespunztor aceleia dintre cele m intrri ale sale care este activat (numrul de linii intrri este m, iar numrul biilor codului de ieire este n). n situaia n care fiecrei linii de intrri i corespunde un cod distinct este valabil relaia: n log2 m. Exemplificarea structurii interne a unui codificator se face considernd codificarea binar a cifrelor zecimale 0,, 9. n acest caz sunt necesare m = 10 intrri iar numrul de bii ai codului de ieire este n log2 10 = 3,33. Numrul de bii trebuie s fie un numr ntreg i deci n 4. Reprezentarea simbolic a unui astfel de CD este:

Figura 6.35. Schema bloc a unui codificator BCD.

4 bii sunt suficieni pentru codificarea a 16 intrri. 6 dintre codurile valorilor logice posibile nu se vor utiliza. Presupunem ca din cele 16 se aleg primele 10 coduri n ordine natural cresctoare. Rezult tabelul de funcionare 6.3. Tabelul 6.3 Funcionarea codificatorului BCD Linia activ Y3 Y2 Y1 Y0 0 0 0 I0 0 1 0 0 0 I1 0 1 0 0 I2 1 1 0 0 I3 0 0 1 0 I4 1 0 1 0 I5 0 1 1 0 I6 1 1 1 0 I7 0 0 0 1 I8 1 0 0 1 I9 Funciile binare ce corespund celor 4 ieiri sunt:

Y3 = I 8 + I 9 Y2 = I 4 + I 5 + I 6 + I 7 Y1 = I 2 + I 3 + I 6 + I 7 Y0 = I1 + I 3 + I 5 + I 7 + I 9
n aceste funcii nu intervine I0 - dac intrrile I1,....I9 sunt inactive (0), codul de ieire trebuie s fie 0.

112

Dezavantajul principal al codificatoarelor (denumite neprioritare) este c nu funcioneaz corect n situaii n care se activeaz simultan dou sau mai multe intrri. Dac se activeaz de exemplu simultan intrrile I6 i I9, atunci codul de ieire este 1 1 1 1. CD se pot utiliza n aplicaii n care nu sunt activate simultan dou sau mai multe intrri. Codificatoarele nu se fabric ca i circuite integrate distincte, ele fac parte din circuite mai complexe.

Figura 6.36. Schema electric a codificatorului BCD.

6.4.1. Codificatoare prioritare


Codificatoarele prioritare (CDP): nltur dezavantajele CD (neprioritare) CDP se fabric i sub forma unor CI distincte, dar pot fi integrate ca subcircuite. n cazul activrii simultane a dou sau mai multe intrri furnizeaz la ieire codul corespunztor intrrii cu cea mai mare prioritate dintre cele activate. Codificatoarele prioritare asigur atribuirea unor prioriti intrrilor. Uzual intrarea cu indice mai mare este prioritar fa de intrrile cu indicele mai mic. n cazul activrii simultane a dou sau mai multe intrri, codul de ieire va corespunde intrrii cu prioritate maxim. n cazul CDP prioritatea scade cu scderea indicelui intrrii. Gradul de prioritate al intrrii se stabilete prin structura circuitului integrat. Reprezentarea simbolic pentru CDP cu m = 8, n = 3 bii: EI valideaz funcionarea circuitului. EO este utilizat pentru validarea intrrii EI a unui circuit similar cu intrri avnd prioritate imediat inferioar (atunci cnd se dorete extinderea numrului de intrri, de exemplu de la 8 la 16).

Figura 6.37. Schema bloc a codificatorului prioritar.

EI Enable Input - valideaz circuitul. EO Enable Output (ieire de validare), care este activ cnd CDP este validat (EI = 1) i cnd nici una dintre intrrile I0, I1, ...,I7 nu este activat

113

EO este utilizat pentru validarea unui alt circuit similar cu acesta, cu grad de prioritate mai mic, n cazul n care nu este activat nici o intrare I0, I1, ...,I7. Circuitul validat corespunde unor intrri cu prioritate inferioara lui I0. EO = EI .( I 7 .I 6 ...I 0 ) Structura unui CDP: considerm un CDP cu 8 intrri i 3 ieiri. Prima etap o constituie reprezentarea tabelului de funcionare pentru un codificator neprioritar cu 8 intrri i un cod de ieire pe 3 bii. Tabelul 6.x Funcionarea codificatorului neprioritar Intrare Ieiri activ Y2 Y1 Y0 1 1 I7 1 0 1 1 I6 1 0 1 I5 0 0 1 I4 1 1 0 I3 0 1 0 I2 1 0 0 I1 0 0 0 I0

Y2' = I 7 + I 6 + I 5 + I 4 Y1' = I 7 + I 6 + I 3 + I 2 Y0' = I 7 + I 5 + I 3 + I1


Pentru a obine un CDP fiecrei intrri i se atribuie o anumit prioritate prin intermediul unei variabile intermediare Z. Folosind aceast substituire, funciile de ieire pentru CDP sunt:

Y2' = Z 7 + Z 6 + Z 5 + Z 4 Y1' = Z 7 + Z 6 + Z 3 + Z 2 Y = Z 7 + Z 5 + Z 3 + Z1
' 0

(6.1)

Z7 = I7 corespunde celei mai prioritare intrri; Z6 = I 7 .I 6 dac I7 nu este activat, I6 rmne cea mai prioritar intrare; Z5 = I 7 .I 6 .I 5 dac I7 i I6 nu sunt activate, I5 rmne cea mai prioritar intrare; nlocuind n (6.1) pe Z se obin funciile Y = f (Z), care apoi se minimizeaz.

Figura 6.38. Codificatoare prioritare TTL (74LS147 - BCD, 74LS148 - octal).

Exemplu de CDP frecvent utilizat: 74LS148 toate intrrile i ieirile sunt active pe 0 exist o intrare de validare nEI, activ pe 0

114

codul de ieire este pe 3 bii nEO va fi activ (pe 0) dac circuitul este validat i nici una dintre intrrile I0,,I7 nu este activat GS (group select) selecie de grup. Aceasta este activ dac circuitul este validat i cel puin una dintre intrrile circuitului este activ

EO = EI .( I 7 .I 6 ...I 0 )

GS = EI ( I 7 + I 6 + ... + I 0 )
6.4.2. Extinderea numrului de intrri la CDP
Dac se dorete un CDP cu 16 intrri, folosim dou CDP74LS148. a.) Circuitele 1 i 2 au intrri active pe 0. Dac circuitul 1 are cel puin o intrare activ

( EO1 = 1) , atunci circuitul 2 nu este validat. Codul de ieire va corespunde intrrii activate celei mai prioritare a circuitului 1. GS va fi 1. (de exemplu cnd cea mai prioritar intrare este I10 se obine la ieire codul Y3Y2Y1Y0 1010, Y3 = 1 deoarece EO1= 0).
b.) Dac circuitul 1 nu are nici o intrare activ ( EO1 = 0) , atunci circuitul 2 este validat. Dac una din intrrile circuitului 2 este activ, atunci GS=1 (dac de ex. nici una din intrrile I15,...,I8 nu este activ Y3=0, Y2, Y1, Y0 corespund intrrii celei mai prioritare a circuitului 2, de exemplu I5 : Y3Y2Y1Y0 0101 c.) Nici o intrare nu este activ. n aceast situaie ambele circuite sunt validate, dar neavnd nici o intrare activ, codul de ieire este Y3Y2Y1Y0 0 0 0 0, iar GS=0. Principala aplicaie a unui astfel de circuit l constituie arbitrarea ntreruperilor ntr-un microsistem. n funcionarea unui microsistem are loc prelucrarea informaiei ntr-o succesiune stabilit ntr-un program principal. Microsistemul este interconectat cu periferice. Programul principal poate fi ntrerupt printr-o solicitare din partea unui periferic. Solicitarea de ntrerupere pentru satisfacerea unei solicitri a perifericului are loc astfel: perifericul pune pe 0 linia de intrare care-i corespunde; se activeaz GS trecnd pe 1, atenionnd microsistemul c a fost cerut o ntrerupere. Microsistemul termin seciunea n lucru din programul principal i trece la deservirea ntreruperii. El citete codul de ieire al CDP, cod care determin pentru fiecare periferic adresa subrutinei de deservire a perifericului. Dup terminarea acestei subrutine, microsistemul revine la programul principal. Dac mai sunt i alte cereri, microsistemul le deservete n ordinea prioritii, pn cnd GS = 0.

115

Figura 6.39. Extinderea capacitii de codificare activarea intrrii 2.

Figura 6.40. Intrrile 2 i 7 activate simultan.

Figura 6.41. Intrrile 2, 7 i 14 activate simultan.

6.5. COMPARATORUL NUMERIC (CN)


Are funcia de a stabili valoarea relativ a dou numere binare, A i B, care au acelai numr de bii. Dac numrul de bii este b, CN are 2b intrri i n general, trei ieiri: Fe = 1 A = B (egal); Fs = 1 A > B (superior); Fi = 1 A < B (inferior).

116

Observaie: n unele circuite exist doar Fe i Fs, iar Fi se deduce. Pentru a analiza structura unui comparator se are n vedere comparatorul elementar pentru doi bii ak, bk, (rangul k al numerelor A i B). Un comparator pentru un numr de b bii se compune din b comparatoare elementare pentru numere de cte un bit (acelai bit pentru A i B) i din alte circuite combinaionale auxiliare.

6.5.1. Comparatoare elementare


Pentru a determina egalitatea dintre ak i bk se scrie relaia: f ek = a k bk + a k bk = a k bk + a k bk .

Figura 6.42. Comparator elementar pe 1 bit.

Pentru a obine fsk si fik se folosete cte un circuit I cu dou intrri, una din ele fiind complementat. Tabelul 6.1 Definirea funciilor fek, fsk i fik ak bk fek fsk fik 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 1 1 1 0 0

Figura 6.43. Obinerea funciilor fek, fsk i fik.

6.5.2. Comparatoare pe 4 bii


Fie numerele A i B, reprezentate pe 4 bii: A [A0, A1, A2, A3] i B [B0, B1, B2, B3]. a) Condiia de egalitate ntre A i B este ndeplinit atunci cnd toi biii de acelai rang din A i B au valori egale. n cazul discutat pentru 4 bii, aceast condiie se scrie:

Fe = f e3 f e 2 f e1 f e 0
b) Condiia de superioritate ntre 2 numere binare A i B (A > B), notat Fs se scrie astfel: A > B dac a3 > b3 SAU (a3 = b3 I a2 > b2) SAU (a3 = b3 I a2 = b2 I a1 > b1) SAU (a3 = b3 I a2 = b2 I a1 = b1 I a0 > b0), adic:

117

Fs = f s 3 + f e 3 f s 2 + f e 3 f e 2 f s1 + f e 3 f e 2 f e1 f s 0 c) Similar Fi = f i 3 + f e 3 f i 2 + f e 3 f e 2 f i1 + f e3 f e 2 f e1 f i 0
Dintre valorile Fe, Fs, Fi numai una este adevrat la un moment dat, iar Fe = Fs Fi , Fs = Fe Fi ,

Fi = Fs Fe . Comparatorul se poate realiza n consecin i cu dou ieiri Fe, Fs, iar Fi = Fe + Fs .


Evident Fi necesit un circuit combinaional suplimentar, ceea ce implic o diferen temporal ntre apariia Fe, Fs pe de o parte i Fi pe de alt parte. Dac acest defazaj este deranjant, o soluie simpl este ntrzierea cu un circuit neinversor (de exemplu o poart I) a ieirilor Fe i Fs. ' Implementarea lui Fe: Dac se realizeaz compararea pentru biii 0...3, Fe = 1.

Fe = f e 0 f e1 f e 2 f e3 Fe'

Figura 6.44. Obinerea funciei Fe.


' Implementarea lui Fs: Dac se compar biii 4...7, se face conectarea: Fs la Fs a circuitului anterior. ' ' Dac se compar biii 0...3, Fs se leag la 0 (similar Fi se leag la mas).

Fs = f s 3 + f e3 f s 2 + f e3 f e 2 f s1 + f e3 f e 2 f e1 f s 0 + f e3 f e 2 f e1 f e 0 Fs'

Figura 6.45. Obinerea funciei Fs.

6.5.3. Exemplu de comparator TTL

118

74LS85 este un comparator pentru dou numere binare de cte 4 bii. Are 3 intrri de interconectare Fe' , Fs' , Fi ' , destinate unui alt comparator cu semnificaie imediat inferioar.

Figura 6.46. Comparator integrat pe 4 bii, 74LS85.

6.5.4. Extinderea capacitii de comparare


Comparatorul 1 are influen asupra deciziei comparatorului 2, doar dac simultan A4 = B4, A5 = B5, A6 = B6, A7 = B7.

Figura 6.47. Comparator TTL pe 8 bii.

6.5.5. Aplicaie 74LS85 diagrame de semnal pentru comparatorul pe 8 bii

119

Figura 6.48. Funcionarea comparatorului pe 8 bii.

Figura 6.49. Diagrame de semnal pentru comparatorul din figura 6.48.

6.5.6. Comparator MSI pe 8 bii

Figura 6.50. Comparator complet pe 8 bii.

74LS682 are 2 x 8 intrri active pe 1 i dou ieiri Fe , Fs active pe 0.

120

6.5.7. Tem
Pentru un comparator de tip 74LS85 la care Fe = 1, s se completeze n diagrama de semnal de mai jos variaia Fe, Fi, Fs.

Figura 6.51. Diagrame de semnal.

6.6. DETECTORUL I GENERATORUL DE PARITATE SAU IMPARITATE


Este utilizat pentru detectarea erorilor de transmisie a informaiei binare. Funcia este un circuit logic combinaional care determina paritatea sau imparitatea numrului de variabile de intrare egal cu 1, genernd un bit de paritate sau imparitate. Un astfel de detector se bazeaz pe detectoare elementare de imparitate cu dou intrri (circuit SAU-EXCLUSIV). Tabelul 6.x Funcionarea porii SAU-EXCLUSIV ca generator de imparitate I1 I2 IMP 0 0 0 0 1 1 1 0 1 1 1 0 Structura detectorului poate fi n lan sau arborescent. a. Structura n lan. La aceasta structura trebuie s inem seama de: pentru n intrri sunt necesare n-1 circuite XOR timpul de propagare pe traseul critic: tp = (n - 1) tpXOR numrul de intrri n poate fi un numr par, ct i impar b. Structura arborescent. La aceast structur trebuie s inem seama de: pentru n intrri sunt necesare n - 1 circuite XOR; timpul de propagare tp = (log2 n) tpXOR este mai mic dect la structura n lan; numrul de intrri n trebuie sa fie un numr par.

Figura 6.52. Generator de imparitate din poarta SAU-EXCLUSIV.

121

Figura 6.53. Generator de imparitate cu structur n lan.

Figura 6.54. Generator de imparitate cu structur arborescent.

Orice detector de imparitate se poate transforma intr-unul de paritate prin folosirea unui inversor suplimentar. Astfel de circuite permit utilizatorului, n funcie de aplicaie, s aleag funcia ndeplinit, stabilind printr-un bit dac circuitul funcioneaz ca un detector de paritate sau imparitate.

Figura 6.55. Generator de paritate / imparitate selectabil. (P = 1 inversor P = 0 neinversor)

n prezent se folosesc: 74HC180 are 8 intrri; 2 ieiri PAR i IMPAR; 2 intrri de interconectare; structura arborescent; se folosete pentru detectarea erorilor de transmisie. 74LS280 are 9 intrri; 2 ieiri PAR i IMPAR structura in lan este folosit pentru detectarea erorilor de memorare ale unui cuvnt binar cu 8 bii. Verific dac informaia citit din memorie are aceeai paritate ca i cea nscris. n afar de cei 8 bii memoria trebuie s asigure i memoria de paritate. 0 1 2 3 4 5 6 7 P

122

n cazul unei linii de transmisie exista cmpuri electromagnetice care pot s modifice informaia trimis de la surs.
perturbatii 1 0 1 1 (1) (1) (1) (1) 1 0 1 1

S
sursa

R
rec eptor

I1 I2 I3 I4 p

C1 y
1 1

I1 I2 p I3 I4

C2 y

(1) 0 Eroare de transmisie

Generator impulsuri

Figura 6.56. Sistem de transmisie cu semnalizarea paritii.

6.7. SUMATORUL
Funcia: Efectuarea de operaii aritmetice (adunare sau scdere) cu dou numere binare avnd un numr egal de bii. Orice sumator pe mai muli bii este construit din sumatoare elementare pe un bit. Sumatoarele elementare pe un bit pot fi: semisumatoare (sumator pentru bitul zero), acest sumator elementar se caracterizeaz prin faptul c nu ine seama de transportul de la bitul cu semnificaie imediat inferioar. sumatoare complete pe un bit care in seama de transportul de la bitul cu semnificaie imediat inferioar.

6.7.1. Semisumatorul (sumatorul pentru bitul zero)


- intrrile celor dou numere pe un bit sunt reprezentate prin X 0 si Y0 ; - ieirile sunt: S 0 - (suma celor dou numere) i C1 - (Carry - transportul ctre bitul 1).

S 0 = X 0 Y0 + X 0 Y 0 = X 0 Y0 , iar C1 = X 0 Y0 .
Tabelul 6.x Funcionarea semisumatorului X0 0 0 1 1 Y0 0 1 0 1 C1 0 0 0 1 S0 0 1 1 0
Figura 6.57. Semisumator pe un bit.

123

6.7.2. Sumatorul complet pe un bit


Sumatorul complet pe un bit ine cont de transportul de la bitul de semnificaie imediat inferioar. Are intrrile: Xn, Yn, Cn i ieirile: Sn, Cn+1. Funcionarea sa se bazeaz pe tabelul de mai jos. Din tabel se deduc relaiile care descriu dependena ieirilor de intrri:

S n = X n Y n C n + X nYn C n + X n Y n C n + X nYn C n = C n X n Y n + X nYn + C n X nYn + X n Y n =

= C n X n Yn + C n X n Yn = C n X n Yn
= X n Yn + C n ( X n Yn )

C n +1 = X nYn C n + X n Y n C n + X nYn C n + X nYn C n = X nYn C n + C n + C n X nYn + X n Y n =


Prin implementarea relaiilor obinute anterior, se obine urmtoarea schem pentru un sumator complet de 1 bit. Dac se determin timpul de propagare de la intrri la ieiri se constat c:

t PS = 2 t p XCR = 2 3 t pSi NU t pC = t p XCR + t pSi + t pSAU = 6 t pSi NU

deoarece

t p XCR = 3 t pSi NU t pSi = t pSAU = 1,5 t pSi NU

Dac, pentru obinerea ieirii de transport, se folosete schema din dreapta, timpul de propagare se reduce la: t pC = 5 t pSi NU Tabelul 6.x Funcionarea sumatorului complet Xn 0 0 0 0 1 1 1 1 Yn 0 0 1 1 0 0 1 1 Cn 0 1 0 1 0 1 0 1 Cn+1 0 0 0 1 0 1 1 1 Sn 0 1 1 0 1 0 0 1

Figura 6.58. Sumator complet pe 1 bit, varianta 1.

124

Figura 6.59. Sumator complet pe 1 bit, varianta 2.

Se poate reduce n continuare, t pC prin minimizarea relaiei lui Cn+1 cu ajutorul diagramei VK. Relaia de definirea a lui Cn+1 este:

C n +1 = X nYn C n + X n Y n C n + X nYn C n + X nYn C n


0 1 2 Dac se consider X n = A = 2 , Yn = B = 2 , Cn = C = 2 , atunci diagrama VK este:

Se obine: C n +1 = X n Yn + Yn C n + X n C n , care conduce la urmtoarea schem pentru un sumator complet pe un bit:

Figura 6.60. Sumator complet pe un bit, varianta 3.

n acest caz timpul de propagare de la orice intrare la ieirea de transport este: t pC = 3 t pSi NU

6.7.3. Sumator cu transport succesiv 74LS83 (4 bii)


Schema acestui sumator pe patru bii cuprinde patru sumatoare complete pe un bit interconectate ca n figur:

125

Figura 6.61. 74LS83 schema funcional.

C 0 - Se pune la mas dac circuitul este folosit pentru nsumarea a dou numere cu 4 bii, deoarece nu
exist transport de la un bit cu semnificaie mai mic. Cnd se extinde numrul de bii folosind dou sau mai multe circuite conectate se face concordanta cu urmtoarea schem:

Figura 6.62. Extinderea capacitii de adunare.

Un astfel de sumator furnizeaz rezultatul final dup un timp ce corespunde generrii transportului Cn. Dac se consider la t = 0 | x y valorile care vor apare pentru sume i Carry nu sunt cele finale, este necesar ca s se compun timpii de ntrziere cu care sunt generate transporturile C1 , C 2 , C 3 , C n , numai dup aceast ntrziere suma S i transportul C n sunt corecte (transportul C4 apare cu o ntrziere de 4t pC ). Un astfel de sumator se numete sumator succesiv (dac suntem n cazul cel mai defavorabil fiecare sumator de un bit genereaz un transport 1 x 1 1 1 1 y 0 0 0 1 1 0 0 0 0 cu ct folosim mai multe sumatoare cu att t p e mai mare). Pentru a obine viteze mari e necesar ca ntrzierile s fie ct mai mici.

126

Figura 6.62. Extinderea sumatoarelor.

6.7.4. Aplicaie. Sumator folosit pentru scdere


Este necesar complementarea biilor scztorului: Intrarea de transport si ieirea de transport sunt interpretate ca intrare de mprumut. B n , B n +1 . In cazul sumatorului 83 avem nevoie de patru astfel de inversoare; C 0 se leag la 1 iar C n se considera Bn .

Figura 6.63. Sumator folosit pentru scdere.

6.7.5. Aplicaie. Sistem simplu de votare.


Un sumator de tipul 74LS83 adun numere binare n care fiecare bit are o anumit pondere. Pentru a aduna bii de aceeai pondere, de exemplu ntr-un sistem de votare este necesar utilizarea mai multor sumatoare pe un bit, cascadate, ca n figur. U1 i U2 vor aduna fiecare cte trei bii de pondere egal, conectai la intrrile A1, B1 i Cin. Cele dou sume pariale astfel obinute sunt folosite pentru calcularea sumei finale, cu ajutorul lui U3. Rezultatul final este afiat pe DISP1.

127

Figura 6.64. Sistem simplu de votare.

6.8. CONVERTOARE DE COD 6.8.1. Convertor de cod binar - cod Gray

6.8.2. Convertor de cod Gray - binar 6.8.3. Convertor de cod 7 segmente - binar

128

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