CN107943610A - 一种提升ssd综合性能的方法 - Google Patents
一种提升ssd综合性能的方法 Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开了一种提升SSD综合性能的方法,其特征在于在SSD空闲时按预设的时间周期增加全盘扫描操作,扫描找到发生位反转的数据块,通过该数据块存储的纠错码进行恢复数据操作,将可以修复的数据提前恢复,将无法修复的数据作无法恢复标识;主机正常的读数据操作读取到无法恢复标识的数据块时直接反馈数据被破坏不再执行读取和纠错操作。通过增加后台扫描操作,提前在后台将需要执行ECC纠错的操作执行了,因此在实际主机访问SSD阶段,基本上不需要执行ECC就可直接将数据正确读出,明显提高SSD响应主机读业务的一致性,进而提高对主机的服务质量。
Description
技术领域
本发明涉及固态硬盘控制技术,特别涉及一种提升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进入空闲期,可以做后台全盘扫描操作。
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)
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)
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 | 株式会社东芝 | 数据恢复电路、半导体存储装置及数据恢复方法 |
-
2017
- 2017-10-25 CN CN201711016548.5A patent/CN107943610A/zh active Pending
Patent Citations (3)
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)
Title |
---|
周立功主编: "《嵌入式Linux开发教程 下》", 31 October 2016 * |
Cited By (4)
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的高可靠线性文件存取方法 | |
TWI489466B (zh) | 記憶體抹除方法、記憶體控制器與記憶體儲存裝置 | |
US20120254511A1 (en) | Memory storage device, memory controller, and data writing method | |
WO2018033036A1 (zh) | 固态硬盘和应用于固态硬盘的数据存取方法 | |
TW201321977A (zh) | 快閃記憶裝置及其資料讀取方法 | |
CN107943610A (zh) | 一种提升ssd综合性能的方法 | |
TWI420308B (zh) | 區塊管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI554886B (zh) | 資料保護方法、記憶體控制電路單元及記憶體儲存裝置 | |
US20120278535A1 (en) | Data writing method, memory controller, and memory storage apparatus | |
US12008263B2 (en) | Garbage collection and data storage method and apparatus, and storage system | |
TW201703052A (zh) | 平均磨損方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI381393B (zh) | 區塊管理與更換方法、快閃記憶體儲存系統及其控制器 | |
TWI459198B (zh) | 記憶體儲存裝置、其記憶體控制器與有效資料識別方法 | |
WO2021121132A1 (zh) | 固态硬盘数据重读方法、装置和固态硬盘 | |
CN105280239A (zh) | 一种动态实现固态硬盘ecc校验码的方法和装置 | |
TWI509615B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
US11093339B2 (en) | Storage utilizing a distributed cache chain and a checkpoint drive in response to a data drive corruption | |
CN107608624A (zh) | 一种提升固态硬盘性能的方法 | |
TWI744049B (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 |