CN113253943B - 一种优化固态硬盘中open block的方法、装置、设备及可读介质 - Google Patents

一种优化固态硬盘中open block的方法、装置、设备及可读介质 Download PDF

Info

Publication number
CN113253943B
CN113253943B CN202110760844.6A CN202110760844A CN113253943B CN 113253943 B CN113253943 B CN 113253943B CN 202110760844 A CN202110760844 A CN 202110760844A CN 113253943 B CN113253943 B CN 113253943B
Authority
CN
China
Prior art keywords
block
data
open
time
solid state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110760844.6A
Other languages
English (en)
Other versions
CN113253943A (zh
Inventor
苏军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202110760844.6A priority Critical patent/CN113253943B/zh
Publication of CN113253943A publication Critical patent/CN113253943A/zh
Application granted granted Critical
Publication of CN113253943B publication Critical patent/CN113253943B/zh
Priority to PCT/CN2021/127406 priority patent/WO2023279593A1/zh
Priority to US18/039,233 priority patent/US11822439B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明提供了一种优化固态硬盘中open block的方法、装置、设备及可读介质,该方法包括:每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中;实时监控表格中是否有新的记录;响应于监控到表格中有新的记录,判断新的记录的block是否有异常下电标记;响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block。通过使用本发明的方案,能够有效地在解决open block纠错的问题,同时避免了对性能造成的影响,使固态硬盘性能更加稳定。

Description

一种优化固态硬盘中open block的方法、装置、设备及可读 介质
技术领域
本领域涉及计算机领域,并且更具体地涉及一种优化固态硬盘中open block的方法、装置、设备及可读介质。
背景技术
随着互联网、云计算、物联网等技术的发展及广泛应用,在人类生活中,时时刻刻都会产生海量的数据需要处理及存储,信息技术的高速发展对存储系统的性能提出了更高的要求。固态硬盘因其读写速度快、能耗较低,而被广泛采用。但由于NAND(固态硬盘)本身的特性,受硬件电气特定的影响,即当NAND中的block(块)在没有写满时,经过一定时间之后,该block最后写入的一层(layer)的数据会变的不稳定,称这种现象为open block现象,此处会有较大概率出现这些数据纠错失败。
目前通常的做法是使用表纠错或者通过多填写一层dummy数据的方式来解决问题。但上述方式的实际应用也存在一些隐患。在某些情况下,即使使用表纠错也有一定概率会出现纠错失败。
发明内容
有鉴于此,本发明实施例的目的在于提出一种优化固态硬盘中open block的方法、装置、设备及可读介质,通过使用本发明的技术方案,能够有效地在解决open block纠错的问题,同时避免了对性能造成的影响,使固态硬盘性能更加稳定。
基于上述目的,本发明的实施例的一个方面提供了一种优化固态硬盘中openblock的方法,包括以下步骤:
每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中;
实时监控表格中是否有新的记录;
响应于监控到表格中有新的记录,判断新的记录的block是否有异常下电标记;
响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block。
根据本发明的一个实施例,还包括:
响应于新的记录的block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中。
根据本发明的一个实施例,还包括:
响应于检测到固态硬盘异常下电,将未写满的block标记为open block,使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block。
根据本发明的一个实施例,每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中包括:
设置定时器,基于block开始写数据的时间和定时器到时的时间判断未写满的block的数据的保持时间;
将未写满的block的数据的保持时间与阈值时间进行比较;
响应于所述未写满的block的数据的保持时间大于阈值时间,将保持时间大于阈值时间的block放入表格中。
根据本发明的一个实施例,响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block包括:
使用SLC数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block。
本发明的实施例的另一个方面,还提供了一种优化固态硬盘中open block的装置,装置包括:
检测模块,检测模块配置为每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中;
监控模块,监控模块配置为实时监控表格中是否有新的记录;
判断模块,判断模块配置为响应于监控到表格中有新的记录,判断新的记录的block是否有异常下电标记;
写入模块,写入模块配置为响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block。
根据本发明的一个实施例,写入模块还配置为:
响应于新的记录的block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中。
根据本发明的一个实施例,还包括标记模块,标记模块配置为:
响应于检测到固态硬盘异常下电,将未写满的block标记为open block,使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block。
根据本发明的一个实施例,检测模块还配置为:
设置定时器,基于block开始写数据的时间和定时器到时的时间判断未写满的block的数据的保持时间;
将未写满的block的数据的保持时间与阈值时间进行比较;
响应于所述未写满的block的数据的保持时间大于所述阈值时间,将保持时间大于所述阈值时间的block放入所述表格中。
根据本发明的一个实施例,写入模块还配置为:
使用SLC数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block。
本发明的实施例的另一个方面,还提供了一种计算机设备,该计算机设备包括:
至少一个处理器;以及
存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述任意一项方法的步骤。
本发明的实施例的另一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述任意一项方法的步骤。
本发明具有以下有益技术效果:本发明实施例提供的优化固态硬盘中open block的方法,通过每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中;实时监控表格中是否有新的记录;响应于监控到表格中有新的记录,判断新的记录的block是否有异常下电标记;响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block的技术方案,能够有效地在解决open block纠错的问题,同时避免了对性能造成的影响,使固态硬盘性能更加稳定。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为根据本发明一个实施例的优化固态硬盘中open block的方法的示意性流程图;
图2为根据本发明一个实施例的优化固态硬盘中open block的装置的示意图;
图3为根据本发明一个实施例的计算机设备的示意图;
图4为根据本发明一个实施例的计算机可读存储介质的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
基于上述目的,本发明的实施例的第一个方面,提出了一种优化固态硬盘中openblock的方法的一个实施例。图1示出的是该方法的示意性流程图。
如图1中所示,该方法可以包括以下步骤:
S1每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中。
当固态硬盘中的block没有写满时,经过一定时间之后,该block最后写入的一层的数据会变的不稳定,这种现象称为open block现象,可以设置一个定时器,依次判断每一个未写满的block的数据保持时间,该数据保持时间为当block开始写数据时到定时器检测的时间点的时间的差值,然后将保持时间与设定的阈值时间进行比较,如果保持时间超过设定的阈值时间,则可认定该block为open block,然后将该block的信息放入一个表格中,如果保持时间没有超过设定的阈值时间,则该block不为open block,不做处理,等待下一轮检测即可。
S2实时监控表格中是否有新的记录。
S3响应于监控到表格中有新的记录,判断新的记录的block是否有异常下电标记。
在有新的记录产生时,需要判断新的记录的block是否有异常下电标记,如果出现了异常下电的情况,会将block进行标记。
S4响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block。
如果block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中,如果block有异常的下电标记,则使用SLC(Single-Level Cell,即1bit/单元)数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block,并将该block的信息保存在配置信息中。
通过本发明的技术方案,能够有效地在解决open block纠错的问题,同时避免了对性能造成的影响,使固态硬盘性能更加稳定。
在本发明的一个优选实施例中,还包括:
响应于新的记录的block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中。如果当前block中的数据类型为TLC格式的数据,则使用TLC格式的DUMMY内容填写到当前block的下一层数据中,如果当前block中的数据类型为SLC格式的数据,则使用SLC格式的DUMMY内容填写到当前block的下一层数据中。
在本发明的一个优选实施例中,还包括:
响应于检测到固态硬盘异常下电,将未写满的block标记为open block,使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block。如果出现固态硬盘异常下电的情况,则将所有的未写满的block都标记为open block,然后使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block,同时将block的信息保存到配置信息中,再次上电时,检测配置信息,若检测到有使用SLC数据格式的DUMMY内容封住 block的情况,则将SLC数据格式的DUMMY内容删除,再按照正常流程处理该block。
在本发明的一个优选实施例中,每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中包括:
设置定时器,基于block开始写数据的时间和定时器到时的时间判断未写满的block的数据的保持时间;
将未写满的block的数据的保持时间与阈值时间进行比较;
响应于所述未写满的block的数据的保持时间大于阈值时间,将保持时间大于阈值时间的block放入表格中。
在本发明的一个优选实施例中,响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block包括:
使用SLC数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block。
通过本发明的技术方案,能够有效地在解决open block纠错的问题,同时避免了对性能造成的影响,使固态硬盘性能更加稳定。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
此外,根据本发明实施例公开的方法还可以被实现为由CPU 执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被CPU 执行时,执行本发明实施例公开的方法中限定的上述功能。
基于上述目的,本发明的实施例的第二个方面,提出了一种优化固态硬盘中openblock的装置,如图2所示,装置200包括:
检测模块201,检测模块201配置为每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中。
当固态硬盘中的block在没有写满时,经过一定时间之后,该block最后写入的一层的数据会变的不稳定,这种现象称为open block现象,可以设置一个定时器,依次判断每一个未写满的block的数据保持时间,该数据保持时间为当block开始写数据时到定时器检测的时间点的时间的差值,然后将保持时间与设定的阈值时间进行比较,如果保持时间超过设定的阈值时间,则可认定该block为open block,然后将该block的信息放入一个表格中,如果保持时间没有超过设定的阈值时间,则该block不为open block,不做处理,等待下一轮检测即可。
监控模块202,监控模块202配置为实时监控表格中是否有新的记录。
判断模块203,判断模块203配置为响应于监控到表格中有新的记录,判断新的记录的block是否有异常下电标记。
在有新的记录产生时,需要判断新的记录的block是否有异常下电标记,如果出现了异常下电的情况,会将block进行标记。
写入模块204,写入模块204配置为响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block。
如果block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中,如果block有异常的下电标记,则使用SLC(Single-Level Cell,即1bit/单元)数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block,并将该block的信息保存在配置信息中。
在本发明的一个优选实施例中,写入模块还配置为:
响应于新的记录的block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中。如果当前block中的数据类型为TLC格式的数据,则使用TLC格式的DUMMY内容填写到当前block的下一层数据中,如果当前block中的数据类型为SLC格式的数据,则使用SLC格式的DUMMY内容填写到当前block的下一层数据中。
在本发明的一个优选实施例中,还包括标记模块,标记模块配置为:
响应于检测到固态硬盘异常下电,将未写满的block标记为open block,使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block。如果出现固态硬盘异常下电的情况,则将所有的未写满的block都标记为open block,然后使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block,同时将block的信息保存到配置信息中,再次上电时,检测配置信息,若检测到有使用SLC数据格式的DUMMY内容封住 block的情况,则将SLC数据格式的DUMMY内容删除,再按照正常流程处理该block。
在本发明的一个优选实施例中,检测模块还配置为:
设置定时器,基于block开始写数据的时间和定时器到时的时间判断未写满的block的数据的保持时间;
将未写满的block的数据的保持时间与阈值时间进行比较;
响应于所述未写满的block的数据的保持时间大于所述阈值时间,将保持时间大于所述阈值时间的block放入所述表格中。
在本发明的一个优选实施例中,写入模块还配置为:
使用SLC数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block。
基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备。图3示出的是本发明提供的计算机设备的实施例的示意图。如图3所示,本发明实施例包括如下装置:至少一个处理器S21;以及存储器S22,存储器S22存储有可在处理器上运行的计算机指令S23,指令由处理器执行时实现以下方法步骤:
S1每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中。
当固态硬盘中的block在没有写满时,经过一定时间之后,该block最后写入的一层的数据会变的不稳定,这种现象称为open block现象,可以设置一个定时器,依次判断每一个未写满的block的数据保持时间,该数据保持时间为当block开始写数据时到定时器检测的时间点的时间的差值,然后将保持时间与设定的阈值时间进行比较,如果保持时间超过设定的阈值时间,则可认定该block为open block,然后将该block的信息放入一个表格中,如果保持时间没有超过设定的阈值时间,则该block不为open block,不做处理,等待下一轮检测即可。
S2实时监控表格中是否有新的记录。
S3响应于监控到表格中有新的记录,判断新的记录的block是否有异常下电标记。
在有新的记录产生时,需要判断新的记录的block是否有异常下电标记,如果出现了异常下电的情况,会将block进行标记。
S4响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block。
如果block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中,如果block有异常的下电标记,则使用SLC(Single-Level Cell,即1bit/单元)数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block,并将该block的信息保存在配置信息中。
在本发明的一个优选实施例中,还包括:
响应于新的记录的block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中。如果当前block中的数据类型为TLC格式的数据,则使用TLC格式的DUMMY内容填写到当前block的下一层数据中,如果当前block中的数据类型为SLC格式的数据,则使用SLC格式的DUMMY内容填写到当前block的下一层数据中。
在本发明的一个优选实施例中,还包括:
响应于检测到固态硬盘异常下电,将未写满的block标记为open block,使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block。如果出现固态硬盘异常下电的情况,则将所有的未写满的block都标记为open block,然后使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block,同时将block的信息保存到配置信息中,再次上电时,检测配置信息,若检测到有使用SLC数据格式的DUMMY内容封住 block的情况,则将SLC数据格式的DUMMY内容删除,再按照正常流程处理该block。
在本发明的一个优选实施例中,每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中包括:
设置定时器,基于block开始写数据的时间和定时器到时的时间判断未写满的block的数据的保持时间;
将未写满的block的数据的保持时间与阈值时间进行比较;
响应于所述未写满的block的数据的保持时间大于阈值时间,将保持时间大于阈值时间的block放入表格中。
在本发明的一个优选实施例中,响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block包括:
使用SLC数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block。
基于上述目的,本发明实施例的第四个方面,提出了一种计算机可读存储介质。图4示出的是本发明提供的计算机可读存储介质的实施例的示意图。如图4所示,计算机可读存储介质S31存储有被处理器执行时执行以下方法的计算机程序S32:
每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中;
实时监控所述表格中是否有新的记录;
响应于监控到所述表格中有新的记录,判断新的记录的block是否有异常下电标记;
响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block。
在本发明的一个优选实施例中,还包括:
响应于新的记录的block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中。
在本发明的一个优选实施例中,还包括:
响应于检测到固态硬盘异常下电,将未写满的block标记为open block,使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block。
在本发明的一个优选实施例中,每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中包括:
设置定时器,基于block开始写数据的时间和定时器到时的时间判断未写满的block的数据的保持时间;
将未写满的block的数据的保持时间与阈值时间进行比较;
响应于所述未写满的block的数据的保持时间大于所述阈值时间,将保持时间大于所述阈值时间的block放入所述表格中。
在本发明的一个优选实施例中,响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block包括:
使用SLC数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block。
此外,根据本发明实施例公开的方法还可以被实现为由处理器执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被处理器执行时,执行本发明实施例公开的方法中限定的上述功能。
此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (8)

1.一种优化固态硬盘中open block的方法,其特征在于,包括以下步骤:
每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中;
实时监控所述表格中是否有新的记录;
响应于监控到所述表格中有新的记录,判断新的记录的block是否有异常下电标记;
响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block;
响应于检测到固态硬盘异常下电,将未写满的block标记为open block,使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block。
2.根据权利要求1所述的方法,其特征在于,还包括:
响应于新的记录的block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中。
3.根据权利要求1所述的方法,其特征在于,每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中包括:
设置定时器,基于block开始写数据的时间和定时器到时的时间判断未写满的block的数据的保持时间;
将未写满的block的数据的保持时间与阈值时间进行比较;
响应于所述未写满的block的数据的保持时间大于所述阈值时间,将保持时间大于所述阈值时间的block放入所述表格中。
4.根据权利要求1所述的方法,其特征在于,响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block包括:
使用SLC数据格式的DUMMY内容填写到有异常下电标记的block的下一层数据以封住block。
5.一种优化固态硬盘中open block的装置,其特征在于,所述装置包括:
检测模块,所述检测模块配置为每经过预设时间检测固态硬盘中的block是否处于open block的状态,并将检测到的处于open block状态的block放入表格中;
监控模块,所述监控模块配置为实时监控所述表格中是否有新的记录;
判断模块,所述判断模块配置为响应于监控到所述表格中有新的记录,判断新的记录的block是否有异常下电标记;
写入模块,所述写入模块配置为响应于新的记录的block有异常下电标记,使用预设格式的内容填写到有异常下电标记的block的下一层数据以封住block;
标记模块,所述标记模块配置为响应于检测到固态硬盘异常下电,将未写满的block标记为open block,使用SLC数据格式的DUMMY内容填写到标记为open block的block的下一层数据以封住block。
6.根据权利要求5所述的装置,其特征在于,所述写入模块还配置为:
响应于新的记录的block没有异常下电标记,使用当前block中的数据类型的DUMMY内容填写到当前block的下一层数据中。
7.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-4任意一项所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-4任意一项所述方法的步骤。
CN202110760844.6A 2021-07-06 2021-07-06 一种优化固态硬盘中open block的方法、装置、设备及可读介质 Active CN113253943B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110760844.6A CN113253943B (zh) 2021-07-06 2021-07-06 一种优化固态硬盘中open block的方法、装置、设备及可读介质
PCT/CN2021/127406 WO2023279593A1 (zh) 2021-07-06 2021-10-29 一种优化固态硬盘中open block的方法、装置、设备及可读介质
US18/039,233 US11822439B1 (en) 2021-07-06 2021-10-29 Method and apparatus for optimizing open block in solid-state drive, device, and readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110760844.6A CN113253943B (zh) 2021-07-06 2021-07-06 一种优化固态硬盘中open block的方法、装置、设备及可读介质

Publications (2)

Publication Number Publication Date
CN113253943A CN113253943A (zh) 2021-08-13
CN113253943B true CN113253943B (zh) 2021-10-12

Family

ID=77190776

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110760844.6A Active CN113253943B (zh) 2021-07-06 2021-07-06 一种优化固态硬盘中open block的方法、装置、设备及可读介质

Country Status (3)

Country Link
US (1) US11822439B1 (zh)
CN (1) CN113253943B (zh)
WO (1) WO2023279593A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113253943B (zh) * 2021-07-06 2021-10-12 苏州浪潮智能科技有限公司 一种优化固态硬盘中open block的方法、装置、设备及可读介质
CN114265552B (zh) * 2021-12-06 2022-09-02 北京得瑞领新科技有限公司 固态硬盘对写入块的处理方法及装置、存储介质、设备
CN115729478B (zh) * 2023-01-10 2023-05-02 苏州浪潮智能科技有限公司 固态硬盘block修正方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10048863B1 (en) * 2016-06-01 2018-08-14 Seagate Technology Llc Open block refresh management
CN109542349A (zh) * 2018-11-20 2019-03-29 郑州云海信息技术有限公司 一种数据块处理方法、装置和计算机可读存储介质
CN110389716A (zh) * 2018-04-19 2019-10-29 慧荣科技股份有限公司 数据存储装置及应用其的预防数据错误方法
CN111736765A (zh) * 2020-05-28 2020-10-02 苏州浪潮智能科技有限公司 一种数据块状态的监管方法、设备以及介质
CN111831218A (zh) * 2019-04-18 2020-10-27 爱思开海力士有限公司 控制器及其操作方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE9308472U1 (de) * 1993-06-07 1993-09-02 Pax Schweikhard Gmbh Dreh-Kipp-Beschlag für Fenster, Türen o.dgl.
US10114557B2 (en) * 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
CN113253943B (zh) * 2021-07-06 2021-10-12 苏州浪潮智能科技有限公司 一种优化固态硬盘中open block的方法、装置、设备及可读介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10048863B1 (en) * 2016-06-01 2018-08-14 Seagate Technology Llc Open block refresh management
CN110389716A (zh) * 2018-04-19 2019-10-29 慧荣科技股份有限公司 数据存储装置及应用其的预防数据错误方法
CN109542349A (zh) * 2018-11-20 2019-03-29 郑州云海信息技术有限公司 一种数据块处理方法、装置和计算机可读存储介质
CN111831218A (zh) * 2019-04-18 2020-10-27 爱思开海力士有限公司 控制器及其操作方法
CN111736765A (zh) * 2020-05-28 2020-10-02 苏州浪潮智能科技有限公司 一种数据块状态的监管方法、设备以及介质

Also Published As

Publication number Publication date
US20230350768A1 (en) 2023-11-02
US11822439B1 (en) 2023-11-21
WO2023279593A1 (zh) 2023-01-12
CN113253943A (zh) 2021-08-13

Similar Documents

Publication Publication Date Title
CN113253943B (zh) 一种优化固态硬盘中open block的方法、装置、设备及可读介质
KR101721154B1 (ko) 구성가능 에러 문턱값들 및 고장 해석 능력을 지니는 메모리 시스템
US8966345B2 (en) Selective error correction in memory to reduce power consumption
US20170277603A1 (en) Data saving method, device and terminal
TW201411343A (zh) 資料儲存裝置與快閃記憶體控制方法
CN111736765B (zh) 一种数据块状态的监管方法、设备以及介质
CN110347335A (zh) 一种固态硬盘数据存储方法、装置
CN110543281A (zh) 一种存储压缩实现方法、装置、设备及存储介质
CN113223583A (zh) NAND Flash坏块内数据重读的方法、电子设备及存储介质
KR20220056783A (ko) 비정상적 셧다운과 연관된 효율적인 데이터 저장 이용
CN112732181B (zh) 一种ssd的数据迁移方法及相关装置
CN112068772A (zh) 数据存储方法、数据存储装置及存储装置
GB2605543A (en) Method and system to improve read reliability in memory devices
CN111563003A (zh) 一种设备状态监控装置、方法、设备及介质
WO2023138264A1 (zh) 一种ssd数据管理方法及相关组件
JP2014059831A (ja) メモリリフレッシュ装置、情報処理システム、メモリリフレッシュ方法、および、コンピュータ・プログラム
CN113625947B (zh) 一种数据纠错方法、装置、设备及计算机可读存储介质
US11733911B2 (en) Storage device and storage device management method
US11803307B2 (en) Memory system and operating method thereof
CN108038035A (zh) 一种闪存读写状态的检测方法及相关装置
CN110908606B (zh) 一种分布式文件系统的数据重构方法
CN115756297A (zh) 一种预防读取错误的方法、系统及数据存储设备
CN107407953B (zh) 降低内存功耗的方法及计算机设备
CN110794945A (zh) 一种存储服务器备电方法、装置、设备及存储介质
CN109213446B (zh) 写缓存模式的切换方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant