02 04 circuite logice decodoare
Post on 07-Sep-2015
236 Views
Preview:
TRANSCRIPT
-
Copyright Paul GASNERCopyright Paul GASNER
2. Circuite logice2. Circuite logice2.4. Decodoare. 2.4. Decodoare. MultiplexoareMultiplexoare
-
Copyright Paul GASNERCopyright Paul GASNER 2
DefiniiiDefiniiiUn decodor pe n bits are n intrri i 2n ieiri; cele n intrri reprezint un numr binar care determin n mod unic care dintre cele 2n ieiri este adevratUn decodor pe 2 bits opereaz dup tabela de adevr:
S1 S0 Q0 Q1 Q2 Q30 0 1 0 0 00 1 0 1 0 01 0 0 0 1 01 1 0 0 0 1
-
Copyright Paul GASNERCopyright Paul GASNER 3
Proiectare decodorului pe 2 bitsProiectare decodorului pe 2 bitsPornind de la tabela de adevr, simplificarea const n patru ecuaii iar circuitul decurge direct
S1 S0 Q0 Q1 Q2 Q30 0 1 0 0 00 1 0 1 0 01 0 0 0 1 01 1 0 0 0 1
Q0 = S1 S0Q1 = S1 S0Q2 = S1 S0Q3 = S1 S0
-
Copyright Paul GASNERCopyright Paul GASNER 4
Activarea decodoruluiActivarea decodoruluiMulte dispozitive au o intrare de activare, care permit sau nu funcionarea adecvat a dispozitivuluiPentru decodor:
EN=1 activeaz decodorul, acesta funcionnd n maniera prezentat mai sus, adic doar o singur ieire ia valoarea 1EN=0 dezactiveaz decodorul; prin convenie, toate ieirile au valoarea 0
sauEN S1 S0 Q0 Q1 Q2 Q30 0 0 0 0 0 00 0 1 0 0 0 00 1 0 0 0 0 00 1 1 0 0 0 01 0 0 1 0 0 01 0 1 0 1 0 01 1 0 0 0 1 01 1 1 0 0 0 1
EN S1 S0 Q0 Q1 Q2 Q30 x x 0 0 0 01 0 0 1 0 0 01 0 1 0 1 0 01 1 0 0 0 1 01 1 1 0 0 0 1
-
Copyright Paul GASNERCopyright Paul GASNER 5
NotaiiNotaiiDecodoarele sunt notate prin blocuri funcionaleDiagrama pentru decodorul pe 2 bits este
Nu conteaz ordinea intrrilor sau ieirilor, ci notaiile acestoraNu este necesar cunoaterea structurii interne, ci tabela de adevr sau ecuaiileSchema circuitelor hardware se simplific
Q0 = S1 S0Q1 = S1 S0Q2 = S1 S0Q3 = S1 S0
-
Copyright Paul GASNERCopyright Paul GASNER 6
Decodor pe 3 bitsDecodor pe 3 bitsQ0 = S2 S1 S0Q1 = S2 S1 S0Q2 = S2 S1 S0Q3 = S2 S1 S0Q4 = S2 S1 S0Q5 = S2 S1 S0Q6 = S2 S1 S0Q7 = S2 S1 S0
S2 S1 S0 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q70 0 0 1 0 0 0 0 0 0 00 0 1 0 1 0 0 0 0 0 00 1 0 0 0 1 0 0 0 0 00 1 1 0 0 0 1 0 0 0 01 0 0 0 0 0 0 1 0 0 01 0 1 0 0 0 0 0 1 0 01 1 0 0 0 0 0 0 0 1 01 1 1 0 0 0 0 0 0 0 1
-
Copyright Paul GASNERCopyright Paul GASNER 7
Aplicaii ale decodoarelorAplicaii ale decodoarelorDecodoarele sunt numite i generatoare de mintermeni
pentru fiecare combinaie de intrri, doar o singur ieire este adevratfiecare ecuaie la ieire prezint toate variabilele
Orice funcie poate fi implementat cu decodoare (dac funcia este deja scris ca sum de mintermeni, implementarea cu decodoare este imediat)
S1 S0 Q0 Q1 Q2 Q30 0 1 0 0 00 1 0 1 0 01 0 0 0 1 01 1 0 0 0 1
Q0 = S1 S0Q1 = S1 S0Q2 = S1 S0Q3 = S1 S0
-
Copyright Paul GASNERCopyright Paul GASNER 8
Exemplu: adunareaExemplu: adunareaS se proiecteze un circuit care s efectueze adunarea a trei numere de 1 bitSunt necesari 2 bits pentru a reprezenta suma: C i S (carry i sum)C i S vor fi dou funcii diferite cu variabilele X,Y i Z
X Y Z C S0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1 1 + 1 + 1 = 11
0 + 1 + 1 = 10 C(X,Y,Z) = m(3,5,6,7)S(X,Y,Z) = m(1,2,4,7)
-
Copyright Paul GASNERCopyright Paul GASNER 9
Sumator cu dou decodoare...Sumator cu dou decodoare...+5V semnific activarea decodorului
C(X,Y,Z) = m(3,5,6,7)S(X,Y,Z) = m(1,2,4,7)
-
Copyright Paul GASNERCopyright Paul GASNER 10
...sau cu un decodor...sau cu un decodor
C(X,Y,Z) = m(3,5,6,7)S(X,Y,Z) = m(1,2,4,7)
-
Copyright Paul GASNERCopyright Paul GASNER 11
Construcia decodorului pe 3 bitsConstrucia decodorului pe 3 bitsUn decodor pe 3 bits se poate realiza
pe baza tabelei de adevrdin decodoare pe 2 bits
Din tabel se poate observa ccnd S2=0, ieirile Q0-Q3 arat ca la un decodor pe 2 bitscnd S2=1, ieirile Q4-Q7 arat ca la un decodor pe 2 bits
S2 S1 S0 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q70 0 0 1 0 0 0 0 0 0 00 0 1 0 1 0 0 0 0 0 00 1 0 0 0 1 0 0 0 0 00 1 1 0 0 0 1 0 0 0 01 0 0 0 0 0 0 1 0 0 01 0 1 0 0 0 0 0 1 0 01 1 0 0 0 0 0 0 0 1 01 1 1 0 0 0 0 0 0 0 1
Q0 = S2 S1 S0 = m0Q1 = S2 S1 S0 = m1Q2 = S2 S1 S0 = m2Q3 = S2 S1 S0 = m3Q4 = S2 S1 S0 = m4Q5 = S2 S1 S0 = m5Q6 = S2 S1 S0 = m6Q7 = S2 S1 S0 = m7
-
Copyright Paul GASNERCopyright Paul GASNER 12
Construcie modularConstrucie modular
S2 S1 S0 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q70 0 0 1 0 0 0 0 0 0 00 0 1 0 1 0 0 0 0 0 00 1 0 0 0 1 0 0 0 0 00 1 1 0 0 0 1 0 0 0 01 0 0 0 0 0 0 1 0 0 01 0 1 0 0 0 0 0 1 0 01 1 0 0 0 0 0 0 0 1 01 1 1 0 0 0 0 0 0 0 1
-
Copyright Paul GASNERCopyright Paul GASNER 13
Tipuri de decodoareTipuri de decodoareDecodor activ-sus (active-high)
Decodor activ-jos (active-low) este un decodor activ-sus la care portul de activare i ieirile sunt inversate
EN S1 S0 Q0 Q1 Q2 Q30 x x 0 0 0 01 0 0 1 0 0 01 0 1 0 1 0 01 1 0 0 0 1 01 1 1 0 0 0 1
EN S1 S0 Q0 Q1 Q2 Q30 0 0 0 1 1 10 0 1 1 0 1 10 1 0 1 1 0 10 1 1 1 1 1 01 x x 1 1 1 1
-
Copyright Paul GASNERCopyright Paul GASNER 14
Tipuri de decodoare. UtilizriTipuri de decodoare. UtilizriDecodorul activ-sus genereaz mintermeni
Decodorul activ-jos genereaz maxtermeni
Q3 = S1 S0Q2 = S1 S0Q1 = S1 S0Q0 = S1 S0
Q3 = (S1 S0) = S1 + S0Q2 = (S1 S0) = S1 + S0Q1 = (S1 S0) = S1 + S0Q0 = (S1 S0) = S1 + S0
-
Copyright Paul GASNERCopyright Paul GASNER 15
Decodorul activ-josDecodorul activ-josOrice funcie poate fi implementat cu ajutorul decodoarelor active-jos ca produs de maxtermeni
-
Copyright Paul GASNERCopyright Paul GASNER 16
Decodorul. ConcluziiDecodorul. ConcluziiDecodorul pe n bits genereaz mintermenii (sau maxtermenii) unei fucii cu n variabileUna dintre utilizrile decodorului este implementarea oricrei funciiDecodoarele cu numr mare de intrri se pot obine din decodoare mai mici
-
Copyright Paul GASNERCopyright Paul GASNER 17
MultiplexoareMultiplexoareMultiplexoarele (mux) permit unei intrri s ajung la ieire conform unor semnale de controlUn multiplexor pe 2n-to-1 (2nx1) transmite una dintre cele 2n intrri la unica ieire:
inputs:2n intrri de daten intrri de comand (select)
o singur ieire de 1 bitBitul de control S selecteaz care dintre cele dou intrri D0 i D1 ajunge la ieire
dac S=0 atunci Q=D0dac S=1 atunci Q=D1
Q = S D0 + S D1
-
Copyright Paul GASNERCopyright Paul GASNER 18
Tabele de adevrTabele de adevr
Q = S D0 + S D1
S D1 D0 Q0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 01 0 1 01 1 0 11 1 1 1
Tabela de adevr a unui multiplexor are dimensiuni foarte mari, de aceea se impun anumite simplificri
Variabilele apar n coloana de ieireS Q0 D01 D1
-
Copyright Paul GASNERCopyright Paul GASNER 19
Multiplexor 4-to-1 (4x1)Multiplexor 4-to-1 (4x1)
Multiplexoarele au un port enable asemntor decodoarelorDe obicei, portul de activare este active-low i pentru EN'=1, toate ieirile multiplexorului sunt 1
EN S1 S0 Q0 0 0 D00 0 1 D10 1 0 D20 1 1 D31 x x 1
Q = S1 S0 D0 + S1 S0 D1 + S1 S0 D2 + S1 S0 D3
-
Copyright Paul GASNERCopyright Paul GASNER 20
Implementarea funciilor cu mux...Implementarea funciilor cu mux...O funcie cu n variabile poate fi implementat cu ajutorul unui multiplexor nx1:
pentru mintermenul mi, intrarea Di este conectat la 1; fiecrei date de intrare i corespunde o linie n tabela de adevrvariabilele funciei se conecteaz la intrrile de selecie ale multiplexorului
x y z f0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 01 0 1 01 1 0 11 1 1 1
f(x,y,z) = m(1,2,6,7)
-
Copyright Paul GASNERCopyright Paul GASNER 21
...sau, mai eficient...sau, mai eficientFuncia f(x,y,z) = m(1,2,6,7) poate fi implementat cu un mux 4x1 n locul unui mux 8x1:1. se construiete tabela e adevr i se grupeaz
liniile n perechi x i y sunt aceeai i funcia va depinde doar de z
pentu xy=00, f=z pentru xy=01, f=z pentru xy=10, f=0 pentru xy=11, f=1
2. primele dou variabile se conecteaz la intrrile de selecie
3. seconecteaz intrrile multiplexorului conform relaiilor de mai sus pentru f(z)
x y z f0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 01 0 1 01 1 0 11 1 1 1
-
Copyright Paul GASNERCopyright Paul GASNER 22
Exemplu: sumatorExemplu: sumatorSe implementeaz pentru nceput funcia carry de la adunare C(X,Y,Z) cu multiplexoareEste necesar un mux 4x1 (trei variabile)De obicei primele dou variabile se conecteaz la intrrile select
X Y Z C0 0 0 00 0 1 00 1 0 00 1 1 11 0 0 01 0 1 11 1 0 11 1 1 1
pentru S1=X i S0=Y se obine
Q=XYD0 + XYD1 + XYD2 + XYD3
-
Copyright Paul GASNERCopyright Paul GASNER 23
Funcia carryFuncia carryFixnd X i Z, funcia C(X,Y,Z) va depinde doar de Z
X Y Z C0 0 0 00 0 1 00 1 0 00 1 1 11 0 0 01 0 1 11 1 0 11 1 1 1
pentru XY=00, C=0
pentru XY=01, C=Z
pentru XY=10, C=Z
pentru XY=11, C=1
C = X Y D0 + X Y D1 + X Y D2 + X Y D3= X Y 0 + X Y Z + X Y Z + X Y 1= X Y Z + X Y Z + XY= m(3,5,6,7)
-
Copyright Paul GASNERCopyright Paul GASNER 24
Sumator cu multiplexor dualSumator cu multiplexor dualFuncia sum trebuie privit n acest caz ca avnd o singur ieire pe 2 bits i nu ca dou funcii separateUn mux dual 4-to-1 se noteaz mux 4x2
-
Copyright Paul GASNERCopyright Paul GASNER 25
Multiplexorul dual 4x2Multiplexorul dual 4x2
Ca i la mux 4x1, S1-S0 sunt utilizate pentru formarea perechilor intrrilor: 2D3 1D3, cnd S1 S0 = 11 2D2 1D2, cnd S1 S0 = 10 2D1 1D1, cnd S1 S0 = 01 2D0 1D0, cnd S1 S0 = 00
-
Copyright Paul GASNERCopyright Paul GASNER 26
Multiplexorul. ConcluziiMultiplexorul. ConcluziiMultiplexorul trimite la ieire intrarea selectatCa i decodorul servete la implementarea funciilor booleeneMultiplexoarele pot fi combinate pentru a obine multiplexoare de dimensiuni mai mari
top related