420 likes | 664 Views
LOGIČKE STRUKTURE. kombinacione i sekvencijalne. KOMBINACIONE STRUKTURE. Primjena kombinacionih struktura. usmjeravanje podataka iz jednog od više mogućih izvora do jednog odredišta, obavljanje aritmetičkih i logičkih operacija, pretvaranje kodova, i kompresija i ekspanzija podataka.
E N D
LOGIČKE STRUKTURE kombinacione i sekvencijalne
Primjena kombinacionih struktura • usmjeravanje podataka iz jednog od više mogućih izvora do jednog odredišta, • obavljanje aritmetičkih i logičkih operacija, • pretvaranje kodova, i • kompresija i ekspanzija podataka
Procedura projektovanja • izvršiti postavku problema, • identifikacija i imenovanje ulaznih i izlaznih promjenjivih, • povezivanje izlaznih promjenjivih sa ulaznim (preko tabela istine ili logičkih izraza), • minimizacija Booleovih funkcija, • crtanje šema, i • realizacija.
ULAZI IZLAZI X Y S C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 Polusabirač (engl. HA od - Half Adder) S = X'Y + XY' C = XY
ULAZI IZLAZI X Y Z S C 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Puni sabirač (engl. FA od - Full Adder) S = X'Y'Z + X'YZ' + XY'Z' + XYZ = = X'Y'Z + X'YZ' + X(Y'Z' + YZ) = = X'(Y'Z + YZ') + X(Y'Z' + YZ) = = XYZ C = X'YZ + XY'Z + XYZ' + XYZ = = Z(XY)+XY
ULAZI IZLAZI X Y D B 0 0 0 0 0 1 1 1 1 0 1 0 1 1 0 0 Poluoduzimač (engl. HS od - Half Substractor) D = X'Y + XY' = XY B = X'Y
ULAZI IZLAZI X Y Z D B 0 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 Puni oduzimač (engl. FS od - Full Substractor) D = X'Y'Z + X'YZ' + XY'Z' + XYZ = XYZ B = X'Y'Z + X'YZ' + X'YZ + XYZ
STANDARDNI KOMBINACIONI BLOKOVI • MULTIPLEKSER • DEMULTIPLEKSER • DEKODERI • KODERI • ROM • PAL/PLA • PARALELNI BINARNI SABIRAČ • BAREL-ŠIFTER • ARITMETIČKO-LOGIČKA JEDINICA
ULAZ IZLAZ S1 S0 Y 0 0 I0 0 1 I1 1 0 I2 1 1 I3 MULTIPLEKSER
/E S1 S0 Y 1 X X Z = 0 0 0 I0 0 0 1 I1 0 1 0 I2 0 1 1 I3 MUX sa /E upravljačkim ulazom
I U0 U1 U2 U3 U4 U5 U6 U7 a3’ m0 m1 m2 m3 m4 m5 m6 m7 a3 m8 m9 m10 m11 m12 m13 m14 m15 MUX i realizacija Booleovih funkcija (npr. sa 4 varijable) Ako su ispod oznake ulaza zaokruženi: a) oba minterma, na odgovarajući ulaz se dovodi "1", b) samo gornji minterm, na odgovarajući ulaz se dovodi a3', c) samo donji minterm, na odgovarajući ulaz se dovodi a3, i d) nijedan minterm, na odgovarajući ulaz se dovodi "0".
ULAZI IZLAZI /E S1 S2 D0 D1 D2 D3 1 X X 1 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 1 0 1 0 1 1 0 1 0 1 1 1 1 1 0 DEMULTIPLEKSER
Realizacija DEMUX-a Kada se ulaz koristi kao /E (enable) signal, ovaj sklop radi kao dekoder.
ULAZI IZLAZI /E A B I0 I1 I2 I3 1 X X 1 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 1 0 1 0 1 1 0 1 0 1 1 1 1 1 0 DEKODERI
Dekoderi i Booleove funkcije • Izlazi iz dekodera predstavljaju minterme ulaznih signala • puni sabirač se može realizovati kao: S = S(1,2,4,7) C = S(3,5,6,7)
ULAZI IZLAZI I3 I2 I1 I0 A B 0 0 0 1 0 0 0 0 1 0 0 1 0 1 0 0 1 0 1 0 0 0 1 1 KODERI
ULAZI IZLAZI I3 I2 I1 I0 A B 0 0 0 1 0 0 0 0 1 X 0 1 0 1 X X 1 0 1 X X X 1 1 Koder prioriteta
Pi i Gi • Pi (= Ai Bi ) je propagator prenosa koji, kada je samo jedan od ulaza u “1”, omogućava ulaznom prenosu Ci da “propagira” na izlazni Ci+1 • Gi (= AiBi ) je generator prenosa jer “generiše” prenos Ci+1 kada su oba ulaza u “1”.
C4 i bez C3 !!! Logičke jednačine izlaznih signala postaju: Si = Pi Ci Ci+1 = PiCi + Gi pa je C1 = G0 + P0C0 C2 = G1 + P1C1 = G1 + P1(G0 + P0C0 ) = G1 + P1G0 + P1P0C0 C3 = G2 + P2C2 = G2 + P2(G1 + P1G0 + P1P0C0) = G2 + P2G1 + P2P1G0 + P2P1P0C0 C4 = G3 + P3C3 = G3 + P3(G2 + P2G1 + P2P1G0 + P2P1P0C0) C4 je moguće realizovati sa dva nivoa logičkih kola. C4 = G3 + P3G2 + P3P2G1 + P3P2P1G0 + P3P2P1P0C0
S2 S1 S0 Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0 0 0 0 D7 D6 D5 D4 D3 D2 D1 D0 0 0 1 D6 D5 D4 D3 D2 D1 D0 D7 0 1 0 D5 D4 D3 D2 D1 D0 D7 D6 0 1 1 D4 D3 D2 D1 D0 D7 D6 D5 1 0 0 D3 D2 D1 D0 D7 D6 D5 D4 1 0 1 D2 D1 D0 D7 D6 D5 D4 D3 1 1 0 D1 D0 D7 D6 D5 D4 D3 D2 1 1 1 D0 D7 D6 D5 D4 D3 D2 D1 Kombinaciona struktura!
Logičke jednačine kod rotiranja Q0 = S2’S1’S0’D0 + S2’S1’S0D7 + S2’S1S0’D6 + S2’S0S1D5 + S2S1’S0’D4 + S2S1’S0D3 + S2S1S0’D2 + S2S1S0D1 Q1 = S2’S1’S0’D1 + S2’S1’S0D0 + S2’S1S0’D7 + S2’S0S1D6 + S2S1’S0’D5 + S2S1’S0D4 + S2S1S0’D3 + S2S1S0D2 i tako dalje, do Q7 = S2’S1’S0’D7 + S2’S1’S0D6 + S2’S1S0’D5 + S2’S0S1D4 + S2S1’S0’D3 + S2S1’S0D2 + S2S1S0’D1 + S2S1S0D0 ako se ne vrši rotiranje – sklop je jednostavniji
Struktura barel-šiftera koji pomjera ulijevo, a na ostala mjesta upisuje nule
F1 F0 IZLAZ 0 0 A B 0 1 A V B 1 0 /B 1 1 A+B Tabela istine ALU
S3 S2 S1 S0 M=1 M=0 C0=1 M=0 C0=0 0 0 0 0 A’ A A+1 0 0 0 1 (AB)’ AB (AB’)+1 0 0 1 0 A’ B AB’ (AB’)+1 0 0 1 1 0 -12kk 0 0 1 0 0 (AB)’ A+(AB)’ A+(AB)’+1 0 1 0 1 B’ (AB)+( AB’) (AB)+( AB’)+1 0 1 1 0 AB A-B-1 A-B 0 1 1 1 AB’ (AB’)-1 AB’ 1 0 0 0 A’B A+(AB) A+( AB)+1 1 0 0 1 (AB)’ A+B A+B+1 1 0 1 0 B (AB’)+( AB) (AB’)+( AB)+1 1 0 1 1 AB (AB)-1 AB 1 1 0 0 1 A+A<-1 A+A<-1+1 1 1 0 1 AB’ (AB)+A (AB)+A+1 1 1 1 0 AB (AB’)+A (AB’)+A+1 1 1 1 1 A A-1 A ... i tabela istine