CN101714112A - 计算机设备 - Google Patents

计算机设备 Download PDF

Info

Publication number
CN101714112A
CN101714112A CN200910170643A CN200910170643A CN101714112A CN 101714112 A CN101714112 A CN 101714112A CN 200910170643 A CN200910170643 A CN 200910170643A CN 200910170643 A CN200910170643 A CN 200910170643A CN 101714112 A CN101714112 A CN 101714112A
Authority
CN
China
Prior art keywords
memory
diagnostic
unit
faulty section
routine
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
Application number
CN200910170643A
Other languages
English (en)
Other versions
CN101714112B (zh
Inventor
菱沼武夫
目崎义宪
石桥修
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN101714112A publication Critical patent/CN101714112A/zh
Application granted granted Critical
Publication of CN101714112B publication Critical patent/CN101714112B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2284Detection 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]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/14Implementation of control logic, e.g. test mode decoders
    • G11C29/16Implementation of control logic, e.g. test mode decoders using microprogrammed units, e.g. state machines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0401Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals in embedded memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0407Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals on power on
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/1208Error catch memory

Abstract

本发明涉及一种包括主存储器的计算机设备,该计算机设备包括:第一存储器诊断单元,用于通过执行第一存储器诊断程序来确定主存储器中的故障区;以及存储单元,用于存储可重定位的第二存储器诊断程序。而且,该计算机设备包括第二存储器诊断单元,用于将第二存储器诊断程序加载到主存储器的除了由第一存储器诊断单元确定的故障区之外的其它区域中。本发明在未确定主存储器是否包含故障区的情况下,不必将存储器诊断程序加载到主存储器中。这可避免不能正常执行存储器诊断程序的情况。因此,简化了无故障区和故障区的确定,实现了高效的存储器诊断处理。

Description

计算机设备
相关申请交叉引用
本申请基于2008年10月3日提交的在先日本专利申请号2008-258974,并要求享有其优先权,该专利申请的全部内容通过参考被并入本文。
技术领域
本申请讨论的实施例涉及一种计算机设备以及一种诊断存储器的方法。
背景技术
计算机设备使用许多种类的诊断测试来诊断每个内置装置的缺陷部分。作为计算机设备的一个例子,公开了一种诊断工具,其运行存储器诊断测试程序来诊断内置存储器中的存储功能是否正常工作,例如是否可以正常地从存储器读出预定数据、向存储器正常写入预定数据。例如参见日本特开专利公开号H6-4413。
在最简单的诊断测试中,存储器诊断程序被预先存储在计算机设备的基本输入/输出系统(BIOS)的一部分中。当计算机设备启动时,存储器诊断程序与BIOS一起运行。
然而,BIOS通常具有非常有限的存储能力,其中存储了如初始程序装入程序(initial program loader IPL)之类的另一程序。因此,BIOS仅能包含简单的存储器诊断程序。因此,在传统的计算机设备中,在运行BIOS且启动操作系统之后,用于执行复杂存储器检查的存储器诊断程序通常被操作系统(OS)加载到如随机存取存储器(RAM)类的主存储器中并被执行。
顺便提一下,只有在主存储器的所有地址中没有发现故障时,传统的计算机才能工作正常。但是即使通过预先检查主存储器发现了主存储器中有一些故障区,目前还是期望有一种不使用故障区而能正常运行的新型计算机设备。
为了当在主存储器中存在故障区的情况下仍正常运行计算机设备,就需要在操作系统启动之前对故障区进行检测。
但是,BIOS中存储的存储器诊断程序不能执行使OS能够正常工作的存储器诊断。
在这种情况下可以考虑如下的技术。传统上由OS处理的复杂存储器诊断程序被存储在除BIOS之外的存储器中,如存储在只读存储器(ROM)中。同时,在主存储器的预定地址加载复杂存储器诊断程序的加载程序被存储在BIOS中。这使计算机设备在引导(boot up)时能够启动复杂的存储器诊断程序。
然而,该结构会导致出现这种情形,即在存储器诊断之前,存储器诊断程序被加载到主存储器中。也就是说,存储器诊断程序被加载到主存储器中的时候,并不知道加载了存储器诊断程序的主存储器的区域是否是有故障的。因此,存在存储器诊断程序本身无法被执行的可能性。
发明内容
根据本发明的一个方面,一种具有主存储器的计算机设备包括:第一存储器诊断单元,用于通过执行第一存储器诊断程序来确定所述主存储器中的故障区;存储单元,用于存储可重定位的第二存储器诊断程序;以及第二存储器诊断单元,用于将所述第二存储器诊断程序加载到所述主存储器中除了由所述第一存储器诊断单元确定的所述故障区之外的区域中。
根据本发明的另一个方面,一种诊断计算机设备中的主存储器的方法,包括以下步骤:通过执行第一存储器诊断程序来确定所述主存储器中的故障区;以及将第二存储器诊断程序加载到所述主存储器中除了通过确定故障区的步骤而确定的故障区之外的其它区域中。
根据本发明的再一个方面,一种计算机可读存储介质,其中存储有用来诊断计算机设备中的主存储器的计算机程序,所述计算机程序使得所述计算机设备执行以下步骤:通过执行第一存储器诊断程序来确定所述主存储器中的故障区;以及将第二存储器诊断程序加载到所述主存储器中除了通过确定故障区的步骤确定的故障区之外的区域中。
本发明在未确定主存储器是否包含故障区的情况下,不必将存储器诊断程序加载到主存储器中。这样可避免不能正常执行存储器诊断程序的情况。因此,简化了无故障区和故障区的确定,实现了高效的存储器诊断处理。
借助权利要求中具体指出的元件及组合可实现和达到本发明的目的和优点。
应该理解,前述概括性描述和下文的详细描述都是示例性及解释性的,不是对本发明保护范围加以限制。
附图说明
图1是示出根据本发明实施例的计算机设备的结构的方框图;
图2是示出图1的动态随机存取存储器(DRAM)的细节;
图3是示出图1的BIOS程序的细节的功能框图;
图4A是在已经执行存储器诊断程序32a之后的存储器品质评估表(memory-quality evaluation table);
图4B是示出当将存储器诊断程序32b加载DRAM中时DRAM上的分配区;
图4C是在已经执行存储器诊断程序32b之后的存储器品质评估表;
图4D是示出当将存储器诊断程序32c加载DRAM中时DRAM上的分配区;
图4E是在已经执行存储器诊断程序32c之后的存储器品质评估表;
图4F示出通过对DRAM进行诊断得出的结果;以及
图5是示出根据本发明实施例的计算机设备执行的存储器诊断处理的步骤流程图。
具体实施方式
将参考附图对本发明的优选实施例进行解释。
下面描述根据一实施例的计算机设备的特征。计算机设备包括主存储器;第一存储器诊断单元,其通过执行第一存储器诊断程序来识别出主存储器的故障区或缺陷区;存储单元,其存储可重定位的第二存储器诊断程序;以及第二存储器诊断单元,其将存储在存储单元中的第二存储器诊断程序加载到除由第一主存储器诊断单元识别出的主存储器缺陷区之外的其它区域(称为“非故障”或“非缺陷”区)中,并执行该第二存储器诊断程序。
也就是说,根据该实施例的计算机设备通过执行多个存储器诊断程序来对计算机设备中诸如动态随机存取存储器(DRAM)等主存储器进行诊断。
具体而言,计算机设备中诸如只读存储器(ROM)等存储单元预先存储有多个不同的存储器诊断程序。第一存储器诊断单元通过运行多个存储器诊断程序中的第一存储器诊断程序来对主存储器进行诊断。
多个存储器诊断程序各自诊断不同的存储功能,并根据存储功能的诊断级别具有不同的程序规模。也就是说,用于诊断较高级存储功能的存储器诊断程序具有较大的程序规模。第一存储器诊断程序属于存储功能中的最低诊断级别,具有最小的程序规模。
根据该实施例的第一存储器诊断单元执行第一存储器诊断程序,而不将第一存储器诊断程序加载到主存储器中。因此,首先由第一存储器诊断单元不使用主存储器而执行对存储功能的简单诊断。然后,由第二存储器诊断单元执行对存储功能的更高级别的诊断。因此,在不清楚主存储器中是否有缺陷区的阶段,存储器诊断程序不必被加载到主存储器中。这避免了存储器诊断程序变成不可执行的情况。
如果第一存储器诊断程序被加载到主存储器中,以占据其上相对小的区域,则可以由第一存储器诊断单元将第一存储器诊断程序加载到主存储器中。
第二存储器诊断单元将存储在诸如ROM等存储单元中的第二存储器诊断程序加载到主存储器中除由第一存储器诊断单元识别出的缺陷区之外的其它区域中,并执行该第二存储器诊断程序。也就是说,第二存储器诊断单元将由第一存储器诊断单元识别出的缺陷区从主存储器的用来加载第二存储器诊断程序的区域中排除。在主存储器的所有区域中,缺陷区被定义为诸如读出和写入功能等存储功能不能正常工作的区域。第二存储器诊断程序执行较高级别的存储功能诊断,并且规模比第一存储器诊断程序规模更大。
这样,根据该实施例的计算机设备可以避免这样的情况:第二诊断程序被错误地加载缺陷区,从而不能正常执行第二诊断程序。
然后,第二存储器诊断单元通过执行已经被加载到非缺陷区的部分区域中的第二存储器诊断程序对主存储器再次进行诊断。接着,第二存储器诊断单元基于由第二存储器诊断程序诊断的主存储器的结果在除之前识别为缺陷区之外的区域中识别新的缺陷区。而且,第二存储器诊断单元将最新和之前发现的缺陷区作为缺陷区而从待加载下一存储器诊断程序(即,第三存储器诊断程序和之后的程序)的区域中排除。重复这些处理,直到存储在诸如ROM等存储单元中的所有存储器诊断程序已经结束运行。因此,第二存储器诊断程序之后的存储器诊断程序总是被加载到主存储器的非故障区中。因此,这些存储器诊断程序可以被正常执行。
以这种方式,根据该实施例,首先执行不使用主存储器或者仅占据主存储器的小部分的第一存储器诊断程序,以便对主存储器进行简单诊断。然后,利用诊断结果,对需要被加载到主存储器中且可以提供对存储器的详细诊断的第二存储器诊断程序的设置位置进行识别。因此,这就降低了第二存储器诊断程序之后的存储器诊断程序因被加载到主存储器中存储功能不能正常工作的缺陷区的可能性,并且避免了第二存储器诊断程序之后的存储器诊断程序变成不可执行的情况。
参照图1,对根据本发明的实施例的计算机设备的结构进行解释。图1是示出根据一实施例的计算机设备的结构的方框图。图2是示出图1中示出的DRAM的细节。
如图1中所示,计算机设备1包括中央处理单元(CPU)10、DRAM 20、ROM 30、显示器控制器40和连接上述元件的总线60.
CPU 10控制计算机设备1的整体运行。具体地,当计算机设备1启动时,CPU 10从ROM 30中读取基本输入输出系统(BIOS)程序31(将在后文描述),并执行BIOS程序31以检查诸如DRAM 20等装置中是否有错误。CPU 10还通过执行BIOS程序31来执行操作系统(OS)的启动以及对各装置的控制。
DRAM 20是计算机设备1的主存储器(主存储单元)。具体而言,DRAM20是其中加载了待由CPU 10执行的程序(包括BIOS程序31)的装置,并且被用作工作存储器以暂时存储与程序相关的各种数据。而且,如图2中所示,DRAM 20被划分成多个区(1)至(20),以便加载待由CPU 10执行的程序。
用作存储单元的ROM 30存储CPU 10执行的数据和各种程序。ROM 30存储的程序包括BIOS程序31和多个存储器诊断程序32。
BIOS程序31是基本输入输出程序。具体而言,在计算机设备1被打开时,BIOS程序31开始运行,所述BIOS程序31是控制OS、应用程序、DRAM20和外围装置(显示器、键盘等)之间的输入和输出数据的控制程序。而且,BIOS程序31执行存储器诊断处理,以确认可以从DRAM 20中正常读取数据和向DRAM 20正常写入数据,并确认与存储器保护功能和错误校正功能相关的功能能正常工作。下文详细描述BIOS程序31执行存储器诊断处理的具体结构。
当BIOS程序31对DRAM 20执行存储器诊断处理时执行多个存储器诊断程序32,多个存储器诊断程序32是检查DRAM 20的各个存储功能是否正常工作(例如,预定数据是否能正常写入存储器中及从存储器中正常读出)的程序集合。在此实施例中,存储器诊断程序32包括三个存储器诊断程序32a,32b和32c。存储器诊断程序32a,32b和32c分别是为诊断截然不同的存储功能而设计的,根据存储功能的诊断级别具有不同的程序规模。例如,在此实施例中,32a具有最低的存储功能诊断级别,然后依次是32b及32c,它们的程序规模也以相同次序增加。在三个存储器诊断程序中,存储器诊断程序32a具有最低的存储功能诊断级别以及最小的程序规模。
显示器控制器40连接到显示器50,向其提供诸如DRAM 20的存储器诊断结果等输出。显示器50是图像显示装置,能可视地显示来自显示器控制器40的输出。
参照图3,详细描述使BIOS程序31能够在DRAM 20上执行存储器诊断处理的具体结构。图3的方框图示出了图1的BIOS程序31的细节,并示出了由CPU 10执行存储在ROM 30中的BIOS程序31时可以实现的功能。
BIOS程序31包括存储器诊断单元311、存储器品质评估表制备单元312、故障区确定单元313、诊断程序加载单元314、OS错误检测单元315和诊断结果报告单元316。在BIOS程序31启动(被执行)时,执行这些功能单元311-316。
如上所述,当计算机设备1启动时,首先执行BIOS程序31。因此,在OS引导之前执行DRAM 20的存储器诊断处理,使得即使在OS没有启动的情况下存储器诊断程序也能正常运行。
存储器诊断单元311通过运行存储器诊断程序32a而开始对DRAM 20进行诊断,存储器诊断程序32a是存储器诊断程序32的第一存储器诊断程序。而且,存储器诊断单元311不用将存储器诊断程序32a加载到DRAM 20中,就能运行存储器诊断程序32a。如上所述,在存储器诊断程序32中,存储器诊断程序32a包含最低的存储功能诊断级别,具有最小的程序规模。存储器诊断程序32a的程序规模被设置的小,就消除了将存储器诊断程序32a加载到DRAM 20中的必要。这可避免在不清楚DRAM 20是否有缺陷区时将存储器诊断程序加载到DRAM 20中。
存储器品质评估表制备单元312生成存储器品质评估表,该表将存储器诊断单元311的诊断结果和DRAM 20上的地址信息相关联。在下文解释存储器诊断处理的步骤时,再详细解释存储器品质评估表。
故障区确定单元313基于存储器诊断单元311的诊断结果确定DRAM 20中的故障区或缺陷区。具体而言,故障区确定单元313参照由存储器品质评估表制备单元312生成的存储器品质评估表,提取DRAM 20上被存储器诊断单元311诊断为错误的地址信息,从而基于所提取的地址信息确定DRAM20中的故障区。在这种情况下,存储器诊断单元311和故障区确定单元313作为第一存储器诊断单元,通过执行第一存储器诊断程序32a来确定DRAM20(主存储器)中的故障区。
诊断程序加载单元314将存储器诊断程序32b加载到DRAM 20的所有区域(1)至(20)中除由故障区确定单元313确定的故障区之外的区域中,其中该储器诊断程序32b是存储在ROM 30中的第二存储器诊断程序。更具体讲,诊断程序加载单元314参照由存储器品质评估表制备单元312制备的存储器品质评估表,提取被存储器诊断单元311诊断为错误的DRAM 20的地址信息。然后,诊断程序加载单元314将与所提取的作为故障区的地址信息对应的区域从用于加载存储器诊断程序32b的区域中排除。换言之,诊断程序加载单元314将除故障区之外的一部分区域设置为用于加载第二存储器诊断程序32b的区域。
然后,存储器诊断单元311通过执行由诊断程序加载单元314加载的存储器诊断程序32b,重新对DRAM 20的所有区域(1)至(20)中除由故障区确定单元313确定的故障区之外的区域进行诊断。在这种情况下,诊断程序加载单元314和存储器诊断单元311用作第二存储器诊断单元,它们将第二存储器诊断程序32b加载到除由故障区确定单元313确定的故障区之外的其它区域中,并执行第二存储器诊断程序32b。
接着,基于存储器诊断单元311的新诊断结果,故障区确定单元313确定DRAM 20的所有区域(1)至(20)中除之前被故障区确定单元313确定为故障区之外的新的故障区。诊断程序加载单元314从用于加载由存储器诊断单元311接着执行的存储器诊断程序32c的区域中将由故障区确定单元313先前确定和新确定的故障区作为故障区而排除。
重复由功能单元311-314执行的处理,直到存储器诊断单元311执行完所有的存储器诊断程序32(32a-32c)。由于此原因,存储器诊断程序32总是被加载到DRAM 20中的故障区之外的非故障区。因此,就可以正常执行存储器诊断程序。
OS错误检测单元315检测在OS启动时的错误。这类OS启动错误包括计算机设备1停止工作,和不接收键盘或鼠标输入的状态(称作挂起,hung-up),以及OS本身不能连续处理的状态(称作蓝屏和黑屏)。当事先测量计算机设备1在正常操作中的启动时间时,确定超时持续时间(timeoutduration)并将其存储在ROM 30的预定区域中,即使在过了超时持续时间后,也可发现挂起、蓝屏或黑屏,OS错误检测单元315被设计为对OS启动错误进行检测。
当OS错误检测单元315检测到OS启动错误时,诊断结果报告单元316以可视方式向显示器控制器40输出由存储器诊断单元311诊断的DRAM 20的存储器诊断结果。诊断结果报告单元316作为报告由存储器诊断单元311诊断的DRAM 20的存储器诊断结果的装置。该诊断结果报告单元316还被配置为输出由存储器品质评估表制备单元312制备的存储器品质评估表,作为由存储器诊断单元311对DRAM 20执行存储器诊断的结果。
参照图4A到图4F,具体描述了BIOS程序31如何对DRAM 20执行存储器诊断处理的步骤。图4A到图4F示出了BIOS程序31在DRAM 20上执行存储器诊断处理的步骤。图4A和图4C分别示出在执行存储器诊断程序32a和32b之后由存储器品质评估表制备单元312制备的存储器品质评估表。图4B和图4D分别示出DRAM 20中将要加载由诊断程序加载单元314设置的后继的存储器诊断程序32b和32c的区域。而且,图4E示出在执行存储器诊断程序32c之后由存储器品质评估表制备单元312制备的存储器品质评估表,而图4F示出DRAM 20的存储器诊断的最终结果。
如图4A所示,当存储器诊断单元311执行存储器诊断程序32a时,存储器品质评估表制备单元312产生存储器品质评估表,该表将存储器诊断单元311的诊断结果和DRAM 20的地址信息相关联。在此情况下,存储器诊断程序32a不被加载到DRAM 20中就被存储器诊断单元311执行。在由存储器品质评估表制备单元312制备的存储器品质评估表中,数值“1”作为DRAM 20的存储器诊断结果被分配给存储器诊断单元311诊断为非故障的DRAM 20的地址,而数值“0”作为DRAM 20的存储器诊断结果被分配给由存储器诊断单元311诊断为错误的DRAM 20的地址。在图4B中,区域(3)和(19)被分配了“0”,它们被诊断为错误。
接着,如图4B所示,故障区确定单元313参照图4A中示出的存储器品质评估表确定DRAM 20中的故障区。在图4A中,在DRAM 20的所有区域(1)至(20)中,被诊断为错误的区域(3)和(19)被确定为有故障。
如图4B中所示,诊断程序加载单元314将DRAM 20的所有区域中除去由故障区确定单元313确定的故障区之外的一部分区域选择为用于加载存储器诊断单元311接下来要执行的存储器诊断程序32b的区域。在图4A和图4B中,在DRAM 20的所有区域(1)至(20)中,除故障区(3)和(19)之外的一部分区域被选择为用于加载接下来待执行的存储器诊断程序32b的区域。
接着,当存储器诊断单元311执行存储器诊断程序32b时,在DRAM 20的所有区域(1)至(20)中除故障区(3)和(19)之外的区域被重新诊断。
如图4C中所示,存储器品质评估表制备单元312使用由存储器诊断单元311得到的新的诊断结果来更新存储器品质评估表。即,在存储器品质评估表中,在DRAM 20的所有区域(1)至(20)中,数值“2”作为存储器诊断结果被重新分配给存储器诊断单元311新诊断为正常的区域的地址。相反,对于存储器诊断单元311已经诊断为错误的区域地址,保持数值“1”作为存储器诊断结果。在图4C和图4D中,分别被分配了作为存储器诊断结果的数值“1”的区域(5)和(20)被重新诊断为错误。
如图4D中所示,参照图4C中的存储器品质评估表,故障区确定单元313确定在DRAM 20的所有区域(1)至(20)中除旧的故障区(3)和(19)之外的新故障区。在图4C和图4D中,在DRAM 20的所有区域(1)至(20)中,除旧的故障区(3)和(19)之外,被重新诊断为错误的区域(5)和(20)被重新确定为故障区。
如图4D中所示,在DRAM 20的所有区域中除被故障区确定单元313确定为故障区之外的一部分区域被诊断程序加载单元314重新选择为用于加载存储器诊断单元311接下来要执行的存储器诊断程序32c的区域。在图4C和图4D中,在DRAM 20的所有区域(1)至(20)中除故障区(3)、(5)、(19)和(20)之外的一部分区域被重新选择为用于加载存储器诊断程序32c的区域。
当存储器诊断单元311执行存储器诊断程序32c时,在DRAM 20的所有区域(1)至(20)中除故障区(3)、(5)、(19)和(20)之外的其它区域被重新诊断。
如图4E中所示,存储器品质评估表制备单元312使用存储器诊断单元311得到的新的诊断结果更新存储器品质评估表。即,在存储器品质评估表中,在DRAM 20的所有区域中,数值“3”作为存储器诊断结果被重新分配给存储器诊断单元311重新诊断为正常的区域地址。相反,对于存储器诊断单元311已经诊断为错误的区域的地址,保持数值“2”作为存储器诊断结果。在图4E和图4F中,分配了作为存储器诊断结果的数值“2”的区域(4)被重新诊断为错误。
通过执行上述处理,如图4F中所示,所获得的存储器诊断的最终结果与由BIOS程序31执行的存储器诊断处理一致。
参照图5描述图1中计算机设备1的存储器诊断处理。图5是示出图1中计算机设备1的存储器诊断处理的流程图。图5的存储器诊断处理是在计算机设备1被打开后,通过运行CPU 10从ROM 30中读出的BIOS程序31而执行的处理。
如图5中所示,BIOS程序31的存储器诊断单元311执行多个存储器诊断程序32中的存储器诊断程序32a,如步骤S10,并逐个诊断DRAM 20的所有区域,如步骤S11。存储器诊断单元311在没有将存储器诊断程序32a加载DRAM 20的情况下运行存储器诊断程序32a。然后,存储器诊断单元311将存储器诊断结果和DRAM 20的地址信息存储到DRAM 20的每一区域中,且存储器诊断结果和DRAM 20的地址信息彼此关联,如步骤S12。
接着,存储器诊断单元311确定在DRAM 20的所有区域中是否存在未诊断的区域,如步骤S13。所述确定是基于存储器诊断结果是否已经与DRAM20的每个区域的地址信息相关联而做出的。如果确定在DRAM 20的所有区域中在某处存在有未诊断的区域,即步骤S13中为是,则存储器诊断单元311重复步骤S11到步骤S13的处理,直到在DRAM 20的所有区域中没有未诊断的区域。
如果确定在DRAM 20的所有区域中没有未诊断的区域,即步骤S13中为否,则存储器诊断单元311请求存储器品质评估表制备单元312来制作存储器品质评估表。一旦接收到该请求,存储器品质评估表制备单元312制备存储器品质评估表,其中存储器诊断单元311的存储器诊断结果与DRAM 20的地址信息相关联,如步骤S14,并且存储器品质评估表制备单元312将制备好的存储器品质评估表发送给故障区确定单元313。
然后,参照所接收的存储器品质评估表,故障区确定单元313提取DRAM20上被存储器诊断单元311确定为错误的地址信息,以根据所提取的地址信息确定DRAM 20中的故障区,如步骤S15。
诊断程序加载单元314将DRAM 20的所有区域中除在步骤S15由故障区确定单元313确定为故障区之外的区域的一部分或多个部分确定为一个或多个加载区,如步骤S16,并且将下一存储器诊断程序32b加载到所述加载区中,如步骤S17。
接着,存储器诊断单元311通过执行所加载的存储器诊断程序32b,逐个诊断DRAM 20中除故障区之外的所有区域,如步骤S18。然后,存储器诊断单元311将存储器诊断结果和DRAM 20上的地址信息存储在DRAM 20的每个区域中,所述存储器诊断结果和DRAM 20上的地址信息彼此相关联,如步骤S19。
然后,存储器诊断单元311确定在DRAM 20的所有区域中除故障区之外的区域中是否存在未诊断的区域,如步骤S20。如果存储器诊断单元311确定存在未诊断区域,即步骤S20中为是,则存储器诊断单元311重复步骤S18到S20的处理,直到在DRAM 20的所有区域中除故障区之外的区域中不再发现未诊断区域。
相反,如果存储器诊断单元311确定在DRAM 20的所有区域中除故障区之外的区域中不存在未诊断区域,即步骤S20中为否,则存储器诊断单元311请求存储器品质评估表制备单元312更新存储器品质评估表。一旦接收到该请求,存储器品质评估表制备单元312就更新存储器品质评估表,如步骤S21。
之后,存储器诊断单元311确定是否已经执行了所有存储器诊断程序32a、32b和32c,如步骤S22。如果存储器诊断单元311确定还未执行完所有存储器诊断程序,即步骤S22中为否,则处理返回步骤S15。然后,重复步骤S15到S22的过程,直到执行完所有的存储器诊断程序32a、32b和32c。
如果存储器诊断单元311确定已经执行完所有存储器诊断程序,即步骤S22中为是,则存储器诊断单元311进到步骤S23。
在步骤S23中,OS错误检测单元315检测启动时是否有OS错误,或者是否有OS启动错误。如果其结果是检测到OS启动错误,即步骤S23中为是,则OS错误检测单元315向诊断结果报告单元316发出检测信号。一旦接收到来自OS错误检测单元315的检测信号,诊断结果报告单元316就向显示器控制器40输出存储器品质评估表作为DRAM 20的存储器诊断结果,其中该存储器品质评估表由存储器品质评估表制备单元312在步骤S21中更新。随后,在显示器50上显示存储器品质评估表,如步骤S24,以此结束存储器诊断处理。相反,如果未检测到OS启动错误,即步骤S23中为否,则OS错误检测单元315完成存储器诊断处理。
如上所述,在此实施例中,存储器诊断单元311执行存储器诊断程序32a(即第一存储器诊断程序),以对DRAM 20进行诊断。故障区确定单元313基于存储器诊断单元311的诊断结果确定DRAM 20中的故障区。存储器诊断单元311和故障区确定单元313用作第一存储器诊断单元。此外,诊断程序加载单元314将存储器诊断单元311接着将要执行的存储器诊断程序32b加载到DRAM 20中除了故障区之外的部分区域中。存储器诊断单元311通过执行由诊断程序加载单元314加载的存储器诊断程序32b,重新诊断DRAM 20中除了由故障区确定单元313确定的故障区之外的区域。诊断程序加载单元314和存储器诊断单元311用作第二存储器诊断单元。因此,该实施例可以避免将存储器诊断程序加载主存储器的故障区中(在故障区中存储功能不能正常工作),以此防止出现不能正常执行存储器诊断程序的情形。
而且,用作第一存储器诊断单元的存储器诊断单元311在没有将存储器诊断程序32a加载到DRAM 20的情况下运行存储器诊断程序32a。因此,在未确定主存储器是否包含故障区的情况下,不必将存储器诊断程序加载到主存储器中。这可避免不能正常执行存储器诊断程序的情况。
作为结果,这样就简化了对无故障区(healthy area)和故障区的确定,实现了高效的存储器诊断处理。由于存储器品质评估表制备单元312制备的存储器品质评估表将由存储器诊断单元311进行的存储器诊断的结果与DRAM 20的地址信息相关联,所以可容易地区分故障区和除故障区之外的区域。这样就能够实现更高效的存储器诊断处理。
故障区确定单元313在用作第二存储器诊断单元时,提取DRAM 20上被存储器诊断单元311诊断为错误的区域的地址信息。从DRAM 20的用来加载第二存储器诊断程序32b的区域中排除与所提取的地址信息对应的有故障的区域。结果,就能很容易地区分故障区和除故障区之外的区域,从而很容易地确定故障区,以此实现更高效的存储器诊断处理。
OS错误检测单元315检测OS启动错误。当OS错误检测单元315检测OS启动错误时,诊断结果报告单元316报告存储器诊断单元311的诊断结果。结果,由于用户可以确认存储器诊断单元311的诊断结果,所以用户可以立即找到DRAM 20中的故障区并采取适当措施,如将故障区进行调换。
每个功能单元311-316都在通电时启动,并被并入到BIOS程序31中,BIOS程序31控制将被输入到DRAM 20和从DRAM 20输出的数据。而且,在BIOS程序31启动时,这些功能单元都被执行。因此,在OS启动之前,可以执行DRAM 20的存储器诊断处理。即使在OS不启动时,也可以正常执行存储器诊断程序。
到此描述了根据本发明的多个实施例。在权利要求所公开的概念范围内,本发明还可以涵盖与上述描述有所区别的各种实施例。
例如,在实施例中,第一存储器诊断程序在没有被第一存储器诊断单元加载到主存储器的情况下即可被执行。但这并不是唯一的单个实施例。本发明还涵盖下面的实施例。若第一存储器诊断程序当被加载到主存储器中时占据的是较小的区域,则由第一存储器诊断单元加载到主存储器中。这样,可以首先执行对主存储器的简单诊断。在这种情况下,使用第一存储器诊断单元的诊断结果,分别由第二存储器诊断单元和第三存储器诊断单元将第二和第三存储器诊断程序连续加载到主存储器中,其中所述第二和第三存储器诊断程序当被加载到主存储器中时会占据较大的区域。这样就能够实现高级存储器诊断功能。
在实施例中,描述的是对DRAM、主存储器进行诊断的存储器诊断处理。但这并不是唯一的单个实施例。本发明还涵盖下面的实施例。还可以应用用来诊断设置在CPU内部并能够高速读出、写入的高速缓冲存储器(cashmemory)的存储器诊断处理。
实施例中的BIOS程序31和存储器诊断程序32不一定必须存储在ROM30中。例如,这些程序可以存储在诸如闪存等可重写、非易失性存储器中,并且可以被CPU 10读出和执行。BIOS程序31和存储器诊断程序32还可以从经互联网连接的服务器下载到闪存中。而且,这些程序可以存储在诸如CD-ROM等存储介质中,并且可以通过其驱动器从存储介质读入到闪存中。
根据本发明的所述实施例,执行第一存储器诊断程序以便执行对主存储器的简单诊断,其中第一存储器诊断程序不使用主存储器或者只占据主存储器的一小部分。利用诊断结果可以识别出第二诊断程序的设置位置,其中该第二诊断程序需要被加载到主存储器中并且能够执行详细诊断。结果,所述实施例可以降低第二存储器诊断程序被加载到主存储器的故障区中的可能性,并避免无法执行第二存储器诊断程序的情况。
本文记载的所有例子和条件性语言都旨在用于教示目的,以帮助读者理解发明者为改进现有技术而提出的发明和概念,应将所有例子和条件性语言解读为不局限于这些具体记载的例子和条件,说明书中对这些例子的组织也不涉及对本发明的优点和缺点的示意。尽管已经详细描述了本发明的实施例,但应理解在不偏离本发明的精神和范围的情况下,可对其进行各种变化、替代和更改。

Claims (18)

1.一种包括主存储器的计算机设备,该计算机设备包括:
第一存储器诊断单元,用于通过执行第一存储器诊断程序来确定所述主存储器中的故障区;
存储单元,用于存储可重定位的第二存储器诊断程序;以及
第二存储器诊断单元,用于将所述第二存储器诊断程序加载到所述主存储器中除了由所述第一存储器诊断单元确定的所述故障区之外的区域中。
2.根据权利要求1所述的计算机设备,其中,所述第一存储器诊断单元执行所述第一存储器诊断程序,所述第一存储器诊断程序不被加载到所述主存储器中。
3.根据权利要求1所述的计算机设备,还包括存储器品质评估表制备单元,用于制备存储器品质评估表,其中由所述第一存储器诊断单元进行的所述主存储器的诊断的结果与所述主存储器的地址信息相关联。
4.根据权利要求3所述的计算机设备,其中,所述第二存储器诊断单元参照所述存储器品质评估表提取所述主存储器上被所述第一存储器诊断单元诊断为错误的地址信息,并且将与所提取的地址信息对应的区域作为故障区从用于加载所述第二存储器诊断程序的区域中排除。
5.根据权利要求1所述的计算机设备,还包括:
操作系统错误检测单元,用于检测操作系统启动时的错误;以及
诊断结果报告单元,用于在所述操作系统错误检测单元已经检测到启动错误时,报告由所述第二存储器诊断单元进行的所述主存储器的诊断的结果。
6.根据权利要求1所述的计算机设备,其中,被并入到基本输入输出程序中的所述第一存储器诊断单元、第二存储器诊断单元、存储器品质评估表制备单元、操作系统错误检测单元和诊断结果报告单元的每一个均在通电时启动,并且在所述基本输入输出程序已经启动时被执行,其中所述基本输入输出程序是用来控制将要输入到所述主存储器和从所述主存储器输出的数据的控制程序。
7.一种诊断计算机设备中的主存储器的方法,包括以下步骤:
通过执行第一存储器诊断程序来确定所述主存储器中的故障区;以及
将第二存储器诊断程序加载到所述主存储器中除了通过确定故障区的步骤而确定的故障区之外的其它区域中。
8.根据权利要求7所述的方法,其中,所述确定故障区的步骤执行所述第一存储器诊断程序,而所述第一存储器诊断程序不被加载到所述主存储器中。
9.根据权利要求7所述的方法,还包括以下步骤:制备存储器品质评估表,其中通过所述确定故障区的步骤进行的所述主存储器的诊断的结果与所述主存储器的地址信息相关联。
10.根据权利要求9所述的方法,其中,参照所述存储器品质评估表,加载所述第二存储器诊断程序的步骤提取所述主存储器上通过所述确定故障区的步骤而被诊断为错误的地址信息,并且将与所提取的地址信息对应的区域作为故障区从用于加载所述第二存储器诊断程序的区域中排除。
11.根据权利要求7所述的方法,还包括以下步骤:
检测操作系统启动时的错误;以及
当检测错误的步骤已经检测到启动错误时,报告通过加载所述第二存储器诊断程序的步骤进行的所述主存储器的诊断的结果。
12.根据权利要求7所述的方法,其中,被并入到基本输入输出程序中的所述确定故障区的步骤、加载第二存储器诊断程序的步骤、制备存储器品质评估表的步骤、检测启动错误的步骤以及报告诊断结果的步骤的每一个均在通电时启动,并且在所述基本输入输出程序已经启动时执行,其中所述基本输入输出程序是用来控制将要输入到所述主存储器和从所述主存储器输出的数据的控制程序。
13.一种计算机可读存储介质,其中存储有用来诊断计算机设备中的主存储器的计算机程序,所述计算机程序使得所述计算机设备执行以下步骤:
通过执行第一存储器诊断程序来确定所述主存储器中的故障区;以及
将第二存储器诊断程序加载到所述主存储器中除了通过确定故障区的步骤而确定的故障区之外的区域中。
14.根据权利要求13所述的计算机可读存储介质,其中,在所述确定故障区的步骤中执行的所述第一存储器诊断程序不被加载到所述主存储器中。
15.根据权利要求13所述的计算机可读存储介质,还包括以下步骤:制备存储器品质评估表,其中通过所述确定故障区的步骤而进行的所述主存储器的诊断的结果与所述主存储器的地址信息相关联。
16.根据权利要求15所述的计算机可读存储介质,其中,在加载所述第二存储器诊断程序的步骤中,参照所述存储器品质评估表,提取所述主存储器上通过所述确定故障区的步骤而被诊断为错误的地址信息,并且将与所提取的地址信息对应的区域作为故障区从用于加载所述第二存储器诊断程序的区域中排除。
17.根据权利要求13所述的计算机可读存储介质,还包括以下步骤:
检测操作系统启动时的错误;以及
在已经检测到启动错误时,报告通过加载所述第二存储器诊断程序的步骤进行的所述主存储器的诊断的结果。
18.根据权利要求13所述的计算机可读存储介质,其中,被并入基本输入输出程序中的所述确定故障区的步骤、加载第二存储器诊断程序的步骤、制备存储器品质评估表的步骤、检测启动错误的步骤以及报告诊断结果的步骤在通电时启动,并且在所述基本输入输出程序已经启动时执行,其中所述基本输入输出程序是用来控制将要输入到所述主存储器和从所述主存储器输出的数据的控制程序。
CN200910170643.XA 2008-10-03 2009-09-01 诊断计算机设备中的主存储器的系统及方法 Expired - Fee Related CN101714112B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-258974 2008-10-03
JP2008258974A JP5293062B2 (ja) 2008-10-03 2008-10-03 コンピュータ装置、メモリ診断方法、及びメモリ診断制御プログラム

Publications (2)

Publication Number Publication Date
CN101714112A true CN101714112A (zh) 2010-05-26
CN101714112B CN101714112B (zh) 2013-05-01

Family

ID=41467428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910170643.XA Expired - Fee Related CN101714112B (zh) 2008-10-03 2009-09-01 诊断计算机设备中的主存储器的系统及方法

Country Status (6)

Country Link
US (1) US8510611B2 (zh)
EP (1) EP2172941B1 (zh)
JP (1) JP5293062B2 (zh)
KR (1) KR101025526B1 (zh)
CN (1) CN101714112B (zh)
TW (1) TWI420312B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123232A (zh) * 2013-04-25 2014-10-29 宏碁股份有限公司 电脑系统及控制方法
CN111459572A (zh) * 2020-03-31 2020-07-28 深圳市汇顶科技股份有限公司 程序加载方法、控制器、芯片以及电子设备

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7895483B2 (en) * 2007-05-25 2011-02-22 International Business Machines Corporation Software memory leak analysis using memory isolation
US8266454B2 (en) * 2009-04-15 2012-09-11 GM Global Technology Operations LLC Secure flash memory using error correcting code circuitry
US8683277B1 (en) * 2010-07-13 2014-03-25 Marvell International Ltd. Defect detection using pattern matching on detected data
WO2014118910A1 (ja) * 2013-01-30 2014-08-07 三菱電機株式会社 メモリ診断装置
JP2017122997A (ja) * 2016-01-06 2017-07-13 富士通株式会社 情報処理装置、演算処理装置の制御方法および演算処理装置の制御プログラム

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4873705A (en) * 1988-01-27 1989-10-10 John Fluke Mfg. Co., Inc. Method of and system for high-speed, high-accuracy functional testing of memories in microprocessor-based units
US4953165A (en) * 1988-06-06 1990-08-28 Southwestern Computer Technologies, Inc. Diagnostic system for personal computer
JPH02242439A (ja) * 1989-03-16 1990-09-26 Nec Corp プログラムロード制御方式
US5155844A (en) 1990-02-14 1992-10-13 International Business Machines Corporation Background memory test during system start up
JPH05298140A (ja) * 1992-04-20 1993-11-12 Shikoku Nippon Denki Software Kk 自己診断方式
JPH064413A (ja) 1992-06-18 1994-01-14 Fujitsu Ltd メモリテスト制御方法
TW272270B (zh) * 1992-08-28 1996-03-11 Compaq Computer Corp
JPH07191856A (ja) 1993-12-27 1995-07-28 Toshiba Corp 情報処理装置
US5539878A (en) * 1995-06-16 1996-07-23 Elonex Technologies, Inc. Parallel testing of CPU cache and instruction units
US6076142A (en) * 1996-03-15 2000-06-13 Ampex Corporation User configurable raid system with multiple data bus segments and removable electrical bridges
JP3017080B2 (ja) * 1996-03-27 2000-03-06 甲府日本電気株式会社 コンピュータシステム
US5793943A (en) * 1996-07-29 1998-08-11 Micron Electronics, Inc. System for a primary BIOS ROM recovery in a dual BIOS ROM computer system
JPH11144494A (ja) * 1997-11-12 1999-05-28 Nec Corp 半導体メモリ
TW463175B (en) 2000-03-01 2001-11-11 Winbond Electronics Corp Memory processing method and system
TWI240864B (en) * 2001-06-13 2005-10-01 Hitachi Ltd Memory device
JP2003288215A (ja) * 2002-03-28 2003-10-10 Mitsubishi Electric Corp 情報処理装置
US7418574B2 (en) * 2002-10-31 2008-08-26 Lockheed Martin Corporation Configuring a portion of a pipeline accelerator to generate pipeline date without a program instruction
JP4349837B2 (ja) * 2003-04-24 2009-10-21 富士通株式会社 情報処理システム
US7328380B2 (en) * 2003-09-11 2008-02-05 Hewlett-Packard Development Company, L.P. Memory scrubbing logic
JP4292977B2 (ja) * 2003-12-17 2009-07-08 富士通株式会社 メモリ試験機能付きコントローラ及びコンピュータ
US7266727B2 (en) * 2004-03-18 2007-09-04 International Business Machines Corporation Computer boot operation utilizing targeted boot diagnostics
KR100922409B1 (ko) * 2005-03-24 2009-10-16 후지쯔 가부시끼가이샤 정보 처리 장치 및 메모리 이상 감시 방법
US7478281B2 (en) * 2005-06-06 2009-01-13 Denniston William B System and methods for functional testing of embedded processor-based systems
JP4918824B2 (ja) * 2006-08-18 2012-04-18 富士通株式会社 メモリコントローラおよびメモリ制御方法
JP5509568B2 (ja) * 2008-10-03 2014-06-04 富士通株式会社 コンピュータ装置、プロセッサ診断方法、及びプロセッサ診断制御プログラム
TW201020779A (en) * 2008-11-18 2010-06-01 Inventec Corp System for auto-operating backup firmware and method thereof
US8046631B2 (en) * 2009-04-29 2011-10-25 Lsi Corporation Firmware recovery in a raid controller by using a dual firmware configuration

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123232A (zh) * 2013-04-25 2014-10-29 宏碁股份有限公司 电脑系统及控制方法
CN111459572A (zh) * 2020-03-31 2020-07-28 深圳市汇顶科技股份有限公司 程序加载方法、控制器、芯片以及电子设备

Also Published As

Publication number Publication date
EP2172941B1 (en) 2012-07-11
EP2172941A1 (en) 2010-04-07
TWI420312B (zh) 2013-12-21
US20100088558A1 (en) 2010-04-08
KR20100038137A (ko) 2010-04-13
US8510611B2 (en) 2013-08-13
JP5293062B2 (ja) 2013-09-18
TW201015324A (en) 2010-04-16
KR101025526B1 (ko) 2011-04-04
JP2010092125A (ja) 2010-04-22
CN101714112B (zh) 2013-05-01

Similar Documents

Publication Publication Date Title
CN101714112B (zh) 诊断计算机设备中的主存储器的系统及方法
CN101714111B (zh) 计算机设备和处理器诊断方法
US7831857B2 (en) Method and system for recovering from operating system crash or failure
US7613952B2 (en) Method for facilitating BIOS testing
CN109117327A (zh) 一种硬盘检测方法及装置
RU2601141C2 (ru) Система и способ для обеспечения диагностической информации о неисправностях
US9405315B2 (en) Delayed execution of program code on multiple processors
US6304983B1 (en) Checkpoint logging without checkpoint display device availability
CN101493772B (zh) 信息处理装置
CN101211294A (zh) 显示内存测试系统及方法
CN108681506B (zh) 一种压力测试方法及装置
US8090991B2 (en) Information processing apparatus, method, and computer program product for self-diagnosis for utilizing multiple diagnostic devices, each having exclusive access to a resource
JP2009205314A (ja) ソフトウエア検証支援システム、及び検証支援機能を有するコンピュータプログラム
CN114676060A (zh) 自动化测试虚拟机观察关键字执行前后宿主机器性能方法
CN113986757A (zh) 测试方法、装置、电子设备、存储介质和程序产品
CN117971626A (zh) 基于多进程协程模型的共享内存泄漏检测方法
CN113900843A (zh) 一种检测修复方法、装置、设备及可读存储介质
CN106815035A (zh) 检查计算机系统的方法
JP2007241839A (ja) ディジタル信号処理装置及び故障異常情報の保存方法
CN110609145A (zh) 一种样本分析仪及其故障维护方法及计算机存储介质
CN113094221A (zh) 故障注入方法、装置、计算机设备以及可读存储介质
CN114564344A (zh) 一种定位故障内存的方法、系统、bmc及服务器
JP2013025452A (ja) メモリ試験装置、メモリ試験方法およびメモリ試験プログラム
JPS6320644A (ja) 主記憶装置の診断方式
JPH03182948A (ja) 障害処理方法

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130501

Termination date: 20180901

CF01 Termination of patent right due to non-payment of annual fee