CN107943610A - 一种提升ssd综合性能的方法 - Google Patents

一种提升ssd综合性能的方法 Download PDF

Info

Publication number
CN107943610A
CN107943610A CN201711016548.5A CN201711016548A CN107943610A CN 107943610 A CN107943610 A CN 107943610A CN 201711016548 A CN201711016548 A CN 201711016548A CN 107943610 A CN107943610 A CN 107943610A
Authority
CN
China
Prior art keywords
ssd
data
lifting
host
comprehensive performances
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.)
Pending
Application number
CN201711016548.5A
Other languages
English (en)
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.)
Ramaxel Technology Shenzhen Co Ltd
Original Assignee
Ramaxel Technology Shenzhen 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 Ramaxel Technology Shenzhen Co Ltd filed Critical Ramaxel Technology Shenzhen Co Ltd
Priority to CN201711016548.5A priority Critical patent/CN107943610A/zh
Publication of CN107943610A publication Critical patent/CN107943610A/zh
Pending legal-status Critical Current

Links

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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Abstract

本发明公开了一种提升SSD综合性能的方法,其特征在于在SSD空闲时按预设的时间周期增加全盘扫描操作,扫描找到发生位反转的数据块,通过该数据块存储的纠错码进行恢复数据操作,将可以修复的数据提前恢复,将无法修复的数据作无法恢复标识;主机正常的读数据操作读取到无法恢复标识的数据块时直接反馈数据被破坏不再执行读取和纠错操作。通过增加后台扫描操作,提前在后台将需要执行ECC纠错的操作执行了,因此在实际主机访问SSD阶段,基本上不需要执行ECC就可直接将数据正确读出,明显提高SSD响应主机读业务的一致性,进而提高对主机的服务质量。

Description

一种提升SSD综合性能的方法
技术领域
本发明涉及固态硬盘控制技术,特别涉及一种提升SSD综合性能的方法。
背景技术
对于企业级的固态硬盘(SSD)而言,仅仅用性能和IOPS(Input/OutputOperations Per Second即每秒进行读写(I/O)操作的次数)去考量SSD是不全面的。更重要的是服务质量,即Qos(quality of service)。
服务质量可以简单理解为SSD性能的一致性或稳定性。其并不是单纯的带宽、IOPS或者平均延迟,而是这些因素综合到一起后的SSD的平均性能。在企业级应用环境下,每一秒的延迟都有可能给业务带来极大的影响,对于要求万事俱掌握手中的企业级数据中心而言,SSD性能的一致性就显得尤为重要。
图1是SSD读数据通路,主机读请求的数据首先要从Nand Flash出到DRAM(N2D),然后在从DRAM出到主机(D2H)。
所以要保证读业务的性能的稳定性,首先要保证(N2D)数据通路的稳定性。而由于Nand Flash的特性:随着使用时间的增长、擦除次数的增加、工作环境温度的变化等等因素,存储在Nand Flash上的数据可能产生比特位翻转(ECC),如果翻转的比特数不是很多,那么通过一种或多种纠错算法可以把错误纠正,但是这个过程比较耗时间。所以如果主机读业务对应的数据正好发生了ECC,则SSD需要启动纠错算法去纠错,那么该业务的性能就会显著下降,整体的服务质量也随之下降,图2是发生ECC时对性能造成的影响示意图,很明显当在正常读取过程中发生了需要启动ECC纠错操作,则该瞬间系统性能急剧下降。
发明内容
针对以上缺陷,本发明目的是如何降低系统性能出现突变,提高SSD综合性能一致性。
为了解决以上问题本发明提出了一种提升SSD综合性能的方法,其特征在于在SSD空闲时按预设的时间周期增加全盘扫描操作,扫描找到发生位反转的数据块,通过该数据块存储的纠错码进行恢复数据操作,将可以修复的数据提前恢复,将无法修复的数据作无法恢复标识;主机正常的读数据操作读取到无法恢复标识的数据块时直接反馈数据被破坏不再执行读取和纠错操作。
所述的提升SSD综合性能的方法,其特征在于将SSD划分为多个存储分区,每次扫描操作仅执行一个存储分区的扫描操作。
所述的提升SSD综合性能的方法,其特征在于所述的时间周期随着SSD的使用时间逐步减小。
所述的提升SSD综合性能的方法,其特征在于全盘扫描操作仅扫描存储有有效数据的数据块。
所述的提升SSD综合性能的方法,其特征在于进一步的根据逻辑映射表以页为单位仅扫描存储有有效数据的数据页。
所述的提升SSD综合性能的方法,其特征在于扫描操作中一接收到主机新的操作指令,立即挂起本次扫描操作,优先响应主机新的操作指令。
所述的提升SSD综合性能的方法,其特征在于SSD设置了进入空闲期的阈值,在阈值时间内没有接收到主机请求,认为SSD进入空闲期,可以做后台全盘扫描操作。
本发明的有益效果是:通过增加后台扫描操作,提前在后台将需要执行ECC纠错的操作执行了,因此在实际主机访问SSD阶段,基本上不需要执行ECC就可直接将数据正确读出,明显提高SSD响应主机读业务的一致性,进而提高对主机的服务质量。
附图说明
图1是SSD读数据通路;
图2是发生ECC时对性能造成的影响示意图;
图3增加了定时全盘扫描的SSD数据通路图;
图4是引入扫描操作后发生ECC是对性能的影响图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
由于Nand Flash在生命中后期出现的ECC会严重影响主机的读业务的服务质量。ECC的出现为存储介质特性,我们无法改变,但是我们可以在SSD空闲时提前发现发生ECC的数据,然后后台纠正数据,那么后续主机读这些数据时一次就能成功,不影响服务质量了。固件设计中让FTL模块定期在空闲时扫描全盘,找到ECC数据并且修复,
图3增加了定时全盘扫描的SSD数据通路图,实现细节为:系统设定SSD进入空闲期的阈值,即在阈值时间内没有接收到主机请求,认为SSD进入空闲期,可以做后台操作扫描操作。
由于主机访问SSD的时机不可预知,且SSD接受到主机请求后应该迅速响应请求,不然仍会影响服务质量,所以FTL只能每次扫描一小部分数据,随时切换任务,优先响应主机请求。
由于Nand Flash前期还是比较稳定的,出现比特翻转的概率不会太高,所以FTL在前期不需要太频繁的做全盘扫描,后期可以适当加大频率。
如果最终还是修复不了ECC,需要内部记录该信息,后续主机读到修复不了的数据,直接报告主机为无法恢复的错误,省去了尝试修复的过程,也能提高服务质量。
图4是引入扫描操作后发生ECC是对性能的影响图,由于提前在后台将需要执行ECC纠错的操作执行了,因此在实际主机访问SSD阶段,基本上不需要执行ECC就可直接将数据正确读出,明显提高SSD响应主机读业务的一致性,进而提高对主机的服务质量。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。

