Wykład nr 6

Download Report

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=DS, Y=FR
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=pq
• 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=pqc
• 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 = ij 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ń