存储器模块上的存储器备用

文档序号:9916677阅读:557来源:国知局
存储器模块上的存储器备用
【专利说明】
【背景技术】
[0001]数以千计的存储器管芯可以驻留在服务器中的存储器模块上。错误校正逻辑可以用于校正存储器管芯中检测到的错误。存储器模块可以包括额外的存储器管芯,使得在存储器模块上的存储器管芯失效时,额外的存储器管芯可以使用而不必更换整个存储器模块。
【附图说明】
[0002]以下详细描述参照附图,其中:
图1为使得能够选择数据半字节的各种组合的示例数据缓冲器的方框图;
图2为示例数据缓冲器的方框图,该数据缓冲器包括用于在该数据缓冲器中存储数据选择器的输出的寄存器;
图3为示例存储器模块的方框图,该示例存储器模块包括用于选择在该存储器模块上的存储器中存储的数据半字节的各种组合的数据缓冲器;
图4为用于使得能够使用存储器模块上的备用存储器的示例系统控制器的方框图;
图5为包括多个备用存储器的示例存储器模块的方框图;
图6为包括以使得能够使用存储器模块上的备用存储器的指令编码的机器可读存储介质的示例装置的方框图;
图7为包括以用于拷贝和校正存储在存储器模块上的数据的指令编码的机器可读存储介质的示例装置的方框图;
图8为包括以用于通知存储器控制器使用存储器模块上的备用存储器并且用于校正备用存储器中的错误数据的指令编码的机器可读存储介质的示例装置的方框图;
图9为用于使用存储器模块上的备用存储器的示例方法的流程图;以及图10为用于校正存储在存储器模块上的错误数据的示例方法的流程图。
【具体实施方式】
[0003]随着存储器模块上的存储器管芯密度增加,将数据路由至存储器模块上的额外存储器以及从存储器模块上的额外存储器路由数据的难度可能增加。本公开提供了在存储器模块上的数据缓冲器,其具有可以从各种存储器(包括备用存储器)选择数据的数据选择器。取决于失效存储器的位置,数据选择器可以以各种方式配置。数据选择器的可配置性可以简化使用额外存储器的路由挑战、减少需要更换整个存储器模块的速率。
[0004]现参照附图,图1为使得能够选择数据半字节的各种组合的示例数据缓冲器100的方框图。数据缓冲器100可以从存储器模块上的存储器选择数据半字节。存储器可以包括易失性存储器,诸如动态随机存取存储器(DRAM)和/或非易失性存储器,诸如闪速存储器。
[0005]在图1中,数据缓冲器100包括数据选择器102以及数据选择器104。在一些实施方式中,数据选择器102和104可以包括多路复用器(例如,2合I多路复用器)。数据选择器102可以在存储于第一存储器的数据半字节(例如,数据半字节I)与存储于第二存储器的数据半字节(例如,数据半字节2)之间选择。如在此使用的术语“数据半字节”指的是多于一比特但小于一字节的数据单位。例如,数据半字节可以是四比特。数据选择器104可以在存储于第三存储器的数据半字节(例如,数据半字节3)与存储于第二存储器的数据半字节(例如,数据半字节2)之间选择。第一、第二和第三存储器可以在存储器模块上的集成电路(IC)上。数据选择器102可以可通信地耦接于第一和第二存储器,并且数据选择器104可以可通信地耦接于第二和第三存储器。
[0006]数据选择器102和104的选择可以基于存储器模块上的第一和第二存储器是否起作用来确定。如在此使用的术语“起作用”指的是精确地存储写入存储器的数据并且在对存储器执行读取操作时精确地输出所存储的数据的存储器。在第一存储器和第二存储器起作用时,数据选择器102可以选择存储于第一存储器的数据半字节(例如,数据半字节1),并且数据选择器104可以选择存储于第二存储器的数据半字节(例如,数据半字节2)。在第一存储器未起作用时,数据选择器102可以选择存储于第二存储器的数据半字节(例如,数据半字节2),并且数据选择器104可以选择存储于第三存储器的数据半字节(例如,数据半字节3)。在第二存储器未起作用时,数据选择器102可以选择存储于第一存储器的数据半字节(例如,数据半字节I),并且数据选择器104可以选择存储于第三存储器的数据半字节(例如,数据半字节3)。数据选择器102和104可以从存储器模块上的系统控制器接收选择控制信号。
[0007]数据缓冲器100的输出可以包括由数据选择器102和104选择的数据半字节。在一些实施方式中,数据缓冲器100可以提供8比特(S卩,I字节)输出。该输出的首四比特可以是由数据选择器102选择的数据半字节(例如,选择的数据半字节I),并且该输出的后四比特可以是由数据选择器104选择的数据半字节(例如,选择的数据半字节2)。
[0008]图2为示例数据缓冲器200的方框图,该数据缓冲器200包括用于在该数据缓冲器中存储数据选择器的输出的寄存器。数据缓冲器200可以包括数据选择器202和204,其可以分别类似于(例如,具有类似的功能和/或组件)图1的数据选择器102和104。数据缓冲器200还可以包括寄存器206和208。寄存器206可以存储数据选择器202的输出。数据选择器202的输出可以包括由数据选择器202选择的数据半字节(例如,数据半字节I或2)。寄存器208可以存储数据选择器204的输出。数据选择器204的输出可以包括由数据选择器204选择的数据半字节(例如,数据半字节2或3)。
[0009]寄存器206和208可以输出它们各自存储的数据半字节,并且数据缓冲器200的输出可以包括由寄存器206和208输出的数据半字节。例如,寄存器206可以输出选择的数据半字节I,并且寄存器208可以输出选择的数据半字节2。每个选择的数据半字节可以为四比特长。数据缓冲器200可以提供8比特(S卩,I字节)输出;该输出的首四比特可以为选择的数据半字节I,并且该输出的后四比特可以为选择的数据半字节2。
[0010]图3为示例存储器模块300的方框图,该示例存储器模块300包括用于选择在该存储器模块上的存储器中存储的数据半字节的各种组合的数据缓冲器。存储器模块300可以为内联存储器模块,诸如单内联存储器模块(SIMM)或双内联存储器模块(DIMM),或者任意适于安装存储器集成电路(IC)的存储器模块。在图3中,存储器模块300包括缺省存储器302、304、306和308、备用存储器310、数据缓冲器320和322,以及系统控制器330。
[0011]存储器302、304、306、308和310可以包括易失性(例如DRAM)或非易失性(例如,闪速存储器、只读存储器)存储器,并且可以在存储器模块300上的IC上。存储器302、304、306和308可以为存储器模块300上的缺省存储器。如在此使用的术语“缺省存储器”指的是其上规律地执行读取和写入操作的存储器。存储器310可以为存储器模块300上的备用存储器。如在此使用的术语“备用存储器”指的是用于在缺省存储器未精确地存储或输出数据时更换缺省存储器的存储器。术语“缺陷”可以在本公开中用于描述未精确地存储写入存储器的数据和/或在对存储器执行读取操作时未精确地输出所存储的数据的存储器或存储器的一部分。在一些实施方式中,存储器302、304、306、308和310可以为具有纠错码(ECC)功能性的易失性存储器。
[0012]存储器模块300上的数据缓冲器320和322可以类似于数据缓冲器100或数据缓冲器200。数据缓冲器可以对存储器模块300上的存储器执行读取和写入操作。数据缓冲器320可以可通信地耦接于缺省存储器302、304和306。数据缓冲器322可以可通信地耦接于缺省存储器306和308,以及备用存储器310。存储器模块300上的每个数据缓冲器可以选择两个数据半字节(即,数据缓冲器可以从该数据缓冲器所耦接到的三个存储器中的两个存储器选择数据半字节)。数据选通信号可以与每个数据半字节相关联,并且每个数据选通信号可以与存储器模块300上的针脚相关联。应理解,存储器模块300可以具有比图3中所示的更多或更少的存储器(例如,存储器模块300可以具有多于一个备用存储器)和/或数据缓冲器,并且在此有关图3中示出的存储器和/或数据缓冲器的论述可以可应用于附加的存储器和/或数据缓冲器。
[0013]在存储器
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1