发明内容
有鉴于此,本申请提供了一种数据处理方法和装置以及存储设备,以提高电子设备的数据处理速度。
为实现上述目的,本申请提供如下技术方案:一种数据处理方法,包括:
通过第一接口获取处理器传输的当前待写入的目标数据;
确定所述目标数据的数据类型,所述数据类型包括第一类型数据和第二类型数据,所述第一类型数据至少包括处理器运行所需的必要数据;
当所述目标数据为第一类型数据时,将所述目标数据存储至存储模块的第一存储体中;
当所述目标数据为第二类型数据时,将所述目标数据存储至所述存储模块的第二存储体中,其中,所述第二存储体为非易失性存储体。
优选的,所述将所述目标数据存储至存储模块的第一存储体中,包括:
以第一写入速率将所述目标数据存储至存储模块的第一存储体中;
则所述将所述目标数据存储至所述存储模块的第二存储体中,包括:
以第二写入速率将所述目标数据存储至所述存储模块的第二存储体中;
其中,所述第一写入速率大于所述第二写入速率。
优选的,所述通过第一接口获取处理器传输的当前待写入的目标数据,包括:
通过与所述处理器相连的双倍数据速率DDR接口接收所述处理器传输的当前待写入的目标数据。
优选的,所述第一存储体为设置在所述存储模块内的内存储器;
所述第二存储体为:磁阻兼容静态随机存储器MRAM或者相位存储器。
优选的,在所述通过第一接口获取处理器传输的当前待写入的目标数据的同时,还包括:
通过第一接口获取处理器传输的当前待写入的目标数据的类型信息;
则所述确定所述目标数据的数据类型,包括:
根据所述类型信息确定所述目标数据的数据类型。
优选的,所述确定所述目标数据的数据类型,包括:
依据存储的数据访问频率记录,确定所述目标数据所属的数据类型,其中,所述第一数据类型还包括:访问频率大于所述第二数据类型的数据所对应的访问频率的数据。
优选的,还包括:
当检测到所述第一存储介质的剩余存储空间小于预设值时,从所述第一存储介质中存储的目标数据中,确定出不属于所述处理器运行所需的必要数据的待处理目标数据;
根据对所述待处理目标数据的访问频率从高到低的排序,将排序靠后的指定数量的目标数据转移到所述第二存储介质中。
另一方面,本申请还提供了一种存储设备,包括:
存储控制器,与所述存储控制器相连的第一存储体以及与所述存储控制器相连的第二存储体;
所述存储控制器与处理器相连,用于获取处理器传输的待存储的目标数据,并确定所述目标数据的数据类型;
所述第一存储体,用于存储所述存储控制器确定出的第一数据类型的目标数据;其中,所述第一数据类型至少包括所述处理器运行所需的必要数据;
第二存储体,用于存储所述存储控制器确定出的第二数据类型的目标数据;其中,所述第二存储体为非易失性存储体;
其中,所述第一存储体具有与第二存储体不同的存储材料。
优选的,所述第一存储体的数据导入速率大于所述第二存储体的数据导入速率。
优选的,所述第一存储器为:内部存储器;
所述第二存储体为:磁阻兼容静态随机存储器MRAM或者相位存储器。
优选的,所述存储控制器通过DDR接口与所述处理器相连。
另一方面,本申请还提供了一种数据处理装置,包括:
数据接收单元,用于通过第一接口获取处理器传输的当前待写入的目标数据;
类型确定单元,用于确定所述目标数据的数据类型,所述数据类型包括第一类型数据和第二类型数据,所述第一类型数据至少包括处理器运行所需的必要数据;
第一存储单元,用于当所述目标数据为第一类型数据时,将所述目标数据存储至存储模块的第一存储体中;
第二存储单元,用于当所述目标数据为第二类型数据时,将所述目标数据存储至所述存储模块的第二存储体中,其中,所述第二存储体为非易失性存储体。
优选的,所述第一存储单元,包括:
第一存储子单元,用于当所述目标数据为第一类型数据时,以第一写入速率将所述目标数据存储至存储模块的第一存储体中;
则所述第二存储单元,包括:
第二存储子单元,用于当所述目标数据为第二类型数据时,以第二写入速率将所述目标数据存储至所述存储模块的第二存储体中;其中,所述第一写入速率大于所述第二写入速率。
优选的,所述数据接收单元,包括:
数据接收子单元,用于通过与所述处理器相连的双倍数据速率DDR接口接收所述处理器传输的当前待写入的目标数据。
优选的,所述第一存储体为设置在所述存储模块内的内存储器;
所述第二存储体为:磁阻兼容静态随机存储器MRAM或者相位存储器。
优选的,还包括:
类型接收信息,用于在所述数据接收单元通过第一接口获取处理器传输的当前待写入的目标数据的同时,通过第一接口获取处理器传输的当前待写入的目标数据的类型信息;
则所述类型确定单元,包括:
第一确定子单元,用于根据所述类型接收单元接收到的所述类型信息确定所述目标数据的数据类型。
优选的,所述类型确定单元,包括:
第二确定子单元,用于依据存储的数据访问频率记录,确定所述目标数据所属的数据类型,其中,所述第一数据类型还包括:访问频率大于所述第二数据类型的数据所对应的访问频率的数据。
优选的,还包括:
检测单元,用于当检测到所述第一存储介质的剩余存储空间小于预设值时,从所述第一存储介质中存储的目标数据中,确定出不属于所述处理器运行所需的必要数据的待处理目标数据;
数据转移单元,用于根据对所述待处理目标数据的访问频率从高到低的排序,将排序靠后的指定数量的目标数据转移到所述第二存储介质中。
经由上述的技术方案可知,处理器将待存储的目标数据通过第一接口传输给存储模块后,该存储模块的控制器根据该目标数据的数据类型来确定存储该目标数据的存储体,将包含处理器运行所必须的第一类型数据存储至第一存储体中,并将该第一类型数据之外的第二类型数据存储至该第二存储体中,从而实现了所有数据通过一个存储模块来进行统一进行存储,而无需经过内存再经硬盘的复杂存储过程,从而有利于优化数据存储,提高数据存储速度。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1,其示出了本申请一种数据处理方法一个实施例的流程示意图,本实施例的方法包括:
101,通过第一接口获取处理器传输的当前待写入的目标数据。
其中,在本实施例中处理器的待存储数据均通过该第一接口传输给该存储模块的控制器。
102,确定该目标数据的数据类型。
其中,该数据类型包括第一类型数据和第二类型数据,该第一类型数据至少包括处理器运行所需的必要数据。如,第一类型数据可以包括应用程序当前正在运行的数据,以及处理器当前执行运算所需的数据等。
在本申请实施例中存储数据前,需要确定该待存储的目标数据的数据类型,以便后续根据数据类型确定用于存储该目标数据的存储介质。
103,当该目标数据为第一类型数据时,将该目标数据存储至存储模块的第一存储体中。
104,当该目标数据为第二类型数据时,将该目标数据存储至该存储模块的第二存储体中。
其中,该第二存储体为非易失性存储体。
与现有的存储架构不同,本申请实施例的存储模块中包含有两个存储介质,为了便于区分将这两个存储介质分别称为第一存储体和第二存储体。这两个存储体可以具有不同的存储特性。
在本申请实施例中处理器的待存储数据只需要全部存储到改存储模块的存储体中,而该存储模块的控制器根据数据类型的不同,来确定当前待存储的数据需要存储到该存储模块的哪个存储体中。
可以理解的是,在本申请实施例中处理器需要存储的数据实际上均存储到该存储模块中,并由该存储模块的控制器来完整数据存储分配,在存储架构上不区分内存和硬盘,实现内存和硬盘的统一存储,从而无需经过内存到硬盘等较为复杂的数据存储过程。
本申请实施例中,处理器将待存储的目标数据通过第一接口传输给存储模块后,该存储模块的控制器根据该目标数据的数据类型来确定存储该目标数据的存储体,将包含处理器运行所必须的第一类型数据存储至第一存储体中,并将该第一类型数据之外的第二类型数据存储至该第二存储体中,从而实现了所有数据通过一个存储模块来进行统一进行存储,而无需经过内存再经硬盘的复杂存储过程,从而有利于优化数据存储,提高数据存储速度。
可以理解的是,为了满足不同类型数据的存储需求,如,一般来讲处理器对该第一类型数据的读取速度要求较高,以便能够满足处理器的运行需求。因此,可以设置该第一存储体的数据导入速度大于该第二存储体的数据导入速度。则具体可以为:
当该目标数据为第一类型数据时,以第一写入速率将该目标数据存储至存储模块的第一存储体中;
当该目标数据为第二类型数据时,以第二写入速率将该目标数据存储至存储模块的第二存储体中。
其中,该第一写入速率大于该第二写入速率。
为了能够与现有的数据存储体系相匹配,以满足处理器能够以较快的速度读取应用程序当前运行的数据,在以上任意一个实施例中,该第一存储体为设置在该存储模块内的内存储器。也就是说,在本实施例中将该内存设置在该存储模块内部,并在该存储模块内设置有第二存储体,通过该存储模块可以存储电子设备的所有数据。其中,该存储模块的内存可以与现有的电子设备的存储架构中内存的存储功能相同,即该存储模块的内存与现有的电子设备中内存所能存储的数据相同,例如,该存储模块的内存可以存储像程序运行等临时数据。
将该第一存储体设置为内存,现有的处理器与内存与硬盘的数据交互均可以简化为处理器与该存储模块的数据交互,减少了数据传输链路,提高处理器传输存储数据的速度。
进一步的,该第二存储体可以为非易失性存储介质(NVM,Non VolatileMemory),具体的可以为目前的新型存储介质,该类存储介质即对擦写次数的限制较小,又具有与内存相似的数据导入速度。如,该新型非易失性存储介质可以为:磁阻兼容静态随机存储器(MRAM,Magnetic Random AccessMemory),或者是相位存储器。
在以上任意一个实施例中,为了进一步提高数据的传输速率,处理器与该存储模块的接口可以采用双倍数据速率(DDR,Double Data Rate)接口。则,可以通过与该处理器相连的DDR接口接收该处理器传输的当前待写入的目标数据。
需要说明的是,在以上任意一个实施例中,由于数据在需要存储时,该数据在当前时刻并未被访问,因此自然不存在该数据当前的被访问的频率,而本申请任意一个实施例所提到的数据被访问的频率可以理解为根据当前时刻之前一段时间内数据被访问的次数,确定出的该数据的访问频率。该访问频率可以认为是一个预估频率,也可以认为是一个历史访问频率。
而确定数据的访问频率则可以是由处理器确定,也可以是存储模块的控制器来确定。根据确定目标数据被访问频率的主体不同,该控制器得到目标数据的数据类型的方式也会有所不同。
如,当数据类型由处理器确定时,则处理器传输目标数据的同时,还需要传输该目标数据对应的类型信息。也就是说,控制器通过第一接口接收目标数据的同时,还通过该第一接口接收该目标数据对应的类型信息。根据类型信息用于表明该目标数据所属的类型,根据该类型信息可以确定该目标数据是第一类型数据还是第二类型数据。
该种情况与现有的相似,例如,处理器需要指示出向内存中还是向硬盘中存储数据,而本申请实施例中,处理器也可以标明该目标数据是该处理器运行所必须的数据,则该存储模块的控制器就可以确定该目标数据为第一类型数据,进而将该第一类型数据存储至该第一存储体内;如果未标明该目标数据为该处理器运行所必须的数据或者是标识出为第二类型数据,或者需要存储至第二存储体内,则将该目标数据存储至该第二存储体中。
需要说明的是,第一类型数据可以包括该处理器运行所必须的数据,而由于现有的内存中可能还可以包含其他访问频率较高的数据,因此,该第一类型数据中还可以包含其他访问频率较高的数据。该类访问频率较高的数据的读写速率对电子设备整体的数据读写速度影响较大,因此,可以将该类访问频率较高的数据也作为第一类型数据,并将该类数据存储至数据导入速率较高的第一存储体内。相应的,处理器可以根据需要标示出该类目标数据所述的类型,或者指明该类数据所需存储至的目标存储体。
又如,由存储模块的控制器来确定数据类型可以是:依据存储的数据访问频率记录,确定该目标数据对应的访问频率,从而确定该目标数据对应的访问频率所归属的数据类型。在该种情况下,该第一类型数据除了包括处理器运行所必须的数据外,还可以包括访问频率大于所述第二数据类型的数据所对应的访问频率的数据。其中,该第二类型数据的访问频率可以根据需要设定。对于处理器运行所必须的数据而言,处理器仍可以采用现有的方式标示出其存储地址,而由该存储模块来确定将该数据存储至第一存储体内。当然,考虑到实际应用中,处理器运行所必须的数据的访问频率必然也较高,因此,该存储模块对于全部数据,均可以根据访问频率来确定该待存储数据的数据类型,并根据数据类型确定存储该目标数据的存储体。
当然,对于该第二种情况,该数据访问频率记录可以是由存储模块进行记录,也可以是由该处理器记录并按照预设周期传输给该存储模块。
可选的,在以上任意一个实施例中,在存储了目标数据之后,还可以包括:
当检测到该第一存储介质的剩余存储空间小于预设值时,从该第一存储介质中存储的目标数据中,确定出不属于该处理器运行所需的必要数据的待处理目标数据;
根据对该待处理目标数据的访问频率从高到低的排序,将排序靠后的指定数量的目标数据转移到所述第二存储介质中。
其中,该处理器运行所必须的数据可以特殊表明,并在存储该类数据后,记录该类数据在该第一存储体内的存储地址,从而在需要转移数据时,不移动该存储地址内的数据。
另一方面,本申请还提供了一种存储设备,参见图2,其示出了本申请一种存储设备一个实施例的结构示意图。在本实施例中该存储设备可以包括:
存储控制器201,与所述存储控制器201相连的第一存储体202以及与所述存储控制器201相连的第二存储体203。
其中,该存储控制器201与电子设备的处理器204相连,用于获取处理器传输的待存储的目标数据,并确定所述目标数据的数据类型;
所述第一存储体202,用于存储所述存储控制器确定出的第一数据类型的目标数据;其中,所述第一数据类型至少包括所述处理器运行所需的必要数据;
第二存储体203,用于存储所述存储控制器确定出的第二数据类型的目标数据;其中,所述第二存储体为非易失性存储体;
其中,所述第一存储体具有与第二存储体不同的存储材料。
可选的,该第一存储体的数据导入速率大于所述第二存储体的数据导入速率。则相应的,该存储控制器可以以第一写入速率将第一类型数据写入到该第一存储体内,并以第二写入速率将第二类型数据写入到该第二存储体内。其中该第一写入速率大于该第二写入速率。
可选的,在以上任意一个实施例中,所述第一存储器可以为:内部存储器;
相应的,所述第二存储体可以为:磁性随机访问存储器或者相位存储器。
可选的,该存储控制器通过DDR接口与处理器相连。
另一方面,对应本申请的一种数据处理方法,本申请还提供了一种数据处理装置。
参见图3,其示出了本申请一种数据处理装置一个实施例的结构示意图,本实施例的装置可以包括:
数据接收单元301,用于通过第一接口获取处理器传输的当前待写入的目标数据;
类型确定单元302,用于确定所述目标数据的数据类型,所述数据类型包括第一类型数据和第二类型数据,所述第一类型数据至少包括处理器运行所需的必要数据;
第一存储单元303,用于当所述目标数据为第一类型数据时,将所述目标数据存储至存储模块的第一存储体中;
第二存储单元304,用于当所述目标数据为第二类型数据时,将所述目标数据存储至所述存储模块的第二存储体中,其中,所述第二存储体为非易失性存储体。
可选的,所述第一存储单元可以包括:
第一存储子单元,用于当所述目标数据为第一类型数据时,以第一写入速率将所述目标数据存储至存储模块的第一存储体中;
则所述第二存储单元,包括:
第二存储子单元,用于当所述目标数据为第二类型数据时,以第二写入速率将所述目标数据存储至所述存储模块的第二存储体中;其中,所述第一写入速率大于所述第二写入速率。
可选的,在以上任意一个实施例中,所述数据接收单元,包括:
数据接收子单元,用于通过与所述处理器相连的双倍数据速率DDR接口接收所述处理器传输的当前待写入的目标数据。
可选的,在以上任意一个装置的实施例中,所述第一存储体为设置在所述存储模块内的内存储器;
所述第二存储体为:磁阻兼容静态随机存储器MRAM或者相位存储器。
可选的所述装置,还可以包括:
类型接收信息,用于在所述数据接收单元通过第一接口获取处理器传输的当前待写入的目标数据的同时,通过第一接口获取处理器传输的当前待写入的目标数据的类型信息;
则所述类型确定单元,包括:
第一确定子单元,用于根据所述类型接收单元接收到的所述类型信息确定所述目标数据的数据类型。
可选的,在以上任意一个装置的实施例中,所述类型确定单元,包括:
第二确定子单元,用于依据存储的数据访问频率记录,确定所述目标数据所属的数据类型,其中,所述第一数据类型还包括:访问频率大于所述第二数据类型的数据所对应的访问频率的数据。
可选的,在以上任意一个装置的实施例中,该装置还可以包括:
检测单元,用于当检测到所述第一存储介质的剩余存储空间小于预设值时,从所述第一存储介质中存储的目标数据中,确定出不属于所述处理器运行所需的必要数据的待处理目标数据;
数据转移单元,用于根据对所述待处理目标数据的访问频率从高到低的排序,将排序靠后的指定数量的目标数据转移到所述第二存储介质中。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。