CN111258538A - 一种基于fpga的大位宽的高性能加法器结构 - Google Patents

一种基于fpga的大位宽的高性能加法器结构 Download PDF

Info

Publication number
CN111258538A
CN111258538A CN202010029711.7A CN202010029711A CN111258538A CN 111258538 A CN111258538 A CN 111258538A CN 202010029711 A CN202010029711 A CN 202010029711A CN 111258538 A CN111258538 A CN 111258538A
Authority
CN
China
Prior art keywords
carry
adder
fpga
generation circuit
chain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010029711.7A
Other languages
English (en)
Other versions
CN111258538B (zh
Inventor
李辉
梁志栋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202010029711.7A priority Critical patent/CN111258538B/zh
Publication of CN111258538A publication Critical patent/CN111258538A/zh
Application granted granted Critical
Publication of CN111258538B publication Critical patent/CN111258538B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开一种基于FPGA的高性能加法器结构,目的是提供一种针对大位宽操作数和FPGA特点的新结构。本发明由进位产生电路和求和计算模块组成,充分发挥FPGA快速进位链的优势;进位产生电路采用了进位选择方法,利用进位压缩结构快速产生进位Ci,提高了查找表LUT的利用率,减少了所占用的资源;求和计算模块由占用资源最少的行波进位结构实现;在加法器映射到FPGA的过程中,合理的布局规划减少了可编程互连线的使用,缩短了加法器的计算延时。本发明在操作数的位宽较大时,与传统的加法器结构相比,性能更有优势。

Description

一种基于FPGA的大位宽的高性能加法器结构
技术领域
本发明涉及集成电路技术领域,具体涉及一种针对大位宽需求,基于FPGA实现的高性能加法器结构。
背景技术
加法器是各种高性能计算模块或系统的关键部件。目前实现加法器的常用方法有行波进位加法器、选择进位加法器和超前进位加法器等。每种加法器结构各有其特点:行波进位加法器消耗的资源最少,超前进位加法器运算速度最快,选择进位加法器介于二者之间。但是随着操作数位宽的增大,这些加法器占用的资源越来越多,性能也越来越差。如今,加密运算等应用的操作数位宽越来越大,例如RSA加密方法的操作数位宽达到了1024bits(或2048bits),为了保证数据处理与运算的实时性,迫切需要高性能、大位宽的加法器。
FPGA(Field Programmable Gate Array),即现场可编程门阵列,是一种具有丰富的硬件资源、强大的并行处理能力和灵活的可配置可编程的逻辑器件。基于FPGA的加法器通常由进位链(carry chain)实现。但是由于FPGA架构上的限制(以Xilinx的FPGA为例),所有进位链的进位输入端位于每列可编程逻辑单元的最下方,而进位输出端位于其最上方;当一条进位链的进位输出端与另一条进位链的进位输入端连接,必会引入较长的可编程互连线,增加不必要的延时。因此,当操作数达到几百位,甚至上千位时,对加法器的运算速度产生较大的影响。
发明内容
本发明针对上述FPGA进位链结构的特点,提出了一种新型的大位宽加法器结构,通过利用进位选择和进位压缩的方法产生进位信号Ci,使得进位链之间的互连不再受FPGA架构上的限制,由此实现了对速度和面积的优化。在大位宽操作数的情况下,性能要比传统结构的加法器有显著的提升,优势更为明显。
本发明的技术方案是:本发明提出的基于FPGA的大位宽高性能加法器结构由进位产生电路和求和计算模块构成。
进位产生电路采用进位选择的设计思想,并利用进位压缩结构快速计算出进位Ci。进位压缩结构的相关文献,见T.B.Preuβer,M.Zabel,and R.G.Spallek在第20届IEEESymposium on Computer Arithmetic(ARITH)发表的“Accelerating Computations onFPGA Carry Chains by Operand Compaction.”如图2所示,进位压缩结构充分利用了可编程逻辑单元中的查找表LUT,使得进位产生电路不仅减少了资源,同时大大降低了延时。
求和计算模块利用占用资源最少的加法器,即行波进位加法器计算得出最终的和Si。该类型的加法器完全由FPGA中的进位链结构实现,具体的实现原理参考Xilinx官网提供的用户指导“Virtex-5 FPGA User Guide(UG190)”中的“Chapter 5 ConfigurableLogic Blocks(CLBs)”。
进位产生电路和求和计算模块都利用了FPGA中的专用进位链,充分发挥了进位链的运算速度快的优势。
将加法器结构映射到FPGA芯片的过程中,如图6所示,采用了合理的布局布线尽可能减少对可编程互连线的使用,使加法器的延时进一步减小。
根据文献“Accelerating Computations on FPGA Carry Chains by OperandCompaction.”,Altera公司提供的FPGA中亦包含专用进位链,与Xilinx的FPGA相比,功能和特点一致,只是结构和布局上略有不同。因此,本发明亦适用于Altera的FPGA。
本发明的有益效果在于:与目前已有的FPGA加法器相比,本发明提出的加法器占用的资源更少,运算速度更快。
附图说明
图1为本发明用于说明进位链在FPGA中的布局示意图。
图2为本发明用于说明在进位产生电路中进位压缩结构的示意图。
图3为本发明用于说明基于FPGA的高性能加法器结构的示意图。
图4为本发明用于说明传统的进位选择加法器的电路结构示意图。
图5为本发明用于说明图3的加法器基于FPGA芯片的布局布线示意图。
图6为本发明用于说明图1、图3和图4的加法器结构在不同位宽下运算速度和占用资源的表格。
具体实施方式
为进一步阐明本发明的目的、技术方案及优点,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
图1为本发明用于说明进位链在FPGA中的布局示意图。在Xilinx FPGA中,进位链嵌入在可配置逻辑单元CLB的Slice中,两个Slice构成一个可配置逻辑单元CLB。输入信号cin从Slice的下端输入,输出信号cout从其上端输出。呈一列排列的多个Slice中的进位链级联可以实现位宽大于4bits的加法器。需要指出的是,用于进位链级联的互连线是专用的,即该互连线与通用的可编程互连线不同,它只用于一列Slice中的进位链级联,且它的传播延时是通用互连线的十分之一。然而,构成一条进位链的Slice呈一列排布,而且进位逻辑的计算方向只能从下向上单向传输。
图2为本发明用于说明进位产生电路中进位压缩结构的示意图,该结构包括一个六输入查找表LUT和一个复用器M1。该电路具有五个输入信号(第一输入信号ai,第二输入信号bi,第三输入信号ai+1,第四输入信号bi+1和第五输入信号ci),第一输出信号ci+2,两个内部信号(第一内部信号O5和第二内部信号O6)。
六输入查找表LUT可以实现两个任意五输入的布尔表达式,但两个表达式的输入端必须是相同的。所以在该电路中,第一输入信号ai,第二输入信号bi,第三输入信号ai+1和第四输入信号bi+1作为六输入查找表LUT的输入信号,并通过六输入查找表LUT(等价于两个五输入查找表LUT5_0、LUT5_1)实现两个布尔表达式。这两个布尔表达式的结果分别从第一内部信号O5和第二内部信号O6输出。具体的布尔表达式为:
Figure BDA0002363808560000031
O5=ai(ai+1+bi+1)+(ai+1·bi+1)。
第二内部信号O6作为复用器M1的选择控制信号,第一内部信号O5和第五输入信号ci作为复用器M1的数据输入,第一输出信号ci+2是复用器M1的数据输出,布尔表达式为:
ci+2=O6′·O5+O6·Ci
如图2所示,仅用一个六输入查找表和一个复用器就实现从进位ci到ci+2的计算。与FPGA默认的行波进位加法器相比,该电路所消耗的资源是原来的一半,延时也为原来的一半,换句话说,通过使用进位压缩结构,在一条原本只能计算出进位Cn的进位链上就可以实现进位C2n的电路。进位产生电路就是由图2所示的电路级联构成的。
图3为本发明用于说明基于FPGA的高性能加法器电路结构的示意图。该电路结构由进位产生电路CC、求和计算模块RCA以及复用器MUX(由查找表LUT实现)构成。其中,进位产生电路CC由图2的电路级联构成,求和计算模块RCA采用FPGA默认的行波进位加法器,复用器MUX的功能由一个查找表LUT实现。该加法器的两个操作数A、B分为N段,即A0 A1 … An,B0 B1 … Bn。该加法器的输出和S亦分为N段,即S0 S1 … Sn
如图3所示,输出和S0的计算过程为:操作数A0和B0以及进位输入Cin通过求和计算模块RCA求得输出和S0;输出和S1的计算过程为:操作数A0和B0以及进位输入Cin通过进位产生模块CC求得进位C1,操作数A1和B1以及进位C1通过求和计算模块RCA求得输出和S1;输出和S2的计算过程为:首先,操作数A1和B1以及低电平‘0’通过进位产生模块CC求得一种可能的进位C2_0,操作数A1和B1以及高电平‘1’通过进位产生模块CC求得另一种可能的进位C2_1,然后,进位C1作为复用器MUX的控制信号,两种可能的进位C2_0和C2_1作为其数据输入,通过复用器MUX得到真实的进位C2,最后,操作数A2和B2以及进位输入C2通过求和计算模块RCA求得输出和S2;输出和S3、S4…Sn的计算过程类似于输出和S2的计算过程。
本发明提出的加法器的求和过程与传统的进位选择加法器不同,如图4所示,传统的进位选择加法器由进位Ci控制多个复用器求得输出和Si,但本发明提出的加法器的输出和Si是由进位链组成的求和模块RCA实现的。
图5为本发明用于说明图3的加法器基于FPGA芯片的布局布线示意图。图5表示了可配置逻辑块(CLB)在FPGA芯片中的排列布局。在图5中,“\”标注的Slice用于实现进位产生电路CC,互相垂直的交叉线“+”标注的Slice用于实现复用器MUX的逻辑功能,“/”标注的Slice用于实现求和计算模块RCA。
图6为本发明用于说明FPGA默认的行波进位加法器、传统的进位选择加法器(图4所示)和本发明提出的加法器(图3所示)在不同位宽下运算速度和消耗资源的表格。在该表中,RCA表示FPGA默认的行波进位加法器结构,CSLA表示传统进位选择加法器结构,CCRC表示本发明提出的加法器结构。该表展示了操作数A,B分别在200bits,400bits,600bits,800bits,1000bits,1200bits,1400bits,1600bits,1800bits,2000bits的运算速度和占用资源的情况,延时单位为ns,占用的资源用LUT的数目表示。
由图6所示,本发明提出的加法器结构CCRC在操作数高于600bits下的延时要比传统进位选择加法器结构CSLA小,且本发明提出的加法器结构CCRC的延时以0.5ns/200bits的速率增加,而传统的进位选择加法器结构CSLA的延时以1.1ns/200bits的速率增加;加法器结构RCA的延时远远超过CSLA和CCRC。当操作数达到千位以上时,本发明提出的加法器结构CCRC在运算速度方面有更大的优势。如图6所示,与传统的进位选择加法器结构CSLA消耗的资源(LUT数目)相比,本发明提出的加法器结构CCRC消耗的资源较少,当操作数较大时,仅为传统进位选择加法器的60%。
综上所述,本发明提出的FPGA大位宽加法器结构,由两部分构成:进位产生电路和求和计算模块,且都采用了FPGA中的专用进位链。在实现过程中,通过合理的布局规划减少对可编程互连线的使用,减小了整个加法器的面积与延时。图3的加法器结构与图4的传统加法器结构相比,资源消耗和运算速度均有明显改善。
以上所述的具体实施例,对本发明的目的,技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种基于FPGA的高性能加法器结构,其特征在于:针对加法器大位宽需求,结合进位选择方法和进位压缩结构,提出了一种基于FPGA快速进位链的进位产生电路;加法器的所述输出信号由求和计算模块产生,该模块亦是由FPGA快速进位链产生;当加法器的操作数达到1000位以上时,与其他加法器结构相比,该加法器结构在性能上具有明显的优势。
2.根据权利要求1所述的进位产生电路,其特征在于:加法器的操作数被分为n段,每一段可能的进位信号Ci_0/Ci_1由进位压缩结构产生,就Xilinx FPGA而言,该结构由进位链中的复用器以及6输入端、2个输出端的查找表LUT实现;然后,通过进位选择的方法快速计算出准确的进位信号Ci;整个电路充分发挥了FPGA的特点,因此,不仅减少了资源消耗,还降低了延迟时间。
3.根据权利要求1所述的求和计算模块,其特征在于:该模块采用行波进位方法,利用FPGA快速进位链就得到最终的和Si
4.根据权利要求1所述的基于FPGA的高性能加法器结构,其特征在于:加法器的操作数被分为n段,根据FPGA的特点采用合理的布局,进位产生电路在进位链的下部,高度约占进位链的三分之一,求和计算模块在进位链的上部,高度约占进位链的三分之二。
5.根据权利要求1所述的基于FPGA的高性能加法器结构,其特征在于:进位产生电路输出的进位信号Ci通过可编程互连线与求和计算模块连接。
6.根据权利要求1所述的方法,其特征在于,所述高性能FPGA加法器结构同样适用于主流的Altera公司的FPGA。
CN202010029711.7A 2020-01-13 2020-01-13 一种基于fpga的大位宽高性能加法器电路 Active CN111258538B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010029711.7A CN111258538B (zh) 2020-01-13 2020-01-13 一种基于fpga的大位宽高性能加法器电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010029711.7A CN111258538B (zh) 2020-01-13 2020-01-13 一种基于fpga的大位宽高性能加法器电路

Publications (2)

Publication Number Publication Date
CN111258538A true CN111258538A (zh) 2020-06-09
CN111258538B CN111258538B (zh) 2023-07-21

Family

ID=70945217

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010029711.7A Active CN111258538B (zh) 2020-01-13 2020-01-13 一种基于fpga的大位宽高性能加法器电路

Country Status (1)

Country Link
CN (1) CN111258538B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112632878A (zh) * 2020-12-10 2021-04-09 中山大学 一种基于fpga的高速低资源的二值卷积单元
CN113705135A (zh) * 2021-07-20 2021-11-26 深圳市紫光同创电子有限公司 基于fpga进位链的电路结构优化方法及系统
CN116149599A (zh) * 2023-03-30 2023-05-23 杭州雄迈集成电路技术股份有限公司 一种分步进位处理方法、系统、加法器
CN116436709A (zh) * 2023-06-14 2023-07-14 浪潮电子信息产业股份有限公司 一种数据的加解密方法、装置、设备和介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101571796A (zh) * 2008-04-28 2009-11-04 阿尔特拉公司 可配置的混合加法器电路
CN101847087A (zh) * 2010-04-28 2010-09-29 中国科学院自动化研究所 一种支持定浮点可重构的横向求和网络结构
CN201663654U (zh) * 2009-11-20 2010-12-01 深圳市同洲电子股份有限公司 一种非整数倍插值装置及信号调制系统
JP2011117300A (ja) * 2009-10-22 2011-06-16 Hiroyasu Tanigawa 各種エネルギ保存サイクル合体機関
CN102707922A (zh) * 1995-08-31 2012-10-03 英特尔公司 控制移位分组数据的位校正的装置
CN102866875A (zh) * 2012-10-05 2013-01-09 刘杰 通用多操作数加法器
CN103762974A (zh) * 2014-01-26 2014-04-30 中国电子科技集团公司第五十八研究所 多功能可配置的六输入查找表结构
US20190288688A1 (en) * 2019-06-06 2019-09-19 Intel Corporation Logic circuits with augmented arithmetic densities

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102707922A (zh) * 1995-08-31 2012-10-03 英特尔公司 控制移位分组数据的位校正的装置
CN101571796A (zh) * 2008-04-28 2009-11-04 阿尔特拉公司 可配置的混合加法器电路
CN104020980A (zh) * 2008-04-28 2014-09-03 阿尔特拉公司 可配置的混合加法器电路
JP2011117300A (ja) * 2009-10-22 2011-06-16 Hiroyasu Tanigawa 各種エネルギ保存サイクル合体機関
CN201663654U (zh) * 2009-11-20 2010-12-01 深圳市同洲电子股份有限公司 一种非整数倍插值装置及信号调制系统
CN101847087A (zh) * 2010-04-28 2010-09-29 中国科学院自动化研究所 一种支持定浮点可重构的横向求和网络结构
CN102866875A (zh) * 2012-10-05 2013-01-09 刘杰 通用多操作数加法器
CN103762974A (zh) * 2014-01-26 2014-04-30 中国电子科技集团公司第五十八研究所 多功能可配置的六输入查找表结构
US20190288688A1 (en) * 2019-06-06 2019-09-19 Intel Corporation Logic circuits with augmented arithmetic densities

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
SONG J: "A 64-bit lookahead carry chain in Inverted-Domino logic", 《ELECTRON DEVICES AND SOLID-STATE CIRCUITS》 *
SONG J: "A 64-bit lookahead carry chain in Inverted-Domino logic", 《ELECTRON DEVICES AND SOLID-STATE CIRCUITS》, 31 December 2004 (2004-12-31), pages 1 *
梁志栋: "基于FPGA的高性能长加法器设计研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 *
梁志栋: "基于FPGA的高性能长加法器设计研究", 《中国优秀硕士学位论文全文数据库信息科技辑》, no. 08, 15 August 2020 (2020-08-15), pages 135 - 199 *
马怀冲: "轻量型算术运算电路单元设计与FPGA实现", 《中国优秀硕士学位论文全文数据库信息科技辑》 *
马怀冲: "轻量型算术运算电路单元设计与FPGA实现", 《中国优秀硕士学位论文全文数据库信息科技辑》, no. 01, 15 January 2017 (2017-01-15), pages 135 - 153 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112632878A (zh) * 2020-12-10 2021-04-09 中山大学 一种基于fpga的高速低资源的二值卷积单元
CN112632878B (zh) * 2020-12-10 2023-11-24 中山大学 一种基于fpga的高速低资源的二值卷积单元
CN113705135A (zh) * 2021-07-20 2021-11-26 深圳市紫光同创电子有限公司 基于fpga进位链的电路结构优化方法及系统
CN113705135B (zh) * 2021-07-20 2023-11-07 深圳市紫光同创电子有限公司 基于fpga进位链的电路结构优化方法及系统
CN116149599A (zh) * 2023-03-30 2023-05-23 杭州雄迈集成电路技术股份有限公司 一种分步进位处理方法、系统、加法器
CN116149599B (zh) * 2023-03-30 2023-08-08 杭州雄迈集成电路技术股份有限公司 一种分步进位处理方法、系统、加法器
CN116436709A (zh) * 2023-06-14 2023-07-14 浪潮电子信息产业股份有限公司 一种数据的加解密方法、装置、设备和介质
CN116436709B (zh) * 2023-06-14 2023-08-29 浪潮电子信息产业股份有限公司 一种数据的加解密方法、装置、设备和介质

Also Published As

Publication number Publication date
CN111258538B (zh) 2023-07-21

Similar Documents

Publication Publication Date Title
CN111258538A (zh) 一种基于fpga的大位宽的高性能加法器结构
Wey et al. An area-efficient carry select adder design by sharing the common Boolean logic term
Sureka et al. An efficient high speed Wallace tree multiplier
US7617269B2 (en) Logic entity with two outputs for efficient adder and other macro implementations
US10649731B2 (en) Integrated circuits with specialized processing blocks for performing floating-point fast fourier transforms and complex multiplication
Zicari et al. A fast carry chain adder for Virtex-5 FPGAs
Vijay et al. A review of the 0.09 µm standard full adders
CN107885485B (zh) 一种基于超前进位实现快速加法的可编程逻辑单元结构
Arunachalam et al. Analysis of high speed multipliers
Sankar et al. Design of Wallace tree multiplier by Sklansky adder
US5867415A (en) Multiplication element including a wallace tree circuit having adders divided into high and low order adders
Dhanesha et al. Array-of-arrays architecture for parallel floating point multiplication
US6750674B1 (en) Carry chain for use between logic modules in a field programmable gate array
Sarmiento et al. High speed primitives of hardware accelerators for DSP in GaAs technology
Balasubramanian et al. A delay improved gate level full adder design
CN111752528B (zh) 一种支持高效乘法运算的基本逻辑单元
Joel et al. Design of Low Power High Speed Hybrid Adder Using Gdi Technique
Anitha et al. Comparative study of Braun’s multiplier using FPGA devices
Sharanya et al. LOW AREA HIGH SPEED COMBINED MULTIPLIER USING MULTIPLEXER BASED FULL ADDER
Anand et al. Low Power Full Adders based on Proposed Hybrid and GDI Designs: A Novel Approach
Karunakaran et al. Power Optimized Multiplier Using Shannon Based Multiplexing Logic
SRAVANI et al. Energy and Area Efficient Three-Input Full Adder with Systematic Cell Design Methodology
Dungavath et al. Analysis of Low Power, Area-Efficient and High Speed Multiplier using Fast Adder
Sateesh et al. Design of 4-2 Compressor using XOR–XNOR Blocks for High-Speed Arithmetic Circuits
Ughade et al. Design of Han Carlson Adder for Implementation of CSLA

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant