存储器装置、存储器模块和用于纠错的方法

文档序号:9826162阅读:305来源:国知局
存储器装置、存储器模块和用于纠错的方法
【专利说明】存储器装置、存储器模块和用于纠错的方法
[0001 ] 本申请要求于2014年8月19日提交的第62/039,396号美国临时专利申请、2014年9月29日提交的第62/057,199号美国临时专利申请和2014年11月4日提交的第62/075,231号美国临时专利申请以及于2015年I月9日提交的第14/594,049号美国专利申请以及与2015年4月4日提交的第14/678,968号美国临时专利申请的权益,上述每件专利申请的内容通过引用全部包含于此以用于所有目的。
技术领域
[0002]本公开涉及一种存储器系统架构,更具体地讲,涉及一种具有纠错的存储器系统架构。
【背景技术】
[0003]存储器控制器可以被配置为执行纠错。例如,存储器控制器可以从存储器模块读取72比特的数据,其中,64比特为数据而8比特为奇偶校验。存储器控制器可以执行其他纠错技术。利用这样的技术,可以识别和/或纠正从存储器模块读取的数据中的一些错误。另夕卜,存储器控制器可以使与错误有关的信息可利用。包括存储器控制器的系统可以基于错误信息(诸如撤回存储页或停止系统等)做出操作上的决定。这样的存储器控制器可以与处理器集成在一起。例如,英特尔赛扬处理器可以包括被配置为执行纠错的集成存储器控制器。
[0004]但是,如果在数据被存储器控制器接收之前执行纠错,则与纠正相关的错误信息在存储器控制器中可能无法被使用,因此系统也无法使用所述与纠正相关的错误信息以进行系统管理决定。

【发明内容】

[0005]实施例包括一种存储器装置,所述存储器装置包括:被配置为存储数据的存储器、数据接口、错误接口以及结合到数据接口、错误接口和存储器的控制器。控制器被配置为通过数据接口发送存储在存储器中的数据;并且控制器被配置为通过错误接口发送响应于纠正从存储器读取的数据中的错误而生成的错误信息。
[0006]另一个实施例包括一种方法,所述方法包括以下步骤:响应于从数据接口接收的读取命令而在存储器装置处读取包括错误的数据;基于读取包括错误的数据来记录错误信息;通过错误接口从存储器模块发送错误信息。
[0007]另一个实施例包括一种存储器模块,所述存储器模块包括:数据接口;错误接口 ;多个存储器装置,每个存储器装置结合到数据接口和错误接口并且包括被配置为存储数据的存储器、被结合到数据接口、错误接口和存储器的控制器。控制器被配置为通过数据接口发送存储在存储器中的数据;并且控制器被配置为通过错误接口发送响应于纠正从存储器读取的数据中的错误而生成的错误信息。
【附图说明】
[0008]图1是根据实施例的具有存储器系统架构的系统的示意图。
[0009]图2是根据实施例的具有包括控制器的存储器系统架构的系统的示意图。
[0010]图3是根据实施例的具有包括基板(baseboard)管理控制器的存储器系统架构的系统的不意图。
[0011]图4是根据实施例的具有不含有基于处理器的纠错的存储器系统架构的系统的示意图。
[0012]图5是根据实施例的具有包含有毒(poisoned)数据选通信号的存储器系统架构的系统的不意图。
[0013]图6是根据实施例的具有包含单独的不可纠正错误信号的存储器系统架构的系统的示意图。
[0014]图7是根据实施例的具有包含软件模块的存储器系统架构的系统的示意图。
[0015]图8是根据实施例的具有包含错误检测和纠正模块的存储器系统架构的系统的示意图。
[0016]图9是根据实施例的具有包含聚合模块的存储器系统架构的系统的示意图。
[0017]图10是根据实施例的具有包含从存储控制架构模块聚合(aggregate)信息的纠错模块的存储器系统架构的系统的示意图。
[0018]图11是根据实施例的具有包含共享接口的多个模块的存储器系统架构的系统的示意图。
[0019]图12是根据实施例的具有包含共享接口的可纠正错误模块和串行存在检测/寄存时钟驱动器模块的存储器系统架构的系统的示意图。
[0020]图13是根据实施例的具有包含DRAM内纠错的存储器系统架构的系统的示意图。
[0021]图14A至图14D是根据一些实施例的具有包含模块内纠错的存储器系统架构的系统的示意图。
[0022]图15是根据实施例的存储器模块的示意图。
[0023]图16是根据实施例的具有SH)或R⑶接口的存储器模块的示意图。
[0024]图17是根据实施例的具有单独的不可纠正的错误接口的存储器模块的示意图。
[0025]图18是根据实施例的存储器装置的示意图。
[0026]图19是根据另一个实施例的存储器装置的示意图。
[0027]图20是根据实施例的包括存储器装置的存储器模块的示意图。
[0028]图21是根据实施例的对错误信息进行通信的技术的流程图。
[0029]图22是根据实施例的处理错误的技术的流程图。
[0030]图23是根据另一个实施例的处理错误的技术的流程图。
[0031 ]图24A是根据实施例的对错误信息进行通信的技术的流程图。
[0032]图24B是根据另一个实施例的对错误信息进行通信的技术的流程图。
[0033]图25是根据另一个实施例的对错误信息进行通信的技术的流程图。
[0034]图26是根据另一个实施例的对错误信息进行通信的技术的流程图。
[0035]图27是根据实施例的具有存储器系统架构的系统的示意图。
[0036]图28是根据实施例的服务器的示意图。
[0037]图29是根据实施例的服务器系统的示意图。
[0038]图30是根据实施例的数据中心的示意图。
【具体实施方式】
[0039]实施例涉及存储器系统架构。给出下面的描述以使本领域普通技术人员能够制作和使用实施例,在专利申请的语境及其需求中提供下面的描述。对实施例的各种修改以及在此描述的普遍原理及特征将是容易理解的。主要以在【具体实施方式】中提供的具体方法和系统来描述实施例。
[0040]然而,方法和系统将以其他实施来有效地操作。诸如“实施例”、“一个实施例”和“另一个实施例”的短语可以指示相同或不同的实施例,也指示多个实施例。将针对具有特定组件的系统和/或装置来描述实施例。然而,系统和/或装置可以包括比示出的组件更多或更少的组件,可以在不脱离本公开的范围的情况下做出组件的布置和类型上的变化。还将在具有特定步骤的具体方法的语境中描述实施例。然而,方法和系统根据具有不同的和/或附加的步骤的其他方法来操作,并且以与实施例不一致的不同顺序分步。因此,实施例不意图受限于示出的具体实施例,而是将符合与在此描述的原理和特征相一致的最宽范围。
[0041]在具有特定组件的具体存储器系统架构的语境下描述实施例。本领域的普通技术人员将容易认识到,实施例与具有其他和/或附加组件和/或其他特征的存储器系统架构的用途相一致。然而,本领域的普通技术人员将容易认识到的是,方法和系统与其他结构一致。还可以在单个元件的语境下描述方法和系统。然而,本领域的普通技术人员将容易认识到的是,方法和系统与具有多个元件的存储器系统架构相一致。
[0042]本领域技术人员将理解的是,通常在这里特别是权利要求(例如,权利要求的正文)中使用的术语通常意图为“开放”式(例如,术语“包括”应该被解释为“包括但不限于”,术语“具有”应该被解释为“至少具有”,术语“包含”应该被解释为“包含但不限于”等)。本领域内的技术人员还将理解的是,如果意图特定数量的引导权利要求叙述,则这样的意图将明确记载在权利要求中,并且当不存在这样的叙述时,没有这样的意图。例如,为了有助于理解,权利要求可以包含使用引导性的短语“至少一个”和“一个或更多个”以引导权利要求的叙述。然而,使用这样的短语不应被理解为暗示通过不定冠词“一”或“一个”引导的权利要求叙述将含有这样的引导权利要求叙述的任何具体的权利要求限定为仅包含一个这样的叙述的示例,即使当同一项权利要求包括引导性的短语“一个或多个”或“至少一个”和不定冠词例如“一”或“一个”(例如,“一”和/或“一个”应该被解释为指“至少一个”或者“一个或多个”);同样的道理适用于使用用于引导权利要求叙述的定冠词。此外,在使用类似于“A、B或C等中的至少一个”的习惯语的情况下通常这样的解释意图在本领域技术人员将理解该习惯语的意义上(例如,“具有A、B或C中的至少一个的系统”将包括但不限于具有单独的A、单独的B、单独的C、A和B—起、A和C一起、B和C一起和/或A、8和(:一起等的系统)。本领域内的技术人员还将理解的是,实际上任何表示两个或更多个可选术语的转折词和/或短语,无论在说明书、权利要求书或者附图中,都应该被理解为设想包括所有术语、任一术语或两个术语中的一种情况的可能性。例如,短语“A或B”将被理解为包括“A”或“B”或者包括“A和B”的可能性。
[0043]图1是根据实施例的具有存储器系统架构的系统的示意图。系统100包括结合到处理器104的存储器102。存储器102被配置为存储数据。当数据从存储器102被读取时,存储器102被配置为如果数据中有错误则纠正该数据中的错误。例如,存储器102可以被配置为纠正单比特错误。存储器102还可以被配置为检测双比特错误。虽然具体数量的错误纠正已被用作示例,但是可以将存储器120配置为纠正任意数量的错误,或者检测任意数量的错误。此外,虽然一种或更多种纠错技术可以引起单比特纠错和/或双比特纠错,但是存储器102可被配置为执行能够纠正至少一个错误的任何纠错技术。
[0044]存储器102可以包括被配置为存储数据的任意装置。在具体示例中,存储器102可以是动态随机存取存储器(DRAM)模块。存储器102可以包括根据诸如DDR、DDR2、DDR3或DDR4等的任意标准的双倍数据速率同步动态随机存取存储器(DDR SDRAM)。在其他实施例中,存储器102可以包括静态随机存取存储器(SRAM)或非易失性存储器等。
[0045]存储器102被配置为响应于纠正和/或尝试纠正在从存储的数据读取的数据中的错误而生成错误信息。例如,错误信息可以包括关于纠正的错误、未纠正的错误、错误不存在、这种错误的数量等的信息。错误信息可以包括关于实际错误、错误的地址、错误已经发生的次数的信息或者专用于存储器102的其他信息。在具体示例中,错误信息可以包括关于单比特错误的信息,所述关于单比特错误的信息表示存储器102纠正了单比特错误。虽然已经描述了错误信息的具体示例,但是错误信息可以包括与错误有关的任何信息。
[0046]处理器104可以是被配置为可操作地结合到存储器102并且能够执行指令的任何装置。例如,处理器104可以是通用处理器、数字信号处理器(DSP)、图形处理单元(GPU)、专用集成电路或可编程逻辑装置等。
[0047]处理器104通过第一通信路径106和第二通信路径108结合到存储器102。处理器104被配置为通过第一通信路径106从存储器接收数据。例如,第一通信路径106可以是具有用于数据信号、选通信号、时钟信号、使能信号等的信号线的系统存储器接口。即,通信路径106可以是主存储器通道的一部分,其中,主存储器通道是作为处理器104与作为主系统内存的存储器102之间的接口的主存储器通道的一部分。
[0048]处理器104还通过与第一通信路径不同的通信路径(诸如,第二通信路径108)结合到存储器102。处理器104被配置为通过第二通信路径108从存储器102接收错误信息。因此,在示例中,处理器104被配置为通过不同于第一通信路径106的通信路径接收错误信息,具体地讲,纠正的错误信息。所述纠正的错误信息是与纠正的错误有关的错误信息。如上所述,错误信息可以包括与错误有关的各种类型的信息。因此,纠正的错误信息可以包括与纠正的错误有关的相似类型的信息。
[0049]软件110被示出为结合到处理器104,然而,软件110表示可以在处理器104上运行的各种程序、驱动器、模块或例程等。例如,软件110可以包括驱动器、内核模块、守护进程(daemon)、应用等。在一些实施例中,软件110可以使处理器104被配置为执行在此描述的具体功能。
[0050]虽然单个存储器102已被用作示例,但任何数量的存储器102可以通过与通信路径106和108相似的两条通信路径而结合到处理器104。在实施例中,每个存储器102可以通过与其他存储器102分开的专用的第一通信路径106和也与其他存储器102分开的专用的第二通信路径108而结合到处理器104。然而,在其他实施例中,第一通信路径106可以被多于一个的存储器102所共享,且第二通信路径108可以被多于一个的存储器102所共享。另外,虽然已经描述了单条第一通信路径106,但是可以存在位于一个或更多个存储器102之间的多条第一通信路径106。类似地,虽然已经描述了单条第二通信路径108,但是可以存在位于一个或更多个存储器102之间的多条第二通信路径108。
[0051]在实施例中,可以通过带外通信路径来执行错误信息的通信。第二通信路径108可以是这样的带外通信路径。即,可以通过第一通信
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1