Ripple Carry Adder: Arbeitsweise, Typen und ihre Anwendungen

Versuchen Sie Unser Instrument, Um Probleme Zu Beseitigen





Im Digitale Elektronik Das Hinzufügen von Zwei-Bit-Binärzahlen kann mithilfe von möglich sein halber Addierer . Wenn die Eingabesequenz eine Drei-Bit-Sequenz hat, kann der Additionsprozess unter Verwendung eines Volladdierers abgeschlossen werden. Wenn jedoch die Anzahl der Bits in der Eingabesequenz größer ist, kann der Vorgang unter Verwendung eines Halbaddierers abgeschlossen werden. Weil der Volladdierer den Additionsvorgang nicht abschließen kann. Diese Nachteile können also mit „Ripple Carry Adder“ überwunden werden. Es ist eine einzigartige Art von Logikschaltung wird zum Hinzufügen der N-Bit-Zahlen in digitalen Operationen verwendet. Dieser Artikel beschreibt eine Übersicht über den Ripple-Carry-Addierer und seine Funktionsweise.

Was ist Ripple Carry Adder?

Eine Struktur mehrerer Volladdierer wird auf eine Weise kaskadiert, um die Ergebnisse der Addition einer n-Bit-Binärsequenz zu erhalten. Dieser Addierer enthält kaskadierte Volladdierer in seiner Struktur, so dass der Übertrag in jeder Volladdiererstufe in einer Ripple-Carry-Addiererschaltung erzeugt wird. Diese Übertragsausgabe in jeder Volladdiererstufe wird an ihren nächsten Volladdierer weitergeleitet und dort als Übertragseingabe an ihn angelegt. Dieser Prozess wird bis zur letzten Volladdiererphase fortgesetzt. Somit wird jedes Übertragsausgangsbit zur nächsten Stufe eines Volladdierers gewellt. Aus diesem Grund wird es als 'RIPPLE CARRY ADDER' bezeichnet. Das wichtigste Merkmal ist das Hinzufügen der Eingangsbitsequenzen, unabhängig davon, ob die Sequenz 4 Bit oder 5 Bit oder eine beliebige ist.




„Einer der wichtigsten Punkte, die bei diesem Übertragsaddierer berücksichtigt werden müssen, ist, dass die endgültige Ausgabe erst bekannt ist, nachdem die Übertragsausgaben von jeder Volladdiererstufe erzeugt und an die nächste Stufe weitergeleitet wurden. Es wird also eine Verzögerung geben, um das Ergebnis bei Verwendung dieses Carry-Addierers zu erhalten. “

Es gibt verschiedene Arten von Ripple-Carry-Addierern. Sie sind:



  • 4-Bit-Ripple-Carry-Addierer
  • 8-Bit-Ripple-Carry-Addierer
  • 16-Bit-Ripple-Carry-Addierer

Zuerst beginnen wir mit 4-Bit-Ripple-Carry-Addierern und dann mit 8-Bit- und 16-Bit-Ripple-Carry-Addierern.

4-Bit-Ripple-Carry-Addierer

Das folgende Diagramm zeigt den 4-Bit-Ripple-Carry-Addierer. In diesem Addierer sind vier Volladdierer in Kaskade verbunden. Co ist das Übertragseingangsbit und es ist immer Null. Wenn dieser Eingangsübertrag 'Co' auf die beiden Eingangssequenzen A1 A2 A3 A4 und B1 B2 B3 B4 angewendet wird, wird der Ausgang mit S1 S2 S3 S4 und der Ausgangsübertrag C4 dargestellt.


4-Bit-Cinch-Diagramm

Funktionieren des 4-Bit-Ripple-Carry-Addierers

  • Nehmen wir ein Beispiel für zwei Eingabesequenzen 0101 und 1010. Diese repräsentieren die A4 A3 A2 A1 und B4 B3 B2 B1.
  • Gemäß diesem Addiererkonzept ist der Eingabeübertrag 0.
  • Wenn Ao & Bo beim 1. Volladdierer zusammen mit dem Eingangsübertrag 0 angewendet werden.
  • Hier ist A1 = 1 B1 = 0 Cin = 0
  • Summe (S1) und Übertrag (C1) werden gemäß den Summen- und Übertragsgleichungen dieses Addierers erzeugt. Gemäß seiner Theorie ist die Ausgangsgleichung für die Summe = A1⊕B1⊕Cin und Carry = A1B1⊕B1Cin⊕CinA1
  • Gemäß dieser Gleichung ist für den 1. Volladdierer S1 = 1 und die Übertragsausgabe, d. H. C1 = 0.
  • Das gleiche wie für die nächsten Eingangsbits A2 und B2, Ausgang S2 = 1 und C2 = 0. Hier ist der wichtige Punkt, dass der Volladdierer der zweiten Stufe einen Eingangsübertrag erhält, d. H. C1, der der Ausgangsübertrag des Volladdierers der Anfangsstufe ist.
  • Auf diese Weise wird die endgültige Ausgangssequenz (S4 S3 S2 S1) = (1 1 1 1) und der Ausgangsübertrag C4 = 0 erhalten
  • Dies ist der Additionsprozess für 4-Bit-Eingabesequenzen, wenn er auf diesen Übertragsaddierer angewendet wird.

8-Bit-Ripple-Carry-Addierer

  • Es besteht aus 8 Volladdierern, die in kaskadierter Form verbunden sind.
  • Jeder Volladdierer-Übertragsausgang ist als Eingangsübertrag mit dem Volladdierer der nächsten Stufe verbunden.
  • Die Eingabesequenzen werden mit (A1 A2 A3 A4 A5 A6 A7 A8) und (B1 B2 B3 B4 B5 B6 B7 B8) bezeichnet, und ihre relevante Ausgabesequenz wird mit (S1 S2 S3 S4 S5 S6 S7 S8) bezeichnet.
  • Der Additionsprozess in einem 8-Bit-Ripple-Carry-Addierer ist das gleiche Prinzip, das in einem 4-Bit-Ripple-Carry-Addierer verwendet wird, d. H. Jedes Bit aus zwei Eingabesequenzen wird zusammen mit dem Eingangsübertrag addiert.
  • Dies wird verwendet, wenn zwei 8-Bit-Binärziffern hinzugefügt werden.
8bit-Ripple-Carry-Addierer

8bit-Ripple-Carry-Addierer

16-Bit-Ripple-Carry-Addierer

  • Es besteht aus 16 Volladdierern, die in kaskadierter Form verbunden sind.
  • Jeder Volladdierer-Übertragsausgang ist als Eingangsübertrag mit dem Volladdierer der nächsten Stufe verbunden.
  • Die Eingabesequenzen werden mit (A1… .. A16) und (B1 …… B16) bezeichnet, und ihre relevante Ausgabesequenz wird mit (S1 …… .. S16) bezeichnet.
  • Der Additionsprozess in einem 16-Bit-Ripple-Carry-Addierer ist das gleiche Prinzip, das in einem 4-Bit-Ripple-Carry-Addierer verwendet wird, d. H. Jedes Bit aus zwei Eingabesequenzen wird zusammen mit dem Eingabe-Carry addiert.
  • Dies wird verwendet, wenn zwei 16-Bit-Binärziffern hinzugefügt werden.
16-Bit-Ripple-Carry-Addierer

16-Bit-Ripple-Carry-Addierer

Ripple Carry Adder Wahrheitstabelle

Die folgende Wahrheitstabelle zeigt die Ausgabewerte für die möglichen Kombinationen aller Eingänge für den Ripple-Carry-Addierer.

A1 A2 A3 A4 B4 B3 B2 B1 S4 S3 S2 S1

Tragen

0

000000000000
010001001000

0

1

000100000001
101010100100

1

110011001000

1

111011101100

1

111111111110

1

Ripple Carry Adder VHDL-Code