Claims (7)

1.一种提升SSD综合性能的方法,其特征在于在SSD空闲时按预设的时间周期增加全盘扫描操作,扫描找到发生位反转的数据块,通过该数据块存储的纠错码进行恢复数据操作,将可以修复的数据提前恢复,将无法修复的数据作无法恢复标识;主机正常的读数据操作读取到无法恢复标识的数据块时直接反馈数据被破坏不再执行读取和纠错操作。
2.根据权利要求1所述的提升SSD综合性能的方法,其特征在于将SSD划分为多个存储分区,每次扫描操作仅执行一个存储分区的扫描操作。
3.根据权利要求2所述的提升SSD综合性能的方法,其特征在于所述的时间周期随着SSD的使用时间逐步减小。
4.根据权利要求3所述的提升SSD综合性能的方法,其特征在于全盘扫描操作仅扫描存储有有效数据的数据块。
5.根据权利要求4所述的提升SSD综合性能的方法,其特征在于进一步的根据逻辑映射表以页为单位仅扫描存储有有效数据的数据页。
6.根据权利要求1至5任意一项所述的提升SSD综合性能的方法,其特征在于扫描操作中一接收到主机新的操作指令,立即挂起本次扫描操作,优先响应主机新的操作指令。
7.根据权利要求6所述的提升SSD综合性能的方法,其特征在于SSD设置了进入空闲期的阈值,在阈值时间内没有接收到主机请求,认为SSD进入空闲期,可以做后台全盘扫描操作。
CN201711016548.5A 2017-10-25 2017-10-25 一种提升ssd综合性能的方法 Pending CN107943610A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711016548.5A CN107943610A (zh) 2017-10-25 2017-10-25 一种提升ssd综合性能的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711016548.5A CN107943610A (zh) 2017-10-25 2017-10-25 一种提升ssd综合性能的方法

