CN105589981B - 基于fpga的优化布局结构的加法器的工艺映射方法 - Google Patents
基于fpga的优化布局结构的加法器的工艺映射方法 Download PDFInfo
- Publication number
- CN105589981B CN105589981B CN201410569318.1A CN201410569318A CN105589981B CN 105589981 B CN105589981 B CN 105589981B CN 201410569318 A CN201410569318 A CN 201410569318A CN 105589981 B CN105589981 B CN 105589981B
- Authority
- CN
- China
- Prior art keywords
- adder
- carry
- input
- lut4c
- fpga
- 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.)
- Active
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明涉及一种基于FPGA的优化布局结构的加法器的工艺映射方法,所述方法包括:在所述FPGA的一个逻辑单元LE的一个逻辑区LP中带进位链的四输入查找表LUT4C的两个输入端分别输入第一加法器的进位输入信号;所述LUT4C对输入的两个所述进位输入信号执行加法逻辑运算后输出和数和第一进位输出信号;将所述第一进位输出信号连接至第一加法器的进位输入端。通过利用一个LUT4C产生最低位的进位输入信号,使得进位链的起始位置不再受FPGA架构上的限制,而是可以位于LE的任意一个进位单元,由此实现了对芯片布局结构和面积的优化。
Description
技术领域
本发明涉及集成电路技术领域,尤其涉及基于FPGA的优化布局结构的加法器的工艺映射方法。
背景技术
现场可编程门阵列(Field-Programmable Gate Array,FPGA)是一种具有丰富硬件资源、强大并行处理能力和灵活可重配置能力的逻辑器件。这些特征使得FPGA在数据处理、通信、网络等很多领域得到了越来越多的广泛应用。
加法是最常用的逻辑结构,FPGA内部之所以有算数逻辑结构主要是为了对加法的速率和实现进行优化。在FPGA内部,加法器通常由进位链(carry chain)实现。但是由于FPGA架构上的限制,一个n位全加器的最低位进位,通常只能从逻辑单元(Logic Element,LE)中最下方专用的进位输入端进入,使得一条进位链的起始位置必须位于LE的最下方,因此对布局产生了较大的限制。并且,一个LE所能实现的加法位数,是根据LE中能够用作加法计算的查找表(Look-Up-Table,LUT),即带进位链的查找表LUT4C,来实现的。
如果所要计算的加法位数超出了一个LE中LUT4C的个数,则需要将低位的进位输出端连接到下一个LE的进位输入端,同样也是需要通过LE最下方专用的进位输入端进入。但是在一些情况下,当前的加法器可能仅占用下一个LE中的很少一部分LUT4C的资源,其余空闲的LUT4C的资源因为进位输入的限制,也无法用于另一个加法器的运算。
发明内容
本发明的目的是针对现有技术的缺陷,提供了一种基于FPGA的优化布局结构的加法器的工艺映射方法,通过利用一个LUT4C产生最低位的进位输入信号ci,使得进位链的起始位置不再受FPGA架构上的限制,而是可以位于LE的任意一个进位单元,由此实现了对芯片布局结构和面积的优化。此外,利用LUT4C实现两个加法器的连接,也同样实现了对芯片布局结构和面积的优化。
在第一方面,本发明实施例提供了一种基于FPGA的优化布局结构的加法器的工艺映射方法,包括:
在所述FPGA的一个逻辑单元LE的一个逻辑区LP中带进位链的四输入查找表LUT4C的两个输入端分别输入第一加法器的进位输入信号;
所述LUT4C对输入的两个所述进位输入信号执行加法逻辑运算后输出和数和第一进位输出信号;
将所述第一进位输出信号连接至第一加法器的进位输入端。
优选的,所述方法还包括:
将第二加法器输出的第二进位输出信号连接至所述LUT4C的进位输入端,使所述第二加法器和第一加法器通过所述LUT4C形成级联,用以所述第一加法器和第二加法器共用同一个LE的资源。
优选的,一个所述LE中包括4个所述LP。
优选的,一个所述LP中包括一个LUT4C。
优选的,所述FPGA具体为CME M系列或CME HR系列FPGA器件。
本发明实施例提供的基于FPGA的优化布局结构的加法器的工艺映射方法,利用一个LUT4C产生最低位的进位输入信号ci,使得进位链的起始位置不再受FPGA架构上的限制,而是可以位于LE的任意一个进位单元,由此实现了对芯片布局结构的优化。
附图说明
图1为CME FPGA器件的逻辑架构示意图;
图2为本发明实施例提供的利用LUT4C实现的一位加法器的逻辑映射图;
图3为本发明实施例提供的n位全加器的逻辑图;
图4为本发明实施例提供的n为全加器的逻辑映射图;
图5为本发明实施例提供的n位全加器和m位全加器的逻辑图;
图6为本发明实施例提供的n位全加器和m位全加器的逻辑映射图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明下述实施例中的方法是基于CME M系列或CME HR系列FPGA器件实现的,为更好的理解本发明实施例提供的技术方案,首先对FPGA器件的架构进行简单说明。上述两个系列的器件架构略有差别,但大致都可以如图1所示。
每个LE包括4个逻辑区(Logic Parcel,LP),图中标示为Three LUT,每个LP中包括两个LUT4、1个LUT4C(带进位链的LUT4)和两个寄存器,LUT4C的进位输出直接与下一个LP中LUT4C的进位输入相连接,可以利用LUT4C来实现加法逻辑运算。利用LUT4C来实现一位加法器的逻辑映射图可以如图2所示。
通常情况下,最低位的进位输入Cin是从LE中最下方专用的进位输入端进入,可参见图1中Cin箭头位置,由此限制了进位链的起始位置只能是LE的最下方。但应用本发明提供的工艺映射方法后,可以使进位链的起始位置位于LE的任意一个进位单元。
下面通过实施例,对本发明提供的基于FPGA的优化布局结构的加法器的工艺映射方法进行详细说明。
实施例一
本实施例,以一个优化布局结构的n位全加器的工艺映射方法为例进行说明。逻辑图如图3所示。
本实施例的加法逻辑运算为:计算n位的第一加数a与n位的第二加数b的和s(n位),其中加法的最低位的进位输入信号为ci,加法运算的进位输出信号为co。n为整数且不小于1。
在本实施例中,将进位输入ci用一个单独的一位加法器的逻辑运算来实现。具体为:
在一个加法器(用LUT4C实现)的两个输入端分别输入加法的最低位的进位输入信号ci,即计算ci+ci的逻辑。当ci=0时,无论该加法器的进位输入信号为1或是0,其进位输出信号都为0;当ci=1时,无论该加法器的进位输入信号为1或是0,其进位输出信号都为1。因此,该一位加法器的进位输出信号与ci相同,而该加法器的进位输入信号可以为0或1任意值。
将这个加法器的进位输出信号,即ci,连接至执行a+b的加法器的进位输入端,作为进位输入信号ci。
由此可知,本发明的工艺映射方法,是将进位输入信号ci采用一个一位加法器来实现的。实现这个一位加法器的LUT4C可以是LE中的任意一个LUT4C,输入到LUT4C两个输入端的ci信号是从该LUT4C的信号输入端输入的,而不是从进位输入端输入的了。
以n=5的情况为例,实现a+b的逻辑映射可以如图4所示。
因此,本发明实施例提供的基于FPGA的优化布局结构的加法器的工艺映射方法,利用一个LUT4C产生最低位的进位输入信号ci,使得进位链的起始位置不再受FPGA架构上的限制,而是可以位于LE的任意一个进位单元(LUT4C),由此实现了对芯片布局结构的优化。
实施例二
本实施例,以一个优化布局结构的m位全加器与一个n位全加器通过LUT4C进行级联的工艺映射方法为例进行说明。逻辑映射图如图5所示。
其中,n位全加器的加法逻辑运算为:计算n位的第一加数a与n位的第二加数b的和sa(n位),其中加法的最低位的进位输入信号为cia,加法运算的进位输出信号为coa。n为整数且不小于1。
m位全加器的加法逻辑运算为:计算m位的第一加数c与m位的第二加数d的和sb(m位),其中加法的最低位的进位输入信号为cib,加法运算的进位输出信号为cob。m为整数且不小于1。
可以采用上述实施例提供的工艺映射方法,将其中一个加法器的进位输入信号映射为由一个一位全加器来实现。并且因为这个一位全加器的进位输入不会影响进位输出的结果,所以可以将另一个加法器的进位输出连接到一位全加器的进位输入端,从而实现两个加法器的连接结构,如图5中右侧逻辑图所示。
计算a+b加法器的进位输出信号coa连接在生成c+d加法器进位输入信号cib的一位全加器的进位输入端,一位全加器产生c+d加法器的进位输入信号cib连接在c+d加法器的进位输入端。
这样做的好处是,可以实现对芯片布局结构和面积的优化。
下面以具体的一个例子进行说明。
在图6所示的例子中,包括了一个5位加法器(a+b)和一个6位加法器(c+d),它们通过一个LUT4C(计算cib+cib,产生c+d的最低位进位输入信号)形成连接结构。
因为每个LE中包括4个LP,每个LP包括一个LUT4C,因此,如图所示,计算a+b的加法器要占用两个LE,计算c+d的加法器也要占用两个LE。因为一个LE到下一个LE的进位逻辑也是要通过LE最下方专用的进位输入位置输入的,因此,即便一个LE中只占用了一个LUT4C进行一种加法逻辑运算,其余LUT4C也不能再做与这个加法逻辑运算无关的另外的加法逻辑运算了。也就是说,在不采用本发明提供的优化布局结构的工艺映射方法时,a+b的加法器和c+d的加法器要分别在不同的LE中进行,完成这两个加法的逻辑需要4个LE的资源。
但是,当采用本发明提供的优化布局结构的工艺映射方法时,因为a+b加法器的最高位进位输出连接到一位全加器(图中粗线标出的LUT4C)的进位输入端,并且c+d加法器的进位输入信号又是由这个一位全加器的进位输出提供的,所以两个加法器通过一位全加器形成了连接结构。所占用的LE资源如图所示,仅需要3个LE就可以实现a+b和c+d两个加法逻辑。相比不采用本发明提供的工艺映射方法,节省了一个LE的资源。
因此,本发明实施例提供的方法,利用一个LUT4C的一位全加器,实现两个加法器的连接,节省了LE资源占用,从而实现了对芯片布局结构和面积的优化。
在另一个例子中,对一个9位加法器和一个10位加法器通过LUT4C连接,可以将连接前需要占用的6个LE资源缩减到连接后占用5个LE资源即可实现。
当然应用上述方法还可以实现其他多种加法器的连接,达到节省LE资源占用,优化芯片布局结构和面积的效果,此处不再一一例举。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于FPGA的优化布局结构的加法器的工艺映射方法,其特征在于,所述方法包括:
在所述FPGA的一个逻辑单元LE的一个逻辑区LP中带进位链的四输入查找表LUT4C的两个输入端分别输入第一加法器的最低位的进位输入信号;
所述LUT4C对输入的两个所述进位输入信号执行加法逻辑运算后输出和数和第一进位输出信号;
将所述第一进位输出信号连接至第一加法器的进位输入端。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将第二加法器输出的第二进位输出信号连接至一位全加器的进位输入端,使所述第二加法器和第一加法器通过所述一位全加器形成级联,用以所述第一加法器和第二加法器共用同一个LE的资源。
3.根据权利要求1所述的方法,其特征在于,一个所述LE中包括4个所述LP。
4.根据权利要求1所述的方法,其特征在于,一个所述LP中包括一个LUT4C。
5.根据权利要求1所述的方法,其特征在于,所述FPGA具体为CME M系列或CME HR系列FPGA器件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410569318.1A CN105589981B (zh) | 2014-10-22 | 2014-10-22 | 基于fpga的优化布局结构的加法器的工艺映射方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410569318.1A CN105589981B (zh) | 2014-10-22 | 2014-10-22 | 基于fpga的优化布局结构的加法器的工艺映射方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105589981A CN105589981A (zh) | 2016-05-18 |
CN105589981B true CN105589981B (zh) | 2019-04-09 |
Family
ID=55929559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410569318.1A Active CN105589981B (zh) | 2014-10-22 | 2014-10-22 | 基于fpga的优化布局结构的加法器的工艺映射方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105589981B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1751361A (zh) * | 2003-02-19 | 2006-03-22 | 皇家飞利浦电子股份有限公司 | 具有可编程逻辑单元阵列的电子电路 |
CN101014932A (zh) * | 2004-08-04 | 2007-08-08 | 英特尔公司 | 将跳跃进位单元与加和单元合并的跳跃进位加法器 |
CN102054110A (zh) * | 2011-01-27 | 2011-05-11 | 复旦大学 | Fpga可编程逻辑块通用装箱方法 |
CN102375906A (zh) * | 2010-08-27 | 2012-03-14 | 雅格罗技(北京)科技有限公司 | 一种基于模式匹配的fpga逻辑综合方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6957245B2 (en) * | 2002-01-31 | 2005-10-18 | Sun Microsystems, Inc. | Ultra-fast adder |
-
2014
- 2014-10-22 CN CN201410569318.1A patent/CN105589981B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1751361A (zh) * | 2003-02-19 | 2006-03-22 | 皇家飞利浦电子股份有限公司 | 具有可编程逻辑单元阵列的电子电路 |
CN101014932A (zh) * | 2004-08-04 | 2007-08-08 | 英特尔公司 | 将跳跃进位单元与加和单元合并的跳跃进位加法器 |
CN102375906A (zh) * | 2010-08-27 | 2012-03-14 | 雅格罗技(北京)科技有限公司 | 一种基于模式匹配的fpga逻辑综合方法 |
CN102054110A (zh) * | 2011-01-27 | 2011-05-11 | 复旦大学 | Fpga可编程逻辑块通用装箱方法 |
Non-Patent Citations (2)
Title |
---|
《一种Ling选择进位加法器》;田宇 等;《计算机工程》;20090820;第35卷(第16期);第245-247页 |
《异步超前进位加法器设计》;杨银堂 等;《西安电子科技大学学报(自然科学版)》;20090220;第36卷(第1期);第33-37页 |
Also Published As
Publication number | Publication date |
---|---|
CN105589981A (zh) | 2016-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190042924A1 (en) | Hyperbolic functions for machine learning acceleration | |
US9098332B1 (en) | Specialized processing block with fixed- and floating-point structures | |
CN108055876B (zh) | 低功率双纠错-三检错(deb-ted)解码器 | |
Kudithi | An efficient hardware implementation of the elliptic curve cryptographic processor over prime field | |
CN105874714B (zh) | 支持多模式可配置的六输入查找表结构和fpga器件 | |
CN110780843A (zh) | 高性能fpga加法 | |
CN107016223B (zh) | 一种抗硬件木马芯片设计方法及系统 | |
US20220230057A1 (en) | Hyperbolic functions for machine learning acceleration | |
CN105488237A (zh) | 基于fpga的寄存器使能信号优化方法 | |
CN111931441B (zh) | Fpga快速进位链时序模型的建立方法、装置以及介质 | |
CN107391896B (zh) | 一种低开销的fpga硬件木马设计方法 | |
Jaberipur et al. | A ROM‐less reverse RNS converter for moduli set {2q±1, 2q±3} | |
CN103257842B (zh) | 一种加法进位信息输出的方法和一种加法器 | |
CN105589981B (zh) | 基于fpga的优化布局结构的加法器的工艺映射方法 | |
CN105874713A (zh) | 一种可扩展可配置的逻辑元件和fpga器件 | |
US8214419B2 (en) | Methods and apparatus for implementing a saturating multiplier | |
KR100718050B1 (ko) | 카운터 회로 및 그 동작 방법 | |
CN105874712B (zh) | 可跳过的一比特全加器和fpga器件 | |
CN111142840A (zh) | 基于fpga的数据计算方法和装置 | |
US7475221B1 (en) | Circular buffer addressing | |
CN106528927B (zh) | 输入输出i/o工艺映射方法和装置 | |
CN106649898B (zh) | 一种加法器的打包布局方法 | |
US10249219B2 (en) | Chip and method for operating a processing circuit | |
Yao et al. | FHAM: FPGA-based High-Efficiency Approximate Multipliers via LUT Encoding | |
CN105447217B (zh) | 基于fpga的四选一选择器的工艺映射方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |