提升掉电时数据写入速度的方法、装置及计算机设备制造方法及图纸

技术编号:19340969 阅读:28 留言:0更新日期:2018-11-07 13:29
本发明专利技术涉及提升掉电时数据写入速度的方法、装置及计算机设备,其中,方法包括预留擦除单元,并设置预留的擦除单元处于擦除状态;判断系统是否出现异常掉电状态;若是,则处理NAND Flash的擦除状态;解析请求列队的请求类型,并根据请求类型进行请求处理;获取需要备份的数据以及需要回收的请求,存储于预留的擦除单元内。本发明专利技术通过预留擦除单元,并对擦除单元设置处于擦除状态,以进入接收数据写入,在系统出现异常掉电时,将需要回收的请求以及需要备份的数据存储在擦除单元内,减少对已写入且正确的数据的影响,提升用户数据写入速度,降低用户数据的丢失。

Method, device and computer equipment for improving data writing speed during power down

The present invention relates to a method, device and computer device for improving data writing speed when power failure occurs, in which a reserved erasing unit is set up and the reserved erasing unit is in the erasing state; whether an abnormal power failure occurs in the system is judged; if so, the erasing state of NAND Flash is handled; and the request of request queue is parsed. Type, and request processing according to the request type; get the data needed to backup and the requests needed to recycle, stored in the reserved erase unit. By reserving the erasing unit and setting the erasing unit in the erasing state to enter the receiving data writing, the request for recovery and the data to be backed up are stored in the erasing unit in case of abnormal power failure of the system, so as to reduce the impact on the written and correct data and improve the writing speed of user data. Reduce the loss of user data.

