Ripple-Carry Adder

本文介绍了一种使用多个全加器模块构建的N位级联进位加法器。通过将每个全加器的进位输出(Cout)连接到下一个全加器的进位输入(Cin),形成了级联进位加法器。文中还提到,对于N位的级联进位加法器,传播延迟为(2N+1)Δt,随着输入数据位宽的增加,传播延迟也会单调增加。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

It is possible to create a logical circuit using multiple full adders to add N-bit numbers. Each full adder inputs a Cin, which is the Cout of the previous adder. This kind of adder is a ripple carry adder, since each carry bit "ripples" to the next full adder. Note that the first (and only the first) full adder may be replaced by a half adder.

image

image

For a N-bit Ripple-Carry Adder, the propagation delay is (2N+1) ∆t. That is, the propagation delay of a N-bit Ripple-Carry Adder will be monotonously increasing according to the bit width of input data.

So, the propagation delay will be very large if the bit width increased to a large number. It’s very slow.


//Edit by Ray@SEU.IC

//Jan 10th, 2011

//Ver. 1.0

//It's a 4-bit ripple-carry adder using 4 Full_Adder

module Ripple_Carry_Adder_Bit(A, B, Cin, Sum, Cout);

input [3:0] A, B;

input Cin;

output [3:0]Sum;

output Cout;

wire Cout_0, Cout_1, Cout_2;

Full_Adder u0(A[0],B[0],Cin, Sum[0], Cout_0);

Full_Adder u1(A[1],B[1],Cout_0, Sum[1], Cout_1);

Full_Adder u2(A[2],B[2],Cout_1, Sum[2], Cout_2);

Full_Adder u3(A[3],B[3],Cout_2, Sum[3], Cout);

endmodule


image

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值