System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 计算电路和人工智能加速器制造技术_技高网

计算电路和人工智能加速器制造技术

技术编号:41996285 阅读:12 留言:0更新日期:2024-07-12 12:21
本申请实施例提供了一种计算电路及人工智能加速器,涉及集成电路技术领域。该计算电路接收多个第一块浮点数,对多个第一块浮点数进行计算,获得多个第二块浮点数,其包括:第一计算单元、转换单元和第二计算单元;第一计算单元接收多个第一块浮点数,对多个第一块浮点数的尾数项进行计算,得到多个第一中间浮点数;转换单元将多个第一中间浮点数归一化为多个归一化尾数项;第二计算单元对多个归一化尾数项进行计算,获得多个第二中间浮点数,基于归一化尾数项将多个第二中间浮点数归一化为多个第二块浮点数。该计算电路降低了电路的逻辑复杂度与功耗,有效降低数据存储需求,解决了人工智能业务存储空间、带宽不足的问题。

【技术实现步骤摘要】

本申请涉及集成电路,特别是涉及一种计算电路和人工智能加速器


技术介绍

1、ai(artificial intelligence,人工智能)加速器是一种专门设计的硬件加速器或计算机系统,其主要功能是加速人工智能应用程序,特别是人工神经网络、机器学习、机器视觉和其他数据密集型或传感器驱动的任务。人工智能算法包含着庞大的计算量和存储量,例如,归一化指数函数(softmax函数)是人工智能模型中常见的算子之一,其将一个任意k维实数矢量压缩至另一个k维实数矢量中,并使新矢量中每一个元素的取值范围都在(0,1)区间内,且所有元素和为1。在概率论中,归一化指数函数的输出可用来表示一个分类概率分布。归一化指数函数的数学表达式如下式所示:

2、

3、然而,目前常用的归一化指数函数计算电路采用浮点数作为电路的。归一化指数函数计算过程中涉及大量的指数、除法操作,传统的电路设计均采用浮点数计算单元,即采用浮点数作为电路的输入、输出,面积大、功耗高、存储与带宽要求高,从而导致人工智能业务存在算力、存储空间、带宽不足等挑战。


技术实现思路

1、为解决上述技术问题或至少部分地解决上述技术问题,本申请实施例提供了一种计算电路和人工智能加速器。

2、第一方面,本申请实施例提供了一种计算电路,所述计算电路接收多个第一块浮点数,对所述多个第一块浮点数进行计算,获得多个第二块浮点数;所述多个第一块浮点数共享第一指数项,所述多个第二块浮点数共享第二指数项;

3、所述计算电路包括:第一计算单元、转换单元和第二计算单元;所述第一计算单元与所述转换单元耦合,所述转换单元与所述第二计算单元耦合;

4、所述第一计算单元接收所述多个第一块浮点数,对所述多个第一块浮点数的尾数项进行计算,得到多个第一中间浮点数;

5、所述转换单元接收所述多个第一中间浮点数,将所述多个第一中间浮点数归一化为多个归一化尾数项;

6、所述第二计算单元对所述多个归一化尾数项进行计算,获得多个第二中间浮点数,基于所述归一化尾数项将所述多个第二中间浮点数归一化为所述多个第二块浮点数。

7、在可选的实施例中,所述第一计算单元包括最大值提取子单元、矢量减法子单元、矢量指数计算子单元;

8、所述最大值提取子单元接收所述多个第一块浮点数,获取所述多个第一块浮点数的尾数项中最大的尾数项,将所述最大的尾数项作为第一尾数项;

9、所述矢量减法子单元分别计算各个所述第一块浮点数的尾数项与所述第一尾数项的差值,将所述差值作为第二尾数项;

10、所述矢量指数计算子单元基于所述第一指数项和所述第二尾数项,构造多个第三块浮点数,对所述第三块浮点数进行指数运算,获得所述多个第一中间浮点数。

11、在可选的实施例中,所述最大值提取子单元包括比较器阵列,所述比较器阵列对所述多个第一块浮点数的尾数项进行比较,获得所述多个第一块浮点数的尾数项中最大的尾数项。

12、在可选的实施例中,所述矢量减法子单元包括减法器阵列,所述减法器阵列计算各个所述第一块浮点数的尾数项与所述第一尾数项的差值。

13、在可选的实施例中,所述矢量指数计算子单元包括指数计算模块,所述指数计算模块对所述第一指数项和所述第二尾数项进行拼接,通过查表法查询拼接结果对应的指数函数值,所述指数函数值为所述第一中间浮点数;或者,所述指数计算模块通过拟合法获得所述第一中间浮点数。

14、在可选的实施例中,所述转换单元包括共享指数提取子单元和归一化子单元;

15、所述共享指数提取子单元接收所述多个第一中间浮点数,获取第一中间浮点数的指数项中最大的指数项,将所述最大的指数项作为第三指数项;

16、所述归一化子单元根据所述第三指数项,将所述多个第一中间浮点数归一化为多个归一化尾数项。

17、在可选的实施例中,所述归一化子单元包括多个基本电路,所述基本电路包括指数提取器、尾数提取器、减法器和移位电路;

18、所述指数提取器获取所述第一中间浮点数的指数项;

19、所述尾数提取器获取所述第一中间浮点数的尾数项;

20、所述减法器获取所述第一中间浮点数的指数项与所述第三指数项的差值;

21、所述移位电路根据所述第一中间浮点数的指数项与所述第三指数项的差值,对所述第一中间浮点数的尾数项进行移位对齐,获得所述归一化尾数项。

22、在可选的实施例中,所述第二计算单元包括求和子单元和乘法子单元;

23、所述求和子单元计算所述归一化尾数项之和,将所述归一化尾数项之和的倒数作为中间值;

24、所述乘法子单元计算所述中间值的尾数项与所述归一化尾数项的乘积,将所述第三尾数项与所述中间值的指数项作归一化对齐,获得目标尾数项和目标指数项,所述目标尾数项为所述第二块浮点数的尾数项,所述目标指数项为所述第二块浮点数共享的第二指数项。

25、在可选的实施例中,所述乘法子单元包括乘法器和所述归一化子单元;

26、所述乘法器计算所述中间值的尾数项与所述归一化尾数项的乘积,获得第三尾数项;

27、所述归一化子单元将所述第三尾数项与所述中间值的指数项作归一化对齐,获得目标尾数项和目标指数项。

28、第二方面,本申请实施例提供了一种人工智能加速器,所述人工智能加速器包括本申请任一实施例所述的计算电路。

29、本申请的实施例提供的技术方案至少带来以下有益效果:

30、本申请实施例提供的计算电路接收多个第一块浮点数,对该多个第一块浮点数进行计算,输出多个第二块浮点数。该计算电路包括第一计算单元、转换单元和第二计算单元。其中,第一计算单元接收多个第一块浮点数,对多个第一块浮点数的尾数项进行计算,得到多个第一中间浮点数;转换单元将多个第一中间浮点数归一化为多个归一化尾数项;第二计算单元对多个归一化尾数项进行计算,获得多个第二中间浮点数,基于归一化尾数项将多个第二中间浮点数归一化为多个第二块浮点数。

31、本申请实施例所提供的计算电路采用块浮点数作为电路的输入输出,相比于传统采用浮点数作为输入、输出的电路,逻辑复杂度与功耗大幅降低,同时可有效降低数据存储需求,解决了大模型等人工智能业务存储空间不足与带宽不足的问题。而且,该计算电路基于块浮点数共享指数的特性,支持并行计算,可有效提高计算处理能力,且容易与人工智能模型算法中其他块浮点算子兼容(例如矩阵乘等),无需数值转换。

本文档来自技高网...

【技术保护点】

1.一种计算电路,其特征在于,所述计算电路接收多个第一块浮点数,对所述多个第一块浮点数进行计算,获得多个第二块浮点数;所述多个第一块浮点数共享第一指数项,所述多个第二块浮点数共享第二指数项;

2.根据权利要求1所述的计算电路,其特征在于,所述第一计算单元包括最大值提取子单元、矢量减法子单元、矢量指数计算子单元;

3.根据权利要求2所述的计算电路,其特征在于,所述最大值提取子单元包括比较器阵列,所述比较器阵列对所述多个第一块浮点数的尾数项进行比较,获得所述多个第一块浮点数的尾数项中最大的尾数项。

4.根据权利要求2所述的计算电路,其特征在于,所述矢量减法子单元包括减法器阵列,所述减法器阵列计算各个所述第一块浮点数的尾数项与所述第一尾数项的差值。

5.根据权利要求2所述的计算电路,其特征在于,所述矢量指数计算子单元包括指数计算模块;

6.根据权利要求1所述的计算电路,其特征在于,所述转换单元包括共享指数提取子单元和归一化子单元;

7.根据权利要求6所述的计算电路,其特征在于,所述归一化子单元包括多个基本电路,所述基本电路包括指数提取器、尾数提取器、减法器和移位电路;

8.根据权利要求6所述的计算电路,其特征在于,所述第二计算单元包括求和子单元和乘法子单元;

9.根据权利要求8所述的计算电路,其特征在于,所述乘法子单元包括乘法器和所述归一化子单元;

10.一种人工智能加速器,其特征在于,所述人工智能加速器包括如权利要求1-9任一项所述的计算电路。

...

【技术特征摘要】

1.一种计算电路,其特征在于,所述计算电路接收多个第一块浮点数,对所述多个第一块浮点数进行计算,获得多个第二块浮点数;所述多个第一块浮点数共享第一指数项,所述多个第二块浮点数共享第二指数项;

2.根据权利要求1所述的计算电路,其特征在于,所述第一计算单元包括最大值提取子单元、矢量减法子单元、矢量指数计算子单元;

3.根据权利要求2所述的计算电路,其特征在于,所述最大值提取子单元包括比较器阵列,所述比较器阵列对所述多个第一块浮点数的尾数项进行比较,获得所述多个第一块浮点数的尾数项中最大的尾数项。

4.根据权利要求2所述的计算电路,其特征在于,所述矢量减法子单元包括减法器阵列,所述减法器阵列计算各个所述第一块浮点数的尾数项与所述第一尾数项的差值...

【专利技术属性】
技术研发人员:方绍峡原钢
申请(专利权)人:原粒北京半导体技术有限公司
类型:发明
国别省市:

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

1