数据处理方法、装置、电子设备及计算机可读存储介质制造方法及图纸

技术编号:35417724 阅读:15 留言:0更新日期:2022-11-03 11:16
本申请实施例提供了一种数据处理方法、装置、电子设备及计算机可读存储介质,涉及计算机技术领域。通过响应于数据请求,确定处理器的数据缓存中是否存在数据请求所请求的目标数据;当数据缓存中存在目标数据,且目标数据满足预设的状态更新条件的情况下,更新目标数据的数据状态信息。由于数据状态信息存储于预先扩展的寄存器堆中。这样,一方面,由于寄存器堆具有多个读端口和多个写端口,在写入更新的数据状态信息时,无需与其他读数据的请求进行仲裁;另一方面,寄存器堆的材料特性较为稳定,材料特性稳定则存储的数据不易出现错误,从而无需在写入数据状态信息时生成相应的校验信息。因此,更新数据状态信息的时序较短,以此提升CPU性能。升CPU性能。升CPU性能。

【技术实现步骤摘要】
数据处理方法、装置、电子设备及计算机可读存储介质


[0001]本申请涉及计算机
,具体而言,本申请涉及一种数据处理方法、装置、电子设备及计算机可读存储介质。

技术介绍

[0002]在计算机
,计算机设备的缓存通常分为三级缓存,三级缓存即一级缓存L1、二级缓存L2、三级缓存L3。其中,在运行速度方面,L1最快、L2次快、L3最慢;在容量大小方面:L1容量最小、L2容量较大、L3容量最大。三级缓存共同作为CPU与主内存之间的高速数据缓冲区。
[0003]其中,在二级缓存中,通常会接收到多个读/写数据的数据请求。针对每个数据请求,执行数据请求的最后一个处理操作是:更新所请求的数据的数据状态,即更新缓存行(cache line)的一致性状态。其中,数据状态用于指示在数据请求执行的过程中,所请求的数据是否被修改。例如,在数据请求执行过程中,若所请求的数据被修改,那么,所请求的数据的数据状态为脏数据(dirty);若所请求的数据没有被修改,那么,所请求的数据的数据状态为干净数据(clean)。
[0004]现有技术中,数据状态通常存储于标记随机存取存储器(tag

RAM)中,tag

RAM通常只具有一个端口,通过这个端口进行读操作和写操作,这样,更新数据状态时序较长,影响CPU性能。

技术实现思路

[0005]本申请的目的旨在至少能解决上述的技术缺陷之一,特别是在计算机设备的二级缓存中,更新数据状态时序较长,影响CPU性能的技术缺陷。
[0006]根据本申请的一个方面,提供了一种数据处理方法,该方法包括:
[0007]响应于数据请求,确定处理器的数据缓存中是否存在所述数据请求所请求的目标数据;
[0008]当所述数据缓存中存在所述目标数据,且所述目标数据满足预设的状态更新条件的情况下,更新所述目标数据的数据状态信息;
[0009]其中,所述数据状态信息存储于所述处理器的预先扩展的寄存器堆中;更新后的所述目标状态信息中包括第一指示信息,所述第一指示信息指示在所述数据请求的执行过程中,所述目标数据是否被修改。
[0010]可选的,所述确定处理器的数据缓存中是否存在所述数据请求所请求的目标数据,包括:
[0011]获取所述数据请求中携带的第一数据地址,以及获取所述数据缓存中数据的数据地址信息;
[0012]在所述数据地址信息中存在与所述第一数据地址一致的第二数据地址的情况下,确定所述数据缓存中存在所述数据请求所请求的目标数据。
[0013]可选的,所述数据地址信息与所述数据状态信息分别单独存储;
[0014]其中,所述数据地址信息存储于随机存储器中,所述数据状态信息存储于所述寄存器堆中。
[0015]可选的,所述方法还包括:
[0016]获取与所述数据地址信息中每个数据地址对应的校验信息;
[0017]将所述数据地址与其对应的校验信息进行校验;
[0018]在所述数据地址与校验信息之间满足预设数据关系的情况下,执行所述在所述数据地址信息中存在与所述第一数据地址一致的第二数据地址的情况下,确定所述数据缓存中存在所述数据请求所请求的目标数据的处理步骤。
[0019]可选的,所述状态更新条件包括以下至少一项:
[0020]所述处理器的内核中不存在所述目标数据;
[0021]所述处理器相连的数据总线上不存在所述目标数据;
[0022]不存在操作所述目标数据的冲突请求,所述冲突请求为所述数据请求以外的请求。
[0023]可选的,所述寄存器堆包括至少两个读/写端口。
[0024]根据本申请的另一个方面,提供了一种数据处理装置,该装置包括:
[0025]信息确定模块,用于响应于数据请求,确定处理器的数据缓存中是否存在所述数据请求所请求的目标数据;
[0026]信息更新模块,用于当所述数据缓存中存在所述目标数据,且所述目标数据满足预设的状态更新条件的情况下,更新所述目标数据的数据状态信息;
[0027]其中,所述数据状态信息存储于所述处理器的预先扩展的寄存器堆中;更新后的所述目标状态信息中包括第一指示信息,所述第一指示信息指示在所述数据请求的执行过程中,所述目标数据是否被修改。
[0028]根据本申请的另一个方面,提供了一种处理器,包括:
[0029]信息确定单元,其用于响应于数据请求,确定处理器的数据缓存中是否存在所述数据请求所请求的目标数据;
[0030]信息更新单元,其用于当所述数据缓存中存在所述目标数据,且所述目标数据满足预设的状态更新条件的情况下,更新所述目标数据的数据状态信息;
[0031]预先扩展的寄存器堆,其用于存储所述数据状态信息;
[0032]其中,更新后的所述目标状态信息中包括第一指示信息,所述第一指示信息指示在所述数据请求的执行过程中,所述目标数据是否被修改。
[0033]根据本申请的另一个方面,提供了一种电子设备,该电子设备包括:
[0034]一个或多个处理器;
[0035]存储器;
[0036]一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行本申请的第一方面任一项所述的数据处理方法。
[0037]例如,本申请的第三方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
[0038]存储器用于存放至少一可执行指令,可执行指令使处理器执行如本申请的第一方面所示的数据处理方法对应的操作。
[0039]根据本申请的再一个方面,提供了一种计算机可读存储介质,所述计算机程序被处理器执行时实现本申请的第一方面任一项所述的数据处理方法。
[0040]例如,本申请实施例的第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请第一方面所示的数据处理方法。
[0041]根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面的各种可选实现方式中提供的方法。
[0042]本申请提供的技术方案带来的有益效果是:
[0043]本申请实施例中,数据状态信息存储于预先扩展的寄存器堆中。当所述数据缓存中存在所述目标数据,并且在所述目标数据满足预设的状态更新条件的情况下,向寄存器堆中写入更新的所述目标数据的数据状态信息。这样,一方面,由于寄存器堆具有多个读端口和多个写端口,在写入更新的所述数据状态信息(即更新数据状态信息)时,无需与其他读数据的请求进行仲裁;另一方面,寄存器堆的材料特性较为稳定,材料特性稳定本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:响应于数据请求,确定处理器的数据缓存中是否存在所述数据请求所请求的目标数据;当所述数据缓存中存在所述目标数据,且所述目标数据满足预设的状态更新条件的情况下,更新所述目标数据的数据状态信息;其中,所述数据状态信息存储于所述处理器的预先扩展的寄存器堆中;更新后的所述目标状态信息中包括第一指示信息,所述第一指示信息指示在所述数据请求的执行过程中,所述目标数据是否被修改。2.根据权利要求1所述的数据处理方法,其特征在于,所述确定处理器的数据缓存中是否存在所述数据请求所请求的目标数据,包括:获取所述数据请求中携带的第一数据地址,以及获取所述数据缓存中数据的数据地址信息;在所述数据地址信息中存在与所述第一数据地址一致的第二数据地址的情况下,确定所述数据缓存中存在所述数据请求所请求的目标数据。3.根据权利要求2所述的数据处理方法,其特征在于,所述数据地址信息与所述数据状态信息分别单独存储;其中,所述数据地址信息存储于随机存储器中,所述数据状态信息存储于所述寄存器堆中。4.根据权利要求2所述的数据处理方法,其特征在于,所述方法还包括:获取与所述数据地址信息中每个数据地址对应的校验信息;将所述数据地址与其对应的校验信息进行校验;在所述数据地址与校验信息之间满足预设数据关系的情况下,执行所述在所述数据地址信息中存在与所述第一数据地址一致的第二数据地址的情况下,确定所述数据缓存中存在所述数据请求所请求的目标数据的处理步骤。5.根据权利要求1所述的数据处理方法,其特征在于,所述状态更新条件包括以下至少一项:所述处理器的内核中不存在所述目标数据;所述处理器相连的数据总线上不存在所述目标数据;不存在操作...

【专利技术属性】
技术研发人员:韩新辉姚永斌
申请(专利权)人:北京奕斯伟计算技术股份有限公司
类型:发明
国别省市:

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

1