尤其在模型计算单元中纯基于硬件计算函数模型的FMA单元制造技术

技术编号:10702310 阅读:99 留言:0更新日期:2014-12-03 11:06
本发明专利技术涉及一种用于在控制器(1)中的模型计算单元(3)中实施计算运算的FMA单元(42),其中作为输入参量能够以浮点值的形式处理两个被乘数以及相加数,并且作为输出参量以浮点值的形式提供计算结果,其中所述FMA单元(42)构造用于实施乘法以及随后的加法,其中用于被乘数的输入端的位分辨率低于用于相加数的输入端的位分辨率和输出参量的位分辨率。

【技术实现步骤摘要】
【专利摘要】本专利技术涉及一种用于在控制器(1)中的模型计算单元(3)中实施计算运算的FMA单元(42),其中作为输入参量能够以浮点值的形式处理两个被乘数以及相加数,并且作为输出参量以浮点值的形式提供计算结果,其中所述FMA单元(42)构造用于实施乘法以及随后的加法,其中用于被乘数的输入端的位分辨率低于用于相加数的输入端的位分辨率和输出参量的位分辨率。【专利说明】尤其在模型计算单元中纯基于硬件计算函数模型的FMA单元
本专利技术涉及一种控制器中以硬件实现的单元、尤其FMA单元(FMA=Floating PointMultiply and Add Operat1n, Fused Multiply Add Operat1n,浮点乘法及加法运算、混合乘加运算)。
技术介绍
由现有技术公开了带有主计算单元和用于计算基于数据的函数模型的单独的模型计算单元的控制器。例如文件DE 10 2010 028 266 Al示出了一种带有额外的逻辑线路作为模型计算单元的控制器,该模型计算单元用于在一个或多个循环计算中纯基于硬件地计算乘法、加法和指数函数。这实现了在硬件单元中辅助尤其用于计算高斯过程模型的贝叶斯回归方法。 所述模型计算单元总体上设计用于基于参数和网格点或者说训练数据实现数学过程以用于计算基于数据的函数模型。尤其将模型计算单元构造用于在两个计算循环(Schleife)中有效地基于硬件地计算指数函数,从而与在根据软件运行的主计算单元中能够实现的计算速度相比,能够以更高的计算速度来计算高斯过程模型。为了加速逻辑单元中的计算,能够将乘法及加法过程组合在共同的MAK或者说FMA单元中,其以特别有效的方式在硬件方面实现了加法及乘法运算。 例如在文献US 7,080, 111 B2中描述了输入侧及输出侧有32Bit分辨率的FMA单元。文献US 7,346,642 BI也示出了这种FMA单元,然而具有改善的精度。
技术实现思路
按本专利技术提出了一种按权利要求1所述的用于在控制器中的模型计算单元中实施计算运算的FM单元以及按并列权利要求所述的模型计算单元和控制器。 本专利技术的其他有利的设计方案在从属权利要求中得到说明。 根据第一方面提出一种用于在控制器中的模型计算单元中实施计算运算的FMA单元,其中作为输入参量能够分别以浮点值的形式处理两个被乘数以及相加数,并且作为输出参量能够以浮点值的形式根据尾数结果和指数结果提供计算结果,其中FMA单元构造用于实施乘法以及随后的加法,其中用于被乘数的输入端的位分辨率低于用于相加数的输入端的位分辨率以及输出参量的位分辨率。 上面的FMA单元实施两个被乘数的乘法以及乘法结果与相加数的加法。上面的FMA单元与已知的FMA单元的不同之处在于,以比相加数以及FMA单元中的计算结果更低的精度提供被乘数并且对其进行计算。此外,没有精度损失地示出乘法的中间结果。在选择各个位分辨率(BitauflSsung)时必须进行权衡,其中考虑在使用FMA单元时在模型计算单元中借助一个或多个计算循环重复累积地形成加和并且在此必须实现足够的精度。尤其由于数字上的问题,在累积值很小、即近似于零的情况下或者相加数的值很大的情况下必须提供足够的位分辨率。 另一方面如果被乘数和相加数的位分辨率选择得太大,那么由于算法的硬件实现而需要更多逻辑,从而明显增加了用于以集成结构实现FMA单元所需的面积并且此外也降低了硬件的效率。 上面的FM单元提出了以减小的精度使用FM单元的乘法部分。也就是说,所述被乘数只能以低于随后形成加和的位分辨率的位分辨率预先给出并且进行计算。这显著节省了所需的芯片面积,因为乘法部分是FM单元需要最大面积的部分。尤其在用于乘法的被乘数或者说其尾数值的位分辨率相当于输出值以及相加数或者说其尾数值的位分辨率的一半或者低于该位分辨率的一半时,不再需要将乘法结果在内部转换成带有较低位分辨率的值以能够实施加法,如其至今所实施的那样。 更确切地说,能够如此选择乘法的中间结果的位分辨率,从而不降低精度。例如能够用带有8Bit的指数以及23Bit的尾数的32Bit浮点格式(单精度)的精度提供被乘数。能够应用24BitX24Bit整数乘法,其产生48Bit的分数精度。此外,能够通过被乘数的降低的位分辨率来降低提供为输入参量的有待提供的数据量,因为例如在所希望的64位分辨率的最终结果中仅仅必须提供32位分辨率的两个被乘数。 此外,所述FMA单元能够包括:-指数加法块,所述指数加法块构造用于将形成指数乘积的被乘数的指数相加并且提供相应的指数中间结果;-乘法块,所述乘法块构造用于将被乘数的尾数值相乘并且获得尾数乘法结果;-指数评估块,所述指数评估块构造用于求得指数中间结果Ee与相加数的指数之间的差并且提供指数结果;以及-加法块,所述加法块构造用于根据指数中间结果Ee与相加数的指数之间所求得的差调入尾数乘法结果或者右移运算(Rechtsverschiebungsoperat1n)的相加数的尾数并且随后将其相加从而获得尾数结果,其中尾数结果和指数结果给出了输出参量; 其中指数加法块和乘法块的输入端的位分辨率低于指数评估块和加法块的输入端的位分辨率。 根据一种实施方式,被乘数能够具有第一尾数位分辨率以及第一指数位分辨率,并且相加数和输出参量具有第二尾数位分辨率和第二指数位分辨率,其中第二尾数位分辨率至少相当于第一尾数位分辨率的双倍。 能够提出,所述指数评估块构造用于将指数结果提供为指数中间结果Ee与相加数的指数中较大的指数的值,其中加法块构造用于根据指数中间结果Ee与相加数的指数之间所求得的差调入尾数乘法结果或者右移运算的相加数的尾数中所配属的指数较小的那个。 尤其能够设置标准化块,用于使指数结果以及尾数结果标准化,从而带入并且提供到相应的浮点显示中。 根据一个方面提出了用于控制器的模型计算单元,包括带有逻辑单元的计算核心,从而计算在硬件中执行的算法,其中FM单元设置用于实施加法和/或乘法运算。 尤其所述逻辑单元能够构造用于计算贝叶斯回归。 根据一个方面设置了控制器,包括:-软件控制的主计算单元;以及 -上述模型计算单元。 根据一种实施方式,存储器能够设置用于存储超参数(Hyperparameter )和网格点数据,其中以更低的位分辨率提供所述超参数和所述网格点数据。 【专利附图】【附图说明】 下面根据附图详细解释优选的实施方式。附图中:图1示出具有模型计算单元的控制器的示意图;图2示出模型计算单元的计算核心的示意图;并且图3示出图1的模型计算单元中的FMA计算的示意图。 【具体实施方式】 在下面的说明中使用的浮点格式基于IEEE-754标准。 图1示出了用于集成的控制器I的硬件结构的示意图,在该控制器中以集成的方式设置了主计算单元2和模型计算单元3用于基于硬件地计算基于数据的函数模型。主计算单元2和模型计算单元3经由内部的通讯连接部4、例如系统总线相互通讯连接。此外,所述控制器I能够包括内部的存储器5以及DMA单元6(DMA=Direct Memory Access,直接存储器访问),所述存储器和DMA单元经由内部的通讯连接部4相互连接。 所述模型计算单元3本文档来自技高网
...

【技术保护点】
用于在控制器(1)中的模型计算单元(3)中实施计算运算的FMA单元(42),其中作为输入参量能够以浮点值的形式分别处理两个被乘数和相加数,并且作为输出参量以浮点值的形式提供计算结果,其中所述FMA单元(42)具有用于所述两个被乘数的输入端和用于所述相加数的输入端并且构造用于实施被乘数的乘法和随后所述乘法的计算结果与所述相加数的加法,其中用于所述被乘数的输入端的位分辨率低于用于所述相加数的输入端的位分辨率和所述输出参量的位分辨率。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:W菲舍尔A冈托罗
申请(专利权)人:罗伯特·博世有限公司
类型:发明
国别省市:德国;DE

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

1