CN102971714A - 用于监控数据存储器的方法 - Google Patents
用于监控数据存储器的方法 Download PDFInfo
- Publication number
- CN102971714A CN102971714A CN201180034430XA CN201180034430A CN102971714A CN 102971714 A CN102971714 A CN 102971714A CN 201180034430X A CN201180034430X A CN 201180034430XA CN 201180034430 A CN201180034430 A CN 201180034430A CN 102971714 A CN102971714 A CN 102971714A
- Authority
- CN
- China
- Prior art keywords
- error
- data
- storage
- address
- carrier store
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
本发明描述一种用于监控数据存储器(10)的方法,其中借助于误差识别方法识别在数据存储器(10)的存储行(33)中所存储的有误差的数据字(24)和/或对其进行校正,其中将数据存储器(10)的地址(30)写到辅助存储器(14)中并且提供给校验程序(18),其中在所述地址下存储通过误差识别方法评估为有误差的数据字(24)。
Description
技术领域
本发明涉及用于监控数据存储器的方法,其中借助于误差识别方法识别在数据存储器中所存储的有误差的数据字和/或对其进行校正。
本发明还涉及用于执行该方法的校验程序、包含校验程序的存储介质和辅助存储器。
背景技术
现代微控制器需要处于几百千字节(例如对于静态数据存储器(RAM,“随机存取存储器”))或几兆字节(例如用于持久在所谓的FLASH存储器中存储程序)范围中的数据存储器。根据大的存储容量或其技术实现,数据误差是比较经常的或至少是可能的。原则上存在两种误差现象:第一是持久式误差,其中重复的写和读循环也不带来改善。第二在RAM存储器中例如由于α辐射可能出现单独的和在写读循环之后再次消失的数据误差。
为了改善数据安全性,因此经常使用误差安全的方法(ECC,“误差校正码”)。例如,一位误差(一比特误差)可以总是被校正,二位误差可以总是被识别,并且多位误差可以大多数(但是不是总是)被识别。但是ECC方法将具有多重误差的一些数据字必要时评估为具有位误差的与最初内容不同的数据字并且相应错误地对所述数据字进行校正。
将示例性ECC方法应用于随机地产生的数据字已经表明,该ECC方法例如将数据字序列的的百分之28评估为具有单误差的有效数据字,并且将数据字的剩余的百分之72(关于ECC方法的相应形成规定)评估为无效的。但是在安全性关键的应用情况下,通过国际规范的要求非常高。例如,规范ISO 26262,ASIL-D要求,这种随机产生的数据字的超过百分之99必须被识别为无效的。
根据现有技术的扩展的措施因此例如规定,提高添加给数据字的校验位(所谓的冗余位)的数量,以便即使在多位误差情况下也改善对数据误差的校正或识别。这花费数据存储器的存储元件的附加耗费并且相应地使所述存储元件昂贵。
此外,可以两阶段地实施ECC方法,其方式是相继地将所谓的内部编码(ECC)和外部编码(EDC,CRC)应用于数据字。可是这种方法也是耗费的和昂贵的。
发明内容
本发明建议通过以下方式改善前述方法,即将数据存储器的一个或多个地址写到辅助存储器中并且提供给校验程序,在所述地址下分别存储通过误差识别方法被评估为有误差的数据字。下面也可以将校正误差的方法(所谓的误差校正方法)理解为误差识别方法。
根据本发明的方法具有优点:可以特别良好地防止数据存储器的数据字免受误差和/或缺陷,而不必放大数据存储器或者不必使用多阶段误差识别方法。
本发明以以下想法为出发点,即当今的数据存储器可以存储非常大数量的数据字,其中对于暂时误差或持久缺陷的易受影响性在物理上同时有条件地升高。尤其是本发明考虑:暂时误差或持久缺陷在数据存储器中经常涉及仅单个或几个存储行或者其中所存储的数据字。因此,只要用于改善数据安全性的预防措施要求与数据存储器的大小成比例的耗费,则表明这些预防措施是不合适的。
根据本发明,从而将数据存储器的在其下存储通过误差识别方法、也即例如ECC方法被评估为有误差的数据字的这样的地址写到辅助存储器中并且从而分开地来处理。从而可以将耗费总体上保持得比较小。在辅助存储器中所存储的信息有利地被提供给校验程序并且例如有规则地由校验程序检查。由此推导出用于提高数据存储器的数据安全性的措施,如进一步下面根据可能的实施例所描述的。
为了澄清概念,注意以下方面:数据存储器经由“地址”被操控,所述地址分别指向数据存储器的所谓存储行。数据存储器的每个存储行包括多个(物理)所谓存储单元,其中分别存储一位信息、也即单个数据位。在数据行中所存储的数据位的整体被称为数据字。在存储行或者存储单元中可能出现“误差”,所述误差或者是“暂时误差”或者是“持久缺陷”。辅助存储器在数量N个“地址寄存器”中存储地址,其中对于每个地址存储器存储另外的信息,所述另外的信息例如包括“占用位”。将“数据”理解为可以在数据存储器中所存储的任意信息。
根据一种有利的实施方式规定,误差识别方法基本上借助于分配给数据存储器的电子电路执行。这样的误差识别方法例如被实施为所谓的“误差校正编码(ECC)”。这可以有利地借助于电子电路来实施,通过所述电子电路给要写到数据存储器中的数据补充所谓的冗余位,所述冗余位在稍后读时一起被检测和分析,由此确定的误差或误差样式可以被识别和/或校正。由此可以必要时节省计算时间和降低成本。
该方法的扩展方案规定,仅这样的地址被写到辅助存储器中,所述地址的数据字通过误差识别方法被评估为有一位误差。一位误差以特殊的方式不仅表征暂时误差(也即暂时仅涉及单个写和读过程单独这样的误差)的出现,而且表征数据存储器的存储单元的持久缺陷。此外,对于一位误差可能的是,使用后置的系统措施,以便确保系统层面上的安全性和可靠性。
如果对于每个在辅助存储器中所存储的地址表明,该地址是否有效的,则使辅助存储器的管理简化。例如可以通过对于每个地址一起存储的“占用位”以简单的方式将从而包含“有效”地址的被占用地址寄存器与未被占用的、也即空的地址寄存器进行区别。从而可以特别有效地利用辅助存储器。在初始化时因此有利的是,这些占用位被设置为无效的。
此外规定,在识别有误差的数据字时通过误差识别方法首先对辅助存储器的有效地址接着进行检查:有误差的数据字的地址是否已经被存储。如果情况如此,则辅助存储器的内容不被改变。而如果有误差的数据字的地址未存储在该辅助存储器中,则进行到空的地址寄存器的存储,其中所属的占用位被设置。
尤其是,由该方法规定,通过校验程序接着检查其地址被存储在辅助存储器中的数据字:数据字是具有一位误差还是多位误差,和/或数据字的存储行是否具有缺陷,其对应于一位误差或多位误差,和/或数据字的数据行的误差是暂时地还是持久地出现,和/或存储行内的哪些存储单元分别被涉及。因此,数据字或存储行和其中所包含的存储单元特别可以彻底地被检查、分析和必要时被校正。对此的细节在下面的段落中根据本发明的实施例更详细地被描述。
尤其是可以规定,在所识别的暂时误差情况下,删除辅助存储器的地址寄存器中的所属地址或者使所属的占用位复位。此外可能的是,完全放弃对占用位的适用,而是完全用二进制零填充未被占用的地址寄存器。
如果校验程序在易失性存储器情况下执行与要期望的误差机制协调的写读测试,并且在非易失性存储器情况下借助于CRC编码的校验和执行误差测试,则可以根据数据存储器的结构类型有区别地应用该方法。例如,可以有利地借助于与分别要预期的误差模式匹配的写读测试在易失性存储器情况下在一位误差和多位误差之间进行区分。在非易失性存储器情况下这可以借助于CRC校验和方法(循环冗余校验)、也即通过在较大的数据块上的循环冗余校验来进行。
本发明的优选扩展方案规定,在第一可正确地校正的误差、第二错误地校正的或错误地识别的多位误差和/或第三暂时误差或持久缺陷之间进行区分。尤其是这根据本发明优选地通过计算机辅助进程、也即基于软件来进行。在任何情况下均将“可正确校正的误差”以通常的ECC大小为出发点理解为一位误差。但是根据所使用的技术手段也可以将其理解为多位误差。对于这些区分因此不需要电子电路的附加耗费,其中该方法可以灵活地工作并且可以单独地被匹配。
补充地规定,对于允许数量的一位误差和/或多位误差和/或一位缺陷和/或多位缺陷预先给定边界值,并且在超过至少一个边界值时,进行存储器管理装置的反应。由此可以使该方法简单地匹配于相应的要求,例如关于一方面数据安全性和另一方面数据存储器的可用性。例如已经在一位缺陷和/或各个多位误差或多位缺陷(其中多位误差或多位缺陷必要时不被校正)情况下就可以进行存储器管理装置的反应,这在下面更详细地予以描述。
如果存储器管理装置的反应包括以下措施中的至少一个,则该方法是特别有用的:
-去活有缺陷的存储行和/或指派备用存储行;
-去活有缺陷的存储行区域和/或指派备用存储行区域;
-产生消息、警报和/或误差位;
-将数据存储器和/或处于数据存储器上级的系统转变成被评估为安全的状态。
因此,可以去活单个或多个被识别为有缺陷的存储行并且指派备用存储行或者甚至备用存储行区域。为此预先知道适当的方法。此外也可以产生消息或警报,这例如在安全性敏感的系统中、如例如在机动车中具有意义。需要地也可以将数据存储器或者上级系统或子系统转变成适当的和被评估为安全的状态。
与校验程序的功能无关地,替换地或补充地可以借助于辅助存储器的溢出信号使数据存储器和/或上级系统转变成被评估为安全的状态。
根据本发明,此外规定,辅助存储器的内容在关断数据存储器或处于数据存储器上级的系统之前可以在非易失性存储器中被保护并且在接通之后可以再次从中被重构。从而,过去的运行的误差历史保持并且可以在随后接通之后有利地再次被使用,例如用于快速识别并且消除或者回避特别经常地定位的误差或缺陷。
对该方法的补充在于,对暂时误差和/或持久缺陷进行计数和/或在统计上进行评估。从而,校验程序可以执行扩展的和对于数据存储器的可用性评价进行补充的运算,用于误差识别的传统电路不能用于所述运算。
对此补充地规定,将计数和/或统计评估的结果传送给数据存储器或上级系统的制造商。该传送可以借助于远程起作用的诊断系统(如其在技术上至少处于准备中)进行并且例如将关于可能的开始的问题的早期信息传送给机动车的制造商和/或数据存储器的制造商。
如果在接通之后和/或在数据存储器的运行期间执行功能测试并且如果由此将数据存储器的地址存储在辅助存储器中,所述地址指向在功能测试期间按照方法被评估为有误差的存储行,则该方法较高效地工作。功能测试在易失性存储器情况下优选地被构造为写读测试并且在易失性存储器情况下被构造为只读测试。从而可以通过该方法有利地补充可能存在的进程,其中根据本发明产生附加的信息,所述附加的信息可以被用于评价数据存储器中的数据安全性。
此外,结合写读测试规定,在其地址被存储在辅助存储器中的那些存储行上构成第一校验和,存储第一校验和,在数据存储器的进一步运行中有规则地在其地址被存储在辅助存储器中的那些存储行上构成至少一个另外的校验和,并且将至少一个另外的校验和与第一校验和比较。
根据优选的实施方式,用于构成第一校验和所使用的地址附加地被保护。这些附加地被保护的地址可以接着被用于构成至少一个另外的校验和。从而实现,另外的校验和可以与辅助存储器的当前内容无关地被构成。
由此有利地可能的是,作为不可变的或可变的已知的各个存储行或存储行区域经受有规则的测试:在数据存储器的运行开始和一定的运行时间之后并且借助于执行本发明方法和必要时写读测试,在辅助存储器中存在被评估为有一位误差或一位缺陷的存储行的地址。这样的一位误差或一位缺陷被假设为通过误差识别装置可校正的。根据误差识别装置的相应实施方式必要时可以以相同的方式对待可能可校正的多位误差或多位缺陷。于是通过在辅助存储器中所存储的地址的数据字(其借助于误差识别装置正确地被校正)例如按照CRC方法构成校验和并且进行存储。在此受保护的存储也可以是有意义的,例如借助于双重存储。补充地可以设想,也附加地存储辅助寄存器的地址。接着这样进行循环的或有规则地运行的校验,使得通过在辅助存储器中所存在的地址(或者通过先前附加地存储的地址)构成校验和并且与在运行开始之后构成的和存储的校验和比较。如果比较未得出一致,则可以进行测量误差严重性的反应。该方式的优点在于,校验持续比较短的时间并且从而即使在数据存储器或上级系统的正常运行期间也可以进行。只要在校验期间在此期间识别到了其他有误差的存储行或存储行区域,则可以有意义的是,相应地适配所述的循环的或有规则地进行的校验。
在此可以有用的是,将写读测试划分到存储行区域上并且使不同的存储行区域彼此无关地经受写读测试。从而可能的是,即使在数据存储器的主动运行期间也实施写读测试和对地址和数据字的基于此所建立的根据本发明的处理。必要时为此对于所给定的存储区域必要的是,首先创建内容的备份副本,然后在该区域上执行写读测试并且然后将备份副本再次复制回到所述区域中。
补充地规定,误差识别方法或实施误差识别方法的电子电路在接通数据存储器之后和/或在运行期间在其按规定的功能上被校验。通过这种方式可以确保,是本发明方法的基础的误差识别方法本身无误地工作。
本发明还涉及校验程序,所述校验程序能够在计算机上运行,并且所述校验程序被编程为使得所述校验程序可以实施本发明方法。“计算机”在此情况下被理解为包括至少一个程序存储器和对其进行访问的逻辑电路的所有类型的设备。也即例如计算机、PC、例如机动车的控制和/或调节装置、具有布尔逻辑电路的状态机、微处理器系统、微控制器、智能USB存储设备“通用串行总线”等等。
本发明此外涉及用于执行该方法的辅助存储器。该辅助存储器可以被实施为独立的单元或者可以集成在任意的现有存储系统或电子电路中。
下面在相继的简短表示中描述本发明的很多其他扩展方案。所述扩展方案可以单独地或者也可以以任意组合的方式对于本发明是重要的。
对于非常安全性关键的应用可以是措施:容忍暂时误差,但是已经由于各个持久一位缺陷而触发反应或者将数据存储器或上级系统转变成被评估为安全的状态。
对于相反以可用性为前景的应用,可以提议完全放弃对校验程序的使用并且将误差处理基本上限制于误差校正。
数据存储器中的暂时误差可以在其识别之后立即通过校验程序校正,或者替换地可以等待时间,在所述时间期间涉及的存储单元保持在观察下。
校验程序可以确定暂时误差出现的速率并且执行附加的校验和/或措施,如果该速率超过边界值的话。
在关断数据存储器之前,校验程序可以试图重新描述FLASH存储器的被评估为有误差的存储单元。
校验程序可以将数据存储器分成多个存储行区域并且对于安全性关键的数据内容使用无持久缺陷的这样的存储行区域。
校验程序可以将所识别的一位误差和/或一位缺陷分配给其相应的存储行区域,并且使被评估为安全性关键的有这样的误差的存储行区域经受特殊校验。
本发明的随后的可能的扩展方案基本上涉及结合写读测试对数据存储器的按方法的校验:
校验数据存储器的写读测试可以借助于特定的写读测试程序进行或者替换地和至少部分地通过电子电路进行。如果写读测试借助于程序辅助进程被执行,则已经可以通过执行测试触发地对具有有误差的存储行的地址的辅助存储器进行写。
在非易失性存储器、例如FLASH存储器或ROM存储器“只读存储器”的只读测试时,校验和可以在整个数据存储器上或者在各个存储行区域上被构成。附加地,误差识别装置可以被激活,其中可以校验:误差中的哪些可以通过误差识别装置校正。此外可以通过本发明方法将与误差有关的存储行的地址写到辅助存储器中并且提供给校验程序。替换地也可以在去活的误差识别装置情况下对非易失性数据存储器进行读并且将结果用于比较。
补充地可以设想如此执行写读测试或只读测试,使得一次在有误差识别的作用情况下和一次在无误差识别的作用情况下访问存储行的每个存储单元,并且然后分别比较两个结果。为了识别冗余位中的可能误差,补充地可以重新计算数据字和所属的冗余位,并且然后将新计算的冗余位与在存储行中先前存储的冗余位进行比较。
写读测试的目的可以是用所有被评估为有误差的存储行的地址填充辅助存储器。随后可以在所识别的和/或所校正的、在存储行中出现的误差情况下(其地址迄今不存在于辅助存储器中)推断出新式误差并且进行适当的措施。这必要时可以通过上级系统的所谓中断“Interrupt”来引入,其中例如当在数据存储器的正常运行中置位辅助存储器的占用位时,产生中断。
本发明的随后的可能扩展方案基本上涉及结合在其高效能性上对误差识别装置的校验对数据存储器的按方法的校验:
只要在其高效能性上对误差识别装置进行校验,例如在接通数据存储器或上级系统之后,则在数据存储器或上级系统的一般自测试期间可以有利地一起校验对误差识别装置进行校验的逻辑电路、也即电子电路。由此还可以使误差识别装置的校验更安全。只要在技术上能够实现相应的实施方式,则误差识别装置和/或对误差识别装置进行校验的逻辑电路不仅在运行开始时、而且在数据存储器的正常运行期间以可比的方式被校验。替换于校验逻辑电路也可以借助于特定的程序部件来进行误差识别装置的校验。可选地,也可以只有当辅助存储器不为空时才在正常运行中进行校验。
补充地,可以校验误差识别装置,其方式是,从数据存储器中读出一个或多个故意地有误差地被写的或者已知是有误差的数据字并且据此校验和/或评估误差识别装置的校正特性。
在非在运行中可写的存储器情况下可以在预先确定的地址处写入故意地有误差的数据字,更确切地说,不仅一位误差而且多位误差。因此误差识别装置的高效能性可以通过访问这些地址被校验。在此可以有意义的是,从数据存储器的只读测试中取出这些地址,以便避免辅助寄存器的溢出。在校验结束之后可以再次删除辅助寄存器中的预先确定的地址并且对所属的占用位进行复位。
在RAM存储器或数据存储器的其他在运行中可写的实施情况下,也可以借助于程序部分在运行期间产生故意地有误差的数据字,其方式是,在暂时去活的误差识别装置情况下,数据字和所属的冗余位分开地被产生和被写。因此,误差识别装置的校验被执行。在此可以有意义的是,将该校验限制于迄今未被评估为有误差的这样的存储行。同样可以有意义的是,在校验结束之后再次删除预先确定的地址以及所属的占用位或对其进行复位。
此外可能的是,只有当数据存储器具有已经识别的误差或持久缺陷时才执行误差识别装置的校验,并且在此仅使用被评估为有误差的存储行。
补充地可能的是,有规则地执行误差识别装置的校验,其中每次都使用另外的存储行区域,使得在重复校验时,可以基本上由校验检测整个数据存储器。
本发明的后续的可能扩展方案基本上涉及结合写读测试或只读测试对数据存储器的按方法的校验:
补充地可能的是,如此执行写读测试,使得选择最初的存储行区域(例如与确定的存储行物理或逻辑相邻),其在第一步骤中借助于复制到另外的空闲存储行区域中来保护。然后在第二步骤中,借助于写读测试校验最初的存储行区域。对于数据存储器的不可写的实施(例如FLASH存储器或ROM存储器),可以在存储行区域上构成校验和。接着可以将所保护的数据必要时再次写回到最初的存储行区域中。
与用于监控数据存储器的本发明方法一起执行这样的写读测试或只读测试能够实现:在确定的时间间隔内可以校验整个数据存储器并且从而在该时间间隔内在辅助存储器中也存在所有有误差的存储行的地址。
本发明的后续的可能扩展方案基本上涉及结合所谓的存储器选除对数据存储器的按方法的校验:
为此规定,不再或仅仅在例外情况下使用数据存储器的通过该方法在辅助存储器中所存储的地址。为此建议三种可能性:
(A)使用所谓的“存储器管理单元”,MMU,其在功能上对应于进一步在上面所述的存储管理装置或者属于该存储管理装置。在此,在运行开始时进行的写读测试或只读测试启动中被评估为有误差的并且被存储在辅助存储器中的那些地址被通知给存储器管理装置或MMU。由此可以通过简单的方式禁止这些物理地址用于进一步使用。
(B)按电路分离所涉及的区域:
已知的是,借助于分离点、(集成)保险装置或开关有针对性地选除数据存储器的各个存储行和/或存储行区域。本发明方法可以与这样的选除有意义地组合,与先前在段落(A)中所述的类似。在辅助存储器中所存储的地址因此可以被使用用于选除。这可以例如在运行期间、在特定化的运行时间期间或者手动地在车间中进行。
(C)程序技术措施、所谓的“学习软件”:
在指派存储行或存储行区域、即“存储器分配”时,不再使用在辅助存储器中所存储的这样的地址。
本发明的后续的可能扩展方案基本上涉及结合误差存储器对数据存储器的按方法的校验:
在关断数据存储器或上级系统(其例如可以布置在机动车中)之前,可以在误差存储器中进行关于辅助存储器的内容的录入。因此可以记录,哪些地址或存储行被识别为有误差的。因此尤其是可以保护对于车间诊断重要的信息。
附图说明
本发明的任务也通过根据并列权利要求的校验程序和存储介质来解决。有利的改进方案在从属权利要求中说明。本发明的其他特征在对示例性实施方式的后续描述中和在附图中来说明,其中特征可以不仅单独地而且以不同组合的方式对于本发明是重要的,而对此不再次明确指出。在附图中:
图1示出具有用于误差识别的电路和辅助存储器的数据存储器的框图;和
图2示出具有根据实施例的本发明方法的方法步骤的流程图。
具体实施方式
图1示出具有误差识别装置12和连接在误差识别装置12上的辅助存储器14的数据存储器10。在图1的附图中,垂直虚线16将根据现有技术预先已知的部分(左边)与根据本发明的附加电子电路(右边)区分开。同样在附图的右边部分中示出校验程序18,其尤其是可以对辅助存储器14进行读和写访问并且处理其信息。这通过双箭头20象征性地示出。按照需要,校验程序18也可以访问在数据存储器10和误差识别装置12的环境中存在的其余信息。非易失性存储器19经由双向数据连接21连接到辅助存储器14上。
总之,图1的示意图不仅示出基于电路的元件(“硬件”)而且示出计算机辅助进程(“软件”)。误差识别装置12(ECC,“误差校正编码”)当前被实施为电子电路。此外,在图1中所示的元件可以被划分成多个电子器件或者总地共同地被安置的仅仅一个元件上(“单芯片解决方案”)。
数据存储器10双向地与误差识别装置12连接。内部数据路径22引导在数据存储器10中要存储的或所存储的数据字24,所述数据字在误差识别装置12中被补充有所属的冗余位26。数据字24分别包括任意、但是固定数量的多个位。外部数据路径28将不具有冗余位26的数据字24输送给存储器管理装置29。同样,地址30被输送给数据存储器10用于由存储器管理装置29管理其中所存储的数据。在此,每个地址30均指向数据存储器10的所属的存储行33,也即存储行33包括每个至少对应于数据字24的长度加上相应所属的冗余位26的数量的位的存储单元35。
存储器管理装置29也可以与校验程序18交换信息并且可以被实施为电子电路和/或被实施为计算机辅助进程。但是这当前不予以更详细的阐述。双向箭头31建立到未示出的上级系统的连接。上级系统例如是机动车的控制和/或调节装置、计算机(PC)、微控制器、大容量数据存储器等。但是这在图1中未示出。
如果多位误差被识别和/或校正,则误差识别装置12的第一输出端32输出信息。如果单位误差被识别和/或被校正,则第二输出端34输出信息并且将所述信息尤其是以地址30为形式输送给辅助存储器14。如果总数量N个地址寄存器36用有效地址30填充并且从而所有所属的占用位38也被置位,则产生溢出信号37。标记39表明,新的地址30当前被写到了辅助存储器14中。标记39例如可以被使用用于触发称为中断的暂时程序中断。
辅助存储器14保护数量N个地址寄存器36,所述地址寄存器与分别所属的占用位38一起被存储。在该附图中最上面的地址寄存器36和最下面的占用位38代替地用其附图标记表示。在此数量N说明在辅助存储器14中可存储的最高录入数量。
如果误差识别装置12识别和校正一位误差,则将所涉及的数据字24的地址30与所有在辅助存储器14中所存储的有效地址30进行比较。如果所属的占用位38被置位,也即例如具有二进制值“1”,则辅助存储器14中的地址30是“有效的”。只要该地址30已经被存储在辅助存储器14中,则不进行其他反应。而如果地址30还没有被存储在辅助存储器14中,则该地址在辅助存储器14中被存储在空的地址寄存器36中。空的(也即非“有效的”)地址寄存器36可以根据所属的占用位38未被置位、也即例如具有二进制值“0”来识别。当在地址寄存器36中存储了地址30之后,其所属的占用位38被置位。
在可预先给定的时间区间内或在要确定的时刻,有规则地执行校验程序18。该过程当前通过存储器管理装置29触发。对于每个在辅助存储器14中所存储的有效地址30,校验程序18检查:通过相应的地址30表示的数据字24是否实际上仅具有一个单个有误差的位。但是如果在一个数据字24中一个多位误差或多位缺陷和/或在多个数据字24中多个一个位误差或一位缺陷通过校验程序18被发现,则可以进行分别可预先给定的反应。这些反应可以包括:
-去活有缺陷的存储行33和/或指派备用存储行33;
-去活有缺陷的存储行区域和/或指派备用存储行区域;
-产生消息、警报和/或误差位;
-将数据存储器10和/或处于数据存储器10上级的系统转变成被评估为安全的状态。
替换地或补充地,与校验程序18的功能无关地可以借助于辅助存储器14的溢出信号37将数据存储器10和/或上级系统转变成被评估为安全的状态,因为可以设想,数据存储器10总地不再足够可靠地工作并且从而不能用。
在一位误差和多位误差之间的区分可以在易失性存储器(RAM)情况下借助于匹配于分别要预期的误差模式的写读测试进行,所述写读测试例如在运行开始时或在数据存储器10的正常运行期间被执行。在非易失性存储器(FLASH)情况下这可以借助于CRC校验和方法(“Cyclic Redundancy Check”,循环冗余校验)进行。
只要数据存储器10被实施为易失性存储器,则校验程序18附加地检查:误差或误差模式是否持续地存在于数据存储器10的相应的存储行33中(“缺陷”),或者误差或误差模式是否仅暂时出现。在后者情况下,所属的地址寄存器36被清空,其方式是,其占用位38被复位。此外,校验程序18可以校验,是否存在正确地校正的一位误差或一位缺陷或者错误地识别的或错误地校正的多位误差或多位缺陷。此外,校验程序18可以必要时校正数据字24的所识别的误差并且同样执行误差计数或提供误差统计。
此外可能的是,使(多个)反应的触发与可预先给定的条件和可预先给定的边界值有关。例如,可以预先给定最小数量的可能的一位缺陷,自所述最小数量起触发与误差的含义对应的反应。
非易失性存储器19经由双向数据连接21连接到辅助存储器14上并且具有以下任务:在关断数据存储器10或上级系统之前保护辅助存储器14的内容并且在接通之后再次在辅助存储器14中重构。
图2以流程图示出本发明方法的可能实施方式的例如借助于计算机程序可执行的方法步骤。对于通过计算机或通过控制设备执行替换地或补充地,逻辑电路可以参与。
进程在开始块50中开始。在询问块52中校验,一位误差当前是否由误差识别装置12识别和/或校正。如果不符合,则分支到询问块54。
如果一位误差当前由误差识别装置12识别和/或校正,则在块56中检测数据存储器10的属于一位误差的地址30。在询问块58中校验,该地址30是否已经存在于辅助存储器14中。如果符合,则在图2所基于的实施例情况下不进行进一步反应并且分支回询问块52。
但是如果地址30还未在辅助存储器14中存在,则分支到块60。在那里,将该地址30写到辅助存储器14的空地址寄存器36中并且置位所属的占用位38。在需要时在此可以对其余的在辅助存储器14中存在的地址30进行移位和/或分类。然后在询问块54中继续该方法。
在询问块54中校验,是否存在条件来开始校验程序18。如果不符合,则分支回块52。如果符合,则在块62中开始校验程序18。接着分支回询问块52并且继续该进程。
可以理解,在图2中所示的进程仅仅是示例性的。其他实施方式尤其是包括在从属权利要求中所述的扩展方案。另外可以规定,该进程由上级系统开始、停止或中止。但是这在途2中未更详细地示出。
Claims (22)
1.用于监控数据存储器(10)的方法,其中借助于误差识别方法识别在数据存储器(10)的存储行(33)中所存储的有误差的数据字(24)和/或对其进行校正,其特征在于,将数据存储器(10)的地址(30)写到辅助存储器(14)中并且提供给校验程序(18),其中在所述地址下存储有通过误差识别方法被评估为有误差的数据字(24)。
2.根据权利要求1所述的方法,其特征在于,所述误差识别方法基本上借助于分配给数据存储器(10)的电子电路执行。
3.根据权利要求1或2所述的方法,其特征在于,仅这样的地址(30)被写到辅助存储器(14)中,所述地址的数据字(24)通过误差识别方法被评估为可校正的。
4.根据前述权利要求至少之一的方法,其特征在于,对于每个在辅助存储器(14)中所存储的地址(30)表明,该地址(30)是否是有效的。
5.根据前述权利要求至少之一的方法,其特征在于,在识别出有误差的数据字(24)时通过误差识别方法首先在如下方面对有效地址(30)进行检查:所述有误差的数据字(24)的地址(30)是否已经被存储。
6.根据前述权利要求至少之一的方法,其特征在于,通过校验程序(18)在如下方面检查其地址(30)被存储在辅助存储器(14)中的数据字(24):该数据字(24)是具有一位误差还是多位误差,和/或该数据字(24)的存储行(33)是否具有缺陷,所述缺陷对应于一位误差或多位误差,和/或该数据字(24)的数据行(33)的误差是暂时地还是持久地出现,和/或所述存储行(33)内的哪些存储单元(35)分别被涉及。
7.根据前述权利要求至少之一的方法,其特征在于,所述校验程序(18)在易失性存储器“RAM”情况下执行与要期望的误差机制协调的写读测试。
8.根据前述权利要求至少之一的方法,其特征在于,所述校验程序(18)在非易失性存储器情况下借助于CRC编码的校验和执行误差测试。
9.根据前述权利要求至少之一的方法,其特征在于,在第一可正确地校正的误差、第二错误地校正的或错误地识别的多位误差和/或第三暂时误差或持久缺陷之间进行区分。
10.根据前述权利要求至少之一的方法,其特征在于,对于允许数量的一位误差和/或多位误差和/或一位缺陷和/或多位缺陷预先给定边界值,并且在超过至少一个边界值时,进行存储器管理装置的反应。
11.根据权利要求10所述的方法,其特征在于,存储器管理装置的反应包括以下措施中的至少一个:
-去活有缺陷的存储行(33)和/或指派备用存储行;
-去活有缺陷的存储行区域和/或指派备用存储行区域;
-产生消息、警报和/或误差位;
-将数据存储器(10)和/或处于数据存储器(10)上级的系统转变成被评估为安全的状态。
12.根据前述权利要求至少之一的方法,其特征在于,所述辅助存储器(14)的内容在关断数据存储器(10)或处于数据存储器(10)上级的系统之前在非易失性存储器(19)中被保护并且在接通之后从中再次被重构。
13.根据前述权利要求至少之一的方法,其特征在于,由校验程序(18)对数据字(24)的所识别的误差进行校正。
14.根据前述权利要求至少之一的方法,其特征在于,对暂时误差和/或持久缺陷进行计数和/或在统计上进行评估。
15.根据权利要求14所述的方法,其特征在于,将计数和/或统计评估的结果传送给数据存储器(10)或上级系统的制造商。
16.根据前述权利要求至少之一的方法,其特征在于,在接通之后和/或在数据存储器(10)的运行期间执行数据存储器的功能测试,并且将数据存储器(10)的地址(30)写到辅助存储器(14)中,其中所述地址指引向在功能测试期间被评估为有误差的存储行(33)。
17.根据权利要求16所述的方法,其特征在于,在其地址(30)被存储在辅助存储器(14)中的存储行(33)上构成第一校验和,并且存储第一校验和,其中优选地对用于形成第一校验和所使用的地址(30)附加地进行保护,并且在数据存储器(10)的进一步运行中有规则地在其地址(30)被存储在辅助存储器(14)中或其地址(30)被附加地保护的存储行(33)上构成至少一个另外的校验和,并且将所述至少一个另外的校验和与第一校验和比较。
18.根据前述权利要求至少之一的方法,其特征在于,将功能测试划分到存储行区域上并且使不同的存储行区域彼此无关地经受功能测试。
19.根据前述权利要求至少之一的方法,其特征在于,所述误差识别方法或实施误差识别方法的电子电路在接通数据存储器(10)和/或在运行期间在其按规定的功能上被校验。
20.校验程序(18),其能在计算机上运行,其特征在于,所述校验程序被编程用于执行根据权利要求1至19之一所述的方法。
21.用于计算机的存储介质,其特征在于,在所述存储介质上存储用于应用在根据权利要求1至19之一所述的方法中的校验程序(18)。
22.计算机中的辅助存储器(14),其特征在于,所述辅助存储器(14)包括接口,用于存储数据存储器(10)的地址(30)和/或数据字(24)和/或关于其分类的信息并且提供给校验程序(18),并且辅助存储器在执行根据前述权利要求1至19至少之一所述的方法时被使用。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102010031282.7A DE102010031282B4 (de) | 2010-07-13 | 2010-07-13 | Verfahren zum Überwachen eines Datenspeichers |
DE102010031282.7 | 2010-07-13 | ||
PCT/EP2011/060700 WO2012007266A1 (de) | 2010-07-13 | 2011-06-27 | Verfahren zum überwachen eines datenspeichers |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102971714A true CN102971714A (zh) | 2013-03-13 |
CN102971714B CN102971714B (zh) | 2017-05-17 |
Family
ID=44351630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180034430.XA Active CN102971714B (zh) | 2010-07-13 | 2011-06-27 | 用于监控数据存储器的方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9170875B2 (zh) |
KR (1) | KR101805234B1 (zh) |
CN (1) | CN102971714B (zh) |
DE (1) | DE102010031282B4 (zh) |
WO (1) | WO2012007266A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106128493A (zh) * | 2016-08-01 | 2016-11-16 | 四川新环佳科技发展有限公司 | 一种可移动大容量的存储器 |
CN107430539A (zh) * | 2015-03-11 | 2017-12-01 | 西门子公司 | 安全相关的计算机系统 |
CN107544749A (zh) * | 2016-06-24 | 2018-01-05 | 慧荣科技股份有限公司 | 数据储存媒体的损坏数据行的筛选方法 |
CN108205306A (zh) * | 2016-12-16 | 2018-06-26 | 罗伯特·博世有限公司 | 用于对控制器进行校准的方法和装置 |
CN110651485A (zh) * | 2017-05-31 | 2020-01-03 | 唯听助听器公司 | 操作助听器装配系统的方法和助听器装配系统 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013202865A1 (de) | 2013-02-21 | 2014-08-21 | Robert Bosch Gmbh | Verfahren zum Überwachen eines Datenspeichers |
US9715424B1 (en) * | 2013-08-23 | 2017-07-25 | Rambus Inc. | Memory device and repair method with column-based error code tracking |
US9825884B2 (en) | 2013-12-30 | 2017-11-21 | Cavium, Inc. | Protocol independent programmable switch (PIPS) software defined data center networks |
US10656992B2 (en) * | 2014-10-22 | 2020-05-19 | Cavium International | Apparatus and a method of detecting errors on registers |
DE102015004580A1 (de) * | 2015-04-14 | 2016-10-20 | Airbus Defence and Space GmbH | Übertragungsverfahren und Vorrichtungen zur Übertragung |
US9990245B2 (en) * | 2015-11-25 | 2018-06-05 | Stmicroelectronics S.R.L. | Electronic device having fault monitoring for a memory and associated methods |
DE202017104362U1 (de) * | 2017-07-21 | 2017-08-07 | Robert Bosch Gmbh | Zeitstempeleinheit und Kommunikationssteuereinheit für eine Teilnehmerstation eines Kommunikationsnetzwerks |
FR3083888B1 (fr) * | 2018-07-10 | 2020-06-19 | Continental Automotive France | Procede de surveillance de la corruption des donnees dans au moins une memoire non volatile d'un calculateur |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5511164A (en) * | 1995-03-01 | 1996-04-23 | Unisys Corporation | Method and apparatus for determining the source and nature of an error within a computer system |
CN1250213A (zh) * | 1998-10-02 | 2000-04-12 | 松下电器产业株式会社 | 用盘片记录和再现信息的方法与设备 |
US20020016942A1 (en) * | 2000-01-26 | 2002-02-07 | Maclaren John M. | Hard/soft error detection |
US20020104045A1 (en) * | 2001-01-26 | 2002-08-01 | Cooper Stephen Ray | System and method for identifying memory modules having a failing or defective address |
US20060282755A1 (en) * | 2005-05-31 | 2006-12-14 | Jong-Hoon Oh | Random access memory having ECC |
GB2428499A (en) * | 2005-07-21 | 2007-01-31 | Hewlett Packard Development Co | Persistent error detection in digital memory |
US20080133994A1 (en) * | 2006-12-05 | 2008-06-05 | Jong-Hoon Oh | Error correction in memory devices |
CN101211286A (zh) * | 2006-12-28 | 2008-07-02 | 三菱电机株式会社 | 电子控制装置 |
US20080301530A1 (en) * | 2007-06-01 | 2008-12-04 | Carol Spanel | Apparatus and method for distinguishing temporary and permanent errors in memory modules |
US20090070630A1 (en) * | 2007-09-12 | 2009-03-12 | Dell Products, Lp | System and method of identifying and storing memory error locations |
US20090198881A1 (en) * | 2008-01-31 | 2009-08-06 | Kabushiki Kaisha Toshiba | Memory system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5363460B2 (ja) * | 2008-07-30 | 2013-12-11 | パナソニック株式会社 | 誤り訂正機能付きコントローラ、誤り訂正機能付き記憶装置、及び誤り訂正機能付きシステム |
-
2010
- 2010-07-13 DE DE102010031282.7A patent/DE102010031282B4/de active Active
-
2011
- 2011-06-27 CN CN201180034430.XA patent/CN102971714B/zh active Active
- 2011-06-27 KR KR1020137000864A patent/KR101805234B1/ko active IP Right Grant
- 2011-06-27 WO PCT/EP2011/060700 patent/WO2012007266A1/de active Application Filing
- 2011-06-27 US US13/809,764 patent/US9170875B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5511164A (en) * | 1995-03-01 | 1996-04-23 | Unisys Corporation | Method and apparatus for determining the source and nature of an error within a computer system |
CN1250213A (zh) * | 1998-10-02 | 2000-04-12 | 松下电器产业株式会社 | 用盘片记录和再现信息的方法与设备 |
US20020016942A1 (en) * | 2000-01-26 | 2002-02-07 | Maclaren John M. | Hard/soft error detection |
US20020104045A1 (en) * | 2001-01-26 | 2002-08-01 | Cooper Stephen Ray | System and method for identifying memory modules having a failing or defective address |
US20060282755A1 (en) * | 2005-05-31 | 2006-12-14 | Jong-Hoon Oh | Random access memory having ECC |
GB2428499A (en) * | 2005-07-21 | 2007-01-31 | Hewlett Packard Development Co | Persistent error detection in digital memory |
US20080133994A1 (en) * | 2006-12-05 | 2008-06-05 | Jong-Hoon Oh | Error correction in memory devices |
CN101211286A (zh) * | 2006-12-28 | 2008-07-02 | 三菱电机株式会社 | 电子控制装置 |
US20080301530A1 (en) * | 2007-06-01 | 2008-12-04 | Carol Spanel | Apparatus and method for distinguishing temporary and permanent errors in memory modules |
US20090070630A1 (en) * | 2007-09-12 | 2009-03-12 | Dell Products, Lp | System and method of identifying and storing memory error locations |
US20090198881A1 (en) * | 2008-01-31 | 2009-08-06 | Kabushiki Kaisha Toshiba | Memory system |
Non-Patent Citations (2)
Title |
---|
王保成: "《计算机组装与维护》", 31 August 2009 * |
蒋本珊: "《计算机组织与结构》", 31 March 2002 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107430539A (zh) * | 2015-03-11 | 2017-12-01 | 西门子公司 | 安全相关的计算机系统 |
CN107430539B (zh) * | 2015-03-11 | 2020-09-25 | 西门子交通有限公司 | 安全相关的计算机系统 |
CN107544749A (zh) * | 2016-06-24 | 2018-01-05 | 慧荣科技股份有限公司 | 数据储存媒体的损坏数据行的筛选方法 |
CN107544749B (zh) * | 2016-06-24 | 2020-02-18 | 慧荣科技股份有限公司 | 数据储存媒体的损坏数据行的筛选方法 |
CN106128493A (zh) * | 2016-08-01 | 2016-11-16 | 四川新环佳科技发展有限公司 | 一种可移动大容量的存储器 |
CN106128493B (zh) * | 2016-08-01 | 2018-04-20 | 四川新环佳科技发展有限公司 | 一种可移动大容量的存储器 |
CN108205306A (zh) * | 2016-12-16 | 2018-06-26 | 罗伯特·博世有限公司 | 用于对控制器进行校准的方法和装置 |
CN110651485A (zh) * | 2017-05-31 | 2020-01-03 | 唯听助听器公司 | 操作助听器装配系统的方法和助听器装配系统 |
CN110651485B (zh) * | 2017-05-31 | 2021-05-28 | 唯听助听器公司 | 操作助听器装配系统的方法和助听器装配系统 |
Also Published As
Publication number | Publication date |
---|---|
DE102010031282B4 (de) | 2022-05-12 |
US20130191701A1 (en) | 2013-07-25 |
WO2012007266A1 (de) | 2012-01-19 |
CN102971714B (zh) | 2017-05-17 |
US9170875B2 (en) | 2015-10-27 |
KR20130031888A (ko) | 2013-03-29 |
DE102010031282A1 (de) | 2012-01-19 |
KR101805234B1 (ko) | 2018-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102971714A (zh) | 用于监控数据存储器的方法 | |
US9501235B2 (en) | Efficient reduction of read disturb errors | |
US8255773B2 (en) | System and method of tracking error data within a storage device | |
US5410545A (en) | Long-term storage of controller performance | |
EP2529305B1 (en) | System and method to correct data errors using a stored count of bit values | |
EP2095234B1 (en) | Memory system with ecc-unit and further processing arrangement | |
CN101359513A (zh) | 地址译码器故障的检测 | |
CN103140841A (zh) | 保护存储器的部分的方法和装置 | |
EP3483732B1 (en) | Redundant storage of error correction code (ecc) checkbits for validating proper operation of a static random access memory (sram) | |
JP6080180B2 (ja) | 不揮発性メモリでのマーカプログラミング | |
WO2017131700A1 (en) | Row repair of corrected memory address | |
US6636991B1 (en) | Flexible method for satisfying complex system error handling requirements via error promotion/demotion | |
CN112700815A (zh) | 管理针对临时操作条件的块引退 | |
CN111459708B (zh) | 坏块处理方法及装置 | |
CN105740161A (zh) | 数据储存装置以及快闪存储器控制方法 | |
CN101253485A (zh) | 存储装置及其运行方法 | |
US7891556B2 (en) | Memory access controller and method for memory access control | |
US11231990B2 (en) | Device and method for generating error correction information | |
US7831889B2 (en) | Method and device for error detection for a cache memory and corresponding cache memory | |
CN117271134A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |