CN110377233B - Ssd读性能优化方法、装置、计算机设备及存储介质 - Google Patents

Ssd读性能优化方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN110377233B
CN110377233B CN201910662623.8A CN201910662623A CN110377233B CN 110377233 B CN110377233 B CN 110377233B CN 201910662623 A CN201910662623 A CN 201910662623A CN 110377233 B CN110377233 B CN 110377233B
Authority
CN
China
Prior art keywords
cache data
read
management table
space
logic space
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
CN201910662623.8A
Other languages
English (en)
Other versions
CN110377233A (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.)
Shenzhen Union Memory Information System Co Ltd
Original Assignee
Shenzhen Union Memory Information System 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 Shenzhen Union Memory Information System Co Ltd filed Critical Shenzhen Union Memory Information System Co Ltd
Priority to CN201910662623.8A priority Critical patent/CN110377233B/zh
Publication of CN110377233A publication Critical patent/CN110377233A/zh
Application granted granted Critical
Publication of CN110377233B publication Critical patent/CN110377233B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/061Improving I/O performance
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • 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)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及SSD读性能优化方法、装置、计算机设备及存储介质,该方法包括划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块;获取缓存数据读取管理表;获取读命令;对读命令进行读取处理,并根据读命令更新缓存数据读取管理表;根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间;若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间;在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息;从TLC物理块内读取目标逻辑空间对应的用户数据;将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取。本发明实现提升固态硬盘的读性能。

Description

