Volladdierer
Überblick
- Zweck: Der Volladdierer ist eine digitale kombinatorische Schaltung, die die Addition dreier Binärziffern durchführt: zwei Eingangsbits und ein Eingangsübertrag-Bit. Er erzeugt ein Summenbit und ein Ausgangsübertragsbit und ermöglicht so die Mehrbit-Binäraddition.
- Symbol: Der Volladdierer wird durch einen Rechteckblock mit der Beschriftung „FA" mit drei Eingängen (A, B und Eingangsübertrag) und zwei Ausgängen (Summe und Ausgangsübertrag) dargestellt.
- Rolle in DigiSim.io: Dient als wesentlicher Baustein für arithmetische Operationen in digitalen Schaltungen und ermöglicht Additionsoperationen jeder Bitbreite, wenn er in Arrays kombiniert wird.

Funktionale Beschreibung
Logikverhalten
Der Volladdierer addiert drei binäre Eingänge (A, B und Eingangsübertrag) und erzeugt zwei Ausgänge: Summe (das Ergebnisbit) und Ausgangsübertrag (das Überlaufbit).
Wahrheitstabelle:
| Eingang A | Eingang B | Carry In | Summe | Carry Out |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 | 0 |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |
Boolesche Ausdrücke:
- Summe (S) = A ⊕ B ⊕ Cin (XOR aller drei Eingänge)
- Ausgangsübertrag (Cout) = (A · B) + (Cin · (A ⊕ B))
Eingänge und Ausgänge
- Eingänge:
- Eingang A: 1-Bit-Erstbinäreingang.
- Eingang B: 1-Bit-Zweitbinäreingang.
- Eingangsübertrag (Cin): 1-Bit-Übertragseingang aus einer vorhergehenden Addition.
- Ausgänge:
- Summe (S): 1-Bit-Summenausgang, der das Ergebnis der Addition der drei Eingänge darstellt.
- Ausgangsübertrag (Cout): 1-Bit-Übertragsausgang, der den Überlauf darstellt, wenn die Summe 1 überschreitet.
Konfigurierbare Parameter
- Laufzeitverzögerung: Die Zeit, bis sich die Ausgänge nach Eingangsänderungen ändern. DigiSim.io simuliert diese Verzögerung im ereignisgesteuerten Simulator.
Visuelle Darstellung in DigiSim.io
Der Volladdierer wird als Rechteckblock mit Eingängen auf der linken Seite (A, B und Cin) und Ausgängen auf der rechten Seite (Summe und Cout) angezeigt. Er ist deutlich beschriftet, um ihn als Volladdierer zu identifizieren. Wenn die Komponente in einer Schaltung verbunden ist, zeigt sie den Logikzustand ihrer Pins visuell durch Farbänderungen auf den verbindenden Leitungen an.
Pädagogischer Wert
Schlüsselkonzepte
- Binärarithmetik: Demonstriert den grundlegenden Prozess der Binäraddition mit Übertrag.
- Kombinatorische Logik: Zeigt, wie komplexe Operationen aus einfachen Logikgattern aufgebaut werden können.
- Mehrbitoperationen: Veranschaulicht, wie Einzelbit-Komponenten für Mehrbitoperationen kombiniert werden können.
- Übertragsfortpflanzung: Führt das Konzept der Übertragsbits in arithmetischen Operationen ein.
Lernziele
- Die Prinzipien der Binäraddition einschließlich Übertragserzeugung und -fortpflanzung verstehen.
- Lernen, wie Volladdierer Halbaddierer durch Einbeziehung eines Eingangsübertrags erweitern.
- Erkennen, wie mehrere Volladdierer kaskadiert werden können, um Mehrbitaddierer zu erstellen.
- Volladdierer in der Entwicklung arithmetischer Schaltungen wie ALUs und Rechnern anwenden.
- Die Beziehung zwischen booleschen Ausdrücken und arithmetischen Operationen begreifen.
Anwendungsbeispiele/Szenarien
- Mehrbitaddition: Kaskadierung mehrerer Volladdierer zur Addition von Binärzahlen beliebiger Breite.
- Ripple-Carry-Addierer: Erstellung von n-Bit-Addierern durch Verbinden von Volladdierern in Reihe.
- Binärsubtraktion: Verwendung von Volladdierern mit invertierten Eingängen zur Subtraktion über das Zweierkomplement.
- ALU-Implementierung: Aufbau der Additionsfunktion in einer Arithmetisch-Logischen Einheit.
- Zählerentwurf: Verwendung von Volladdierern bei der Implementierung von Binärzählern.
Technische Hinweise
- Der Volladdierer kann mit zwei Halbaddierern und einem OR-Gatter aufgebaut werden.
- Die Übertragsfortpflanzung durch kaskadierte Volladdierer führt zu einer Verzögerung, die mit der Bitbreite zunimmt und zu einem Leistungsengpass in Ripple-Carry-Addierern wird.
- Für Mehrbitaddierer mit höherer Leistung werden alternative Architekturen wie Carry-Lookahead- oder Carry-Select-Addierer verwendet, um die Übertragsfortpflanzungsverzögerung zu mindern.
- Der kritische Pfad des Volladdierers verläuft typischerweise durch die Übertragserzeugungslogik, wodurch die Übertragsfortpflanzung der begrenzende Faktor für die Addierergeschwindigkeit ist.
Eigenschaften
- Laufzeitverzögerung:
- Summe: Typisch 15–25 ns (technologieabhängig)
- Ausgangsübertrag: Typisch 10–20 ns
- Stromverbrauch: Mäßig
- Fan-out: Typisch 10–50 Gatter (technologieabhängig)
- Anzahl der Gatter: 5 grundlegende Gatter in typischer Implementierung (2 XOR, 2 AND, 1 OR)
- Schaltungskomplexität: Mäßig
- Rauschabstand: Mäßig bis hoch (abhängig von der Implementierungstechnologie)
Implementierungsmethoden
Mit Halbaddierern
- Zwei Halbaddierer und ein OR-Gatter
- Der erste Halbaddierer addiert A und B, der zweite addiert diese Summe und Cin
- OR-Gatter kombiniert die Überträge beider Halbaddierer
Mit grundlegenden Logikgattern
- Direkte Implementierung mit XOR-, AND- und OR-Gattern
- Optimierte Implementierungen können die Gatteranzahl reduzieren
Implementierung auf Transistorebene
- CMOS: Mit komplementären MOSFETs
- TTL: Mit Bipolartransistoren
- Optimiert für Geschwindigkeit, Leistung oder Fläche
Integrierte Schaltkreise
- Erhältlich in 74xx-Logikfamilien (z. B. 74283 4-Bit-Volladdierer)
- Oft Teil größerer arithmetischer Komponenten
FPGA-/CPLD-Implementierung
- Kann dedizierte Addiererlogik oder Lookup-Tabellen (LUTs) verwenden
- Oft durch Synthesewerkzeuge optimiert
Schaltungsimplementierung
Mit Halbaddierern
graph LR
InputA[Input A] --> HA1[Half Adder 1]
InputB[Input B] --> HA1
HA1 -->|Sum1| HA2[Half Adder 2]
CinPin[Carry In] --> HA2
HA1 -->|Carry1| OrGate[OR Gate]
HA2 -->|Carry2| OrGate
HA2 -->|Sum| SumOut[Sum Output]
OrGate --> CoutPin[Carry Out]
Mit grundlegenden Gattern
graph TB
InputA[Input A] --> XorGate1[XOR Gate]
InputB[Input B] --> XorGate1
XorGate1 --> XorGate2[XOR Gate]
CinPin[Carry In] --> XorGate2
XorGate2 --> SumOut[Sum]
InputA --> AndGate1[AND Gate]
InputB --> AndGate1
XorGate1 --> AndGate2[AND Gate]
CinPin --> AndGate2
AndGate1 --> OrGate[OR Gate]
AndGate2 --> OrGate
OrGate --> CoutPin[Carry Out]
Anwendungen
Mehrbit-Binäraddition
- Kaskadiert zur Bildung von Ripple-Carry-Addierern
- Wird in Arithmetisch-Logischen Einheiten (ALUs) verwendet
- Wesentlich für Ganzzahlarithmetik in CPUs
Subtraktionsschaltungen
- Verwendet mit invertierten Eingängen und Eingangsübertrag auf 1 gesetzt
- Bildet die Grundlage für die Zweierkomplement-Subtraktion
Arithmetisch-Logische Einheiten (ALUs)
- Kernkomponente in CPU-Arithmetikoperationen
- Wird für Addition, Subtraktion und verwandte Operationen verwendet
Adressberechnung
- Wird in der Speicheradressberechnung verwendet
- Eingesetzt beim Inkrementieren des Programmzählers
Zähler und Inkrementierer
- Wird in digitalen Zählern verwendet
- Eingesetzt in Zustandsautomaten
Digitale Signalverarbeitung
- Wird in Multiply-Accumulate-Operationen verwendet
- Komponente in digitalen Filtern
Fehlererkennung/-korrektur
- Wird in Paritäts- und Prüfsummenberechnungen verwendet
- Komponente in CRC- und ECC-Schaltungen
Einschränkungen
Übertragsfortpflanzungsverzögerung
- In kaskadierten (Ripple-Carry-)Implementierungen müssen Überträge durch jede Stufe propagieren
- Kann die Leistung von Mehrbitaddierern begrenzen
- Schnellere Architekturen wie Carry-Lookahead-Addierer adressieren diese Einschränkung
Stromverbrauch
- Höher als bei Halbaddierern aufgrund erhöhter Gatteranzahl
- Kann in Hochgeschwindigkeits- oder Addierern mit großer Bitbreite erheblich sein
Verwandte Komponenten
- Halbaddierer: Einfachere Version ohne Eingangsübertrag
- Ripple-Carry-Addierer: Mehrere Volladdierer in Reihe geschaltet
- Carry-Lookahead-Addierer: Fortschrittlicher Addierer mit schnellerer Übertragsfortpflanzung
- Carry-Select-Addierer: Auf Geschwindigkeit optimierter Addierer mit mehreren Ergebnispfaden
- Carry-Skip-Addierer: Addierer mit verbesserter Übertragsfortpflanzung durch Skip-Logik
- Binärzähler: Sequentielle Schaltung, die Addierer zum Zählen verwendet
- Arithmetisch-Logische Einheit (ALU): Integriert Addierer für arithmetische Operationen