[发明专利]用于执行浮点加法的装置和方法有效
申请号: | 201210039154.2 | 申请日: | 2012-02-17 |
公开(公告)号: | CN102707921B | 公开(公告)日: | 2017-06-30 |
发明(设计)人: | 大卫·雷蒙德·鲁茨 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F7/57 | 分类号: | G06F7/57 |
代理公司: | 北京东方亿思知识产权代理有限责任公司11258 | 代理人: | 李晓冬 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 执行 浮点 加法 装置 方法 | ||
技术领域
本发明涉及用于在操作数A和B上执行加法操作以便产生结果R的装置和方法,该操作数A和B一级结果R是每个都具有有效数(significand)和指数的浮点值。
背景技术
浮点数可被表示为如下:
±1.x*2y
其中:x=分数
1.x=有效数(也称为尾数)
y=指数
浮点加法可采用两种形式,即,类符号加法(LSA,like-signed addition)或非类符号加法(USA,unlike-signed addition)。如果将要将具有相同符号的两个浮点操作数相加,或者,如果将要将具有不同符号的两个浮点操作数想减,则执行LSA操作。类似地,如果将要将具有不同符号的两个浮点操作数相加,或者,如果将要将具有相同符号的两个浮点操作数想减,则执行USA操作。当在本应用中参照浮点操作数的加法和这种操作数的有效数的加法时,其应当被一同称为LSA或USA计算,并且因此,将理解,这种属于覆盖了加法处理和减法处理二者。
通常,处理器将具有用于执行不同的数据处理操作的多个已流水线化单元。这种已流水线化单元使加法单元,其包括用于执行加法操作的多个流水线阶段。浮点加法包括多个阶段,即,(1)指数分析和差计算,(2)操作数并排,(3)相加(其可能包括舍入内射(rounding injection)),以及(4)归一化。很多年间,加法流水线的现有技术已经涉及为至少部分加法处理供应两个单独的路径,一个被称为近路径,而另一个被称为远路径。具体地,基于观察(重要的对齐和重要的归一化是互斥的),这种将近/远路径分开可节省加法处理中的时钟周期。
因此,近路径被用于USA操作,该USA操作涉及其指数等于或相差一个的操作数,这些操作具有导致有效数的某些前位抵消的潜能。这种差确实需要舍入,但是,在加法之后,其确实需要归一化。然后,远路径被用于所有其他USA操作和所有LSA操作,并且,需要用于执行对齐和舍入的电路,但是,仅需要不重要的(1位)归一化。
这种分离加法器流水线首先在1981年出版在加利福尼亚利弗莫大学的P Farmwald的博士论文“On the Design of High Performance Digital Arithmetic Units”中,并且,已经在若干后续设计中被改善,例如参见提名为“1-GHz HAL SPARC64 Dual Floating Point Unit with RAS Features”的论文,作者为Naini及其他,发表在2001年第15届IEEE计算机体系架构论坛的论文集中,并且,其还共有US专利7,437,400,其全部内容通过引用被结合于此。
涉及加法的操作的一种一般形式是采用A+L*M的形式的乘法累加,其中,操作数L和M的相乘结果形成用于加法的第二操作数B。通过IEEE 754-2008标准的公开,融合乘法累加(FMA,fused multiply accumulate)操作(此处还被称为融合乘法相加操作)已经成为浮点单元的要求,FMA操作要求未舍入的相乘结果与操作数A相加,然后,舍入被与加法输入相关联而执行。已经开发了精致的FMA已流水线化单元,但是,供应这种精致的单元是昂贵的。通常,这种FMA单元还被用于执行标准的加法操作和标准的乘法操作,因此避免单独的加法器单元和单独的乘法器单元的需要,但是,由于FMA的复杂性,与精致的加法器单元相比,FMA单元通常将用更长的时间来执行标准加法操作,并且,与单独的乘法器单元相比,还将用更长的时间来执行标准乘法操作。由于大多数操作实际上不是FMA操作,而是涉及标准加法和乘法,因此,这可导致对浮点单元的显著的性能影响。
例如在共有共同待决美国专利申请No.12/585,668中所描述的,用于执行FMA操作的另一机制是使用单独的乘法单元来执行操作数L和M的相乘,并且然后,将未舍入的结果转发给单独的加法器单元,以形成将要与操作数A相加的第二操作数,其全部内容通过引用被结合于此。但是,当利用加法器单元的上述近/远路径体系架构时,其导致近路径的操作中的问题。具体地,问题是,用作操作数中的一个的未舍入的乘法结果的长度是结果R的长度的两倍,并且因此,即便在近路径中存在抵消,也可能需要舍入。如上所述,近路径通常不提供舍入电路,并且,加法的输出需要在执行舍入之前被归一化。结果,可能必须就爱那个另一流水线阶段添加到近路径,以允许执行舍入,并且,这可能显著地影响加法器单元的性能。
因此,希望提供数据处理装置的改进的浮点加法器单元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210039154.2/2.html,转载请声明来源钻瓜专利网。