Ripple Carry Adder: Arbejde, typer og dens applikationer

Ripple Carry Adder: Arbejde, typer og dens applikationer

I digital elektronik tilføjelse af to-bit binære tal kan være mulig ved hjælp af halvmåler . Og hvis indgangssekvensen har en tre-bit sekvens, kan tilføjelsesprocessen afsluttes ved hjælp af en fuld adder. Men hvis antallet af bits er mere i indgangssekvensen, kan processen afsluttes ved hjælp af halv adder. Fordi fuld adder ikke er i stand til at fuldføre tilføjelsesoperationen. Så disse ulemper kan overvindes ved hjælp af 'Ripple Carry Adder'. Det er en unik type logisk kredsløb bruges til at tilføje N-bit numre i digitale operationer. Denne artikel beskriver en oversigt over, hvad der er krusningsbærer og dets funktion.



Hvad er Ripple Carry Adder?

En struktur af flere fulde addere er kaskaderet på en måde, der giver resultaterne af tilføjelsen af ​​en n-bit binær sekvens. Denne adderer indeholder kaskadefyldte adders i sin struktur, så bæringen genereres i hvert fuldt adderingstrin i et krusningsbærende adderkredsløb. Disse bæreoutput i hvert fuldt adderingstrin videresendes til det næste fulde adder og anvendes der som et bæreinput til det. Denne proces fortsætter op til sin sidste fulde adderfase. Så hver bæreoutputbit krølles til det næste trin i en fuld adder. Af denne grund er det navngivet som “RIPPLE CARRY ADDER”. Det vigtigste ved det er at tilføje inputbitsekvenserne, uanset om sekvensen er 4 bit eller 5 bit eller nogen.


”Et af de vigtigste punkter, der skal tages i betragtning i denne bæretæller, er, at den endelige output kun er kendt, efter at udgangene er genereret af hvert fulde addertrin og videresendt til næste trin. Så der vil være en forsinkelse for at få resultatet ved brug af denne bæretilføjelse ”.





Der er forskellige typer i krusningsbærere. De er:

  • 4-bit krusningsbærer
  • 8-bit krusningsbærer
  • 16-bit krusningsbærer

Først starter vi med 4-bit ripple-carry-adder og derefter 8 bit og 16-bit ripple-carry adders.



4-bit krusningsbærer

Nedenstående diagram repræsenterer 4-bit krusningsbærer. I denne adderer er fire fulde tilføjere forbundet i kaskade. Co er den bærende inputbit, og den er altid nul. Når denne indgangsbære 'Co' anvendes til de to indgangssekvenser A1 A2 A3 A4 og B1 B2 B3 B4, derefter output repræsenteret med S1 S2 S3 S4 og output bære C4.


4-bit RCA-diagram

Arbejde med 4-bit Ripple Carry Adder

  • Lad os tage et eksempel på to indgangssekvenser 0101 og 1010. Disse repræsenterer A4 A3 A2 A1 og B4 B3 B2 B1.
  • I henhold til dette adderkoncept er inputbære 0.
  • Når Ao & Bo anvendes ved 1. fulde adder sammen med input bære 0.
  • Her A1 = 1 B1 = 0 Cin = 0
  • Summen (S1) og bæringen (C1) vil blive genereret i henhold til sum- og bære ligningerne for denne addder. I henhold til dens teori er outputligningen for summen = A1⊕B1⊕Cin og Carry = A1B1⊕B1Cin⊕CinA1
  • I henhold til denne ligning for 1. fulde adder S1 = 1 og Carry output dvs. C1 = 0.
  • Samme som for de næste inputbit A2 og B2, output S2 = 1 og C2 = 0. Her er det vigtige punkt, at andet trin fuldadder får inputbæring, dvs. C1, som er outputbæringen af ​​startstadiet fuldadder.
  • På denne måde får den endelige udgangssekvens (S4 S3 S2 S1) = (1 1 1 1) og output bærer C4 = 0
  • Dette er tilføjelsesprocessen for 4-bit indgangssekvenser, når den anvendes til denne bæreadder.

8-bit krusningsbærer

  • Den består af 8 fulde tilføjere, der er forbundet i kaskadeform.
  • Hver fulde adderbæreoutput er forbundet som en indgangsbære til næste trin fuldadder.
  • Indgangssekvenserne er betegnet med (A1 A2 A3 A4 A5 A6 A7 A8) og (B1 B2 B3 B4 B5 B6 B7 B8), og dens relevante udgangssekvens er betegnet med (S1 S2 S3 S4 S5 S6 S7 S8).
  • Tilføjelsesprocessen i en 8-bit krusebæreadder er det samme princip, som anvendes i en 4-bit krusebæreadder, dvs. hver bit fra to indgangssekvenser tilføjes sammen med inputbære.
  • Dette bruges, når der tilføjes to sekvenser med binære cifre på 8 bit.
