支持用于高效乘法的替代数字格式的系统和方法技术方案

技术编号:32508344 阅读:16 留言:0更新日期:2022-03-02 10:45
本文公开的内容包括用于为神经网络执行第一值与第二值的乘法的系统、方法和设备,该设备包括移位电路和加法电路。第一值具有预定格式,该预定格式包括第一位和用于表示零或2

【技术实现步骤摘要】
【国外来华专利技术】支持用于高效乘法的替代数字格式的系统和方法
[0001]公开领域
[0002]本公开总体上涉及一种用于为神经网络执行值的乘法的系统和方法,包括但不限于用于使用数字格式进行高效乘法的系统和方法。
[0003]背景
[0004]人工智能(AI)加速器的一个挑战涉及在为神经网络执行AI处理时控制或降低功耗。例如,神经网络可以是可以包括卷积层的卷积神经网络。在卷积层中,AI加速器可以对输入层应用卷积运算,以与传统的全连接前馈神经网络相比减少参数数量的方式将结果传递到下一层。然而,随着越来越复杂的多维(例如,多通道)输入/输出结构被用在卷积神经网络中,减少能量和延迟的方法可能是有益的。此外,鉴于在执行卷积运算时需要大量的乘法运算,高效的乘法运算可能是有益的。
[0005]概述
[0006]本文公开的各种实施例涉及一种用于为神经网络执行第一值与第二值的乘法的设备。在一些实施例中,该设备可以包括电路,该电路包括移位电路和加法电路。第一值可以具有预定格式,该预定格式包括第一位和用于表示0或2
n
的值的两个或更多个第二位,其中n是大于或等于0的整数。电路可以被配置为当该两个或更多个第二位表示值2
n
时,经由移位电路将第二值移位(n+1)位,以提供第一相乘结果。该电路可以被配置为基于第一值的第一位的值,选择性地输出零或第二值以提供第二相乘结果。该电路可以被配置为经由加法电路将第一相乘结果和第二相乘结果相加,以提供第一值与第二值的乘法的结果。
[0007]在一些实施例中,第一值的第一位可以是第一值的最低有效位。在一些实施例中,电路可以被配置为当两个或更多个第二位表示零值时,提供零值作为第一相乘结果。在一些实施例中,第二值可以使用线性数字格式来表示二进制数。
[0008]在一些实施例中,第二值可以具有预定格式,该预定格式包括第一位和用于表示零或2
m
的值的两个或更多个第二位,其中m是大于或等于零的整数。在一些实施例中,电路还可以被配置为当第一值的两个或更多个第二位表示值2
n
并且第二值的两个或更多个第二位表示值2
m
时,经由移位电路将值2
m+1
移位(n+1)位以提供第三相乘结果。电路还可以被配置为基于第二值的第一位的值,选择性地输出零或值2
n+1
以提供第四相乘结果。电路还可以被配置为基于第一值的第一位的值,选择性地输出零或值2
m+1
以提供第五相乘结果。电路还可以被配置为基于第一值的第一位的值,选择性地输出零或第二值的第一位的值以提供第六相乘结果。电路还可以被配置为经由加法电路将第三相乘结果至第六相乘结果相加,以提供第一值与第二值的乘法的结果。
[0009]在一些实施例中,作为第一值的两个或更多个第二位的“1 1”可以表示值4。在一些实施例中,第一值还可以包括第三位,以指示第一值是有符号的或者是无符号的。在一些实施例中,电路可以被配置为基于第一值的第三位的值来确定第一值与第二值的乘法的结果的符号。在一些实施例中,电路还可以被配置为使用权重数据和表示激活函数的激活数据来对神经网络的第一层执行卷积,并且第一值可以表示用于神经网络的第一层的权重数据和激活数据中的一个的值。在一些实施例中,第二值可以表示用于神经网络的第一层的
权重数据和激活数据中的另一个的值。
[0010]本文公开的各种实施例涉及一种用于为神经网络执行第一值与第二值的乘法的方法,第一值具有预定格式,该预定格式包括第一位和用于表示零或2
n
的值的两个或更多个第二位,其中n是大于或等于0的整数。在一些实施例中,执行第一值与第二值的乘法可以包括当两个或更多个第二位表示值2
n
时,通过移位电路将第二值移位(n+1)位,以提供第一相乘结果。执行第一值与第二值的乘法可以包括基于第一值的第一位的值,选择性地输出零或第二值以提供第二相乘结果。执行第一值与第二值的乘法可以包括通过加法电路将第一相乘结果与第二相乘结果相加,以提供第一值与第二值的乘法的结果。
[0011]在一些实施例中,第一值的第一位可以是第一值的最低有效位。在一些实施例中,执行第一值与第二值的乘法可以包括当两个或更多个第二位表示零值时,提供零值作为第一相乘结果。在一些实施例中,第二值可以使用线性数字格式来表示二进制数。
[0012]在一些实施例中,第二值可以具有预定格式,该预定格式包括第一位和用于表示零或2
m
的值的两个或更多个第二位,其中m是大于或等于零的整数。执行第一值与第二值的乘法还可以包括当第一值的两个或更多个第二位表示值2
n
并且第二值的两个或更多个第二位表示值2
m
时,通过移位电路将值2
m+1
移位(n+1)位以提供第三相乘结果。执行第一值与第二值的乘法还可以包括基于第二值的第一位的值,选择性地输出零或值2
n+1
以提供第四相乘结果。执行第一值与第二值的乘法还可以包括基于第一值的第一位的值,选择性地输出零或值2
m+1
以提供第五相乘结果。执行第一值与第二值的乘法还可以包括基于第一值的第一位的值,选择性地输出零或第二值的第一位的值以提供第六相乘结果。执行第一值与第二值的乘法还可以包括通过加法电路将第三相乘结果至第六相乘结果相加,以提供第一值与第二值的乘法的结果。
[0013]在一些实施例中,作为第一值的两个或更多个第二位的“1 1”可以表示值4。在一些实施例中,第一值还可以包括第三位,以指示第一值是有符号的或者是无符号的。在一些实施例中,执行第一值与第二值的乘法还可以包括基于第一值的第三位的值来确定第一值与第二值的乘法的结果的符号。在一些实施例中,可以使用权重数据和表示激活函数的激活数据对神经网络的第一层执行卷积,并且第一值可以表示用于神经网络的第一层的权重数据和激活数据中的一个的值。在一些实施例中,第二值可以表示用于神经网络的第一层的权重数据和激活数据中的另一个的值。
[0014]下面详细讨论这些和其他方面和实现。前述信息和以下详细描述包括各种方面和实现的说明性示例,并且提供了用于理解所要求保护的方面和实现的性质和特征的综述或框架。应当理解,本文中公开的适于结合到本专利技术的一个或更多个方面或实施例中的任何特征都旨在可推广到本公开的任何和所有方面和实施例。附图提供了对各种方面和实现的说明和进一步理解,并且被结合在本说明书中并构成本说明书的一部分。
[0015]附图简述
[0016]附图不意在按比例绘制。各个附图中相同的附图标记和名称表示相同的元件。为了清楚起见,并非每个部件都可以在每个图中进行标记。
[0017]图1A是根据本公开的示例实现的用于执行人工智能(AI)相关处理的系统的实施例的框图。
[0018]图1B是根据本公开的示例实现的用于执行AI相关处理的设备的实施例的框图。
[0019]图1C是根据本公开的示例实现的用于执行AI相关处理的设备的实本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种设备,包括:电路,所述电路包括移位电路和加法电路,用于为神经网络执行第一值与第二值的乘法,所述第一值具有预定格式,所述预定格式包括第一位和用于表示零或2
n
的值的两个或更多个第二位,其中n是大于或等于0的整数,所述电路被配置为:当所述两个或更多个第二位表示值2
n
时,经由所述移位电路将所述第二值移位(n+1)位,以提供第一相乘结果,基于所述第一值的第一位的值,选择性地输出零或所述第二值以提供第二相乘结果,以及经由所述加法电路将所述第一相乘结果与所述第二相乘结果相加,以提供所述第一值与所述第二值的乘法的结果。2.根据权利要求1所述的设备,其中,所述第一值的第一位是所述第一值的最低有效位。3.根据权利要求1或权利要求2所述的设备,其中,所述电路被配置为当所述两个或更多个第二位表示零值时,提供零值作为所述第一相乘结果。4.根据权利要求1、权利要求2或权利要求3所述的设备,其中,所述第二值使用线性数字格式来表示二进制数。5.根据权利要求1至4中任一项所述的设备,其中:所述第二值具有所述预定格式,所述预定格式包括第一位和用于表示零或2
m
的值的两个或更多个第二位,其中m是大于或等于零的整数,所述电路还被配置为:当所述第一值的两个或更多个第二位表示值2
n
并且所述第二值的两个或更多个第二位表示值2
m
时,经由所述移位电路将值2
m+1
移位(n+1)位以提供第三相乘结果,基于所述第二值的第一位的值,选择性地输出零或值2
n+1
以提供第四相乘结果,基于所述第一值的第一位的值,选择性地输出零或值2
m+1
以提供第五相乘结果,基于所述第一值的第一位的值,选择性地输出零或所述第二值的第一位的值以提供第六相乘结果,以及经由所述加法电路将所述第三相乘结果至所述第六相乘结果相加,以提供所述第一值与所述第二值的乘法的结果。6.根据权利要求1至5中任一项所述的设备,其中,作为所述第一值的两个或更多个第二位的“1 1”表示值4。7.根据权利要求1至6中任一项所述的设备,其中,所述第一值还包括第三位,以指示所述第一值是有符号的或者是无符号的;并且优选地,其中,所述电路被配置为基于所述第一值的第三位的值来确定所述第一值与所述第二值的乘法的结果的符号。8.根据权利要求1至7中任一项所述的设备,其中:所述电路还被配置为使用权重数据和表示激活函数的激活数据对所述神经网络的第一层执行卷积,并且所述第一值表示用于所述神经网络的所述第一层的所述权重数据和所述激活数据中的一个的值;并且优选地,其中,所述第二值表示用于所述神经网络的所述第一层的所述权重数据和所述激活数据中的另一个的值。9.一种方法,包括:

【专利技术属性】
技术研发人员:加内什
申请(专利权)人:脸谱科技有限责任公司
类型:发明
国别省市:

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

1