数据处理方法、装置、芯片、设备及介质制造方法及图纸

技术编号:34897257 阅读:37 留言:0更新日期:2022-09-10 13:57
本公开提供了一种数据处理方法、装置、芯片、设备及介质,涉及计算机技术领域,尤其涉及芯片领域。实现方案为:将接收到的待处理指令拆分为多个微指令,其中,每个微指令分别用于对不同的源存储单元中的数据进行处理;将多个微指令写入预设的缓存单元中;以及针对缓存单元中的任意一个微指令,至少基于该微指令所对应的源存储单元中的数据已更新为该微指令所要处理的操作数,执行该微指令对该操作数的处理。理。理。

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


[0001]本公开涉及计算机
,尤其涉及芯片领域,具体涉及一种数据处理的方法、装置、芯片、电子设备、计算机可读存储介质和计算机程序产品。

技术介绍

[0002]向量处理器(也被称为阵列处理器)是一种硬件处理装置(例如,中央处理单元(CPU)或图形处理单元(GPU)),其实现包含对向量进行操作的向量指令的指令集架构(ISA),例如,vector架构等。向量是包含有序的标量数据元素的单向数组。与支持在单个数据元素上操作的标量指令的标量处理器相比,通过对包含多个数据元素的向量的操作,向量处理器可以实现显著的性能提升。
[0003]在此部分中描述的方法不一定是之前已经设想到或采用的方法。除非另有指明,否则不应假定此部分中描述的任何方法仅因其包括在此部分中就被认为是现有技术。类似地,除非另有指明,否则此部分中提及的问题不应认为在任何现有技术中已被公认。

技术实现思路