8bit-krusningsbærer

8bit-krusningsbærer

16-bit Ripple Carry Adder

  • Den består af 16 fulde tilføjere, der er forbundet i kaskadeform.
  • Hver fulde adderbæreoutput er forbundet som en indgangsbære til næste trin fuldadder.
  • Indgangssekvenserne er betegnet med (A1… .. A16) og (B1 …… B16), og dens relevante udgangssekvens er betegnet med (S1 …… .. S16).
  • Tilføjelsesprocessen i en 16-bit krusebæreadder er det samme princip, som bruges i en 4-bit krusningsbæreadder, dvs. hver bit fra to indgangssekvenser vil tilføjes sammen med inputbære.
  • Dette bruges, når der tilføjes to sekvenser med binære cifre på 16 bit.
16-bit-krusningsbærer

16-bit-krusningsbærer

Ripple Carry Adder Sandhedstabel

Nedenstående sandhedstabel viser outputværdierne for de mulige kombinationer af alle input til krusningsbærer.

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

Bære

0

000000000000
010001001000

0

1

000100000001
101010100100

1

110011001000

1

111011101100

1

111111111110

1

Ripple Carry Adder VHDL-kode

VHDL (VHSIC HDL) er hardwarebeskrivelsessprog. Det er et digitalt designsprog. VHDL-koden for denne bæreadder er vist nedenfor.

bibliotek IEEE
brug IEEE.STD_LOGIC_1164.ALL

enhed Ripplecarryadder er
Port (A: i STD_LOGIC_VECTOR (3 ned til 0)
B: i STD_LOGIC_VECTOR (3 ned til 0)
Cin: i STD_LOGIC
S: ud STD_LOGIC_VECTOR (3 ned til 0)
Cout: ud STD_LOGIC)
afslut Ripplecarryadder

arkitektur Behavioral of Ripplecarryadder is - Full Adder VHDL Code Component Declaration
komponent fuld_adder_vhdl_kode
Port (A: i STD_LOGIC
B: i STD_LOGIC
Cin: i STD_LOGIC
S: ude STD_LOGIC
Cout: ud STD_LOGIC)
slutkomponent

- Mellemliggende erklæring
Signal c1, c2, c3: STD_LOGIC

begynde

- Port Mapping Full Adder 4 gange
FA1: fuld_adder_vhdl_code portkort (A (0), B (0), Cin, S (0), c1)
FA2: fuld_adder_vhdl_code portkort (A (1), B (1), c1, S (1), c2)
FA3: fuld_adder_vhdl_code portkort (A (2), B (2), c2, S (2), c3)
FA4: fuld_adder_vhdl_code portkort (A (3), B (3), c3, S (3), Cout)

slut Adfærdsmæssig

Ripple Carry Adder Verilog-kode

Verilog-kode er et sprog til hardwarebeskrivelse. Det bruges i digitale kredsløb på RTL-scenen til design og verifikationsformål. Verilog-koden for denne bæretilhænger er vist nedenfor.

modul ripple_carry_adder (a, b, cin, sum, cout)
input [03: 0] a
input [03: 0] b
input cin
output [03: 0] sum
output cout
ledning [2: 0] c
fuld tilføjelse a1 (a [0], b [0], cin, sum [0], c [0])
fuld tilføjelse a2 (a [1], b [1], c [0], sum [1], c [1])
fuld tilføjelse a3 (a [2], b [2], c [1], sum [2], c [2])
fulladd a4 (a [3], b [3], c [2], sum [3], cout)
endmodul
fulladd modul (a, b, CIN, sum, cout)
input a, b, cin
output sum, cout
tildele sum = (a ^ b ^ cin)
tildel cout = ((a & b) | (b & cin) | (a & cin))

Ripple Carry Adder-applikationer

Ripple-carry-adder-applikationer inkluderer følgende.

  • Disse bæretilføjere bruges hovedsageligt ud over n-bit input-sekvenser.
  • Disse bæretilføjere er anvendelige til digital signalbehandling og mikroprocessorer .

Fordele ved krusningsbærer

Fordelene ved krusningsbære-adder inkluderer følgende.

  • Denne bæreadder har en fordel, som om vi kan udføre tilføjelsesprocessen for n-bit sekvenser for at få nøjagtige resultater.
  • Designet af denne adder er ikke en kompleks proces.

Ripple bære hugger er et alternativ til, når halv adder og fulde tilføjere ikke udfører tilføjelsesoperationen, når inputbitsekvenserne er store. Men her vil det give output for uanset inputbitsekvenserne med en vis forsinkelse. I henhold til de digitale kredsløb, hvis kredsløbet giver output med forsinkelse, vil det ikke være at foretrække. Dette kan overvindes ved hjælp af et bæreblikket adder-kredsløb.