CN101369240A - 用于在信息处理系统中管理存储错误的系统和方法 - Google Patents
用于在信息处理系统中管理存储错误的系统和方法 Download PDFInfo
- Publication number
- CN101369240A CN101369240A CNA2008102105017A CN200810210501A CN101369240A CN 101369240 A CN101369240 A CN 101369240A CN A2008102105017 A CNA2008102105017 A CN A2008102105017A CN 200810210501 A CN200810210501 A CN 200810210501A CN 101369240 A CN101369240 A CN 101369240A
- Authority
- CN
- China
- Prior art keywords
- storage
- memory
- defective
- defect
- address
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4405—Initialisation of multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2284—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by power-on test, e.g. power-on self test [POST]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
公开了一种用于在POST阶段以及在单处理器和多处理器信息处理系统中存储器校准的期间处理存储缺陷的方法,由此关于已知存储缺陷的位置的信息被用以优化信息处理系统的性能。在系统存储器中的存储缺陷被识别并且在操作期间被没有错误的存储空间替代。
Description
技术领域
本发明一般涉及计算机系统和信息处理系统领域,并且尤其涉及处理存储错误(memory error)。
背景技术
随着信息的价值和使用不断地增加,个人和企业均在寻求其它的处理和存储信息的方法。对于用户而言,一个可用的选择就是信息处理系统。信息处理系统通常处理、汇集、存储和/或传输用于商业、个人或者其他目的的信息和数据,从而使用户得以利用信息的价值。由于不同的用户或应用之间存在不同的技术和信息处理需要和需求,因此信息处理系统在以下方面可能不同:信息处理的类型;处理信息的方法;处理、存储或传输信息的方法;所处理、存储或传输的信息量;以及处理、存储或传输信息的速度和效率方面。信息处理系统中的变化允许信息处理系统成为通用的、或者针对特定用户或者诸如金融交易处理、航班订票、企业数据存储或者全球通信的特定用途而被配置。另外,信息处理系统可以包含或包括多种被配置为处理、存储和传输信息的软硬组件,并且可以包含一个或者多个计算机系统、数据存储系统和网络系统。
计算系统通常将包括某些形式的临时信息存储介质,例如随机存取存储器。在最新的计算系统中,信息处理系统所包含的存储量可以是千兆字节级的。随着存储大小的增加,存储部分可能被制造得存在缺陷或者随着时间地过去而变得存在缺陷的可能性也在急剧增大。如果放任不理,不管缺陷存储单元有多大,缺陷存储单元的存在能导致信息处理系统出现故障,该故障能够引起信息处理系统的当前操作的突然终止,从而导致重要数据的丢失或可以阻止信息处理系统的完全启动。
随着计算系统不断地发展和计算机技术的进步,CPU和存储器之间的操作关系变得更加重要。现代系统的许多属性(特别是多核处理器和虚拟化的全面引入)导致了不断增长的存储占用量(footprint)。因此,不仅仅系统存储器逐渐变成整体解决方案成本的相当大的部分,而且存储器中的错误行为的影响会对计算系统的相关寿命周期费用产生更加坏的影响。
通常,嵌入的错误校正策略成功地被用于避免在单比特上的“冲突(crash)”并且被用来检测多比特恶化(corruption)。然而,随着存储器体积的变小以及存储容量的增大,有必要增加服务保护的另一个标准,该标准是迅速可用的并且常驻在它自己的存储模块中。PC结构中系统的成功运行依赖于某些存储区域没有缺陷。例如,甚至在包括128GB存储器的高级处理器系统中,如中断矢量地址、基本输入/输出系统(“BIOS”)数据区域以及在F000:0地址空间的64KB区域的某些存储区域不包括缺陷是至关重要的。
存在许多被用来追踪或用来指示存在已知存储错误的各种方法。因此,在缺陷的或损坏的存储块的存在和状况是已知的实例中,可以容忍存储缺陷(memory defect)的早期BIOS加电自检(“POST”)过程变得有必要。特别地,尽管存在已知的存储缺陷,但期待允许POST过程在没有冲突的情况下成功地完成POST初始化过程。
发明内容
根据本发明的内容,公开了一种用于在单个处理器和多处理器信息处理系统中的POST阶段和存储器校准期间处理存储缺陷的方法,由此关于已知存储缺陷的位置的信息被利用以优化信息处理信息的性能。
本发明的技术优点在于其通过在不损害系统性能的情况下允许具有已知存储缺陷的存储组件的使用,从而大幅降低了信息处理系统的成本。识别并存储存储缺陷信息的能力允许具有部分有缺陷的存储组件的信息处理系统在没有“冲突”的情况下操作。特别地,信息处理系统在它绕过有缺陷的存储单元时保持可操作性,并且当新的缺陷出现时更新它的存储缺陷信息。随着系统存储器逐渐成为了整个解决方案成本的相当大的部分,所述改进之处的重要性也得到了扩大。
本发明的另一个技术优点在于其允许系统保持正常工作而不管系统存储器中的较小的缺陷。通过最小化错误的存储器行为的影响,根据本发明的系统和方法可以大幅降低信息处理系统的相关的寿命周期费用。通过阅读以下说明书、权利要求书和附图,其他技术优点对本领域技术人员而言将显而易见。
附图说明
通过参考以下结合附图的描述,可以获得对本实施方式及其优点的更加透彻的理解,附图中,相同的参考数字表示相似的特征,其中:
图1是传统的信息处理系统的框图;
图2是在具有非一致性随机存储器访问结构的服务器中处理存储缺陷的步骤的流程图;
图3是在双列直插式存储模块(Dual In-line Memory Module)校准时处理存储缺陷的流程图;
图4是具有缺陷区域的示例的存储模块的流程图;
图5是在分配用于POST任务使用的存储器时处理存储缺陷的步骤流程图。
具体实施方式
针对本公开的目的,信息处理系统可以包括任何手段或者手段的集合,所述手段用于计算、分类、处理、发送、接收、获取、创建、交换、存储、显示、显现、检测、记录、复制、操作、或者利用任何形式的用于商业、科学、控制或者其他目的的信息、智能、或者数据。例如,信息处理系统可以为个人计算机、网络存储设备或者其他合适的设备,并且可以在大小、形状、性能、功能和价格上有所不同。所述信息处理系统可以包括随机存取存储器(RAM)、一个或者多个诸如中央处理单元(CPU)或者硬件或软件控制逻辑的处理资源、ROM、和/或其他类型的非易失性存储器。所述信息处理系统的附加组件可以包括一个或者多个磁盘驱动器、一个或者多个与外部设备进行通信的网络端口、以及各种输入和输出(I/O)设备,例如键盘、鼠标和视频显示器。所述信息处理系统还可以包括一个或者多个用于在所述各种硬件组件之间发送通信信息的总线。
图1中示出了一般的信息处理系统的框图。所述一般的信息处理系统5的处理器或CPU 100以通信的方式连接到存储控制器中心或北桥芯片(northbridge)102。存储控制器中心102连接到存储器104和图形处理单元106。存储控制器中心102还连接到I/O控制中心或南桥(south bridge)108。I/O控制中心108连接到计算机系统的存储元件,该存储元件包括诸如用于计算机系统的BIOS的闪存ROM的存储元件110和计算机系统的硬盘驱动器112。I/O控制中心108还可以连接到新一代I/O芯片114,该芯片114自身连接到计算机系统的多个I/O端口,I/O端口包括键盘116、鼠标118和并行端口120。
在图2中,在具有非一致性存储器访问(NUMA)结构的处理器中用于处理存储缺陷的步骤的流程图由参考数字200表示。在NUMA系统中,每个处理器有自己本地映射的存储器。另外,每个处理器也可以访问连接在其它处理器的存储器,该存储器作为远程的存储器被映射在处理器上。典型地,一个在NUMA结构中的处理器被指定为默认启动服务处理器(BSP)。默认启动服务处理器的指定可以作为系统硬件配置的部分或可以通过软件功能被选择或修改。BIOS初始从默认启动服务处理器运行。
在步骤202,处理POST过程期间,BIOS在每个存储段上寻找并且定位缺陷存储块。下一步,在步骤204,默认启动服务处理器被选定作为处理器,该处理器的存储器将被进行存储缺陷分析。在步骤206,确定默认启动服务处理器的存储段是否有任何缺陷存储块。如果没有,在步骤208默认启动处理器将仍然是启动服务处理器,并且在步骤210它的本地(local)存储器将被用来作为系统配置算法的起始点。然后该过程将在步骤212终止。
如果默认启动服务处理器的存储段具有缺陷存储块,那么在步骤214确定该有缺陷存储是否可以被系统容忍(tolerate)。在一个实施方式中,确定容忍依赖于在特定地址范围中存在的缺陷存储是否可以接受,或是否优化系统的行为和性能。当确定特定缺陷存储地址是否对系统有不可容忍的影响时,许多的其它因素将被考虑。在一个实施方式中,配置在节点上的如存储的类型、存储的大小、存储的速度以及存储总量的因素被考虑以确定存储缺陷是否可以被容忍。如果存储缺陷是较小的并且可以被系统容忍,那么默认启动服务处理器将仍然是启动服务处理器,并且在步骤210它的本地存储器将被用作系统配置算法的起始点。然后该过程将在步骤212终止。
如果存储缺陷是如使系统不能优化执行的存储缺陷或在预先指定的最低水平,那么在步骤216确定在多处理器系统中是否存在被分析的其它处理器。如果没有剩余处理器,该过程在步骤218终止并且存储缺陷错误被检测并且在系统中被通知。相反地,如果在系统中存在没有被分析的其它处理器,在步骤220另一个处理器将被选定为启动服务处理器,并且上面的过程将被重复用于新选定的启动服务处理器。继续该过程直到可接受的处理器被定位或者没有其它将被处理的处理器。
因此,如果默认启动服务处理器的存储段在地址范围有不可接受的或最佳化系统的行为、性能或操作系统的缺陷块,那么BIOS将选择作为启动服务处理器的备用处理器。作为启动服务服务器的备用处理器的选择可以通过用于选择备用启动服务处理器的任何适用的算法来完成。继续该过程直到没有存储缺陷或具有可接受水平的存储缺陷的启动服务处理器被选择或存储缺陷错误信号被产生。
结合本公开的优点,如本领域技术人员理解的,缺陷存储块的确定可以包括将预先定义的缺陷存储块存储在非易失性的RAM中或通过POST时间存储器测试来识别两个部分。尽管图2所示的流程图涉及NUMA结构,但是结合本公开的优点,本领域技术人员可以理解,相同的方法可以在其它如多核中央处理单元的多处理器系统中使用。例如,在多核CPU系统中,系统可以从备用CPU插口中选择处理器核来代替挑选备用启动服务处理器。
用于最小化存储缺陷对系统影响的方法如图3中的300所示。图3示出了在双列直插式存储模块的参数的校准期间用于处理已知存储缺陷方法的流程图,该双列直插式存储模块的参数可以例如是分布式排队系统(DQS)延迟和允许接收的(Receive-Enable)校准。
当校准DIMM参数时,处理存储缺陷的能力非常重要。例如,在基于双倍数据速率2(DDR2)或全缓冲DIMM(FBD)存储器的设计中,校准过程的算法包括在任意给定的DIMM存储器中对特定偏移量(offset)的写/读操作。在校准阶段的存储缺陷处理的重要性通过事实被放大:甚至在存储器是错误校验码(ECC)存储器的实例中,ECC功能不能优先于校准过程被执行。此外,不管存储错误是单比特或多比特错误,结果都相同,因为ECC功能不能在校准过程被执行。因此,由DIMM中的存储缺陷在用于校准的特定DIMM地址导致的硬件存储器错误将导致校准失败。
在步骤302,初始化校验码并且算法的迭代计数器被设置为1。在步骤304,用于校准的初始DIMM地址被确定。在步骤306,将初始DIMM地址与在缺陷存储映射表(faulty memory map)中指示的缺陷进行比较。存储空间在图4中被示出并且总的采用参考数字400来表示。存储映射表指示存储器404、408、412的某些部分包括存储缺陷。现在返回至图3,在步骤308中,确定初始DIMM地址是否与缺陷存储位置匹配。
如果初始DIMM地址不与缺陷存储位置匹配,则在步骤310校准算法使用该地址来校准DIMM,并且该过程在步骤312终止。如果初始DIMM地址与缺陷存储映射表指示的已知存储缺陷位置中的一个不匹配,则在步骤314确定是否达到迭代阈值。迭代阈值是预先确定的数字,该数字表示执行迭代的次数以找到与存储缺陷不匹配的初始DIMM地址。如果达到迭代的阈值数字,在步骤316发出缺陷存储错误消息,该消息指示校准过程没有成功,然后过程在步骤312终止。
如果迭代阈值没有达到,那么在步骤318迭代计数器增加(计数器的计数值加1)。接着,在步骤320,DIMM中的新地址偏移量将被选择作为用于校准的DIMM地址。被使用的偏移量是预先确定的因数。在一个实施方式中,偏移量可以是连续的缓存行(cache line)偏移量或页(page)偏移量。偏移量地址将指向新的DIMM存储位置,该偏移量地址将在步骤306中再检查以确定它是否包括任何存储缺陷。该过程被重复直到达到迭代阈值,或没有错误用于校准过程的DIMM地址被识别。
图5的流程图描述了用于最小化存储缺陷对系统影响的另一个方法,并且总的由参考数字500表示。特别地,图5的流程图描述了当分配用于POST任务使用的存储器时,不管是用于编码或数据存储,用于处理存储缺陷的方法。POST任务使用的存储器的分配包括,例如,CPU物理地址的分配位于四千兆字节存储地址范围以下,高级配置与电源接口(ACPI)表、系统管理BIOS(SMBIOS)表以及通用串行总线(USB)数据结构被定位在该存储地址范围内。在一个实施方式中,图5所示的方法可以通过BIOS或固件来执行。
在步骤502,用于特殊POST任务的所需存储空间量被确定。接下来,在步骤504,在用于特定任务的想要的存储空间中的第一存储地址被选定。在步骤506,确定与选定的存储地址对应的存储位置是否包括任何错误或缺陷。如果没有,那么在步骤508与分析的存储地址对应的存储空间被添加到没有错误的存储器范围内。在步骤510,系统将决定是否为特定的POST任务留出足够的没有错误的存储空间量。如果有,那么在步骤512没有错误的的存储器范围被用于任务,并且该过程在514终止。如果没有为特定的POST任务留出足够的没有错误的存储空间量,那么在步骤516想要的存储器范围中的下一个存储地址被选定并且该过程返回到步骤506来确定新选定的存储空间是否包括任何缺陷或错误。如果在步骤506确定与选定的存储地址对应的存储位置确实包括错误或缺陷,那么在步骤518该存储空间被跳过,并且在步骤516随后的存储空间被选择。结合本公开的优点,如本领域技术人员所理解的,跳过的存储空间量和用于下一个选定的存储位置的偏移量被预先指定。
通过返回到图4可以更好的理解图5的过程,存储空间400具有一些编号从数字402到414的部分。图5所示的过程将经过与存储空间400中的存储位置对应的存储地址,并且为包括存储错误或缺陷的存储位置404、408、412定位。然后,这些包括存储错误或缺陷的存储位置被跳过,并且POST任务在存储空间400包括一个连续的、由区域402、406、410和414组成的没有错误的存储部分的假设下被执行。结合本公开的优点,如本领域技术人员所理解的,一旦错误被检测,跳过的存储量根据应用而改变,并且不局限于图4所示的示例性的实施方式。
结合本公开的优点,如本领域技术人员所理解的,参考图3和图5所公开的方法的执行不局限于多处理器系统。这些方法被用于许多信息处理系统中以最小化存储错误的影响。尽管本公开被详细的描述,但可以理解在不偏离附属的权利要求所限定的本发明的精神和范围,可以进行各种变化、替换以及修改。
Claims (20)
1.一种在多处理器系统中处理存储错误的方法,该方法包括:
在存储段中定位缺陷存储块,其中每个存储段对应一个处理器;
选择与具有预定可接受水平的缺陷存储块的所述存储段相对应的处理器;以及
指定所选择的处理器作为启动服务处理器。
2.根据权利要求1所述的方法,还包括指定与所述所选择的处理器对应的存储段来作为系统存储器配置的起始点。
3.根据权利要求1所述的方法,其中所述多处理器系统包括非均匀存储器访问系统。
4.根据权利要求1所述的方法,其中所述多处理器系统包括多核中央处理单元系统。
5.根据权利要求1所述的方法,其中基本输入/输出系统定位所述存储段中的缺陷存储块。
6.根据权利要求1所述的方法,其中所述缺陷存储块的位置被存储在非易失性的随机访问存储器中。
7.根据权利要求1所述的方法,其中所述缺陷存储块的位置通过加电自检时间存储器检测来确定。
8.根据权利要求1所述的方法,其中与所述处理器对应的存储段是处理器的本地存储器。
9.一种用于在双列直插式存储模块校准中处理存储缺陷的方法,该方法包括:
确定用于校准的初始地址;
将与所述初始地址相对应的存储位置与缺陷存储映射表进行比较;以及
如果与所述初始地址相对应的存储位置被包括在所述缺陷存储映射表中,则偏移所述初始地址。
10.根据权利要求9所述的方法,还包括:
初始化阈值计数器;
指定迭代阈值;
在偏移所述初始地址之后增加迭代计数器;以及
如果迭代计数器等于所述迭代阈值,则发送错误消息。
11.根据权利要求9所述的方法,其中偏移所述初始地址包括使用连续的缓存行偏移量。
12.根据权利要求9所述的方法,其中偏移所述初始地址包括使用连续的页偏移量。
13.根据权利要求9所述的方法,其中所述双列直插式存储模块校准包括允许接收的校准。
14.一种用于在加电自检存储分配中处理存储缺陷的方法,该方法包括:
分析任务所请求的存储空间;
检测所述存储空间中的存储缺陷;
从所述存储空间移去与所述存储缺陷对应的存储位置;以及
用没有错误的存储空间代替被移去的存储位置。
15.根据权利要求14所述的方法,其中分析任务所请求的存储空间包括:
在所述存储空间中选择第一地址;
检查所述第一地址中的存储缺陷;以及
如果检测到存储缺陷,则偏移所述第一地址。
16.根据权利要求15所述的方法,其中检查所述第一地址中的存储缺陷包括确定所述第一地址是否在缺陷存储映射表中被指定为具有缺陷。
17.根据权利要求16所述的方法,还包括当检测到新的存储缺陷时,更新所述缺陷存储映射表。
18.根据权利要求15所述的方法,其中偏移所述第一地址包括跳过预定的存储量。
19.根据权利要求14所述的方法,其中所述加电自检存储分配包括为编码、静态数据或堆栈中的一者分配存储。
20.一种用于在加电自检阶段处理存储缺陷的方法,该方法包括:
确定用于双列直插式存储模块校准的初始地址;
将与所述初始地址相对应的存储位置与缺陷存储映射表进行比较;
如果与所述初始地址相对应的存储位置包括存储缺陷,则偏移该初始地址;
分析加电自检任务所请求的存储空间;
检测所述存储空间中的存储缺陷;
从所述存储空间移去与所述存储缺陷相对应的存储位置;以及
用没有错误的存储空间代替被移去的存储位置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/838,602 US7945815B2 (en) | 2007-08-14 | 2007-08-14 | System and method for managing memory errors in an information handling system |
US11/838,602 | 2007-08-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101369240A true CN101369240A (zh) | 2009-02-18 |
CN101369240B CN101369240B (zh) | 2011-08-17 |
Family
ID=40363935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008102105017A Active CN101369240B (zh) | 2007-08-14 | 2008-08-13 | 用于在信息处理系统中管理存储错误的系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7945815B2 (zh) |
EP (1) | EP2048579B1 (zh) |
CN (1) | CN101369240B (zh) |
SG (1) | SG150447A1 (zh) |
TW (1) | TWI380178B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102483754A (zh) * | 2009-06-26 | 2012-05-30 | 森普利维蒂公司 | 在非均匀存取存储器中的可扩展编制索引 |
CN103984895A (zh) * | 2014-05-05 | 2014-08-13 | 上海新储集成电路有限公司 | 一种安全计算机系统及其应用方法 |
CN104641352A (zh) * | 2012-08-02 | 2015-05-20 | 西门子公司 | 用于周期控制系统的流水线操作 |
CN106469109A (zh) * | 2015-08-15 | 2017-03-01 | 昆达电脑科技(昆山)有限公司 | Dimm故障及时告知系统及其方法 |
CN112346786A (zh) * | 2019-08-08 | 2021-02-09 | 佛山市顺德区顺达电脑厂有限公司 | 应用于开机阶段及开机后运行阶段的除错信息纪录方法 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2360590A3 (en) * | 2009-12-10 | 2011-10-26 | Prelert Ltd. | Apparatus and method for analysing a computer infrastructure |
US20150235312A1 (en) | 2014-02-14 | 2015-08-20 | Stephen Dodson | Method and Apparatus for Detecting Rogue Trading Activity |
US8788883B2 (en) | 2010-12-16 | 2014-07-22 | Dell Products L.P. | System and method for recovering from a configuration error |
US9477597B2 (en) * | 2011-03-25 | 2016-10-25 | Nvidia Corporation | Techniques for different memory depths on different partitions |
US8701057B2 (en) | 2011-04-11 | 2014-04-15 | Nvidia Corporation | Design, layout, and manufacturing techniques for multivariant integrated circuits |
US9529712B2 (en) | 2011-07-26 | 2016-12-27 | Nvidia Corporation | Techniques for balancing accesses to memory having different memory types |
US8724408B2 (en) | 2011-11-29 | 2014-05-13 | Kingtiger Technology (Canada) Inc. | Systems and methods for testing and assembling memory modules |
EP2645257A3 (en) | 2012-03-29 | 2014-06-18 | Prelert Ltd. | System and method for visualisation of behaviour within computer infrastructure |
US9117552B2 (en) | 2012-08-28 | 2015-08-25 | Kingtiger Technology(Canada), Inc. | Systems and methods for testing memory |
US9032244B2 (en) | 2012-11-16 | 2015-05-12 | Microsoft Technology Licensing, Llc | Memory segment remapping to address fragmentation |
GB2519941B (en) | 2013-09-13 | 2021-08-25 | Elasticsearch Bv | Method and apparatus for detecting irregularities on device |
WO2015115281A1 (ja) * | 2014-01-29 | 2015-08-06 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置及び画像形成方法 |
US11017330B2 (en) | 2014-05-20 | 2021-05-25 | Elasticsearch B.V. | Method and system for analysing data |
CN104111895A (zh) * | 2014-07-25 | 2014-10-22 | 记忆科技(深圳)有限公司 | 一种利用dram不良品的方法 |
KR102586768B1 (ko) * | 2018-03-27 | 2023-10-16 | 에스케이하이닉스 주식회사 | 컴퓨팅 시스템 및 그것의 동작방법 |
US11461178B2 (en) | 2019-05-15 | 2022-10-04 | Dell Products L.P. | System and method to prevent endless machine check error of persistent memory devices |
US10936407B2 (en) | 2019-05-30 | 2021-03-02 | Dell Products, L.P. | System and method to reduce address range scrub execution time in non-volatile dual inline memory modules |
Family Cites Families (84)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4209846A (en) | 1977-12-02 | 1980-06-24 | Sperry Corporation | Memory error logger which sorts transient errors from solid errors |
US4240143A (en) | 1978-12-22 | 1980-12-16 | Burroughs Corporation | Hierarchical multi-processor network for memory sharing |
US4426688A (en) * | 1981-08-03 | 1984-01-17 | Ncr Corporation | Memory system having an alternate memory |
US4479214A (en) | 1982-06-16 | 1984-10-23 | International Business Machines Corporation | System for updating error map of fault tolerant memory |
DE69034191T2 (de) | 1989-04-13 | 2005-11-24 | Sandisk Corp., Sunnyvale | EEPROM-System mit aus mehreren Chips bestehender Blocklöschung |
AU661016B2 (en) * | 1991-06-26 | 1995-07-13 | Samsung Electronics Co., Ltd. | Multiprocessor distributed initialization and self-test system |
US5588112A (en) | 1992-12-30 | 1996-12-24 | Digital Equipment Corporation | DMA controller for memory scrubbing |
US5491788A (en) * | 1993-09-10 | 1996-02-13 | Compaq Computer Corp. | Method of booting a multiprocessor computer where execution is transferring from a first processor to a second processor based on the first processor having had a critical error |
DE69421379T2 (de) * | 1994-03-31 | 2000-05-11 | Stmicroelectronics, Inc. | Wiederverwendbarer Mehrwegsatz assoziativer Cache-Speicher |
US5539697A (en) | 1994-08-03 | 1996-07-23 | Bi-Search Corporation | Method and structure for using defective unrepairable semiconductor memory |
DE69421925T2 (de) | 1994-09-30 | 2000-03-16 | Stmicroelectronics S.R.L. | Speichergerät mit Fehlerdetektion und -korrektur und Verfahren zum Schreiben und Löschen des Speichergeräts |
US5642506A (en) * | 1994-12-14 | 1997-06-24 | International Business Machines Corporation | Method and apparatus for initializing a multiprocessor system |
US5627962A (en) * | 1994-12-30 | 1997-05-06 | Compaq Computer Corporation | Circuit for reassigning the power-on processor in a multiprocessing system |
US5751641A (en) * | 1995-12-27 | 1998-05-12 | Sgs-Thomson Microelectronics, Inc. | Microprocessor memory test circuit and method |
US5764878A (en) | 1996-02-07 | 1998-06-09 | Lsi Logic Corporation | Built-in self repair system for embedded memories |
US5758056A (en) * | 1996-02-08 | 1998-05-26 | Barr; Robert C. | Memory system having defective address identification and replacement |
US5774647A (en) | 1996-05-15 | 1998-06-30 | Hewlett-Packard Company | Management of memory modules |
GB9614551D0 (en) | 1996-07-11 | 1996-09-04 | Memory Corp Plc | Memory system |
US5790850A (en) * | 1996-09-30 | 1998-08-04 | Intel Corporation | Fault resilient booting for multiprocessor computer systems |
US6125392A (en) | 1996-10-11 | 2000-09-26 | Intel Corporation | Method and apparatus for high speed event log data compression within a non-volatile storage area |
US5862314A (en) * | 1996-11-01 | 1999-01-19 | Micron Electronics, Inc. | System and method for remapping defective memory locations |
US5905858A (en) * | 1996-11-01 | 1999-05-18 | Micron Electronics, Inc. | System for method memory error handling |
US5996096A (en) * | 1996-11-15 | 1999-11-30 | International Business Machines Corporation | Dynamic redundancy for random access memory assemblies |
WO1999005599A1 (en) | 1997-07-28 | 1999-02-04 | Intergraph Corporation | Apparatus and method for memory error detection and error reporting |
US6035432A (en) | 1997-07-31 | 2000-03-07 | Micron Electronics, Inc. | System for remapping defective memory bit sets |
US6154851A (en) | 1997-08-05 | 2000-11-28 | Micron Technology, Inc. | Memory repair |
US5986950A (en) * | 1997-10-15 | 1999-11-16 | International Business Machines Corporation | Use of redundant circuits to improve the reliability of an integrated circuit |
TW333648B (en) * | 1997-10-30 | 1998-06-11 | Key Technology Corp | The connection structure and algorithm for flash memory |
GB9805054D0 (en) | 1998-03-11 | 1998-05-06 | Process Intelligence Limited | Memory test system with buffer memory |
GB9806687D0 (en) * | 1998-03-27 | 1998-05-27 | Memory Corp Plc | Memory system |
US6173382B1 (en) | 1998-04-28 | 2001-01-09 | International Business Machines Corporation | Dynamic configuration of memory module using modified presence detect data |
US6496945B2 (en) | 1998-06-04 | 2002-12-17 | Compaq Information Technologies Group, L.P. | Computer system implementing fault detection and isolation using unique identification codes stored in non-volatile memory |
US6324657B1 (en) | 1998-06-11 | 2001-11-27 | Micron Technology, Inc. | On-clip testing circuit and method for improving testing of integrated circuits |
US6260127B1 (en) | 1998-07-13 | 2001-07-10 | Compaq Computer Corporation | Method and apparatus for supporting heterogeneous memory in computer systems |
JP3266126B2 (ja) | 1999-01-14 | 2002-03-18 | 日本電気株式会社 | ネットワーク障害情報管理システム及び記憶媒体 |
US7017020B2 (en) * | 1999-07-16 | 2006-03-21 | Broadcom Corporation | Apparatus and method for optimizing access to memory |
US6304989B1 (en) | 1999-07-21 | 2001-10-16 | Credence Systems Corporation | Built-in spare row and column replacement analysis system for embedded memories |
US6601183B1 (en) | 1999-09-30 | 2003-07-29 | Silicon Graphics, Inc. | Diagnostic system and method for a highly scalable computing system |
US6536005B1 (en) | 1999-10-26 | 2003-03-18 | Teradyne, Inc. | High-speed failure capture apparatus and method for automatic test equipment |
US6499120B1 (en) * | 1999-12-30 | 2002-12-24 | Infineon Technologies Richmond, Lp | Usage of redundancy data for displaying failure bit maps for semiconductor devices |
US7111190B2 (en) * | 2001-02-23 | 2006-09-19 | Intel Corporation | Method and apparatus for reconfigurable memory |
US6820224B1 (en) | 2000-04-04 | 2004-11-16 | Promos Technologies Inc. | Method and system for increasing yield in embedded memory devices |
US7269765B1 (en) * | 2000-04-13 | 2007-09-11 | Micron Technology, Inc. | Method and apparatus for storing failing part locations in a module |
US6728907B1 (en) * | 2000-04-14 | 2004-04-27 | Microsoft Corporation | System and method for self-diagnosing system crashes |
JP2002025288A (ja) | 2000-06-30 | 2002-01-25 | Hitachi Ltd | 半導体集積回路 |
US6990607B2 (en) * | 2000-09-27 | 2006-01-24 | Seagate Technology Llc | System and method for adaptive storage and caching of a defect table |
WO2002027727A1 (en) | 2000-09-28 | 2002-04-04 | Seagate Technology Llc | Critical event log for a disc drive |
US6622269B1 (en) | 2000-11-27 | 2003-09-16 | Intel Corporation | Memory fault isolation apparatus and methods |
US7124412B2 (en) | 2000-12-13 | 2006-10-17 | Intel Corporation | Extensible BIOS error log |
US7162668B2 (en) | 2001-04-19 | 2007-01-09 | Micron Technology, Inc. | Memory with element redundancy |
US6842857B2 (en) * | 2001-04-12 | 2005-01-11 | International Business Machines Corporation | Method and apparatus to concurrently boot multiple processors in a non-uniform-memory-access machine |
US6725336B2 (en) * | 2001-04-20 | 2004-04-20 | Sun Microsystems, Inc. | Dynamically allocated cache memory for a multi-processor unit |
US6760869B2 (en) | 2001-06-29 | 2004-07-06 | Intel Corporation | Reporting hard disk drive failure |
DE10147138B4 (de) | 2001-09-25 | 2009-01-22 | Qimonda Ag | Verfahren zur Integration von imperfekten Halbleiterspeichereinrichtungen in Datenverarbeitungsvorrichtungen |
TW567414B (en) * | 2002-01-29 | 2003-12-21 | Admtek Inc | Dynamic built-in-self-skip method for shared memory fault recovery |
JP4268367B2 (ja) * | 2002-03-18 | 2009-05-27 | 博幸 荻野 | 半導体メモリの検査および欠陥救済方法、並びに半導体メモリの検査および欠陥救済回路 |
US7035953B2 (en) | 2002-05-03 | 2006-04-25 | Hewlett-Packard Development Company, L.P. | Computer system architecture with hot pluggable main memory boards |
US6754117B2 (en) | 2002-08-16 | 2004-06-22 | Micron Technology, Inc. | System and method for self-testing and repair of memory modules |
US20040088614A1 (en) * | 2002-11-01 | 2004-05-06 | Ting-Chin Wu | Management system for defective memory |
US6889305B2 (en) * | 2003-02-14 | 2005-05-03 | Hewlett-Packard Development Company, L.P. | Device identification using a memory profile |
US7827375B2 (en) * | 2003-04-30 | 2010-11-02 | International Business Machines Corporation | Defensive heap memory management |
US7320100B2 (en) * | 2003-05-20 | 2008-01-15 | Cray Inc. | Apparatus and method for memory with bit swapping on the fly and testing |
US7065630B1 (en) * | 2003-08-27 | 2006-06-20 | Nvidia Corporation | Dynamically creating or removing a physical-to-virtual address mapping in a memory of a peripheral device |
US7346755B2 (en) * | 2003-09-16 | 2008-03-18 | Hewlett-Packard Development, L.P. | Memory quality assurance |
US7444564B2 (en) * | 2003-11-19 | 2008-10-28 | International Business Machines Corporation | Automatic bit fail mapping for embedded memories with clock multipliers |
US7251744B1 (en) * | 2004-01-21 | 2007-07-31 | Advanced Micro Devices Inc. | Memory check architecture and method for a multiprocessor computer system |
JP2005234744A (ja) | 2004-02-18 | 2005-09-02 | Nec Corp | マルチプロセッサシステム及び障害処理方法 |
US7246269B1 (en) * | 2004-05-05 | 2007-07-17 | Advanced Micro Devices, Inc. | Efficient memory check architecture and method |
US7123051B1 (en) * | 2004-06-21 | 2006-10-17 | Altera Corporation | Soft core control of dedicated memory interface hardware in a programmable logic device |
US7873776B2 (en) * | 2004-06-30 | 2011-01-18 | Oracle America, Inc. | Multiple-core processor with support for multiple virtual processors |
US7272758B2 (en) * | 2004-08-31 | 2007-09-18 | Micron Technology, Inc. | Defective memory block identification in a memory device |
US8301938B2 (en) * | 2005-03-21 | 2012-10-30 | Hewlett-Packard Development Company, L.P. | Managing memory health |
US20070061637A1 (en) * | 2005-09-12 | 2007-03-15 | Lsi Logic Corporation | Process for conducting high-speed bitmapping of memory cells during production |
US7447955B2 (en) * | 2005-11-30 | 2008-11-04 | Advantest Corporation | Test apparatus and test method |
FR2894709A1 (fr) * | 2005-12-13 | 2007-06-15 | Gemplus Sa | "detecteur de destruction anormale de secteur memoire" |
JP2007172778A (ja) * | 2005-12-26 | 2007-07-05 | Nec Electronics Corp | メモリテスト回路及びメモリテスト方法 |
US7478285B2 (en) * | 2005-12-30 | 2009-01-13 | Silicon Graphics, Inc. | Generation and use of system level defect tables for main memory |
US8121237B2 (en) * | 2006-03-16 | 2012-02-21 | Rambus Inc. | Signaling system with adaptive timing calibration |
US7913147B2 (en) * | 2006-05-08 | 2011-03-22 | Intel Corporation | Method and apparatus for scrubbing memory |
US20080010566A1 (en) * | 2006-06-21 | 2008-01-10 | Chang Tsung-Yung Jonathan | Disabling portions of memory with non-deterministic errors |
US20080229143A1 (en) * | 2006-09-21 | 2008-09-18 | Sony Computer Entertainment Inc. | Management of available circuits to repair defective circuits |
US7590008B1 (en) * | 2006-11-06 | 2009-09-15 | Altera Corporation | PVT compensated auto-calibration scheme for DDR3 |
US8898412B2 (en) * | 2007-03-21 | 2014-11-25 | Hewlett-Packard Development Company, L.P. | Methods and systems to selectively scrub a system memory |
US8032816B2 (en) * | 2007-06-01 | 2011-10-04 | International Business Machines Corporation | Apparatus and method for distinguishing temporary and permanent errors in memory modules |
-
2007
- 2007-08-14 US US11/838,602 patent/US7945815B2/en active Active
-
2008
- 2008-07-31 TW TW097128998A patent/TWI380178B/zh active
- 2008-08-04 SG SG200805817-4A patent/SG150447A1/en unknown
- 2008-08-13 CN CN2008102105017A patent/CN101369240B/zh active Active
- 2008-08-14 EP EP08014511.3A patent/EP2048579B1/en active Active
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102483754A (zh) * | 2009-06-26 | 2012-05-30 | 森普利维蒂公司 | 在非均匀存取存储器中的可扩展编制索引 |
CN102483754B (zh) * | 2009-06-26 | 2015-03-11 | 森普利维蒂公司 | 在非均匀存取存储器中的可扩展编制索引 |
US10176113B2 (en) | 2009-06-26 | 2019-01-08 | Hewlett Packard Enterprise Development Lp | Scalable indexing |
CN104641352A (zh) * | 2012-08-02 | 2015-05-20 | 西门子公司 | 用于周期控制系统的流水线操作 |
CN104641352B (zh) * | 2012-08-02 | 2018-06-29 | 西门子公司 | 用于周期控制系统的流水线操作 |
US10281892B2 (en) | 2012-08-02 | 2019-05-07 | Siemens Aktiengesellschaft | Pipelining for cyclic control systems |
CN103984895A (zh) * | 2014-05-05 | 2014-08-13 | 上海新储集成电路有限公司 | 一种安全计算机系统及其应用方法 |
CN103984895B (zh) * | 2014-05-05 | 2017-04-05 | 上海新储集成电路有限公司 | 一种安全计算机系统及其应用方法 |
CN106469109A (zh) * | 2015-08-15 | 2017-03-01 | 昆达电脑科技(昆山)有限公司 | Dimm故障及时告知系统及其方法 |
CN112346786A (zh) * | 2019-08-08 | 2021-02-09 | 佛山市顺德区顺达电脑厂有限公司 | 应用于开机阶段及开机后运行阶段的除错信息纪录方法 |
CN112346786B (zh) * | 2019-08-08 | 2022-07-12 | 佛山市顺德区顺达电脑厂有限公司 | 应用于开机阶段及开机后运行阶段的除错信息纪录方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2048579B1 (en) | 2019-02-27 |
SG150447A1 (en) | 2009-03-30 |
US20090049335A1 (en) | 2009-02-19 |
TWI380178B (en) | 2012-12-21 |
CN101369240B (zh) | 2011-08-17 |
EP2048579A3 (en) | 2010-05-12 |
EP2048579A2 (en) | 2009-04-15 |
TW200912647A (en) | 2009-03-16 |
US7945815B2 (en) | 2011-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101369240B (zh) | 用于在信息处理系统中管理存储错误的系统和方法 | |
CN101369247B (zh) | 创建存储器缺陷映射表并使用该映射表优化性能的方法 | |
US8099570B2 (en) | Methods, systems, and computer program products for dynamic selective memory mirroring | |
US7107493B2 (en) | System and method for testing for memory errors in a computer system | |
US7783918B2 (en) | Data protection method of storage device | |
US11182262B2 (en) | Efficient and selective sparing of bits in memory systems | |
CN102081574A (zh) | 用于加快系统的唤醒时间的方法和系统 | |
US11307785B2 (en) | System and method for determining available post-package repair resources | |
US8995217B2 (en) | Hybrid latch and fuse scheme for memory repair | |
US9720756B2 (en) | Computing system with debug assert mechanism and method of operation thereof | |
US8667325B2 (en) | Method, apparatus and system for providing memory sparing information | |
US10732859B2 (en) | Systems and methods for granular non-volatile memory health visibility to a host | |
US20240013851A1 (en) | Data line (dq) sparing with adaptive error correction coding (ecc) mode switching | |
US11010250B2 (en) | Memory device failure recovery system | |
US20220350715A1 (en) | Runtime sparing for uncorrectable errors based on fault-aware analysis | |
KR20150085301A (ko) | 메모리 시스템의 동작 방법 및 이를 포함하는 메모리 시스템의 초기화 방법 | |
US9201748B2 (en) | Virtual device sparing | |
CN115757196A (zh) | 内存、访问内存方法及计算设备 | |
US11593209B2 (en) | Targeted repair of hardware components in a computing device | |
US20240241778A1 (en) | In-system mitigation of uncorrectable errors based on confidence factors, based on fault-aware analysis | |
US7895493B2 (en) | Bus failure management method and system | |
KR20230166563A (ko) | 작동 도중에 발생하는 메모리 고장을 실시간으로 리페어링하는 방법과 메모리 시스템, 및 메모리 시스템을 포함하는 데이터 처리 장치 | |
CN115910177A (zh) | 基于即将发生的存储器错误的故障感知预测的页脱机 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |