Ripple Carry Adder: Funcionamento, Tipos e Suas Aplicações

Ripple Carry Adder: Funcionamento, Tipos e Suas Aplicações

No eletrônica digital a adição de números binários de dois bits pode ser possível usando meio somador . E se a sequência de entrada tiver uma sequência de três bits, o processo de adição pode ser concluído usando um somador completo. Mas se o número de bits estiver mais na sequência de entrada, o processo pode ser concluído usando meio somador. Porque o somador completo não pode completar a operação de adição. Portanto, essas desvantagens podem ser superadas usando o “Ripple Carry Adder”. É um tipo único de circuito lógico usado para adicionar os números de N bits em operações digitais. Este artigo descreve uma visão geral do que é ripple-carry-adder e sua operação.

O que é Ripple Carry Adder?

Uma estrutura de múltiplos somadores completos é colocada em cascata de forma a fornecer os resultados da adição de uma sequência binária de n bits. Este somador inclui somadores completos em cascata em sua estrutura, portanto, o carry será gerado em cada estágio de somador completo em um circuito somador de transporte de ondulação. A saída de carry em cada estágio de somador completo é encaminhada para seu próximo somador completo e aplicada como uma entrada de transporte a ele. Esse processo continua até seu último estágio de somador completo. Assim, cada bit de saída de transporte é propagado para o próximo estágio de um somador completo. Por este motivo, é denominado “RIPPLE CARRY ADDER”. A característica mais importante disso é adicionar as sequências de bits de entrada, seja a sequência de 4 ou 5 bits ou qualquer outra.


“Um dos pontos mais importantes a serem considerados neste somador de carry é que a saída final é conhecida somente depois que as saídas de transporte são geradas por cada estágio de somador completo e encaminhado para seu próximo estágio. Portanto, haverá um atraso para obter o resultado com o uso deste somador de carry ”.



Existem vários tipos de somadores de transporte de ondulação. Eles estão:

  • Somador de transporte de ondulação de 4 bits
  • Somador de transporte de ondulação de 8 bits
  • Somador de transporte de ondulação de 16 bits

Primeiro, começaremos com adicionadores de transporte de ondulação de 4 bits e, em seguida, adicionadores de transporte de ondulação de 8 bits e 16 bits.

4-bit Ripple Carry Adder

O diagrama abaixo representa o somador ripple-carry de 4 bits. Neste somador, quatro somadores completos são conectados em cascata. Co é o bit de entrada de transporte e é sempre zero. Quando este transporte de entrada 'Co' é aplicado às duas sequências de entrada A1 A2 A3 A4 e B1 B2 B3 B4, a saída é representada com S1 S2 S3 S4 e o transporte de saída C4.


Diagrama RCA de 4 bits

Trabalhando com o Ripple Carry Adder de 4 bits

  • Vamos dar um exemplo de duas sequências de entrada 0101 e 1010. Estas estão representando o A4 A3 A2 A1 e B4 B3 B2 B1.
  • De acordo com este conceito de somador, o transporte de entrada é 0.
  • Quando Ao e Bo são aplicados no primeiro somador completo junto com o transporte de entrada 0.
  • Aqui A1 = 1 B1 = 0 Cin = 0
  • Soma (S1) e transporte (C1) serão gerados de acordo com as equações Soma e Transporte deste somador. De acordo com sua teoria, a equação de saída para Soma = A1⊕B1⊕Cin e Carry = A1B1⊕B1Cin⊕CinA1
  • De acordo com esta equação, para o 1º somador completo S1 = 1 e Carry output, ou seja, C1 = 0.
  • O mesmo que para os próximos bits de entrada A2 e B2, saída S2 = 1 e C2 = 0. Aqui, o ponto importante é que o somador completo do segundo estágio obtém o transporte de entrada, ou seja, C1 que é o transporte de saída do somador completo do estágio inicial.
  • Assim obteremos a sequência de saída final (S4 S3 S2 S1) = (1 1 1 1) e transporte de saída C4 = 0
  • Este é o processo de adição para sequências de entrada de 4 bits quando aplicado a este somador de transporte.

Ripple Carry Adder de 8 bits

  • Consiste em 8 somadores completos que são conectados em cascata.
  • Cada saída de carry de somador completo é conectada como um transporte de entrada para o próximo somador completo de estágio.
  • As sequências de entrada são denotadas por (A1 A2 A3 A4 A5 A6 A7 A8) e (B1 B2 B3 B4 B5 B6 B7 B8) e sua sequência de saída relevante é denotada por (S1 S2 S3 S4 S5 S6 S7 S8).
  • O processo de adição em um somador de transporte de ondulação de 8 bits é o mesmo princípio que é usado em um somador de transporte de ondulação de 4 bits, ou seja, cada bit de duas sequências de entrada será adicionado junto com o transporte de entrada.
  • Isso será usado quando a adição de duas sequências de dígitos binários de 8 bits.
