Transcript Wykład nr 6
Elektronika cyfrowa i mikroprocesory Wykład 6 Bloki funkcjonalne Bloki funkcjonalne - symbol • Sygnały wejściowe dzielimy na − D – dane wejściowe (informacyjne) − S – sygnały sterujące • Sygnały wyjściowe dzielimy na − F – dane wyjściowe (informacyjne) − R – sygnały kontrolne • X=DS, Y=FR F D X S BF Y R Bloki funkcjonalne • Składa się z pewnej liczby elementów kombinacyjnych i/lub sekwencyjnych • Realizuje jedną lub więcej funkcji zależnie stanu od wejść sterujących • Dla jednego stanu wejść sterujących tylko jedna funkcja – mikrooperacja • Dla układów sekwencyjnych pojedyncza mikrooperacja wykonywana jest w czasie pojedynczego cyklu taktującego • Stan linii sterujących nazywany jest mikrorozkazem Blok funkcjonalny • Wiele bloków dostępnych jest jako gotowe układy scalone serii TTL 74xxx − multipleksery: 74151, 74257, 74258 − demultipleksery 74137, 74138, 74238 − dekodery/kodery 7442, 7447 − sumatory 7483, 74183, 74283 Komparatory – realizacja na bramkach XNOR i bramki AND Komparatory – realizacja na bramkach XOR i bramki NOR Komparatory Łączenie komparatorów szeregowo Łączenie komparatorów równolegle Sumatory - rodzaje • Sumatory dwójkowe (binarne) • Sumatory dziesiętne (BCD) • Sumowanie liczb bez znaku lub ze znakiem • Sumatory liczb całkowitych i ułamkowych • Sumatory liczb zmiennoprzecinkowych Sumatory - podstawowy • • • • Sumator binarny jednobitowy Półsumator Sumowanie bitów p i q Wynik suma: f i przeniesienie c • p + q = f + 2c • p + q = f c2 • f=pq • c = pq Budowa półsumatora Sumowanie liczb wielobitowych • Układ sumuje p i q oraz przeniesienie c z poprzedniej pozycji • pi + qi + ci = fi ci+1 •f=pqc • c = pq c(p q ) Sumator – tablice Karnaugh Realizacja z półsumatorów Sumatory • Sumator jednobitowy z przeniesieniami − Wykonanie z półsumatorów proste ale powolne − Praktycznie realizuje się bezpośrednim układem kombinacyjnym • Sumator wielobitowy przez − połączenie równoległe z szeregowym przeniesieniem − połączenie równoległe z przeniesieniem równoległym Sumator równoległy z szeregowym przeniesieniem Sumator równoległy z przeniesieniem równoległym Blok generacji przeniesień • Układ kombinacyjny działa tylko na podstawie danych wejściowych P i Q • Tworzy wektor przeniesień C • ci+1 = piqi ci (pi qi ) • Realizacja praktyczna – układy • 74x83 – propagacja przeniesień szeregowa • 74x283 – propagacja przeniesień równoległa Sumator 74x283 – symbol i budowa Odejmowanie i dodawanie ze znakiem • Wykorzystanie sumatorów „normalnych” • Wcześniejsza konwersja liczby na kod U2 (uzupełnienia do 2) • Bit przeniesienia zawiera znak • Konwersja przez bramki XOR Sumowanie liczb ze znakiem Sumatory dziesiętne BCD • Wykorzystanie tylko 10 z 16 możliwych stanów • Maksymalna wartość liczby wejściowej to 10012 • Wynik w zakresie 0 do 19 • Dodawanie liczby „6” do wyniku • Korekta dla stanów niedozwolonych układem kombinacyjnym i dodatkowym sumatorem Wykrywanie konieczności korekty – tablica Karnaugh Sumator BCD - realizacja Układy ALU • Gotowe układy scalone • Realizowanie kilku funkcji (mikrorozkazów) • Przykład 74x382 − Czas odpowiedzi 7 ns dla wersji „F” • Realizowane mikrorozkazy − − − − − Dodawanie Odejmowanie Suma binarna (OR) Iloczyn binarny (AND) Suma rozłączna (XOR) Układ ALU 74x382 Multiplikatory • Multiplikatory równoległe – liczby mnożone są równocześnie na wszystkich bitach − Zaleta – szybkość − Wada – komplikacja • Multiplikatory równoległe – jedna z liczb jest podawana równolegle, druga szeregowo − Układ sekwencyjny − Dłuższy czas realizacji rozkazu Multiplikatory • Najprostsza realizacja poprzez pamięć stałą (tabliczka mnożenia) • Wymagania: − Liczby 8 bitowe M=28 x 8(bitów) = 256x8 = 2048 bitów − Liczby 16 bitowe M=216 x 16 (bitów) = 65536x8 = 1048576 bitów − Liczby 32 bitowe M=??? • Wada – stosunkowo wolny czas propagacji – dla typowej pamięci ROM 100 ns Multiplikatory - przykład • Prosty układ mnożący w postaci kombinacyjnej • Mnożenie liczb binarnych • P, Q – 4 bitowe liczby wejściowe • P = pi 2i Q = qi 2i • F = P·Q = ij pi qj 2i+j Multiplikatory - przykład Multiplikatory - przykład • Otrzymujemy 16 iloczynów piqj (iloczyny binarne – czyli bramka AND) • Konieczne jest 12 sumatorów jednobitowych • Ogólnie multiplikator mnożący liczby m i n bitowe potrzebuje: − (m-1)n – sumatorów − m·n – bramek AND Multiplikatory - przykład Multiplikatory – realizacje tablicowo sumacyjne •Mieszany – rozkładanie liczby na mniejsze i mnożenie tablicowe oraz sumowanie sum częściowych •Przykład −P = P1 P2 = P1 2r + P2 −Q = Q1 Q2 = Q1 2s + Q2 −F = PQ = (P1 2r + P2)(Q1 2s + Q2) Multiplikatory – realizacja (przykład) Multiplikatory – MC14554 Multiplikatory – MC14554 Pytania i uwagi Zapraszam za tydzień