数据处理装置、数据处理方法及相关产品制造方法及图纸

技术编号:33990849 阅读:10 留言:0更新日期:2022-07-02 09:39
本披露公开了一种数据处理装置、数据处理方法及相关产品。该数据处理装置可以实现为计算装置包括在组合处理装置中,该组合处理装置还可以包括接口装置和其他处理装置。该计算装置与其他处理装置进行交互,共同完成用户指定的计算操作。组合处理装置还可以包括存储装置,该存储装置分别与计算装置和其他处理装置连接,用于存储该计算装置和其他处理装置的数据。本披露的方案提供了用于张量数据的结构化稀疏的卷积操作的指令,其可以简化处理,提高机器的处理效率。机器的处理效率。机器的处理效率。

【技术实现步骤摘要】
数据处理装置、数据处理方法及相关产品


[0001]本披露一般地涉及处理器领域。更具体地,本披露涉及数据处理装置、数据处理方法、芯片和板卡。

技术介绍

[0002]近年来,随着深度学习的迅猛发展,使得计算机视觉、自然语言处理等一系列领域的算法性能都有了跨越式的进展。然而深度学习算法是一种计算密集型和存储密集型的工具,随着信息处理任务的日趋复杂,对算法实时性和准确性要求不断增高,神经网络往往会被设计得越来越深,使得其计算量和存储空间需求越来越大,导致现存的基于深度学习的人工智能技术难以直接应用在硬件资源受限的手机、卫星或嵌入式设备上。
[0003]因此,深度神经网络模型的压缩、加速、优化变得格外重要。大量的研究试着在不影响模型精度的前提下,减少神经网络的计算和存储需求,对深度学习技术在嵌入端、移动端的工程化应用具有十分重要的意义。稀疏化正是模型轻量化方法之一。
[0004]网络参数稀疏化是通过适当的方法减少较大网络中的冗余成分,以降低网络对计算量和存储空间的需求。现有的硬件和/或指令集不能有效地支持稀疏化处理以及与稀疏化处理后相关的操作。

技术实现思路

[0005]为了至少部分地解决
技术介绍
中提到的一个或多个技术问题,本披露的方案提供了一种数据处理装置、数据处理方法、芯片和板卡。
[0006]在第一方面中,本披露公开一种数据处理装置,包括:控制电路,其配置用于解析卷积指令,所述卷积指令包括稀疏标志位,用于指示是否执行结构化稀疏的卷积操作,并且所述卷积指令的至少一个操作数包括至少一个描述符,所述描述符指示以下至少一项信息:张量数据的形状信息和张量数据的空间信息;张量接口电路,其配置用于对所述描述符进行解析;存储电路,其配置用于存储卷积前和/或卷积后的信息;以及运算电路,其配置用于基于解析的描述符,根据所述卷积指令执行相应的卷积操作。
[0007]在第二方面中,本披露提供一种芯片,包括前述第一方面任一实施例的数据处理装置。
[0008]在第三方面中,本披露提供一种板卡,包括前述第二方面任一实施例的芯片。
[0009]在第四方面中,本披露提供一种数据处理方法,该方法包括:解析卷积指令,所述卷积指令包括稀疏标志位,用于指示是否执行结构化稀疏的卷积操作,并且所述卷积指令的至少一个操作数包括至少一个描述符,所述描述符指示以下至少一项信息:张量数据的形状信息和张量数据的空间信息;根据所述卷积指令读取相应的操作数;以及根据所述卷积指令对所述操作数执行相应的卷积操作。
[0010]通过如上所提供的数据处理装置、数据处理方法、集成电路芯片和板卡,本披露实施例提供了一种用于执行张量数据的结构化稀疏的卷积操作的卷积指令,其中张量数据通
过描述符来描述。在一些实施例中,卷积指令中包括稀疏标志位,用于指示是否执行结构化稀疏的卷积操作。通过设置稀疏标志位,可以根据标志位的取值,来配置相应的运算电路,以执行相应的卷积操作。在一些实施例中,当稀疏标志位指示执行结构化稀疏的卷积操作时,可以配置运算电路来执行结构化稀疏处理,再对稀疏化处理后的数据执行卷积。通过复用卷积指令的指令域,新增结构化稀疏的使能标志位,可以简化处理,由此提高机器的处理效率。
附图说明
[0011]通过参考附图阅读下文的详细描述,本披露示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本披露的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
[0012]图1是示出本披露实施例的板卡的结构图;
[0013]图2是示出本披露实施例的组合处理装置的结构图;
[0014]图3是示出本披露实施例的单核计算装置的内部结构示意图;
[0015]图4是示出本披露实施例的多核计算装置的内部结构示意图;
[0016]图5是示出本披露实施例的处理器核的内部结构示意图;
[0017]图6示出根据本披露实施例的数据存储空间的示意图;
[0018]图7示出根据本披露实施例的数据分块在数据存储空间中的示意图;
[0019]图8是示出本披露实施例的数据处理装置的结构示意图;
[0020]图9A

图9C示出本披露实施例的运算电路的部分结构示意图;
[0021]图10示出本披露实施例的结构化稀疏处理的示例性流水电路图;以及
[0022]图11是示出本披露实施例的数据处理方法的示例性流程图。
具体实施方式
[0023]下面将结合本披露实施例中的附图,对本披露实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本披露一部分实施例,而不是全部的实施例。基于本披露中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本披露保护的范围。
[0024]应当理解,本披露的权利要求、说明书及附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。本披露的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0025]还应当理解,在本披露说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本披露。如在本披露说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本披露说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0026]如在本说明书和权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。
[0027]下面结合附图来详细描述本披露的具体实施方式。
[0028]图1示出本披露实施例的一种板卡10的结构示意图。如图1所示,板卡10包括芯片101,其是一种系统级芯片(System on Chip,SoC),或称片上系统,集成有一个或多个组合处理装置,组合处理装置是一种人工智能运算单元,用以支持各类深度学习和机器学习算法,满足计算机视觉、语音、自然语言处理、数据挖掘等领域复杂场景下的智能处理需求。特别是深度学习技术大量应用在云端智能领域,云端智能应用的一个显著特点是输入数据量大,对平台的存储能力和计算能力有很高的要求,此实施例的板卡10适用在云端智能应用,具有庞大的片外存储、片上存储和强大的计算能力。
[0029]芯片101通过对外接口装置102与外部设备103相连接。外部设备103例如是服务器、计算机、摄像头、显示器、鼠标、键盘、网卡或wifi接口等。待处理的数据可以由外部设备103通过对外接口装置102传递至芯片101。芯片101的计算结果可以经由对外接口装置102传送回外部设备103。根据不同的应用场本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理装置,包括:控制电路,其配置用于解析卷积指令,所述卷积指令包括稀疏标志位,用于指示是否执行结构化稀疏的卷积操作,并且所述卷积指令的至少一个操作数包括至少一个描述符,所述描述符指示以下至少一项信息:张量数据的形状信息和张量数据的空间信息;张量接口电路,其配置用于对所述描述符进行解析;存储电路,其配置用于存储卷积前和/或卷积后的信息;以及运算电路,其配置用于基于解析的描述符,根据所述卷积指令执行相应的卷积操作。2.根据权利要求1所述的数据处理装置,其中,所述张量接口电路配置用于根据所述形状信息,确定与所述操作数对应的张量数据在数据存储空间中的数据地址;和/或所述张量接口电路配置用于根据所述空间信息,确定指令之间的依赖关系。3.根据权利要求1

2任一所述的数据处理装置,其中所述张量数据的形状信息包括表示N维张量数据的形状的至少一个形状参数,N为正整数,所述张量数据的形状参数包括以下至少一种:所述张量数据所在的数据存储空间在N个维度方向的至少一个方向上的尺寸、所述张量数据的存储区域在N个维度方向的至少一个方向上的尺寸、所述存储区域在N个维度方向的至少一个方向上的偏移量、处于N个维度方向的对角位置的至少两个顶点相对于数据基准点的位置、所述张量数据的数据描述位置与数据地址之间的映射关系。4.根据权利要求1

2任一所述的数据处理装置,其中所述张量数据的形状信息指示包括多个数据块的N维张量数据的形状的至少一个形状参数,N为正整数,所述形状参数包括以下至少一种:所述张量数据所在的数据存储空间在N个维度方向的至少一个方向上的尺寸、单个数据块的存储区域在N个维度方向的至少一个方向上的尺寸、所述数据块在N个维度方向的至少一个方向上的分块步长、N个维度方向的至少一个方向上的数据块数量、所述数据块在N个维度方向的至少一个方向上的整体步长。5.根据权利要求1

4任一所述的数据处理装置,其中所述运算电路包括结构化稀疏电路和卷积电路,当所述稀疏标志位指示执行结构化稀疏的卷积操作时,所述结构化稀疏电路配置用于对至少一个输入数据执行结构化稀疏处理,并将稀疏化后的输入数据输出给所述卷积电路;并且所述卷积电路配置用于接收待卷积的数据,并对其执行卷积操作,其中所述待卷积的数据至少包括所述稀疏化后的输入数据。6.根据权利要求5所述的数据处理装置,其中所述结构化稀疏电路包括:第一结构化稀疏子电路,配置用于按照指定的稀疏掩码对输入数据执行结构化稀疏处理;和/或第二结构化稀疏子电路,配置用于按照预定的稀疏规则对输入数据执行结构化稀疏处理。7.根据权利要求6所述的数据处理装置,其中所述结构化稀疏电路进一步配置用于执行以下任一:利用第二结构化稀疏子电路对待卷积的第一输入数据和第二输入数据分别执行结构
化稀疏处理,并将稀疏化后的第一输入数据和第二输入数据输出给所述卷积电路以执行卷积操作;或者利用第一结构化稀疏子电路,将已结构化稀疏处理的第一或第二输入数据对应的索引部分作为稀疏掩码,对第二或第一输入数据执行结构化稀疏处理,并将稀疏化后的第一输入数据输出给所述卷积电路,以与所述已结构化稀疏处理的第二输入数据进行卷积操作,其中所述索引部分指示将要执行的结构化稀疏中有效数据元素的位置。8.根据权利要求7所述的数据处理装置,其中:所述已结构化稀疏处理的第一或第二输入数据是预先进行结构化稀疏处理并存储在所述存储电路中的,或者所述已结构化稀疏处理的第一或第二输入数据是在线利用所述第二结构化稀疏子电路进行结构化稀疏处理而生成的。9.根据权利要求7

8任一所述的数据处理装置,其中所述已结构化稀疏处理的第一或第二输入数据为结构体形式,所述结构体包括相互绑定的数据部分和索引部分,所述数据部分包括已结构化稀疏处理后的有效数据元素,所述索引部分用于指示稀疏化后的数据在稀疏化前数据中的位置。10.根据权利要求6

9任一所述的数据处理装置,其中所述结构化稀疏处理包括从每m个数据元素中选择n个数据元素作为有效数据元素,其中m>n。11.根据权利要求6

10任一所述的数据处理装置,其中所述第二结构化稀疏子电路进一步包括:至少一个多级流水运算电路,其包括逐级布置的多个运算器并且配置成执行从m个数据元素中选择n个绝对值较大的数据元素作为有效数据元素的结构化稀疏处理。12.根据权利要求11所述的数据处理装置,其中所述多级流水运算电路包括四个流水级,其中:第一流水级包括m个求绝对值运算器,用于分别对待稀疏化的m个数据元素取绝对值,以生成m个绝对值;第二流水级包括排列组合电路,用于对所述m个绝对值进行排列组合,以生成m组数据,其中每组数据均包括所述m个绝对值并且所述m个绝对值在各组数据中的位置互不相同;第三流水级包括m路比较电路,用于对所述m组数据中的绝对值进行比较并生成比较结果;以及第四流水级包括筛选电路,用于根据所述比较结果选择n个绝对值较大的数据元素作为有效数据元素,以及输出所述有效数据元素及对应的索引,所述索引指示所述有效数据元素在所述m个数据元素中的位置。13.根据权利要求12所述的数据处理装置,其中所述第三流水级中每路比较电路包括m

1个比较器,第i路比较电路中的m

1个比较器用于将第i组数据中的一个绝对值与其他三个绝对值依次比较并生成比较结果,1≤i≤m。14.根据权利要求12

13任一所述的数据处理装置,其中所述筛选电路进一步配置用于,当存在绝对值相同的数据元素时,按照指定的优先级顺序进行选择。15.根据权利要求5

14任一所述的数据处理装置,其中所述运算电路还包括前处理电路,当所述稀疏标志位指示执行结构化稀疏的卷积操作时,所述前处理电路从所述存储电路中读取输入数据,并以第一速率向所述结构化稀疏电
路输出所述输入数据,其中所述第一速率至少部分基于所述卷积电路的处理能力和所述结构化稀疏处理的稀疏比例。16.根据权利要求5

15任一所述的数据处理装置,其中所述输入数据包括神经网络的神经元数据和权值。17.根据权利要求1

16任一所述的数据处理装置,其中所述卷积指令用于神经网络中的结构化稀疏的卷积操作,并且所述结构化稀疏针对所述神经网络中多维数据的至少一个维度执行。18.根据权利要求17所述的数据处理装置,其中:所...

【专利技术属性】
技术研发人员:ꢀ七四专利代理机构
申请(专利权)人:中科寒武纪科技股份有限公司
类型:发明
国别省市:

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

1