行波进位加法器(IC学习笔记13——加法器)

发布时间:2025-12-10 19:25:51 浏览次数:15

IC学习笔记13——加法器-行波进位加法器延迟

IC学习笔记13——加法器一、_半加器的逻辑电路图

一、半加器

1.1 半加器逻辑功能

二、全加器

2.1 全加器逻辑功能

2.2 全加器电路图

2.3 半加器组成全加器

全加器除了上面展示的电路图之外,还可以用两个半加器构成,电路图如下所示:

使用代码描述如下,假如半加器模块为

                     module half_adder(                                                    input   A,B,                                                    output  s,cout                                       );                                        assign  cout=A&B;                                        assign    s =A^B;                     endmodule

希望我今天分享的这篇文章可以帮到您。

全加器使用半加器模块如下所示

                    module full_adder(                                                              input   A,B,cin,                                                     output   s,cout                                        );                                                      wire  s1,cout1;                            wire  cout2;                           half_adder u1(.A(A),.B(B),.s(s1),.cout(cout1));                           half_adder u2(.A(s1),.B(cin),.s(s),.cout(cout2));                           assign    cout  =cout1|cout2;                   endmodule

三、行波进位加法器

3.1 行波进位加法器电路图

对于多位数的相加我们使用行波进位加法器,也称串行进位加法器。只需要依次将低位全加器的进位输出端Cout接到高位全加器的进位端Cin,就可以构成行波进位加法器。

如上图所示,展示的就是被加数1101和加数0110的行波进位加法器。
但是这种加法器有非常大的缺点就是运算速度很慢。在最不利的情况下,做一次加法运算需要经过4个全加器的传输延迟时间才能得到稳定可靠的运算结果。
但考虑到行波进位加法器的电路结构比较简单,因而在对运算速度要求不高的设备中,这种加法器仍不失为一种可取的电路。

3.2 行波进位加法器的延迟

行波进位加法器的关键路径如上图红线所示,假设经过一个门电路的延迟时间为T,上图延迟时间为(T+T)*4+T=9T。对于一个n bit的行波进位加法器,其延迟(T+T)*n+T=(2n+1)*T。

四、超前进位加法器

4.1 超前进位加法器的原理

我们知道,加到第i位的进位输入信号是这两个加数第i位以下各位状态的函数,所以第i位的进位输入信号(Cin)i一定能由Ai-1Ai-2…A0和Bi-1Bi-2…B0唯一确定。根据这个原理,就可以通过逻辑电路事先得出每一位全加器的进位输入信号,而无需再从最低位开始向高位逐位传递进位信号了,这就有效提高了运算速度。
由全加器的真值表可以得知进位输入信号的产生有两种情况,第一种是AB=1,此时Cout=1第二种情况是A+B=1且Cin=1,也会产生Cout=1
那么两个多位数中第i位相加产生的进位输出Cout可以表示为

                   (Cout)i=AiBi+(Ai+Bi)(Cin)i

如果将AiBi定义为进位生成函数Gi,同时将(Ai+Bi)定义为传送函数Pi,上式就可以变为

                   (Cout)i=Gi+Pi(Cin)i

(cin)i可以表示成

                   (Cin)i=(Gi-1)+(Pi-1)(Cin)i-1

所以 (Cout)i可以表示成

                  (Cout)i=Gi+Pi(Cin)i                         =Gi+Pi[(Gi-1)+(Pi-1)(Cin)i-1]                         =Gi+Pi(Gi-1)+Pi(Pi-1)(Pi-2)+...+Pi(Pi-1)...P1G0+Pi(Pi-1)...P0(Cin)0

由全加器逻辑表达式第i位和Si的逻辑式为

                      Si=Ai⊕Bi⊕(Cin)i

4.2超前进位加法器的电路图

需要做网站?需要网络推广?欢迎咨询客户经理 13272073477