Computer/Computer Structure

Ripple Carry Adder

고양이는생선을좋아해 2013. 5. 6. 10:28

 

 

 

여러 bit를 가지는 두 수를 더하기 위한 간단한 형태의 가산기

더하고자 하는 bit수 만큼 Full Adder를 연결(그림은 4bit)

 

가장 구현하기 쉬운 Adder로서 Carry가 발생할때마다 지연이 생기는 단점이 있다.

Carry가 하나도 발생하지 않는다면 다른 Adder와 비교해도 느리지 않다.

 

module RCA(a,b,ci,s,co);
input [3:0] a,b; 
input ci;   
output [3:0] s;
output co;

wire [2:0] c;

  

FA u_FA1(.a(a[0]),.b(b[0]),.ci(ci),.s(s[0]),.co(c[0]));
FA u_FA2(.a(a[1]),.b(b[1]),.ci(c[0]),.s(s[1]),.co(c[1]));
FA u_FA3(.a(a[2]),.b(b[2]),.ci(c[1]),.s(s[2]),.co(c[2]));
FA u_Fa4(.a(a[3]),.b(b[3]),.ci(c[2]),.s(s[3]),.co(co));


endmodule