处理器及其控制方法技术

技术编号:32207999 阅读:23 留言:0更新日期:2022-02-09 17:13
提供了一种处理器。所述处理器包括被配置为以矩阵形式布置的多个处理元件和控制器,其中,所述控制器被配置为在多个周期期间控制所述多个处理元件处理目标数据,控制第一处理元件使得每个第一处理元件对从相邻第一处理元件提供的数据和输入的第一元素进行运算,并且将包括在所述多个元素中的第二行中的每个第二元素输入到所述多个处理元件中的布置在第二行中的第二处理元件,控制第二处理元件,使得每个第二处理元件对从相邻第二处理元件提供的数据和输入的第二元素进行运算,并且对从第一处理元件中的同一列中的相邻第一处理元件提供的数据和预先存储的运算数据进行运算。件提供的数据和预先存储的运算数据进行运算。件提供的数据和预先存储的运算数据进行运算。

【技术实现步骤摘要】
【国外来华专利技术】处理器及其控制方法


[0001]本公开涉及一种处理器及其控制方法。更具体地,本公开涉及执行池化的处理器及其控制方法。

技术介绍

[0002]通常,家用电器(诸如冰箱或洗衣机)包括用于执行特定功能的马达。另一方面,近年来,通常可在一个家庭内提供多个具有马达的家用电器。例如,可在一个家庭内提供普通冰箱和泡菜冰箱。
[0003]深度学习是一种基于人工神经网络的机器学习技术,并且即使人工神经网络被设计成多层结构以变深,也可通过使用无监督学习对用于学习的数据进行预处理或者通过一次跨若干层传送数据来提高学习效率。更具体地,由于互联网的大数据和处理大数据的计算能力的提高,深度学习最近得到了极大的发展。
[0004]其中,卷积神经网络(CNN)具有适合于学习二维数据的结构,并且可包括卷积运算、池化运算等。
[0005]这里,池化用于检测局部区域中的有意义的信号。例如,当使用用于检测图像中的瞳孔的滤波器执行卷积时,将瞳孔位置处记录的高数值作为结果值,但是因为这些数值是大量结果值中的一些,所以这些数值可能无法有效地传送到下一层。
[0006]在这种情况下,可如图1A所示使用最大池化将局部区域中的最大信号传送到下一层。另外,传送到下一层的强信号可在滤波器学习时通过反向传播算法再次前向传送,以使用于检测瞳孔的滤波器更有效地执行学习。因此,池化执行提高推理和学习效率的重要功能。
[0007]可选地,如图1B所示,池化可用于减少特征图数据。在不执行池化的情况下,执行卷积,使得可在深度方向(Z轴方向)上增加大小,但是在执行池化的情况下,减小了X轴和Y轴方向上的大小,使得可减少运算量和所需存储器的数量。
[0008]然而,在相关技术中,一维计算器结构(1D阵列)已经用于池化运算。
[0009]在这种情况下,如图1C所示,用于卷积的二维计算器结构(2D阵列)和用于池化的1D阵列需要由单独的硬件实现,这导致成本(诸如硬件面积和功耗)增加。
[0010]另外,如图1D所示,还发生硬件资源的负载平衡问题。
[0011]另外,在使用1D阵列结构进行池化的情况下,通过使用称为单指令多数据(SIMD)的方法利用一个指令同时控制多个处理元件(PE)来执行运算。在这种情况下,一个处理元件处理包括在特征图数据的一个深度中的数据,并且相应的处理元件对包括在一个深度中的数据的每个局部区域执行池化。
[0012]例如,在局部区域的大小为3
×
3并且以步幅1执行池化的情况下,如图1E所示,第一处理元件顺序地接收4、2、4、7、3、2、4、3和8以执行池化,并且顺序地接收2、4、3、3、2、6、3、8和4以执行池化。在这种情况下,对于每个区域,通过改变局部区域,图1E的8被从存储器读取九次,然后进行九次加法运算。例如,存在诸如不必要的存储器访问和运算增加的问题。
[0013]可选地,如图1F所示,可使用SIMD方式进行卷积和池化。然而,在卷积的情况下,不可能重用数据。
[0014]如上所述,在使用1d阵列结构进行池化的情况下,会出现各种问题。
[0015]上述信息仅作为
技术介绍
信息呈现,以帮助理解本公开。关于上述内容中的任何一个是否可作为关于本公开的现有技术适用,没有做出任何确定,也没有做出断言。

技术实现思路

[0016]技术问题
[0017]本公开的各方面是为了至少解决上述问题和/或缺点,并且至少提供下面描述的优点。因此,本公开的一个方面在于提供一种用于使用具有2D阵列结构的多个处理元件来执行池化的处理器及其控制方法。
[0018]另外的方面将部分地在下面的描述中阐述,并且部分地将从描述中显而易见,或者可通过实践所呈现的实施例来学习。
[0019]技术方案
[0020]根据本公开的一个方面,提供了一种处理器。所述处理器包括多个处理元件,被配置为以矩阵形式布置;和控制器,被配置为在多个周期期间控制所述多个处理元件处理目标数据,其中,所述控制器将包括在所述目标数据中的多个元素中的第一行中包括的每个第一元素输入到所述多个处理元件中的布置在第一行中的第一处理元件,控制第一处理元件,使得每个第一处理元件对从相邻第一处理元件提供的数据和输入的第一元素进行运算,并且将包括在所述多个元素中的第二行中的每个第二元素输入到所述多个处理元件中的布置在第二行中的第二处理元件,控制第二处理元件,使得每个第二处理元件对从相邻第二处理元件提供的数据和输入的第二元素进行运算,并且控制第二处理元件,使得每个第二处理元件对从第一处理元件中的同一列中的相邻第一处理元件提供的运算数据和预先存储的运算数据进行运算,以获取目标数据的池化结果。
[0021]所述控制器还被配置为在第一周期中将每个第一元素输入到第一处理元件,在紧接在第一周期之后的第二周期中,控制第一处理元件使得每个第一处理元件对从相邻第一处理元件提供的数据和输入的第一元素进行运算,并且将每个第二元素输入到第二处理元件,在紧接在第二周期之后的第三周期中,控制第二处理元件,使得每个第二处理元件对从相邻第二处理元件提供的数据和输入的第二元素进行运算,并且在紧接在第三周期之后的第四周期中,控制第二处理元件,使得每个第二处理元件对从第一处理元件中的同一列中的相邻第一处理元件提供的运算数据和预先存储的运算数据进行运算,以获取池化结果。
[0022]所述控制器还被配置为在第一周期中将每个第一元素输入到第一处理元件,在紧接在第一周期之后的多个周期期间,控制第一处理元件,使得每个第一处理元件对从所述相邻第一处理元件提供的数据和输入的第一元素进行运算,在作为所述多个周期之一的第二周期中将第二元素输入到每个第二处理元件,在紧接在第二周期之后的多个周期期间,控制第二处理元件,使得每个第二处理元件对从所述相邻第二处理元件提供的数据和输入的第二元素进行运算,在与所述紧接在第二周期之后的多个周期具有预定间隔的第三周期中,控制第二处理元件,使得每个第二处理元件对从第一处理元件中的同一列中的相邻第一处理元件提供的运算数据和预先存储的运算数据进行运算,以获取池化结果,并且紧接
在第一周期之后的周期数等于紧接在第二周期之后的周期数。
[0023]所述控制器还被配置为在所述紧接在第一周期之后的多个周期中的初始周期中,控制第一处理元件,使得与每个第一处理元件相邻的第一处理元件提供第一元素,并且在所述紧接在第一周期之后的多个周期中的初始周期中,控制第二处理元件,使得与每个第一处理元件相邻第二处理元件提供所述第二元素。
[0024]控制器还被配置为在所述紧接在第一周期之后的多个周期中的初始周期之后的周期期间,控制第一处理元件,使得与每个第一处理元件相邻的第一处理元件提供前一周期中的运算数据,并且在紧接在第二周期之后的多个周期中的初始周期之后的周期期间,控制第二处理元件,使得与每个第二处理元件相邻的第二处理元件提供前一周期中的运算数据。
[0025]所述控制器还被配置为将包括在目标数据中的所述多个元素中的第三行中包括的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种处理器,包括:多个处理元件,被配置为以矩阵形式布置;以及控制器,被配置为在多个周期期间控制所述多个处理元件处理目标数据,其中,所述控制器还被配置为:将包括在目标数据中的多个元素中的第一行中包括的每个第一元素输入到所述多个处理元件中的布置在第一行中的第一处理元件,控制第一处理元件,使得每个第一处理元件对从相邻第一处理元件提供的数据和输入的第一元素进行运算,并且将包括在所述多个元素中的第二行中的每个第二元素输入到所述多个处理元件中的布置在第二行中的第二处理元件,控制第二处理元件,使得每个第二处理元件对从相邻第二处理元件提供的数据和输入的第二元素进行运算,以及控制第二处理元件,使得每个第二处理元件对从第一处理元件中的同一列中的相邻第一处理元件提供的运算数据和预先存储的运算数据进行运算,以获取目标数据的池化结果。2.根据权利要求1所述的处理器,其中,所述控制器还被配置为:在第一周期中将每个第一元素输入到第一处理元件,在紧接在第一周期之后的第二周期中,控制第一处理元件,使得每个第一处理元件对从相邻第一处理元件提供的数据和输入的第一元素进行运算,并且将每个第二元素输入到第二处理元件,在紧接在第二周期之后的第三周期中,控制第二处理元件,使得每个第二处理元件对从相邻第二处理元件提供的数据和输入的第二元素进行运算,以及在紧接第三周期之后的第四周期中,控制第二处理元件,使得每个第二处理元件对从第一处理元件中的同一列中的相邻第一处理元件提供的运算数据和预先存储的运算数据进行运算,以获取池化结果。3.根据权利要求1所述的处理器,其中,所述控制器还被配置为:在第一周期中,将每个第一元素输入到第一处理元件,在紧接在第一周期之后的多个周期期间,控制第一处理元件,使得每个第一处理元件对从相邻第一处理元件提供的数据和输入的第一元素进行运算,在作为所述多个周期之一的第二周期中,将第二元素输入到每个第二处理元件,在紧接在第二周期之后的多个周期期间,控制第二处理元件,使得每个第二处理元件对从相邻第二处理元件提供的数据和输入的第二元素进行运算,以及与所述紧接在第二周期之后的多个周期具有预定间隔的第三周期中,控制第二处理元件,使得每个第二处理元件对从第一处理元件中的同一列中的相邻第一处理元件提供的运算数据和预先存储的运算数据进行运算,以获取池化结果,并且紧接在第一周期之后的周期数等于紧接在第二周期之后的周期数。4.根据权利要求3所述的处理器,其中,所述控制器还被配置为:在所述紧接在第一周期之后的多个周期中的初始周期中,控制第一处理元件,使得与每个第一处理元件相邻的第一处理元件提供第一元素,以及在所述紧接在第一周期之后的多个周期中的初始周期中,控制第二处理元件,使得与
每个第一处理元件相邻的第二处理元件提供第二元素。5.根据权利要求4所述的处理器,其中,所述控制器还被配置为:在所述紧接在第一周期之后的多个周期中的初始周期之后的周期期间,控制第一处理元件,使得与每个第一处理元件相邻的第一处理元件提供前一周期中的运算数据,以及在所述紧接在第二周期之后的多个周期中的初始周期之后的周期期间,控制第二处理元件,使得与每个第二处理元件相邻的第二处理元件提供前一周期中的运算数据。6.根据权利要求1所述的处理器,其中,所述控制器还被配置为:将包括在目标数据中的所述多个元素中的第三行中包括的每个第三元素输入到所述多个处理元件中的布置在第三行中的第三处理元件,控制第三处理元件,使得每个第三处理元件对从相邻第三处理元件提供的数据和输入的第三元素进行运算,以及控制第三处理元件,使得每个第三处理元件控制第三处理元件对从第二处理元件中的同一列中的相邻第二处理元件提供的运算数据和预先存储的运算数据进行运算,以获取池化结果,其中,从相邻第二处理元件提供的运算数据是从与相邻第二处理元件在同一列中的相邻第一处理元件提供的运算数据和相邻第二处理元件的预先存储的运算数据的运算结果。7.根据权利要求1所述的处理器,其中,所述控制器还被配置为:控制第一处理元件,使得每个第一处理元件执行从相邻第一处理元件提供的数据和输入的第二元素的加法运算,控制第二处理元件,使得每个第二处理元件执行从相邻第二处理元件提供的数据和输入的第二元素的加法运算,以及控制第二处理元件,使得每个第二处理元件执行从第一处理元件中的同一列中的相邻第一处理元件提供的运算数据和预先存储的运算数据的相加运算,以获取平均池化结果。8.根据权利要求1所述的处理器,其中,所述控制器还被配置为:控制第一处理元件,使得每个第一处理元件执行从相邻第一处理元件提供的第一元素和输入的第一元素的比较运算,控制第二处理元件,使得每个第二处理元件执行从相邻第二处理元件提供的第二元素和输入的第二元素的比...

【专利技术属性】
技术研发人员:金庆勳金径勳金贤植宋学燮魏久然李政勳丁镇世赵程昱韩相福
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:

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

1