VHDL (VHSIC HDL) ist die Hardwarebeschreibungssprache. Es ist eine digitale Designsprache. Der VHDL-Code für diesen Übertragsaddierer ist unten gezeigt.

Bibliothek IEEE
Verwenden Sie IEEE.STD_LOGIC_1164.ALL

Entität Ripplecarryadder ist
Port (A: in STD_LOGIC_VECTOR (3 bis 0)
B: in STD_LOGIC_VECTOR (3 bis 0)
Cin: in STD_LOGIC
S: out STD_LOGIC_VECTOR (3 bis 0)
Cout: out STD_LOGIC)
Ende Ripplecarryadder

Architektur Das Verhalten von Ripplecarryadder ist - Full Adder VHDL Code Component Declaration
Komponente full_adder_vhdl_code
Port (A: in STD_LOGIC
B: in STD_LOGIC
Cin: in STD_LOGIC
S: out STD_LOGIC
Cout: out STD_LOGIC)
Endkomponente

- Intermediate Carry-Erklärung
Signal c1, c2, c3: STD_LOGIC

Start

- Port Mapping Full Adder 4 mal
FA1: Portzuordnung full_adder_vhdl_code (A (0), B (0), Cin, S (0), c1)
FA2: Portzuordnung full_adder_vhdl_code (A (1), B (1), c1, S (1), c2)
FA3: full_adder_vhdl_code Port Map (A (2), B (2), c2, S (2), c3)
FA4: Portzuordnung full_adder_vhdl_code (A (3), B (3), c3, S (3), Cout)

Verhalten beenden

Ripple Carry Adder Verilog-Code

Verilog-Code ist eine Hardwarebeschreibungssprache. Es wird in digitalen Schaltkreisen in der RTL-Phase zu Entwurfs- und Überprüfungszwecken verwendet. Der Verilog-Code für diesen Carry-Addierer ist unten dargestellt.

Modul ripple_carry_adder (a, b, cin, sum, cout)
Eingabe [03: 0] a
Eingabe [03: 0] b
Eingabe cin
Ausgabe [03: 0] Summe
Ausgabe cout
Draht [2: 0] c
fulladd a1 (a [0], b [0], cin, summe [0], c [0])
fulladd a2 (a [1], b [1], c [0], summe [1], c [1])
fulladd a3 (a [2], b [2], c [1], summe [2], c [2])
fulladd a4 (a [3], b [3], c [2], summe [3], cout)
Endmodul
fulladd Modul (a, b, CIN, sum, cout)
Eingabe a, b, cin
Ausgangssumme, cout
zuweisen sum = (a ^ b ^ cin)
zuweisen cout = ((a & b) | (b & cin) | (a & cin))

Ripple Carry Adder-Anwendungen

Die Ripple-Carry-Addierer-Anwendungen umfassen Folgendes.

  • Diese Übertragsaddierer werden hauptsächlich zusätzlich zu n-Bit-Eingabesequenzen verwendet.
  • Diese Übertragsaddierer sind in der digitalen Signalverarbeitung und anwendbar Mikroprozessoren .

Vorteile von Ripple Carry Adder

Die Vorteile des Ripple-Carry-Addierers umfassen Folgendes.

  • Dieser Carry-Addierer hat den Vorteil, dass wir einen Additionsprozess für n-Bit-Sequenzen durchführen können, um genaue Ergebnisse zu erhalten.
  • Das Entwerfen dieses Addierers ist kein komplexer Prozess.

Ripple Carry Addierer ist eine Alternative, wenn Halbaddierer und Volladdierer die Additionsoperation nicht ausführen, wenn die Eingangsbitsequenzen groß sind. Aber hier wird der Ausgang für alle Eingangsbitsequenzen mit einer gewissen Verzögerung ausgegeben. Gemäß den digitalen Schaltungen ist es nicht vorzuziehen, wenn die Schaltung eine verzögerte Ausgabe liefert. Dies kann durch eine Carry-Look-Ahead-Addiererschaltung überwunden werden.