Układy arytmetyczne cz 1


ĆWICZENIE nr 6
UKAADY ARYTMETYCZNE cz. I
Poltechnika Częstochowska
1.1 Cel ćwiczenia.
Celem ćwiczenia jest zapoznanie się z budową i działaniem sumatorów,
subtraktorów i komparatorów cyfrowych.
1.2 Wprowadzenie.
Układy cyfrowe mogą przetwarzać tylko informację binarną, tj.
dwuwartościową. Wynika stąd konieczność przejścia z ogólnie przyjętego
systemu dziesiętnego na system binarny. Liczby dziesiętne zazwyczaj
przedstawia się w naturalnym kodzie dwójkowym, w kodzie ósemkowym
(oktalnym), szesnastkowym (heksadecymalnym) lub w kodzie BCD.
Jeżeli przy zapisie liczby binarnej uwzględnia się znak to zapisujemy go
w postaci bitu przed najstarszym bitem liczby. Liczbie dodatniej odpowiada bit
znaku równy 0, dla liczby ujemnej równy 1. Liczby binarne przedstawia się
w zapisach: znak-moduł, uzupełnień do 1 (p.-1), uzupełnień do 2 (p.).
Liczba w postaci znak-moduł. Liczba ujemna daje się łatwo przedstawić,
jeżeli na najstarszej pozycji zostanie umieszczony bit znaku s. Zero oznacza
liczbę dodatnią, a jedynka ujemną. Poprawna interpretacja znaku liczby może
nastąpić tylko przy stałej długości słowa. Przykład dla słowa 8-bitowego:
+11810 = 0 1 1 1 0 1 1 02
- 11810 = 1 1 1 1 0 1 1 02
Liczba w postaci uzupełnienia do dwóch (two s complement).
Przedstawienie liczby w postaci znak-moduł ma tę wadę, że nie ułatwia
dodawania liczb o przeciwnych znakach. W przypadku wystÄ…pienia znaku minus
sumator musi być przestawiony na odejmowanie. Przy zapisie w postaci
uzupełnienia do dwóch nie jest to potrzebne. W zapisie w postaci uzupełnienia do
dwóch najstarszy bit ma wagę ujemną. Pozostała część liczby jest normalnym
kodem dwójkowym. Również w tym zapisie długość słowa musi być stała,
aby można było jednoznacznie zdefiniować najstarszy bit. W przypadku liczby
dodatniej wartość najstarszego bitu wynosi 0. Dla liczby ujemnej bit ten ma
wartość 1, bo tylko ta pozycja ma ujemną wagę. Przykład dla słowa 8-bitowego:
+11810 = 0 1 1 1 0 1 1 0 = BN
- 11810 = 1 0 0 0 1 0 1 0 = X
Przejście z liczby dodatniej na równą co do modułu liczbę ujemną jest oczywiście
nieco trudniejsze niż przy zapisie znak-moduł. Załóżmy, że liczba dwójkowa BN
ma bez bitu znaku długość N. Stąd waga pozycji znaku wynosi -2N. Liczbę -BN
przedstawia wzór:
-BN = -2N + X
Stąd wartość dodatniej reszty X X = 2N - BN
To wyrażenie nosi nazwę uzupełnienia do dwóch BN(2) liczby BN. Można je łatwo
wyliczyć na podstawie BN. Rozważmy największą liczbę, jaką można
przedstawić za pomocą N pozycji. Ma ona wartość 11111......=2N - 1.
Odejmując od niej dowolną liczbę dwójkową BN otrzymujemy również liczbę
- 2 -
Poltechnika Częstochowska
dwójkową, w której wszystkie bity są negacjami odpowiednich bitów BN. Liczba
taka nazywa się uzupełnieniem do jedności BN(1) liczby BN. Stąd mamy:
BN(1) = 2N -1 - BN i BN(2) = BN(1) + 1
Zapis liczby dwójkowej w postaci uzupełnienia do dwóch otrzymujemy więc
przez negację wszystkich jej pozycji oraz dodanie 1. Przykład 8-bitowej liczby
dwójkowej w uzupełnieniu do dwóch:
11810 = 01110110
uzupełnienie do jedności 10001001
+ 1
uzupełnienie do dwóch 10001010 = - 11810
Przejście odwrotne:
uzupełnienie do jedności 01110101
+ 1
uzupełnienie do dwóch 01110110 = + 11810
Sumatory są układami dodającymi dwie liczby binarne. Najprostszy
przypadek występuje wówczas, gdy trzeba dodać dwie liczby jednobitowe.
Aby móc zaprojektować odpowiedni układ logiczny, należy rozpatrzyć wszystkie
możliwe przypadki i utworzyć tablice funkcji logicznych. Przy dodawaniu dwóch
liczb jednobitowych mogą wystąpić następujące przypadki: 0+0=0, 0+1=1,
1+0=1, 1+1=10.
ai bi si ci
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
Rys. 1. Tablica prawdy półsumatora.
Jeżeli zarówno A, jak i B są jedynkami, przy dodawaniu występuje
przeniesienie do starszej pozycji. Wobec tego sumator musi mieć dwa wyjścia:
jedno wyjście dla sumy na odpowiadającej sumatorowi pozycji i jedno wyjście
przeniesienia do następnej pozycji. Dochodząc do tablicy prawdy przedstawionej
na Rys. 1. przydzielamy liczbom A i B zmienne logiczne ai i bi. Przeniesienie
oznaczmy przez ci, a sumÄ™ jako si. Otrzymujemy stÄ…d funkcje Boole`owskie
w postaci normalnej sumy ci = aibi oraz si = aibi + aibi = ai •" bi .
Rys. 2. Układ półsumatora.
- 3 -
Poltechnika Częstochowska
Przeniesienie jest iloczynem zmiennych wejściowych (funkcja AND),
suma zaś funkcją nierównoważności (EXOR). Układ, który realizuje te dwie
zależności, nazywamy półsumatorem (Rys. 2 ).
W przypadku dodawania liczb dwójkowych wielopozycyjnych półsumator
można zastosować tylko na najmłodszej pozycji. Na wszystkich pozostałych
trzeba dodawać nie dwa, ale trzy bity z powodu przeniesienia z młodszej pozycji.
W ogólnym przypadku dla każdego bitu jest potrzebny układ logiczny o trzech
wejściach ai, bi, ci-1 oraz dwóch wyjściach si i ci. Układ taki nosi nazwę pełnego
sumatora. Można go zrealizować w sposób pokazany na Rys. 3. za pomocą
dwóch półsumatorów. Tablica prawdy pełnego sumatora jest przedstawiona
na Rys. 4. Funkcje Boole`owskie są następujące ci = aibi + aici-1 + bici-1 oraz
si = ai •" bi •" ci-1.
Rys. 3. Układ pełnego sumatora.
Wejście Wyjście
ai bi ci-1 si ci
0 0 0 0 0
0 1 0 1 0
1 0 0 1 0
1 1 0 0 1
0 0 1 1 0
0 1 1 0 1
1 0 1 0 1
1 1 1 1 1
Rys. 4. Tablica prawdy pełnego sumatora.
Aby móc dodawać dwie wielopozycyjne liczby dwójkowe potrzeba
na każdą pozycję jeden pełny sumator. Sumatory wielobitowe można podzielić na
dwójkowe (sumowanie liczb binarnych) i dziesiętne (sumowanie liczb
dziesiętnych kodowanych dwójkowo). Działanie sumatora może odbywać się
szeregowo (sumowane są kolejne bity dodajnej i dodajnika) lub równolegle
(wszystkie bity sumowane są jednocześnie).
Subtraktor jest układem realizującym odejmowanie dwu liczb binarnych.
Subtraktor można nazwać pewnym przypadkiem sumatora ze zmianą ai na ai
w funkcji pożyczki. Układy wielobitowe subtraktorów budowane są analogicznie
- 4 -
Poltechnika Częstochowska
jak odpowiednie sumatory. Praktycznie do budowy wielobitowych układów
odejmujących wykorzystuje się scalone sumatory uzupełnione dodatkowymi
układami wejściowymi, wyjściowymi i generującymi znak wyniku.
Wejście Wyjście
ai bi vi-1 di vi
0 0 0 0 0
0 1 0 1 1
1 0 0 1 0
1 1 0 0 0
0 0 1 1 1
0 1 1 0 1
1 0 1 0 0
1 1 1 1 1
Rys. 5. Tablica prawdy pełnego subtraktora.
Komparatory to układy logiczne, które porównują ze sobą liczby.
Najważniejsze kryteria porównania to A=B, A>B i Adwóch liczb dwójkowych to identyczność wszystkich bitów. Komparator
powinien dawać na wyjściu 1 wówczas, gdy dwie porównywane liczby są sobie
równe. W przypadku dwóch liczb 1-bitowych wystarczy użyć bramki EXOR.
Bardziej uniwersalne komparatory prócz wykrywania równości wskazują, która
z porównywanych liczb jest większa. Określa się je mianem komparatora
A B A>B A=B A0 0 0 1 0
0 1 0 0 1
1 0 1 0 0
1 1 0 1 0
Rys. 6. Tablica stanu komparatora 1-bitowego.
wartości.
Dla utworzenia funkcji logicznych należy skorzystać z przedstawionej
na Rys. 6. tablicy stanu. Na jej podstawie otrzymamy bezpośrednio układ
realizujÄ…cy tÄ™ funkcjÄ™, przedstawiony na Rys. 7.
1.3 Pytania sprawdzajÄ…ce.
1. Omówić uzupełnienie do dwóch liczb ujemnych.
2. Przedstawić liczby 5, 9, 15, 28, 42 oraz ich uzupełnienie do dwóch.
3. Omówić działanie i
narysować sumator i
subtraktor 1-bitowy.
4. Dokonać klasyfikacji
sumatorów.
5. Omówić budowę zasadę
działania komparatora 1-
bitowego.
- 5 -
Rys. 7. Schemat komparatora 1-bitowego.
Poltechnika Częstochowska
1.4 Opis układu pomiarowego.
Ćwiczenie składa się z dwóch osobnych części. Na stanowisko
laboratoryjne należy nałożyć płytę czołową zatytułowaną  Elementy
arytmetyczne cz. I , a po wykonaniu części pierwszej nałożyć płytę  Elementy
arytmetyczne cz. II . Część pierwsza ćwiczenia składa się z układu sumatora-
subtraktora 1-bitowego, komparatora szeregowego oraz układów pomocniczych
takich jak rejestry przesuwne, przerzutnik D oraz rejestr sumy. Na Rys. 8.
przedstawiony jest schemat sumatora-subtraktora 1-bitowego wykorzystywanego
w ćwiczeniu, a na Rys. 9 schemat komparatora szeregowego. Przełącznik
Rys. 8. Schemat układu sumatora-subtraktora 1-bitowego.
 Wybór grupy służy do ustawienia przesuwania rejestrów w prawo lub w lewo
w zależności czy jest wykorzystywany sumator czy komparator. Przy pomocy
przełącznika SUB można wykorzystywać układ jako sumator lub subtraktor.
Taktowania dokonuje ćwiczący przy pomocy przełącznika TAKT. Diody LED,
wyświetlacze oraz zadajniki zostały wykorzystane zgodnie z opisem na płycie
czołowej.
Rys. 9. Schemat układu komparatora szeregowego.
1.5 Program ćwiczenia.
Przed rozpoczęciem ćwiczenia prowadzący nakłada płytę czołową
na stanowisko laboratoryjne oraz ustawia kod ćwiczenia na przełączniku
ćwiczeń. Podłącza zasilanie.
- 6 -
Poltechnika Częstochowska
1.5.1 Sumator-subtraktor 1-bitowy.
Zmontować układ według Rys. 10, wyzerować układ (RESET), ustawić
przełącznikiem  Wybór grupy numer 0 (na wyświetlaczu W1). Połączyć punkty
E, SUB i Ci-1 ze stanem L. Ustawić na zadajnikach ZA=1100 i ZB 1010. Wcisnąć
przełącznik WPIS i podać jeden impuls zegarowy (TAKT). Następnie wcisnąć
ponownie WPIS i podawać impulsy zegarowe przy pomocy przełącznika TAKT.
Wyniki należy wpisać do Tabela 1 (Ai - LED 12, Bi - LED 11, Si - LED 10, Ci -
LED 9, Ci-1 - LED 8). Następnie powtórzyć badanie dla Ci-1=H.
Rys. 10. Układ do badania sumatora-subtraktora 1-bitowego.
Tabela 1.
Wejście Wyjście
ai bi si ci
0 0
0 1
1 0
1 1
Po wykonaniu badania sumatora 1-bitowego należy połączyć punkt SUB
ze stanem H (załączenie substraktora) i dla różnych wartości Ci-1 powtórzyć
badanie jak dla sumatora..
1.5.2 Sumator-subtraktor szeregowy.
Zmontować układ według Rys. 11, wyzerować układ. Połączyć punkt
SUB ze stanem L. Ustawić na zadajnikach ZA=1100 i ZB 1010. Wcisnąć
przełącznik WPIS i podać jeden impuls zegarowy (TAKT). Następnie wcisnąć
ponownie WPIS i podawać impulsy zegarowe przy pomocy przełącznika TAKT.
Podczas taktowania należy zwrócić uwagę na stan wskazników LED (Ai - LED
12, Bi - LED 11, Si - LED 10, Ci - LED 9, Ci-1 - LED 8). Wynik odczytać
w rejestrze sumy (wyświetlacze W3 i W2 heksadecymalnie) po odpowiedniej
liczbie impulsów taktujących. Z kolei łącząc punkt SUB ze stanem L
- 7 -
Poltechnika Częstochowska
(sumowanie) lub H (odejmowanie) przeprowadzić następujące działania
arytmetyczne dla dwóch różnych liczb A i dwóch różnych liczb B: A+0=A,
A+B=7, A+B=S, A-0=A, A-B=S (S>0), A-B=S (S<0), 0-B= -B. Przed
wykonaniem każdego działania układ należy wyzerować. Wyniki przedstawić
w Tabela 2. (A - LED0-3, B - LED4-7, S - W3 i W2).
Rys. 11. Układ sumatora-subtraktora szeregowego.
Tabela 2.
Binarnie A Binarnie B Działanie Binarnie S Hex S Ilość
A3 A2 A1 A0 B3 B2 B1 B0 S7 S6 S5 S4 S3 S2 S1 S0 Taktów
A+0=A
...
0-B = -B
1.5.3 Akumulacyjny sumator szeregowy.
Zmontować układ według Rys. 12, wyzerować układ. Połączyć punkt
SUB ze stanem L. Ustawić na zadajniku ZA=0001. Wcisnąć przełącznik WPIS
i podać jeden impuls zegarowy (TAKT). Następnie wcisnąć ponownie WPIS
i podawać impulsy zegarowe przy pomocy przełącznika TAKT. Podczas
taktowania należy zwrócić uwagę na stan wskazników LED (Ai - LED 12,
Bi - LED 11, Si - LED 10, Ci - LED 9, Ci-1 - LED 8). Wynik należy odczytać
w rejestrze sumy (wyświetlacze W3 i W2 heksadecymalnie) po ośmiu impulsach
taktujących. Przed 8 impulsem należy wcisnąć WPIS, na zadajniku ZA zadać
następny składnik sumowania i podać ósmy takt. Po nim ponownie wcisnąć
WPIS. Z kolei Å‚Ä…czÄ…c punkt SUB ze stanem L (sumowanie) lub H (odejmowanie)
przeprowadzić następujące działania arytmetyczne dla dwóch różnych liczb A:
A+A=2A, A1+A2+A3=S, A1-A2+A3=S , A1+A2+...+An=S oraz własne trzy
działania. Przed wykonaniem każdego działania układ należy wyzerować. Wyniki
przedstawić w Tabela 3 (A - LED0-3, S - W3 i W2).
- 8 -
Poltechnika Częstochowska
Rys. 12. Układ sumatora akumulującego.
Tabela 3.
Binarnie A Działanie Binarnie S Hex S Ilość
A3 A2 A1 A0 S7 S6 S5 S4 S3 S2 S1 S0 Taktów
A+0=S
A+S=2A
...
A1+0=S
...
An+S =Sn
1.5.4 Komparator szeregowy.
Zmontować układ według Rys. 13, wyzerować układ. Ustawić
na zadajnikach ZA=0011 i ZB=0010. Wcisnąć przełącznik WPIS i podać jeden
impuls zegarowy (TAKT). Następnie wcisnąć ponownie WPIS i podawać
impulsy zegarowe przy pomocy przełącznika TAKT. Podczas taktowania należy
zwrócić uwagę na stan wskazników LED (Ai - LED 12, Bi - LED 11, A>B -
LED10, A=B - LED 9, ATabela 4.
A B Ai Bi A>B A=B A0011 0010 0 0 1
0 0 2
1 1 3
1 0 4
... ...
- 9 -
Poltechnika Częstochowska
Rys. 13. Układ komparatora szeregowego MSB.
- 10 -


Wyszukiwarka