System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 计算电路、芯片、计算设备制造技术_技高网

计算电路、芯片、计算设备制造技术

技术编号:41879560 阅读:7 留言:0更新日期:2024-07-02 00:33
本公开实施例公开了一种计算电路、芯片、计算设备,其中,该计算电路包括平方根倒数计算单元和存储单元。平方根倒数计算单元用于在待处理数据的数据类型为浮点型时,将待处理数据确定为目标浮点数,以读取有符号整数的第一数据读取规格读取目标浮点数,得到第一中间值,并按照预设移位数对第一中间值进行右移位,得到第二中间值,并基于第一预设参数与第二中间值的减法运算结果,确定待处理数据的平方根倒数;存储单元用于存储待处理数据的平方根倒数。

【技术实现步骤摘要】

本公开涉及数据处理技术,尤其是一种计算电路、芯片、计算设备


技术介绍

1、平方根倒数是指给定一个数,求出该数的平方根的倒数。在现代科学和工程领域中,计算平方根倒数是一项关键的数学运算。数据的平方根倒数在许多领域中,例如物理学、工程学、金融学以及计算机科学等领域,都有着广泛的应用。例如,在计算机图像学中,需要通过计算平方根倒数来确定三维(3d)模型在变换和渲染中的法线向量长度,以及确定3d图形中的光照和投影效果的正规化向量。另外,在确定深度神经网络(deep neuralnetworks,dnn)中的批量归一化(batchnorm)、层归一化(layernormalization)、实例归一化(instance normalization)和组归一化(group normalization)等时,也需要使用平方根倒数运算。同时上述应用在实际应用时,通常每秒需要进行上百万次的平方根倒数的运算,由此平方根倒数的计算速度决定了上述应用处理数据的效率。

2、在实现本公开的过程中,本专利技术人通过研究发现,相关技术中,常用的平方根倒数的计算方法包括牛顿迭代法和二分法计算,而通过牛顿迭代法或二分法计算平方根倒数时,均需要多次的迭代运算,使得硬件的运算量大,导致确定平方根倒数所需的时间较长,降低了计算系统整体的工作性能。


技术实现思路

1、为了解决上述技术问题,本公开实施例提供一种计算电路、芯片、计算设备。

2、本公开实施例的一个方面,提供了一种计算电路,所述计算电路包括平方根倒数计算单元、数据类型转换单元和存储单元;所述平方根倒数计算单元,用于在待处理数据的数据类型为浮点型时,将所述待处理数据确定为目标浮点数,以读取有符号整数的第一数据读取规格读取所述目标浮点数,得到第一中间值,并按照预设移位数对所述第一中间值进行右移位,得到第二中间值,并基于第一预设参数与所述第二中间值的减法运算结果,确定所述待处理数据的平方根倒数;所述数据类型转换单元,用于在所述待处理数据的数据类型为n位有符号整数类型时,将第二预设参数与所述待处理数据进行拼接,得到第三中间值,以读取浮点数的第二数据读取规格读取所述第三中间值,得到第四中间值,并基于所述第四中间值与第三预设参数的减法运算结果,确定所述目标浮点数,其中,1≤n≤23;所述存储单元,用于存储所述平方根倒数。

3、在一些实施例中,所述数据类型转换单元包括第一加法器和第一减法器;所述第一加法器,用于对所述待处理数据和所述第二预设参数进行按位或运算,以将所述待处理数据与所述第二预设参数拼接,得到所述第三中间值;所述第一减法器,用于以所述第二数据读取规格读取所述第三中间值,得到所述第四中间值,并将所述第四中间值与所述第三预设参数的减法运算结果确定为所述目标浮点数。

4、在一些实施例中,所述平方根倒数计算单元包括移位寄存器和第二减法器;所述移位寄存器,用于以所述第一数据读取规格读取所述目标浮点数,得到所述第一中间值,按照所述预设移位数对所述第一中间值进行右移位,得到第二中间值;所述第二减法器,用于确定所述第一预设参数与所述第二中间值的减法运算结果,并以读取浮点数的第二数据读取规格读取所述减法运算结果,得到所述平方根倒数。

5、在一些实施例中,所述平方根倒数计算单元还包括第一乘法器;所述第一乘法器,用于对预设放大系数和所述平方根倒数进行乘法运算,以对所述平方根倒数进行数值放大;所述存储单元,还用于存储数值放大后的平方根倒数。

