[发明专利]固态硬盘容错的方法及其固态硬盘有效
申请号: | 201210345609.3 | 申请日: | 2012-09-17 |
公开(公告)号: | CN102915260A | 公开(公告)日: | 2013-02-06 |
发明(设计)人: | 曹庭华 | 申请(专利权)人: | 记忆科技(深圳)有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 刘健;黄韧敏 |
地址: | 518000 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 固态 硬盘 容错 方法 及其 | ||
技术领域
本发明涉及固态硬盘存储技术领域,尤其涉及一种固态硬盘容错的方法及其固态硬盘。
背景技术
SSD(solid state disk,固态硬盘),即用固态电子存储芯片阵列制成的硬盘,由控制单元和存储单元(DRAM或FLASH芯片)两部分组成,即控制器和闪存芯片。存储单元负责存储数据,控制单元负责读取、写入数据。拥有速度快,耐用防震,无噪音,重量轻等优点。广泛应用于军事、车载、工控、视频监控、网络监控、网络终端、电力、医疗、航空、导航设备等领域。具体的,控制器负责控制闪存的识别和读写,由于flash的特点:覆盖写之前必须擦除,所以控制器中通常实现了复杂的块映射机制、Garbage Collector(垃圾回收)机制、wear leveling(均衡磨损)机制,以到达快速存储并兼顾flash寿命。
图1是现有技术中通用的SSD架构,核心的SSD controller(固态硬盘控制器)自成一个系统,拥有自己的处理器以及RAM,用于实现block mapping(块檫除)、wear leveling(均衡磨损)、garbage collector(垃圾回收);Flash Demux/mux(闪存多路复用器)模块则控制多块闪存芯片的读写。闪存芯片在固态硬盘中充当存储空间的介质,主要分为两类。SLC(Single Level Cell,单层单元)和MLC(Multi-Level Cell,多层单元)。SLC的特点是成本高、容量小、速度快,而MLC的特点是容量大成本低,但是速度慢。此外,SLC闪存的优点是复写次数高达100000次,比MLC闪存高10倍。
为了防止闪存芯片介质导致的IO错误,控制器会对数据进行校验,同时wear leveling机制使得每个存储单元的写入次数可以平均分摊,达到100万小时MTBF(Mean Time Between Failure,故障间隔时间)。这些措施有效地解决了flash存储介质错误,但在实现过程中,还存在如下两类错误:一是电路错误,这类错误可能是电信号异常或是电路部件失效;二是逻辑错误,这类错误是由于控制器固件异常而导致。在是现有技术中对应固态硬盘控制器的错误导致的读写指令的执行失败并未有有效的方式进行改进。
综上可知,现有固态硬盘容错技术在实际使用上,显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种固态硬盘容错的方法及其固态硬盘,提高了固态硬盘的容错性。
为了实现上述目的,本发明提供一种固态硬盘容错的方法,所述方法包括如下步骤:
检测由固态硬盘控制器的错误导致的所述固态硬盘执行输入输出指令失败的事件;
在检测到所述事件发生后,根据所述固态硬盘控制器的错误,控制所述固态硬盘控制器执行相应的处理操作。
根据所述的方法,在所述检测由固态硬盘控制器的错误导致的所述固态硬盘执行输入输出指令失败的事件的步骤之前包括:
对每个下发到所述固态硬盘控制器的输入输出指令设置定时器以及定时周期;
在每个下发到所述固态硬盘控制器的输入输出指令发出时,所述定时器开始计时。
根据所述的方法,所述检测由固态硬盘控制器的错误导致的所述固态硬盘执行输入输出指令失败的事件的步骤包括:
在检测到每个下发到所述固态硬盘控制器的输入输出指令的时间超过所述定时周期时,则判定所述固态硬盘控制器的错误导致的所述固态硬盘执行输入输出指令失败的事件发生;和/或
在检测到每个从所述固态硬盘控制器返回的输入输出指令失败的事件,不是由所述固态硬盘的闪存存储介质的错误导致的,则判定所述固态硬盘控制器的错误导致的所述固态硬盘执行输入输出指令失败的事件发生。
根据所述的方法,所述在检测到所述事件发生后,根据所述固态硬盘控制器的错误,控制所述控制器执行相应的处理操作的步骤包括:
控制所述固态硬盘控制器进行重启;
阻塞新下发到所述固态硬盘控制器的输入输出指令和返回到所述固态硬盘控制器的输入输出指令;
在所述固态硬盘控制器重启后,再次向所述固态硬盘控制器派发被阻塞的所述输入输出指令。
根据所述的方法,在所述阻塞新下发到所述固态硬盘控制器的输入输出指令和返回到所述固态硬盘控制器的输入输出指令中,通过将所述新下发到所述固态硬盘控制器的输入输出指令和返回到所述固态硬盘控制器的输入输出指令链入到错误处理程序队列中对所述输入输出指令进行阻塞。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于记忆科技(深圳)有限公司,未经记忆科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210345609.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种存储系统的块设备数据缓存管理方法及系统
- 下一篇:多功能清扫机