SSD读性能优化方法、装置、计算机设备及存储介质
技术领域
本发明涉及固态硬盘,更具体地说是指SSD读性能优化方法、装置、计算机设备及存储介质。
背景技术
SSD(固态硬盘,Solid State Drive)已经被广泛应用于各种场合,目前在主机市场,已经逐步替代传统的硬盘驱动器,从可靠性和性能方面为用户提供较好的体验。
随着NAND工艺的演进,形成了SLC(单层式存储,Single-Level Cell)/MLC(多层式存储,Multi-Level Cell)/TLC(三层式存储,Trinary-Level Cell)/QLC(每个单元储存4位数据,Quad-Level Cell)等不同类型的颗粒。而在这些不同种类的NAND上,其性能是不一样的,伴随工艺的演进,颗粒的容量在变大,但是其读写性能却在下降。
在现有的SSD中,一般将部分物理块即转换为SLC模式,用来吸收主机新写入的数据,保持较高的写带宽,并在闲置时把数据从SLC搬移到MLC/TLC/QLC等空间去。
如图1所示,典型的NAND组成如下:可独立并发操作的单元;可独立擦除的单元,其内各个物理位置的数据写入后在下一次写之前必须要将整个可独立擦除的单元擦除;读写单元,同一物理块内的读写单元必需按顺序编程:0->1->2->3…。每个可独立并发操作的单元内有一个缓存区域,当读取数据时,数据会从NAND闪存中的内部最小单元先加载到该区域,通过NAND接口传输给控制器。如图2所示,一个典型的使用TLC NAND的SSD内部物理块分类:SLC-系统数据物理块,用于存放SSD内部管理数据,如坏块表、映射表等信息;SLC-用户写高速缓冲存储器,用于加速主机写入性能,空间小;TLC物理块,用于存放用户数据,空间大。用户数据写入通路过程中,主机新写入数据时,如果SLC-用户写高速缓冲存储器物理块有剩余空间,则数据会直接写入SLC-用户写高速缓冲存储器物理块;主机新写入数据时,如果SLC-用户写高速缓冲存储器物理块无剩余空间,则数据会直接写入TLC物理块;无主机访问请求时,SSD内部会把SLC-用户写高速缓冲存储器该物理块的数据搬移到TLC区域,从而释放高速区,为后续主机新写入数据准备空间。如图3所示,SSD的读命令处理流程为:主机提交读命令到SSD的前端模块;SSD前端模块将命令分割成映射单元,典型如4KB;提交操作请求到映射表管理模块;映射表管理模块负责把逻辑地址转换成NAND物理地址;提交操作请求到后端模块,后端模块根据物理地址发起对NAND读请求;等待NAND读操作请求完成,此时数据会加载到NAND缓存区域中;数据读取后,启动数据从NAND缓存区域到主机的传输。
但是对于一些应用场景下,对于读的性能有较高的要求,现有的策略下由于需要把数据从SLC物理块后台搬移到原始物理块类型中的MLC/TLC/QLC物理块,以释放SLC物理块空间,导致后续的读取性能较低。
因此,有必要设计一种新的方法,实现提升固态硬盘的读性能。
发明内容
本发明的目的在于克服现有技术的缺陷,提供SSD读性能优化方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:SSD读性能优化方法,包括:
划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块;
获取缓存数据读取管理表;
获取读命令;
对读命令进行读取处理,并根据读命令更新缓存数据读取管理表;
根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间;
若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间;
在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息;
从TLC物理块内读取目标逻辑空间对应的用户数据;
将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取。
其进一步技术方案为:所述对读命令进行读取处理,并根据读命令更新缓存数据读取管理表,包括:
对读命令进行对应数据的读取;
划分所述读命令,以得到读命令所覆盖的初始逻辑空间;
根据读命令所覆盖的初始逻辑空间更新缓存数据读取管理表内对应初始逻辑空间的访问计数;
对所述缓存数据读取管理表按照访问计数进行排序,以得到更新后的缓存数据读取管理表。
其进一步技术方案为:所述根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间,包括:
获取所述缓存数据读取管理表内位于排位阈值内的初始逻辑空间相关信息,以得到待判别信息;
判断所有所述待判别信息内的在读缓存数据区域标识是否为是;
若否,则有不符合要求的初始逻辑空间;
若是,则无不符合要求的初始逻辑空间。
其进一步技术方案为:所述在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息,包括:
获取缓存数据读取管理表内位于排位阈值外的初始逻辑空间相关信息,以得到待处理信息;
释放待处理信息内的在读缓存数据区域标识为是的初始逻辑空间所对应的用户读缓存数据的SLC物理块;
将释放的初始逻辑空间所对应的在读缓存数据区域标识标记为否;
对目标逻辑空间分配对应的用户读缓存数据的SLC物理块,并获取目标逻辑空间对应的用户读缓存数据的SLC物理块的索引;
在缓存数据读取管理表内,将目标逻辑空间所对应的在读缓存数据区域标识标记更新为是;
在缓存数据读取管理表内,更新目标逻辑空间对应的用户读缓存数据的SLC物理块的索引。
其进一步技术方案为:所述根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间之后,还包括:
若否,则进入结束步骤。
其进一步技术方案为:所述初始逻辑空间是按照每256*1024个连续的主机访问固态硬盘的最小单元为一个逻辑空间的规则将固态硬盘划分为若干个空间所得的。
其进一步技术方案为:所述缓存数据读取管理表包括初始逻辑空间索引、对应的访问计数、对应的在读缓存数据区域标识以及对应的用户读缓存数据的SLC物理块的索引。
本发明还提供了SSD读性能优化装置,包括:
划分单元,用于划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块;
管理表获取单元,用于获取缓存数据读取管理表;
读命令获取单元,用于获取读命令;
更新处理单元,用于对读命令进行读取处理,并根据读命令更新缓存数据读取管理表;
判断单元,用于根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间;
目标逻辑空间获取单元,用于若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间;
信息更新单元,用于在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息;
数据读取单元,用于从TLC物理块内读取目标逻辑空间对应的用户数据;
数据存储单元,用于将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块,借助缓存数据读取管理表记录主机经常访问的初始逻辑空间的相关信息,并对主机经常访问的初始逻辑空间所对应的用户数据尚未存储到对应用户读缓存数据的SLC物理块内的初始逻辑空间,进行重新分配用户读缓存数据的SLC物理块,并搬移对应的用户数据,且更新缓存数据读取管理表,主机可快速再次读取该初始逻辑空间的用户数据,实现提升固态硬盘的读性能。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的NAND物理组成示意图;
图2为现有技术的SSD内物理块分布示意图;
图3为现有技术的SSD内部读处理的流程示意图;
图4为本发明实施例提供的SSD读性能优化方法的流程示意图;
图5为本发明实施例提供的SSD读性能优化方法的子流程示意图;
图6为本发明实施例提供的SSD读性能优化方法的子流程示意图;
图7为本发明实施例提供的SSD读性能优化方法的子流程示意图;
图8为本发明实施例提供的缓存数据读取管理表更新流程示意图;
图9为本发明实施例提供的数据写入和读取的流程示意图;
图10为本发明实施例提供的SSD读性能优化装置的示意性框图;
图11为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图4,图4为本发明实施例提供的SSD读性能优化方法的示意性流程图。该SSD读性能优化方法应用于带有固态硬盘的设备中。该设备与主机进行数据交互,实现读命令的获取,并根据主机下发的读命令进行对应管理表以及数据的处理。
图4是本发明实施例提供的SSD读性能优化方法的流程示意图。如图1所示,该方法包括以下步骤S110至S150。
S110、划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块。
在本实施例中,用户读缓存数据的SLC物理块是指用于主机后续直接调用内部数据完成读命令的处理的物理块,该物理块是由SLC物理块内划分出指定部分所形成的,该物理块用于加速主机经常访问的数据读取性能。
具体地,每个访问频率较高的初始逻辑空间均具有一个用户读缓存数据的SLC物理块,当存在访问频率较高的初始逻辑空间没有设置用户读缓存数据的SLC物理块时,出现读命令需要读取该初始逻辑空间所对应的TLC物理块内的用户数据时,需要对其进行用户读缓存数据的SLC物理块的设置,以便于及时更新缓存数据读取管理表,实现提升读性能。
S120、获取缓存数据读取管理表。
在本实施例中,缓存数据读取管理表是一个用于记录主机读取数据所对应的初始逻辑空间的规律的表格,如图8所示,该缓存数据读取管理表包括初始逻辑空间索引、对应的访问计数、对应的在读缓存数据区域标识以及对应的用户读缓存数据的SLC物理块的索引。
其中,初始逻辑空间索引是指代对应的固态硬盘逻辑空间分区,在读缓存数据区域标识指的是对应的用户数据是否存储在对应的用户读缓存数据的SLC物理块;对应的用户读缓存数据的SLC物理块的索引是指该初始逻辑空间对应的用户读缓存数据的SLC物理块的具体位置。
S130、获取读命令。
在本实施例中,读命令是由主机下发至固态硬盘的读取数据的指令。
S140、对读命令进行读取处理,并根据读命令更新缓存数据读取管理表。
在一实施例中,请参阅图5,上述的步骤S140可包括步骤S141~S144。
S141、对读命令进行对应数据的读取。
在本实施例中,如图9所示,具体是主机提交读命令到SSD的前端模块;前端模块将命令分割成映射单元,典型如4KB,提交操作请求到映射表管理模块,同时,如果是读命令,则将该命令提交到读统计模块;映射表管理模块负责把逻辑地址转换成NAND物理地址;提交操作请求到后端模块,后端模块根据物理地址发起对NAND读请求;等待NAND读操作请求完成,此时数据会加载到NAND缓存区域中;数据读取后,启动数据从NAND缓存区域到主机的传输。
S142、划分所述读命令,以得到读命令所覆盖的初始逻辑空间。
在本实施例中,将读命令按照根据配置好的初始逻辑空间大小,分解成所覆盖的初始逻辑空间,比如当前读命令覆盖了第一初始逻辑空间以及第二初始逻辑空间,则按照初始逻辑空间大小,将其拆分为关于第一初始逻辑空间的命令以及关于第二初始逻辑空间的命令,以便于后续更新缓存数据读取管理表内对应的初始逻辑空间的访问计数。
在一实施例中,初始逻辑空间是按照每256*1024个连续的主机访问固态硬盘的最小单元为一个逻辑空间的规则将固态硬盘划分为若干个空间所得的,其中,主机访问固态硬盘的最小单元为512个字节。
举个例子:初始逻辑空间索引为初始逻辑空间1表示从第0个主机访问固态硬盘的最小单元到第(256*1024-1)个主机访问固态硬盘的最小单元空间;初始逻辑空间索引为初始逻辑空间2表示从第256*1024个主机访问固态硬盘的最小单元到第(512*1024-1)个主机访问固态硬盘的最小单元的空间;初始逻辑空间索引为初始逻辑空间3表示从第512*1024个主机访问固态硬盘的最小单元到第(768*1024-1)个主机访问固态硬盘的最小单元空间,......,以此类推,将固态硬盘划分为若干个初始逻辑空间。
对于每个读命令,会携带其访问的主机访问固态硬盘的最小单元空间的起始地址以及主机访问固态硬盘的最小单元空间的总数量,根据此即可得知其覆盖到的初始逻辑空间的范围。
S143、根据读命令所覆盖的初始逻辑空间更新缓存数据读取管理表内对应初始逻辑空间的访问计数。
在本实施例中,缓存数据读取管理表内,读命令所覆盖的初始逻辑空间对应的访问计数进行递增。
S144、对所述缓存数据读取管理表按照访问计数进行排序,以得到更新后的缓存数据读取管理表。
在本实施例中,具体是按照访问计数从多到少进行排序,以得到识别到主机经常访问的初始逻辑空间。
S150、根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间。
在一实施例中,请参阅图6,上述的步骤S150可包括步骤S151~S154。
S151、获取所述缓存数据读取管理表内位于排位阈值内的初始逻辑空间相关信息,以得到待判别信息。
在本实施例中,待判别信息是指主机经常访问的初始逻辑空间的相关信息。
S152、判断所有所述待判别信息内的在读缓存数据区域标识是否为是;
S153、若否,则有不符合要求的初始逻辑空间;
S154、若是,则无不符合要求的初始逻辑空间。
检查缓存数据读取管理表内的前N个记录,N指代的是排名阈值,N=NAND上保留的用户读缓存数据的SLC物理块大小/初始逻辑空间大小;当所有的记录内的在读缓存数据区域标识均为是,则表明已经将主机经常访问的这些初始逻辑空间所对应的用户数据存储到对应用户读缓存数据的SLC物理块内,不存在不符合要求的初始逻辑空间,当缓存数据读取管理表内的前N个记录的在读缓存数据区域标识存在否的话,则表明存在主机经常访问的初始逻辑空间所对应的用户数据尚未存储到对应用户读缓存数据的SLC物理块内,则表明有不符合要求的初始逻辑空间。
S160、若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间。
在本实施例中,目标逻辑空间指的是主机经常访问的初始逻辑空间所对应的用户数据尚未存储到对应用户读缓存数据的SLC物理块内的初始逻辑空间。
具体是将待判别信息内的在读缓存数据区域标识为否所对应的初始逻辑空间作为目标逻辑空间。
S170、在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息。
在本实施例中,目标逻辑空间的相关信息包括目标逻辑空间索引、对应的访问计数、对应的在读缓存数据区域标识以及对应的用户读缓存数据的SLC物理块的索引。
在一实施例中,请参阅图7,上述的步骤S170可包括步骤S171~S176。
S171、获取缓存数据读取管理表内位于排位阈值外的初始逻辑空间相关信息,以得到待处理信息;
S172、释放待处理信息内的在读缓存数据区域标识为是的初始逻辑空间所对应的用户读缓存数据的SLC物理块;
S173、将释放的初始逻辑空间所对应的在读缓存数据区域标识标记为否;
S174、对目标逻辑空间分配对应的用户读缓存数据的SLC物理块,并获取目标逻辑空间对应的用户读缓存数据的SLC物理块的索引;
S175、在缓存数据读取管理表内,将目标逻辑空间所对应的在读缓存数据区域标识标记更新为是;
S176、在缓存数据读取管理表内,更新目标逻辑空间对应的用户读缓存数据的SLC物理块的索引。
从缓存数据读取管理表中排序N位以后的初始逻辑空间中查找“在读缓存数据区域标识”的标志为“是”的记录,释放其对应的用户读缓存数据的SLC物理块空间(由用户读缓存数据的SLC物理块的索引指示),并将“在读缓存数据区域标识”的标志修改为“否”;为新的初始逻辑空间即目标初始逻辑空间分配对应的用户读缓存数据的SLC物理块,并将其对应的“在读缓存数据区域标识”的标志修改为“是”,同时将所分配的用户读缓存数据的SLC物理块更新到缓存数据读取管理表内对应的表项的“用户读缓存数据的SLC物理块的索引”。
S180、从TLC物理块内读取目标逻辑空间对应的用户数据。
在本实施例中,由固态硬盘内部发起读操作,将对应的用户数据从TLC物理块读出。
S190、将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取。
具体地,将读取的数据写入到为目标逻辑空间所分配的用户读缓存数据的SLC物理块内。后续主机再读取该初始逻辑空间的用户数据,则会从的用户读缓存数据的SLC物理块内输出数据,提升了读性能。
若否,则进入结束步骤。
用户数据写入过程中,主机新写入数据时,如果SLC–用户写高速缓冲存储器有剩余空间,则数据会直接写入SLC–用户写高速缓冲存储器物理块;如果SLC–用户写高速缓冲存储器物理块;无剩余空间,则数据会直接写入TLC物理块内,在无主机访问请求时,SSD内部会把SLC–用户写高速缓冲存储器内的数据搬移到TLC区域,从而释放高速区,为后续主机新写入数据准备空间;无主机访问请求时,且识别到主机经常访问的某个初始逻辑空间尚未被加载到用户读缓存数据的SLC物理块时,则将数据从TLC物理块搬移到用户读缓存数据的SLC物理块,为后续的主机访问提供高性能带宽;后台主动将主机经常访问的逻辑空间数据加载到用户读缓存数据的SLC物理块中,大大提升了读性能。
上述的SSD读性能优化方法,通过划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块,借助缓存数据读取管理表记录主机经常访问的初始逻辑空间的相关信息,并对主机经常访问的初始逻辑空间所对应的用户数据尚未存储到对应用户读缓存数据的SLC物理块内的初始逻辑空间,进行重新分配用户读缓存数据的SLC物理块,并搬移对应的用户数据,且更新缓存数据读取管理表,主机可快速再次读取该初始逻辑空间的用户数据,实现提升固态硬盘的读性能。
图10是本发明实施例提供的一种SSD读性能优化装置300的示意性框图。如图10所示,对应于以上SSD读性能优化方法,本发明还提供一种SSD读性能优化装置300。该SSD读性能优化装置300包括用于执行上述SSD读性能优化方法的单元,该装置可以被配置于带有固态硬盘中。
具体地,请参阅图10,该SSD读性能优化装置300包括:
划分单元301,用于划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块;
管理表获取单元302,用于获取缓存数据读取管理表;
读命令获取单元303,用于获取读命令;
更新处理单元304,用于对读命令进行读取处理,并根据读命令更新缓存数据读取管理表;
判断单元305,用于根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间;
目标逻辑空间获取单元306,用于若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间;
信息更新单元307,用于在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息;
数据读取单元308,用于从TLC物理块内读取目标逻辑空间对应的用户数据;
数据存储单元309,用于将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取。
在一实施例中,所述更新处理单元304包括:
读取子单元,用于对读命令进行对应数据的读取;
划分子单元,用于划分所述读命令,以得到读命令所覆盖的初始逻辑空间;
计数更新子单元,用于根据读命令所覆盖的初始逻辑空间更新缓存数据读取管理表内对应初始逻辑空间的访问计数;
排序子单元,用于对所述缓存数据读取管理表按照访问计数进行排序,以得到更新后的缓存数据读取管理表。
在一实施例中,所述判断单元305包括:
待判别信息获取子单元,用于获取所述缓存数据读取管理表内位于排位阈值内的初始逻辑空间相关信息,以得到待判别信息;
标识判断子单元,用于判断所有所述待判别信息内的在读缓存数据区域标识是否为是;若否,则有不符合要求的初始逻辑空间;若是,则无不符合要求的初始逻辑空间。
在一实施例中,所述信息更新单元307包括:
待处理信息获取子单元,用于获取缓存数据读取管理表内位于排位阈值外的初始逻辑空间相关信息,以得到待处理信息;
释放子单元,用于释放待处理信息内的在读缓存数据区域标识为是的初始逻辑空间所对应的用户读缓存数据的SLC物理块;
标记子单元,用于将释放的初始逻辑空间所对应的在读缓存数据区域标识标记为否;
分配子单元,用于对目标逻辑空间分配对应的用户读缓存数据的SLC物理块,并获取目标逻辑空间对应的用户读缓存数据的SLC物理块的索引;
标记更新子单元,用于在缓存数据读取管理表内,将目标逻辑空间所对应的在读缓存数据区域标识标记更新为是;
索引更新子单元,用于在缓存数据读取管理表内,更新目标逻辑空间对应的用户读缓存数据的SLC物理块的索引。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述SSD读性能优化装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述SSD读性能优化装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图11所示的计算机设备上运行。
请参阅图11,图11是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备可以是带固态硬盘的设备。
参阅图11,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种SSD读性能优化方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种SSD读性能优化方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块;
获取缓存数据读取管理表;
获取读命令;
对读命令进行读取处理,并根据读命令更新缓存数据读取管理表;
根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间;
若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间;
在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息;
从TLC物理块内读取目标逻辑空间对应的用户数据;
将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取。
其中,所述初始逻辑空间是按照每256*1024个连续的主机访问固态硬盘的最小单元为一个逻辑空间的规则将固态硬盘划分为若干个空间所得的。
所述缓存数据读取管理表包括初始逻辑空间索引、对应的访问计数、对应的在读缓存数据区域标识以及对应的用户读缓存数据的SLC物理块的索引。
在一实施例中,处理器502在实现所述对读命令进行读取处理,并根据读命令更新缓存数据读取管理表步骤时,具体实现如下步骤:
对读命令进行对应数据的读取;
划分所述读命令,以得到读命令所覆盖的初始逻辑空间;
根据读命令所覆盖的初始逻辑空间更新缓存数据读取管理表内对应初始逻辑空间的访问计数;
对所述缓存数据读取管理表按照访问计数进行排序,以得到更新后的缓存数据读取管理表。
在一实施例中,处理器502在实现所述根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间步骤时,具体实现如下步骤:
获取所述缓存数据读取管理表内位于排位阈值内的初始逻辑空间相关信息,以得到待判别信息;
判断所有所述待判别信息内的在读缓存数据区域标识是否为是;
若否,则有不符合要求的初始逻辑空间;
若是,则无不符合要求的初始逻辑空间。
在一实施例中,处理器502在实现所述在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息步骤时,具体实现如下步骤:
获取缓存数据读取管理表内位于排位阈值外的初始逻辑空间相关信息,以得到待处理信息;
释放待处理信息内的在读缓存数据区域标识为是的初始逻辑空间所对应的用户读缓存数据的SLC物理块;
将释放的初始逻辑空间所对应的在读缓存数据区域标识标记为否;
对目标逻辑空间分配对应的用户读缓存数据的SLC物理块,并获取目标逻辑空间对应的用户读缓存数据的SLC物理块的索引;
在缓存数据读取管理表内,将目标逻辑空间所对应的在读缓存数据区域标识标记更新为是;
在缓存数据读取管理表内,更新目标逻辑空间对应的用户读缓存数据的SLC物理块的索引。
在一实施例中,处理器502在实现所述根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间步骤之后,还实现如下步骤:
若否,则进入结束步骤。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块;
获取缓存数据读取管理表;
获取读命令;
对读命令进行读取处理,并根据读命令更新缓存数据读取管理表;
根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间;
若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间;
在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息;
从TLC物理块内读取目标逻辑空间对应的用户数据;
将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取。
其中,所述初始逻辑空间是按照每256*1024个连续的主机访问固态硬盘的最小单元为一个逻辑空间的规则将固态硬盘划分为若干个空间所得的。
所述缓存数据读取管理表包括初始逻辑空间索引、对应的访问计数、对应的在读缓存数据区域标识以及对应的用户读缓存数据的SLC物理块的索引。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对读命令进行读取处理,并根据读命令更新缓存数据读取管理表步骤时,具体实现如下步骤:
对读命令进行对应数据的读取;
划分所述读命令,以得到读命令所覆盖的初始逻辑空间;
根据读命令所覆盖的初始逻辑空间更新缓存数据读取管理表内对应初始逻辑空间的访问计数;
对所述缓存数据读取管理表按照访问计数进行排序,以得到更新后的缓存数据读取管理表。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间步骤时,具体实现如下步骤:
获取所述缓存数据读取管理表内位于排位阈值内的初始逻辑空间相关信息,以得到待判别信息;
判断所有所述待判别信息内的在读缓存数据区域标识是否为是;
若否,则有不符合要求的初始逻辑空间;
若是,则无不符合要求的初始逻辑空间。
在一实施例中,所述处理器在执行所述计算机程序而实现所述在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息步骤时,具体实现如下步骤:
获取缓存数据读取管理表内位于排位阈值外的初始逻辑空间相关信息,以得到待处理信息;
释放待处理信息内的在读缓存数据区域标识为是的初始逻辑空间所对应的用户读缓存数据的SLC物理块;
将释放的初始逻辑空间所对应的在读缓存数据区域标识标记为否;
对目标逻辑空间分配对应的用户读缓存数据的SLC物理块,并获取目标逻辑空间对应的用户读缓存数据的SLC物理块的索引;
在缓存数据读取管理表内,将目标逻辑空间所对应的在读缓存数据区域标识标记更新为是;
在缓存数据读取管理表内,更新目标逻辑空间对应的用户读缓存数据的SLC物理块的索引。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间步骤之后,还实现如下步骤:
若否,则进入结束步骤。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种SSD读性能优化方法,其特征在于,包括:
划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块;
获取缓存数据读取管理表;
获取读命令;
对读命令进行读取处理,并根据读命令更新缓存数据读取管理表;
根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间;
若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间;
在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息;
从TLC物理块内读取目标逻辑空间对应的用户数据;
将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取;
所述缓存数据读取管理表包括初始逻辑空间索引、对应的访问计数、对应的在读缓存数据区域标识以及对应的用户读缓存数据的SLC物理块的索引;
所述根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间,包括:
获取所述缓存数据读取管理表内位于排位阈值内的初始逻辑空间相关信息,以得到待判别信息;
判断所有所述待判别信息内的在读缓存数据区域标识是否为是;
若否,则有不符合要求的初始逻辑空间;
若是,则无不符合要求的初始逻辑空间。
2.根据权利要求1所述的SSD读性能优化方法,其特征在于,所述对读命令进行读取处理,并根据读命令更新缓存数据读取管理表,包括:
对读命令进行对应数据的读取;
划分所述读命令,以得到读命令所覆盖的初始逻辑空间;
根据读命令所覆盖的初始逻辑空间更新缓存数据读取管理表内对应初始逻辑空间的访问计数;
对所述缓存数据读取管理表按照访问计数进行排序,以得到更新后的缓存数据读取管理表。
3.根据权利要求1所述的SSD读性能优化方法,其特征在于,所述在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息,包括:
获取缓存数据读取管理表内位于排位阈值外的初始逻辑空间相关信息,以得到待处理信息;
释放待处理信息内的在读缓存数据区域标识为是的初始逻辑空间所对应的用户读缓存数据的SLC物理块;
将释放的初始逻辑空间所对应的在读缓存数据区域标识标记为否;
对目标逻辑空间分配对应的用户读缓存数据的SLC物理块,并获取目标逻辑空间对应的用户读缓存数据的SLC物理块的索引;
在缓存数据读取管理表内,将目标逻辑空间所对应的在读缓存数据区域标识标记更新为是;
在缓存数据读取管理表内,更新目标逻辑空间对应的用户读缓存数据的SLC物理块的索引。
4.根据权利要求1至3任一项所述的SSD读性能优化方法,其特征在于,所述根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间之后,还包括:
若否,则进入结束步骤。
5.根据权利要求1所述的SSD读性能优化方法,其特征在于,所述初始逻辑空间是按照每256*1024个连续的主机访问固态硬盘的最小单元为一个逻辑空间的规则将固态硬盘划分为若干个空间所得的。
6.一种SSD读性能优化装置,其特征在于,包括:
划分单元,用于划分固态硬盘的SLC物理块,以得到用户读缓存数据的SLC物理块;
管理表获取单元,用于获取缓存数据读取管理表;
读命令获取单元,用于获取读命令;
更新处理单元,用于对读命令进行读取处理,并根据读命令更新缓存数据读取管理表;
判断单元,用于根据更新后的缓存数据读取管理表判断是否有不符合要求的初始逻辑空间;
目标逻辑空间获取单元,用于若是,则获取不符合要求的初始逻辑空间,以得到目标逻辑空间;
信息更新单元,用于在更新后的缓存数据读取管理表内更新目标逻辑空间的相关信息;
数据读取单元,用于从TLC物理块内读取目标逻辑空间对应的用户数据;
数据存储单元,用于将目标逻辑空间对应的用户数据存储至目标逻辑空间对应的用户读缓存数据的SLC物理块内,以供主机再次读取;
所述缓存数据读取管理表包括初始逻辑空间索引、对应的访问计数、对应的在读缓存数据区域标识以及对应的用户读缓存数据的SLC物理块的索引;
所述判断单元包括:
待判别信息获取子单元,用于获取所述缓存数据读取管理表内位于排位阈值内的初始逻辑空间相关信息,以得到待判别信息;
标识判断子单元,用于判断所有所述待判别信息内的在读缓存数据区域标识是否为是;若否,则有不符合要求的初始逻辑空间;若是,则无不符合要求的初始逻辑空间。
7.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的方法。
8.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至5中任一项所述的方法。
CN201910662623.8A 2019-07-22 2019-07-22 Ssd读性能优化方法、装置、计算机设备及存储介质 Active CN110377233B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910662623.8A CN110377233B (zh) 2019-07-22 2019-07-22 Ssd读性能优化方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910662623.8A CN110377233B (zh) 2019-07-22 2019-07-22 Ssd读性能优化方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN110377233A CN110377233A (zh) 2019-10-25
CN110377233B true CN110377233B (zh) 2022-03-29

