Sumator (układ logiczny)
Sumator – cyfrowy układ kombinacyjny, który wykonuje operacje dodawania dwóch (lub więcej) liczb dwójkowych. Sumator dzielimy na:
- szeregowe (ang. serial adder): podczas każdej operacji dodają dwa bity składników oraz bit przeniesienia;
- równoległe (and. paralel adder): wielopozycyjne, dodają do siebie jednocześnie bity ze wszystkich pozycji, a przeniesienie realizowane jest w zależności od sposobu połączenia sumatorów jednobitowych
Są dwa główne rodzaje sumatorów równoległych:
- z przeniesieniami szeregowymi (ang. ripple-carry adder)
- z przeniesieniami równoległymi (ang. carry look-ahead adder)
[edytuj] Teoria
Tabela prawdy dla sumatora 1-bitowego:
| 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 |
gdzie:
- ai – pierwszy składnik sumy
- bi – drugi składnik sumy
- ci−1 – przeniesienie z poprzedniej pozycji
- si – suma
- ci – przeniesienie
Wyrażenia boolowskie opisujące sumę i przeniesienie:
Wprowadza się jeszcze oznaczenia:
-
– grupa generacyjna
– grupa propagacyjna
Można wówczas zapisać:
[edytuj] Sumator z przeniesieniami szeregowymi
Sumator ten zbudowany jest z bloków funkcjonalnych, które realizują funkcje
i
. Bloki są połączone kaskadowo (ripple), tzn. wyjście
jest łączone z wejściem
bloku następnego.
Aby np. otrzymać bit sumy
uprzednio muszą zostać wyznaczone sygnały przeniesień
,
oraz
(
zależy od
, a ten zależy od
).
Czas otrzymania ostatecznego wyniku jest więc ograniczony do dołu przez
× czas generacji przeniesienia
, gdzie
to liczba elementarnych bloków z których zbudowanych jest sumator.
[edytuj] Sumator z przeniesieniami równoległymi
W sumatorze z przeniesieniami równoległymi bity przeniesień są wyznaczane równolegle. Wyrażenia opisujące
są [rekursywnie] rozwijane, tzn. występujący w nich składnik
jest zastępowany stosownym wyrażeniem, np.:
Układ buduje się z dwóch głównych części:
- bloków wyznaczających sumę
oraz grupy generacyjne
i propagacyjne
(które są liczone niezależnie!) - bloku generującego przeniesienia, zgodnie z rozwiniętymi wyrażeniami
W praktyce buduje się 4-bitowe sumatory tego typu, ze względu na znaczne skomplikowanie wyrażeń (a więc obwodów elektrycznych bloku nr 2).
Sumator z przeniesieniami równoległymi jest ok. 20-40% szybszy niż sumator z przeniesieniami szeregowymi


– grupa generacyjna
– grupa propagacyjna



i propagacyjne
(które są liczone niezależnie!)