神经网络装置、操作神经网络装置的方法和应用处理器制造方法及图纸

技术编号:30345286 阅读:29 留言:0更新日期:2021-10-12 23:30
公开了神经网络装置、操作神经网络装置的方法和应用处理器。所述神经网络装置包括:浮点运算电路,被配置为执行点积运算和累加运算;和缓冲器,被配置为存储由浮点运算电路生成的第一累积数据,其中,浮点运算电路还被配置为通过以下操作执行点积运算和累加运算:从第一累积数据的阶码值和通过分别将多个浮点数据对的阶码相加而获得的多个阶码加法结果识别最大值;基于最大值,执行第一累积数据的尾数部分和通过分别将所述多个浮点数据对的尾数相乘而获得的多个尾数乘法结果的对齐移位;和执行多个对齐的尾数乘法结果与第一累积数据的对齐的尾数部分的求和。数据的对齐的尾数部分的求和。数据的对齐的尾数部分的求和。

【技术实现步骤摘要】
神经网络装置、操作神经网络装置的方法和应用处理器
[0001]本申请基于并要求于2020年4月7日在韩国知识产权局提交的第10

2020

0042408号韩国专利申请和2021年1月5日在韩国知识产权局提交的第10

2021

0001056号韩国专利申请的优先权,所述韩国专利申请的公开通过引用全部包含于此。


[0002]公开的示例实施例涉及人工智能领域,更具体地,涉及神经网络装置、操作神经网络装置的方法和应用处理器。

技术介绍

[0003]神经网络表示对动物大脑的生物网络进行模拟的计算架构。随着近来神经网络技术已经发展,已经对在各种电子系统中使用基于神经网络操作的神经网络装置来分析输入数据并提取有效信息进行了大量研究。
[0004]神经网络装置需要针对复杂的输入数据执行大量计算。为了使神经网络装置能够实时分析输入数据并提取信息,需要用于高效地处理神经网络的操作的技术。特别地,低功率高性能系统(诸如,智能电话)具有有限的资源。因此,期望用于减少处理复杂的输入数据所需的计算量并提高人工神经网络的性能的技术。

技术实现思路

[0005]公开的一个或多个示例实施例提供了一种用于在包括浮点运算电路的神经网络装置中执行浮点计算的方法和装置。
[0006]根据公开的一方面,提供了一种用于执行神经网络操作的神经网络装置。所述神经网络装置包括:浮点运算电路,被配置为执行点积运算和累加运算;和缓冲器,被配置为存储由浮点运算电路生成的第一累积数据,其中,浮点运算电路还被配置为通过以下操作执行点积运算和累加运算:从第一累积数据的阶码值和通过分别将多个浮点数据对的阶码相加而获得的多个阶码加法结果识别最大值;基于最大值,执行第一累积数据的尾数部分和通过分别将所述多个浮点数据对的尾数相乘而获得的多个尾数乘法结果的对齐移位;和执行多个对齐的尾数乘法结果与第一累积数据的对齐的尾数部分的求和。
[0007]根据公开的另一方面,提供了一种神经网络装置的操作方法。所述操作方法包括:接收多个浮点数据对和第一累积数据;从第一累积数据的阶码值和通过分别将所述多个浮点数据对的阶码相加而获得的多个阶码加法结果识别最大值;基于最大值,执行第一累积数据的尾数部分和通过分别将所述多个浮点数据对的尾数相乘而获得的多个尾数乘法结果的对齐移位;将多个对齐的尾数乘法结果与第一累积数据的对齐的尾数部分相加;和基于所述相加的结果生成第二累积数据。
[0008]根据公开的再一方面,提供了一种包括神经网络装置的应用处理器,其中,所述神经网络装置被配置为通过以下操作执行点积运算和累加运算:基于第一累积数据的阶码值和通过分别将多个浮点数据对的阶码相加而获得的多个阶码加法结果,执行第一累积数据
的尾数部分和通过分别将所述多个浮点数据对的尾数相乘而获得的多个尾数乘法结果的对齐移位;和执行多个对齐的尾数乘法结果与第一累积数据的对齐的尾数部分的求和。
附图说明
[0009]通过参照附图描述特定示例实施例,以上和/或其它方面将更加清楚,其中:
[0010]图1是根据示例实施例的神经网络系统的示意性框图;
[0011]图2示出神经网络架构的示例;
[0012]图3A至图3C是浮点数据格式的类型的示例的示图,图3D是整数数据的示例的示图;
[0013]图4是根据示例实施例的神经网络装置的操作方法的流程图;
[0014]图5是示出根据示例实施例的神经网络系统的操作的示图;
[0015]图6是根据示例实施例的神经网络装置的示图;
[0016]图7A是根据示例实施例的执行点积运算的浮点运算电路的示图;
[0017]图7B是输入到浮点运算电路的浮点数据对的格式类型的示图;
[0018]图8A和图8B是根据浮点数据的格式的类型执行位扩展的乘法器的示图;
[0019]图9至图12是根据示例实施例的用于描述浮点运算电路的操作的示图;
[0020]图13是根据示例实施例的包括在神经网络装置中的运算电路的框图;以及
[0021]图14是根据示例实施例的应用处理器的框图。
具体实施方式
[0022]在下文中,将参照附图详细描述示例实施例。
[0023]图1是根据示例实施例的神经网络系统100的示意性框图。
[0024]神经网络系统100可通过使用神经网络对输入数据进行分析来训练神经网络或者从输入数据推断信息。神经网络系统100可基于推断的信息来确定情况,或者控制安装有神经网络系统100的电子装置的元件。例如,神经网络系统100可应用于使用神经网络执行语音识别、图像识别、图像分类等的智能电话、平板装置、智能电视(TV)、增强现实(AR)装置、物联网(IoT)装置、自主车辆、机器人、医疗装置、无人机、高级驾驶员辅助系统(ADAS)、图像显示装置、测量设备等。神经网络系统100可安装在任何其它各种类型的电子装置上。在一个实施例中,图1的神经网络系统100可对应于应用处理器。
[0025]参照图1,神经网络系统100可包括中央处理器(CPU)110、神经网络装置120、存储器130和传感器模块140。神经网络系统100还可包括输入/输出模块、安全模块、电源控制器等,并且还可包括各种处理器。在一些实施例中,神经网络系统100的一些或所有元件(例如,CPU 110、神经网络装置120、存储器130和传感器模块140)可形成在单个半导体芯片中。例如,神经网络系统100可被实现为片上系统(SoC)。神经网络系统100的元件可通过总线150彼此进行通信。尽管图1中未示出,但是神经网络系统100还可包括用于与其它知识产权(IP)块进行通信的接口(未示出)。
[0026]CPU 110通常控制神经网络系统100的操作。CPU 110可包括单核或多核。CPU 110可处理或执行存储在存储区域(诸如,存储器130)中的程序和/或数据。
[0027]例如,CPU 110可执行应用,并且控制神经网络装置120执行在应用的执行中涉及
的基于神经网络的任务。神经网络可包括各种神经网络模型(诸如,卷积神经网络(CNN)、区域CNN(R

CNN)、区域候选网络(RPN)、循环神经网络(RNN)、基于堆叠的深度神经网络(S

DNN)、状态空间动态神经网络(S

SDNN)、解卷积网络、深度信念网络(DBN)、受限玻尔兹曼机(RBM)、全卷积网络、长短期记忆(LSTM)网络和分类网络)中的至少一种。
[0028]神经网络装置120可基于输入数据执行神经网络操作。神经网络装置120可基于执行神经网络操作的结果生成信息信号。神经网络装置120可包括神经网络操作加速器、协处理器、数字信号处理器(DSP)、专用集成电路(ASIC)等。在一些实施例中,神经网络装置120可包括至少一个神经处理电路集群。
[0029]根据示本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种神经网络装置,包括:浮点运算电路,被配置为执行点积运算和累加运算;和缓冲器,被配置为存储由浮点运算电路生成的第一累积数据,其中,浮点运算电路还被配置为通过以下操作执行点积运算和累加运算:从第一累积数据的阶码值和通过分别将多个浮点数据对的阶码相加而获得的多个阶码加法结果识别最大值;基于最大值,执行第一累积数据的尾数部分和通过分别将所述多个浮点数据对的尾数相乘而获得的多个尾数乘法结果的对齐移位;和执行多个对齐的尾数乘法结果与第一累积数据的对齐的尾数部分的求和。2.根据权利要求1所述的神经网络装置,其中,浮点运算电路还被配置为通过以下操作生成第二累积数据:并行地执行对从所述求和生成的加法结果数据的第一数量的较高位的第一前导1检测和对加法结果数据的第二数量的较低位的第二前导1检测,所述较高位包括加法结果数据的最高有效位,所述较低位包括加法结果数据的最低有效位;基于第一前导1检测的结果和第二前导1检测的结果来移位加法结果数据;和对移位加法结果数据的结果执行归一化和取整。3.根据权利要求2所述的神经网络装置,其中,第一数量小于第二数量。4.根据权利要求2所述的神经网络装置,其中,浮点运算电路还被配置为将第二累积数据存储在缓冲器中。5.根据权利要求1所述的神经网络装置,其中,浮点运算电路还被配置为:接收所述多个浮点数据对和第一累积数据,以执行点积运算和累加运算。6.根据权利要求1所述的神经网络装置,其中,包括在所述多个浮点数据对中的多条数据具有与第一累积数据不同的类型的格式。7.根据权利要求1所述的神经网络装置,其中,包括在所述多个浮点数据对中的多条数据具有浮点16类型格式或脑浮点16类型格式。8.根据权利要求7所述的神经网络装置,其中,第一累积数据具有浮点32类型格式。9.根据权利要求7所述的神经网络装置,其中,浮点运算电路还被配置为:对所述多条数据之中的第一数据的阶码位字段和所述多条数据之中的第二数据的尾数位字段进行扩展,第一数据具有浮点16类型格式,第二数据具有脑浮点16类型格式。10.根据权利要求1至权利要求9中的任意一项所述的神经网络装置,其中,浮点运算电路包括:第一加法器电路,被配置为将所述多个对齐的尾数乘法结果的较高位与第一累积数据的对齐的尾数部分的较高位相加;和第二加法器电路,被配置为将所述多个对齐的尾数乘法结果的较低位与第一累积数据的对齐的尾数部分的较低位相加。11.根据权利要求10所述的神经网络装置,其中,第一加法器电路和第二加法器电路中的一个被配置为被包括在所述神经网络装置中的整数乘法器共用,整数乘法器被配置为执行整数乘法运算。12.根据权利要求10所述的神经网络装置,其中,浮点运算电路还被配置为:
通过将从第一加法器电路输出的第一加法结果数据与从第二加法器电路输出的第二加法结果数据相加并且对第一加法结果数据与...

【专利技术属性】
技术研发人员:金贤弼沈炫宇安成祐金厦颂李度咏
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:

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

1