Ripple Carry Adder: Работа, видове и приложенията му

Опитайте Нашия Инструмент За Премахване На Проблемите





В цифрова електроника добавянето на двубитови двоични числа може да бъде възможно чрез използване половин суматор . И ако входната последователност има трибитова последователност, тогава процесът на добавяне може да бъде завършен с използване на пълен суматор. Но ако броят на битовете е по-голям във входната последователност, тогава процесът може да бъде завършен с помощта на половин суматор. Тъй като пълният суматор не може да завърши операцията по добавяне. Така че тези недостатъци могат да бъдат преодолени чрез използване на “Ripple Carry Adder”. Това е уникален тип логическа схема използва се за добавяне на N-битови числа при цифрови операции. Тази статия описва общ преглед на това, което е добавяне на пулсации и неговата работа.

Какво представлява Ripple Carry Adder?

Структура от множество пълни суматори е каскадна по начин, който дава резултатите от добавянето на n битова двоична последователност. Този суматор включва каскадни пълни суматори в структурата си, така че пренасянето ще се генерира на всеки етап на пълен суматор в веригата на разпръскване на суматора. Тези изводи за пренасяне на всеки етап на пълен разширител се препращат към следващия му пълен разширител и се прилагат като пренос на вход към него. Този процес продължава до последния си етап на пълен суматор. И така, всеки изходен бит за пренасяне се пулсира до следващия етап на пълен суматор. Поради тази причина той е наречен „РИПЪЛ КРЕЙД АДЕР“. Най-важната характеристика на него е да се добавят последователностите на входните битове, независимо дали последователността е 4-битова или 5-битова или друга.




„Един от най-важните моменти, които трябва да се имат предвид в този сумиращ сумата, е, че крайният изход е известен само след като изходните изходи са генерирани от всеки пълен етап на сумиране и препратени към следващия му етап. Така че ще има закъснение, за да се получи резултатът с използването на този суматор за носене ”.

Съществуват различни видове добавки за пулсиране. Те са:



  • 4-битов разширителен разширител
  • 8-битов пулсатор за пренасяне
  • 16-битов суичър за носене на вълни

Първо, ще започнем с 4-битови суичми за носене на пулсации и след това 8 битови и 16-битови суматори за носене на пулсации.

4-битов Ripple Carry Adder

Диаграмата по-долу представлява 4-битовия суматор за пренасяне на вълни. В този суматор четири пълни суматора са свързани в каскада. Co е входният бит за носене и винаги е нула. Когато този входен пренос ‘Co’ се приложи към двете входни последователности A1 A2 A3 A4 и B1 B2 B3 B4, тогава изходът е представен с S1 S2 S3 S4 и изходът носи C4.


4-битова RCA диаграма

Работа на 4-битов Ripple Carry Adder

  • Да вземем пример за две входни последователности 0101 и 1010. Те представляват A4 A3 A2 A1 и B4 B3 B2 B1.
  • Съгласно тази концепция на сумата, въвеждането на въвеждане е 0.
  • Когато Ao & Bo се прилагат на 1-ви пълен суматор, заедно с въвеждането 0.
  • Тук A1 = 1 B1 = 0 Cin = 0
  • Сумата (S1) и преносът (C1) ще бъдат генерирани според уравненията Sum и Carry на този суматор. Според неговата теория изходното уравнение за Sum = A1⊕B1⊕Cin и Carry = A1B1⊕B1Cin⊕CinA1
  • Според това уравнение, за 1-ви пълен суматор S1 = 1 и Carry изход, т.е. C1 = 0.
  • Същото като при следващите входни битове A2 и B2, изход S2 = 1 и C2 = 0. Тук важната точка е, че пълният суматор на втория етап получава входно пренасяне, т.е. C1, което е изходното пренасяне на пълния суматор на началния етап.
  • По този начин ще получите крайната изходна последователност (S4 S3 S2 S1) = (1 1 1 1) и изходното пренасяне C4 = 0
  • Това е процесът на добавяне за 4-битови входни последователности, когато е приложен към този суматор за пренасяне.

8-битов Ripple Carry Adder

  • Състои се от 8 пълни суматора, които са свързани в каскадна форма.
  • Всеки изход за пренасяне на пълен суматор е свързан като входящ пренос към пълния суматор на следващия етап.
  • Входните последователности се означават с (A1 A2 A3 A4 A5 A6 A7 A8) и (B1 B2 B3 B4 B5 B6 B7 B8) и съответната изходна последователност се обозначава с (S1 S2 S3 S4 S5 S6 S7 S8).
  • Процесът на добавяне в 8-битов суичър за пренасяне на пулсации е същият принцип, който се използва в 4-битов суматош за пренасяне на пулсации, т.е.
  • Това ще се използва при добавяне на две 8-битови двоични цифри.
8-битов пулсационен сумир

8-битов пулсационен сумир

16-битов Ripple Carry Adder

  • Състои се от 16 пълни суматора, които са свързани в каскадна форма.
  • Всеки изход за пренасяне на пълен суматор е свързан като входящ пренос към пълния суматор на следващия етап.
  • Входните последователности се означават с (A1 ... .. A16) и (B1 ...... B16) и съответната изходна последователност се обозначава с (S1 ...... .. S16).
  • Процесът на добавяне в 16-битов суичър за пренасяне на вълни е същият принцип, който се използва в 4-битов суматор за пренасяне на пулсации, т.е.
  • Това ще се използва при добавяне на две 16-битови двоични цифри.
16-битов суичър за пренасяне

16-битов суичър за пренасяне

Ripple Carry Adder Truth Table

Под таблицата на истината са показани изходните стойности за възможните комбинации на всички входове за добавяне на пулсации.

А1 А2 A3 A4 B4 B3 B2 В1 S4 S3 S2 S1

Носете

0

000000000000
010001001000

0

1

000100000001
101010100100

1

110011001000

1

111011101100

1

111111111110

1

Ripple Carry Adder VHDL код

VHDL (VHSIC HDL) е език за описание на хардуера. Това е език за цифров дизайн. VHDL кодът за този суматор е показан по-долу.

библиотека IEEE
използвайте IEEE.STD_LOGIC_1164.ALL

субект Ripplecarryadder е
Порт (A: в STD_LOGIC_VECTOR (3 до 0)
Б: в STD_LOGIC_VECTOR (3 надолу до 0)
Cin: в STD_LOGIC
S: излиза STD_LOGIC_VECTOR (3 надолу до 0)
Cout: out STD_LOGIC)
край Ripplecarryadder

архитектура Поведението на Ripplecarryadder е - Декларация за компонент на VHDL код с пълно добавяне
компонент full_adder_vhdl_code
Порт (A: в STD_LOGIC
Б: в STD_LOGIC
Cin: в STD_LOGIC
S: излиза STD_LOGIC
Cout: out STD_LOGIC)
краен компонент

- Декларация за междинно носене
Сигнал c1, c2, c3: STD_LOGIC

започнете

- Port Mapping Full Adder 4 пъти
FA1: карта на портовете full_adder_vhdl_code (A (0), B (0), Cin, S (0), c1)
FA2: full_adder_vhdl_code карта на порта (A (1), B (1), c1, S (1), c2)
FA3: карта на портовете full_adder_vhdl_code (A (2), B (2), c2, S (2), c3)
FA4: карта на портовете full_adder_vhdl_code (A (3), B (3), c3, S (3), Cout)

край Поведенчески

Ripple Carry Adder Verilog код

Verilog кодът е език за описание на хардуера. Използва се в цифрови схеми на етап RTL за проектиране и проверка. Кодът на verilog за този суматор за носене е показан по-долу.

модул ripple_carry_adder (a, b, cin, sum, cout)
вход [03: 0] a
вход [03: 0] b
вход cin
изход [03: 0] сума
изходен коут
тел [2: 0] c
фулада a1 (a [0], b [0], cin, сума [0], c [0])
фулада a2 (a [1], b [1], c [0], сума [1], c [1])
фулада a3 (a [2], b [2], c [1], сума [2], c [2])
фулада a4 (a [3], b [3], c [2], сума [3], cout)
краен модул
fulladd модул (А, В, CIN, сума, Cout)
вход a, b, cin
изходна сума, cout
присвояване на сума = (a ^ b ^ cin)
задайте cout = ((a & b) | (b & cin) | (a & cin))

Ripple Carry Adder приложения

Приложенията за добавяне на пулсации включват следното.

  • Тези суми за пренасяне се използват предимно в допълнение към n-битовите входни последователности.
  • Тези суми за носене са приложими при цифровата обработка на сигнала и микропроцесори .

Ripple Carry Adder Предимства

Предимствата на добавянето на пулсации включват следното.

  • Този пренасящ суматор има предимство, тъй като можем да извършим процес на добавяне за n-битови последователности, за да получим точни резултати.
  • Проектирането на този суматор не е сложен процес.

Пулсатор за носене е алтернатива, когато половината суматор и пълните суматори не извършват операцията по добавяне, когато входните битови последователности са големи. Но тук, той ще даде изхода за каквито и да са входни битови последователности с известно закъснение. Според цифровите схеми, ако схемата дава изход със закъснение, няма да бъде за предпочитане. Това може да бъде преодоляно чрез носеща верига за гледане напред.