支持三操作数浮点连加的浮点乘加装置及其操作方法制造方法及图纸

技术编号:11788144 阅读:70 留言:0更新日期:2015-07-29 12:23
本发明专利技术提供一种支持三操作数浮点连加的浮点乘加装置,包括:解包单元;第一运算模块;第二运算模块以及设置于所述第一运算模块与所述第二运算模块之间的选择单元,能够执行三项输入数据Fa×Fb+Fc的操作,也能够执行三项输入数据Fa+Fb+Fc的操作。

【技术实现步骤摘要】

本专利技术涉及微处理器领域,特别涉及浮点运算处理装置。
技术介绍
浮点乘加操作(Multiply-addit1n Fused,简称MAF)将一个浮点乘法和一个浮点加法融合到一个算术单元中执行,比起串行的先进行浮点乘法再进行浮点加法缩短了计算时间;同时,浮点乘加器将串行先乘后加的两次舍入减为一次舍入,提高了计算精度。因为这两方面的优势,浮点乘加器成为许多通用处理器、DSP、GPU、流处理器等的通用算术部件。三操作数浮点连加(Floating Point Addit1n 3,简称FADD3)是一种新型的融合算术单元,可以用于精确的初等函数计算,提升小波变换(Lifting Based WaveletTransformat1n)等多种应用场合。比起传统的浮点加法器,三操作数浮点连加器在针对连续多个数的加法运算时,既能大大缩短运算循环次数,又能减少舍入次数提高运算精度。在某些情况下,浮点乘加器也有不利的一面。虽然浮点乘加器比一个浮点加法器和一个乘法器串行执行所需的计算时延少,但是,在完成单独的加法运算时比传统加法器延时要长,在进行连续多个数的加法时,性能更是不能和三操作数浮点连加器相比。因此,在执行连续多个数的加法时往往需要另外增加能够专门支持FADD3操作的算术单元。基于现有技术的缺陷以及本领域技术革新的迫切需求,如何利用最少的资源实现更多的功能成为本领域技术人员噬待解决的问题。
技术实现思路
本专利技术要解决的技术问题是:如何改进浮点乘加器使其能够执行三操作数浮点连加的操作。本专利技术提供一种支持三操作数浮点连加的浮点乘加装置,可以执行三项输入数据FaXFb+F。的操作,也可以执行三项输入数据F a+Fb+F。的操作。本专利技术提供一种支持三操作数浮点连加的浮点乘加装置,包括:解包单元,用于将三项输入数据Fa、Fb、F。分别解包为三元组F a (sa, ea, ma)、Fb (sb, eb, mb)、Fc (sc, ec, mc);第一运算模块,对指数ea,eb,e。进行运算,执行尾数!!!》!^基于尾数maXmb的结果对尾数m c进行对阶操作;第二运算模块,能够将尾数maXmb的结果以及尾数m。对阶后的结果压缩为进位一保留的形式、执行中间加操作、执行前导零检测操作、执行规格化操作、执行舍入操作以及打包输出;所述第一运算模块对尾数ma、mb、m。进行对阶操作;选择单元,设置于所述第一运算模块与所述第二运算模块之间,用于选择将尾数maXmb的结果以及尾数m。对阶后的结果传送至第二运算模块或者选择将尾数ma、mb、m。对阶后的结果传送至第二运算模块;所述第二运算模块能够将尾数ma、mb、m。对阶后的结果压缩为两项、能够执行过抵消检测操作。本专利技术提供一种支持三操作数浮点连加的浮点乘加装置,包括:解包单元,用于将三项输入数据Fa、Fb、F。分别解包为三元组F a (sa, ea, ma)、Fb (sb, eb, mb)、Fc (sc, ec, mc);指数运算单元,其输入端连接至解包单元的输出端,用于对指数ea,eb, e。进行运算;乘法阵列单元,其输入端连接至解包单元的输出端,用于执行尾数!^与!^相乘操作;第一对阶逻辑单元,其输入端连接至解包单元的输出端以及指数运算单元的输出端,用于基于尾数maXmb的结果对尾数m。进行对阶操作;第二对阶逻辑单元,其输入端连接至所述解包单元的输出端,用于对尾数ma、mb、m。进行对阶操作;选择单元,所述第二对阶逻辑单元的输出端、乘法阵列单元的输出端以及所述第一对阶逻辑单元的输出端连接至所述选择单元的输入端;压缩单元,其输入端与所述选择单元的输出端连接;所述选择单元用于选择将乘法阵列单元的结果和第一对阶逻辑单元的结果传送至压缩单元或者选择将第二对阶逻辑单元的结果传送至压缩单元;所述压缩单元用于将乘法阵列单元的结果和第一对阶逻辑单元的结果压缩为进位-保留的形式或者将第二对阶逻辑单元的结果压缩为两项;前导零检测单元,其输入端与所述压缩单元的输出端连接;中间加单元,其输入端与所述压缩单元的输出端连接;规格化单元,其输入端与所述前导零检测单元的输出端以及与所述中间加单元的输出端连接;舍入单元,其输入端与所述规格化单元的输出端连接;打包输出单元,其输入端与所述舍入单元的输出端连接;以及过抵消检测单元,其输入端与所述中间加单元的输出端连接,其输出端与所述打包输出单元的输入端连接。优选的,所述第二对阶逻辑单元具有第一移位器、第二移位器和第三移位器,所述第二对阶逻辑单元与所述第一对阶逻辑单元共用所述第三移位器。优选的,所述压缩单元是进位保留加法器。本专利技术还提供一种使用上述浮点乘加装置进行三输入浮点乘加操作的方法,包括如下步骤:步骤1:将三项输入数据Fa、Fb、F。分别解包为三元组F a(sa,ea, ma)、Fb (sb, eb, mb)、Fc (sc, ec, mc);步骤2:对指数ea,eb, e。进行运算,同时执行尾数m 3与m ^目乘操作,并基于尾数m a与mb相乘的结果对尾数m。进行对阶操作;步骤3:选择将尾数HiaXmb的结果和尾数m。对阶后的结果压缩为进位_保留的形式;步骤4:执行中间加法和前导零检测操作;步骤5:规格化;步骤6:舍入;步骤7:打包输出。本专利技术还提供一种使用上述浮点乘加装置进行三操作数浮点连加操作的方法,包括如下步骤:步骤1:将三项输入数据Fa、Fb、F。分别解包为三元组F a(sa,ea, ma)、Fb (sb, eb, mb)、Fc (sc, ec, mc);步骤2:对尾数ma、mb、m。进行对阶操作;步骤3:将尾数ma、mb、m。对阶后的结果压缩为两项;步骤4:执行中间加法,获得计算结果的绝对值,进行前导零检测操作;步骤5:规格化移位;步骤6:舍入;步骤7:进行过抵消检测;步骤8:打包输出,如果过抵消检测使能,则将三项输入数据Fa、Fb、F。中最小的数据输出,否则将舍入后的结果输出。以下在【具体实施方式】中详细叙述本专利技术的特征以及优点,其内容足以使本领域的技术人员了解本专利技术的
技术实现思路
并据以实施,且根据本说明书所揭露的内容、权利要求以及图示,本领域技术人员可轻易理解本专利技术相关的目的及优点。【附图说明】图1是本专利技术浮点乘加装置的示意图;图2是本专利技术浮点乘加装置的结构示意图;图3是本专利技术优选实施例的浮点乘加装置的架构示意图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述。本专利技术针对浮点乘加器在进行单独的加法,甚至连续的加法运算延时较长的问题,对浮点乘加器做了改进,使之既能够支持浮点乘加运算,又能够支持三操作数浮点连加运算,同时又不增加过多的硬件资源。本专利技术提供一种支持三操作数浮点连加的浮点乘加装置,可以执行三项输入数据FaXFb+F。的操作,也可以执行三项输入数据F a+Fb+F。的操作。FADD3 的算法分为第一阶段(first stage)和第二阶段(second stage) ο在第一阶段包含以下步骤:步骤1:将三项输入数据Fa、Fb、F。分别解包为三元组F a (sa, ea, ma)、Fb (sb, eb, mb)、Fc (sc, ec, mc);步骤2:对尾数%、1^、111。进行对阶操作,其中,本文档来自技高网
...

【技术保护点】
一种支持三操作数浮点连加的浮点乘加装置,可以执行三项输入数据Fa×Fb+Fc的操作,其特征在于:所述浮点乘加装置可以执行三项输入数据Fa+Fb+Fc的操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:姚涛刘月吉易学渊曹俊
申请(专利权)人:苏州中晟宏芯信息科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1