CN104979017B - 用于测试及组装存储器模块的***及方法 - Google Patents
用于测试及组装存储器模块的***及方法 Download PDFInfo
- Publication number
- CN104979017B CN104979017B CN201510154581.9A CN201510154581A CN104979017B CN 104979017 B CN104979017 B CN 104979017B CN 201510154581 A CN201510154581 A CN 201510154581A CN 104979017 B CN104979017 B CN 104979017B
- Authority
- CN
- China
- Prior art keywords
- memory
- defective
- locations
- memory device
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
本文中所描述的实施例涉及用于测试及组装存储器模块的***及方法。在至少一个实施例中,所述方法包括:组装存储器模块,所述存储器模块包括具有一或多个有缺陷存储器位置的至少一个存储器装置;其中所述组装包括将识别所述存储器装置上的所述一或多个有缺陷存储器位置的数据存储于所述存储器模块上的持久性存储装置中,其中所述存储器模块包括微处理器及与所述微处理器相关联的持久性存储器,且其中所述存储器模块上的所述持久性存储装置包括与所述微处理器相关联的所述持久性存储器。
Description
相关申请案的交叉参考
本申请案是第13/306,617号美国专利申请案的部分接续案,所述美国专利申请案的内容以引用方式并入本文中。
技术领域
所描述实施例涉及用于组装存储器模块的***及方法,且更具体来说,涉及用于使用多个个别存储器装置来组装存储器模块的***及方法。
背景技术
近年来,存储器装置的存储器容量已显著增加。与存储器容量的此增加对应的是存储器装置被制造为具有有缺陷存储器单元或存储器装置的至少一些存储器单元在使用中变得有缺陷的较大可能性。存储器装置中的任何有缺陷存储器单元可不同程度地不利地影响计算装置或可采用存储器装置来进行数据存储的其它装置的操作。
可使用错误校正方案来处理由在计算***的操作期间检测到的存储器缺陷导致的单位错误或多位错误。还知晓用于处置在计算***的操作期间检测到的存储器错误的其它方案。
举例来说,第7,694,195号美国专利描述管理存储器缺陷的方法。在计算机***的启动期间以扫描操作检测有缺陷存储器位置,且将存储器缺陷信息存储于存储器缺陷映射中。随后,在正常操作程序期间可跳过这些有缺陷存储器位置。
第7,783,919号美国专利进一步描述在计算机***内的运行时间环境的执行期间检测及处置存储器错误。如果确定已发生存储器错误,那么可识别个别存储器装置上其中发生所述存储器错误的存储器位置,且可将对这些存储器位置的参考存储于存储器模块的持久性存储器中。此外,第2010/0251044号美国专利公开案揭示产生存储器映射,其中从所述存储器映射排除含有有缺陷存储器元件的可用存储器区域。
发明内容
本发明的一个实施例揭示一种组装存储器模块的方法,所述方法包括:针对多个存储器装置中的每一存储器装置,基于对所述存储器装置执行的测试,确定所述存储器装置是否具有任何有缺陷存储器位置,及如果所述存储器装置具有一或多个有缺陷存储器位置,那么识别所述一或多个有缺陷存储器位置,并产生识别所述存储器装置上的所述一或多个有缺陷存储器位置的数据;从所述多个存储器装置选择用于组装到存储器模块中的具有一或多个有缺陷存储器位置的至少一个存储器装置;及响应于所述选择,至少使用具有一或多个有缺陷存储器位置的所述选定的至少一个存储器装置来组装所述存储器模块;其中所述组装包括:针对具有一或多个有缺陷存储器位置的每一存储器装置,将识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据存储于所述存储器模块上的持久性存储装置中;其中所述选择包括基于所述有缺陷存储器位置位于所述至少一个存储器装置中的每一者上的何处而选择所述至少一个存储器装置;其中所述存储器模块包括微处理器及与所述微处理器相关联的持久性存储器;且其中所述存储器模块上的所述持久性存储装置包括与所述微处理器相关联的所述持久性存储器。
本发明的另一实施例揭示一种用于测试及组装存储器模块的***,所述***包括:测试器,其中所述测试器包括处理器;其中所述处理器经配置以:针对多个存储器装置中的每一存储器装置,基于对所述存储器装置执行的测试,确定所述存储器装置是否具有任何有缺陷存储器位置;其中所述处理器进一步经配置以:如果所述存储器装置具有一或多个有缺陷存储器位置,那么识别所述一或多个有缺陷存储器位置,并产生识别所述存储器装置上的所述一或多个有缺陷存储器位置的数据;其中所述***经配置以基于所述有缺陷存储器位置位于所述至少一个存储器装置中的每一者上的何处而从所述多个存储器装置选择用于组装到存储器模块中的具有一或多个有缺陷存储器位置的至少一个存储器装置;其中所述***进一步经配置以:响应于选择具有一或多个有缺陷存储器位置的所述至少一个存储器装置,至少使用具有一或多个有缺陷存储器位置的所述选定的至少一个存储器装置来组装所述存储器模块;其中所述***进一步经配置以:针对具有一或多个有缺陷存储器位置的每一存储器装置,将识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据存储于所述存储器模块上的持久性存储装置中;其中所述存储器模块包括微处理器及与所述微处理器相关联的持久性存储器;且其中所述存储器模块上的所述持久性存储装置包括与所述微处理器相关联的所述持久性存储器。
附图说明
为更好地理解本文中所描述的***及方法的实施例及更清楚地展示可如何实施所述实施例,将以实例方式参考附图,附图中:
图1a及1b是其中提供至少一个存储器模块的存储器空间的框图;
图2是包括多个存储器装置及持久性存储装置的存储器模块的框图;
图3图解说明存储于图2的持久性存储装置中的识别有缺陷存储器位置的数据;
图4是根据至少一个实例性实施例经配置以测试存储器装置的测试***的框图;
图5a及5b是图解说明根据至少一个实例性实施例将经测试存储器装置分类的过程的框图;
图6是图解说明根据至少一个实例性实施例将经测试存储器装置分类的过程的框图;
图7是根据至少一个实例性实施例以经测试存储器装置组装的存储器模块的框图;
图8图解说明根据至少一个实例性实施例存储于持久性存储装置中的识别经测试存储器装置中的有缺陷存储器位置的数据;
图9图解说明根据另一实例性实施例的存储于持久性存储装置中的识别经测试存储器装置中的有缺陷存储器位置的数据;
图10图解说明根据另一实例性实施例存储于持久性存储装置中的识别经测试存储器装置中的有缺陷存储器位置的数据;
图11a及11b是存储器模块的框图,其用于图解说明根据至少一个实例性实施例从经测试存储器装置组装存储器模块的方法;
图12图解说明根据另一实例性实施例存储于持久性存储装置中的识别经测试存储器装置中的有缺陷存储器位置的数据;
图13是根据另一实例性实施例以经测试存储器装置组装的存储器模块的框图;
图14是图解说明根据至少一个实例性实施例在测试及组装存储器模块的方法中所执行的动作的流程图;
图15及16图解说明其中可测试包括多个存储器装置的存储器模块的两个实例性存储器测试***;
图17是图解说明根据一个实例性实施例在于***通电后即刻测试存储器的方法中所执行的动作的流程图;以及
图18是图解说明根据一个实例性实施例在执行存储器监控的方法中所执行的动作的流程图。
具体实施方式
与其中存储器装置上的有缺陷存储器位置使用在计算***或当处于操作中时采用所述存储器装置的其它装置上可用的资源来识别的方法及***相比,本文中所描述的至少一些实施例一般来说涉及用于在存储器装置的测试及组装期间管理有缺陷存储器装置(这通常是在所述存储器装置在其既定被用于的计算***中实际使用之前发生)的***及方法。
举例来说,通过在测试及组装阶段管理有缺陷存储器装置,这可提供对用于组装存储器模块的特定组件的较大控制。
以例示方式,可依据每一存储器装置或存储器模块的测试结果而确定存储器装置的某些特性。实例性特性包含经测试存储器装置或存储器模块上的存储器缺陷的数目及存储器缺陷的位置。
因此,在从已测试的多个存储器装置组装存储器模块时,制造商具备关于每一存储器装置的较多信息,且可在所述存储器装置的实际使用之前确定哪些经测试存储器装置较适合于特定用途。接着,可存储与给定存储器装置相关联且在测试期间获得的存储器缺陷数据以供将来参考。
特定来说,可从其中某些单元被确定为有缺陷的经测试存储器装置组装存储器模块。关于存储器缺陷的信息可在使得存储器模块可供计算***使用之前预先加载到存储器模块上。因此,可使得计算***知晓存储器缺陷的位置以使得在操作期间可跳过那些位置,而计算***自身不必将资源贡献于产生存储器缺陷数据。在测试阶段期间所采用的资源在确定存储器缺陷数据时也可比计算***上可用的资源更可靠。
此外,本文中的至少一些实施例还可允许并非无缺陷的存储器装置在(举例来说)其于测试之后原本可能被丢弃时仍用于组装存储器模块。
在一个广泛方面中,提供一种组装存储器模块的方法,所述方法包括:针对多个存储器装置中的每一存储器装置,基于对所述存储器装置执行的测试而确定所述存储器装置是否具有任何有缺陷存储器位置,且如果所述存储器装置具有一或多个有缺陷存储器位置,那么识别所述一或多个有缺陷存储器位置并产生识别所述存储器装置上的所述一或多个有缺陷存储器位置的数据;及组装存储器模块,所述存储器模块包括所述多个存储器装置中的具有一或多个有缺陷存储器位置的至少一个存储器装置;其中所述组装包括:针对所述存储器模块的具有一或多个有缺陷存储器位置的每一存储器装置,将识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据存储于所述存储器模块上的持久性存储装置中。
在另一广泛方面中,所述方法进一步包括基于所述有缺陷存储器位置位于所述至少一个存储器装置中的每一者上的何处而从所述多个存储器装置选择用于组装到所述存储器模块中的所述至少一个存储器装置。
在另一广泛方面中,针对所述至少一个存储器装置中的每一者,如果所述存储器装置上的所述有缺陷存储器位置中的至少一者及所述至少一个存储器装置中的至少一个不同存储器装置上的所述有缺陷存储器位置中的至少一者在组装所述存储器模块之后将属于所述存储器模块的相同的至少一个存储器块,那么选择所述存储器装置用于组装到所述存储器模块中。
在另一广泛方面中,所述存储器模块上的所述持久性存储装置包括串行存在检测模块。
在另一广泛方面中,所述存储器模块包括微处理器及与所述微处理器相关联的持久性存储器,其中所述存储器模块上的所述持久性存储装置包括与所述微处理器相关联的所述持久性存储器。
在另一广泛方面中,代替串行存在检测模块,所述微处理器及与所述微处理器相关联的所述持久性存储器驻存于所述存储器模块上。在另一广泛方面中,除串行存在检测模块以外,所述微处理器及与所述微处理器相关联的所述持久性存储器也驻存于所述存储器模块上。
在另一广泛方面中,所述方法进一步包括:针对所述多个存储器装置中的每一存储器装置,将识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据存储于数据库中;及针对所述存储器模块的具有一或多个有缺陷存储器位置的每一存储器装置,从所述数据库检索识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据以用于存储于所述存储器模块上的所述持久性存储装置中。
在另一广泛方面中,所述方法进一步包括:针对所述多个存储器装置中的每一存储器装置,产生识别与对所述存储器装置执行的测试相关联的细节的数据;其中组装所述存储器模块进一步包括将识别与对所述存储器装置执行的所述测试相关联的细节的所述数据存储于所述存储器模块上的所述持久性存储装置中。
在另一广泛方面中,所述方法进一步包括:针对所述多个存储器装置中的每一存储器装置,将识别与对所述存储器装置执行的所述测试相关联的所述细节的所述数据存储于数据库中;及针对所述存储器模块的具有一或多个有缺陷存储器位置的每一存储器装置,从所述数据库检索识别与对所述存储器装置执行的所述测试相关联的所述细节的所述数据以用于存储于所述存储器模块上的所述持久性存储装置中。
在另一广泛方面中,与对所述存储器装置执行的所述测试相关联的所述细节包括导致了所述存储器装置的故障的测试模式的识别。
在另一广泛方面中,所述存储器模块包括不具有有缺陷存储器位置的至少一个存储器装置。
在另一广泛方面中,所述存储器模块的每一存储器装置包括相同数目个有缺陷存储器位置。
在另一广泛方面中,所述存储器模块的每一存储器装置包括恰好一个有缺陷存储器位置。
在另一广泛方面中,所述存储器模块包括八个存储器装置。
在另一广泛方面中,所述多个存储器装置包括在所述多个存储器装置当中的总共八个或八个以下有缺陷存储器位置。
在另一广泛方面中,所述方法进一步包括测试所述多个存储器装置中的每一者,其中在所述测试中利用测试向量模式来确定所述多个存储器装置中的每一者上的有缺陷存储器位置。
在另一广泛方面中,所述方法进一步包括从经测试存储器装置的储集区检索所述多个存储器装置。
在另一广泛方面中,所述方法进一步包括在所述检索之前将所述多个存储器装置分类到至少两个群组中,其中将不具有有缺陷存储器位置的存储器装置与具有一或多个有缺陷存储器位置的所述储器装置分离。
在另一广泛方面中,所述分类包括将具有一或多个有缺陷存储器位置的所述存储器装置分离到与预定义数目个有缺陷存储器位置相关联的至少一个群组中。
在另一广泛方面中,所述分类包括将具有大于阈值的数目个有缺陷存储器位置的所述存储器装置分离到一群组中,其中具有大于所述阈值的所述数目个有缺陷存储器位置的存储器装置不用于组装所述存储器模块。
在另一广泛方面中,在来自机器人装置的辅助下执行所述分类。
在另一广泛方面中,从经测试存储器装置的所述储集区检索所述多个存储器装置包括从经测试存储器装置的所述储集区选择所述多个存储器装置,以使得所述多个存储器装置上的所有所述有缺陷存储器位置位于相同的至少一个存储器块中。
在另一广泛方面中,所述相同的至少一个存储器块与至少一个存储器块地址相关联。
在另一广泛方面中,提供一种用于测试及组装存储器模块的***,所述***包括:测试器,其中所述测试器包括处理器,且其中所述处理器经配置以:针对多个存储器装置中的每一存储器装置,基于对所述存储器装置执行的测试而确定所述存储器装置是否具有任何有缺陷存储器位置,且如果所述存储器装置具有一或多个有缺陷存储器位置,那么识别所述一或多个有缺陷存储器位置,并产生识别所述存储器装置上的所述一或多个有缺陷存储器位置的数据;且其中所述***进一步经配置以组装存储器模块,所述存储器模块包括所述多个存储器装置中的具有一或多个有缺陷存储器位置的至少一个存储器装置;其中组装所述存储器模块包括:针对所述存储器模块的具有一或多个有缺陷存储器位置的每一存储器装置,将识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据存储于所述存储器模块上的持久性存储装置上。
现在参考图1a及1b。所述图中展示其中提供至少一个存储器模块的存储器空间的框图。
图1a图解说明包括能够作为存储器寻址的多个存储器组件的存储器空间100的框图。存储器组件的实例可包含存储器模块120及其它存储器映射组件110,所述存储器模块在图中仅以图解方式展示为双列直插式存储器模块(DIMM)。所属领域的技术人员将理解,在变体实施例中,可采用除DIMM以外的存储器模块。存储器空间可包括单个类型或不同类型的多个存储器模块及/或其它存储器组件。
以图解方式,存储器空间100可经受扫描每一存储器装置中的存储器的存储器扫描操作以连续地分析所有可寻址存储器位置。举例来说,在图1a中,可连续地扫描分别与存储器块地址124、125及126相关联的存储器块(在此实例中,与存储器块地址125相关联的存储器块含有与一或多个单元相关联的有缺陷存储器位置127)。“存储器块”通常是指一或多个存储器装置上的个别存储器装置内的存储器单元行、半行或某一其它分组组成的邻接存储器地址空间。
在一个已知***中,存储器扫描操作在计算***的启动期间发生。接着,计算***可形成排除如从存储器扫描操作所确定或如从先前启动扫描所确定的有缺陷存储器位置的存储器映射。识别特定存储器空间内的有缺陷存储器位置的数据可存储于存储器模块上的持久性存储装置中。举例来说,所述持久性存储装置可为存储器模块上的串行存在检测(SPD)装置。
继续图1a的实例,图1b描绘可用存储器空间150,其中与存储器块地址125(图1a)相关联的存储器块在于启动扫描期间检测到有缺陷存储器位置127(图1a)之后已从存储器映射排除。
现在参考图2,其中图解说明存储器模块200的框图。可使用存储器模块200来提供存储器空间(例如,存储器模块200可提供为图1a及1b中的存储器模块120)。在至少一个实施例中,存储器模块200包括多个个别存储器装置(MD),例如,第一存储器装置(MD1)210、第二存储器装置(MD2)215、第三存储器装置(MD3)220、第四存储器装置(MD4)225、第五存储器装置(MD5)230、第六存储器装置(MD6)235、第七存储器装置(MD7)240、第八存储器装置(MD8)245及持久性存储装置(PS)250。所属领域的技术人员将理解,在变体实施方案中,存储器模块200可包括更大或更小数目个存储器装置。
可扫描存储器模块200以找出存储器错误。在一个已知***中,在计算机***内的运行时间环境的执行期间执行针对存储器错误的扫描。可识别个别存储器装置(例如MD1210、MD2 215、MD3 220、MD4 225、MD5 230、MD6 235、MD7 240及MD8 245中的一或多者)上其中检测到存储器错误的存储器位置。识别那些存储器位置的数据可存储于存储器模块200的持久性存储装置250中。其中检测到存储器错误的存储器位置在本文中也称为“有缺陷”存储器位置。
图3图解说明识别图2的存储器模块200中的有缺陷存储器位置的数据可如何存储于图2的持久性存储装置250中。在一些实施方案中,识别有缺陷存储器位置的数据可被记录为可更新存储器参考。在展示持久性存储装置250的实例性内容的图3中,识别存储器模块200(图2)中的有缺陷存储器位置的数据可包含识别MD1 210中的第一有缺陷存储器位置的第一条目310、识别MD1 210中的第二有缺陷存储器位置的第二条目320及在识别MD8 245中的有缺陷存储器位置的最后条目330之前的其它条目(未展示)。持久性存储装置250可提供如果稍后识别出额外有缺陷存储器位置那么可更新的一或多个空白条目340。
图3是仅出于说明性目的而提供的。将理解,MD1 210可具有任何数目个有缺陷存储器位置(例如,无、1、2、3或3个以上),且因此,持久性存储装置250中的条目将不同于图3中所展示的图解。类似地,MD8 245可具有任何数目个有缺陷存储器位置(例如,无、1、2、3或3个以上),且因此,持久性存储装置250中的条目将不同于图3中所展示的图解。取决于持久性存储装置250的容量及存储于其中的条目的数目,空白条目340可为或可不为可用的。
根据本文中所描述的至少一个实施例,识别有缺陷存储器位置的数据可源自存储于数据库中的数据。举例来说,所述数据库可填充有在存储器装置组装到存储器模块中之前于所述存储器装置的测试期间获得的数据,如下文所论述。
现在参考图4,其展示图解说明根据至少一个实例性实施例用于对存储器装置430执行测试的测试***400的框图。
通常,存储器装置由制造商测试及认证以确保信号参数在由制造商或通过对应适当标准设定的容许范围内。对存储器装置的完整测试可包含功能测试以及专用测试两者。
对于存储器装置为特有的,功能测试通常测试存储器装置是否恰当地执行特定功能及满足制造商的规格。举例来说,功能测试可测试写入到存储器单元的数字值稍后是否将被无错误地检索,而不管如何实施存储器装置。更具体来说,存储器装置可经受模式测试,模式测试是一种实践每一存储器装置以关于某些测试向量模式验证其功能性的方法。
功能测试也可测试存储器装置的某些关键操作特性是否属于容许值范围内。参数测试验证关键操作特性,包含例如功率消耗、待机电流、泄漏电流、电压电平及存取时间的特性。容许范围可由存储器装置的制造商或通过对应适当标准设定。
尽管功能测试通常是旨在发现受测试存储器装置在其既定用途或应用期间是否可能出故障,但其通常涉及测试存储器装置以验证其如何执行出于此目的而特别设计的一组特定功能。
对存储器装置的进一步测试也可涉及专用测试。在专用测试期间,存储器装置可经受对其***行为的测试以便检测其行为故障。行为故障是在存储器装置于实际应用***内进行操作时发生的一种类型的故障。举例来说,行为故障可为由于在个人计算机(PC)上的常规操作中执行的对存储器装置的特定命令或存取序列而发生的故障。
功能测试将未必检测行为故障。在功能测试的情况下,受测试存储器装置的操作不需要指示所述装置在其既定应用期间将如何运转。因此,除功能测试以外,对存储器装置的完整及全面测试也可需要专用测试。
再次参考图4,测试***400通常包含测试器410、处置器415及受测试装置(DUT)420。测试器410可经由接口412连接到处置器415。测试器410及处置器415也可经由网络407或通过所属领域的技术人员已知的其它手段连接到数据库405。
举例来说,测试器410可包含程序存储器(PM)450、比较器460、测试向量模式产生器(TVPG)480、控制器(Contr)490、控制计算机(CC)494及微处理器(mP)495。实际上,图4中逻辑地展示的元件中的一些元件的功能可集成到一或多个物理组件中。在DUT 420包含至少一个存储器装置(MD)430的情况下,测试器410还可包含参考存储器装置(RD)470。
为易于阐释,仅图解说明测试器410及测试***400的各种组件之间的某些电连接。然而,所属领域的技术人员将理解,除图4中所展示的组件或连接中的一或多者以外或作为其替代方案,测试器410及/或测试***400还可包含若干组件或连接。
在图4的实例中,测试器410经由通信信道440将信号发射到DUT 420或从DUT 420接收信号。
在图4中,将DUT 420图解说明为单个存储器装置430。然而,将理解,DUT 420可包括多个存储器装置,且所述多个存储器装置可属于一或多个存储器模块。举例来说,可连续地或并行地执行多个存储器装置中的每一者的测试。在变体实施例中,DUT 420可包含除存储器装置以外的一或多个装置。
在至少一个实施例中,测试器410及处置器415在对DUT 420的测试期间彼此协作。测试器410及处置器415中的每一者可配备有至少经配置以传递测试结果的控制计算机或其它处理元件(例如分别为494及416)。举例来说,处置器415可首先(通过机械构件417,例如,机器人装置)将DUT 420装载到测试器410的测试单元(未展示)中以促进测试。测试器410对DUT 420执行测试。测试结果由控制计算机(CC)494处理。接着,测试器中的控制计算机494可(举例来说)经由接口412将测试结果发送到处置器中的控制计算机416。基于所接收测试结果,处置器中的控制计算机416可接着确定将经测试存储器装置从测试单元物理上移动到何处。
以下段落中关于DUT 420来描述测试器410的一些实例性操作。举例来说,可对存储器装置430的每一个别存储器单元执行测试以使得如果给定个别存储器单元被确定为有缺陷(例如所述存储器单元未通过由测试***400实施的测试),那么可识别其对应存储器位置。
为对DUT 420执行测试,微处理器495可从程序存储器450检索一或若干指令。作为响应,微处理器495可指示TVPG 480产生测试向量模式的数字表示,所述数字表示接着由TVPG 480发送到控制器490。在测试中可利用所述测试向量模式来确定DUT 420上的有缺陷存储器位置,在此实例中,DUT 420为存储器装置430。或者,DUT 420可包括多个存储器装置。
在接收到由TVPG 480产生的测试向量模式后,控制器490即刻将所述测试向量模式转换为电波形。接着,控制器490经由通信信道440将所述电波形输出到DUT 420。TVPG480也将测试向量模式的数字表示发送到参考存储器装置470以供暂时存储以在测试程序中的稍后阶段使用。在变体实施例中,可代替参考存储器装置470而采用包括多个存储器装置的参考存储器模块,举例来说,特别是在DUT 420包括多个存储器装置的情况下。
电波形跨越通信信道440电发射到DUT 420且往回取样成数字形式。在电波形已由控制器490发射到DUT 420之后的某一时刻,DUT 420跨越通信信道440电发射含有DUT 420的每一存储器装置(在此实例中,即图4中所图解说明的存储器装置430)的响应位模式的响应数据信号。其上的适当组件或模块(未展示)可经配置以将来自DUT 420的响应数据信号从其数字形式转换为电波形。
接着,控制器490将来自DUT 420的响应数据信号转换成数字形式。所述响应数据信号包含由存储器装置430产生的响应数据信号,所述响应数据信号取决于由控制器490作为电波形发送到DUT 420的测试向量模式。
接着,控制器490将来自DUT 420的经转换响应数据信号中继到比较器460。在比较器460处,将来自DUT 420的响应数据信号与参考信号(即,参考位模式,通常也称为预期位模式)的数字形式进行比较,所述参考信号即控制器490预期从发送响应数据信号的DUT420接收的信号。在一个实施例中,先前所存储参考信号由参考存储器装置470发射到比较器460。比较器460基于数字比较而确定响应数据信号是否为对应参考信号的等同匹配,且将所述逻辑确定输出到微处理器495。
如果比较器460确定两个所比较信号之间(即,响应数据信号与对应参考信号之间)的数字匹配,那么DUT 420已至少在所述特定测试向量模式的上下文中产生有效数据。在DUT 420未被确定为在测试期间已经历故障且确定为已满足所有所需规格的情况下,可将DUT 420视为“良好”或“无缺陷”存储器装置。
然而,如果比较器460确定两个所比较信号在数字上不等同,那么DUT 420可能已经历某一种类的故障。如先前所描述,对存储器装置430上的每一个别存储器单元执行测试。因此,在比较器460确定DUT 420已经历故障之后,可识别存储器装置上其中发生故障的一或多个存储器位置,且那一或多个存储器位置被认为是“有缺陷”的。一旦产生识别存储器装置上的一或多个有缺陷存储器位置的数据,便可存储所述数据。
举例来说,识别存储器装置上的一或多个有缺陷存储器位置的数据可存储于数据库405中。此数据库405可驻存于可在测试器410外部或在测试器410内或者耦合到测试器410的计算机***上。举例来说,如果数据库405在测试器410外部,那么所述数据库可经由网络407存取。
举例来说,除识别存储器装置上的实际存储器位置的数据以外,数据库405中与有缺陷存储器位置相关联的每一条目也可包括存储器装置识别号。任选地,描述DUT 420在测试期间的故障的其它细节(例如,DUT的技术特性或导致DUT的故障的测试模式)也可记录于数据库405中。此外,与处置器415相关联的信息也可存储于数据库405中,例如识别测试过程中所使用的处置器的数据(例如,如果使用多个处置器)及识别处置器放置用于测试的存储器装置的位置的数据(例如,测试插口识别符)。此外,与测试器410相关联的信息也可存储于数据库405中,例如识别测试过程中所使用的测试器的数据(例如,在使用多个测试器的情况下)。
如本文中所描述,根据至少一个实施例,数据库405可用于针对多个存储器装置中的每一存储器装置存储识别所述存储器装置上的一或多个有缺陷存储器位置的数据以供随后记录到存储器模块上的持久性存储装置上。举例来说,从数据库405获得的其它数据(例如存储器装置的操作参数(例如,电子装置工程联合委员会(JEDEC)存储器标准)及制造商特有参数或数据)也可存储于存储器模块上的持久性存储装置中。
在至少一个实施例中,经测试存储器装置或替代地多个经测试存储器装置可在测试之后分类为至少两个群组。举例来说,可将经确定不具有有缺陷存储器位置的存储器装置与经确定具有一或多个有缺陷存储器位置的存储器装置分离。经确定不具有有缺陷存储器位置的存储器装置可归类为“良好”或“无缺陷”存储器装置,而经确定具有一或多个有缺陷存储器位置的存储器装置通常可归类为“坏”或至少部分地“有缺陷”存储器装置。然而,如先前所述,已归类为“坏”的存储器装置通过在存储器模块上的持久性存储装置中识别有缺陷存储器位置而仍可变为有用的,举例来说,所述存储器模块随后将允许计算装置在操作期间“跳过”那些有缺陷存储器位置。
具有一或多个有缺陷存储器位置的存储器装置可通过存储器装置特性而进一步归类,例如,是否超过有缺陷存储器位置的阈值数目及/或是否存在存储器泄漏(例如,只有在环绕给定单元的存储器单元呈现特定值时才检测到所述给定单元中的错误)。举例来说,如果超过有缺陷存储器位置的阈值数目,那么可丢弃存储器装置。
现在参考图5a及5b,展示图解说明根据至少一个实例性实施例将经测试存储器装置分类的过程的框图500、550。
根据至少一个实例性实施例,图5a图解说明放置到两个群组中的一者中(如在522处所展示)的经测试存储器装置(描绘为MD’)520。举例来说,经测试存储器装置可在经历由测试器410进行的测试之后分类到分级箱中,以图解方式,例如分级箱1 530及分级箱2535。
在图5a中,经测试存储器装置MD’520由处置器415放置到分级箱1 530中。出于此实例的目的,将分级箱1 530指定为存储不具有有缺陷存储器位置的经测试存储器装置的地方,而将分级箱2 535指定为将存储具有一或多个有缺陷存储器位置的经测试存储器装置的地方。
如图5b中所图解说明,经测试存储器装置MD’520可代替地被放置到分级箱2 535中(如在522处所展示)。在此实例中,在确定经测试存储器装置MD’520具有一或多个有缺陷存储器位置之后,所述经测试存储器装置由处置器415放置到分级箱2 535中。
术语“分级箱”在本文中通常用于定义可用于将存储器装置分组在一起的任何逻辑或物理机构,且在变体实施方案中可采用不同容器。将进一步理解,所图解说明分级箱中的每一者可经指定以在特定测试周期内接收相同类型的存储器装置。通常,每一分级箱可用于收集相同类型且具有类似测试结果的经测试存储器装置。
在变体实施例中,经确定具有一或多个有缺陷存储器位置的存储器装置可基于有缺陷存储器位置的数目而被分类。可存在基于有缺陷存储器位置的数目而定义多个群组的若干种方式。举例来说,可将具有大于或等于某一阈值的数目个有缺陷存储器位置的存储器装置分离到其自已的群组中以使得其可被丢弃。具有小于阈值的数目个有缺陷存储器位置的其余存储器装置可被分类到至少一个其它群组中。可针对具有特定数目个有缺陷存储器位置(例如,1、2或3个有缺陷存储器位置等)或一范围的有缺陷存储器位置(例如,1到2及3到4或1到3及4到6个有缺陷存储器位置等)的存储器装置而定义一些群组。
此外,在一些实施例中,确定为具有一或多个有缺陷存储器位置的经测试存储器装置可基于发现所述有缺陷存储器位置的存储器块而被分类。举例来说,可将在将对应于存储器模块内的相同存储器块地址的存储器块内(且任选地,举例来说,在将对应于相邻存储器块地址的存储器块内)具有一或多个有缺陷存储器位置的多个存储器装置分组在一起。
图6图解说明将经测试存储器装置MD 652、655及660分类到以下六个不同分级箱中的一者中的实例性过程:分级箱1 605、分级箱2 610、分级箱3 620、分级箱4 630、分级箱5 640及分级箱6 650。为易于参考,在此实例中图解说明(例如由六个对应分级箱定义的)六个群组。然而,如先前所述,将理解可使用更大或更少数目个群组。
图6中所图解说明的每一分级箱可经指定用于具有特定数目(或数目范围)的有缺陷存储器位置的存储器装置的群组。举例来说,分级箱1 605可经指定用于不具有有缺陷存储器位置的经测试存储器装置(例如经测试存储器装置652),分级箱2可经指定用于具有一个有缺陷存储器位置的经测试存储器装置,分级箱3可经指定用于具有两个有缺陷存储器位置的经测试存储器装置,分级箱4可经指定用于具有三个有缺陷存储器位置的经测试存储器装置(例如经测试存储器装置655),分级箱5可经指定用于具有四个有缺陷存储器位置的经测试存储器装置,且分级箱6可经指定用于具有五个或五个以上有缺陷存储器位置的经测试存储器装置(例如经测试存储器装置660)。
在替代配置中,分级箱1 605可经指定用于不具有有缺陷存储器位置的经测试存储器装置,分级箱2可经指定用于具有一个有缺陷存储器位置的经测试存储器装置,分级箱3可经指定用于具有两个有缺陷存储器位置的经测试存储器装置,分级箱4可经指定用于具有三个或四个有缺陷存储器位置的经测试存储器装置,分级箱5可经指定用于具有五个、六个或七个有缺陷存储器位置的经测试存储器装置,且分级箱6可经指定用于具有八个或八个以上有缺陷存储器位置的经测试存储器装置。在此实例中,如果将在存储器装置将经受丢弃之前的有缺陷存储器位置的阈值数目定义为八,那么分类到分级箱6 650中的存储器装置可被标记为丢弃且不用于组装存储器模块。
作为进一步实例,可将经测试存储器装置分离到三个群组或分级箱中。第一分级箱可经指定用于经确定不具有有缺陷存储器位置的经测试存储器装置,第二分级箱可经指定用于经确定具有大于阈值的数目个有缺陷存储器位置的经测试存储器装置,且第三分级箱可经指定用于具有一或多个有缺陷存储器位置但其中有缺陷存储器位置的数目小于阈值的经测试存储器装置。举例来说,如果有缺陷存储器位置的阈值为10,那么经确定具有10个或10个以上有缺陷存储器位置的经测试存储器装置将分类到第二分级箱中,而经确定具有介于1与9个之间的有缺陷存储器位置的经测试存储器装置将分类到第三分级箱中。
然而,将理解,在变体实施例中,阈值可不同。在一些实施例中,可不定义阈值。
作为进一步实例,经测试存储器装置可基于给定装置中的有缺陷存储器位置在一或多个特定存储器单元行或列内而被分离到分级箱中,其中所述特定行或可列与一或多个特定存储器块地址相关联。举例来说,给定装置可拥有1024行存储器单元。第一分级箱可经指定用于不具有有缺陷存储器位置的经测试存储器装置,第二分级箱可经指定用于具有在给定装置的第1到128行存储器单元中的任一者中的有缺陷存储器位置的经测试存储器装置,第三分级箱可经指定用于具有在给定装置的第129到256行存储器单元中的任一者中的有缺陷存储器位置的经测试存储器装置,等等。
将理解,在变体实施例中,待利用的分级箱的数目可不同。还将理解,在变体实施例中,可采用用于将经测试存储器装置分类的其它准则。举例来说,在变体实施例中,经测试存储器装置可基于与对存储器装置的测试相关联的电压、时序参数或频率参数的变化而被分类。
还将理解,用于组装到存储器模块中的经测试存储器装置的选择可不需要最初将经测试存储器装置分类到最终分组中。可代替地采用不同且连续分类技术。举例来说,可首先基于有缺陷存储器位置的数目而将经测试存储器装置分类,接着可基于某些有缺陷存储器位置在将对应于存储器模块内的相同存储器块地址(或相邻存储器块地址)的某些存储器单元群组内而进一步将每一经测试存储器装置群组分类。如先前所述,存储器块可横跨多个存储器装置。相反,可首先基于发现一或多个有缺陷存储器位置的存储器块地址而将经确定具有所述有缺陷存储器位置的存储器装置分类,之后基于有缺陷存储器位置的数目而进一步将其分类。
在进一步实例中,经测试存储器装置在组装到存储器模块中之前可根本不被预先分类到若干群组中。
在至少一个实施例中,分类可在机器人装置的辅助下执行。
在已对存储器装置进行测试及任选地分类且将测试数据存储于数据库(例如,图4的数据库405)中之后,接着可检索所述存储器装置以用于组装到一或多个存储器模块中。举例来说,如果需要,那么组装可仅在已测试充足数目个存储器装置之后开始。在至少一个实施例中,可从包括一或多个经测试存储器装置群组的储集区(例如,从一或多个分级箱)检索多个存储器装置以用于组装到一或多个存储器模块中。
在至少一个实施例中,可选择从经测试存储器装置的储集区检索的多个存储器装置以使得给定存储器模块的多个存储器装置上的所有有缺陷存储器位置均位于对应于特定存储器块地址的相同存储器块内或位于对应于特定相邻存储器块地址群组的存储器块内。
当组装存储器模块时,可使用任何数目个存储器装置。通常,将根据标准配置(例如,使用各自存储八个数据位的八个存储器装置或使用各自存储四个数据位的十六个存储器装置,等等)来组装存储器模块。在本文中所描述的方法及***中,可使用多个存储器装置来组装存储器模块,所述多个存储器装置中的至少一者是具有一或多个有缺陷存储器位置的存储器装置。举例来说,根据本文中先前所描述的测试程序,可通过测试器410(图4)测试所述多个存储器装置中的每一者。
举例来说,存储器模块的组装可在一或多个机械机器或装置的辅助下执行且可涉及化学过程的应用。
在组装给定存储器模块之后,所述存储器模块可经受进一步测试。与在组装存储器模块之后识别但先前在对存储器模块的个别存储器装置的测试期间未识别的任何存储器缺陷有关的信息(其可包含识别有缺陷存储器位置的数据)也可存储于数据库(例如,图4的数据库405)中及/或存储器模块上所提供的持久性存储装置中。
以实例方式,图7是根据至少一个实例性实施例以经测试存储器装置组装的存储器模块700的框图。存储器模块700是从以下八个经测试存储器装置组装的:MD1’705、MD2’707、MD3’711、MD4’713、MD5’715、MD6’717、MD7’719及MD8’721。存储器模块700进一步包括持久性存储装置(PS)730。
在至少一个实施例中,存储器模块700上的持久性存储装置730可为SPD模块或装置。SPD可用于存储存储器模块的特性,例如,制造商数据、日期代码数据、时序参数、操作参数(例如,根据JEDEC标准)、支持参数等。
在变体实施例中,经组装存储器模块的特性可存储于数据库中。举例来说,为方便起见,可将存储于数据库405(图4)中的识别经测试存储器装置中的有缺陷存储器位置的数据传送到可存储(举例来说)与组装到存储器模块中的经测试存储器装置相关联的数据的另一数据库中。此另一数据库也可存储如本文中所描述的经组装存储器模块的其它特性及与测试及组装过程相关联的其它数据(例如,识别所使用的装置及用于组装存储器模块的生产线的数据)。
在至少一个实施例中,识别经测试存储器装置中的有缺陷存储器位置的数据可作为可更新存储器参考存储于持久性存储装置730中。举例来说,图8大体图解说明根据至少一个实例性实施例如存储于持久性存储装置730中的识别经测试存储器装置中的有缺陷存储器位置的数据。识别经测试存储器装置中的有缺陷存储器位置的数据可取决于经确定为在组装于存储器模块中的经测试存储器装置中的每一者内的有缺陷存储器位置的数目而包含识别第一经测试存储器装置MD1’705中的第一有缺陷存储器位置的第一条目810、识别第一经测试存储器装置MD1’705中的第二有缺陷存储器位置的第二条目820、识别第一经测试存储器装置MD1’705中的第三有缺陷存储器位置的第三条目830,等等。最终,识别经测试存储器装置中的有缺陷存储器位置的数据可包含识别第八经测试存储器装置721中的最后有缺陷存储器位置的最后条目840。识别经测试存储器装置中的有缺陷存储器位置的数据可取决于持久性存储装置730的容量及对应于所识别错误位置的条目的数目而进一步包含可经更新以存储可稍后发现的额外有缺陷存储器位置的一或多个空白条目850。举例来说,可通过测试器410(例如,其可用于对经组装存储器模块执行额外测试)或在存储器模块随后经部署以供在计算机***或装置上使用时通过所述计算机***或装置来添加稍后所发现及所识别的有缺陷存储器位置。
在至少一个实施例中,可从数据库(例如,图4的数据库405及/或用于存储本文中所描述的经组装存储器模块的特性的数据库)检索识别经测试存储器装置中的每一者中的一或多个有缺陷存储器位置的数据,之后存储于存储器模块700的持久性存储装置730中。
再次参考图7,以较多特定实例方式,八个经测试存储器装置(MD’)705、707、711、713、715、717、719及721可经组装以具有总共八个或八个以下有缺陷存储器位置。
举例来说,在经组装存储器模块700中,八个经测试存储器装置705、707、711、713、715、717、719及721中的每一者可各自具有相同数目个有缺陷存储器位置。举例来说,经组装存储器模块700中的八个经测试存储器装置705、707、711、713、715、717、719及721中的每一者可具有一个有缺陷存储器位置。根据一个实施例,可通过从与包括单个有缺陷存储器位置的经测试存储器装置群组相关联的分级箱检索八个经测试存储器装置来组装此存储器模块。可使用存储于持久性存储装置730中的数据来识别八个经测试存储器装置705、707、711、713、715、717、719及721中的每一者上的有缺陷存储器位置中的每一者。可从数据库(例如,数据库405及/或存储与经组装存储器模块相关联的数据的其它数据库)检索此数据。
图9图解说明根据以上所描述的实例存储于持久性存储装置730中的识别经测试存储器装置中的有缺陷存储器位置的数据。在其中存储器模块700中的八个经测试存储器装置705、707、711、713、715、717、719及721中的每一者具有一个有缺陷存储器位置的实例中,存储于经组装存储器模块700的持久性存储装置730中的识别经测试存储器装置中的有缺陷存储器位置的对应数据可包括识别第一经测试存储器装置MD1’705中的第一有缺陷存储器位置的第一条目910、识别第二经测试存储器装置MD2’707中的第一有缺陷存储器位置的第二条目920、识别第三经测试存储器装置MD3’711中的第一有缺陷存储器位置的第三条目930、识别第四经测试存储器装置MD4’713中的第一有缺陷存储器位置的第四条目940、识别第五经测试存储器装置715中的第一有缺陷存储器位置的第五条目950、识别第六经测试存储器装置717中的第一有缺陷存储器位置的第六条目960、识别第七经测试存储器装置MD7’719中的第一有缺陷存储器位置的第七条目970及识别第八经测试存储器装置MD8’721中的第一有缺陷存储器位置的第八条目980。识别经测试存储器装置中的有缺陷存储器位置的数据可进一步包含可更新以存储与稍后发现且识别的额外有缺陷存储器位置相关联的数据的一或多个空白条目990。
作为进一步实例,经组装存储器模块中的经测试存储器装置中的四者可各自具有两个有缺陷存储器位置,而经组装存储器模块中的其余四个经测试存储器装置可各自不具有有缺陷存储器位置。图10图解说明根据此实例存储于持久性存储装置730中的识别经测试存储器装置中的有缺陷存储器位置的数据。可通过从经指定用于具有两个有缺陷存储器位置的经测试存储器装置群组的分级箱检索四个经测试存储器装置及从经指定用于不具有有缺陷存储器位置的经测试存储器装置群组的分级箱检索四个经测试存储器装置来组装存储器模块。可存储于经组装存储器模块700的持久性存储装置730中的识别经测试存储器装置中的有缺陷存储器位置的对应数据可包括识别第一经测试存储器装置MD1’705中的第一有缺陷存储器位置的第一条目1010、识别第一经测试存储器装置MD1’705中的第二有缺陷存储器位置的第二条目1020、识别第二经测试存储器装置MD2’707中的第一有缺陷存储器位置的第三条目1030、识别第二经测试存储器装置MD2’707中的第二有缺陷存储器位置的第四条目1040、识别第三经测试存储器装置MD3’711中的第一有缺陷存储器位置的第五条目1050、识别第三经测试存储器装置MD3’711中的第二有缺陷存储器位置的第六条目1060、识别第四经测试存储器装置MD4’713中的第一有缺陷存储器位置的第七条目1070及识别第四经测试存储器装置MD4’713中的第二有缺陷存储器位置的第八条目1080。识别经测试存储器装置中的有缺陷存储器位置的数据可进一步包含可更新以存储与稍后发现且识别的额外有缺陷存储器位置相关联的数据的一或多个空白条目1090。
作为进一步实例,八个经测试存储器装置可经组装以使得经组装存储器模块中的经测试存储器装置中的两者可各自具有四个有缺陷存储器位置,而经组装存储器模块中的其余六个经测试存储器装置可各自不具有有缺陷存储器位置。作为进一步实例,存储器模块可经组装以使得经测试存储器装置中的一者具有八个有缺陷存储器位置,而经组装存储器模块中的其余七个经测试存储器装置各自不具有有缺陷存储器位置。
本文中所描述的所有这些实例均是出于说明性目的而提供的,且将理解,在变体实施方案中,可存在有缺陷存储器位置在经组装存储器模块的经测试存储器装置当中的其它分布。
如先前所述,在至少一个实施例中,存储器模块可以经测试存储器装置组装以使得有缺陷存储器位置(如果有)位于对应于存储器模块内的特定存储器块地址的相同存储器块内或位于对应于特定相邻存储器块地址群组的存储器块内。
现在参考图11a及11b,其提供用于图解说明根据至少一个实例性实施例组装经测试存储器装置的方法的存储器模块的框图。
跨越存储器模块的不同存储器装置的存储器单元群组可构成可连续寻址的存储器块。因此,当存储器模块在使用中时,可并行地存取(例如读取或写入)存储器模块的多个存储器装置中的每一者上的存储器单元(例如,一行或半行或其它分组)。通常,将在任何给定存储器操作期间并行地存取存储器模块的每一个别存储器装置;然而,在某些实施方案中,可能在存储器操作期间仅并行地存取存储器模块的严格子集的存储器装置。
根据实例性存储器管理方案,响应于对与存储器块地址相关联的特定单元的每一存储器存取请求(例如读取、写入),可从与所述特定存储器块地址相关联的存储器位置并行地存取存储器模块的每一存储器装置上的数据。即使请求与将从特定存储器装置读取或写入到特定存储器装置的数据有关,也可存取多个存储器装置上的存储器位置。
举例来说,对于包括八个存储器装置的存储器模块,指向此存储器模块上的字节的存储器地址可由23位值表示。存储器地址的位0到2可用于识别八个存储器装置中的特定一者,位3到12可用于指定列地址,且位13到22可用于指定行地址。
在其中存储器控制器受微处理器请求以读取存储器模块上特定存储器地址处的字节的读取操作期间,存储器控制器使存储器模块识别位3到22;然而,保留位0到2。因此,存储器控制器将从存储器模块接收并非一个而是八个连续数据字节-从八个存储器装置中的每一者接收一个数据字节。接着,存储器控制器可识别所请求字节(通过接着考虑存储器地址的位0到2的值)、确定正请求哪一数据字节且将所请求数据字节返回到微处理器。与所请求字节同时检索的其它七个数据字节可被丢弃或暂时存储(例如,存储于高速缓冲存储器中)。在其中存储器控制器受微处理器请求以将字节在特定存储器地址处写入到存储器模块的写入操作期间,也可同时存取全部八个存储器装置。存储器控制器给存储器模块提供待写入到所要存储器装置的数据字节连同“经掩蔽”(即,未实际写入到存储器)的七个其它(例如,任意)字节。因此,仅覆写所要存储器装置处的数据。
被视为可连续寻址“存储器块”的不同部分通常将分布于存储器模块中的每一个存储器装置上(但在一些实施方案中,不同存储器块部分可能将分布于存储器模块的较少存储器装置上)。可连续寻址存储器块可与唯一存储器块地址相关联。最后,当根据此存储器布置方案存取存储器时,甚至当在特定时间可期望来自仅一个特定存储器装置的数据时,通常也将并行地存取存储器模块的多个装置上的数据以便减少存储器存取时间。在预期进行将来存储器存取时,提前从跨越所有存储器装置的对应于存储器块的对应存储器单元行检索数据且暂时地高速缓存一些数据可为较高效的。
举例来说,在图11a的实例中,存储器模块1100是从至少三个存储器装置MD11110、MD2 1120及MD3 1130组装的。通常将理解,存储器模块通常可包括比图中所展示的数目小或大的数目个存储器装置。在此实例中,存储器装置MD1 1110、MD2 1120及MD3 1130中的每一者具有相同类型。
在图11a中,图解说明存储器模块1100的三个连续寻址的存储器块,且所述存储器块中的每一者对应于不同存储器块地址,即MA1、MA2及MA3。更具体来说,与存储器块地址MA1相关联的存储器块包括装置MD1 1110上的存储器块部分1101、装置MD2 1120上的存储器块部分1104及装置MD3 1130上的存储器块部分1107。与存储器块地址MA2相关联的存储器块包括装置MD1 1110上的存储器块部分1102、装置MD2 1120上的存储器块部分1105及装置MD3 1130上的存储器块部分1108。与存储器块地址MA3相关联的存储器块包括装置MD11110上的存储器块部分1103、装置MD2 1120上的存储器块部分1106及装置MD3 1130上的存储器块部分1109,等等。
在此实例中,已在存储器装置中的每一者中识别出有缺陷存储器位置(例如,存储器单元),即,分别为存储器装置1110、1120及1130中的每一者中的1111、1121及1131(由图11a中的“X”所描绘)。
如图11a中所展示,有缺陷存储器位置位于与不同存储器块地址相关联的不同存储器块内的存储器单元处。举例来说,MD1中的有缺陷存储器位置1111在与存储器块地址MA2相关联的存储器块中,MD2中的有缺陷存储器位置1121在与存储器块地址MA1相关联的存储器块中,且MD3中的有缺陷存储器位置1131在与存储器块地址MA3相关联的存储器块中。
考虑有缺陷存储器位置可随机地处于给定存储器装置内,且有缺陷存储器位置也可随机地分布于使用随机选择的存储器装置组装的给定存储器模块中的不同存储器装置之间。
因此,在此实例中,当试图对位于与存储器块地址MA1相关联的存储器块中的任何存储器单元进行存取时,实际上将并行地从跨越存储器模块的所有存储器装置的每一存储器块部分1101、1104及1107存取数据,因为所有这些存储器块部分均属于与存储器块地址MA1相关联的一个存储器块。然而,由于存储器块部分1104含有有缺陷存储器位置1121,因此与存储器块地址MA1相关联的整个存储器块可从可用存储器映射排除,且因此属于所述存储器块的所有存储器块部分1101、1104及1107可被排除而不能使用。
类似地,当试图对位于与存储器块地址MA2相关联的存储器块中的任何存储器单元进行存取时,实际上将并行地从跨越存储器模块的所有存储器装置的每一存储器块部分1102、1105及1108存取数据,因为所有这些存储器块部分均属于与存储器块地址MA2相关联的一个存储器块。然而,由于存储器块部分1102中存在有缺陷存储器位置1111,因此可从可用存储器映射排除属于所述存储器块的所有存储器块部分1102、1105及1108。
当试图对位于与存储器块地址MA3相关联的存储器块中的任何存储器单元进行存取时,实际上将并行地从跨越存储器模块的所有存储器装置的每一存储器块部分1103、1106及1109存取数据,因为所有这些存储器块部分均属于与存储器块地址MA3相关联的一个存储器块。然而,可从可用存储器映射排除属于所述存储器块的所有存储器块部分1103、1106及1109,因为存储器块部分1109中存在有缺陷存储器位置1131。
相比来说,根据本文中所描述的至少一个实施例,图11b描绘从至少三个经测试存储器模块MD1’1160、MD2’1170及MD3’1180组装的存储器模块1150。图11b中的存储器模块的一般结构类似于图11a的存储器模块。具体来说,将每一经测试存储器装置MD1’、MD2’及MD3’展示为具有三个存储器块部分,即,MD1’的存储器块部分1151、1152及1153、MD2’的存储器块部分1154、1155及1156,以及MD3’的存储器块部分1157、1158及1159。此外,每一个别存储器块部分属于三个不同存储器块中的一者,且所述三个存储器块中的每一者与不同存储器块地址(即,MA1、MA2或MA3)相关联。
然而,与分布(例如,随机地)于与不同存储器块地址相关联的不同存储器块当中的图11a中所展示的有缺陷存储器位置1111、1121及1131不同,图11b中的有缺陷存储器位置1161、1171及1181全部位于与一个特定存储器块地址MA2相关联的相同存储器块内。
为实现此结果,根据本文中所描述的至少一个实施例,在组装存储器模块时,可唯一地选择经测试存储器装置,具体来说是基于针对那些装置所识别的有缺陷存储器位置而进行选择。所述选择允许存储器模块内的存储器装置的特定布置以使得跨越多个存储器装置的不同有缺陷存储器位置将位于相同存储器块中的一或多者内,如图11b中以实例方式所图解说明。
在所述实例中,MD1’、MD2’及MD3’中的每一者通过由如本文中所描述的测试器410执行的测试过程来测试且经确定具有一或多个有缺陷存储器位置。特定来说,接着将三个经测试存储器装置分组在一起并使用其来组装存储器模块1150,因为经测试存储器装置MD1’、MD2’及MD3’中的每一者经确定在位于与一个特定存储器块地址MA2相关联的一个存储器块中的存储器块部分1152、1155及1158中包括有缺陷存储器位置1161、1171及1181。
在另一实例性实施方案中,可能已首先基于有缺陷存储器位置的数目而将经测试存储器装置MD1’、MD2’及MD3’(例如,各自具有一个有缺陷存储器位置)分类,且接着基于给定存储器装置的有缺陷存储器位置将位于其中的特定存储器块而进一步将其分类。如果需要,那么可恰好在组装存储器模块之前进行所述进一步分类。
再次参考图11b,当试图对位于与存储器块地址MA1相关联的存储器块中的任何存储器单元进行存取时,将从存储器块部分1151、1154及1157存取数据。由于这些存储器块部分中的任一者中不存在有缺陷存储器位置,因此所有存储器块部分1151、1154、1157(即,整体的存储器块)通常均将包含于可用存储器映射中。类似地,属于与存储器块地址MA3相关联的存储器块的存储器块部分1153、1156及1159通常也将包含于可用存储器映射中,因为这些存储器块部分中的任一者中不存在有缺陷存储器位置。然而,可从可用存储器映射排除属于对应于存储器块地址MA2的存储器块的存储器块部分1152、1155及1158,因为存储器块部分1152、1155及1158中的至少一者含有有缺陷存储器位置。
通过在组装存储器模块时公正地选择存储器装置,可增加可最终包含于可用存储器映射中的存储器块的数目。如由图11a及11b所图解说明,尽管存储器模块1100及1150中的每一者分别含有具有一个有缺陷存储器位置的存储器装置,但实际上将制成为可供使用的存储器的量可取决于有缺陷存储器位置位于每一个别存储器装置上何处而显著变化。在图11a的实例中,从可用存储器排除九个存储器块部分1101、1102、1103、1104、1105、1106、1107、1108及1109(即,三个整存储器块),而在图11b的实例中,仅需要从可用存储器排除三个存储器块部分1152、1155及1158(即,仅一个整存储器块)。
所属领域的技术人员将理解,图11a及11b中所描绘的存储器装置的结构是出于说明性目的而展示的。在变体实施方案中,每一存储器装置中的存储器块部分的数目可大于或小于如所展示的数目。每一存储器块中的个别存储器位置(例如,单元)的数目通常将大于如所描绘的数目,但在变体实施方案中,可更小。
还将理解,在某些架构中,存储器块可包括相同存储器装置上的多个存储器块部分(例如,多个存储器单元行)。于是,确定给定存储器块是否可能含有有缺陷存储器位置通常将需要确定给定存储器装置上的多个存储器块部分(或若干存储器单元行)中的任一者是否含有存储器有缺陷存储器位置,且接着针对含有相同给定存储器块的部分的存储器模块中的每一其它存储器装置重复此动作。
注意,当选择用于组装到存储器模块中的存储器装置以使得有缺陷存储器位置位于相同存储器块中(或相同的相邻存储器块群组中)时,通常需要了解相关架构。举例来说,有缺陷存储器位置可存在于给定存储器装置上的第一及第三存储器单元行中。接着,当这些个别存储器单元行与不同存储器块相关联(在此实例中,影响两个不同存储器块)或这些存储器单元行与一个存储器块相关联(在此实例中,第一及第三存储器单元行可与单个存储器块相关联)时,其可影响对用于组装存储器模块的存储器装置的选择。
图12结合图11b的实例性存储器模块1150而图解说明存储于持久性存储装置730中的识别经测试存储器装置中的有缺陷存储器位置的数据。在此实例中,三个所图解说明经测试存储器装置中的每一者上的有缺陷存储器位置具有在与存储器块地址MA2相关联的存储器块内的有缺陷存储器位置。可通过从经指定用于具有在与存储器块地址MA2相关联的存储器块内的有缺陷存储器位置的经测试存储器装置的分级箱检索三个经测试存储器装置来组装所述存储器模块。可存储于经组装存储器模块1150的持久性存储装置730(图11b中未明确展示)中的识别经测试存储器装置中的有缺陷存储器位置的对应数据可包括识别第一经测试存储器装置MD1’1160(图11b)中的第一有缺陷存储器位置1161(图11b)的第一条目1210、识别第二经测试存储器装置MD2’1170(图11b)中的第一有缺陷存储器位置1171(图11b)的第二条目1220及识别第三经测试存储器装置MD3’1180(图11b)中的第一有缺陷存储器位置1181(图11b)的第三条目1230。
在一些实施例中,在测试经组装存储器模块1150之后,由于三个条目1210、1220、1230指代与相同存储器块地址MA2相关联的相同存储器块,因此可通过移除所述三个条目中的两者而简化持久性存储装置730中的记录,从而在三个条目1210、1220、1230中的任一者存在于持久性存储装置730中的情况下均认识到可从可用存储器排除整个存储器块。然而,可期望将所有三个条目均保持于持久性存储装置中,特别是在希望维持关于每一个别存储器装置上的有缺陷存储器位置的信息以供将来某时使用的情况下。
将理解,如存储于持久性存储装置730中的识别经测试存储器装置中的有缺陷存储器位置的数据可进一步包含识别可位于经组装存储器模块1150上的任何其它存储器装置上的任何有缺陷存储器位置的条目,且可进一步包含可更新以存储与稍后发现且识别的额外有缺陷存储器位置相关联的数据的一或多个空白条目1290。与经组装存储器模块1150上的经测试存储器装置相关联的其它数据(举例来说,如先前所述)也可存储于持久性存储装置730中。
依据以上实例还将理解,在至少一个实施例中,可从不具有有缺陷存储器位置的至少一个存储器装置组装存储器模块。
如先前所述,参考至少图3、8、9、10及12的说明,举例来说,识别经测试存储器装置中的有缺陷存储器位置的数据可能连同其它数据(例如,制造商数据、日期代码数据、时序参数、操作参数(例如,根据JEDEC标准)、支持参数等)一起存储于持久性存储装置(例如,图2的250、图7的730)中。在至少一个实施例中,持久性存储装置包括SPD模块或装置。
然而,在某些实施方案中,关于SPD装置的最大存储容量的限制可成为一问题,特别是在其数据将存储于SPD装置(充当存储器模块上的持久性存储装置250、730)上的错误的数目较高时。举例来说,如果SPD装置具有256B(字节)的容量且期望存储于SPD上的数据量将超过此容量,那么很可能将丢弃存储器模块。
在至少一个变体实施例中,持久性存储装置250、730包括在存储器模块内部或以其它方式经保留以供也驻存于所述存储器模块上的微处理器使用的持久性存储器。此微处理器在其操作期间通常不使用由其所放置于的存储器模块的存储器装置提供的存储器;而是,微处理器在执行处理任务时可以存取且通常采用其自已的持久性内部存储器及其自已的易失性内部存储器两者。举例来说,可以存储于持久性存储器中的计算机可读指令来体现待由处理器执行的任务。
为图解说明,图13是根据至少一个实例性实施例以经测试存储器装置组装的存储器模块700的框图。存储器模块700是从以下八个经测试存储器装置组装的:MD1’705、MD2’707、MD3’711、MD4’713、MD5’715、MD6’717、MD7’719及MD8’721。存储器模块700进一步包括在微处理器(mP)735内部的持久性存储装置(PS)730。如先前所述(例如参考图7到10的说明),识别经测试存储器装置中的有缺陷存储器位置的数据可作为可更新存储器参考而存储于持久性存储装置730中。
微处理器735允许在不改变由SPD利用的当前可寻址空间的情况下将存储器模块上的持久性存储器容量扩展超出SPD的容量。举例来说,SPD通常经由SMBus(***管理总线)而连接(例如,连接到芯片集或PCH(平台控制器集线器)),且此总线协议对SPD可寻址空间施加若干限制。相比来说,以实例方式,微处理器允许使用已知分页技术,其中可采用双寻址方案来存取存储器空间:地址的第一部分指示待使用的特定存储器页,且所述地址的第二部分指示所述页内部的存储器位置。同样地,为简化针对每一存储器存取使用双寻址方案,微处理器可使用页切换命令,其中每一页构成常见标准可寻址空间(即,SPD可寻址空间)。因此,微处理器的使用有效地提供对多个存储器页的存取,借此与由单个SPD提供的可寻址空间相比显著扩展了有效空间可寻址量。
再次参考图13,与处理器735相关联的内部持久性存储器730允许将存储器模块700上的持久性存储容量增加到超出SPD装置通常将提供的容量。在一些实施例中,代替SPD装置,可使用内部持久性存储器730作为持久性存储装置;在其它实施例中,除SPD装置以外,也可使用内部持久性存储器730作为持久性存储装置。
在其中使用处理器735的内部持久性存储器730及SPD装置两者的实施方案中,微处理器735可经配置以控制微处理器的持久性存储器及SPD装置两者。在一个实施方案中,视需要,原始地址空间可与SPD装置相关联,而与额外地址空间相关联的数据可存储于微处理器的持久性存储器中。
通过因使用微处理器及其相关联持久性存储器而增加存储器模块上的持久性存储容量,可将较大量的识别经测试存储器装置上的一或多个有缺陷存储器位置的数据以及其它数据(如需要)存储于存储器模块上的持久性存储器中。这可降低存储器模块将需要被丢弃的可能性,且因此,可增加可用存储器模块的成品率。
现在参考图14,其提供根据至少一个实施例通常展示为1300的测试及组装存储器模块的方法的流程图。先前已参考较早图描述了与方法1300中所描述的各种动作相关联的一些特征,且读者可以注意说明的较早部分以获得进一步细节。
在1310处,针对多个存储器装置中的每一者,测试器(例如图4的测试器410)测试存储器装置以确定存储器装置是否具有一或多个有缺陷存储器位置。
在1320处,针对多个存储器装置中的每一者,基于在1310处执行的测试的结果,确定存储器装置是否包括一或多个有缺陷存储器位置。
如果确定给定存储器装置不具有任何有缺陷存储器位置,那么在1330处,处置器(例如,图4的处置器415)将存储器装置分类到不具有有缺陷存储器位置的存储器装置群组中。指示经测试存储器装置不具有有缺陷存储器位置的数据可存储于数据库(例如,图4的数据库405)中。举例来说,将此数据存储到数据库中可紧接在已测试存储器装置、将存储器装置分类到一群组中、将存储器装置组装到存储器模块上之后发生,或在如由测试工程师或其它个体确定的某一其它时间发生。
另一方面,如果确定存储器装置确实包括一或多个有缺陷存储器位置,那么在1340处,识别存储器装置上的所述一或多个有缺陷存储器位置,并产生识别存储器装置上的所述一或多个有缺陷存储器位置的对应数据。识别存储器装置上的一或多个有缺陷存储器位置的数据可存储于数据库中。举例来说,将此数据存储到数据库中可紧接在已测试存储器装置、任选地将存储器装置分类、将存储器装置组装到存储器模块上之后发生,或在如由一测试工程师或其它个体确定的某一其它时间发生。
在存储器装置已经历测试且确定所述存储器装置具有一或多个有缺陷存储器位置之后,如果如在1344处所确定,期望进行分类,那么处置器可将经测试存储器装置分类或放置到一群组或“分级箱”中。如果期望对存储器装置的分类,那么在1350处,处置器将通过将所述存储器装置与含有一或多个有缺陷存储器位置的装置的群组放置在一起而将存储器装置分类。否则,方法的流程可直接继续进行到1372。
在处置器将存储器装置放置到一群组中之后,在1355处,确定是否将执行对存储器装置群组的进一步分类。如果将执行对群组的进一步分类,那么在1360处,处置器可基于存储器装置上的有缺陷存储器位置的预定义数目而将群组中的存储器装置进一步分类到子群组中。否则,方法的流程可直接继续进行到1372。
在于1360处处置器将存储器装置进一步分类之后,在1365处,确定是否将执行基于有缺陷存储器位置而进行进一步分类。如果将执行对群组的进一步分类,那么在1370处,处置器可基于一或多个有缺陷存储器位置将位于其内的存储器块而将存储器装置进一步分类。否则,方法的流程可直接继续进行到1372。
在1372处,确定是否将开始组装存储器模块。如果是,那么在1375处,组装单元继续进行以检索存储器装置。否则,测试器可继续测试个别存储器装置,且方法的流程往回继续进行到1310。
所属领域的技术人员将理解,将存储器装置分类的给定动作(例如1350、1360及1370)可在不发生一或若干前述动作的情况下、彼此结合地以不同次序(例如1350,接着1370;或者1370,之后1360)执行,或可根本不执行分类动作。举例来说,将理解,如果首先执行1360或1370处的分类,那么可不执行1350,因为1360或1370处的分类可暗含地将存储器装置分类到具有一或多个有缺陷存储器位置的存储器装置群组中。作为进一步实例,处置器可将经测试存储器装置直接放置到含有在特定存储器块中的有缺陷存储器位置的分级箱中(例如,如在1370处)而不执行任何其它预先分类。这可节约资源,特别是在通常将使处置器的操作最小化的情况下。
在一些实施例中,在已测试存储器装置之后,在将存储器装置组装到存储器模块中之前,根本不执行将存储器装置分类的动作。可将经测试存储器装置全部一起放置到存储单元中且出于组装或出于某一其它目的而以允许个别装置稍后被定位或从存储单元检索的方式来存储及标引(例如,通过装置ID)。
在1375处,定位(例如,从特定群组或分级箱或某一其它存储单元)及检索一或多个经测试存储器装置以用于组装到存储器模块中。
在1380处,使用具有一或多个有缺陷存储器位置的至少一个经测试存储器装置来组装存储器模块(例如,参见图7及11b)。
在1385处,针对具有一或多个有缺陷存储器位置的组装于存储器模块中的每一经测试存储器装置,将识别所述存储器装置上的一或多个有缺陷存储器位置的数据存储于存储器模块上的持久性存储装置中。
尽管图14中未明确展示,但可再次测试在1380处组装的存储器模块。可使用在对个别存储器装置的测试中所使用的相同测试器及/或处置器或视需要使用不同测试器及/或处置器来执行对经组装存储器模块的后续测试。由于经组装存储器模块因所述存储器模块的大小较大而可比个别存储器装置易于处置,因此将存储器模块移动到测试器及/或分级箱或其它存储单元及从测试器及/或分级箱或其它存储单元移动存储器模块可不需要机械处置装置的辅助。
在变体实施例中,待存储于存储器模块的持久性存储装置中的数据可在测试期间直接存储于其中而不必首先存储或另外存储于数据库中。在变体实施例中,与组装于存储器模块上的经测试存储器装置相关联的数据可另外或替代地存储于用于存储经组装存储器模块的特性的数据库中。
如先前所述,在变体实施例中,代替SPD装置或除SPD装置以外,存储器模块也可提供具有内部持久性存储器的微处理器。在存储器模块自身上具有微处理器允许采用在过去通常关于经组装存储器模块不可行的进一步任务。
举例来说,在组装到存储器模块中之前通常对存储器装置进行校准。然而,在将存储器装置组装到存储器模块中之后,通常不将所述存储器模块作为整个单元而加以校准。存储器模块上存在微处理器可促进对含有多个存储器装置的存储器模块作为整体的校准,因为微处理器自身可经配置以执行校准。使用存储器模块的计算机***的主CPU也可经配置以独立地或与微处理器协作地执行与校准相关联的任务。
存储器模块上存在微处理器也可促进存储器模块的各种参数(例如存储器突发长度及交错或循序存储器存取)的配置(例如存储器模块或存储器装置的时序参数的调整)及调整。可由微处理器自身对存储器模块或其上的存储器装置执行这些任务。
可通过存储器模块上存在微处理器而促进的另一任务涉及预测将来存储器故障。对于此任务,不仅可在存储器模块的运转期间在存储器故障发生时记录与所述存储器故障相关联的数据(例如,以使得可动态地调整由存储器模块提供的可用存储器空间),而且可在可预测将来存储器故障具有某一概率的情况下采用主动方法,以使得在预期有这些将来故障时可采取必要动作(例如,记录数据以使得将从存储器映射排除可能有缺陷存储器位置)。举例来说,预测可能故障可包括微处理器确定“弱”列与“弱”行的相交点,其中如果一列或一行具有(例如,超过某一预定数目个)非重复性存储器故障,那么将其视为“弱”的。
将理解,在存储器模块上采用微处理器将不抑制如在现有***中可执行的存储器模块关于从存储器映射排除有缺陷存储器位置的当前功能。在至少一个实施例中,关于记录存储器故障,微处理器仍将执行与位于存储器模块上的SPD装置相同的功能。
如先前所述,在一些实施例中,可在存储器模块上提供微处理器以执行持久性存储器(例如,SPD)的功能。除现有持久性存储器(例如,SPD)以外或代替现有持久性存储器(例如,SPD),也可在给定存储器模块上提供微处理器。
另外,在变体实施例中,以上功能性可应用于含有存储器装置且不采用外部存储器模块的母板。
现在参考图15及16,其图解说明其中可测试包括多个存储器装置的存储器模块的两个实例性存储器测试***。
图15大体图解说明其中正测试存储器模块1530及1560的已知***(展示为1500)的组件。以实例方式,存储器模块1530包括存储器装置MD1到MD8(例如,1540到1545)及可呈SPD装置的形式的持久性存储装置1550。所述存储器装置及持久性存储装置由测试***的主处理器(CPU)1510存取,所述主处理器又耦合到UEFI/BIOS固件接口及非易失性(持久性)***存储装置1520(例如,硬驱动器)。
现在参考图16,其展示根据至少一个实施例存储器测试***的框图,通常展示为1600。将其中利用存储器模块的存储器装置的计算***调适为用以测试存储器装置的测试***1600。
在此实例中,测试***1600经配置以测试计算***的存储器模块1630及存储器模块1660内的存储器装置MD1到MD8(1640到1645)。将理解,测试***1600可适于测试更小或更大数目个存储器模块,因为图1600描绘仅以图解方式展示的***。测试通常根据位于UEFI/BIOS固件接口1615内部或非易失性(持久性)存储装置1620(例如,硬驱动器)内部的经编程指令(例如,计算机程序)而进行。
位于UEFI/BIOS固件接口1615内部的固件通常致使CPU 1610在***通电之后执行对存储器模块1630及1660的测试。将对应计算机程序从UEFI/BIOS固件接口1615加载到CPU1610以致使CPU 1610将多个测试模式写入到存储器装置1640及1645及从存储器装置1640及1645读取多个测试模式。测试结果记录于位于存储器模块1630中的微处理器1650的内部持久性存储装置(图16中未明确展示)内部且记录到持久性存储装置1620。
CPU 1610还经配置以执行存储于持久性存储装置1620内部的指令。举例来说,所述指令可配置CPU 1610以通常在***通电之后执行对存储器模块1630及1660的监控测试。将对应计算机程序从持久性存储装置1620加载到CPU 1610以致使CPU 1610在CPU 1610闲置或以其它方式未被充分利用时将测试模式写入到存储器装置1640及1645及从存储器装置1640及1645读取测试模式。测试结果记录于位于存储器模块1630中的微处理器1650的内部持久性存储装置(图16中未明确展示)内部且记录到持久性存储装置1620。
当CPU 1610希望将数据存储于微处理器1650的内部持久性存储装置上时,CPU1610可经配置以首先对微处理器1650进行轮询以确定微处理器1650是否准备好辅助存储数据。
在一些实施例中,微处理器1650可任选地监视位于微处理器1650所驻存于的相同存储器模块1630内部的存储器装置1640及1645且指示CPU 1610采取适当动作(例如,校准任务,如先前所描述)。微处理器1650甚至可任选地“解决”(例如,使用额外冗余单元)存储器模块1630内部的存储器装置1640及1645上的微处理器1650自身检测到的存储器故障。另外,微处理器1650可全部或部分地保存原本可存储于与测试***1600相关联的持久性存储装置1620中的测试程序。同样地,微处理器1650可保存用于使UEFI/BIOS固件1615内部或持久性存储装置1620内部的存储器测试程序合法地执行的密钥。所述密钥可充当安全机制以保护程序免受未经授权的存取或执行。
简单地说,鉴于存储器模块1530内部的持久性存储装置1550常规上扮演被动角色且其中存取由CPU 1510有效地控制,存储器模块1630内部的微处理器1650扮演主动角色,关于对存储器模块内的存储器装置的测试与CPU 1610“合作”地进行操作。
此外,采用微处理器1650可极大地增强对计算机软件程序的保护,从而防止未经授权的使用。实际上,作为持久性存储器,SPD 1550通常可由于存储器限制而仅保存静态密钥及有限数目个静态密钥。这可允许某人拦截密钥并将其用于非法目的。相比来说,微处理器可经配置以在CPU 1610的请求下动态地修改密钥,这可辅助防止密钥拦截且因此增强对所存储程序的保护。在一些实施例中,CPU 1610可将某一初始数据(例如,软件程序ID)发送到微处理器1650,以使得微处理器1650将基于初始数据而产生CPU 1610的产品密钥。接着,CPU 1610验证所述产品密钥是否有效。
现在参考图17,其展示图解说明在一个实例性实施例中在于***通电后即刻测试存储器的方法中所执行的动作的流程图,通常展示为1700。
在1705处,将计算***通电。接着,在1710处,计算***的UEFI/BIOS固件(例如,图16的1615)启动且以已知方式执行其功能。举例来说,可将来自UEFI/BIOS固件1615的测试程序加载到CPU 1610以致使CPU 1610将测试模式写入到存储器装置1640到1645(参见图16)及从存储器装置1640到1645(参见图16)读取测试模式。
在1715处,在执行测试程序之前,CPU 1610向微处理器1650请求被验证为合法而需要的密钥。
在微处理器1650接收到1715处的对密钥的查询之后,如果在1720处接收到适当密钥,那么在1725处,CPU 1610验证所述密钥是否有效。
如果所述密钥有效,那么方法1700的流程进行进行到1730,其中继续测试***的正常执行。
如果在1720处未接收到适当密钥,或在1725处确定所述密钥为无效的,那么中止测试程序的正常执行,且存储器测试在1735处停止。
现在参考图18,其展示图解说明在一个实例性实施例中在执行存储器监控的方法中所执行的动作的流程图,通常展示为1750。
在1755处,将计算***通电。接着,在1760处,计算机***执行其正常启动功能。
在1765处,将存储器监控程序加载到CPU 1610(例如,从图16的持久性存储装置1620)。所述监控程序配置CPU以作为计算机***的后台过程而审视计算机存储器并隔离任何所检测到的存储器故障。
在1770处,在执行监控程序之前,CPU 1610向微处理器1650请求被验证为合法的而需要的密钥。
在微处理器1650接收到1715处的对密钥的查询之后,如果在1775处接收到适当密钥,那么在1780处,CPU 1610验证所述密钥是否有效。
如果所述密钥有效,那么方法1750的流程继续进行到1785,其中继续测试程序的正常执行。
如果在1775处未接收到适当密钥,或在1780处确定所述密钥为无效的,那么中止测试程序的正常执行,且在1790处,存储器测试停止。
已以若干实例方式展示及描述了本文中所描述的实施例。所属领域的技术人员将明了,可在不背离如所附权利要求书中所界定的所描述实施例的实质及范围的情况下做出对所描述实施例的改变及修改。
Claims (20)
1.一种组装存储器模块的方法,所述方法包括:
针对多个存储器装置中的每一存储器装置执行测试,
基于对所述存储器装置执行的测试,确定所述存储器装置是否具有任何有缺陷存储器位置,以及
如果所述存储器装置具有一或多个有缺陷存储器位置,那么识别所述一或多个有缺陷存储器位置,并产生识别所述存储器装置上的所述一或多个有缺陷存储器位置的数据;
从所述多个存储器装置选择用于组装到存储器模块中的具有一或多个有缺陷存储器位置的至少一个存储器装置,其中,所述存储器模块包括微处理器及与所述微处理器相关联的持久性存储器,所述选择包括基于所述有缺陷存储器位置位于所述至少一个存储器装置中的每一者上的何处而选择所述至少一个存储器装置;以及
响应于所述选择,至少使用具有一或多个有缺陷存储器位置的选定的至少一个存储器装置来组装所述存储器模块,其中,所述组装包括:针对具有一或多个有缺陷存储器位置的每一存储器装置,将识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据存储于所述存储器模块上的持久性存储装置中,所述存储器模块上的所述持久性存储装置包括与所述微处理器相关联的所述持久性存储器;
针对所述至少一个存储器装置中的每一者,如果所述存储器装置上的所述有缺陷存储器位置中的至少一者,及所述至少一个存储器装置中的至少一个不同存储器装置上的所述有缺陷存储器位置中的至少一者,在组装所述存储器模块之后将属于所述存储器模块的相同的至少一个存储器模块,那么选择所述存储器装置用于组装到所述存储器模块中。
2.根据权利要求1所述的方法,其中除与所述微处理器相关联的所述持久性存储器以外,所述存储器模块上的所述持久性存储装置还进一步包括串行存在检测模块。
3.根据权利要求1所述的方法,其进一步包括:
针对具有一或多个有缺陷存储器位置的每一存储器装置,将识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据存储于数据库中;以及
针对所述存储器模块的具有一或多个有缺陷存储器位置的每一存储器装置,从所述数据库检索识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据以用于存储于所述存储器模块上的所述持久性存储装置中。
4.根据权利要求1所述的方法,其进一步包括:
针对所述多个存储器装置中的每一存储器装置,产生识别与对所述存储器装置执行的所述测试相关联的细节的数据;
其中所述组装进一步包括将识别与对所述存储器装置执行的所述测试相关联的细节的所述数据存储于所述存储器模块上的所述持久性存储装置中。
5.根据权利要求4所述的方法,其进一步包括:
针对所述多个存储器装置中的每一存储器装置,将识别与对所述存储器装置执行的所述测试相关联的所述细节的所述数据存储于数据库中;以及
针对所述存储器模块的具有一或多个有缺陷存储器位置的每一存储器装置,从所述数据库检索识别与对所述存储器装置执行的所述测试相关联的所述细节的所述数据以用于存储于所述存储器模块上的所述持久性存储装置中。
6.根据权利要求4所述的方法,其中与对所述存储器装置执行的所述测试相关联的所述细节包括导致了所述存储器装置的故障的测试模式的识别。
7.根据权利要求1所述的方法,其中所述存储器模块包括不具有有缺陷存储器位置的至少一个存储器装置。
8.根据权利要求1所述的方法,其中所述存储器模块的每一存储器装置包括相同数目个有缺陷存储器位置。
9.根据权利要求8所述的方法,其中所述存储器模块的每一存储器装置包括恰好一个有缺陷存储器位置。
10.根据权利要求1所述的方法,其中所述存储器模块包括八个存储器装置。
11.根据权利要求10所述的方法,其中所述多个存储器装置包括在所述多个存储器装置当中的总共八个或八个以下有缺陷存储器位置。
12.根据权利要求1所述的方法,其进一步包括测试所述多个存储器装置中的每一者,其中在所述测试中利用测试向量模式来确定所述多个存储器装置中的每一者上的有缺陷存储器位置。
13.根据权利要求1所述的方法,其进一步包括从经测试存储器装置的储集区检索所述多个存储器装置。
14.根据权利要求13所述的方法,其进一步包括在所述检索之前将所述多个存储器装置分类到至少两个群组中,其中将不具有有缺陷存储器位置的存储器装置与具有一或多个有缺陷存储器位置的所述存储器装置分离。
15.根据权利要求14所述的方法,其中所述分类包括将具有一或多个有缺陷存储器位置的所述存储器装置分离到与预定义数目个有缺陷存储器位置相关联的至少一个群组中。
16.根据权利要求14所述的方法,其中所述分类包括将具有大于阈值的多个有缺陷存储器位置的所述存储器装置分离到一群组中,且其中具有大于所述阈值的所述多个有缺陷存储器位置的存储器装置不用于组装所述存储器模块。
17.根据权利要求14所述的方法,其中在机器人装置的辅助下执行所述分类。
18.根据权利要求13所述的方法,其中所述多个存储器装置选自经测试存储器装置的所述储集区,以使得所述多个存储器装置上的所有所述有缺陷存储器位置均位于相同的至少一个存储器块中。
19.根据权利要求18所述的方法,其中所述相同的至少一个存储器块与至少一个存储器块地址相关联。
20.一种用于测试及组装存储器模块的***,所述***包括:
测试器,其中所述测试器包括处理器;
其中所述处理器经配置以:针对多个存储器装置中的每一存储器装置,基于对所述存储器装置执行的测试,确定所述存储器装置是否具有任何有缺陷存储器位置;
其中所述处理器进一步经配置以:如果所述存储器装置具有一或多个有缺陷存储器位置,那么识别所述一或多个有缺陷存储器位置,并产生识别所述存储器装置上的所述一或多个有缺陷存储器位置的数据;
其中所述***经配置以基于所述有缺陷存储器位置位于所述至少一个存储器装置中的每一者上的何处而从所述多个存储器装置选择用于组装到存储器模块中的具有一或多个有缺陷存储器位置的至少一个存储器装置;
其中所述***进一步经配置以:响应于选择具有一或多个有缺陷存储器位置的所述至少一个存储器装置,至少使用具有一或多个有缺陷存储器位置的选定的至少一个存储器装置来组装所述存储器模块;
其中所述***进一步经配置以:针对具有一或多个有缺陷存储器位置的每一存储器装置,将识别所述存储器装置上的所述一或多个有缺陷存储器位置的所述数据存储于所述存储器模块上的持久性存储装置中;
其中所述存储器模块上的所述持久性存储装置包括与微处理器相关联的所述持久性存储器;
其中,针对所述至少一个存储器装置中的每一者,如果所述存储器装置上的所述有缺陷存储器位置中的至少一者,及所述至少一个存储器装置中的至少一个不同存储器装置上的所述有缺陷存储器位置中的至少一者,在组装所述存储器模块之后将属于所述存储器模块的相同的至少一个存储器模块,那么选择所述存储器装置用于组装到所述存储器模块中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/244,157 US9224500B2 (en) | 2011-11-29 | 2014-04-03 | Systems and methods for testing and assembling memory modules |
US14/244,157 | 2014-04-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104979017A CN104979017A (zh) | 2015-10-14 |
CN104979017B true CN104979017B (zh) | 2020-10-27 |
Family
ID=54287399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510154581.9A Active CN104979017B (zh) | 2014-04-03 | 2015-04-02 | 用于测试及组装存储器模块的***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104979017B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111051902B (zh) * | 2017-07-25 | 2022-05-27 | 皇虎科技(加拿大)有限公司 | 集成电路装置上自动老化测试的***和方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5996096A (en) * | 1996-11-15 | 1999-11-30 | International Business Machines Corporation | Dynamic redundancy for random access memory assemblies |
CN1314702A (zh) * | 2000-03-21 | 2001-09-26 | 日本电气株式会社 | 半导体存储器生产***和半导体存储器生产方法 |
CN101310342A (zh) * | 2006-04-06 | 2008-11-19 | 爱德万测试株式会社 | 测试装置以及测试方法 |
CN101369245A (zh) * | 2007-08-14 | 2009-02-18 | 戴尔产品有限公司 | 一种实现存储器缺陷映射表的***和方法 |
CN101504923A (zh) * | 2007-06-06 | 2009-08-12 | 株式会社瑞萨科技 | 半导体器件、半导体器件的制造方法及其测试方法 |
-
2015
- 2015-04-02 CN CN201510154581.9A patent/CN104979017B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5996096A (en) * | 1996-11-15 | 1999-11-30 | International Business Machines Corporation | Dynamic redundancy for random access memory assemblies |
CN1314702A (zh) * | 2000-03-21 | 2001-09-26 | 日本电气株式会社 | 半导体存储器生产***和半导体存储器生产方法 |
CN101310342A (zh) * | 2006-04-06 | 2008-11-19 | 爱德万测试株式会社 | 测试装置以及测试方法 |
CN101504923A (zh) * | 2007-06-06 | 2009-08-12 | 株式会社瑞萨科技 | 半导体器件、半导体器件的制造方法及其测试方法 |
CN101369245A (zh) * | 2007-08-14 | 2009-02-18 | 戴尔产品有限公司 | 一种实现存储器缺陷映射表的***和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104979017A (zh) | 2015-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9224500B2 (en) | Systems and methods for testing and assembling memory modules | |
US9117552B2 (en) | Systems and methods for testing memory | |
US6895464B2 (en) | Flash memory management system and method utilizing multiple block list windows | |
US8122319B2 (en) | Page-based failure management for flash memory | |
KR101498009B1 (ko) | 비휘발성 메모리 시스템에서 결함 블록 분리 | |
JP3878062B2 (ja) | メモリテスト情報を記憶する方法および装置 | |
EP1416499B1 (en) | Self-repairing built-in self test for linked list memories | |
TWI441189B (zh) | 用於改良冗餘分析之記憶體裝置故障彙總資料縮減技術 | |
WO2017079454A1 (en) | Storage error type determination | |
IL186614A (en) | System and method for memory correction | |
US20040225912A1 (en) | Memory built-in self repair (MBISR) circuits/devices and method for repairing a memory comprising a memory built-in self repair (MBISR) structure | |
US6324657B1 (en) | On-clip testing circuit and method for improving testing of integrated circuits | |
US11984181B2 (en) | Systems and methods for evaluating integrity of adjacent sub blocks of data storage apparatuses | |
US20060253764A1 (en) | Computer system and method for redundancy repair of memories installed in computer system | |
US20160155514A1 (en) | System and method of testing and identifying memory devices | |
US20040088614A1 (en) | Management system for defective memory | |
KR101545716B1 (ko) | 메모리 수리 장치 및 방법, 그리고 그를 이용한 메모리 칩 | |
CN104979017B (zh) | 用于测试及组装存储器模块的***及方法 | |
US10734079B1 (en) | Sub block mode read scrub design for non-volatile memory | |
KR20190062879A (ko) | 스페어 피봇 고장 특성을 이용한 메모리 분석 방법 및 장치 | |
US7747915B2 (en) | System and method for improving the yield of integrated circuits containing memory | |
US11923026B2 (en) | Data storage system with intelligent error management | |
CN112562774B (zh) | 存储设备挂载方法、装置、计算机设备和存储介质 | |
US11531606B2 (en) | Memory apparatus capable of autonomously detecting and repairing fail word line and memory system including the same | |
CN118035102A (zh) | 加速ssd测试的方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1215820 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1215820 Country of ref document: HK |