【技术实现步骤摘要】
提升掉电时数据写入速度的方法、装置及计算机设备
本专利技术涉及SSD固态硬盘,更具体地说是指提升掉电时数据写入速度的方法、装置及计算机设备。
技术介绍
固态硬盘在实际应用场景中,会发生异常掉电情况。掉电时,固态硬盘系统中可能有缓冲的数据没有写入NANDFlash中;掉电时,NANDFlash端可能正在执行写操作,该写操作的数据不但丢失,还会因为NANDFlash的特性导致写入点附近的数据被破坏。掉电时,对正在执行的擦除操作会在仲裁后决定是取消还是继续执行;针对后续的写入操作,可能因为没有预留擦除单元而需要做垃圾回收处理,启动擦除操作,耗时较多;掉电时,现有技术在NFC端会对请求做区分处理,优先响应写请求和写请求相关的读请求以及擦除请求,写请求可以是TLC模式写入或者SLC模式写入,写入的区域是正常的用户区域。因为写入的区域是正常的用户区域,存在没有合适的Block写入的情况,导致需要进行垃圾回收,启动Erase操作,耗时较多;以TLC模式写入,因为TLC模式的tPROG较大,导致在备电时间内写入的数据量有限;TLC颗粒存在共享读写单元的现象,后写入数据可能导致先前写入的数据状态改变,造成数据丢失,即不安全的写入。如图1所示,NandFlash的内部组成如下:其中,DIE代表可独立并发操作的单元;Block代表擦除单元;Page代表读写单元。DIE下的操作是串行化的,即对同一个DIE发起多个操作,必须等前面一个操作完成之后才能执行后面一个操作。同一个擦除单元内的读写单元必须按顺序进行写操作。由于NandFlash的内部构造,当前读写单元的写操作异常可能会对其他已经安全写入数据的读写单元造成影响,以TLC为例,读写单元M和读写单元N及读写单元(N+1)组成共享读写单元,共享NAND单元,且N>M+1,一般N>>M;读写单元M可以单独使用程序,读写单元N和读写单元(N+1)需同时使用程序,且读写单元N/N+1使用程序时会修改共享的NANDCell的状态,从而影响读写单元M的状态。使用程序完成后,读写单元M/N/(N+1)数据正确,但如果读写单元N/N+1在使用程序时掉电导致写入不成功,不仅读写单元N/N+1的数据错误,读写单元M的数据也被破坏。目前常见的解决此类问题的方法是固态硬盘硬件设计时引入电容备电。掉电时通过电容短暂的供电能力支撑NANDFlash操作的完成,但是由于掉电点不可控,掉电时刻请求比较多的情况下,依然存在未完成的写操作导致安全写入的数据被破坏的可能性。因此,有必要设计一种新的数据写入方法,实现保证异常掉电时数据写入的安全可靠,降低用户数据丢失的风险。
技术实现思路
本专利技术的目的在于克服现有技术的缺陷,提供提升掉电时数据写入速度的方法、装置及计算机设备。为实现上述目的,本专利技术采用以下技术方案:提升掉电时数据写入速度的方法,所述方法包括:预留擦除单元,并设置预留的擦除单元处于擦除状态;判断系统是否出现异常掉电状态;若是,则处理NANDFlash的擦除状态;解析请求列队的请求类型,并根据请求类型进行请求处理;获取需要备份的数据以及需要回收的请求,存储于预留的擦除单元内。其进一步技术方案为:预留擦除单元,并设置预留的擦除单元处于擦除状态的步骤,包括以下具体步骤:预留擦除单元;将预留的擦除单元分配于不同的CH或者可独立并发操作的单元上;在颗粒允许的情况下设置预留的擦除单元处于擦除状态。其进一步技术方案为:判断系统是否出现异常掉电状态的步骤之前,还包括:获取上次掉电期间需要写入预留的擦除单元内的数据,纳入垃圾回收管理。其进一步技术方案为:处理NANDFlash的擦除状态的步骤,包括以下具体步骤:判断系统当前是否在执行擦除操作;若否,则进入解析请求列队的请求类型,并根据请求类型进行请求处理的步骤;若是,则判断需要是否终止擦除操作;若是,则终止擦除操作;若否,则进入解析请求列队的请求类型,并根据请求类型进行请求处理的步骤。其进一步技术方案为:解析请求列队的请求类型,并根据请求类型进行请求处理的步骤,包括以下具体步骤:获取请求列队中的下一个请求;解析下一个请求的类型;判断下一个请求是否需要执行;若否,则对请求标记丢弃状态,并回收请求,返回所述获取请求列队中的下一个请求的步骤;若是,则判断当前的操作是否可安全执行请求;若是,则进入获取需要备份的数据以及需要回收的请求,存储于预留的擦除单元内的步骤;若否,则对请求标记丢弃状态,并回收请求,返回所述获取请求列队中的下一个请求的步骤。本专利技术还提供了提升掉电时数据写入速度的装置,包括预留单元、掉电判断单元、状态处理单元、请求处理单元以及存储单元;所述预留单元,用于预留擦除单元,并设置预留的擦除单元处于擦除状态;所述掉电判断单元,用于判断系统是否出现异常掉电状态;所述状态处理单元,用于若是,则处理NANDFlash的擦除状态;所述请求处理单元,用于解析请求列队的请求类型,并根据请求类型进行请求处理;所述存储单元,用于获取需要备份的数据以及需要回收的请求,存储于预留的擦除单元内。其进一步技术方案为:所述预留单元包括擦拭单元预留模块、分配模块以及设置模块;所述擦拭单元预留模块,用于预留擦除单元;所述分配模块,用于将预留的擦除单元分配于不同的CH或者可独立并发操作的单元上;所述设置模块,用于在颗粒允许的情况下设置预留的擦除单元处于擦除状态。其进一步技术方案为:所述装置还包括数据获取单元;所述数据获取单元,用于获取上次掉电期间需要写入预留的擦除单元内的数据,纳入垃圾回收管理。其进一步技术方案为:所述状态处理单元包括操作判断模块、终止判断模块以及终止模块;所述操作判断模块,用于判断系统当前是否在执行擦除操作;所述终止判断模块,用于若是,则判断需要是否终止擦除操作;所述终止模块,用于若是,则终止擦除操作。本专利技术还提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的提升掉电时数据写入速度的方法。本专利技术与现有技术相比的有益效果是:本专利技术的提升掉电时数据写入速度的方法,通过预留擦除单元,并对擦除单元设置处于擦除状态,以进入接收数据写入,在系统出现异常掉电时,将需要回收的请求以及需要备份的数据存储在擦除单元内,减少对已写入且正确的数据的影响,提升用户数据写入速度,降低用户数据的丢失。下面结合附图和具体实施例对本专利技术作进一步描述。附图说明图1为现有技术中的NANDFlash的示意性框图;图2为本专利技术一具体实施例提供的提升掉电时数据写入速度的方法的流程图;图3为图2中预留擦除单元并设置预留的擦除单元处于擦除状态的流程图;图4为图2中处理NANDFlash的擦除状态的流程图;图5为图2中解析请求列队的请求类型并根据请求类型进行请求处理的流程图;图6为本专利技术一具体实施例提供的提升掉电时数据写入速度的装置的结构框图;图7为图6具体实施例中预留单元的结构框图;图8为图6具体实施例中状态处理单元的结构框图;图9为本专利技术一具体实施例提供的一种计算机设备的结构框图。具体实施方式为了更充分理解本专利技术的
技术实现思路
,下面结合具体实施例对本专利技术的技术方案进一步介绍和说明,但不局限于此。应本文档来自技高网
...

