一种数据处理方法、存储设备、电子设备的制造方法

文档序号:9787330阅读:353来源:国知局
一种数据处理方法、存储设备、电子设备的制造方法
【技术领域】
[0001]本发明涉及数据处理技术,尤其涉及一种数据处理方法、存储设备、电子设备。
【背景技术】
[0002]固态硬盘(SSD,Solid State Drives)简称固盘,SSD用固态电子存储芯片阵列而制成,SSD由控制器和存储器组成。目前的SSD对数据进行存储时,根据数据的逻辑区块地址(LBA,Logical Block Address)为数据分配对应存储位置的内存库(BANK),且一定范围的LBA会对应同一 BANK。当同一范围的LBA的数据存储在同一 BANK上时,如果主机频繁读写固定范围的LBA数据,就可能造成某一BANK的频繁擦写,使得磨损均衡(wear leveling)性能降低,SSD的使用寿命较短。

【发明内容】

[0003]为解决上述技术问题,本发明实施例提供了一种数据处理方法、存储设备、电子设备。
[0004]本发明实施例提供的数据处理方法,应用于电子设备,所述电子设备具有存储单元,所述存储单元具有一个以上子存储区域;所述方法包括:
[0005]获取待写入的数据;
[0006]存储数据时,获取存储单元中各个子存储区域的状态信息;其中每个子存储区域对应至少一个地址列表;
[0007]基于所述状态信息,从所述存储单元中选择一个以上子存储区域对数据进行存储,建立所述数据与所述至少一个地址列表的对应关系。
[0008]本发明实施例提供的存储设备,具有一个以上子存储区域;所述存储设备包括:
[0009]控制器,用于获取待写入的数据;存储数据时,获取存储器中各个子存储区域的状态信息;其中每个子存储区域对应至少一个地址列表;基于所述状态信息,从所述存储器中选择一个以上子存储区域对数据进行存储,建立所述数据与所述至少一个地址列表的对应关系。
[0010]本发明实施例提供的电子设备包括上述存储设备。
[0011]本发明实施例的技术方案中,电子设备具有存储单元,具体为存储器。所述存储单元具有一个以上子存储区域,具体为BANK。从主机中获取待写入的数据;存储数据时,获取存储单元中各个子存储区域的状态信息;其中每个子存储区域对应至少一个地址列表。这里,子存储区域的状态信息包括:占用率、和/或已擦写次数、和/或总擦写次数。基于所述状态信息,从所述存储单元中选择一个以上子存储区域对数据进行存储,最后,建立所述数据与所述至少一个地址列表的对应关系。可见,本发明实施例的技术方案在为主机数据分配BANK时,不是根据数据的LBA来选择目标BANK,而是根据BANK的使用情况进行分配。这样,可以均衡各个BANK的擦写次数,提高了各个BANK的磨损均衡性能,从而延长了SSD的使用寿命O
【附图说明】
[0012]图1为本发明实施例一的数据处理方法的流程示意图;
[0013]图2为本发明实施例二的数据处理方法的流程示意图;
[0014]图3为本发明实施例三的数据处理方法的流程示意图;
[0015]图4为本发明实施例四的数据处理方法的流程示意图;
[0016]图5为本发明实施例五的数据处理方法的流程示意图;
[0017]图6为本发明实施例一至实施例五的存储设备的结构组成示意图。
【具体实施方式】
[0018]为了能够更加详尽地了解本发明实施例的特点与技术内容,下面结合附图对本发明实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明实施例。
[0019]图1为本发明实施例一的数据处理方法的流程示意图,本示例中的数据处理方法应用于电子设备中,所述电子设备具有存储单元,所述存储单元具有一个以上子存储区域;如图1所示,所述数据处理方法包括以下步骤:
[0020]步骤101:获取待写入的数据。
[0021]本发明实施例中,所述电子设备可以是:手机、笔记本、服务器等电子设备。所述电子设备具有存储单元,例如SSD。所述存储单元能够将数据按照一定的地址规则进行存储。
[0022]本发明实施例中,存储单元被划分为一个以上子存储区域,这个子存储区域称为BANK。每个子存储区域包含多个数据区块,数据区块是子存储区域的基本存储单位。每个数据区块都对应一个物理区块地址(PBA,Physics Block Address),基于此,每个子存储区域对应一个地址列表,该地址列表包括了每个数据区块的PBA。
[0023]本发明实施例中,电子设备还具有主机,主机通常包括处理器、光驱、电源、以及其他输入输出控制器和接口。当用户通过输入设备,例如键盘向主机输入数据时,主机将待写入的数据发送给存储单元。存储单元获取到主机发送的数据,等待写入子存储区域中。
[0024]步骤102:存储数据时,获取存储单元中各个子存储区域的状态信息;其中每个子存储区域对应至少一个地址列表。
[0025]本发明实施例中,主机向存储单元写入数据时,写入的数据存储在特定LBA所指向的数据区块。这里,LBA可以指某个数据区块的地址或者某个地址所指向的数据区块。这里,数据区块对应唯一的PBA,但数据区块所对应的LBA随着存入数据变化而变化,数据区块对应的LBA由主机决定。
[0026]实际应用中,SSD采用软件的方式把闪存的操作虚拟成磁盘的独立扇区操作,这就是闪存转换层(FTL,Flash Translator Layer)。因FTL存在于文件系统和物理介质(闪存)之间,主机只需跟原来一样操作LBA即可,而LBA到I3BA的所有转换工作由FTL负责。FTL其实就是一种LBA到PBA的映射。
[0027]本发明实施例中,存储单元存储数据时,并不是按照数据的LBA分配对应的子存储区域,而是获取存储单元中各个子存储区域的状态信息,这里,状态信息包括:占用率、和/或已擦写次数、和/或总擦写次数。具体地,子存储区域包括多个数据区块,数据区块的状态分为三种:有效状态、无效状态、空白状态;其中,数据区块处于有效状态时,存储了有效的数据。数据区块处于无效状态时,存储的内容无效。数据区块处于空白状态时,说明该数据区块被擦除过,可以重新写入数据。占用率是指子存储区域中处于有效状态和无效状态的数据区块占总数据区块的比例。子存储区域的总擦写次数是固定不变的,存储单元出厂就决定了子存储区域的擦写次数,当子存储区域已经使用的擦写次数达到总擦写次数时,该子存储区域也就不能再继续使用。为了均衡各个子存储区域的擦写次数,需要获取各个子存储区域的状态信息。
[0028]步骤103:基于所述状态信息,从所述存储单元中选择一个以上子存储区域对数据进行存储,建立所述数据与所述至少一个地址列表的对应关系。
[0029]本发明实施例中,综合考虑各个子存储区域的占用率、和/或已擦写次数、和/或总擦写次数,选择占用率较小的、已擦写次数较少的、总擦写次数较多的子存储区域对数据进行存储。存储完数据之后,需要建立所述数据与所述至少一个地址列表的对应关系,具体地,将数据对应的LBA与子存储区域中存储数据的PBA之间的对应关系存储至FTL映射表中,这样,当读取某特定LBA的数据时,可以通过FTL映射表查找到与LBA对应的PBA,然后通过具有唯一性的PBA查找到相应的数据。
[0030]图2为本发明实施例二的数据处理方法的流程示意图,本示例中的数据处理方法应用于电子设备中,所述电子设备具有存储单元,所述存储单元具有一个以上子存储区域;如图2所示,所述数据处理方法包括以下步骤:
[0031]步骤201:获取待写入的数据。
[0032]本发明实施例中,所述电子设备可以是:手机、笔记本、服务器等电子设备。所述电子设备具有存储单元,例如SSD。所述存储单元能够将数据按照一定的地址规则进行存储。
[0033]本发明实施例中,存储单元被划分为一个以上子存储区域,这个子存储区域称为BANK。每个子存储区域包含多个数据区块,数据区块是子存储区域的基本存储单位。每个数据区块都对应一个PBA,基于此,每个子存储区域对应一个地址列表,该地址列表包括了每个数据区块的PBA。
[
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1