Family

ID=68254815

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910662623.8A Active CN110377233B (zh) 2019-07-22 2019-07-22 Ssd读性能优化方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN110377233B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825662A (zh) * 2019-11-04 2020-02-21 深圳芯邦科技股份有限公司 一种数据更新方法、系统及相关装置
CN113392036B (zh) * 2020-03-11 2024-02-02 深圳星火半导体科技有限公司 固态存储器及其数据写入方法、装置
CN112445429B (zh) * 2020-10-30 2022-08-05 至誉科技(武汉)有限公司 固态硬盘物理块的管理方法及系统
CN113010111A (zh) * 2021-03-05 2021-06-22 深圳忆联信息系统有限公司 Ssd访问加速方法、装置、计算机设备及存储介质
CN113835640A (zh) * 2021-09-27 2021-12-24 深圳忆联信息系统有限公司 闪存缓存清空的实现方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677654A (zh) * 2012-09-24 2014-03-26 联想(北京)有限公司 一种存储数据的方法及电子设备
CN104346291A (zh) * 2013-08-05 2015-02-11 炬芯(珠海)科技有限公司 一种存储器的存储方法及存储系统
CN106776361A (zh) * 2017-03-10 2017-05-31 安徽大学 一种面向大规模非易失性存储介质的缓存方法和系统
CN107450858A (zh) * 2017-08-11 2017-12-08 湖南国科微电子股份有限公司 一种固态硬盘分级存储方法及系统
CN107608625A (zh) * 2017-08-11 2018-01-19 记忆科技(深圳)有限公司 一种提升固存储设备读性能的方法
CN107943713A (zh) * 2017-11-22 2018-04-20 深圳忆联信息系统有限公司 一种提升固态硬盘读性能的方法及固态硬盘

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI447580B (zh) * 2012-04-03 2014-08-01 Phison Electronics Corp 管理記憶體空間的方法、記憶體控制器與記憶體儲存裝置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677654A (zh) * 2012-09-24 2014-03-26 联想(北京)有限公司 一种存储数据的方法及电子设备
CN104346291A (zh) * 2013-08-05 2015-02-11 炬芯(珠海)科技有限公司 一种存储器的存储方法及存储系统
CN106776361A (zh) * 2017-03-10 2017-05-31 安徽大学 一种面向大规模非易失性存储介质的缓存方法和系统
CN107450858A (zh) * 2017-08-11 2017-12-08 湖南国科微电子股份有限公司 一种固态硬盘分级存储方法及系统
CN107608625A (zh) * 2017-08-11 2018-01-19 记忆科技(深圳)有限公司 一种提升固存储设备读性能的方法
CN107943713A (zh) * 2017-11-22 2018-04-20 深圳忆联信息系统有限公司 一种提升固态硬盘读性能的方法及固态硬盘

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DuraCache: A durable SSD cache using MLC NAND flash;Ren-Shuo Liu;《IEEE》;20130718;全文 *
基于NAND闪存的固态硬盘缓存区管理算法研究;李永伟;《中国优秀硕士学位论文全文数据库(信息科技辑)》;20180715;第I137-51页 *