8bit-ripple-carry-adder

8bit-ripple-carry-adder

Ripple Carry Adder de 16 bits

  • Consiste em 16 somadores completos que são conectados em cascata.
  • Cada saída de carry de somador completo é conectada como um transporte de entrada para o próximo somador completo de estágio.
  • As sequências de entrada são denotadas por (A1… .. A16) e (B1 …… B16) e sua sequência de saída relevante é denotada por (S1 …… .. S16).
  • O processo de adição em um somador de transporte de ondulação de 16 bits é o mesmo princípio que é usado em um adicionador de transporte de ondulação de 4 bits, ou seja, cada bit de duas sequências de entrada será adicionado junto com o transporte de entrada.
  • Isso será usado quando a adição de duas sequências de dígitos binários de 16 bits.
16-bit-ripple-carry-adder

16-bit-ripple-carry-adder

Tabela da verdade do Ripple Carry Adder

A tabela verdade abaixo mostra os valores de saída para as combinações possíveis de todas as entradas para o somador de ondulação de transporte.

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

Carregar

0

000000000000
010001001000

0

1

000100000001
101010100100

1

110011001000

1

111011101100

1

111111111110

1

Código VHDL do Ripple Carry Adder

VHDL (VHSIC HDL) é uma linguagem de descrição de hardware. É uma linguagem de design digital. O código VHDL para este somador de transporte é mostrado abaixo.

biblioteca IEEE
use IEEE.STD_LOGIC_1164.ALL

entidade Ripplecarryadder é
Porta (A: em STD_LOGIC_VECTOR (3 até 0)
B: em STD_LOGIC_VECTOR (3 até 0)
Cin: em STD_LOGIC
S: out STD_LOGIC_VECTOR (3 até 0)
Cout: out STD_LOGIC)
fim Ripplecarryadder

arquitetura Behavioral of Ripplecarryadder is - Full Adder VHDL Code Component Declaração
componente full_adder_vhdl_code
Porta (A: em STD_LOGIC
B: em STD_LOGIC
Cin: em STD_LOGIC
S: out STD_LOGIC
Cout: out STD_LOGIC)
componente final

- Declaração de transporte intermediário
Sinal c1, c2, c3: STD_LOGIC

começar

- Port Mapping Full Adder 4 vezes
FA1: mapa da porta full_adder_vhdl_code (A (0), B (0), Cin, S (0), c1)
FA2: mapa da porta full_adder_vhdl_code (A (1), B (1), c1, S (1), c2)
FA3: mapa da porta full_adder_vhdl_code (A (2), B (2), c2, S (2), c3)
FA4: mapa da porta full_adder_vhdl_code (A (3), B (3), c3, S (3), Cout)

fim comportamental

Código Verilog do Ripple Carry Adder

O código Verilog é uma linguagem de descrição de hardware. É usado em circuitos digitais no estágio RTL para fins de projeto e verificação. O código verilog para este somador de transporte é mostrado abaixo.

módulo ripple_carry_adder (a, b, cin, sum, cout)
entrada [03: 0] a
entrada [03: 0] b
entrada cin
saída [03: 0] soma
saída cout
fio [2: 0] c
fulladd a1 (a [0], b [0], cin, sum [0], c [0])
fulladd a2 (a [1], b [1], c [0], soma [1], c [1])
fulladd a3 (a [2], b [2], c [1], soma [2], c [2])
fulladd a4 (a [3], b [3], c [2], soma [3], cout)
módulo final
módulo fulladd (a, b, CIN, soma, cout)
insira a, b, cin
soma de saída, cout
atribuir soma = (a ^ b ^ cin)
atribuir cout = ((a & b) | (b & cin) | (a & cin))

Aplicações do Ripple Carry Adder

As aplicações do somador de transporte de ondulação incluem o seguinte.

  • Esses somadores de transporte são usados ​​principalmente em adição às sequências de entrada de n bits.
  • Esses somadores de transporte são aplicáveis ​​no processamento de sinal digital e microprocessadores .

Vantagens do Ripple Carry Adder

As vantagens do adicionador de transporte de ondulação incluem o seguinte.

  • Este somador de carry tem a vantagem de poder realizar o processo de adição para sequências de n bits para obter resultados precisos.
  • O projeto desse somador não é um processo complexo.

Ripple carry adder é uma alternativa para quando meio somador e somadores completos não executam a operação de adição quando as sequências de bits de entrada são grandes. Mas aqui, ele dará a saída para quaisquer sequências de bits de entrada com algum atraso. De acordo com os circuitos digitais, se o circuito der saída com atraso não será preferível. Isso pode ser superado por um circuito somador carry look-ahead.