用于数据存储装置的软错误检测及纠正制造方法及图纸

技术编号:34365741 阅读:11 留言:0更新日期:2022-07-31 08:44
本公开大体上涉及用于数据存储装置的软错误检测及纠正。本文中所描述的各种实施方案涉及用于检测软错误的系统及方法,其包含(但不限于):从非易失性存储器读取码字;解码所述码字以获得至少输入数据;在通过数据路径处理所述输入数据之后使用第一签名确定所述输入数据的有效性;及响应于使用所述第一签名确定所述输入数据有效而将所述输入数据发送到主机。机。机。

Soft error detection and correction for data storage devices

【技术实现步骤摘要】
用于数据存储装置的软错误检测及纠正


[0001]本公开大体上涉及用于检测及纠正数据存储装置中的软错误的系统、方法及非暂时性处理器可读媒体。

技术介绍

[0002]在固态硬盘(SSD)中,硬错误可发生于非易失性存储器装置(例如NAND闪存装置)中。硬错误的实例包含(但不限于)编程错误、由用非最佳阈值读取引起的错误、由滞留/读取干扰应力引起的错误等。为了解决此类硬错误,SSD的控制器(例如纠错码(ECC)编码器)可使用一或多个纠错码(ECC)来编码编程到非易失性存储器装置的数据。控制器(例如ECC解码器)可解码从非易失性存储器装置读取的编码数据以纠正硬错误。
[0003]另一方面,软错误是可发生于除非易失性存储器装置之外的SSD的组件中的错误。软错误可由电离辐射(例如中子、α粒子等)引起,辐射与硅相互作用且引起电荷沉积/收集、电流尖峰、单粒子翻转(SEU)、单粒子瞬态(SET)等。容易发生软错误的SSD组件的实例包含(但不限于)静态随机存取存储器(SRAM)、DRAM、半导体装置的数字逻辑(例如触发器、锁存器、组合逻辑、专用集成电路(ASIC))等。尽管软错误没有硬错误那样频繁发生,但系统可靠性会受软错误影响。例如,软错误会影响SSD的控制器,从而引起装置卡住、堵住或甚至数据损坏。

技术实现思路

[0004]在一些布置中,系统、方法及非暂时性计算机可读媒体涉及:使用从主机接收的输入数据产生第一签名;使用至少所述输入数据产生码字;在通过数据路径处理所述输入数据之后确定所述输入数据的有效性;及响应于确定所述输入数据有效而将码字写入到非易失性存储器。
[0005]在一些布置中,系统、方法及非暂时性计算机可读媒体涉及:从非易失性存储器读取码字;解码所述码字以获得至少输入数据;在通过数据路径处理所述输入数据之后使用第一签名确定所述输入数据的有效性;及响应于使用所述第一签名确定所述输入数据有效而将所述输入数据发送到主机。
附图说明
[0006]图1是说明根据一些实施方案的包含非易失性存储装置及主机的实例系统的框图。
[0007]图2是说明根据一些实施方案的实例软错误检测结构的框图。
[0008]图3是说明根据一些实施方案的使用图2的软错误检测结构写入数据的实例方法的流程图。
[0009]图4是说明根据一些实施方案的使用图2的软错误检测结构读取数据的实例方法的流程图。
[0010]图5是说明根据一些实施方案的用于产生签名的实例机制的框图。
[0011]图6是说明根据一些实施方案的实施单个CRC签名的实例软错误检测结构的框图。
[0012]图7是说明根据一些实施方案的使用实施单个CRC签名的图6的软错误检测结构写入数据的实例方法的流程图。
[0013]图8是说明根据一些实施方案的使用实施单个CRC签名的图6的软错误检测结构读取数据的实例方法的流程图。
[0014]图9是说明根据一些实施方案的使用实施单个CRC签名的图6的软错误检测结构写入及读取数据的实例方法的流程图。
[0015]图10是说明根据一些实施方案的实施两个CRC签名的实例软错误检测结构的框图。
[0016]图11是说明根据一些实施方案的使用实施两个CRC签名的图10的软错误检测结构写入数据的实例方法的流程图。
[0017]图12是说明根据一些实施方案的使用实施两个CRC签名的图10的软错误检测结构读取数据的实例方法的流程图。
[0018]图13是说明根据一些实施方案的使用实施两个CRC签名的图10的软错误检测结构写入及读取数据的实例方法的流程图。
[0019]图14是说明根据一些实施方案的实例软错误检测结构的框图。
[0020]图15是说明根据一些实施方案的使用图14的软错误检测结构写入数据的实例方法的流程图。
[0021]图16是说明根据一些实施方案的使用图15的软错误检测结构读取数据的实例方法的流程图。
[0022]图17是说明根据一些实施方案的使用本文中所公开的软错误检测结构写入数据的实例方法的流程图。
[0023]图18是说明根据一些实施方案的使用本文中所公开的软错误检测结构读取数据的实例方法的流程图。
具体实施方式
[0024]申请人认识到,某些电子组件(例如SRAM、DRAM、触发器、锁存器、组合逻辑、ASIC等)容易发生软错误,因此,主机接口与非易失性存储器之间的数据路径上的SSD的组件易受软错误影响。例如,软错误可发生于包含(但不限于)以下的SSD的组件处:控制器(其包含ASIC、控制器存储器(例如SRAM或另一类型的易失性存储器装置)、触发器等)及缓冲器/高速缓存(其包含DRAM、SRAM或另一类型的易失性存储器装置)。
[0025]本文中所公开的布置涉及用于检测及纠正存储装置中的软错误以提高到/来自主机接口的完整数据流的可靠性的系统、方法及非暂时性处理器可读媒体。在一些布置中,软错误在存储装置的数据路径上实时检测及纠正而不增加非易失性存储器装置(例如NAND闪存装置)的任何开销,同时允许在其中将数据写入到NAND闪存装置的任何写入操作之前检测及纠正软错误。可实现对NAND存储器控制器的数据路径保护及NAND存储区域利用的联合优化。本文中所公开的软错误检测及纠正机构还允许共享软错误检测及ECC错误修复的功能性且因此减少写入到非易失性存储器的冗余数据。
[0026]为了辅助说明本专利技术实施方案,图1展示根据一些实施方案的包含耦合到主机101的非易失性存储装置100的系统的框图。在一些实例中,主机101可为由用户操作的用户装置。主机101可包含操作系统(OS),其经配置以提供文件系统及使用文件系统的应用程序。文件系统通过合适有线或无线通信链路、总线或网络与非易失性存储装置100(例如非易失性存储装置100的控制器110)通信以管理非易失性存储装置100中数据的存储。在这方面,主机101的文件系统使用到通信链路或网络的合适接口将数据发送到非易失性存储装置100及从非易失性存储装置100接收数据。
[0027]在一些实例中,非易失性存储装置100位于数据中心(为简洁起见,未展示)中。数据中心可包含一或多个平台或机架单元,其中每一者支持一或多个存储装置(例如(但不限于)非易失性存储装置100)。在一些实施方案中,主机101及非易失性存储装置100一起形成存储节点,其中主机101充当节点控制器。存储节点的实例是Kioxia Kumoscale存储节点。平台内的一或多个存储节点连接到架顶式(TOR)交换机(每一存储节点经由一或多个网络连接(例如以太网、光纤通道或InfiniBand)连接到TOR),且可经由TOR交换机或另一合适平台内通信机制彼此通信。在一些实施方案中,非易失性存储装置100可为连接到TOR交换机的网络附加存储装置(例如以太网SSD),其中主机101也连接到TOR交换机且能够经由TOR交换机与存储装置100通信。在一些实施方案中,至少一个路由器可促进不同平台、机架或机本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种非暂时性处理器可读媒体,其包括处理器可读指令,使得当由控制器的至少一个处理器执行时,引起所述处理器:使用从主机接收的输入数据产生第一签名;使用至少所述输入数据产生码字;在通过数据路径处理所述输入数据之后,确定所述输入数据的有效性;及响应于确定所述输入数据有效,将码字写入到非易失性存储器。2.根据权利要求1所述的非暂时性处理器可读媒体,其中进一步引起所述处理器:在产生所述第一签名之后,通过所述数据路径处理所述输入数据;及在通过所述数据路径处理所述输入数据之后,使用所述输入数据产生第二签名,其中所述码字使用所述输入数据及附加到所述输入数据的所述第二签名产生。3.根据权利要求2所述的非暂时性处理器可读媒体,其中所述第一签名是第一循环冗余校验和CRC签名;且所述第二签名是第二CRC签名。4.根据权利要求2所述的非暂时性处理器可读媒体,其中用于产生所述第一签名的帧大小不同于用于产生所述第二签名的帧大小。5.根据权利要求1所述的非暂时性处理器可读媒体,其中所述码字在使用所述第一签名确定所述输入数据的所述有效性之前产生。6.根据权利要求1所述的非暂时性处理器可读媒体,其中进一步引起所述处理器:将所述第一签名附加到所述输入数据;使用第一函数及密钥基于所述输入数据及其附加的所述第一签名确定函数输出数据;且通过数据路径处理所述输入数据包括通过所述数据路径处理所述函数输出数据,其中所述码字使用所述函数输出数据产生。7.根据权利要求6所述的非暂时性处理器可读媒体,其中使用所述第一签名确定所述输入数据的所述有效性包括使用第二函数及所述密钥基于所述函数输出数据确定所述输入数据,所述第二函数是所述第一函数的反函数。8.根据权利要求1所述的非暂时性处理器可读媒体,其中进一步引起所述处理器:将所述第一签名附加到所述输入数据;使用第一函数及密钥基于具有所述输入数据及其附加的所述第一签名确定函数输出数据;使用所述函数输出数据产生第二签名;产生所述码字包括编码所述函数输出数据及附加到所述函数输出数据的所述第二签名;且通过所述数据路径处理所述输入数据包括通过所述数据路径处理所述函数输出数据及其附加的所述第二签名。9.根据权利要求8所述的非暂时性处理器可读媒体,其中使用所述第一签名确定所述输入数据的所述有效性包括使用第二函数及所述密钥基于所述函数输出数据确定所述输入数据,所述第二函数是所述第一函数的反函数。10.根据权利要求1所述的非暂时性处理器可读媒体,其中
所述输入数据的所述有效性使用所述第一签名确定;进一步引起所述处理器:在使用所述第一签名确定所述输入数据有效之后,使用所述输入数据产生第二签名;及将所述第二签名附加到所述输入数据;且所述码字基于所述输入数据及附加到所述输入数据的所述第二签名产生。11.根据权利要求10所述的非暂时性处理器可读媒体,其中所述第一签名使用单错误纠正及双错误检测SECDED汉明码产生;且所述第二签名是循环冗余校验和CRC签名。12.一种存储装置,其包括:非易失性存储器;控制器,其经配置以:使用从主机接收的输入数...

【专利技术属性】
技术研发人员:奥菲尔
申请(专利权)人:铠侠股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1