模块化多位加法器及计算系统

文档序号:1736958 发布日期:2019-12-20 浏览:9次 >En<

阅读说明:本技术 模块化多位加法器及计算系统 (Modular multi-bit adder and computing system ) 是由 陈双文 张楠赓 吴敬杰 马晟厚 刘杰尧 于 2019-09-10 设计创作,主要内容包括:本发明提出了一种模块化多位加法器及计算系统,其中,所述模块化多位加法器包括:最低位输入模块,其输入端口包括最低位的加法输入,输出端口包括最低位的和输出及进位输出;中间位传递模块,其输入端口包括中间位的加法输入及进位输入,输出端口包括中间位的和输出及进位输出;以及最高位输出模块,其输入端口包括最高位的加法输入及进位输入,输出端口包括最高位的和输出。本发明多位加法器及计算系统使用最低位输入模块、中间位传递模块及最高位输出模块组合而成,突破了标准库提供的基本单元所能够达到的极限,进一步优化了加法器面积速度和功耗。(The invention provides a modularized multi-bit adder and a computing system, wherein the modularized multi-bit adder comprises: the input port of the least significant input module comprises an addition input of the least significant, and the output port comprises a sum output and a carry output of the least significant; the input port of the intermediate bit transmission module comprises an addition input and a carry input of the intermediate bit, and the output port of the intermediate bit transmission module comprises a sum output and a carry output of the intermediate bit; and the highest bit output module, its input port includes the addition input and carry input of the highest bit, the output port includes the sum output of the highest bit. The multi-bit adder and the computing system are formed by combining the lowest bit input module, the middle bit transmission module and the highest bit output module, break through the limit which can be reached by the basic unit provided by the standard library, and further optimize the area speed and the power consumption of the adder.)

模块化多位加法器及计算系统

技术领域

本发明属于计算技术领域,具体涉及一种模块化多位加法器及计算系统。

背景技术

随着全球信息技术领域的科技革命和产业变革,近几年计算技术发展非常迅速,加法器则是计算技术发展的基础保障。

加法器按照算法和结构不同,可以分为多种,如算法简单的串行进位加法器,性能较高的超前进位加法器(也称先行进位加法器)、进位选择加法器、并行前缀加法器等;对于高性能的加法器,按照进位链的不同,又有Kogge-Stone加法器、Brent-Kung加法器、Han-Carlson加法器、Sklansky加法器等。串行进位加法器需要一级一级的进位,进位延迟很大。超前进位加法器可以有效的减少进位延迟。为了得到更快的速度,更好的能耗比,更优的面积,超前进位加法器在设计中被广泛的使用。

然而,现有的高性能加法器的算法均是基于标准库的模块,其功耗速度面积受限于标准库的基本模块,算法带来的收益因为使用标准库达到了瓶颈。

发明内容

(一)要解决的技术问题

本发明提供了一种模块化多位加法器及计算系统,以至少部分解决以上所提出的技术问题。

(二)技术方案

根据本发明的一个方面,提供了一种模块化多位加法器,包括:

最低位输入模块,其输入端口包括最低位的加法输入,输出端口包括最低位的和输出及进位输出;

中间位传递模块,其输入端口包括中间位的加法输入及进位输入,输出端口包括中间位的和输出及进位输出;以及

最高位输出模块,其输入端口包括最高位的加法输入及进位输入,输出端口包括最高位的和输出。

在一些实施例中,所述最低位输入模块的最低位的加法输入,所述中间位传递模块的中间位的加法输入及所述最高位输出模块的最高位的加法输入位数可变。

在一些实施例中,所述最低位输入模块的所述最低位的加法输入包括两组输入,分别为A0、A1、A2、A3,B0、B1、B2、B3;所述最低位输入模块的所述最低位的和输出包括S0、S1、S2、S3,所述最低位输入模块的所述进位输出为反向进位输出COX;其中:

S0=(A0^B0);

S1=(A1^B1)^(((A0&B0)));

S2=(A2^B2)^(((A1&B1))|((A0&B0)&(A1|B1)));

S3=(A3^B3)^(((A2&B2))|((A1&B1)&(A2|B2))|((A0&B0)&(A1|B1)&(A2|B2)));

COX=!(((A3&B3))|((A2&B2)&(A3|B3))|((A1&B1)&(A2|B2)&(A3|B3))|((A0&B0)&(A1|B1)&(A2|B2)&(A3|B3)))。

在一些实施例中,所述中间位传递模块的所述中间位的加法输入包括两组输入,分别为A0、A1、A2、A3,B0、B1、B2、B3;所述中间位传递模块的所述进位输入为反向进位输入CIX;所述中间位传递模块的所述中间位的和输出包括S0、S1、S2、S3;所述中间位传递模块的所述进位输出为反向进位输出COX;其中:

S0=(A0^B0)^((!CIX));

S1=(A1^B1)^(((A0&B0))|(!CIX&(A0|B0)));

S2=(A2^B2)^(((A1&B1))|((A0&B0)&(A1|B1))|(!CIX&(A0|B0)&(A1|B1)));

S3=(A3^B3)^(((A2&B2))|((A1&B1)&(A2|B2))|((A0&B0)&(A1|B1)&(A2|B2))|(!CIX&(A0|B0)&(A1|B1)&(A2|B2)));

COX=!(((A3&B3))|((A2&B2)&(A3|B3))|((A1&B1)&(A2|B2)&(A3|B3))|((A0&B0)&(A1|B1)&(A2|B2)&(A3|B3))|(!CIX&(A0|B0)&(A1|B1)&(A2|B2)(A3|B3)))。

在一些实施例中,所述最高位输出模块的所述最高位的加法输入包括两组输入,分别为A0、A1、A2、A3,B0、B1、B2、B3;所述最高位输出模块的所述进位输入为反向进位输入CIX;所述最高位输出模块的所述最高位的和输出包括S0、S1、S2、S3;其中:

S0=(A0^B0)^((!CIX));

S1=(A1^B1)^(((A0&B0))|(!CIX&(A0|B0)));

S2=(A2^B2)^(((A1&B1))|((A0&B0)&(A1|B1))|(!CIX&(A0|B0)&(A1|B1)));

S3=(A3^B3)^(((A2&B2))|((A1&B1)&(A2|B2))|((A0&B0)&(A1|B1)&(A2|B2))|(!CIX&(A0|B0)&(A1|B1)&(A2|B2)))。

在一些实施例中,所述模块化多位加法器为12位加法器,其包括级联连接的一4bit的最低位输入模块、一4bit的中间位传递模块和一4bit的最高位输出模块;其中,所述最低位输入模块的反向/正向进位输出端与所述中间位传递模块的反向/正向进位输入端连接,所述中间位传递模块的反向/正向进位输出端与所述最高位输出模块的反向/正向进位输入端连接。

在一些实施例中,所述模块化多位加法器为16位加法器,其包括级联连接的一4bit的最低位输入模块、一8bit中间位传递模块和一4bit最高位输出模块;其中,所述最低位输入模块的反向/正向进位输出端与所述中间位传递模块的反向/正向进位输入端连接,所述中间位传递模块的反向/正向进位输出端与所述最高位输出模块的反向/正向进位输入端连接。

在一些实施例中,所述模块化多位加法器为16位加法器,其包括级联连接的一4bit最低位输入模块、两个4bit中间位传递模块和一4bit最高位输出模块;其中,所述最低位输入模块的反向/正向进位输出端与所述两个中间位传递模块中的一中间位传递模块的反向/正向进位输入端连接,所述一中间位传递模块的反向/正向进位输出端与所述两个中间位传递模块中的另一中间位传递模块的反向/正向进位输入端连接,所述另一中间位传递模块的反向/正向进位输出端与所述最高位输出模块的反向/正向进位输入端连接。

根据本发明的另一个方面,提供了一种计算系统,其包括如所述的模块化多位加法器。

(三)有益效果

从上述技术方案可以看出,本发明模块化多位加法器及计算系统至少具有以下有益效果其中之一:

(1)本发明提出一种模块化多位加法器,使用最低位输入模块、中间位传递模块及最高位输出模块组合而成,突破了标准库提供的基本单元所能够达到的极限,进一步优化加法器面积速度和功耗。

(2)本发明基于模块化的多位加法器,对加法器的整体性能面积和功耗进行了优化,在同样的速度要求下,加法器的面积大约有10%的收益,功耗减少大约5%。

附图说明

图1为依据本发明最低位输入模块结构示意图。

图2为依据本发明中间位传递模块结构示意图。

图3为依据本发明最高位输出模块结构示意图。

图4为依据本发明实施例一12位加法器结构示意图。

图5为依据本发明实施例二12位加法器结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。

为便于理解,下面先简单介绍本发明所涉及的技术术语。

全加器(Full-Adder),是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器。一位全加器可以处理低位进位,并输出本位加法进位。多个一位全加器进行级联可以得到多位全加器。

超前进位加法器(Carry Look Ahead Adder),是对普通的全加器进行改良而设计成的并行加法器,主要是针对普通全加器串联时互相进位产生的延迟进行了改良。

本发明提出一种模块化多位加法器,包括:最低位输入模块,其输入端口包括最低位的加法输入,输出端口包括最低位的和输出及进位输出;中间位传递模块,其输入端口包括中间位的加法输入及进位输入,输出端口包括中间位的和输出及进位输出;以及最高位输出模块,其输入端口包括最高位的加法输入及进位输入,输出端口包括最高位的和输出。所述模块化多位加法器使用全定制的小功能模块组合而成,突破了标准库提供的基本单元所能够达到的极限,进一步优化了加法器面积速度和功耗。

具体的,本发明提供了三种类型的模块,这三种类型的模块分别实现不同的功能。下面以四位宽度为例详细介绍所述三种类型的模块。

如图1所示,所述最低位输入模块,输入端口包括最低位的加法输入(位数可变),输出端口包括最低位的和输出及一位进位输出。本发明以四位为例:所述最低位的加法输入包括A0、A1、A2、A3,B0、B1、B2、B3,A和B分别代表加法器的两组输入端,所述最低位的和输出包括S0、S1、S2、S3,所述一位进位输出为反向进位输出COX(本发明为了优化电路使用的进位输出CO的反向信号)。其逻辑功能如下:

S0=(A0^B0);

S1=(A1^B1)^(((A0&B0)));

S2=(A2^B2)^(((A1&B1))|((A0&B0)&(A1|B1)));

S3=(A3^B3)^(((A2&B2))|((A1&B1)&(A2|B2))|((A0&B0)&(A1|B1)&(A2|B2)));

COX=!(((A3&B3))|((A2&B2)&(A3|B3))|((A1&B1)&(A2|B2)&(A3|B3))|((A0&B0)&(A1|B1)&(A2|B2)&(A3|B3)))。

如图2所示,所述中间位传递模块,输入端口包括中间位的加法输入(位数可变)及进位输入(一位),输出端口包括中间位的和输出及一位进位输出。本发明以四位为例:所述中间位的加法输入包括A0、A1、A2、A3,B0、B1、B2、B3,A和B分别代表加法器的两组输入端,所述进位输入为反向进位输入端CIX,所述中间位的和输出位包括S0、S1、S2、S3,所述一位进位输出为反向进位输出COX。其逻辑功能如下:

S0=(A0^B0)^((!CIX));

S1=(A1^B1)^(((A0&B0))|(!CIX&(A0|B0)));

S2=(A2^B2)^(((A1&B1))|((A0&B0)&(A1|B1))|(!CIX&(A0|B0)&(A1|B1)));

S3=(A3^B3)^(((A2&B2))|((A1&B1)&(A2|B2))|((A0&B0)&(A1|B1)&(A2|B2))|(!CIX&(A0|B0)&(A1|B1)&(A2|B2)));

COX=!(((A3&B3))|((A2&B2)&(A3|B3))|((A1&B1)&(A2|B2)&(A3|B3))|((A0&B0)&(A1|B1)&(A2|B2)&(A3|B3))|(!CIX&(A0|B0)&(A1|B1)&(A2|B2)(A3|B3)))。

如图3所示,所述最高位输出模块,输入端口包括最高位的加法输入(位数可变)及进位输入(一位),输出端口包括最高位的和输出。本发明以四位为例:所述最高位的加法输入包括A0、A1、A2、A3,B0、B1、B2、B3,A和B分别代表加法器的两组输入端,所述进位输入为反向进位输入端CIX,所述最高位的和输出位包括S0、S1、S2、S3。其逻辑功能如下:

S0=(A0^B0)^((!CIX));

S1=(A1^B1)^(((A0&B0))|(!CIX&(A0|B0)));

S2=(A2^B2)^(((A1&B1))|((A0&B0)&(A1|B1))|(!CIX&(A0|B0)&(A1|B1)));

S3=(A3^B3)^(((A2&B2))|((A1&B1)&(A2|B2))|((A0&B0)&(A1|B1)&(A2|B2))|(!CIX&(A0|B0)&(A1|B1)&(A2|B2)))。

本发明利用上述三种类型的模块根据面积速度功耗的需求,分别设计,优化,根据总加法器的位宽需求选择需求模块的位数。

实施例一

本实施例提供了一种12位加法器,如图4所示,所述12位加法器采用一最低位输入模块(4bit)、一中间位传递模块(4bit)及一最高位输出模块(4bit)级联而成。

所述最低位输入模块的输入端口包括最低位的加法输入,输出端口包括最低位的和输出及一位反向进位输出COX;所述中间位传递模块的输入端口包括中间位的加法输入及反向进位输入CIX,输出端口包括中间位的和输出及一位反向进位输出COX;以及所述最高位输出模块的输入端口包括最高位的加法输入及反向进位输入CIX,输出端口包括最高位的和输出。

其中,所述最低位输入模块的反向进位输出端COX与所述中间位传递模块的反向进位输入端CIX连接,所述中间位传递模块的反向进位输出端COX与所述最高位输出模块的反向进位输入端CIX连接。

实施例二

本实施例提供了一种12位加法器,如图5所示,所述12位加法器采用一最低位输入模块(4bit)、一中间位传递模块(4bit)及一最高位输出模块(4bit)级联而成。

所述最低位输入模块的输入端口包括最低位的加法输入,输出端口包括最低位的和输出及一位正向进位输出CO;所述中间位传递模块的输入端口包括中间位的加法输入及正向进位输入CI,输出端口包括中间位的和输出及一位正向进位输出CO;以及所述最高位输出模块的输入端口包括最高位的加法输入及正向进位输入CI,输出端口包括最高位的和输出。

其中,所述最低位输入模块的正向进位输出端CO与所述中间位传递模块的正向进位输入端CI连接,所述中间位传递模块的正向进位输出端CO与所述最高位输出模块的正向进位输入端CI连接。

实施例三

本实施例提供了一种16位加法器,所述16位加法器采用一最低位输入模块(4bit)、一中间位传递模块(8bit)及一最高位输出模块(4bit)级联而成。

所述最低位输入模块的输入端口包括最低位的加法输入,输出端口包括最低位的和输出及一位反向进位输出;所述中间位传递模块的输入端口包括中间位的加法输入及反向进位输入,输出端口包括中间位的和输出及一位反向进位输出;以及所述最高位输出模块的输入端口包括最高位的加法输入及反向进位输入,输出端口包括最高位的和输出。

其中,所述最低位输入模块的反向进位输出端与所述中间位传递模块的反向进位输入端连接,所述中间位传递模块的反向进位输出端与所述最高位输出模块的反向进位输入端连接。

实施例四

本实施例提供了一种16位加法器,所述16位加法器采用一最低位输入模块(4bit)、一中间位传递模块(8bit)及一最高位输出模块(4bit)级联而成。

所述最低位输入模块的输入端口包括最低位的加法输入,输出端口包括最低位的和输出及一位正向进位输出;所述中间位传递模块的输入端口包括中间位的加法输入及正向进位输入,输出端口包括中间位的和输出及一位正向进位输出;以及所述最高位输出模块的输入端口包括最高位的加法输入及正向进位输入,输出端口包括最高位的和输出。

其中,所述最低位输入模块的正向进位输出端与所述中间位传递模块的正向进位输入端连接,所述中间位传递模块的正向进位输出端与所述最高位输出模块的正向进位输入端连接。

实施例五

本实施例提供了一种16位加法器,所述16位加法器也采用一最低位输入模块(4bit)、一第一中间位传递模块(4bit)、一第二中间位传递模块(4bit)及一最高位输出模块(4bit)级联而成。

所述最低位输入模块的输入端口包括最低位的加法输入,输出端口包括最低位的和输出及一位反向进位输出;所述第一中间位传递模块和第二中间位传递模块的输入端口包括中间位的加法输入及反向进位输入,输出端口包括中间位的和输出及一位反向进位输出;以及所述最高位输出模块的输入端口包括最高位的加法输入及反向进位输入,输出端口包括最高位的和输出。

其中,所述最低位输入模块的反向进位输出端与所述第一中间位传递模块的反向进位输入端连接,所述第一中间位传递模块的反向进位输出端与所述第二中间位传递模块的反向进位输入端连接,所述第二中间位传递模块的反向进位输出端与所述最高位输出模块的反向进位输入端连接。

实施例六

本实施例提供了一种16位加法器,所述16位加法器也采用一最低位输入模块(4bit)、一第一中间位传递模块(4bit)、一第二中间位传递模块(4bit)及一最高位输出模块(4bit)级联而成。

所述最低位输入模块的输入端口包括最低位的加法输入,输出端口包括最低位的和输出及一位正向进位输出;所述第一中间位传递模块和第二中间位传递模块的输入端口包括中间位的加法输入及正向进位输入,输出端口包括中间位的和输出及一位正向进位输出;以及所述最高位输出模块的输入端口包括最高位的加法输入及正向进位输入,输出端口包括最高位的和输出。

其中,所述最低位输入模块的正向进位输出端与所述第一中间位传递模块的正向进位输入端连接,所述第一中间位传递模块的正向进位输出端与所述第二中间位传递模块的正向进位输入端连接,所述第二中间位传递模块的正向进位输出端与所述最高位输出模块的正向进位输入端连接。

本发明基于模块化的多位加法器,对加法器的整体性能面积和功耗进行了优化,在同样的速度要求下,加法器的面积大约有10%的收益,功耗减少大约5%。

所述16位加法器也不仅限于采用上述实施例三至实施例六的具体结构组成,还可以是采用一最低位输入模块(8bit)、一中间位传递模块(4bit)及一最高位输出模块(4bit)级联而成,或者采用一最低位输入模块(4bit)、一中间位传递模块(4bit)及一最高位输出模块(8bit)级联而成。而且,本发明并不限于实施例中所提供的12位加法器及16位加法器,本领域技术人员可以根据需要采用最低位输入模块、中间位传递模块及最高位输出模块得到其他多位加法器。

此外,本发明还提供了一种计算系统,其包括所述的模块化多位加法器。

至此,已经结合附图对本发明进行了详细描述。依据以上描述,本领域技术人员应当对本发明有了清楚的认识。

需要说明的是,在附图或说明书正文中,未绘示或描述的实现方式,均为所属技术领域中普通技术人员所知的形式,并未进行详细说明。此外,上述对各元件的定义并不仅限于实施例中提到的各种具体结构、形状或方式,本领域普通技术人员可对其进行简单地更改或替换。

当然,根据实际需要,本发明计算系统还可以包含其他的部分,由于同本发明的创新之处无关,此处不再赘述。

类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将所述发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面发明的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入所述具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与所述实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中发明的所有特征以及如此发明的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中发明的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的相关设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

再者,说明书与权利要求中所使用的序数例如“第一”、“第二”等的用词,以修饰相应的元件,其本身并不意含及代表所述元件有任何的序数,也不代表某一元件与另一元件的顺序、或是制造方法上的顺序,所述些序数的使用仅用来使具有某命名的一元件得以和另一具有相同命名的元件能作出清楚区分。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种利用函数回调实现可伸缩乘法的方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类