固态硬盘的数据存储方法、装置、设备及可读存储介质制造方法及图纸

技术编号:19341522 阅读:27 留言:0更新日期:2018-11-07 13:40
本发明专利技术实施例公开了一种固态硬盘的数据存储方法、装置、设备及计算机可读存储介质。其中,方法包括当LBA在固态硬盘运行过程中的管理数据发生变化,则将管理数据的变化量存储在其第一存储区域中;当LBA的第一存储区域的剩余空间满足预设条件,从DDR中按照预设数据拷贝量将与其相对应的管理数据,复制至其第二存储区域中,并向NAND管理模块发送刷写其第一存储区域和第二存储区域中的数据;当固态硬盘下电时,将各LBA的第一存储区域和第二存储区域中的数据刷写至NAND中,并将更新的管理数据的L2P表下刷至控制管理器中,各LBA中的数据为预先按照预设数据存储量划分固态硬盘的管理数据所得。本申请减少了SSD下电时需要存储数据量,有利于保证SSD中的数据完整性。

Data storage method, device, device and readable storage medium for solid state disk

The embodiment of the invention discloses a data storage method, device, device and computer readable storage medium of a solid-state hard disk. Among them, the method includes storing the change amount of management data in the first storage area when the management data of LBA changes during the operation of solid-state hard disk, and copying the corresponding management data from DDR according to the preset data copy amount when the remaining space of the first storage area of LBA meets the preset conditions. In the second storage area, the data in the first storage area and the second storage area are written to the NAND management module; when the solid-state hard disk is powered down, the data in the first storage area and the second storage area of each LBA are written to the NAND, and the L2P table of the updated management data is brushed to the control manager, and each LBA is written to the control manager. The data is obtained by dividing the management data of the SSSD in advance according to the preset data storage. This application reduces the amount of data to be stored when SSD is powered down, and is conducive to ensuring data integrity in SSD.

【技术实现步骤摘要】
固态硬盘的数据存储方法、装置、设备及可读存储介质
本专利技术实施例涉及固态硬盘数据存储
,特别是涉及一种固态硬盘的数据存储方法、装置、设备及计算机可读存储介质。
技术介绍
随着互联网、云计算、物联网等计算机技术的快速发展及广泛普及应用,日常工作或生活中时时刻刻会产生海量的数据需要处理和存储,数据的爆炸式增长、用户对数据的安全性要求的增高及信息技术的高速发展均对存储系统的性能提出了更高的要求。SSD(SolidStateDrives,固态硬盘),也叫固盘,为用固态电子存储芯片阵列制成的硬盘,由控制单元和固态存储单元组成。SSD需要在下电时能够在规定时间(一般为20ms)内将所需要存储的数据进行保存(也即落盘过程),从而保证SSD中的数据保持完整,在下次上电时SSD能够正常工作。落盘的数据主要来源为DDR(DoubleDataRate双倍速率同步动态随机存储器)中的数据,包括写缓存中的数据和系统的管理数据(如L2P表等),这些数据由主机端从SSD的前端发来,相关模块收到之后暂存在SSD的写缓存中,待达到一定的量(一般为一个superpage写满)后,再一次性交给nand管理模块进行“落盘”,SSD在下电时需要刷写写缓存中的数据和系统的管理数据。SSD下电过程的完成依赖SSD自带电容的放电,SSD的电容一般放电时间为20ms,这就要求SSD的固件在设计下电的流程时要考虑时间,以减少下电时SSD的保存过程的时间消耗。SSD下电可能为用户操作下的正常下电,也可能为SSD正常运行工作过程中,电源突然被切断等不可抗拒的外界因素导致的异常下电,现有技术中一般采用下电时全部刷写所有管理数据和刷写部分可恢复全部管理数据方法。而刷写全部管理数据只能在对下电时间要求不高的场景下,而无法满足SSD的异常下电时所需时间的要求,有可能导致SSD下电过程中数据保持不完整,影响下次SSD上电时的正常使用。
技术实现思路
本专利技术实施例的目的是提供一种固态硬盘的数据存储方法、装置、设备及计算机可读存储介质,减少了SSD下电时需要存储数据量,从而缩短了SSD下电过程中数据存储时间,有利于保证SSD中的数据完整性,使得SSD在下次上电时可正常工作。为解决上述技术问题,本专利技术实施例提供以下技术方案:本专利技术实施例一方面提供了一种固态硬盘的数据存储方法,包括:预先根据固态硬盘的管理数据,按照预设数据存储量进行划分LBA;各LBA均包括第一存储区域和第二存储区域,所述第一存储区域中保存该LBA中的自管理数据的说明信息,和所述自管理数据的变化信息;所述第二存储区域存储所述自管理数据在DDR中相对应的数据;在所述固态硬盘正常运行过程中,当检测到LBA中的自管理数据发生变化时,在所述DDR中更新所述自管理数据,并将所述自管理数据的变化量存储在相应的第一存储区域中;当检测到目标LBA的第一存储区域的剩余空间满足预设条件,从所述DDR中按照预设数据拷贝量将与所述目标LBA相对应的管理数据,复制至所述目标LBA的第二存储区域中,并向NAND管理模块发送刷写所述目标LBA的第一存储区域和第二存储区域中的数据;当检测到所述固态硬盘下电时,将各LBA的第一存储区域和第二存储区域中的数据刷写至NAND中,并将更新的管理数据的L2P表下刷至控制管理器的超级块中。可选的,所述第一存储区域与所述第二存储区域的占用空间容量比值为1:3。可选的,所述预设数据存储量为16k。可选的,所述当检测到目标LBA的第一存储区域的剩余空间满足预设条件为:当检测到目标LBA的第一存储区域的剩余空间容量为0。可选的,所述预设数据拷贝量与所述第二存储区域的占用空间容量相同。可选的,所述将更新的管理数据的L2P表下刷至控制管理器的超级块中包括:预先为所述固态硬盘的管理数据的L2P表建立一级L2P;将更新的管理数据对应的一级L2P表下刷至控制管理器的超级块中。可选的,在所述将更新的管理数据的L2P表下刷至控制管理器的超级块中之后,还包括:向上一级管理模块发送所述固态硬盘下电存储管理数据已完成的指令。本专利技术实施例另一方面提供了一种固态硬盘的数据存储装置,包括:预处理模块,用于预先根据固态硬盘的管理数据,按照预设数据存储量进行划分LBA;各LBA均包括第一存储区域和第二存储区域,所述第一存储区域中保存该LBA中的自管理数据的说明信息,和所述自管理数据的变化信息;所述第二存储区域存储所述自管理数据在DDR中相对应的数据;存储数据变量模块,用于在所述固态硬盘正常运行过程中,当检测到LBA中的自管理数据发生变化时,在所述DDR中更新所述自管理数据,并将所述自管理数据的变化量存储在相应的第一存储区域中;分批数据存储模块,用于当检测到目标LBA的第一存储区域的剩余空间满足预设条件,从所述DDR中按照预设数据拷贝量将与所述目标LBA相对应的管理数据,复制至所述目标LBA的第二存储区域中,并向NAND管理模块发送刷写所述目标LBA的第一存储区域和第二存储区域中的数据;下电数据存储模块,用于当检测到所述固态硬盘下电时,将各LBA的第一存储区域和第二存储区域中的数据刷写至NAND中,并将更新的管理数据的L2P表下刷至控制管理器的超级块中。本专利技术实施例还提供了一种固态硬盘的数据存储设备,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如前任一项所述固态硬盘的数据存储方法的步骤。本专利技术实施例最后还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有固态硬盘的数据存储程序,所述固态硬盘的数据存储程序被处理器执行时实现如前任一项所述固态硬盘的数据存储方法的步骤。本专利技术实施例提供了一种固态硬盘的数据存储方法,在固态硬盘正常运行过程中,当检测到LBA中的管理数据发生变化时,在DDR中更新管理数据,并将管理数据的变化量存储在相应的第一存储区域中;当检测到目标LBA的第一存储区域的剩余空间满足预设条件,从DDR中按照预设数据拷贝量将与目标LBA相对应的管理数据,复制至目标LBA的第二存储区域中,并向NAND管理模块发送刷写其第一存储区域和第二存储区域中的数据;当检测到固态硬盘下电时,将各LBA的第一存储区域和第二存储区域中的数据刷写至NAND中,并将更新的管理数据的L2P表下刷至控制管理器的超级块中,各LBA中的数据为预先按照预设数据存储量划分固态硬盘的管理数据所得。本申请技术方案的优点在于,将管理数据分配给多个LBA,各LBA存储管理数据的变化量和对应在DDR中的数据,并在满足预设条件时,将各LBA中存储数据拷贝在NAND中,当固态硬盘下电时,只需将各LBA中存储的当前数据下刷至NAND中。本申请在固态硬盘运行过程中,逐渐将下电时需要存储的数据分批次存储在NAND中,即在固态硬盘未下电时便实时存储一部分下电需要存储相关数据,当固态硬盘异常下电时,下刷管理数据的实际数据量明显减小,而相比写缓存中的数据量,管理数据的数据量较大,所以管理数据的刷写时间直接影响固态硬盘的下电存储所需数据的时间,从而大大的降低了固态硬盘下电时需要存储数据量,从而缩短了SSD下电过程中数据存储时间,有利于保证SSD中的数据完整性,使得SSD在下次上电时可正常工作。此外,本专利技术实施例还针对固态硬盘的数据存储方法提供了相应的实现装置、设本文档来自技高网
...

【技术保护点】
1.一种固态硬盘的数据存储方法,其特征在于,包括:预先根据固态硬盘的管理数据,按照预设数据存储量进行划分LBA;各LBA均包括第一存储区域和第二存储区域,所述第一存储区域中保存该LBA中的自管理数据的说明信息,和所述自管理数据的变化信息;所述第二存储区域存储所述自管理数据在DDR中相对应的数据;在所述固态硬盘正常运行过程中,当检测到LBA中的自管理数据发生变化时,在所述DDR中更新所述自管理数据,并将所述自管理数据的变化量存储在相应的第一存储区域中;当检测到目标LBA的第一存储区域的剩余空间满足预设条件,从所述DDR中按照预设数据拷贝量将与所述目标LBA相对应的管理数据,复制至所述目标LBA的第二存储区域中,并向NAND管理模块发送刷写所述目标LBA的第一存储区域和第二存储区域中的数据;当检测到所述固态硬盘下电时,将各LBA的第一存储区域和第二存储区域中的数据刷写至NAND中,并将更新的管理数据的L2P表下刷至控制管理器的超级块中。

【技术特征摘要】
1.一种固态硬盘的数据存储方法,其特征在于,包括:预先根据固态硬盘的管理数据,按照预设数据存储量进行划分LBA;各LBA均包括第一存储区域和第二存储区域,所述第一存储区域中保存该LBA中的自管理数据的说明信息,和所述自管理数据的变化信息;所述第二存储区域存储所述自管理数据在DDR中相对应的数据;在所述固态硬盘正常运行过程中,当检测到LBA中的自管理数据发生变化时,在所述DDR中更新所述自管理数据,并将所述自管理数据的变化量存储在相应的第一存储区域中;当检测到目标LBA的第一存储区域的剩余空间满足预设条件,从所述DDR中按照预设数据拷贝量将与所述目标LBA相对应的管理数据,复制至所述目标LBA的第二存储区域中,并向NAND管理模块发送刷写所述目标LBA的第一存储区域和第二存储区域中的数据;当检测到所述固态硬盘下电时,将各LBA的第一存储区域和第二存储区域中的数据刷写至NAND中,并将更新的管理数据的L2P表下刷至控制管理器的超级块中。2.根据权利要求1所述的固态硬盘的数据存储方法,其特征在于,所述第一存储区域与所述第二存储区域的占用空间容量比值为1:3。3.根据权利要求2所述的固态硬盘的数据存储方法,其特征在于,所述预设数据存储量为16k。4.根据权利要求3所述的固态硬盘的数据存储方法,其特征在于,所述当检测到目标LBA的第一存储区域的剩余空间满足预设条件为:当检测到目标LBA的第一存储区域的剩余空间容量为0。5.根据权利要求4所述的固态硬盘的数据存储方法,其特征在于,所述预设数据拷贝量与所述第二存储区域的占用空间容量相同。6.根据权利要求1至5任意一项所述的固态硬盘的数据存储方法,其特征在于,所述将更新的管理数据的L2P表下刷至控制管理器的超级块中包括:预先为所述固态硬盘的管理数据的L2P表建立一级L2P;将...

【专利技术属性】
技术研发人员:苗森
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1