Also Published As

Publication number Publication date
CN110377233A (zh) 2019-10-25

Similar Documents

Publication Publication Date Title
CN110377233B (zh) Ssd读性能优化方法、装置、计算机设备及存储介质
US10628319B2 (en) Methods for caching and reading data to be programmed into a storage unit and apparatuses using the same
US11704239B2 (en) Garbage collection method for storage medium, storage medium, and program product
US8990480B2 (en) Semiconductor memory device and computer program product
EP2439645B1 (en) Method and apparatus for storing data in a multi-level cell flash memory device
TWI437439B (zh) 用來以動態門檻進行區塊管理之方法及記憶裝置及控制器
US10372619B2 (en) Data backup method, data recovery method and storage controller
US8174912B2 (en) Systems and methods for circular buffering control in a memory device
US10635358B2 (en) Memory management method and storage controller
US11157399B2 (en) Data storage devices and data processing methods with dynamic programming scheme
US10203899B2 (en) Method for writing data into flash memory apparatus, flash memory apparatus, and storage system
US11204864B2 (en) Data storage devices and data processing methods for improving the accessing performance of the data storage devices
US11176035B2 (en) Data storage devices and data processing methods
CN107122130B (zh) 一种数据重删方法及装置
CN115114180A (zh) 在快闪存储器中进行耗损平衡操作的方法和相关控制器以及储存系统
CN113031866B (zh) 一种应用于SSD的Trim管理方法
CN113574497A (zh) 数据存储方法及存储芯片
US20210397375A1 (en) Memory control method, memory storage device and memory control circuit unit
CN114974365A (zh) Ssd有限窗口数据去重识别方法、装置和计算机设备
CN114968104A (zh) 一种数据存储设备的数据写入方法与系统及数据存储设备
US11307786B2 (en) Data storage devices and data processing methods
US11886335B2 (en) Memory system and controlling method of performing rewrite operation at maximum rewrite speed
CN112802512B (zh) 存储控制器以及存储装置初始化方法
CN109189348B (zh) 基于电荷捕获型3d tlc闪存的存储系统的读性能优化方法
US20240202113A1 (en) Memory system

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