Dodatek Carry Look Ahead - obwód, tablica prawdy i aplikacje

Wypróbuj Nasz Instrument Do Eliminowania Problemów





Różne typy systemów cyfrowych są zbudowane z bardzo niewielu typów podstawowych konfiguracji sieci, takich jak bramka AND, bramka NAND, bramka lub itd. Te układy elementarne są używane wielokrotnie w różnych kombinacjach topologicznych. Oprócz wykonywania logiki systemy cyfrowe muszą również przechowywać liczby binarne. W przypadku tych komórek pamięci, znanych również jako FLIP-FLOP ” są zaprojektowane. Wykonywanie niektórych funkcji, takich jak dodawanie binarne. Stąd, aby pełnić takie funkcje, kombinacje bramki logiczne a FLIP-FLOPs są zaprojektowane w oparciu o pojedynczy układ scalony. Te układy scalone stanowią praktyczne elementy składowe systemów cyfrowych. Jednym z takich bloków konstrukcyjnych używanych do dodawania binarnego jest dodatek Carry Look-ahead.

Co to jest dodatek Carry Look-ahead?

Komputer cyfrowy musi zawierać obwody, które mogą wykonywać operacje arytmetyczne, takie jak dodawanie, odejmowanie, mnożenie i dzielenie. Wśród nich dodawanie i odejmowanie to podstawowe operacje, podczas gdy mnożenie i dzielenie to odpowiednio powtarzane dodawanie i odejmowanie.




Aby wykonać te operacje, „obwody sumujące” są zaimplementowane przy użyciu podstawowych bramek logicznych. Obwody sumujące ewoluowały jako Half-adder, Full-adder, Ripple-carry Adder i Carry Look-ahead Adder.

Wśród nich Carry Look-ahead Adder jest szybszym obwodem sumatora. Zmniejsza opóźnienie propagacji, które występuje podczas dodawania, dzięki zastosowaniu bardziej złożonych obwodów sprzętowych. Został zaprojektowany przez przekształcenie obwodu Addera z przenoszeniem tętnień w taki sposób, że logika przenoszenia sumatora jest zmieniana na logikę dwupoziomową.



4-bitowy dodatek Carry Look-ahead

W sumatorach równoległych wyjście przenoszenia każdego pełnego sumatora jest podawane jako wejście przeniesienia do następnego stanu wyższego rzędu. W związku z tym te sumatory nie są możliwe do wytworzenia przenoszenia i sumowania wyjść dowolnego stanu, chyba że wejście przenoszenia jest dostępne dla tego stanu.

Tak więc, aby nastąpiły obliczenia, obwód musi czekać, aż bit przeniesienia zostanie rozpropagowany do wszystkich stanów. Powoduje to opóźnienie propagacji przenoszenia w obwodzie.


4-bitowy dodatek Ripple-Carry

4-bitowy dodatek Ripple-Carry

Rozważmy powyższy 4-bitowy obwód sumatora przenoszenia tętnień. Tutaj suma S3 może zostać wygenerowana, gdy tylko zostaną podane wejścia A3 i B3. Ale przeniesienia C3 nie można obliczyć, dopóki nie zostanie zastosowany bit przeniesienia C2, podczas gdy C2 zależy od C1. Dlatego, aby uzyskać ostateczne wyniki w stanie ustalonym, przeniesienie musi propagować się przez wszystkie stany. Zwiększa to opóźnienie propagacji przenoszenia w obwodzie.

Opóźnienie propagacji sumatora jest obliczane jako „opóźnienie propagacji każdej bramki pomnożone przez liczbę stopni w obwodzie”. Aby obliczyć dużą liczbę bitów, należy dodać więcej etapów, co znacznie pogarsza opóźnienie. Stąd, aby rozwiązać tę sytuację, wprowadzono Carry Look-ahead Adder.

Aby zrozumieć działanie dodatku Carry Look-ahead Adder, poniżej opisano 4-bitowy dodatek Carry Look-ahead.

4-bitowy schemat logiki z wyprzedzeniem-Carry-Look-ahead-Adder

4-bitowy schemat logiki z wyprzedzeniem-Carry-Look-ahead-Adder

W tym sumatorze wejście przenoszenia na dowolnym etapie sumatora jest niezależne od bitów przeniesienia generowanych na niezależnych etapach. Tutaj wyjście dowolnego stopnia jest zależne tylko od bitów, które zostały dodane w poprzednich etapach i wejściu przeniesienia zapewnionym na etapie początkowym. W związku z tym obwód na żadnym etapie nie musi czekać na wygenerowanie bitu przeniesienia z poprzedniego etapu, a bit przeniesienia może zostać oceniony w dowolnym momencie.

Tabela prawdy dla sumatora z wyprzedzeniem przeniesienia

Aby wyprowadzić tablicę prawdy tego sumatora, wprowadzono dwa nowe terminy - generuj i propaguj przenoszenie. Carry generuje Gi = 1 za każdym razem, gdy jest generowane przeniesienie Ci + 1. Zależy to od wejść Ai i Bi. Gi wynosi 1, gdy Ai i Bi wynoszą 1. Stąd Gi jest obliczane jako Gi = Ai. Bi.

Pi propagowane przez przenoszenie jest związane z propagacją przenoszenia z Ci do Ci + 1. Oblicza się go jako Pi = Ai ⊕ Bi. Tabelę prawdy tego sumatora można uzyskać, modyfikując tabelę prawdy pełnego sumatora.

Używając terminów Gi i Pi, Sum Si i Carry Ci + 1 podano poniżej -

  • Si = Pi ⊕ Gi.
  • Ci + 1 = Ci.Pi + Gi.

Dlatego bity przenoszenia C1, C2, C3 i C4 można obliczyć jako

  • C1 = C0.P0 + G0.
  • C2 = C1.P1 + G1 = (C0.P0 + G0) .P1 + G1.
  • C3 = C2.P2 + G2 = (C1.P1 + G1) .P2 + G2.
  • C4 = C3.P3 + G3 = C0.P0.P1.P2.P3 + P3.P2.P1.G0 + P3.P2.G1 + G2.P3 + G3.

Można to zaobserwować z równań, które przenoszą Ci + 1 zależy tylko od przeniesienia C0, a nie od pośrednich bitów przenoszenia.

Carry-Look-ahead-Adder-Truth-Table

Carry-Look-ahead-Adder-Truth-Table

Schemat obwodu

Powyższe równania są implementowane przy użyciu dwupoziomowych obwodów kombinacyjnych wraz z bramkami AND, OR, przy czym zakłada się, że bramki mają wiele wejść.

Carry-Output-Generation-Circuit-of-Carry-Look-ahead-Adder

Carry-Output-Generation-Circuit-of-Carry-Look-ahead-Adder

Obwód Carry Look-ahead Adder dla 4-bitów jest przedstawiony poniżej.

4-bitowy schemat obwodu sumującego-Carry-Look-ahead

4-bitowy schemat obwodu sumującego-Carry-Look-ahead

8-bitowe i 16-bitowe obwody sumatora Carry Look-ahead mogą być zaprojektowane przez kaskadowanie 4-bitowego obwodu sumatora z logiką przenoszenia.

Zalety Carry Look-ahead Adder

W tym sumatorze opóźnienie propagacji jest zmniejszone. Wyjście przeniesienia na dowolnym etapie jest zależne tylko od początkowego bitu przeniesienia etapu początkowego. Za pomocą tego sumatora można obliczyć wyniki pośrednie. Ten dodatek jest najszybszym dodatkiem używanym do obliczeń.

Aplikacje

Szybkie sumatory z wyprzedzeniem przenoszenia są używane jako układy scalone. Stąd łatwo jest osadzić sumator w obwodach. Łącząc dwa lub więcej sumatorów, można łatwo wykonać obliczenia funkcji logicznych o większej liczbie bitów. Tutaj wzrost liczby bramek jest również umiarkowany, gdy jest używany do wyższych bitów.

W przypadku tego Addera istnieje kompromis między obszarem a prędkością. Kiedy jest używany do większych obliczeń bitowych, zapewnia dużą prędkość, ale złożoność obwodu jest również zwiększona, zwiększając w ten sposób obszar zajmowany przez obwód. Ten sumator jest zwykle implementowany jako 4-bitowe moduły, które są kaskadowane razem, gdy są używane do wyższych obliczeń. Ten dodatek jest droższy w porównaniu z innymi dodatkami.

W przypadku obliczeń logicznych w komputerach regularnie używane są sumatory. Charles Babbage zaimplementował mechanizm przewidywania przenoszonego bitu w komputerach, aby zmniejszyć opóźnienie spowodowane przez ripple carry adders . Podczas projektowania systemu szybkość obliczeń jest najważniejszym czynnikiem decydującym dla projektanta. W 1957 roku Gerald B. Rosenberger opatentował nowoczesny dodatek Binary Carry Look-ahead Adder. Na podstawie analizy opóźnienia bramki i symulacji przeprowadzane są eksperymenty w celu zmodyfikowania obwodu tego sumatora, aby był jeszcze szybszy. Jakie jest opóźnienie propagacji dla n-bitowego sumatora z wyprzedzeniem przenoszenia, gdy dane opóźnienie każdej bramki wynosi 20?

Źródło obrazu

Research Gate