[0004]本公开提供了一种数据处理的方法、装置、电子设备、芯片、计算机可读存储介质和计算机程序产品。
[0005]根据本公开的一方面,提供了一种数据处理方法,包括:将接收到的待处理指令拆分为多个微指令,其中,每个微指令分别用于对不同的源存储单元中的数据进行处理;将多个微指令写入预设的缓存单元中;以及针对缓存单元中的任意一个微指令,至少基于该微指令所对应的源存储单元中的数据已更新为该微指令所要处理的操作数,执行该微指令对该操作数的处理。
[0006]根据本公开的另一方面,提供了一种数据处理装置,包括:拆分模块,被配置用于将接收到的待处理指令拆分为多个微指令,其中,每个微指令分别用于对不同的源存储单元中的数据进行处理;写入模块,被配置用于将多个微指令写入预设的缓存单元中;以及控制模块,被配置用于针对缓存单元中的任意一个微指令,至少基于该微指令所对应的源存储单元中的数据已更新为该微指令所要处理的操作数,执行该微指令对该操作数的处理。
[0007]根据本公开的另一方面,提供了一种芯片,芯片能够执行上述的数据处理方法。
[0008]根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的方法。
[0009]根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行上述的方法。
[0010]根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,其中,计算机程序在被处理器执行时实现上述的方法。
[0011]根据本公开的一个或多个实施例,可以提升处理效率。
[0012]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0013]附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
[0014]图1示出了根据本公开的实施例的可以在其中实施本文描述的各种方法的示例性系统的示意图;
[0015]图2示出了根据本公开的实施例的数据处理方法的流程图;
[0016]图3示出了根据本公开的实施例的数据处理方法的示意图;
[0017]图4示出了根据本公开的实施例的微指令缓存方法示意图;
[0018]图5示出了根据本公开的实施例的数据处理装置的结构框图;以及
[0019]图6示出了能够用于实现本公开的实施例的示例性电子设备的结构框图。
具体实施方式
[0020]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0021]在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个要素与另一要素区分开。在一些示例中,第一要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
[0022]在本公开中对各种示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。此外,本公开中所使用的术语“和/或”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
[0023]目前,主流的处理器中包括多种用于加速向量的架构,例如,Vector构架等。向量是包含有序的标量数据元素的单向数组。与支持在单个数据元素上操作的标量指令的标量处理器相比,通过对包含多个数据元素的向量的操作,向量处理器可以实现显著的性能提升。
[0024]然而,伴随着向量指令(例如,vector指令)所处理的数据量不断扩张,对执行单元的计算能力的要求同步提升,同时,数据量的扩张也导致处理单个指令的时间的延长。
[0025]基于此,本公开提出一种数据处理方法,将接收到的待处理指令拆分为多个微指令,并将多个微指令写入预设的缓存单元中,针对缓存单元中的任意一个微指令,至少基于该微指令所对应的源存储单元中的数据已更新为该微指令所要处理的操作数,执行该微指令对该操作数的处理。
[0026]通过将待处理指令拆分为多个微指令,能够将执行“大数据量”处理的待处理指令
拆分为多个执行“小数据量”处理的微指令,降低了单个指令所处理的数据量,减小了向量指令对执行单元的计算资源的需求,降低了执行单元的处理压力。对于缓存单元中的多个微指令,当其中任意一个微指令的操作数被准备好后就可以执行该微指令,使得微指令的执行避免了执行次序上的依赖性,最大程度地提升了待处理指令的处理效率。
[0027]下面将结合附图详细描述本公开的实施例。
[0028]图1示出了根据本公开的实施例可以将本文描述的各种方法和装置在其中实施的示例性系统100的示意图。参考图1,该系统100包括一个或多个客户端设备101、102、103、104、105和106、服务器120以及将一个或多个客户端设备耦接到服务器120的一个或多个通信网络110。客户端设备101、102、103、104、105和106可以被配置为执行一个或多个应用程序。
[0029]在本公开的实施例中,服务器120可以运行使得能够执行数据处理的方法的一个或多个服务或软件应用。
[0030]在某些实施例中,服务器120还可以提供其他服务或软件应用,这些本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,包括:将接收到的待处理指令拆分为多个微指令,其中,每个微指令分别用于对不同的源存储单元中的数据进行处理;将所述多个微指令写入预设的缓存单元中;以及针对所述缓存单元中的任意一个微指令,至少基于该微指令所对应的源存储单元中的数据已更新为该微指令所要处理的操作数,执行该微指令对该操作数的处理。2.根据权利要求1所述的方法,其中,所述待处理指令具有对应的目标存储单元,所述目标存储单元能够用于存储所述待处理指令的每个微指令的处理结果,并且其中,所述至少基于该微指令所对应的源存储单元中的数据已更新为该微指令所要处理的操作数,执行该微指令对该操作数的处理包括:响应于确定所述目标存储单元具有相关联的在先处理指令,确定所述在先处理指令的执行状态,其中,所述在先处理指令在所述待处理指令之前被接收;以及基于该微指令所对应的源存储单元中的数据已更新为该微指令所要处理的操作数,以及所述在先处理指令已执行完成,执行该微指令对该操作数的处理。3.根据权利要求2所述的方法,其中,所述确定所述在先处理指令的执行状态包括:基于所述在先处理指令在记录单元中所对应的状态位,确定所述在先处理指令的执行状态,其中,所述在先处理指令的状态位能够在所述在先处理指令的执行期间被置为第一标识符,并且在所述在先处理指令的执行期间以外被置为第二标识符。4.根据权利要求1至3中任意一项所述的方法,其中,所述缓存单元具有对应的执行单元,并且其中,所述执行该微指令对该操作数的处理包括:将所述缓存单元中的该微指令和该操作数输入所述执行单元;以及利用所述执行单元,执行该微指令对该操作数的处理。5.根据权利要求4所述的方法,其中,所述缓存单元包括多个缓存子单元,每个缓存子单元具有对应的执行子单元,并且其中,所述将缓存单元中的该微指令和该操作数输入所述执行单元包括:响应于该微指令缓存于所述多个缓存子单元中的第一缓存子单元,将该微指令和该操作数输入该第一缓存子单元所对应的第一执行子单元。6.根据权利要求5所述的方法,其中,每个微指令具有对应的功能标识,并且其中,所述将所述多个微指令写入预设的缓存单元中包括:针对所述多个微指令中的任意一个微指令,响应于第二执行子单元能够实现该微指令的功能标识所指示的计算功能,将该微指令写入所述第二执行子单元所对应的第二缓存子单元中。7.根据权利要求1至6中任意一项所述的方法,其中,所述待处理指令为Vector指令。8.一种数据处理装置,包括:拆分模块,被配置用于将接收到的待处理指令拆分为多个微指令,其中,每个微指令分别用于对不同的源存储单元中的数据进行处理;写入模块,被配置用于将所述多个微指令写入预设的缓存单元中;以及控制模块,被配置用于针对所述缓存单元中的任意一个微指令,至少基于该微指令所对应的源存储单元中的数据已更新为该微指令所要处理的操作数,执行该微指令对...

【专利技术属性】
技术研发人员:徐英男欧阳剑杜学亮
申请(专利权)人:昆仑芯北京科技有限公司
类型:发明
国别省市:

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

1