一种数据写入方法、装置及存储设备制造方法及图纸

技术编号:26375911 阅读:20 留言:0更新日期:2020-11-19 23:44
本发明专利技术公开了一种数据写入方法、装置及存储设备。该方法包括:获取写命令,判断写命令对应的待写入数据的数据量是否为存储设备一页所能容纳的数据量的整数倍,若否,读取存储设备中垃圾回收数据块中的至少部分有效数据,将写命令对应的待写入数据以及读取的存储设备的垃圾回收数据块中的至少有效数据写入存储设备中,其中,写命令对应的待写入数据的数据量以及读取的存储设备的垃圾回收数据块中的至少部分有效数据的数据量之和为存储设备一页所能容纳的数据量的整数倍。本发明专利技术实施例提供的技术方案可以避免无效数据的产生,进而减小无效数据占比。

【技术实现步骤摘要】
一种数据写入方法、装置及存储设备
本专利技术实施例涉及存储设备
,尤其涉及一种数据写入方法、装置及存储设备。
技术介绍
基于NANDflash的存储设备具有容量较大,改写速度快等优点,广泛应用于数码相机、随身听记忆卡、体积小巧的U盘中。其中,访问速度是基于NANDflash的存储设备非常关注的一项性能。NANDflash存储设备的写单位为页,通常情况下,当用户写命令中包含的预设写入数据量并非整数页时,仍然会发起NANDflash页写,那么NANDflash中就会很快产生大量的无效数据,从而增加了无效数据的占比,这样会使NANDflash存储设备的访问速度降低。
技术实现思路
本专利技术提供一种数据写入方法、装置及存储设备,以实现降低存储设备中无效数据的占比。第一方面,本专利技术实施例提供了一种数据写入方法,包括:获取写命令;判断写命令对应的待写入数据的数据量是否为存储设备一页所能容纳的数据量的整数倍;若否,读取存储设备中垃圾回收数据块中的至少部分有效数据;将写命令对应的待写入数据以及读取的存储设备的垃圾回收数据块中的至少有效数据写入存储设备中;其中,写命令对应的待写入数据的数据量以及读取的存储设备的垃圾回收数据块中的至少部分有效数据的数据量之和为存储设备一页所能容纳的数据量的整数倍。可选的,在读取存储设备中垃圾回收数据块中的至少部分有效数据之前还包括:计算写命令对应的待写入数据的数据量不足以写满存储设备一页的数据量,以得到数据偏差量;读取存储设备中垃圾回收数据块中的至少部分有效数据包括:将数据偏差量确定为存储设备的垃圾回收数据块中的至少部分有效数据的读取量N,并读取存储设备中垃圾回收数据块中的至少部分有效数据;N为正整数。可选的,在读取存储设备中垃圾回收数据块中的至少部分有效数据之前还包括:获取存储设备中各个垃圾回收数据块中有效数据占比,并将有效数据占比最小的垃圾回收数据块作为目标读取垃圾回收数据块;有效数据占比是指垃圾回收数据块中有效数据与垃圾回收数据块容纳数据量的比值;读取存储设备中垃圾回收数据块中的至少部分有效数据包括:读取目标读取垃圾回收数据块中的至少部分有效数据。可选的,在读取存储设备中垃圾回收数据块中的至少部分有效数据之前还包括:获取存储设备中各个垃圾回收数据块中的擦除次数,并将擦除次数最少的垃圾回收数据块作为目标读取垃圾回收数据块;读取存储设备中垃圾回收数据块中的至少部分有效数据包括:读取目标读取垃圾回收数据块中的至少部分有效数据。可选的,读取存储设备中垃圾回收数据块中的至少部分有效数据包括:读取存储设备中至少一个垃圾回收数据块中的至少部分有效数据。第二方面,本专利技术实施例还提供了一种数据写入装置,该装置包括:写命令获取模块、判断模块、有效数据读取模块和写入模块;写命令获取模块,用于获取写命令;判断模块,用于判断写命令对应的待写入数据的数据量是否为存储设备一页所能容纳的数据量的整数倍;有效数据读取模块,用于在写命令对应的待写入数据的数据量不是存储设备一页所能容纳的数据量的整数倍时,读取存储设备中垃圾回收数据块中的至少部分有效数据;写入模块,用于将写命令对应的待写入数据以及读取的存储设备的垃圾回收数据块中的至少有效数据写入存储设备中;其中,写命令对应的待写入数据的数据量以及读取的存储设备的垃圾回收数据块中的至少部分有效数据的数据量之和为存储设备一页所能容纳的数据量的整数倍。可选的,该装置还包括数据偏差量计算模块,数据偏差量计算模块,用于计算写命令对应的待写入数据的数据量不足以写满存储设备一页的数据量,以得到数据偏差量;有效数据读取模块,具体用于将数据偏差量确定为存储设备的垃圾回收数据块中的至少部分有效数据的读取量N,并读取存储设备中垃圾回收数据块中的至少部分有效数据;N为正整数。可选的,还包括第一目标读取垃圾回收数据块确定模块,第一目标读取垃圾回收数据块确定模块,用于获取存储设备中各个垃圾回收数据块中有效数据占比,并将有效数据占比最小的垃圾回收数据块作为目标读取垃圾回收数据块;有效数据占比是指垃圾回收数据块中有效数据与垃圾回收数据块容纳数据量的比值;有效数据读取模块,具体用于读取目标读取垃圾回收数据块中的至少部分有效数据。可选的,还包括第二目标读取垃圾回收数据块确定模块,第二目标读取垃圾回收数据块确定模块,用于获取存储设备中各个垃圾回收数据块中的擦除次数,并将擦除次数最少的垃圾回收数据块作为目标读取垃圾回收数据块;有效数据读取模块,具体用于读取目标读取垃圾回收数据块中的至少部分有效数据。第三方面,本专利技术实施例还提供了一种存储设备,该存储设备包括本专利技术任意实施例所述的数据写入装置。本专利技术实施例提供的数据写入方法,通过在待写入数据的数据量并非存储设备一页所能容纳的数据量的整数倍时,从存储设备的垃圾回收数据块中读取至少部分有效数据,以使将待写入数据和读出的有效数据写入存储设备时刚好填满存储设备的整数页存储空间,解决现有技术中由于将不满整数页的待写入数据直接写入存储设备带来的产生大量无效数据,增加无效数据占比的问题,实现避免无效数据产生,减小无效数据占比的效果。附图说明图1是本专利技术实施例一提供的一种数据写入方法的流程图;图2是本专利技术实施例二提供的一种数据写入方法的流程图;图3是本专利技术实施例三提供的一种数据写入装置的结构框图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1是本专利技术实施例一提供的一种数据写入方法的流程图。本实施例可适用于存储设备进行数据写入的情况,该方法可以由本专利技术实施例中的数据写入装置来执行,该装置可以通过软件和/或硬件的方式实现,并一般可以集成在存储设备中,本专利技术实施例的方法具体包括如下步骤:S110、获取写命令。其中,存储设备可以是基于NANDflash存储器的存储设备,该存储设备包括前端层、转换层、后端层,后端层包括至少一个NANDflash存储器。前端层用于与主机进行通讯,例如,接收主机发送的控制指令,控制指令包括读命令、写命令和擦除命令;转换层用于根据控制指令进行软件操作,软件操作包括但不限于逻辑地址到物理地址的转换、地址映射表管理、损耗均衡管理和坏块管理;后端层用于根据控制指令对NANDflash存储器进行读、写或操作。具体的,前端层接收主机发送的写命令,并将该写命令中包含的起始逻辑地址和待写入数据量解读出来。S120、判断写命令对应的待写入数据的数据量是否为存储设备一页所能容纳的数据量的整数倍。其中,存储设备中的NANDflash存储本文档来自技高网...

【技术保护点】
1.一种数据写入方法,其特征在于,包括:/n获取写命令;/n判断所述写命令对应的待写入数据的数据量是否为存储设备一页所能容纳的数据量的整数倍;/n若否,读取所述存储设备中垃圾回收数据块中的至少部分有效数据;/n将所述写命令对应的待写入数据以及读取的所述存储设备的垃圾回收数据块中的至少有效数据写入所述存储设备中;/n其中,所述写命令对应的待写入数据的数据量以及读取的所述存储设备的垃圾回收数据块中的至少部分有效数据的数据量之和为存储设备一页所能容纳的数据量的整数倍。/n

【技术特征摘要】
1.一种数据写入方法,其特征在于,包括:
获取写命令;
判断所述写命令对应的待写入数据的数据量是否为存储设备一页所能容纳的数据量的整数倍;
若否,读取所述存储设备中垃圾回收数据块中的至少部分有效数据;
将所述写命令对应的待写入数据以及读取的所述存储设备的垃圾回收数据块中的至少有效数据写入所述存储设备中;
其中,所述写命令对应的待写入数据的数据量以及读取的所述存储设备的垃圾回收数据块中的至少部分有效数据的数据量之和为存储设备一页所能容纳的数据量的整数倍。


2.根据权利要求1所述的数据写入方法,其特征在于,在所述读取所述存储设备中垃圾回收数据块中的至少部分有效数据之前还包括:
计算所述写命令对应的待写入数据的数据量不足以写满所述存储设备一页的数据量,以得到数据偏差量;
所述读取所述存储设备中垃圾回收数据块中的至少部分有效数据包括:
将所述数据偏差量确定为所述存储设备的垃圾回收数据块中的至少部分有效数据的读取量N,并读取所述存储设备中垃圾回收数据块中的至少部分有效数据;N为正整数。


3.根据权利要求1所述的数据写入方法,其特征在于,在所述读取所述存储设备中垃圾回收数据块中的至少部分有效数据之前还包括:
获取所述存储设备中各个垃圾回收数据块中有效数据占比,并将所述有效数据占比最小的垃圾回收数据块作为目标读取垃圾回收数据块;所述有效数据占比是指所述垃圾回收数据块中有效数据与所述垃圾回收数据块容纳数据量的比值;
所述读取所述存储设备中垃圾回收数据块中的至少部分有效数据包括:
读取所述目标读取垃圾回收数据块中的至少部分有效数据。


4.根据权利要求1所述的数据写入方法,其特征在于,在所述读取所述存储设备中垃圾回收数据块中的至少部分有效数据之前还包括:
获取所述存储设备中各个垃圾回收数据块中的擦除次数,并将所述擦除次数最少的垃圾回收数据块作为目标读取垃圾回收数据块;
所述读取所述存储设备中垃圾回收数据块中的至少部分有效数据包括:
读取所述目标读取垃圾回收数据块中的至少部分有效数据。


5.根据权利要求1所述的数据写入方法,其特征在于,所述读取所述存储设备中垃圾回收数据块中的至少部分有效数据包括:
读取所述存储设备中至少一个垃圾回收数据块中的至少部分有效数据。

【专利技术属性】
技术研发人员:陈诚
申请(专利权)人:北京兆易创新科技股份有限公司
类型:发明
国别省市:北京;11

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

1