Digitalna mikroelektronika Z. Prijić Elektronski fakultet Niš Katedra za mikroelektroniku Predavanja 27.
Deo I Kombinaciona logička kola
Kombinaciona logička kola Osnovna kombinaciona logička kola 2 3 Dekoderi Enkoderi Konvertori kodova Multiplekseri Demultiplekseri
I-ILI kola Direktna implementacija SOP (Sum Of Products) izraza A B C D AB CD X=AB+CD
I-ILI-Invertovana kola Implementacija POS (Product Of Sum) izraza A B AB AB+CD X=AB+CD C CD D AB + CD = (A + B)(C + D) ()
Isključivo ILI kola Osnovna kombinaciona logička kola A X=AB+AB B X = AB + AB A B (2)
Isključivo NILI kola A B X=AB+AB
NI kolo kao univerzalni logički element
NI kolo kao univerzalni logički element
NILI kolo kao univerzalni logički element
NILI kolo kao univerzalni logički element
NI logika DeMorganovo pravilo: AB = A + B X = (AB)(CD) = (A + B)(C + D) = (A + B) + (C + D) = A B + C D = AB + CD (3)
NI logika Osnovna kombinaciona logička kola A B X C D
NI logika sa dualnim simbolima Svi logički dijagrami u NI logici treba da budu nacrtani tako da je svako kolo predstavljeno ili NI simbolom ili ekvivalentnim negativnim ILI simbolom. A B X=AB+CD C D A B X=AB+CD C D
NILI logika DeMorganovo pravilo: A + B = A B X = A + B + C + D = (A + B)(C + D) = (A + B)(C + D) (4)
NILI logika Osnovna kombinaciona logička kola A B X C D
NILI logika sa dualnim simbolima Svi logički dijagrami u NILI logici treba da budu nacrtani tako da je svako kolo predstavljeno ili NILI simbolom ili ekvivalentnim negativnim I simbolom. A B X=(A+B)(C+D) C D A B X=(A+B)(C+D) C D
Sadržaj Osnovna kombinaciona logička kola Osnovna kombinaciona logička kola 2 3 Dekoderi Enkoderi Konvertori kodova Multiplekseri Demultiplekseri
Polu-sabirač Half-adder Osnovna kombinaciona logička kola Binarno sabiranje: + = + = + = + =
Polu-sabirač Logički simbol Osnovna kombinaciona logička kola A Sum B C out Carry Carry bit prenosa
Polu-sabirač Tablica istinitosti Osnovna kombinaciona logička kola A B C out Σ
Polu-sabirač Logičko kolo Osnovna kombinaciona logička kola =A B=AB+AB A B C out =AB
Potpuni sabirač Full-adder Osnovna kombinaciona logička kola A Sum B Input Carry C in C out Output Carry
Potpuni sabirač Tablica istinitosti Osnovna kombinaciona logička kola A B C in C out Σ
Potpuni sabirač Logičko kolo Osnovna kombinaciona logička kola A B =(A B) C in C in C out =AB+(A B)C in
Potpuni sabirač Implementacija Osnovna kombinaciona logička kola A A =(A B) C in B C out B C out C in C out =AB+(A B)C in
4-bitni paralelni sabirač Logički simbol A Sum B Input carry C C 4 Output carry Grupa od 4 bita naziva se nibble.
4-bitni paralelni sabirač Blok dijagram A 4 B 4 A 3 B 3 A 2 B 2 A B C A B C in A B C in A B C in A B C in MSB C 3 C 2 C LSB C out C out C out C out C out 4 3 2
4-bitni paralelni sabirač Tablica istinitosti za n ti stepen, n =,..., 4 C n A n B n Σ n C n
Kaskadna veza sabirača 8-bitni sabirač B 8 B 5 A 8 A 5 B 4 B A 4 A C C in C in C out C out C 8 8 5 4
Ripple Carry Prenošenje vrednosti bita prenosa iz prethodnog u naredni stepen A B C in A B C in A B C in A B C in C out C out C out C out 32ns Kašnjenje duž jednog stepena je 8ns
Look-Ahead Carry Predvi danje vrednosti bita prenosa za svaki stepen Generacija bita prenosa (Carry generation) se javlja kada sabirač interno generiše bit prenosa i to se dešava samo u slučaju kada su oba ulaza na nivou logičke jedinice: C g = AB (5) Propagacija bita prenosa (Carry propagation) se javlja kada se ovaj bit prenosi iz prethodnog u naredni stepen i to se dešava u slučajevima kada su oba ili jedan od ulaza na nivou logičke jedinice: C p = A + B (6)
Look-Ahead Carry Ubrzanje procesa sabiranja Vrednost bita prenosa na izlazu sabirača je: C out = C g + C p C in (7) pri čemu je C in vrednost bita prenosa na ulazu u sabirač.
Look-Ahead Carry A 4 B 4 C in4 A 3 B 3 C in3 A 2 B 2 C in2 A B C in A B C in A B C in A B C in A B C in C out C out C out C out C out4 4 C out3 3 C out2 C out 2 C gi = A i B i C pi = A i + B i i =,..., 4 (8)
Look-Ahead Carry Za prvi sabirač: Za drugi sabirač, pošto je C in2 = C out : C out = C g + C p C in (9) C out = C g2 + C p2 C in2 = C g2 + C p2 C out = C g2 + C p2 (C g + C p C in ) () = C g2 + C p2 C g + C p2 C p C in
Look-Ahead Carry Za treći sabirač, pošto je C in3 = C out2 : C out3 = C g3 + C p3 C in3 = C g3 + C p3 C out2 = C g3 + C p3 (C g2 + C p2 C g + C p2 C p C in ) () = C g3 + C p3 C g2 + C p3 C p2 C g + C p3 C p2 C in
+ C p4 C p3 C p2 C p C in (2) Osnovna kombinaciona logička kola Look-Ahead Carry Za četvrti sabirač, pošto je C in4 = C out3 : C out4 = C g4 + C p4 C in4 = C g4 + C p4 C out3 = C g4 + C p4 (C g3 + C p3 C g2 + C p3 C p2 C g + C p3 C p2 C p C in ) = C g4 + C p4 C g3 + C p4 C p3 C g2 + C p4 C p3 C p2 C g
Sadržaj Osnovna kombinaciona logička kola Osnovna kombinaciona logička kola 2 3 Dekoderi Enkoderi Konvertori kodova Multiplekseri Demultiplekseri
Jednakost dva binarna broja Binarni brojevi: A A A, B B B LSB A B A=B HI MSB A B Porede se LSB i MSB svakog od brojeva.
Nejednakost dva binarna broja Binarni brojevi: A A 3A 2A A, B B 3B 2B B Comp A B 3 3 A>B A=B A<B
Nejednakost dva binarna broja Binarni brojevi: A A 3A 2A A, B B 3B 2B B Najpre se porede MSB brojeva: Ako je A 3 = i B 3 =, tada je A > B Ako je A 3 = i B 3 =, tada je A < B Ako je A 3 = B 3, tada se porede sledeći bitovi po težini
Sadržaj Osnovna kombinaciona logička kola Osnovna kombinaciona logička kola 2 3 Dekoderi Enkoderi Konvertori kodova Multiplekseri Demultiplekseri
Osnovni binarni dekoder Dekodiranje 4-bitnog broja Funkcija dekodiranja: X = A 3 A 2 A A. Za dekodiranje svih brojeva (... 5) potrebno je 6 logičkih kola. Ovaj tip dekodera se naziva 4-line-to-6-line decoder.
BIN/DEC dekoder Logički simbol BIN/DEC 2 4 8 5
74HC54 BIN/DEC dekoder Logički simbol BIN/DEC A A 2 A 2 4 A 3 8 CS CS 2 & EN 5 Kolo ima internu enable (EN) funkciju koja se aktivira kada su CS i CS 2 na LOW. Kada funkcija enable nije aktivna, svi izlazi dekodera su HIGH, bez obzira na stanja na ulazu.
5-bitni dekoder Osnovna kombinaciona logička kola BIN/DEC BIN/DEC6 A A A 2 2 4 DEC 2 4 DEC2 A 3 8 8 A 4 CS & EN 5 CS & EN 3 CS 2 CS 2
5-bitni dekoder Osnovna kombinaciona logička kola Sve dok je decimalni broj na ulazu 5, bit A 4 je jednak nuli, funkcija enable dekodera DEC je aktivna i aktivan je dekoder DEC, dok DEC2 nije aktivan jer mu funkcija enable nije aktivna. Kada bit A 4 postane jedinica, svi izlazi dekodera DEC postaju HIGH, preko invertora se aktivira funkcija enable dekodera DEC2, pa i on postaje aktivan. Dekoder DEC naziva se low-order dekoder, a DEC2 high-order dekoder.
Dekoder adrese priključka Port address decoder Magistrala podataka Štampač Mikroprocesor ili mikrokontroler BIN/DEC EN Tastatura EN A Monitor U/I adresa A A 2 2 4 EN A 3 8 U/I zahtev CS & EN 5 CS 2
Dekoder adrese priključka Svaki ulazno-izlazni priključak (I/O port) ima jedinstven broj, tj. adresu po kojoj se identifikuje. Kada mikrokontroler želi da komunicira sa periferijskim ure dajem on tu adresu prosle duje na ulaz dekodera. Dekoder dekodira adresu i aktivira pomoću enable funkcije dati ure daj, tako da magistrala podataka prema njemu postaje otvorena.
BCD/Decimal dekoder 4 line to line decoder BCD/DEC A A A 2 A 3 2 4 8 9 Kolo 74HC42
BCD/7 segmentni dekoder BCD to 7 segment decoder A A A 2 A 3 2 4 8 BCD/7-seg a b c d e f g
BCD/7 segmentni dekoder 74LS47 V CC A A A 2 A 3 2 4 8 74LS47 LT RBI BI/RBO a b c d e f g
BCD/7 segmentni dekoder 74LS47 Kada je LT (Lamp test) na nivou logičke nule, a RBI (Ripple blanking input) na nivou logičke jedinice, tada su uključeni svi segmenti displeja. Time se proverava ispravnost segmenata. Pin BI/RBO može biti i ulazni i izlazni. Kada je BI (Blanking input) na nivou logičke nule, svi izlazi su na nivou logičke jedinice, bez obzira na signale na ulazima. Izlazni pin RBO (Ripple blanking output) se koristi za uklanjanje suvišnih nula ispred ili iza brojeva.
74LS47 Uklanjanje suvišnih nula ispred broja BI/RBO a 2 b 4 8 74LS47 c d e LT f RBI g BI/RBO BI/RBO a a 2 4 b c 2 4 b c 8 74LS47 d e LT f 8 74LS47 d e LT f RBI g RBI g BI/RBO a 2 b 4 8 74LS47 c d e LT f RBI g
74LS47 Uklanjanje suvišnih nula iza broja BI/RBO a 2 b 4 8 74LS47 c d e LT f RBI g BI/RBO a 2 b 4 8 74LS47 c d e LT f RBI g BI/RBO a 2 b 4 8 74LS47 c d e LT f RBI g BI/RBO a 2 b 4 8 74LS47 c d e LT f RBI g decimalna tačka prethodnog displeja
7-segmentni displej Konfiguracije sa zajedničkom anodom i zajedničkom katodom V a a b b f f g g e e d d c c
Decimalni/BCD enkoder Decimal-to-BCD Encoder DEC/BCD 9 2 4 8 A A A 2 A 3
Decimalni/BCD enkoder Tablica istinitosti DEC A 3 A 2 A A 2 3 4 5 6 7 8 9
Decimalni/BCD enkoder Iz tablice istinitosti sledi: A 3 = 8 + 9 A 2 = 4 + 5 + 6 + 7 A = 2 + 3 + 6 + 7 A = + 3 + 5 + 7 + 9 Nula nije potrebna jer je to podrazumevana vrednost na izlazima kada su svi ulazi na logičkoj nuli.
Decimalni/BCD enkoder Logičko kolo A 2 3 A 4 5 6 A 2 7 8 A 3 9
Decimalni/BCD enkoder Enkoder prioriteta Enkoder prioriteta predstavlja standardni DEC/BCD enkoder, s tim što će se, u slučaju da se na ulazima pojavi više aktivnih cifara, na izlazu uvek pojaviti binarni broj koji odgovara najvećoj cifri sa ulaza. Na primer, ako su aktivni ulazi 6 i 9, na izlazu će uvek biti (tj. decimalni broj 9). Primer ovakvog kola je 74HC47.
Decimalni/BCD enkoder Enkoder prioriteta za numeričku tastaturu 4 7 V + R R R 4 R 4 2 5 8 R 2 R 5 R 5 3 6 9 R 3 R 6 R 6 9 8 74HC47 4 2 HPRI/BCD A 3 A 2 A A
Decimalni/BCD enkoder Enkoder prioriteta za numeričku tastaturu Svaki prekidač (taster) je preko pull-up otpornika povezan na napon V +. Otpornici osiguravaju da je odgovarajuća linija na nivou logičke jedinice sve dok je taster pritisnut. Kada se taster otpusti linija biva povezana na masu i logička nula dolazi na odgovarajući ulaz dekodera. Taster koji odgovara nuli nije povezan jer za taj slučaj enkodiranje nije potrebno.
Oktalno-binarni enkoder prioriteta Logički simbol EI HPRI/BIN EO GS 7 2 4 A A A 2
Oktalno-binarni enkoder prioriteta Kada je pin EI (Enable input) na logičkoj nuli enkoder je uključen Pin EO (Enable output) je na logičkoj nuli kada je pin EI na logičkoj nuli i kada ni jedan od ulaza nije aktivan. Pin GS je na logičkoj nuli kada je pin EI na logičkoj nuli i kada je bilo koji od ulaza aktivan.
Oktalno-binarni enkoder prioriteta Kaskadna veza kola 74LS48 7 8 5 EI EI 74LS48 74LS48 EO 2 4 GS EO 2 4 GS A A A 2 A 3
Konverzija kodova Konverzija BCD u binarni kod Binarne reprezentacije težinskih bitova u BCD broju se sabiraju da bi se dobio binarni broj. Na primer, decimalni broj 87 se binarno može predstaviti u obliku 8-bitnog BCD koda, koji čine dve grupe od po 4 bita: i. U ovom kodu prva grupa ima težinski faktor, a druga težinski faktor. Desetice Jedinice Težina 8 4 2 8 4 2 Bit B 3 B 2 B B A 3 A 2 A A
Konverzija kodova Konverzija BCD u binarni kod Binarna reprezentacija BCD bit BCD težina 64 32 6 8 4 2 A A 2 A 2 4 A 3 8 B B 2 B 2 4 B 3 8 Binarni ekvivalent svakog BCD bita je binarni broj koji reprezentuje težinu tog bita.
Konverzija kodova Konverzija BCD u binarni kod Za broj 87 je: 8 4 2 8 4 2 Naprave se binarni ekvivalenti svih jedinica koje se pojavljuju u BCD reprezentaciji broja (u ovom slučaju na mestima,2,4 i 8) 2 Binarni ekvivalenti se saberu
Konverzija kodova Konverzija BCD u binarni kod Zbir binarnih ekvivalenata daje željeni binarni broj: + Za logičku implementaciju koriste se sabirači.
Konverzija kodova Grejov (Gray) kod Zasniva se na principu da se u nizu brojeva susedni brojevi razlikuju samo za po jedan bit. DEC Bin Gray DEC Bin Gray 8 9 2 3 4 2 5 3 6 4 7 5
Konverzija kodova Konverzija iz binarnog u Grejov kod Najznačajniji bit u Grejovom kodu je isti kao i odgovarajući bit u binarnom kodu Idući s leva na desno, sabiraju se susedni bitovi u binarnom kodu. Zbir je odgovarajući bit Grejovog koda, a bit prenosa se odbacuje. + + + + Bin Gray
Konverzija kodova Konverzija iz binarnog u Grejov kod B G B G B 2 G 2 B 3 G 3
Osnovna kombinaciona logička kola Konverzija kodova Konverzija Grejovog u binarni kod Najznačajniji bit u binarnom kodu je isti kao i odgovarajući bit u Grejovom kodu Idući s leva na desno, svaki dobijeni bit binarnog koda sabira se sa narednim bitom Grejovog koda. Zbir je odgovarajući bit binarnog koda, a bit prenosa se odbacuje. + + + + Gray Bin
Konverzija kodova Konverzija iz Grejovog u binarni kod G B G B G 2 B 2 G 3 B 3
Sadržaj Osnovna kombinaciona logička kola Osnovna kombinaciona logička kola 2 3 Dekoderi Enkoderi Konvertori kodova Multiplekseri Demultiplekseri
Multiplekseri Selektori podataka Osnovna kombinaciona logička kola Multiplekser je logičko kolo koje omogućava izbor podataka sa više ulaza i njihovo prosle divanje na jedan izlaz. S S MUX D D D 2 D 3 2 3 Y Podaci su na ulazima D,..., D 4, a njihova selekcija se vrši pomoću ulaza S i S.
Multiplekseri Logička funkcija Osnovna kombinaciona logička kola S S Izabrani ulaz D D D 2 D 3 Y = D S S + D S S + D 2 S S + D 3 S S (3)
Multiplekseri Logičko kolo Osnovna kombinaciona logička kola S S D D D2 Y D3
Multiplekseri 74HC57 - Četvorostruki mulktiplekser Zajednički kontrolni blok Enable Data select EN G A B 2A 2B 3A 3B 4A 4B MUX Y 2Y 3Y 4Y Kada je ulaz Enable na logičkoj nuli izlazi multipleksera su uključeni. G je ulaz za selekciju podataka.
Multiplekseri 74HC57 - Četvorostruki mulktiplekser G je interna oznaka ulaza za selekciju podataka. Kada je ovaj ulaz na logičkoj jedinici selektuju se B ulazi, a kada je na logičkoj nuli selektuju se A ulazi. Oznaka G se koristi da bi se naznačila I (AND) zavisnost izme du ulaza za selekciju podataka i ulaza za podatke.
Multiplekseri 74LS5 - Multiplekser sa 8 ulaza Enable S S S 2 MUX EN } G 7 2 D D D 2 D 3 D 4 D 5 D 6 D 7 7 Y Y Za selekciju su potrebna 3 bita. Nema zajedničkog kontrolnog bloka jer se radi o samo jednom multiplekseru.
Multiplekseri Multiplekser kao upravljač displeja Data select A x B x A x 74LS57 B x LT x A2 x 74LS47 B2 x A3 x B3 x x 74LS39/2 x x x 74LS465 74LS465
Multiplekseri 74LS5 - Multiplekser sa 6 ulaza S S S 2 S 3 MUX EN } G 7 2 MUX EN } G 7 2 D D D 2 D 3 D 4 D 5 D 6 D 7 7 74LS5 Y D 8 D 9 D D D 2 D 3 D 4 D 5 7 74LS5 Y Y
Multiplekseri 74LS5 - Multiplekser kao generator logičkih funkcija A A A 2 MUX EN } G 7 2 +5V 74LS5 Y Y 7 Y = A 2 A A + A 2 A A + A 2 A A + A 2 A A Prednost upotrebe multipleksera je u manjem broju logičkih kola potrebnih za realizaciju funkcije.
Demultiplekseri Distributeri podataka Osnovna kombinaciona logička kola Demultiplekser je logičko kolo koje prihvata podatke sa jednog ulaza D i distribuira ih na više izlaza D i. Selekcija izlaza vrši se preko ulaza S i. D D D S D 2 S D 3
Demultiplekseri 74HC54 kao demultiplekser DEMUX D S S S 2 S 3 } G 3 5 D & EN 5 D 5
Generisanje i provera pariteta Osnovni princip Zbir parnog broja jedinica je uvek nula, a zbir neparnog broja jedinica je uvek jedan. Bitovi prenosa se zanemaruju. Sabiranje dva bita Sabiranje četiri bita A X A A A X A 2 A 3 Kada je broj jedinica na ulazima paran, na izlazu je logička nula.
Generisanje i provera pariteta 74LS28 - Kolo za proveru pariteta Na ulazu se pojavljuje 8 bitova podataka i jedan bit pariteta. A B C D E F G H I 74LS28 par. nepar. Kada je broj ulaza koji su na nivou logičke jedinice,2,4,6, ili 8, tada je izlaz Σ par. na nivou logičke jedinice, a izlaz Σ nepar. na nivou logičke nule.