具有错误纠正逻辑的存储器设备的制造方法

文档序号:9439076阅读:671来源:国知局
具有错误纠正逻辑的存储器设备的制造方法
【专利说明】
【背景技术】
[0001]可以在计算系统中使用存储器设备以存储数据。在某些情况下,可以将存储器设备提供在处理器和永久存储子系统之间,所述存储器设备经常以诸如(一个或多个)基于盘的存储设备之类的(一个或多个)较低速存储设备实现。处理器能够比在永久存储子系统处更快地在存储器设备处执行数据访问。
[0002]为了解决可能发生在存储器设备中的数据错误,可以采用错误检测和纠正技术来保护存储在存储器设备中的数据。可以将纠错码和数据存储在存储器设备中,并且可以使用纠错码来检测和纠正从存储器设备读的数据中的错误。错误检测和纠正可以引起存储器访问等待时间的增加,其可以降低可以访问存储器设备的数据的速度。
【附图说明】
[0003]关于下图描述某些实施例:
图1是根据某些实现的包括存储器控制器和存储设备的示例系统的框图;
图2是根据某些实现的联机(inline)错误检测和纠正过程的流程图;以及图3是根据进一步实现的示例系统的框图。
【具体实施方式】
[0004]随着存储器设备的尺寸继续收缩,存储器设备可能更易于遭受数据错误,其已导致在存储器设备中增加的数据错误率。存在可以被用在计算系统(例如台式计算机、笔记本计算机、平板计算机、智能电话、服务器计算机、存储系统、通信节点等等)中的各种不同类型的存储器设备。
[0005]存储器设备的示例包括动态随机访问存储器(DRAM)设备、闪速存储器设备、相变存储器设备、忆阻器存储器设备等等。忆阻器存储器设备可以使用忆阻器来存储数据,所述忆阻器基于每个单元的电阻水平存储数据。当足够大的电流以第一方向流经忆阻器时,忆阻器的电阻增加。当足够大的电流以相反的方向流经忆阻器时,忆阻器的电阻减小。当电流停止时,忆阻器保持其具有的最后的电阻,这提供由忆阻器存储的数据比特的表示。
[0006]相变存储器设备的存储器单元实际上还是可变电阻器。在某些情况下,可变电阻器可以由硫属化合物玻璃形成。为了向相变存储器单元写,加热单元,这熔化了材料,其然后被冷却。冷却的速率控制得到的固体材料的晶体大小,这控制存储器单元的电阻。不同的电阻水平可以表示不同的数据状态。
[0007]在某些情况下,数据错误率可以受如何执行写以将数据写到存储器设备的影响。例如,利用忆阻器存储器设备,电流流被用于将数据状态写到特定忆阻器。相对低的电流水平可以被用于写忆阻器以延长忆阻器的寿命。然而,使用相对低的电流水平来写到忆阻器可以导致较高的数据误码率。
[0008]存储器设备的其他类型也与可以导致增加的数据错误率的相应的因素相关联。
[0009]在某些系统中,可以在被用于管理存储器设备(或多个存储器设备)的访问的存储器控制器中执行错误检测和纠正。然而,在存储器控制器处执行错误检测和纠正可以增加存储器访问等待时间。当在存储器控制器处应用错误检测和纠正时,存储器控制器必须首先从存储器设备接收所读数据。在接收所有的所读数据(连同相应的纠错码)后,存储器控制器然后可以应用存储器错误检测和纠正,这涉及可以加到在从存储器设备向数据的请求者提供数据中涉及的总时间的计算。请求者可以是处理器或在计算系统中的其他设备。
[0010]根据某些实现,当通过在存储器设备和存储器控制器之间的数据链路递送从存储器设备读的数据时,提供联机错误检测和纠正技术或机制以执行在存储器设备内的数据的联机错误检测和纠正。在存储器设备内部的数据路径可以是并行路径,其中数据比特(连同对应于纠错码的比特)的集合(例如行)可以被并行读出。一旦并行地读,在通过在存储器设备和存储器控制器之间的链路传送所读数据的部分时,存储器设备就可以继续将错误检测和纠正应用在所读数据上。在存储器设备处的错误检测和纠正计算完成之前,可以将所读数据的部分从存储器设备提供到存储器控制器。因此,在未检测到错误的正常情况下,错误检测和纠正不增加数据访问等待时间。
[0011]图1示出了包括存储器设备102和存储器控制器104的示例布置。存储器设备102和存储器控制器104通过数据链路106连接。在某些示例中,数据链路106是诸如串行器(Serializer) /解串器(Deserializer ) (SerDes)链路之类的串行链路。在其他示例中,数据链路106可以是不同类型的数据链路。
[0012]存储器设备102包括允许存储器设备102通过串行链路106通信的通信接口 108。在某些实现中,通信接口 108可以包括并行到串行转换器和串行到并行转换器以在(用在串行链路106上的)串行格式和(用在存储器设备102内的并行链路110上的)并行格式之间转换。并行链路110具有通过其可以并行传送数据比特的多个数据路径。相对地,串行链路106具有通过其串行传送数据比特的一个数据路径。
[0013]并行链路110被提供在存储阵列112和通信接口 108之间。存储阵列112包括存储器单元的阵列,所述存储器单元可以是DRAM单元、闪速存储器单元、忆阻器单元、相变存储器单元等等,这取决于存储器设备102的类型。更一般地,存储器单元指用于存储数据比特(或多个数据比特)的电路。
[0014]并行链路110允许在相同时间从存储阵列112取回数据比特的集合(例如数据比特的行或数据比特的某些其他段)。例如,数据比特的集合可以包括所读数据以及纠错码(ECC)比特。一旦从存储阵列112并行地读,所读数据和ECC就在并行链路110上可用于错误检测和纠正逻辑114 (在本文中被称作“ECC逻辑114”)。
[0015]而且,在并行链路110上的所读数据可以被提供到通信接口 108,其中所读数据被转换成适合于通过链路106传送的格式。例如,如上文记录的那样,通信接口 108可以应用并行到串行转换。
[0016]根据某些实现,在将所读数据从并行链路110通过通信接口 108提供到串行链路106的时间期间,ECC逻辑114可以执行与所读数据上的错误检测和纠正相关的计算。可以被应用的错误检测和纠正技术的示例包括诸如Reed-Solomon ECC技术的基于符号的ECC技术,或者诸如BCH技术的基于比特的ECC技术。尽管对示例ECC技术进行了引用,但是应注意在其他实现中,ECC逻辑114可以应用其他类型错误检测和纠正技术。
[0017]由ECC逻辑114执行的错误检测和纠正技术被视为联机错误检测和纠正技术,因为可以在通信接口 108正在将从存储阵列112读的数据的部分通过串行链路106传送到存储器控制器104时执行错误检测和纠正。换言之,通信接口 108能够在由在存储器设备102内的ECC逻辑114完成所读数据的错误检测和纠正之前将所读数据从存储器设备102的存储阵列112通过串行链路106传送到存储器控制器104。
[0018]通过使用ECC逻辑114执行联机错误检测和纠正,针对错误保护了从存储阵列112读的数据而不增加存储器访问时间。例如,如果存储器设备102在将所读数据从存储器设备102传送到存储器控制器104之前等待直到由ECC逻辑114完成错误检测和纠正,那么存储器访问等待时间将增加。
[0019]存储器设备102还包括数据访问逻辑116,其响应于经由通信接口 108从存储器控制器104接收的命令以向存储阵列112发出相应的命令。从存储器控制器104接收的请求可以是读请求或写请求。
[0020]如果ECC逻辑114确定在从存储器设备102传送到存储器控制器104的所读数据中不存在错误,那么ECC逻辑114不需要采取任何进一步行动,因为所读数据已经被传送到存储器控制器104而没有错误。
[0021]然而,如果ECC逻辑114确定在被传送或已经被传送到存储器控制器104的所读数据中存在错误,那么ECC逻辑114可以将关于在传送的数据中的错误的存在的指示提供到存储器控制器104。该指示可以是读事务已经失败的指示。事务已经失败的指示可以是显式失败指示(例如被断言成指定状态的信号
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1