PREVIEW
Full Adder

Full Adder

Arithmetic signal_cellular_alt_2_bar Intermediate schedule 18 min

Interactive Circuit

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.

Volladdierer-Komponente

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

  1. 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
  2. Mit grundlegenden Logikgattern

    • Direkte Implementierung mit XOR-, AND- und OR-Gattern
    • Optimierte Implementierungen können die Gatteranzahl reduzieren
  3. Implementierung auf Transistorebene

    • CMOS: Mit komplementären MOSFETs
    • TTL: Mit Bipolartransistoren
    • Optimiert für Geschwindigkeit, Leistung oder Fläche
  4. Integrierte Schaltkreise

    • Erhältlich in 74xx-Logikfamilien (z. B. 74283 4-Bit-Volladdierer)
    • Oft Teil größerer arithmetischer Komponenten
  5. 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

  1. Mehrbit-Binäraddition

    • Kaskadiert zur Bildung von Ripple-Carry-Addierern
    • Wird in Arithmetisch-Logischen Einheiten (ALUs) verwendet
    • Wesentlich für Ganzzahlarithmetik in CPUs
  2. Subtraktionsschaltungen

    • Verwendet mit invertierten Eingängen und Eingangsübertrag auf 1 gesetzt
    • Bildet die Grundlage für die Zweierkomplement-Subtraktion
  3. Arithmetisch-Logische Einheiten (ALUs)

    • Kernkomponente in CPU-Arithmetikoperationen
    • Wird für Addition, Subtraktion und verwandte Operationen verwendet
  4. Adressberechnung

    • Wird in der Speicheradressberechnung verwendet
    • Eingesetzt beim Inkrementieren des Programmzählers
  5. Zähler und Inkrementierer

    • Wird in digitalen Zählern verwendet
    • Eingesetzt in Zustandsautomaten
  6. Digitale Signalverarbeitung

    • Wird in Multiply-Accumulate-Operationen verwendet
    • Komponente in digitalen Filtern
  7. Fehlererkennung/-korrektur

    • Wird in Paritäts- und Prüfsummenberechnungen verwendet
    • Komponente in CRC- und ECC-Schaltungen

Einschränkungen

  1. Ü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
  2. 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

school Lernpfad

arrow_back Voraussetzungen

arrow_forward Nächste Schritte

help_outline Häufig gestellte Fragen

Was ist ein Volladdierer?

Ein Volladdierer addiert drei Bits: zwei Operandenbits (A,B) plus einen Übertragseingang (Cin) von der vorherigen Stufe und erzeugt Summe und Übertragsausgang.

Wie baue ich einen Mehrbit-Addierer?

Verketten Sie Volladdierer und verbinden Sie jeden Übertragsausgang mit dem Übertragseingang der nächsten Stufe. Dies ergibt einen Ripple-Carry-Addierer.

play_arrow Live-Schaltung ausführen

Weitere Komponenten ansehen