【技术保护点】
1.提升掉电时数据写入速度的方法,其特征在于,所述方法包括:预留擦除单元,并设置预留的擦除单元处于擦除状态;判断系统是否出现异常掉电状态;若是,则处理NAND Flash的擦除状态;解析请求列队的请求类型,并根据请求类型进行请求处理;获取需要备份的数据以及需要回收的请求,存储于预留的擦除单元内。

【技术特征摘要】
1.提升掉电时数据写入速度的方法,其特征在于,所述方法包括:预留擦除单元,并设置预留的擦除单元处于擦除状态;判断系统是否出现异常掉电状态;若是,则处理NANDFlash的擦除状态;解析请求列队的请求类型,并根据请求类型进行请求处理;获取需要备份的数据以及需要回收的请求,存储于预留的擦除单元内。2.根据权利要求1所述的提升掉电时数据写入速度的方法,其特征在于,预留擦除单元,并设置预留的擦除单元处于擦除状态的步骤,包括以下具体步骤:预留擦除单元;将预留的擦除单元分配于不同的CH或者可独立并发操作的单元上;在颗粒允许的情况下设置预留的擦除单元处于擦除状态。3.根据权利要求1所述的提升掉电时数据写入速度的方法,其特征在于,判断系统是否出现异常掉电状态的步骤之前,还包括:获取上次掉电期间需要写入预留的擦除单元内的数据,纳入垃圾回收管理。4.根据权利要求1至3任一项所述的提升掉电时数据写入速度的方法,其特征在于,处理NANDFlash的擦除状态的步骤,包括以下具体步骤:判断系统当前是否在执行擦除操作;若否,则进入解析请求列队的请求类型,并根据请求类型进行请求处理的步骤;若是,则判断需要是否终止擦除操作;若是,则终止擦除操作;若否,则进入解析请求列队的请求类型,并根据请求类型进行请求处理的步骤。5.根据权利要求4所述的提升掉电时数据写入速度的方法,其特征在于,解析请求列队的请求类型,并根据请求类型进行请求处理的步骤,包括以下具体步骤:获取请求列队中的下一个请求;解析下一个请求的类型;判断下一个请求是否需要执行;若否,则对请求标记丢弃状态,并回收请求,返回所述获取请求列队中的下一个请求的步骤;若是,则判断当前的操作是否可安全执行请求;若是,则进入获取需要备份的数据以及需要回收的请求,存储于预留的擦除单元...

【专利技术属性】
技术研发人员:李传业冯元元胡中中
申请(专利权)人:深圳忆联信息系统有限公司
类型:发明
国别省市:广东,44

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

1