CN108762670B - 一种ssd固件中数据块的管理方法、***及装置 - Google Patents
一种ssd固件中数据块的管理方法、***及装置 Download PDFInfo
- Publication number
- CN108762670B CN108762670B CN201810495702.XA CN201810495702A CN108762670B CN 108762670 B CN108762670 B CN 108762670B CN 201810495702 A CN201810495702 A CN 201810495702A CN 108762670 B CN108762670 B CN 108762670B
- Authority
- CN
- China
- Prior art keywords
- block
- data
- ssd
- unstable
- open
- 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
Links
- 239000007787 solid Substances 0.000 title claims description 12
- 238000007726 management method Methods 0.000 title description 20
- 238000000034 method Methods 0.000 claims abstract description 56
- 238000012545 processing Methods 0.000 claims abstract description 39
- 230000008569 process Effects 0.000 claims abstract description 28
- 238000012546 transfer Methods 0.000 claims abstract description 12
- 238000012937 correction Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种SSD固件中数据块的管理方法、***及装置,包括:当确定SSD中存在不稳定的block时,判断不稳定的block是否为open block;若是,则对open block进行关闭操作,并对应打开稳定且未使用中的block,将open block中的数据对应搬移至未使用中的block,以成功完成数据搬移处理;若否,则对满足条件的closed block直接进行数据搬移处理。可见,本申请在SSD中的数据块正在执行操作的过程中,若数据块出现不稳定的情况,则将不稳定的数据块中的数据搬移至稳定的数据块上继续执行操作,从而保证了SSD中数据的完整性及正确性,提高了存储***的性能。
Description
技术领域
本发明涉及存储技术领域,特别是涉及一种SSD固件中数据块的管理方法、***及装置。
背景技术
随着互联网、云计算等技术的发展及广泛应用,计算机***在使用过程中会产生海量的数据,并需要对这些海量的数据进行处理和存储,从而对存储***的性能提出了更高的要求。现有技术中,SSD(Solid State Drives,固态硬盘)由于其读写速度快、能耗低,被广泛应用于存储***,可见,SSD中存储的数据的完整性及正确性对于存储***的性能至关重要。但是,在SSD中的数据块正在执行操作的过程中,数据块可能出现不稳定的情况,若在不稳定的数据块上继续执行操作,会破坏SSD中数据的完整性及正确性,从而降低存储***的性能。
因此,如何提供一种解决上述技术问题的方案是本领域的技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种SSD固件中数据块的管理方法、***及装置,在SSD中的数据块正在执行操作的过程中,若数据块出现不稳定的情况,则将不稳定的数据块中的数据搬移至稳定的数据块上继续执行操作,从而保证了SSD中数据的完整性及正确性,提高了存储***的性能。
为解决上述技术问题,本发明提供了一种SSD固件中数据块的管理方法,包括:
当确定固态硬盘SSD中存在不稳定的block时,判断不稳定的所述block是否为open block;
若是,则对所述open block进行关闭操作,并对应打开稳定且未使用中的block,将所述open block中的数据对应搬移至未使用中的所述block,以完成数据搬移处理,其中,未使用中的所述block的空闲存储空间不小于所述open block中数据所占的存储空间;
若否,则对满足条件的closed block直接进行数据搬移处理。
优选地,所述确定固态硬盘SSD中存在不稳定的block的过程包括:
当SSD中存在写操作和/或读操作失败的block时,确定操作失败的block不稳定。
优选地,所述确定固态硬盘SSD中存在不稳定的block的过程还包括:
当所述SSD中存在读操作未失败且读操作次数大于预设读取门限的block时,确定超出所述读取门限的block不稳定;
当所述SSD中存在静置时间大于预设静置门限的block时,确定超出所述静置门限的block不稳定。
优选地,所述block读操作失败的确定过程具体为:
当所述block中数据的纠错编码失效时,确定该block读操作失败。
优选地,该管理方法还包括:
当所述block写操作和/或读操作失败时,显示操作失败标志,以提醒用户所述SSD的当前操作状态。
优选地,在对应打开稳定且未使用中的block,将所述open block中的数据对应搬移至未使用中的所述block之前,该管理方法还包括:
将所述open block在原始存储数据的基础上使用无效数据继续填充N页数据,以稳定所述原始存储数据,其中,N为正整数且N≥4;
则所述将所述open block中的数据对应搬移至未使用中的所述block的过程具体为:
将所述open block中的原始存储数据对应搬移至未使用中的所述block。
为解决上述技术问题,本发明还提供了一种SSD固件中数据块的管理***,包括:
判断单元,用于当确定SSD中存在不稳定的block时,判断不稳定的所述block是否为open block,若是,则触发第一搬移单元,若否,则触发第二搬移单元;
所述第一搬移单元,用于对所述open block进行关闭操作,并对应打开稳定且未使用中的block,将所述open block中的数据对应搬移至未使用中的所述block,以完成数据搬移处理,其中,未使用中的所述block的空闲存储空间不小于所述open block中数据所占的存储空间;
所述第二搬移单元,用于对满足条件的closed block直接进行数据搬移处理。
优选地,所述确定SSD中存在不稳定的block的过程包括:
当SSD中存在写操作和/或读操作失败的block时,确定操作失败的block不稳定;
当所述SSD中存在读操作未失败且读操作次数大于预设读取门限的block时,确定超出所述读取门限的block不稳定;
当所述SSD中存在静置时间大于预设静置门限的block时,确定超出所述静置门限的block不稳定。
优选地,该管理***还包括:
数据填充单元,用于在对应打开稳定且未使用中的block之前,将所述open block在原始存储数据的基础上使用无效数据继续填充N页数据,以稳定所述原始存储数据,其中,N为正整数且N≥4;
则所述第一搬移单元具体用于对所述open block进行关闭操作,并对应打开稳定且未使用中的block,将所述open block中的原始存储数据对应搬移至未使用中的所述block,以完成数据搬移处理,其中,未使用中的所述block的空闲存储空间不小于所述openblock中原始存储数据所占的存储空间。
为解决上述技术问题,本发明还提供了一种SSD固件中数据块的管理装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一种SSD固件中数据块的管理方法的步骤。
本发明提供了一种SSD固件中数据块的管理方法,包括:当确定SSD中存在不稳定的block时,判断不稳定的block是否为open block;若是,则对open block进行关闭操作,并对应打开稳定且未使用中的block,将open block中的数据对应搬移至未使用中的block,以完成数据搬移处理,其中,未使用中的block的空闲存储空间不小于open block中数据所占的存储空间;若否,则对满足条件的closed block直接进行数据搬移处理。
本申请首先判断SSD中是否存在不稳定的block,当存在时,再判断不稳定的block是否为open block,即使用中的数据块。若是,则对open block进行关闭操作,并且,对应打开稳定且未使用中的block,将open block中的数据对应搬移至未使用中的block,从而成功完成数据搬移处理。若否,则不稳定的block为closed block,对closed block直接进行数据搬移处理即可。可见,本申请在SSD中的数据块正在执行操作的过程中,若数据块出现不稳定的情况,则将不稳定的数据块中的数据搬移至稳定的数据块上继续执行操作,从而保证了SSD中数据的完整性及正确性,提高了存储***的性能。
本发明还提供了一种SSD固件中数据块的管理***及装置,与上述管理方法具有相同的有益效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种SSD固件中数据块的管理方法的流程图;
图2为本发明提供的一种SSD固件中数据块的管理***的结构示意图。
具体实施方式
本发明的核心是提供一种SSD固件中数据块的管理方法、***及装置,在SSD中的数据块正在执行操作的过程中,若数据块出现不稳定的情况,则将不稳定的数据块中的数据搬移至稳定的数据块上继续执行操作,从而保证了SSD中数据的完整性及正确性,提高了存储***的性能。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,图1为本发明提供的一种SSD固件中数据块的管理方法的流程图。
该管理方法包括:
步骤S1:当确定固态硬盘SSD中存在不稳定的block时,判断不稳定的block是否为open block;
需要说明的是,本申请中的预设是提前设置好的,只需要设置一次,除非根据实际情况需要修改,否则不需要重新设置。
具体地,SSD是由固态电子存储芯片阵列制成的硬盘,由控制单元和存储单元组成。在SSD使用的过程中,SSD中block的状态包括open block、closed block及used block等状态。open block是正在执行写操作的block,即使用中的block,比如,当SSD第一次执行写操作时,SSD的闪存转换层会从block池中获取一个block以处理数据的写入,则该block的状态变为open block。closed block是由open block执行完写操作后再执行关闭操作得到,而used block是closed block中,最后一页被写入数据的block。
考虑到block正在执行操作的过程中,若自身不稳定,则会破坏SSD中数据的完整性及正确性,所以本申请首先判断SSD中各block是否稳定,若存在不稳定的block时,则判断不稳定的block是否为open block,从而确定不稳定的block的状态,为后期数据保护处理打下基础。
步骤S2:若是,则对open block进行关闭操作,并对应打开稳定且未使用中的block,将open block中的数据对应搬移至未使用中的block,以完成数据搬移处理,其中,未使用中的block的空闲存储空间不小于open block中数据所占的存储空间;若否,则对满足条件的closed block直接进行数据搬移处理。
具体地,若不稳定的block是open block,说明不稳定的open block正在执行写操作,考虑到SSD中NAND flash memory的特性,应对不稳定的open block进行关闭操作,然后将关闭的不稳定的block中的数据进行数据搬移处理。其中,数据搬移处理的过程包括:首先,针对关闭的不稳定的block,对应打开稳定且未使用中的block,这里未使用中的block包括从未使用过的block(新的block)和已使用过但当前未使用的block(当前未执行写操作的block),至于未使用中的block的选取,只要保证未使用中的block的空闲存储空间不小于关闭的不稳定的block中数据所占的存储空间即可;然后,将关闭的不稳定的block中的数据对应搬移至未使用中的block,从而完成数据搬移处理。
若不稳定的block不是open block,则说明不稳定的block是closed block,直接将不稳定的closed block中的数据进行数据搬移处理即可。具体地,针对不稳定的closedblock,对应打开稳定且未使用中的block,然后,将不稳定的closed block中的数据对应搬移至未使用中的block,从而完成数据搬移处理。可见,本申请将正在执行操作且不稳定的block中的数据,搬移至稳定的block上继续执行操作,从而保证了SSD中数据的完整性及正确性,提高了存储***的性能。
本发明提供了一种SSD固件中数据块的管理方法,包括:当确定SSD中存在不稳定的block时,判断不稳定的block是否为open block;若是,则对open block进行关闭操作,并对应打开稳定且未使用中的block,将open block中的数据对应搬移至未使用中的block,以完成数据搬移处理,其中,未使用中的block的空闲存储空间不小于open block中数据所占的存储空间;若否,则对满足条件的closed block直接进行数据搬移处理。
本申请首先判断SSD中是否存在不稳定的block,当存在时,再判断不稳定的block是否为open block,即使用中的数据块。若是,则对open block进行关闭操作,并且,对应打开稳定且未使用中的block,将open block中的数据对应搬移至未使用中的block,从而成功完成数据搬移处理。若否,则不稳定的block为closed block,对closed block直接进行数据搬移处理即可。可见,本申请在SSD中的数据块正在执行操作的过程中,若数据块出现不稳定的情况,则将不稳定的数据块中的数据搬移至稳定的数据块上继续执行操作,从而保证了SSD中数据的完整性及正确性,提高了存储***的性能。
在上述实施例的基础上:
作为一种优选地实施例,确定固态硬盘SSD中存在不稳定的block的过程包括:
当SSD中存在写操作和/或读操作失败的block时,确定操作失败的block不稳定。
具体地,当SSD中的block出现写操作或读操作失败的情况时,表明block的状态不稳定,则确定操作失败的block不稳定,以便于执行数据保护处理步骤。另外,SSD中的block可能同时进行写操作和读操作,当SSD中的block同时出现写操作和读操作失败的情况时,更加表明block的状态不稳定,则采用同步的机制执行数据保护处理步骤。也就是说,一个block出现写操作失败的情况时,会执行数据保护处理步骤,该block同时出现读操作失败的情况时,不会重复执行数据保护处理步骤,从而通过异步处理转同步处理保护数据的正确性。
作为一种优选地实施例,确定固态硬盘SSD中存在不稳定的block的过程还包括:
当SSD中存在读操作未失败且读操作次数大于预设读取门限的block时,确定超出读取门限的block不稳定;
当SSD中存在静置时间大于预设静置门限的block时,确定超出静置门限的block不稳定。
具体地,考虑到某个block在读操作次数不断累加的过程中,即使读操作未失败,也会出现error bit数增多,当error bit数达到一定数量后,会出现读操作失败的情况,所以,本申请从SSD中选出读操作未失败的block,并累计读操作未失败的block的读操作次数,当读操作次数大于所设的读取门限时,说明此时的error bit数很可能会导致读操作失败,则确定超出读取门限的block不稳定,以便于执行数据保护处理步骤,降低了读操作的失败率,提高了存储***的性能。
本申请还考虑到某个block在静置(不执行读操作也不执行写操作)一定时间后,该block已写入的数据会随着时间的延长丢失掉部分数据,即error bit数增多,同样当error bit数达到一定数量后,再进行读操作时会出现读操作失败的情况,所以,本申请从block开始静置时,累计该block的静置时间,并将静置时间与所设静置门限比较,当该block的静置时间大于所设静置门限时,说明此时的error bit数很可能会导致后期读操作失败,则确定超出静置门限的block不稳定,以便于执行数据保护处理步骤,进一步降低了读操作的失败率,提高了存储***的性能。
可见,本申请采用多级保护与处理机制,使得block在不同条件下均可进行数据保护处理,从而保证block在使用上的正确性。
作为一种优选地实施例,block读操作失败的确定过程具体为:
当block中数据的纠错编码失效时,确定该block读操作失败。
具体地,若block内包含120字节的数据,其中,100字节是供用户读取的内容,20字节是纠错编码,当出错的字节过多时,纠错编码无法将出错的字节纠正,即纠错编码失效,则会导致后期读操作失败,所以,当block中数据的纠错编码失效时,确定该block读操作失败。
作为一种优选地实施例,该管理方法还包括:
当block写操作和/或读操作失败时,显示操作失败标志,以提醒用户SSD的当前操作状态。
进一步地,本申请还可以当block写操作和/或读操作失败时,显示操作失败标志,从而起到告知用户SSD的当前操作状态的作用。
作为一种优选地实施例,在对应打开稳定且未使用中的block,将open block中的数据对应搬移至未使用中的block之前,该管理方法还包括:
将open block在原始存储数据的基础上使用无效数据继续填充N页数据,以稳定原始存储数据,其中,N为正整数且N≥4;
则将open block中的数据对应搬移至未使用中的block的过程具体为:
将open block中的原始存储数据对应搬移至未使用中的block。
进一步地,为了提高关闭的不稳定的block中数据的稳定性,将关闭的不稳定的block在原始存储数据的基础上,使用无效数据继续填充超过4页的数据,从而稳定原始存储数据。然后,将原始存储数据对应搬移至稳定且未使用中的block,以保证数据的完整性及正确性。
比如,N=4时,关闭的不稳定的block写入数据到了第A页,需要将第A+1页到第A+4页写入数据,从而保证关闭的不稳定的block上第1页到第A页的数据是稳定的,之后将第1页到第A页的数据重新写到新打开的block即可,其中,A为正整数。
请参照图2,图2为本发明提供的一种SSD固件中数据块的管理***的结构示意图。
该管理***包括:
判断单元1,用于当确定SSD中存在不稳定的block时,判断不稳定的block是否为open block,若是,则触发第一搬移单元,若否,则触发第二搬移单元;
第一搬移单元2,用于对open block进行关闭操作,并对应打开稳定且未使用中的block,将open block中的数据对应搬移至未使用中的block,以完成数据搬移处理,其中,未使用中的block的空闲存储空间不小于open block中数据所占的存储空间;
第二搬移单元3,用于对满足条件的closed block直接进行数据搬移处理。
作为一种优选地实施例,确定SSD中存在不稳定的block的过程包括:
当SSD中存在写操作和/或读操作失败的block时,确定操作失败的block不稳定;
当SSD中存在读操作未失败且读操作次数大于预设读取门限的block时,确定超出读取门限的block不稳定;
当SSD中存在静置时间大于预设静置门限的block时,确定超出静置门限的block不稳定。
作为一种优选地实施例,该管理***还包括:
数据填充单元,用于在对应打开稳定且未使用中的block之前,将open block在原始存储数据的基础上使用无效数据继续填充N页数据,以稳定原始存储数据,其中,N为正整数且N≥4;
则第一搬移单元2具体用于对open block进行关闭操作,并对应打开稳定且未使用中的block,将open block中的原始存储数据对应搬移至未使用中的block,以完成数据搬移处理,其中,未使用中的block的空闲存储空间不小于open block中原始存储数据所占的存储空间。
本申请提供的管理***的介绍请参考上述管理方法实施例,本申请在此不再赘述。
本发明还提供了一种SSD固件中数据块的管理装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现上述任一种SSD固件中数据块的管理方法的步骤。
本申请提供的管理装置的介绍请参考上述管理方法实施例,本申请在此不再赘述。
还需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种SSD固件中数据块的管理方法,其特征在于,包括:
当确定固态硬盘SSD中存在不稳定的block时,判断不稳定的所述block是否为openblock;
若是,则对所述open block进行关闭操作,并对应打开稳定且未使用中的block,将所述open block中的数据对应搬移至未使用中的所述block,以完成数据搬移处理,其中,未使用中的所述block的空闲存储空间不小于所述open block中数据所占的存储空间;
若否,则对满足条件的closed block直接进行数据搬移处理。
2.如权利要求1所述的SSD固件中数据块的管理方法,其特征在于,所述确定固态硬盘SSD中存在不稳定的block的过程包括:
当SSD中存在写操作和/或读操作失败的block时,确定操作失败的block不稳定。
3.如权利要求2所述的SSD固件中数据块的管理方法,其特征在于,所述确定固态硬盘SSD中存在不稳定的block的过程还包括:
当所述SSD中存在读操作未失败且读操作次数大于预设读取门限的block时,确定超出所述读取门限的block不稳定;
当所述SSD中存在静置时间大于预设静置门限的block时,确定超出所述静置门限的block不稳定。
4.如权利要求2所述的SSD固件中数据块的管理方法,其特征在于,所述block读操作失败的确定过程具体为:
当所述block中数据的纠错编码失效时,确定该block读操作失败。
5.如权利要求4所述的SSD固件中数据块的管理方法,其特征在于,该管理方法还包括:
当所述block写操作和/或读操作失败时,显示操作失败标志,以提醒用户所述SSD的当前操作状态。
6.如权利要求1-5任一项所述的SSD固件中数据块的管理方法,其特征在于,在对应打开稳定且未使用中的block,将所述open block中的数据对应搬移至未使用中的所述block之前,该管理方法还包括:
将所述open block在原始存储数据的基础上使用无效数据继续填充N页数据,以稳定所述原始存储数据,其中,N为正整数且N≥4;
则所述将所述open block中的数据对应搬移至未使用中的所述block的过程具体为:
将所述open block中的原始存储数据对应搬移至未使用中的所述block。
7.一种SSD固件中数据块的管理***,其特征在于,包括:
判断单元,用于当确定SSD中存在不稳定的block时,判断不稳定的所述block是否为open block,若是,则触发第一搬移单元,若否,则触发第二搬移单元;
所述第一搬移单元,用于对所述open block进行关闭操作,并对应打开稳定且未使用中的block,将所述open block中的数据对应搬移至未使用中的所述block,以完成数据搬移处理,其中,未使用中的所述block的空闲存储空间不小于所述open block中数据所占的存储空间;
所述第二搬移单元,用于对满足条件的closed block直接进行数据搬移处理。
8.如权利要求7所述的SSD固件中数据块的管理***,其特征在于,所述确定SSD中存在不稳定的block的过程包括:
当SSD中存在写操作和/或读操作失败的block时,确定操作失败的block不稳定;
当所述SSD中存在读操作未失败且读操作次数大于预设读取门限的block时,确定超出所述读取门限的block不稳定;
当所述SSD中存在静置时间大于预设静置门限的block时,确定超出所述静置门限的block不稳定。
9.如权利要求7-8任一项所述的SSD固件中数据块的管理***,其特征在于,该管理***还包括:
数据填充单元,用于在对应打开稳定且未使用中的block之前,将所述open block在原始存储数据的基础上使用无效数据继续填充N页数据,以稳定所述原始存储数据,其中,N为正整数且N≥4;
则所述第一搬移单元具体用于对所述open block进行关闭操作,并对应打开稳定且未使用中的block,将所述open block中的原始存储数据对应搬移至未使用中的所述block,以完成数据搬移处理,其中,未使用中的所述block的空闲存储空间不小于所述open block中原始存储数据所占的存储空间。
10.一种SSD固件中数据块的管理装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1-6任一项所述的SSD固件中数据块的管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810495702.XA CN108762670B (zh) | 2018-05-22 | 2018-05-22 | 一种ssd固件中数据块的管理方法、***及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810495702.XA CN108762670B (zh) | 2018-05-22 | 2018-05-22 | 一种ssd固件中数据块的管理方法、***及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108762670A CN108762670A (zh) | 2018-11-06 |
CN108762670B true CN108762670B (zh) | 2021-06-29 |
Family
ID=64008423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810495702.XA Active CN108762670B (zh) | 2018-05-22 | 2018-05-22 | 一种ssd固件中数据块的管理方法、***及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108762670B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542349A (zh) * | 2018-11-20 | 2019-03-29 | 郑州云海信息技术有限公司 | 一种数据块处理方法、装置和计算机可读存储介质 |
CN110955392A (zh) * | 2019-12-03 | 2020-04-03 | 山东华芯半导体有限公司 | 一种ssd中在线监测数据存储时间的方法 |
CN112463053B (zh) * | 2020-11-27 | 2023-01-06 | 苏州浪潮智能科技有限公司 | 一种固态硬盘的数据写入方法和装置 |
US12026384B2 (en) | 2022-08-26 | 2024-07-02 | Western Digital Technologies, Inc. | Open block relocation |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102298543A (zh) * | 2011-09-15 | 2011-12-28 | 成都市华为赛门铁克科技有限公司 | 一种存储器管理方法和装置 |
CN103713969A (zh) * | 2013-12-30 | 2014-04-09 | 华为技术有限公司 | 提高固态硬盘可靠性方法和装置 |
CN103914397A (zh) * | 2013-01-09 | 2014-07-09 | 深圳市江波龙电子有限公司 | 闪存存储设备及其管理方法 |
CN104679661A (zh) * | 2013-11-27 | 2015-06-03 | 阿里巴巴集团控股有限公司 | 混合存储的控制方法及混合存储*** |
CN107391300A (zh) * | 2017-07-26 | 2017-11-24 | 湖南国科微电子股份有限公司 | 一种提高闪存数据存储可靠性的方法及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8909855B2 (en) * | 2012-08-08 | 2014-12-09 | Avalanche Technology, Inc. | Storage system employing MRAM and physically addressed solid state disk |
-
2018
- 2018-05-22 CN CN201810495702.XA patent/CN108762670B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102298543A (zh) * | 2011-09-15 | 2011-12-28 | 成都市华为赛门铁克科技有限公司 | 一种存储器管理方法和装置 |
CN103914397A (zh) * | 2013-01-09 | 2014-07-09 | 深圳市江波龙电子有限公司 | 闪存存储设备及其管理方法 |
CN104679661A (zh) * | 2013-11-27 | 2015-06-03 | 阿里巴巴集团控股有限公司 | 混合存储的控制方法及混合存储*** |
CN103713969A (zh) * | 2013-12-30 | 2014-04-09 | 华为技术有限公司 | 提高固态硬盘可靠性方法和装置 |
CN107391300A (zh) * | 2017-07-26 | 2017-11-24 | 湖南国科微电子股份有限公司 | 一种提高闪存数据存储可靠性的方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN108762670A (zh) | 2018-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108762670B (zh) | 一种ssd固件中数据块的管理方法、***及装置 | |
US8463826B2 (en) | Incremental garbage collection for non-volatile memories | |
US8832530B2 (en) | Techniques associated with a read and write window budget for a two level memory system | |
KR102437591B1 (ko) | 불휘발성 메모리 시스템의 동작 방법 및 메모리 컨트롤러의 동작 방법 | |
CN111752487B (zh) | 一种数据恢复方法、装置及固态硬盘 | |
US9189325B2 (en) | Memory system and operation method thereof | |
JP4729062B2 (ja) | メモリシステム | |
TWI541819B (zh) | 用來進行錯誤更正之方法、記憶裝置、與控制器 | |
US7725646B2 (en) | Method of using a flash memory for a circular buffer | |
US11348636B2 (en) | On-demand high performance mode for memory write commands | |
JP5631938B2 (ja) | 半導体記憶装置 | |
CN108762989B (zh) | 固态硬盘的数据存储方法、装置、设备及可读存储介质 | |
US12013762B2 (en) | Meta data protection against unexpected power loss in a memory system | |
TWI608350B (zh) | 儲存裝置及其控制單元、可用於儲存裝置的資料搬移方 法 | |
WO2023174394A1 (zh) | 一种数据处理方法和装置 | |
TWI692688B (zh) | 快閃記憶體控制器及相關電子裝置 | |
US20230359363A1 (en) | Method and Apparatus for Writing Data into SSD | |
CN110069362B (zh) | 数据储存装置与数据处理方法 | |
CN116991326A (zh) | 一种块数据保护方法、装置、设备及存储介质 | |
CN111488118A (zh) | 管理闪存模块的方法及相关的闪存控制器与电子装置 | |
TWI662554B (zh) | 儲存裝置及其控制單元、可用於儲存裝置的資料搬移方法 | |
US20190080257A1 (en) | Checkpointing disk configuration using machine learning | |
US11994947B2 (en) | Multi-layer code rate architecture for special event protection with reduced performance penalty | |
TWI632458B (zh) | 儲存裝置及其控制單元、可用於儲存裝置的資料搬移方法 | |
CN105224890A (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 |