6、在一些实施例中,所述计算电路还包括迭代单元;所述迭代单元,用于在所述平方根倒数不满足预设数值精度时,将所述平方根倒数确定为初始值,并对所述初始值进行预设迭代轮次的迭代处理,得到所述平方根倒数。

7、在一些实施例中,所述迭代单元包括第二乘法器和第三减法器;所述第二乘法器和所述第三减法器用于执行所述预设迭代轮次的如下操作:所述第二乘法器确定所述初始值的平方值与第四预设参数的乘法运算结果,并将所述乘法运算结果作为第五中间值输入到所述第三减法器,所述第三减法器确定第五预设参数与所述第五中间值的减法运算结果,并将所述减法运算结果作为第六中间值输入到所述第二乘法器,所述第二乘法器确定所述初始值与所述第六中间值的乘法运算结果,以完成对所述初始值的一次迭代处理,所述初始值与所述第六中间值的乘法运算结果作为下一次迭代处理的初始值参与下一次迭代处理,直至进行所述预设迭代轮次的迭代处理,得到所述平方根倒数。

8、在一些实施例中,所述n的取值包括以下任一项:4、8和16。

9、在一些实施例中,所述待处理数据的数值范围包括0到8388608的整数。

10、在一些实施例中,所述待处理数据的数据类型为浮点型时,所述待处理数据为32位浮点数。

11、本公开实施例的另一个方面,提供了一种芯片,所述芯片上述计算电路。

12、本公开实施例的另一个方面,提供了一种计算设备,所述计算设备包括上述芯片。

13、在本公开实施例中,在待处理数据的数据类型为浮点型时,通过计算电路中的平方根倒数计算单元将待处理数据确定为目标浮点数,之后以读取有符号整数的第一数据读取规格,读取目标浮点数,得到第一中间值,对第一中间值进行右移位,得到第二中间值,并基于第二中间值与第一预设参数的减法运算结果,确定平方根倒数,并将该平方根倒数存储到存储单元。由此,在保证得到的平方根倒数的精确性的情况下,避免了多次迭代运算,降低了硬件的运算量,提高了计算系统整体的工作性能。另外,由于避免了多次迭代运算,也极大的提高了获得平方根倒数的效率。

14、下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。

本文档来自技高网...

【技术保护点】

1.一种计算电路,其特征在于,所述计算电路包括平方根倒数计算单元、数据类型转换单元和存储单元;

2.根据权利要求1所述的计算电路,其特征在于,所述数据类型转换单元包括第一加法器和第一减法器;

3.根据权利要求1或2所述的计算电路,其特征在于,所述平方根倒数计算单元包括移位寄存器和第二减法器;

4.根据权利要求1或2所述的计算电路,其特征在于,所述平方根倒数计算单元还包括第一乘法器;

5.根据权利要求1或2所述的计算电路,其特征在于,所述计算电路还包括迭代单元;

6.根据权利要求5所述的计算电路,其特征在于,所述迭代单元包括第二乘法器和第三减法器;

7.根据权利要求1所述的计算电路,其特征在于,所述N的取值包括以下任一项:4、8和16。

8.根据权利要求1所述的计算电路,其特征在于,所述待处理数据的数值范围包括0到8388608的整数。

9.根据权利要求1所述的计算电路,其特征在于,所述待处理数据的数据类型为浮点型时,所述待处理数据为32位浮点数。

10.一种芯片,其特征在于,所述芯片包括权利要求1- 9中任一所述的计算电路。

11.一种计算设备,其特征在于,所述计算设备包括权利要求10所述的芯片。

...

【技术特征摘要】

1.一种计算电路,其特征在于,所述计算电路包括平方根倒数计算单元、数据类型转换单元和存储单元;

2.根据权利要求1所述的计算电路,其特征在于,所述数据类型转换单元包括第一加法器和第一减法器;

3.根据权利要求1或2所述的计算电路,其特征在于,所述平方根倒数计算单元包括移位寄存器和第二减法器;

4.根据权利要求1或2所述的计算电路,其特征在于,所述平方根倒数计算单元还包括第一乘法器;

5.根据权利要求1或2所述的计算电路,其特征在于,所述计算电路还包括迭代单元;

6.根据权利要求5所述的计算电路,其特征...

【专利技术属性】
技术研发人员:杨大卫程元
申请(专利权)人:上海后摩集成电路有限公司
类型:发明
国别省市:

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

1