CN112684981A - 固态硬盘读操作记录方法、***、装置及可读存储介质 - Google Patents

固态硬盘读操作记录方法、***、装置及可读存储介质 Download PDF

Info

Publication number
CN112684981A
CN112684981A CN202011557586.3A CN202011557586A CN112684981A CN 112684981 A CN112684981 A CN 112684981A CN 202011557586 A CN202011557586 A CN 202011557586A CN 112684981 A CN112684981 A CN 112684981A
Authority
CN
China
Prior art keywords
buffer structure
current buffer
read
pba
block
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.)
Granted
Application number
CN202011557586.3A
Other languages
English (en)
Other versions
CN112684981B (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.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data 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 Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN202011557586.3A priority Critical patent/CN112684981B/zh
Publication of CN112684981A publication Critical patent/CN112684981A/zh
Application granted granted Critical
Publication of CN112684981B publication Critical patent/CN112684981B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本申请公开了一种固态硬盘读操作记录方法、***、装置及可读存储介质,该方法包括:读取当前PBA;判断当前缓冲结构中block是否与PBA对应的block相同;若是,对当前缓冲结构中count值加一;若否,确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据PBA重置当前缓冲结构。本申请利用缓冲结构,将对同一个block中连续PBA的读操作计数计入缓冲结构中count值,在更换block时再将缓冲结构中count值加入DDR,不需针对每个PBA的读操作来访问DDR,减少了DDR访问时间,数据读速度获得提升,提高了固态硬盘的读性能。

Description

固态硬盘读操作记录方法、***、装置及可读存储介质
技术领域
本发明涉及固态硬盘领域,特别涉及一种固态硬盘读操作记录方法、***、装置及可读存储介质。
背景技术
在固态硬盘的实际使用过程中,每次读取PBA(Physics Block Address,物理块地址)的数据后,会对该PBA对应的block属性(blockinfo)中的读计数变量read cnt进行加一操作,该变量用于记录对该block执行读操作的次数,当该block被执行擦操作,该变量清零。
由于block属性存储于DDR(Double Data Rate,双倍速率同步动态随机存储器)中,每次执行对read cnt的加一操作,均需要访问DDR,频繁地访问DDR拉长了读数据时间,影响了固态硬盘的读性能。
因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种固态硬盘读操作记录方法、***、装置及可读存储介质,以优化固态硬盘的读性能。其具体方案如下:
一种固态硬盘读操作记录方法,包括:
读取当前PBA;
判断当前缓冲结构中block是否与所述PBA对应的block相同;
若是,对当前缓冲结构中count值加一;
若否,确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据所述PBA重置当前缓冲结构。
优选的,所述根据所述PBA重置当前缓冲结构的过程,包括:
根据所述PBA对应的block,确定当前缓冲结构中block;
将当前缓冲结构中count值置为1。
优选的,所述判断当前缓冲结构中block是否与所述PBA对应的block相同之前,还包括:
判断当前缓冲结构中是否为空;
若是,根据所述PBA重置当前缓冲结构;
若否,执行所述判断当前缓冲结构中block是否与所述PBA对应的block相同的动作。
优选的,所述缓冲结构中包括:block、读计数地址和count值;
相应的,所述确定DDR中对应当前缓冲结构的read cnt的过程,包括:
根据当前缓冲结构中读计数地址,确定DDR中对应当前缓冲结构的read cnt。
优选的,所述固态硬盘读操作记录方法还包括:
当收到下电指令,确定所述DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt。
优选的,所述固态硬盘读操作记录方法还包括:
当收到所述下电指令,停止所述判断当前缓冲结构中block是否与所述PBA对应的block相同的动作,直接对所述PBA对应的read cnt执行加一操作。
相应的,本申请还公开了一种固态硬盘读操作记录***,包括:
读取模块,用于读取当前PBA;
判断模块,用于判断当前缓冲结构中block是否与所述PBA对应的block相同;若是,触发第一动作模块;若否,触发第二动作模块;
所述第一动作模块,用于对当前缓冲结构中count值加一;
所述第二动作模块,用于确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据所述PBA重置当前缓冲结构。
优选的,所述第二动作模块具体用于:
根据所述PBA对应的block,确定当前缓冲结构中block;
将当前缓冲结构中count值置为1。
相应的,本申请还公开了一种固态硬盘读操作记录装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上文任一项所述固态硬盘读操作记录方法的步骤。
相应的,本申请还公开了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文任一项所述固态硬盘读操作记录方法的步骤。
本申请公开了一种固态硬盘读操作记录方法,包括:读取当前PBA;判断当前缓冲结构中block是否与所述PBA对应的block相同;若是,对当前缓冲结构中count值加一;若否,确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据所述PBA重置当前缓冲结构。本申请利用缓冲结构,将对同一个block中连续PBA的读操作计数计入缓冲结构中count值,在更换block时再将缓冲结构中count值加入DDR中,不需要针对每个PBA的读操作来访问DDR,减少了DDR访问时间,数据读速度获得提升,提高了固态硬盘的读性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例中一种固态硬盘读操作记录方法的步骤流程图;
图2为本发明实施例中一种固态硬盘读操作记录***的结构分布图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
由于block属性存储于DDR中,每次执行对read cnt的加一操作,均需要访问DDR,频繁地访问DDR拉长了读数据时间,影响了固态硬盘的读性能。本申请不需要针对每个PBA的读操作来访问DDR,减少了DDR访问时间,数据读速度获得提升,提高了固态硬盘的读性能。
本发明实施例公开了一种固态硬盘读操作记录方法,参见图1所示,包括:
S1:读取当前PBA;
S2:判断当前缓冲结构中block是否与PBA对应的block相同;
S3:若是,对当前缓冲结构中count值加一;
S4:若否,确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据PBA重置当前缓冲结构。
可以理解的是,本实施例中PBA每次的读计数并未直接写入DDR的read cnt中,而是先在缓冲结构中计数,直到该block的PBA读结束跳到下一block,才将当前缓冲结构中的count值写入DDR中。由于本实施例是区别于现有对DDR的访问,因此整个固态硬盘读操作记录方法由软件程序实现,缓冲结构位于buffer缓冲区内,缓冲结构的数据读写速率远高于对DDR的访问。
可以理解的是,由于本实施例的本质是合并了同一个block中PBA的读操作次数,将该次数一次写入read cnt中,因此在按顺序读PBA的方案中效果更好,连续对同一block中PBA进行读操作的概率极高,通过本方法能够节省每次访问DDR的时间。
具体的,步骤S4中根据PBA重置当前缓冲结构的过程,包括:
根据PBA对应的block,确定当前缓冲结构中block;
将当前缓冲结构中count值置为1。
可以理解的是,重置当前缓冲结构的原因是当前PBA的block与缓冲结构中block不一致,缓冲结构中block已经读取结束,进入下一block,因此缓冲结构需要根据新的PBA重置,其中block为该PBA对应的block,count值从0开始计数,但该PBA已进行了读操作,因此对count值加1,也即将count值置为1。
进一步的,判断当前缓冲结构中block是否与PBA对应的block相同之前,还包括:
判断当前缓冲结构中是否为空;
若是,根据PBA重置当前缓冲结构;
若否,执行判断当前缓冲结构中block是否与PBA对应的block相同的动作。
可以理解的是,在***启动初期、没有过读操作时,缓冲结构为空,其中没有任何数据,按照上文描述重置缓冲结构,开始对缓冲结构的计数。
进一步的,缓冲结构中可以包括:block、读计数地址和count值;缓冲结构至少要包括这三个成员变量,其中block根据PBA对应的block确定,具体为block的编号位置,读计数地址则为对应缓冲结构内block在DDR中存储read cnt时的存储地址,count值为当前缓冲结构内block累计的读操作计数。除了这三个成员变量外,还可在缓冲结构中增加其他的成员变量,对同一block中PBA的读操作提供相关的性能支持。
相应的,确定DDR中对应当前缓冲结构的read cnt的过程,包括:
根据当前缓冲结构中读计数地址,确定DDR中对应当前缓冲结构的read cnt。
可以理解的是,上文已经提到,本实施例中缓冲结构位于buffer缓冲区内,一旦收到下电通知,缓冲结构的数据操作不再可靠,需要将该缓冲结构的count值快速写入readcnt,并停止缓冲结构的使用,后续PBA读操作将直接通过访问DDR的形式写入read cnt,避免突然下电导致读操作的计数丢失出错。
因此,固态硬盘读操作记录方法还包括:
当收到下电指令,确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt。
进一步的,固态硬盘读操作记录方法还包括:
当收到下电指令,停止判断当前缓冲结构中block是否与PBA对应的block相同的动作,直接对PBA对应的read cnt执行加一操作。
本申请公开了一种固态硬盘读操作记录方法,包括:读取当前PBA;判断当前缓冲结构中block是否与所述PBA对应的block相同;若是,对当前缓冲结构中count值加一;若否,确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据所述PBA重置当前缓冲结构。本申请利用缓冲结构,将对同一个block中连续PBA的读操作计数计入缓冲结构中count值,在更换block时再将缓冲结构中count值加入DDR中,不需要针对每个PBA的读操作来访问DDR,减少了DDR访问时间,数据读速度获得提升,提高了固态硬盘的读性能。
相应的,本申请实施例还公开了一种固态硬盘读操作记录***,参见图2所示,包括:
读取模块1,用于读取当前PBA;
判断模块2,用于判断当前缓冲结构中block是否与PBA对应的block相同;若是,触发第一动作模块3;若否,触发第二动作模块4;
第一动作模块3,用于对当前缓冲结构中count值加一;
第二动作模块4,用于确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据PBA重置当前缓冲结构。
进一步的,第二动作模块4具体用于:
根据PBA对应的block,确定当前缓冲结构中block;
将当前缓冲结构中count值置为1。
本申请实施例利用缓冲结构,将对同一个block中连续PBA的读操作计数计入缓冲结构中count值,在更换block时再将缓冲结构中count值加入DDR中,不需要针对每个PBA的读操作来访问DDR,减少了DDR访问时间,数据读速度获得提升,提高了固态硬盘的读性能。
相应的,本申请实施例还公开了一种固态硬盘读操作记录装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上文任一项实施例所述固态硬盘读操作记录方法的步骤。
相应的,本申请实施例还公开了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文任一项实施例所述固态硬盘读操作记录方法的步骤。
其中,本实施例中固态硬盘读操作记录方法的细节内容,可以参照上文实施例中的相关描述,此处不再赘述。
其中,本实施例中固态硬盘读操作记录装置和可读存储介质具有与上文实施例中固态硬盘读操作记录方法相同的有益效果,此处不再赘述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种固态硬盘读操作记录方法、***、装置及可读存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种固态硬盘读操作记录方法,其特征在于,包括:
读取当前PBA;
判断当前缓冲结构中block是否与所述PBA对应的block相同;
若是,对当前缓冲结构中count值加一;
若否,确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据所述PBA重置当前缓冲结构。
2.根据权利要求1所述固态硬盘读操作记录方法,其特征在于,所述根据所述PBA重置当前缓冲结构的过程,包括:
根据所述PBA对应的block,确定当前缓冲结构中block;
将当前缓冲结构中count值置为1。
3.根据权利要求2所述固态硬盘读操作记录方法,其特征在于,所述判断当前缓冲结构中block是否与所述PBA对应的block相同之前,还包括:
判断当前缓冲结构中是否为空;
若是,根据所述PBA重置当前缓冲结构;
若否,执行所述判断当前缓冲结构中block是否与所述PBA对应的block相同的动作。
4.根据权利要求1所述固态硬盘读操作记录方法,其特征在于,所述缓冲结构中包括:block、读计数地址和count值;
相应的,所述确定DDR中对应当前缓冲结构的read cnt的过程,包括:
根据当前缓冲结构中读计数地址,确定DDR中对应当前缓冲结构的read cnt。
5.根据权利要求1至4任一项所述固态硬盘读操作记录方法,其特征在于,还包括:
当收到下电指令,确定所述DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt。
6.根据权利要求5所述固态硬盘读操作记录方法,其特征在于,还包括:
当收到所述下电指令,停止所述判断当前缓冲结构中block是否与所述PBA对应的block相同的动作,直接对所述PBA对应的read cnt执行加一操作。
7.一种固态硬盘读操作记录***,其特征在于,包括:
读取模块,用于读取当前PBA;
判断模块,用于判断当前缓冲结构中block是否与所述PBA对应的block相同;若是,触发第一动作模块;若否,触发第二动作模块;
所述第一动作模块,用于对当前缓冲结构中count值加一;
所述第二动作模块,用于确定DDR中对应当前缓冲结构的read cnt,将当前缓冲结构中count值作为读增加量加至该read cnt,然后根据所述PBA重置当前缓冲结构。
8.根据权利要求7所述固态硬盘读操作记录方法,其特征在于,所述第二动作模块具体用于:
根据所述PBA对应的block,确定当前缓冲结构中block;
将当前缓冲结构中count值置为1。
9.一种固态硬盘读操作记录装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述固态硬盘读操作记录方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述固态硬盘读操作记录方法的步骤。
CN202011557586.3A 2020-12-23 2020-12-23 固态硬盘读操作记录方法、***、装置及可读存储介质 Active CN112684981B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011557586.3A CN112684981B (zh) 2020-12-23 2020-12-23 固态硬盘读操作记录方法、***、装置及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011557586.3A CN112684981B (zh) 2020-12-23 2020-12-23 固态硬盘读操作记录方法、***、装置及可读存储介质

Publications (2)

Publication Number Publication Date
CN112684981A true CN112684981A (zh) 2021-04-20
CN112684981B CN112684981B (zh) 2023-12-22

Family

ID=75453127

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011557586.3A Active CN112684981B (zh) 2020-12-23 2020-12-23 固态硬盘读操作记录方法、***、装置及可读存储介质

Country Status (1)

Country Link
CN (1) CN112684981B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101751343A (zh) * 2009-12-28 2010-06-23 成都市华为赛门铁克科技有限公司 固态硬盘数据写入方法及装置
CN102317926A (zh) * 2009-02-13 2012-01-11 韩商英得联股份有限公司 将高速存储装置作为缓存使用的存储***
CN102566939A (zh) * 2011-12-19 2012-07-11 记忆科技(深圳)有限公司 一种固态硬盘及其读-修改-写操作的数据管理方法
WO2016123748A1 (zh) * 2015-02-03 2016-08-11 北京麓柏科技有限公司 一种闪存存储***及其读写、删除方法
CN108762664A (zh) * 2018-02-05 2018-11-06 杭州电子科技大学 一种固态硬盘页级缓存区管理方法
CN110888600A (zh) * 2019-11-13 2020-03-17 西安交通大学 一种面向nand闪存的缓冲区管理方法
CN111381779A (zh) * 2020-03-05 2020-07-07 深信服科技股份有限公司 数据处理方法、装置、设备及存储介质
WO2020199061A1 (zh) * 2019-03-30 2020-10-08 华为技术有限公司 一种处理方法、装置及相关设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102317926A (zh) * 2009-02-13 2012-01-11 韩商英得联股份有限公司 将高速存储装置作为缓存使用的存储***
CN101751343A (zh) * 2009-12-28 2010-06-23 成都市华为赛门铁克科技有限公司 固态硬盘数据写入方法及装置
CN102566939A (zh) * 2011-12-19 2012-07-11 记忆科技(深圳)有限公司 一种固态硬盘及其读-修改-写操作的数据管理方法
WO2016123748A1 (zh) * 2015-02-03 2016-08-11 北京麓柏科技有限公司 一种闪存存储***及其读写、删除方法
CN108762664A (zh) * 2018-02-05 2018-11-06 杭州电子科技大学 一种固态硬盘页级缓存区管理方法
WO2020199061A1 (zh) * 2019-03-30 2020-10-08 华为技术有限公司 一种处理方法、装置及相关设备
CN110888600A (zh) * 2019-11-13 2020-03-17 西安交通大学 一种面向nand闪存的缓冲区管理方法
CN111381779A (zh) * 2020-03-05 2020-07-07 深信服科技股份有限公司 数据处理方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李中单 等: "基于数据访问计数的NAND闪存缓存管理算法", 微电子学与计算机, vol. 37, no. 5 *

Also Published As

Publication number Publication date
CN112684981B (zh) 2023-12-22

Similar Documents

Publication Publication Date Title
US8725936B2 (en) Storage system with flash memory, and storage control method
US6691136B2 (en) Fast data retrieval based upon contiguous consolidation of records according to frequency of access
CN113220239A (zh) 一种flash存储的擦写方法、装置、设备及可读存储介质
CN107402870B (zh) 一种元数据服务器中日志段的处理方法及装置
CN111400099B (zh) 闪存的数据重读方法、装置、设备及计算机可读存储介质
US9373347B2 (en) Data write management
CN114237984A (zh) 异常掉电下Trim数据的恢复方法、***及固态硬盘
JP4347707B2 (ja) 情報記録媒体のフォーマット方法および情報記録媒体
CN112684981B (zh) 固态硬盘读操作记录方法、***、装置及可读存储介质
CN109445715B (zh) 一种组合块的坏块处理方法及装置
CN112882659B (zh) 一种信息获得方法、装置、电子设备及存储介质
CN110348245B (zh) 基于nvm的数据完整性保护方法、***、装置及存储介质
CN103399783A (zh) 虚拟机的镜像文件的存储方法和装置
US20080144450A1 (en) Method for data preservation
CN111880735B (zh) 一种存储***中数据迁移方法、装置、设备及存储介质
CN110007874B (zh) 一种三维闪存的数据写入方法、装置及可读存储介质
CN109508446B (zh) 一种日志处理方法和装置
WO2020031435A1 (ja) 記憶制御装置、記憶装置および記憶制御方法
CN111831327A (zh) 可执行指令的电子装置以及指令执行方法
US10503651B2 (en) Media cache band cleaning
CN111078122B (zh) 数据处理方法、装置和设备
JP4334331B2 (ja) フラッシュメモリのアクセス制御方法
CN111949198A (zh) 一种坏块管理方法、装置和存储设备
CN113900994B (zh) 一种文件写入方法及装置
CN117435385B (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