一种基于可逆逻辑的16位超前进位加法器的制作方法

文档序号:6402706阅读:493来源:国知局
专利名称:一种基于可逆逻辑的16位超前进位加法器的制作方法
技术领域
本发明涉及微电子技术领域,尤其涉及数字电路超前进位加法器设计。
背景技术
随着现今集成电路设计与工艺的发展,电子工程师将越来越多的高频率逻辑元器件放入了越来越小的集成电路中。而同时,逻辑元器件的功耗与发热问题已经引起了越来越多人的注意,因为这些问题不仅仅会导致资源的浪费,而且过热的温度也会使逻辑元器件发生损坏。根据兰道尔原则(Landauer’ s principle):任何信息逻辑上不可逆操作,每擦除I位的信息,必然会产生ln2x kT的热量,k代表玻耳兹曼常数,T代表温度。而逻辑元器件中所产生的所有不必要的热量会导致能量的损失,同时过高的温度也会使电子元器件工作变得不稳定。所以,根据兰道尔原则如果在所需的电路中所有的逻辑元器件都使用可逆逻辑门,或者说在设计电路时所有的电路模块都是基于可逆逻辑思想设计的,那么所设计的电路中的能量损耗将降到最低水准,或者可以完全避免。传统的超前进位加法器的设计初衷是可以高速执行加法运算,但是其代价是增大了传统的逐位进位加法器的电路面积。公开号CN97198461的中国专利申请公开了一种可以应用于数字电路领域的加法器电路,用于计算表示所述第一二进制数与所述第二二进制数的对应位块及对所述块的输入进位值之和的进位生成控制信号,所述进位生成控制信号包括各可具有值P或Q之一的两个信号V与W,进位生成控制信号按照下述关系从所述和中编码进位结果=V=W=P表示进位消除,从而所述进位结果为与所述输入进位值无关的零;V^ff表示进位传播,从而所述进位结果等于所述输入进位值;以及V=W=Q表示进位生成,从而所述进位结果为与所述输入进位值无关的I。但是,该电路没有考虑电路延时高的问题。现代电子美国公司在公开号为CN1128071的中国专利中提出了一种实现超前进位加法器的方法。但是,这种超前进位加法器功耗较高,没有使用可逆逻辑原则,也没有在电路中使用可逆逻辑门来使功耗降低。

发明内容
本发明所要解决的技术问题是,针对现有技术数字电路中器件功耗高的缺陷,使用可逆逻辑门设计一种16位超前进位加法器,能大幅度减小器件的功耗,并降低延时。本发明解决上述技术问题的技术方案是:基于可逻辑门设计一种16位超前进位加法器,该16位超前进位加法器由四级4位可逆超前进位加法器级联构成,其量子代价为552,每一级4位可逆超前进位加法器分别计算本级的4位本位运算结果以及相对应的进位输出C4、C8、C12、C16,将第一进位输出C4、第二进位输出C8、第三进位输出C12分别输入下一级4位可逆超前进位加法器相应的进位输入端作为其进位输入,第四进位输出进位输出C16作为16位可逆超前进位加法器的进位输出,四个4位可逆超前进位加法器的计算同步。其中,4 位可逆超前进位加法器由I个基于可逆逻辑的进位准备运算模块(‘PG’运算模块),I个基于可逆逻辑的进位运算模块和一个基于可逆逻辑的本位运算模块构成,量子代价为138。‘PG’运算模块由四个相同的二级模块并行级联组成,每个二级模块由一个托福利可逆门和一个斯诺特可逆门串行级联组成,当待加数据A0-A3,B0-B3输入‘PG’运算模块后,该模块输出运算准备数据P0-P3与G0-G3,并且将这两组数据输入进位选择模块。当运算准备数据P0-P3,G0-G3与本级进位输入CO输入进位运算模块后,该模块输出进位数据C0-C4与运算准备数据P0-P3。其中C0-C3与P0-P3输入本位运算模块,C4作为本级进位输出,输入下一级可逆4位超前进位加法器。本位运算模块由4个斯诺特可逆门并行级联组成,当C0-C3与P0-P3输入本位运算模块后,该模块输出本位运算结果S0-S3。本发明电路设计过程中均遵从可逆逻辑设计原则,在逻辑计算的过程中没有信息的擦除。与传统的超前进位加法器相比,本发明能将超前进位加法器的能量损耗降低到最低的水平,甚至完全消除。


图1为16位可逆超前进位加法器原理结构图;图2为4位可逆超前进位加法器内部接线图;图3为进位运算模块可逆逻辑设计逻辑简图;图4为‘PG’运算模块可逆逻辑设计逻辑简图;图5为本位运算模块可逆逻辑设计逻辑简图。
具体实施例方式如图1所示为16位可逆超前进位加法器。其由四个4位可逆超前进位加法器级联构成,其量子代价为552。该加法器有169个输入端,其中A0-A15,B0-B15, CO为有效输入端,其余136个输入端为冗余输入即图中‘I’输入端口与‘0’输入端口。该加法器也具有169个输出端,其中S0-S15与C16为有效输出端,其余152个输出端为垃圾输出即图中‘g’输出端口。如图1所示,由每一级4位可逆超前进位加法器分别计算出本加法器的4位结果S0-S3,S4-S7, S8-S11与S12-S15以及相对应的本级的进位输出C4,C8, C12与C16,将本级的进位输出中的其中三个C4,C8与C12 (第一、第二、第三进位输出)分别输入下一级相应的进位输入端口作为下一级四位加法器的进位输入,将第四个进位输出端C16作为该16位可逆超前进位加法器的进位输出。该16位可逆超前进位加法器中每个四位可逆超前进位加法器的计算是同步的,在计算过程中不需要进行进位等待,从而减少了整个16位可逆超前进位加法器的延时。其中,AO至A15为16位的被加数输入端口,BO至B15为16位的加数输入端口,CO为加法器的进位输入端。C4,CS, C12表示每一级4位可逆超前进位加法器所产生的本级进位输出,也是对下一级加法器的进位输入。端口 SO至S15表示相加结果的输出端口。端口C16表示16位可逆进位加法器的进位输出端。
在可逆逻辑电路的具体实施过程中,非门,斯诺特门,托福利门是三种基础的可逆门。所有的逻辑功能都是由它们的各种级联组合来完成的。其中,非门的功能为对单输入数据进行逻辑非计算。斯诺特门的功能为对双输入数据进行逻辑异或计算。托福利门的功能为对三输入数据进行逻辑异或计算。在本设计中使用的设计图示均使用国际通用的可逆逻辑符号进行表示。
如图2所示为4位可逆超前进位加法器的内部结构图,同时也是4位可逆超前进位加法器的具体连接图。该4位可逆超前进位加法器包括I个基于可逆逻辑设计的‘PG’运算模块,I个基于可逆逻辑设计的进位运算模块和一个基于可逆逻辑设计的本位运算模块,由上至下按照相对应端口串联而成,即由‘PG’运算模块的输出端口连接进位运算模块对应输入端口,进位运算模块输出端口连接对应的本位运算模块输入端口。量子代价为138,将4位待加数据A0-A3,B0-B3输入‘PG’运算模块得到运算准备数据P0-P3与G0-G3,将P0-P3,G0-G3与进位输入CO输入进位运算模块,得到进位数据C1_C4,C1_C3与P0-P3输入本位运算模块得到本级运算结果S0-S3,C4作为本级的进位输出,输入下一级4位可逆超前进位加法器。以第一级4位可逆超前进位加法器为例,该加法器有43个输入端,其中A0-A3,B0-B3与CO为有效输入端,其余34个输入端为冗余输入即图中‘I’输入端口与‘0’输入端口。同时,该加法器也具有43个输出端,其中S0-S3与C4为有效输出端,其余38个输出端为垃圾输出即图中‘g’端口。如图2所示,左端输入端AO至A3与BO至B3为要相加的数据输入端口。CO为4位可逆进位加法器的进位输入端,端口 ‘0’或‘I’是额外输入,分别表示在此端口需输入O或I。在右端输出端SO至S3表示输出的相加结果。C4表示4位可逆进位加法器的进位输出端。“g”表示垃圾线,是垃圾输出,可以悬空处理。该4位可逆超前进位加法器采用三个模块串联构成,既‘PG’运算模块作为整个4位可逆超前进位加法器的第一级,进位计算模块为第二季,本位运算模块为第三级,前一级模块的有效输出数据在下一级模块都存在与之相对应的输入端口。最上级基于可逆逻辑设计的‘PG’运算模块由四个相同的二级模块并行级联组成,每个二级模块由一个托福利可逆门和一个斯诺特可逆门串行级联组成,量子代价为24。当待加数据A0-A3,B0-B3输入‘PG’运算模块后,输出运算准备数据P0-P3与G0-G3,并且将这两组数据输入进位选择模块;第二级模块为基于可逆逻辑设计的进位计算模块。当运算准备数据P0-P3,G0-G3与本级进位输入CO输入进位计算模块后,进位计算模块输出进位数据C0-C4与运算准备数据P0-P3。其中C0-C3与P0-P3输入本位运算模块,C4作为本级进位输出,输入下一级可逆4位超前进位加法器;第三级模块为基于·可逆逻辑设计的本位运算模块,由4个斯诺特可逆门并行级联组成,量子代价为4。当C0-C3与P0-P3输入本位运算模块后,该模块输出本位运算结果S0-S3。如图3所示,基于可逆逻辑设计的进位运算模块的内部结构。输入端口 P0-P3,G0-G3输入从‘PG’运算模块得到的运算准备数据组P0-P3,G0-G3,输入端口 CO输入本级进位输入数据,‘I’与‘0’代表冗余输入,同时也代表应当输入的高低电平。输出端PO-Pl是将该模块的输入信号P0-P3转移到输出端,C0-C3为本级进位信息,需要连接到本级的本位运算模块相对应的输入端,C4为本级进位输出。当运算准备数据P0-P3,G0-G3与本级进位输入CO输入进位产生模块后,该模块输出进位数据C0-C4与运算准备数据P0-P3。其中C0-C3与P0-P3输入本位运算模块,C4作为本级进位输出,输入下一级可逆4位超前进位加法器。如图4所示,‘PG’运算模块的设计方式,可采用四个相同的二级模块并行级联组成,每个二级模块由一个托福利可逆门和一个斯诺特可逆门串行级联组成,量子代价为24。输入端A0-A3,B0-B3为两组4位待加数据,‘I’与‘0’代表冗余输入,同时也代表应当输入的高低电平。四个子模块的运算为同时进行的。输出端P0-P3,G0-G3为两组4位运算准备数据,‘g’代表垃圾输出。当待加数据A0-A3,B0-B3输入‘PG’运算模块后,该模块输出运算准备数据P0-P3与G0-G3,并且将这两组数据输入进位选择模块。如图5所示,基于可逆逻辑设计的本位运算模块结构示意图,优选地由4个斯诺特可逆门并行级联组成,量子代价为4。输入端C0-C4与P0-P3连接由进位运算模块输出的进位数据与运算准备数据,输出端S0-S3为本级4位超前进位加法器的本位输出结果。该模块的4个斯诺特可逆门对进位运算模块输出的进位数据与对应的运算准备数据分别进行异或运算,即对CO与PO,Cl与Pl,C2与P2,C3与P3分别做异或运算,以得到本位输出结果 S0-S3。本发明使用可逆逻辑的设计方法,实现16位的超前进位加法器。超前进位加法器是对传统逐位加法器的优化,能够大幅度减少电路延时。同时,可逆逻辑能够在保证器件运算功能的前提条件下减少能量损耗。本发明对全加器进行可逆逻辑设计,使其在保证器件逻辑计算功能正确的条件下。本发明的16位加法器模块,作为数字电路中的一个基础功能模块,可以作为许多功能电路的组成模块, 如乘法器,计数器等。
权利要求
1.一种基于可逆逻辑的16位超前进位加法器,其特征在于:该16位超前进位加法器由四级4位可逆超前进位加法器级联构成,其量子代价为552,每一级4位可逆超前进位加法器分别计算本级的4位本位运算结果以及相对应的进位输出C4、CS、C12、C16,将第一进位输出C4、第二进位输出CS、第三进位输出C12分别输入下一级4位可逆超前进位加法器相应的进位输入端作为其进位输入,第四进位输出C16作为16位可逆超前进位加法器的进位输出,四个4位可逆超前进位加法器的计算同步。
2.根据权利要求1所述的16位超前进位加法器,其特征在于:所述4位可逆超前进位加法器由I个基于可逆逻辑的加‘PG’运算模块,I个基于可逆逻辑的进位运算模块和一个基于可逆逻辑的本位运算模块级联而成,量子代价为138,4位待加数据输入‘PG’运算模块,‘PG’运算模块输出运算准备数据,将运算准备数据与进位输入CO输入进位运算模块,得到进位数据输入本位运算模块得到本级运算结果,及本级的进位输出。
3.根据权利要求2所述的16位超前进位加法器,其特征在于:所述基于可逆逻辑设计的‘PG’运算模块由四个二级模块并行级联组成,每个二级模块由一个托福利可逆门和一个斯诺特可逆门串行级联组成,量子代价为24。
4.根据权利要求2所述的16位超前进位加法器,其特征在于:所述基于可逆逻辑设计的本位运算模块由4个斯诺特可逆门并行级联组成,量子代价为4,4个斯诺特可逆门对进位运算模块输出的 进位数据 与对应的运算准备数据分别进行异或运算。
全文摘要
本发明公开一种可逆逻辑超前进位加法器,涉及微电子技术领域。本发明由四级4位可逆超前进位加法器级联构成,每一级4位可逆超前进位加法器分别计算本级的4位本位运算结果以及相对应的进位输出将第一进位输出、第二进位输出、第三进位输出分别输入下一级4位可逆超前进位加法器相应的进位输入端作为其进位输入,第四进位输出进位输出作为16位可逆超前进位加法器的进位输出。本发明使用可逆逻辑的设计方法,来实现16位的超前进位加法器。能够大幅度减少电路延时。同时,遵循可逆逻辑理论的电路设计能够减少能量损耗甚至完全杜绝电路损耗。
文档编号G06F7/506GK103235710SQ20131015747
公开日2013年8月7日 申请日期2013年4月28日 优先权日2013年4月28日
发明者庞宇, 王骏超, 林金朝, 李章勇, 李国权, 周前能, 王绍全, 闫亚锋, 钱骏洲, 蔡骁 申请人:重庆邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1