CN102243577A - 一种快速实现浮点加法的电路 - Google Patents
一种快速实现浮点加法的电路 Download PDFInfo
- Publication number
- CN102243577A CN102243577A CN2010101702906A CN201010170290A CN102243577A CN 102243577 A CN102243577 A CN 102243577A CN 2010101702906 A CN2010101702906 A CN 2010101702906A CN 201010170290 A CN201010170290 A CN 201010170290A CN 102243577 A CN102243577 A CN 102243577A
- Authority
- CN
- China
- Prior art keywords
- unit
- circuit
- floating add
- quick realization
- result
- 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
- Complex Calculations (AREA)
Abstract
本发明提供一种快速实现浮点加法的电路,电路包含两部分运算单元,整个电路由减法运算单元、移位单元、两个加法运算单元、有效数据检测单元、结果调整单元以及选择器构成。采用增设一个加法运算单元,将整个浮点加法的运算分为两部分进行操作,减少运算步骤,降低运算过程的时间。通过本发明内容,能够有效提高信号处理器的性能,简化电路设计结构,提高计算速度,满足应用需求。
Description
技术领域
本发明涉及一种浮点算法的电路,尤其涉及一种基于协处理器和数字信号处理器应用的快速实现浮点加法的电路。
背景技术
如今多媒体在人们的日常生活中得到了非常普遍的应用。在应用中对产品的图象加速模块以及CPU处理速度的要求越来越高,这些应用设计中必然涉及大量的浮点运算电路,运算速度直接影响到产品应用的最终性能。
为了解决这些问题,快速运算电路结果应运而生。浮点数表示的范围非常大,但是在进行加法时,需要先转成定点数,然后进行运算,最后结果再转成浮点数。传统电路一般采用5级流水结构,如图1中所示,内容如下:
流水部件1,带符号9位定点减法运算单元,对两个操作数的指数求差值;流水部件2,移位单元,用于根据流水部件1中得到的差,把较小数的尾数向右移动;流水部件3,为带符号25位定点加法运算单元,用于对两个操作数的尾数相加;流水部件4为有效数据检测单元,用于从结果的次高位(符号位是最高位)到最低位寻找第一个与符号位相反数的位置并记录,剩余部分即为结果的尾数;流水部件5为结果调整单元,用于根据流水部件4的结果,对指数进行调整,输出最终结果。
上述这5级流水结构的电路中每一级电路所花费的时间基本接近于一个定点加法电路的所需要的时间。而浮点乘法只需要一个定点乘法和一个定点加法(并行运算),大概需要两级流水。因此浮点加法就成为整个浮点运算的瓶颈。
基于上述问题,如何能找到一种快速实现浮点加法设计电路成为本发明所要解决的问题。
发明内容
本发明目的提供一种基于协处理器和数字信号处理器应用的快速实现浮点加法的电路,能够有效提高信号处理器的性能,简化设计电路,提高计算速度,满足应用需求。
一种快速实现浮点加法的电路,由减法运算单元、移位单元、两个加法运算单元、有效数据检测单元、结果调整单元以及选择器构成。
减法运算单元,用于对操作数指数求差值;
移位单元,根据减法运算单元中得到的差,把较小数的尾数向右移动;
加法运算单元,用于对操作数的尾数相加;
有效数据检测单元,用于从结果的次高位到最低位寻找第一个与符号位相反数的位置并记录;
结果调整单元,根据有效数据检测单元的结果,对指数进行调整;
选择器,用于对中间计算结果选择输出。
本发明提出的一种实现浮点加法的电路,包含两部分独立运算单元:A单元和B单元,A单元和B单元并行进行运算。A单元由加法运算单元、有效数据检测单元和结果调整单元构成。B单元由减法运算单元、移位器和加法运算单元构成。A单元和B单元的运算中间结果,通过选择器选择输出。整个电路的加法运算单元有两个,分别处理不同情形中尾数相加操作。
附图说明
图1一般情形下的浮点加法电路结构图
图2本发明提出的快速实现浮点加法的电路结构图
具体实施方案
以下结合附图对本发明提出的内容进行详细的描述。
实施例一:
选取两组操作数作为具体实施例,其中sign为符号,exp为指数,man为尾数。
操作数1:sign=0,exp=7f,man=4000。
操作数2:sign=0,exp=85,man=3780。
B单元运算为,通过减法运算单元对两数的指数求差值,指数差为6,操作数1补上最高位1然后通过移位器右移6位,得到0300,与操作数2(b780,最高位也需要补1)通过加法运算单元对尾数进行相加,得到ba80。
A单元运算为,尾数通过加法运算单元对两个尾数相加得到17780,经有效数据检测单元寻找非第一个非0位置在第17位,经结果调整单元,指数加1,exp=86,尾数为bbcO。
根据指数的差大于1,经选择器选择左边的结果,sign=0,exp=85,man=3a80,完成浮点加法运算。
实施例二:
选取两组操作数:
操作数1,sign=0,exp=7f,man=4000。
操作数2,sign=1,exp=7f,man=3fe7。
B单元运算为,通过减法运算单元两个指数求差值,得到指数差为0。经移位器操作移零位,然后通过加法运算单元两个尾数相加,得到0019(有符号加法)。
A单元运算为,经加法运算单元将操作数两个尾数相加得到0019,经有效数据检测单元寻找非0位置,得到结果是第5位,然后经结果调整单元将指数调整为78,尾数调整为4800。
指数差小于1,选择右边结果经选择器输出,sign=0,exp=78,man=4800。
Claims (8)
1.一种快速实现浮点加法的电路,包含两部分独立运算单元,其特征在于:所述浮点加法电路由减法运算单元、移位单元、两个加法运算单元、有效数据检测单元、结果调整单元以及选择器构成。
2.如权利要求1所述的一种快速实现浮点加法的电路,其特征在于:所述两部分独立运算单元并行进行运算。
3.如权利要求1所述的一种快速实现浮点加法的电路,其特征在于:两个加法运算单元分别设置于整个电路的两部分独立运算单元中,实现操作数尾数相加运算。
4.如权利要求1所述的一种快速实现浮点加法的电路,其特征在于:所述减法运算单元对操作数的指数求差值运算。
5.如权利要求1所述的一种快速实现浮点加法的电路,其特征在于:所述移位器根据减法运算单元中得到的差值,把较小数的尾数向右移动。
6.如权利要求1所述的一种快速实现浮点加法的电路,其特征在于:所述有效数据检测单元对操作数尾数相加的结果从次高位到最低位寻找第一个与符号位相反数的位置并记录。
7.如权利要求1所述的一种快速实现浮点加法的电路,其特征在于:所述结果调整单元对从有效数据检测单元输出的指数进行调整。
8.如权利要求1所述的一种快速实现浮点加法的电路,其特征在于:所述选择器根据减法运算单元运算操作数的指数差值选择输出结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101702906A CN102243577A (zh) | 2010-05-10 | 2010-05-10 | 一种快速实现浮点加法的电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101702906A CN102243577A (zh) | 2010-05-10 | 2010-05-10 | 一种快速实现浮点加法的电路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102243577A true CN102243577A (zh) | 2011-11-16 |
Family
ID=44961649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101702906A Pending CN102243577A (zh) | 2010-05-10 | 2010-05-10 | 一种快速实现浮点加法的电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102243577A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103988171A (zh) * | 2011-12-13 | 2014-08-13 | 国际商业机器公司 | 使用大和小浮点值二者来执行算术运算 |
CN105468331A (zh) * | 2014-09-26 | 2016-04-06 | Arm有限公司 | 独立的浮点转换单元 |
CN107256140A (zh) * | 2017-06-09 | 2017-10-17 | 上海联影医疗科技有限公司 | 实现基于硬件加速的非标准浮点数重建算法的方法和设备 |
CN107533462A (zh) * | 2015-05-29 | 2018-01-02 | 华为技术有限公司 | 浮点运算装置以及方法 |
CN112463113A (zh) * | 2020-12-02 | 2021-03-09 | 中国电子科技集团公司第五十八研究所 | 浮点加法单元 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0831396A2 (en) * | 1996-09-19 | 1998-03-25 | Nec Corporation | Sticky bit determination in floating point arithmetic system |
US6542915B1 (en) * | 1999-06-17 | 2003-04-01 | International Business Machines Corporation | Floating point pipeline with a leading zeros anticipator circuit |
CN101650642A (zh) * | 2009-09-11 | 2010-02-17 | 杭州中天微系统有限公司 | 基于补码舍入的浮点加法装置 |
-
2010
- 2010-05-10 CN CN2010101702906A patent/CN102243577A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0831396A2 (en) * | 1996-09-19 | 1998-03-25 | Nec Corporation | Sticky bit determination in floating point arithmetic system |
US6542915B1 (en) * | 1999-06-17 | 2003-04-01 | International Business Machines Corporation | Floating point pipeline with a leading zeros anticipator circuit |
CN101650642A (zh) * | 2009-09-11 | 2010-02-17 | 杭州中天微系统有限公司 | 基于补码舍入的浮点加法装置 |
Non-Patent Citations (1)
Title |
---|
靳站鹏: "高速浮点加法运算单元的研究与实现", 《中国优秀硕士论文全文数据库(信息科技辑)2006年》, no. 7, 15 July 2006 (2006-07-15), pages 137 - 10 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103988171A (zh) * | 2011-12-13 | 2014-08-13 | 国际商业机器公司 | 使用大和小浮点值二者来执行算术运算 |
CN103988171B (zh) * | 2011-12-13 | 2016-10-12 | 国际商业机器公司 | 在数据处理系统中用于执行浮点算术运算的方法和装置 |
US9665346B2 (en) | 2011-12-13 | 2017-05-30 | International Business Machines Corporation | Performing arithmetic operations using both large and small floating point values |
CN105468331A (zh) * | 2014-09-26 | 2016-04-06 | Arm有限公司 | 独立的浮点转换单元 |
CN107533462A (zh) * | 2015-05-29 | 2018-01-02 | 华为技术有限公司 | 浮点运算装置以及方法 |
CN107533462B (zh) * | 2015-05-29 | 2020-07-24 | 华为技术有限公司 | 浮点运算装置以及方法 |
CN107256140A (zh) * | 2017-06-09 | 2017-10-17 | 上海联影医疗科技有限公司 | 实现基于硬件加速的非标准浮点数重建算法的方法和设备 |
CN112463113A (zh) * | 2020-12-02 | 2021-03-09 | 中国电子科技集团公司第五十八研究所 | 浮点加法单元 |
CN112463113B (zh) * | 2020-12-02 | 2021-11-23 | 中国电子科技集团公司第五十八研究所 | 浮点加法单元 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10489113B2 (en) | Quick operation device for nonlinear function, and method therefor | |
CN102495719B (zh) | 一种向量浮点运算装置及方法 | |
CN102243577A (zh) | 一种快速实现浮点加法的电路 | |
CN102629189B (zh) | 基于fpga的流水浮点乘累加方法 | |
CN106406810A (zh) | 微处理器及其方法 | |
CN107305484A (zh) | 一种非线性函数运算装置及方法 | |
EP3447634A1 (en) | Non-linear function computing device and method | |
CN106951211A (zh) | 一种可重构定浮点通用乘法器 | |
US9658828B2 (en) | Decimal and binary floating point rounding | |
CN105045560A (zh) | 一种定点乘加运算方法和装置 | |
US20160098249A1 (en) | Decimal and binary floating point arithmetic calculations | |
CN101371221B (zh) | 预饱和固定点乘法器 | |
CN104699450A (zh) | 一种基于进位保留加法器的基数-16定点除法器 | |
CN102087590A (zh) | 资源复用的浮点simd指令的执行装置 | |
CN104991757A (zh) | 一种浮点处理方法及浮点处理器 | |
CN100367191C (zh) | 一种快速流水线型除法器 | |
CN103176948B (zh) | 一种低成本的单精度初等函数运算加速器 | |
CN102253822B (zh) | 一种模(2^n-3)乘法器 | |
CN110187866A (zh) | 一种基于双曲cordic的对数乘法计算系统及方法 | |
CN103809931A (zh) | 一种专用高速浮点指数运算器的设计 | |
CN103365826B (zh) | 一种小面积的基-3fft蝶形单元 | |
CN102073473A (zh) | 基于fpga的十进制浮点乘法器设计 | |
Lastras et al. | A logarithmic approach to energy-efficient GPU arithmetic for mobile devices | |
CN102693118A (zh) | 一种标量浮点运算加速器 | |
CN205281474U (zh) | 一种可配置的两级流水线六操作数快速加法器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20111116 |