CN103259523A - 一种加法链优化的方法和采用该加法链的集成电路 - Google Patents
一种加法链优化的方法和采用该加法链的集成电路 Download PDFInfo
- Publication number
- CN103259523A CN103259523A CN2012100377418A CN201210037741A CN103259523A CN 103259523 A CN103259523 A CN 103259523A CN 2012100377418 A CN2012100377418 A CN 2012100377418A CN 201210037741 A CN201210037741 A CN 201210037741A CN 103259523 A CN103259523 A CN 103259523A
- Authority
- CN
- China
- Prior art keywords
- input
- look
- addition chain
- signal
- mux
- 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.)
- Pending
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明实施例提供一种加法链的优化方法和优化后的加法链。该方法包括下列步骤:在加法链的映射后网表中查找在查找表的至少一个输入端之前的逻辑电路;其中所述加法链包括查找表,异或门和多路选择器,查找表的第一输入端和多路选择器的一个输入端共享输入信号;将所述逻辑电路吸收到该查找表中。本发明实施例在面积利用率方面提高,资源数减少,延迟也有所改变。
Description
技术领域
本发明涉及FPGA领域,尤其涉及一种加法/减法链的优化方法。
背景技术
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,具有允许多次编程和快速成品的特点,因此应用越来越广泛。
FPGA通过查找表可实现逻辑函数功能。通用类型的查找表用于实现任何可在查找表的输入和输出之间限定的功能。较大的功能可以分解为和LUT吻合的较小功能。当然,除了查找表以外,FPGA还需要其它类型的门电路。由于每个功能均是独立实现的,往往在相邻功能之间采用的门电路存在冗余现象。
图1是一种现有技术的加法链的示意图。如图1所示,加法链单元包括一个查找表LUT 106,一个异或门XOR 104和一个多路选择器MUX 102。LUT106有输入A和B。LUT 106的输出和上一级加法链的进位信号Ci通过异或门104异或后以和Sum的形式输出。LUT 106的输出还用于控制MUX 102,以便选择信号B和Ci中的一个信号作为Co的形式输出。
一般而言,LUT具有4个输入端或更多。然而,在图1所示的加法链单元中,LUT 106仅有两个输入被实际使用,对输入端的利用不够充分。另外,进位LUT在宏映射后被固定,也会导致在设计方面不够灵活。
发明内容
本发明实施例提供能够克服上述问题的加法链解决方案。
在第一方面,本发明提供一种加法链的优化方法。该方法包括下列步骤:
在加法链的映射后网表中查找在查找表的至少一个输入端之前的逻辑电路;其中所述加法链包括查找表,异或门和多路选择器,查找表的第一输入端和多路选择器的一个输入端共享输入信号;将所述逻辑电路吸收到该查找表中。
在第二方面,本发明提供一种采用加法链的集成电路。该加法链包括:查找表,异或门和多路选择器;查找表的第一输入端和多路选择器的一个输入端共享输入信号;查找表的输出信号和输入进位信号作为异或门的输入信号;查找表的输出信号还作为多路选择器的选择控制信号;其中,加法链有数量多于2的输入信号;该多于2的输入信号是通过在加法链的映射后网表中查找在查找表的至少一个输入端之前的逻辑电路并且将所述逻辑电路吸收到该查找表中而产生的。
本发明实施例在面积利用率方面提高,资源数减少,延迟也有所改变。
附图说明
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。附图中,
图1是一种现有技术的加法链的示意图;
图2示意了本发明第一实施例的优化方法;
图3是根据本发明第二实施例的加法链的示意图;
图4是根据本发明第三实施例的示意图。
具体实施方式
根据本发明实施例,可以在映射后的网表中查找在LUT之前是否存在其它逻辑,并且将所存在的逻辑吸收到LUT中。由此,增加了LUT的输入资源的利用率,同时在面积利用率方面也有所提高。
图2示意了本发明第一实施例的优化方法。如图2的上半部所示,加法链包括一个查找表LUT 206,一个异或门XOR 104和一个多路选择器MUX102。图2中的异或门XOR 104和多路选择器MUX 102与图1中的异或门和多路选择器具有基本相同的功能。图2上半部的加法链不同于图1之处在于左侧虚框,在虚框中除了LUT 206外,还有一个异或门208。
LUT206具有两个信号输入端,分别接收输入信号A和B。异或门208有两个输入信号A1、A2,对A1、A2异或运算后以信号A的形式输出,进而输入到LUT 206的一个输入端。
LUT 206的输出和上一级加法链的进位信号Ci通过异或门104异或后以Sum的形式输出。LUT 206的输出还用于控制MUX 102,以便选择信号B和Ci中的一个信号作为Co的形式输出。
根据本发明的实施例,可以将上述电路进行优化,将异或门XOR 208吸收到LUT 206中,从而得到一个新的4输入LUT 210。优化的加法链如图2的下半部所示。
优化后的加法链具有3个输入信号A1、A2和B。和优化前相比,对LUT的输入端使用更为充分,由此减少了实际使用的资源数。
需要指出,本实施例中的异或门仅属示例,它可以是其它类型的逻辑电路。换言之,可以将出现在LUT 206的输入端A之前的任意逻辑电路吸收到LUT 206中。
图3是根据本发明第二实施例的加法链的示意图。图3的上半部示意了一个加法链,该加法链和图1加法链基本结构相同,因此相同的结构不复赘述。不同之处在于,信号B来自一个与门308的输出端。与门308对输入信号B1、B2进行相与运算。
根据本发明实施例,可以将信号输入端B和A进行置换。对于加法而言,可以将信号A和B进行自由的置换;对于减法而言,则在置换后将A端口取反。
置换后的加法链可以采用图2所示实施例进行优化,即与门318被LUT316所吸收。细节不复赘述。
需要指出,本实施例中的与门仅属示例,它可以是任何其它类型的逻辑电路。换言之,可以将出现在LUT输入端B之前的任意逻辑电路吸收到LUT中。
图4是根据本发明第三实施例的示意图。如图4所示,加法链的右半边和图1相同,不复赘述。
在加法链的左半边,LUT 406的一个输入端信号D同时作为MUX的一个可选输入信号。在LUT 406的另一个输入端F之前出现两个相继的LUT,LUT 410和LUT 408。LUT 410具有两个输入信号A、B,具有输出信号E。信号E和又一个输入信号C分别作为LUT 408的两个输入信号。
根据本发明实施例,可以将LUT 410和LUT 408吸收到LUT 406中,形成一个全新的4输入LUT。
虽然前述实施例以加法链为例进行了描述,但是本领域的技术人员意识到本发明同样可以适用于减法链。本申请所述加法链意在涵盖减法链。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明。所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种加法链的优化方法,包括下列步骤:
在加法链的映射后网表中查找在查找表的至少一个输入端之前的逻辑电路;其中所述加法链包括查找表,异或门和多路选择器,查找表的第一输入端和多路选择器的一个输入端共享输入信号;
将所述逻辑电路吸收到该查找表中。
2.如权利要求1所述的方法,其中所述吸收是将有N个输入信号的查找表取代为有N+M个输入信号的查找表,其中N为大于等于2的整数,M为大于等于1的整数。
3.如权利要求1所述的方法,其中所述至少一个输入端是查找表的不同于第一输入端的输入端。
4.如权利要求1所述的方法,其中所述至少一个输入端是查找表的第一输入端,所述方法包括在将所述逻辑电路吸收到该查找表中之前,将第一输入端和查找表的另一输入端上的信号进行置换。
5.如权利要求4所述的方法,其中加法链执行加法运算。
6.如权利要求4所述的方法,其中加法链执行减法运算,所述方法包括在置换之后将所述另一输入端上的信号进行取反。
7.如权利要求1所述的方法,其中所述逻辑电路包括级联的至少一个查找表。
8.一种加法链的集成电路,所述加法链包括:
查找表,异或门和多路选择器;查找表的第一输入端和多路选择器的一个输入端共享输入信号;查找表的输出信号和输入进位信号作为异或门的输入信号;查找表的输出信号还作为多路选择器的选择控制信号;
其中,加法链有数量多于2的输入信号;该多于2的输入信号是通过在加法链的映射后网表中查找在查找表的至少一个输入端之前的逻辑电路并且将所述逻辑电路吸收到该查找表中而产生的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100377418A CN103259523A (zh) | 2012-02-17 | 2012-02-17 | 一种加法链优化的方法和采用该加法链的集成电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100377418A CN103259523A (zh) | 2012-02-17 | 2012-02-17 | 一种加法链优化的方法和采用该加法链的集成电路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103259523A true CN103259523A (zh) | 2013-08-21 |
Family
ID=48963261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012100377418A Pending CN103259523A (zh) | 2012-02-17 | 2012-02-17 | 一种加法链优化的方法和采用该加法链的集成电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103259523A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424367A (zh) * | 2013-08-22 | 2015-03-18 | 京微雅格(北京)科技有限公司 | 一种优化寄存器控制信号的工艺映射方法及集成电路 |
CN104572579A (zh) * | 2013-10-10 | 2015-04-29 | 京微雅格(北京)科技有限公司 | 基于fpga解析型布局求解器的多选择区域动态划分方法 |
CN104572010A (zh) * | 2013-10-11 | 2015-04-29 | 京微雅格(北京)科技有限公司 | 基于fpga芯片的乘法器 |
CN104779951A (zh) * | 2014-01-10 | 2015-07-15 | 京微雅格(北京)科技有限公司 | 基于fpga的通用双向计数器的优化实现方法 |
CN105488237A (zh) * | 2014-09-19 | 2016-04-13 | 京微雅格(北京)科技有限公司 | 基于fpga的寄存器使能信号优化方法 |
WO2017079947A1 (zh) * | 2015-11-12 | 2017-05-18 | 京微雅格(北京)科技有限公司 | 一种支持引脚交换的加法器布线方法 |
CN106934079A (zh) * | 2015-12-29 | 2017-07-07 | 京微雅格(北京)科技有限公司 | 一种基于fpga芯片的进位链工艺映射方法 |
CN107040370A (zh) * | 2015-11-04 | 2017-08-11 | 恩智浦有限公司 | 使用随机加法链的模幂运算 |
CN107885485A (zh) * | 2017-11-08 | 2018-04-06 | 无锡中微亿芯有限公司 | 一种基于超前进位实现快速加法的可编程逻辑单元结构 |
CN113010144A (zh) * | 2021-03-05 | 2021-06-22 | 唐山恒鼎科技有限公司 | 一种1bit加减法器 |
CN116502572A (zh) * | 2023-06-21 | 2023-07-28 | 南京大学 | 基于改进二元决策树的多路选择器优化方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6271680B1 (en) * | 1996-04-09 | 2001-08-07 | Altera Corporation | Logic element for a programmable logic integrated circuit |
US6288570B1 (en) * | 1993-09-02 | 2001-09-11 | Xilinx, Inc. | Logic structure and circuit for fast carry |
CN1751438A (zh) * | 2003-02-19 | 2006-03-22 | 皇家飞利浦电子股份有限公司 | 具有可编程逻辑单元阵列的电子电路 |
CN101656535A (zh) * | 2008-08-20 | 2010-02-24 | 中国科学院半导体研究所 | 针对多模式逻辑单元可编程门阵列的工艺映射方法 |
-
2012
- 2012-02-17 CN CN2012100377418A patent/CN103259523A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6288570B1 (en) * | 1993-09-02 | 2001-09-11 | Xilinx, Inc. | Logic structure and circuit for fast carry |
US6271680B1 (en) * | 1996-04-09 | 2001-08-07 | Altera Corporation | Logic element for a programmable logic integrated circuit |
CN1751438A (zh) * | 2003-02-19 | 2006-03-22 | 皇家飞利浦电子股份有限公司 | 具有可编程逻辑单元阵列的电子电路 |
CN101656535A (zh) * | 2008-08-20 | 2010-02-24 | 中国科学院半导体研究所 | 针对多模式逻辑单元可编程门阵列的工艺映射方法 |
Non-Patent Citations (2)
Title |
---|
刘明业: "《数字系统自动设计实用教程》", 31 July 2004 * |
郭天天,张志勇,卢焕章: "快速浮点加法器的FPGA实现", 《计算机工程》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424367A (zh) * | 2013-08-22 | 2015-03-18 | 京微雅格(北京)科技有限公司 | 一种优化寄存器控制信号的工艺映射方法及集成电路 |
CN104424367B (zh) * | 2013-08-22 | 2019-03-08 | 京微雅格(北京)科技有限公司 | 一种优化寄存器控制信号的工艺映射方法及集成电路 |
CN104572579A (zh) * | 2013-10-10 | 2015-04-29 | 京微雅格(北京)科技有限公司 | 基于fpga解析型布局求解器的多选择区域动态划分方法 |
CN104572579B (zh) * | 2013-10-10 | 2018-05-08 | 京微雅格(北京)科技有限公司 | 基于fpga解析型布局求解器的多选择区域动态划分方法 |
CN104572010B (zh) * | 2013-10-11 | 2017-08-25 | 京微雅格(北京)科技有限公司 | 基于fpga芯片的乘法器 |
CN104572010A (zh) * | 2013-10-11 | 2015-04-29 | 京微雅格(北京)科技有限公司 | 基于fpga芯片的乘法器 |
CN104779951A (zh) * | 2014-01-10 | 2015-07-15 | 京微雅格(北京)科技有限公司 | 基于fpga的通用双向计数器的优化实现方法 |
CN104779951B (zh) * | 2014-01-10 | 2018-07-13 | 京微雅格(北京)科技有限公司 | 基于fpga的通用双向计数器的优化实现方法 |
CN105488237A (zh) * | 2014-09-19 | 2016-04-13 | 京微雅格(北京)科技有限公司 | 基于fpga的寄存器使能信号优化方法 |
CN105488237B (zh) * | 2014-09-19 | 2019-03-08 | 京微雅格(北京)科技有限公司 | 基于fpga的寄存器使能信号优化方法 |
CN107040370A (zh) * | 2015-11-04 | 2017-08-11 | 恩智浦有限公司 | 使用随机加法链的模幂运算 |
CN107040370B (zh) * | 2015-11-04 | 2021-07-27 | 恩智浦有限公司 | 一种用于产生实施模幂运算的代码的装置 |
CN107005240A (zh) * | 2015-11-12 | 2017-08-01 | 京微雅格(北京)科技有限公司 | 一种支持引脚交换的加法器布线方法 |
CN107005240B (zh) * | 2015-11-12 | 2020-08-14 | 京微雅格(北京)科技有限公司 | 一种支持引脚交换的加法器布线方法 |
WO2017079947A1 (zh) * | 2015-11-12 | 2017-05-18 | 京微雅格(北京)科技有限公司 | 一种支持引脚交换的加法器布线方法 |
CN106934079B (zh) * | 2015-12-29 | 2020-04-07 | 京微雅格(北京)科技有限公司 | 一种基于fpga芯片的进位链工艺映射方法 |
CN106934079A (zh) * | 2015-12-29 | 2017-07-07 | 京微雅格(北京)科技有限公司 | 一种基于fpga芯片的进位链工艺映射方法 |
CN107885485A (zh) * | 2017-11-08 | 2018-04-06 | 无锡中微亿芯有限公司 | 一种基于超前进位实现快速加法的可编程逻辑单元结构 |
CN107885485B (zh) * | 2017-11-08 | 2021-07-06 | 无锡中微亿芯有限公司 | 一种基于超前进位实现快速加法的可编程逻辑单元结构 |
CN113010144A (zh) * | 2021-03-05 | 2021-06-22 | 唐山恒鼎科技有限公司 | 一种1bit加减法器 |
CN116502572A (zh) * | 2023-06-21 | 2023-07-28 | 南京大学 | 基于改进二元决策树的多路选择器优化方法及系统 |
CN116502572B (zh) * | 2023-06-21 | 2023-11-17 | 南京大学 | 基于改进二元决策树的多路选择器优化方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103259523A (zh) | 一种加法链优化的方法和采用该加法链的集成电路 | |
US9768783B1 (en) | Methods for operating configurable storage and processing blocks at double and single data rates | |
CN101969306B (zh) | Fpga可配置五输入查找表结构 | |
WO2010126738A3 (en) | Circuitry and layouts for xor and xnor logic | |
CN204615806U (zh) | 一种基于反相逻辑的三模冗余表决电路 | |
CN102163247A (zh) | 一种可重构算子的阵列结构 | |
CN103078645A (zh) | 一种宏单元、二进制码到温度计码的译码方法及译码电路 | |
CN111047034B (zh) | 一种基于乘加器单元的现场可编程神经网络阵列 | |
CN102983841A (zh) | 基于可逆逻辑门的可逆主从rs触发器 | |
CN105356875A (zh) | 一种单粒子加固fpga的查找表电路 | |
CN103259529B (zh) | 一种采用跳跃进位链的集成电路 | |
CN103019976A (zh) | 基于fpga的hpi总线上位机接口 | |
CN106357265B (zh) | 一种小面积高速的六输入查找表结构 | |
CN103176766B (zh) | 基于增强型lut5结构的二进制加减法器 | |
CN203520396U (zh) | 一种优化寄存器控制信号的集成电路 | |
CN103259524A (zh) | 一种采用快速级连结构的集成电路 | |
CN104954014A (zh) | 一种超前-滞后型数字鉴相器结构 | |
CN203909724U (zh) | 一种block ram级联实现结构 | |
CN105610428B (zh) | 一种基于与或非结构的可编程逻辑单元 | |
CN105471422B (zh) | 集成辅助逻辑运算单元的可编程逻辑模块 | |
CN104678815A (zh) | Fpga芯片的接口结构及配置方法 | |
CN104731666A (zh) | 一种抗单粒子翻转的自纠错集成电路及其纠错方法 | |
US9172379B1 (en) | Efficient controllers and implementations for elastic buffers | |
CN103259530A (zh) | 一种约束进位链的方法 | |
CN103187967B (zh) | 基于fpga的plc高速脉冲计数实现系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: Fan Ping Inventor after: Geng Jia Inventor after: Liu Ming Inventor before: Fan Ping Inventor before: Geng Jia |
|
COR | Change of bibliographic data |
Free format text: CORRECT: INVENTOR; FROM: FAN PING GENG JIA TO: FAN PING GENG JIA LIU MING |
|
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130821 |