数据处理方法、装置、终端设备及存储介质制造方法及图纸

技术编号:38095106 阅读:10 留言:0更新日期:2023-07-06 09:09
本申请实施例提供一种数据处理方法、装置、终端设备及存储介质,该数据处理方法包括:NPU根据待输入数据的通道数确定为待输入数据分配的M个SRAM,M小于或等于N,M为待输入数据的通道数的整数倍;NPU通过总线从系统缓存读取第一通道数据中的重叠数据,将重叠数据装载到第一通道对应的P个SRAM,第一通道数据包括待输入数据中的任一个通道的数据;NPU通过总线从DRAM读取第一通道数据中的非重叠数据,将非重叠数据装载到对应的SRAM;系统缓存的读取功耗小于DRAM的读取功耗;NPU通过数据处理单元矩阵对P个SRAM中装载的数据进行数据处理。本申请实施例可以降低NPU的功耗。本申请实施例可以降低NPU的功耗。本申请实施例可以降低NPU的功耗。

【技术实现步骤摘要】
数据处理方法、装置、终端设备及存储介质


[0001]本申请涉及人工智能
,具体涉及一种数据处理方法、装置、终端设备及存储介质。

技术介绍

[0002]在目前的手机、平板电脑等终端设备中,为了增强终端设备的人工智能的能力,通常会在终端设备中集成神经网络处理器(Neural network Processing Unit,NPU),NPU是存储密集型处理器。在NPU计算开始的初期,会有大量数据通过总线传输给NPU。硬件设计上通常包含NPU、总线和动态随机存取存储器(Dynamic Random Access Memory,DRAM)。为了保证NPU读写数据的带宽,总线上会提供给NPU更多的带宽,需要加宽DRAM的带宽或者提高DRAM的频率。而加宽DRAM的带宽或者提高DRAM的频率均会带来功耗的大量提升。

技术实现思路

[0003]本申请实施例提供一种数据处理方法、装置、终端设备及存储介质,可以降低NPU的功耗。
[0004]本申请实施例的第一方面提供了一种数据处理方法,所述方法应用于数据处理系统,所述数据处理系统包括神经网络处理器NPU、系统缓存、动态随机存取存储器DRAM和总线,所述NPU包括数据处理单元矩阵和N个静态随机存取存储器SRAM,所述方法包括:
[0005]所述NPU根据待输入数据的通道数确定为所述待输入数据分配的M个SRAM,M小于或等于N,M为所述待输入数据的通道数的整数倍;
[0006]所述NPU通过所述总线从所述系统缓存读取第一通道数据中的重叠数据,将所述重叠数据装载到所述第一通道对应的P个SRAM,Q*P=M,Q为所述通道数,所述第一通道数据包括所述待输入数据中的任一个通道的数据;
[0007]所述NPU通过所述总线从所述DRAM读取所述第一通道数据中的非重叠数据,将所述非重叠数据装载到对应的SRAM;所述系统缓存的读取功耗小于所述DRAM的读取功耗;
[0008]所述NPU通过所述数据处理单元矩阵对所述P个SRAM中装载的数据进行数据处理。
[0009]本申请实施例的第二方面提供了一种数据处理装置,所述数据处理装置所述方法应用于数据处理系统,所述数据处理系统包括神经网络处理器NPU、系统缓存、动态随机存取存储器DRAM和总线,所述NPU包括数据处理单元矩阵和N个静态随机存取存储器SRAM,所述数据处理装置包括:
[0010]确定单元,用于根据待输入数据的通道数确定为所述待输入数据分配的M个SRAM,M小于或等于N,M为所述待输入数据的通道数的整数倍;
[0011]读取单元,用于通过所述总线从所述系统缓存读取第一通道数据中的重叠数据,将所述重叠数据装载到所述第一通道对应的P个SRAM,Q*P=M,Q为所述通道数,所述第一通道数据包括所述待输入数据中的任一个通道的数据;
[0012]所述读取单元,还用于通过所述总线从所述DRAM读取所述第一通道数据中的非重
叠数据,将所述非重叠数据装载到对应的SRAM;所述系统缓存的读取功耗小于所述DRAM的读取功耗;
[0013]数据处理单元,通过所述数据处理单元矩阵对所述P个SRAM中装载的数据进行数据处理。
[0014]本申请实施例的第三方面提供了一种终端设备,包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如本申请实施例第一方面中的步骤指令。
[0015]本申请实施例的第四方面提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。
[0016]本申请实施例的第五方面提供了一种计算机程序产品,其中,上述计算机程序产品包括计算机程序,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
[0017]本申请实施例中,数据处理方法应用于数据处理系统,数据处理系统包括神经网络处理器NPU、系统缓存、动态随机存取存储器DRAM和总线,NPU包括数据处理单元矩阵和N个静态随机存取存储器SRAM,该数据处理方法包括:NPU根据待输入数据的通道数确定为待输入数据分配的M个SRAM,M小于或等于N,M为待输入数据的通道数的整数倍;NPU通过总线从系统缓存读取第一通道数据中的重叠数据,将重叠数据装载到第一通道对应的P个SRAM,Q*P=M,Q为通道数,第一通道数据包括待输入数据中的任一个通道的数据;NPU通过总线从DRAM读取第一通道数据中的非重叠数据,将非重叠数据装载到对应的SRAM;系统缓存的读取功耗小于DRAM的读取功耗;NPU通过数据处理单元矩阵对P个SRAM中装载的数据进行数据处理。一个SRAM中存储的数据是有限的,只要一个SRAM不能存储所有的需要进行卷积运算的所有输入数据,由于神经网络的卷积运算的特性,为了保证每行数据都能够进行卷积运算,相邻两次输入该SRAM的数据会存在重复的数据,也即重叠数据。第一通道数据中的重叠数据是需要重复读取的数据。本申请实施例的数据处理方法,对于第一通道数据中需要重复读取的重叠数据,可以从读取功耗相对较低的系统缓存中读取,避免从功耗相对较高的DRAM中读取重复数据,在不需要加宽DRAM的带宽或者提高DRAM的频率的情况下,将需要重复读取的重叠数据从系统缓存中读取,可以保证NPU的读取速度的情况下降低NPU的读取功耗,从而降低NPU的功耗。
附图说明
[0018]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019]图1是本申请实施例提供的一种数据处理系统的结构示意图;
[0020]图2是本申请实施例提供的一种NPU的结构示意图;
[0021]图3是本申请实施例提供的一种数据处理系统的结构示意图;
[0022]图4是本申请实施例提供的一种数据处理方法的流程示意图;
[0023]图5是本申请实施例提供的另一种数据处理方法的流程示意图;
[0024]图6是本申请实施例提供的一块SRAM中的一个环形缓存空间的示意图;
[0025]图7是本申请实施例提供的一种分布式存储的示意图;
[0026]图8是本申请实施例提供的采用不同的方法计算一张图的功耗分布示意图;
[0027]图9为本申请实施例提供的一种数据处理装置的结构示意图;
[0028]图10是本申请实施例提供的一种终端设备的结构示意图。
具体实施方式
[0029]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法应用于数据处理系统,所述数据处理系统包括神经网络处理器NPU、系统缓存、动态随机存取存储器DRAM和总线,所述NPU包括数据处理单元矩阵和N个静态随机存取存储器SRAM,所述方法包括:所述NPU根据待输入数据的通道数确定为所述待输入数据分配的M个SRAM,M小于或等于N,M为所述待输入数据的通道数的整数倍;所述NPU通过所述总线从所述系统缓存读取第一通道数据中的重叠数据,将所述重叠数据装载到所述第一通道对应的P个SRAM,Q*P=M,Q为所述通道数,所述第一通道数据包括所述待输入数据中的任一个通道的数据;所述NPU通过所述总线从所述DRAM读取所述第一通道数据中的非重叠数据,将所述非重叠数据装载到对应的SRAM;所述系统缓存的读取功耗小于所述DRAM的读取功耗;所述NPU通过所述数据处理单元矩阵对所述P个SRAM中装载的数据进行数据处理。2.根据权利要求1所述的方法,其特征在于,所述NPU根据待输入数据的通道数确定为所述待输入数据分配的M个SRAM,包括:在N大于或等于Q的2倍的情况下,所述NPU确定所述待输入数据的每个通道对应的P个SRAM,P大于或等于2;在N大于Q且小于Q的2倍的情况下,所述NPU确定所述待输入数据的每个通道对应的1个SRAM;在N小于Q的情况下,所述NPU确定所述待输入数据的每个通道对应的1个SRAM,所述待输入数据通过多次输入所述NPU。3.根据权利要求2所述的方法,其特征在于,所述NPU将所述重叠数据装载到所述第一通道对应的P个SRAM之前,所述方法还包括:在P大于或等于2的情况下,所述NPU在所述第一通道数据对应的P个SRAM中分别开辟对应的环形缓存空间;所述NPU将P个环形缓存空间在地址空间上进行拼接,得到拼接环形缓存空间,将所述P个环形缓存空间中的重叠区域映射为影子空间;所述NPU将所述重叠数据装载到所述第一通道对应的P个SRAM,包括:所述NPU将所述重叠数据装载到所述拼接环形缓存空间的影子空间。4.根据权利要求3所述的方法,其特征在于,所述NPU将P个环形缓存空间在地址空间上进行拼接,得到拼接环形缓存空间,包括:所述NPU将P个环形缓存空间在地址空间上依次首尾拼接,相邻拼接的两个环形缓存空间存在重叠区域;所述NPU将所述P个环形缓存空间中的重叠区域映射为影子空间,包括:所述NPU根据地址映射...

【专利技术属性】
技术研发人员:高迪刘政宏
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:

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

1