Publications (1)

Publication Number Publication Date
CN107943610A true CN107943610A (zh) 2018-04-20

Family

ID=61935683

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711016548.5A Pending CN107943610A (zh) 2017-10-25 2017-10-25 一种提升ssd综合性能的方法

Country Status (1)

Country Link
CN (1) CN107943610A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109859794A (zh) * 2019-01-10 2019-06-07 宁波智研信息技术有限公司 固态硬盘存储单元修复系统
CN110554936A (zh) * 2018-06-04 2019-12-10 记忆科技(深圳)有限公司 一种ssd测试方法及系统
WO2020000956A1 (zh) * 2018-06-28 2020-01-02 郑州云海信息技术有限公司 一种bmc监控可恢复ecc错误的方法、装置及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030159096A1 (en) * 2002-02-19 2003-08-21 Balzer Raymond John Boundary scan with ground bounce recovery
CN106502583A (zh) * 2016-10-12 2017-03-15 记忆科技(深圳)有限公司 一种降低固态硬盘响应延迟的方法
CN106528321A (zh) * 2015-09-09 2017-03-22 株式会社东芝 数据恢复电路、半导体存储装置及数据恢复方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030159096A1 (en) * 2002-02-19 2003-08-21 Balzer Raymond John Boundary scan with ground bounce recovery
CN106528321A (zh) * 2015-09-09 2017-03-22 株式会社东芝 数据恢复电路、半导体存储装置及数据恢复方法
CN106502583A (zh) * 2016-10-12 2017-03-15 记忆科技(深圳)有限公司 一种降低固态硬盘响应延迟的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周立功主编: "《嵌入式Linux开发教程 下》", 31 October 2016 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110554936A (zh) * 2018-06-04 2019-12-10 记忆科技(深圳)有限公司 一种ssd测试方法及系统
WO2020000956A1 (zh) * 2018-06-28 2020-01-02 郑州云海信息技术有限公司 一种bmc监控可恢复ecc错误的方法、装置及设备
CN109859794A (zh) * 2019-01-10 2019-06-07 宁波智研信息技术有限公司 固态硬盘存储单元修复系统
CN109859794B (zh) * 2019-01-10 2021-01-19 宁波智研信息技术有限公司 固态硬盘存储单元修复系统

Similar Documents

Publication Publication Date Title
CN103995784B (zh) 快闪存储器控制器与存储装置以及快闪存储器控制方法
CN103577121B (zh) 一种基于Nand Flash的高可靠线性文件存取方法
US8898372B2 (en) Memory storage device, memory controller, and data writing method
TWI461913B (zh) 快閃記憶裝置及其資料讀取方法
TWI489466B (zh) 記憶體抹除方法、記憶體控制器與記憶體儲存裝置
US8516184B2 (en) Data updating using mark count threshold in non-volatile memory
CN107943610A (zh) 一种提升ssd综合性能的方法
TWI420308B (zh) 區塊管理方法、記憶體控制器與記憶體儲存裝置
TWI554886B (zh) 資料保護方法、記憶體控制電路單元及記憶體儲存裝置
TW201703052A (zh) 平均磨損方法、記憶體儲存裝置及記憶體控制電路單元
TW201706848A (zh) 有效資料合併方法、記憶體控制器與記憶體儲存裝置
TWI381393B (zh) 區塊管理與更換方法、快閃記憶體儲存系統及其控制器
TWI459198B (zh) 記憶體儲存裝置、其記憶體控制器與有效資料識別方法
EP3839716A1 (en) Data storage method and apparatus and storage system
CN103984506A (zh) 闪存存储设备数据写的方法和系统
WO2021121132A1 (zh) 固态硬盘数据重读方法、装置和固态硬盘
TWI509615B (zh) 資料儲存方法、記憶體控制器與記憶體儲存裝置
US11093339B2 (en) Storage utilizing a distributed cache chain and a checkpoint drive in response to a data drive corruption
CN107608624A (zh) 一种提升固态硬盘性能的方法
CN103645997B (zh) 一种数据保护的方法与系统
CN203311409U (zh) 一种Nand Flash的坏列管理装置
KR20110054788A (ko) 비-휘발성 버퍼를 이용한 데이터 저장 장치 및 방법
CN103761156A (zh) 一种针对文件系统的在线修复方法
US20100325373A1 (en) Duplexing Apparatus and Duplexing Control Method
CN104615503A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180420