用于识别至少一个存储器元件中的错误数据的方法和装置的制造方法
【专利摘要】用于识别在至少一个存储元件(38)中的、尤其是寄存器(2、42)中的有错误的数据的方法,所述存储元件包括至少一个双稳态的触发器,所述方法允许可靠地发现软错误。为此,在写入数据到所述至少一个存储元件(38)中时,从这些数据中产生至少一个写入安全比特并且存储在配属的安全存储元件(46)中,其中,以与在写入时相同的方式从所述数据中连续地被计算出至少一个输出安全比特并且与对应的写入安全比特进行比较。
【专利说明】
用于识别至少一个存储器元件中的错误数据的方法和装置
技术领域
[0001]本发明涉及用于识别至少一个存储器元件中的、尤其是寄存器中的错误的数据的装置和方法,所述存储器元件包括至少一个双稳态的触发器(flipflops)。本发明此外涉及用于执行这样的方法的装置以及具有这样的装置的集成的电路。
【背景技术】
[0002]寄存器的特别之处是,其数据输出端始终(并且不是如例如在RAM中那样仅仅在寻址之后)示出被存储的数据并且常常不仅仅被用于存储,而是还确定硬件的功能,例如定时器的波特率、通讯协议等。
[0003]如下的错误被称作为“SoftErrors”或者“软错误”,其不通过物理性损坏引起,而是通过由外部影响原因造成的双稳态的部件的状态改变引起。双稳态的部件例如是Fl ipflops或者说触发器,其能够采用并且也能够保持两个不同的状态。
[0004]软错误一般通过高能量的粒子、以及例如宇宙的辐射的部分或者壳体材料中放射性掺杂物引起,其侵入到半导体中并且在那儿进行翻转,这称作为单事件干扰或者说“单粒子翻转(Single Event Upset)”(SEU)。在此通常受到影响的是RAM模块,但还有触发器。已知的应对措施是对RAM中的数据的错误识别的和/或错误修正的编码、例如通过错误修正代码(ECC)0
[0005]对于触发器已知的是,执行多数决定作为保护的措施。在此,触发器被三倍地实施并且在不是所有的触发器都具有相同的状态的情况下,实施“3个中的两个”或者说三分之二的多数决定。此外,已知抗辐射的触发器,其虽然更少地受到干扰,但是为此也明显地比标准的触发器大。其它已知的方法利用周期性地读取(程序控制地)并且再写入关键的数据。同样已知的是利用CRC周期性地检查,其中每个比特例如被状态机周期性地串行检查并且合并到CRC总数的计算中。
[0006]触发器一般被应用作为很多类型的寄存器的基础结构,这些寄存器尤其在微控制器中、然而也在大多数其它的IC类型中用于存储数据。一个应用情况例如是存储用于模拟电路的修正数据或者存储用于匹配特别的任务的配置数据。
[0007]在存储变化数据的寄存器中出现以上提到的错误意味着,计算流和控制流中暂时的偏差,其在系统中常常能够被忽略。明显更严重的是数据在配置寄存器或者微调寄存器中的改变,因为在这样的寄存器中,被寄存的数据通常在系统接入后仅仅被写入一次。由SEU引起的错误而后可能一直保留至断开并且会导致严重的错误功能。
【发明内容】
[0008]因此本发明的目的是,提供一种用于发现并且控制在寄存器中的软错误的方法。此外要提供相应的装置和相应的集成的电路。
[0009]根据本发明,以上提到的目的参考以下的方法实现,即在写入数据到至少一个数据存储元件中时,由这些数据产生至少一个写入安全比特/写入安全位并且存储在配属的安全存储元件中并且其中以与在写入时相同的方式连续地从数据中计算出至少一个输出安全比特/输出安全位并且将其与对应的写入安全比特进行比较。
[0010]有利的设计方案是从属权利要求的主题。
[0011]本发明从以下构思出发:尤其是在当数据不是有规律地被写入、而更多的是尤其在运行开始时仅仅一次被寄存时,软错误的发现是重要的。虽然这些数据仅仅一次被写入,但是会包含重要的信息,例如对于进一步的运行重要的配置设定。数据中的错误应该在出现之后立即或者有短延时地被识别。多数决定器的执行(其中数据在一定程度上以冗余的方式写入到多个存储器模块中)需要大的芯片面积以及高的电流消耗。利用周期性的检查的方法消耗运算时间。对错误发现的延时要求越严格,运算时间就越高。
[0012]如现在已经识别出的那样,通过早在初始写入数据时产生或者说计算出表征数据的安全比特数目,能够可靠地并且节省资源地发现软错误。这些(输出)安全比特能够借助于组合的逻辑以相同的方式、即根据相同的计算规定从输出端数据中重新产生,其中,与在写入时的比特相比较后在缺乏对应的情况下可靠地指出软错误的出现。错误的出现因此能够立即被发现。这使得能够在应用这些数据之前进行警告并且/或者直接地修正这些数据。
[0013]根据本发明,以与在写入时相同的方式从来源于数据存储元件的数据中计算出至少一个安全比特或者说输出安全比特并且与对应的写入安全比特进行比较。缺乏对应表明在此期间发生软错误,其例如表示为一个或者多个比特倒置。
[0014]数据的写入以有利方式地由处理器(CPU)或者由状态机或者由信号引起。
[0015]优选向处理器传递关于相应的写入安全比特与对应的读取安全比特的缺乏对应的信号。
[0016]信号通知优选通过设置至少一个标志和/或中断实现。这以有利方式地例如在具有或者没有中断能力的状态寄存器中实现并且使得系统或者说处理器能够引起并且执行错误处理措施。
[0017]由此,在优选的实施方式中,基于计算出的安全比特或者说输出安全比特与产生的写入安全比特的缺乏对应,也就是说在识别出出现错误时,重新向数据存储元件中写入数据。也就是说,由处理器或者状态机重复数据初始被写入到存储元件中的过程。然而相比于已知的方法,这不是周期性地执行,而是仅仅在需求情况下,也就是在出现错误时才执行。以该方式,数据而后-至少首先-又以没有错误的形式供支配用于另外的过程。
[0018]安全比特优选是奇偶比特和/或ECC比特。奇偶比特在此表征:在数据比特中是否存在并且存在多少“I”或者“O”状态。在奇偶比特为偶数时,数据的奇数数目的“I”状态对应于奇偶比特的值“I” ; “O”代表数据的偶数数目的“I”比特。该分配在奇数的奇偶比特的情况下相反地选择。
[0019]ECC(Error Correcting Code)比特在此理解为如下比特或其产生手段,其(至少在受限制的程度上)不仅仅允许发现错误而且也允许借助于ECC比特修正错误。通常,I比特错误能够立即被修正,而2比特错误能够被识别,但不能被修正。多比特错误能够部分地被识别。安全比特也能够在其它存储保护方法的基础上被产生并且被写入。
[0020]根据本发明,以上提到的目的参考如下的装置被实现,其具有至少一个逻辑单元,在逻辑单元中执行以上描述的方法。该方法在所述至少一个逻辑单元中优选通过硬件和/或软件执行。可以为写入和读取数据设置同一逻辑单元用于产生安全比特,或者为这两个过程中的每个过程各设置一个逻辑单元。逻辑单元也能够是处理器的一部分或者说与处理器结合。
[0021]以上提到的目的参考如下集成的电路实现,其具有至少一个数据存储元件、至少一个安全存储元件和所述类型的装置。这样的集成的电路优选在具有参数微调的IC中使用。(部件容忍度常常过大,不能够实现电路的要求的精度。在这样的情况下,部件被平衡-例如在分压器的情况下从多个分接中选出一个。)微调应用在所有的测量电路中,例如用于传感器信号、阀电流,以及电流供应和比较电路中。另外的使用可行方案是用于使IC与环境匹配的配置,例如匹配于车辆类型、车轮传感器类型、机载电压的监测阈值等。
[0022]数据存储元件在优选的实施方案中包括至少一个触发器。
[0023]本发明的优点尤其在于,通过在写入数据时并行地写入安全比特以及连续地监测数据输出,实现了能够识别软错误出现的节省资源的可行方案。通过连续地计算出安全比特并且与初始写入的安全比特进行比较,能够在发现不一致时通过通知给处理器在进一步应用(有错误的)数据之前进行警告,由此能够防止系统的错误功能。
【附图说明】
[0024]根据附图更详细地解释本发明的实施例。其中以强烈示意化的图示示出:
[0025]图1示出具有多数决定器电路的三个触发器的已知的配置;
[0026]图2示出在优选的第一实施方案中的集成的电路,具有用于识别在至少一个存储元件、数据存储元件和安全存储元件中的有错误的数据的装置;
[0027]图3示出在优选的第二实施方案中的集成的电路。
【具体实施方式】
[0028]在所有的图中,相同的部件设有同样的附图标记。
[0029]在图1中示出用于一比特的寄存器2。寄存器2在此构造成多数决定器(Mehrheitsentscheider)并且包括三个触发器6、10、14,其构造为D触发器。相应的触发器
6、10、14分别包括数据输入端D、时钟输入端Ck(“Clock”)以及数据输出端Q。通过数据线20,由处理器(Prozessor)(未示出)分别在三个触发器6、10、14中设置两个稳态的状态(例如表示为“O”和“I”)中的一个,其中,在所有三个触发器6、10、14中分别设置相同的状态。数据比特因此在一定程度上以三倍冗余或者说呈三倍形式存储。
[0030]在通过三个触发器6、10、14实现的寄存器2中存储的数据或者说比特向多数决定器逻辑电路24分别发送所述触发器6、10、14的状态或者说比特并且在输出端A处提供数值。在此可以区别两种情况。在所有三个触发器6、10、14的状态相同的情况下,那么在输出端A处提供该状态。如果所述触发器6、10、14中的两个触发器具有与第三个触发器6、10、14不同的状态,那么在输出端A处提供所述两个触发器6、10、14所具有的状态。由此2/3的多数决定被执行并且具有不同数值的所述单个的触发器6、10、14在一定程度上被否决。
[0031]在这样的寄存器的实施方案中的缺点是:由于冗余造成部件数目多以及由此而来的空间消耗和电流消耗。
[0032]在图2中示出根据本发明的集成的电路30,具有主处理器(CPU)或者状态机(Zustandsautomaten)或类似装置34以及数据存储元件38,该数据存储元件构造成寄存器42。寄存器42构造为32比特寄存器并且包括多个触发器。相比于在利用图1讨论的电路方面,现在每个比特通过唯一的触发器代表。寄存器42替代地也能够构造有多个能够写入和读取的存储部位。
[0033]此外,集成的电路30使得能够识别“softerrors”或者说“软错误”,“软错误”例如源于在相应的数据存储元件38上出现高能的辐射。通过辐射的电离的作用,在寄存器中例如进行比特倒置,也就是说比特的状态被倒置。相比于硬错误,软错误不对结构元件造成损坏,而是改变其内部的状态。视被转换的比特所代表的部位或者数字而定,在寄存器2中代表的数值例如能够剧烈地改变或者甚至在相应的代表的情况下改变其符号,这在系统中会导致严重的功能故障,其中所述数值表征重要的或者有关的参数。
[0034]集成的电路30因此为了识别软错误除了具有数据存储元件38之外还具有安全存储元件46。如果数据由主处理器34或者状态机通过数据线36写入到数据存储元件中,那么由逻辑单元50向安全存储元件46中写入安全比特。安全比特在此可以是一个或者多个奇偶比特或者ECC比特。
[0035]在寄存器42中寄存的数据由逻辑单元54以与逻辑单元50计算安全比特相同的方式从寄存在数据存储元件38中的数据中计算出安全比特并且将其与在安全存储元件46中寄存的安全比特进行比较。逻辑单元50和54也能够被组合成一个共同的逻辑单元并且/或者与主处理器34/状态机组合。通过其实现了用于识别软错误的装置56。
[0036]在确定在写入数据时产生的或者说生成的安全比特和由实际的寄存数据计算出的安全比特之间缺乏对应的情况下,逻辑单元54通过数据线58向主处理器34传输信号。该信号可以包括标志或者中断的设置。以该方式,在集成的电路30中能够对有错误的数据作出反应。优选地,由主处理器34重新产生或者确定数据并且重新写入到寄存器42中并且从而修复错误。在其它的实现方案中,数据(例如校正数据)能够由固定值存储器重新加载。替代于此地,主处理器34也能够发出关于不能够保证系统可靠运行的警告并且/或者引入紧急措施,例如系统重置、紧急切断或者类似措施。
[0037]图3示出在优选的第二实施方式中的集成的电路30。在此,逻辑单元50在向寄存器42中写入数据时产生ECC比特,也就是与修正错误的算法对应的比特。ECC比特不仅仅允许错误的识别而且也允许其修正。该修正在当前的实施例中由逻辑单元54执行,其而后给数据线58提供修正了的数据。也就是说,除了错误的识别之外也发生数据的修正。在该情况下也能够规定,在识别出错误时数据重新被写入到寄存器中。此外,该配置在一定程度上也能够容忍“硬”错误。
[0038]根据图2或3的集成的电路30例如以有利方式地被用于保护微控制器外围模块(例如用于时钟发生器的分频器)中的配置数据、检测值、SPI波特率、CAN时间的比特定时等。
[0039]此外,集成的电路能够以有利方式地被用于保护模拟IC中的修正数据。在此,能够将例如500至1000比特用于参数微调。这些数据在制造时被写入在固定值存储器中并且而后在接入电压或者重置之后在触发器中被接收。这些触发器而后能够以较少的比特永久地检查偏差。利用IC中的配置数据也能够实现类似内容。相比于修正,在应用中确定配置。对此的例子是比较电路的阈值、用于轮传感器的协议等。
[0040]附图标记列表:
[0041 ] 2 寄存器
[0042]6触发器
[0043]10触发器
[0044]14触发器
[0045]20数据线
[0046]24多数决定器逻辑
[0047]30集成的电路
[0048]34主处理器
[0049]36数据线
[0050]38数据存储元件[0051 ]42寄存器
[0052]46安全存储元件
[0053]50逻辑单元
[0054]54逻辑单元
[0055]56装置
[0056]58数据线
[0057]62数据线
[0058]D数据输入端
[0059]Ck时钟输入端
[0060]Q数据输出端
[0061]A输出端。
【主权项】
1.一种用于识别在至少一个存储元件(38)中的、尤其是寄存器(2、42)中的有错误的数据的方法,所述存储元件包括至少一个双稳态的触发器,其中,在写入数据到所述至少一个存储元件(38)中时,从这些数据中产生至少一个写入安全比特并且存储在配属的安全存储元件(46)中并且其中,以与在写入时相同的方式从所述数据中连续地计算出至少一个输出安全比特并且与对应的写入安全比特进行比较。2.根据权利要求1所述的方法,其特征在于,所述数据的写入由处理器(CPU)或者由状态机或者由信号引起。3.根据权利要求1或2所述的方法,其特征在于,向所述处理器(36)传递关于相应的写入安全比特与对应的输出安全比特缺乏对应的信号。4.根据权利要求3所述的方法,其特征在于,信号传递通过设置至少一个标志和/或中断实现。5.根据权利要求1至4中任一项所述的方法,其特征在于,在输出安全比特与写入安全比特缺乏对应时,向所述数据存储元件(38)中重新写入数据。6.根据权利要求1至5中任一项所述的方法,其特征在于,所述安全比特是奇偶比特和/或ECC比特。7.—种用于识别和/或修正在至少一个存储单元中的有错误的数据的装置(56),所述存储单元包括至少一个逻辑单元(50、54),在所述装置中执行根据权利要求1至6中任一项所述的方法。8.—种集成的电路(30),该集成电路具有至少一个数据存储元件(38)、至少一个安全存储元件(46)和根据权利要求7所述的装置。9.根据权利要求8所述的集成的电路(30),其特征在于,所述数据存储元件(38)包括至少一个触发器。
【文档编号】G11C11/412GK105830162SQ201480068859
【公开日】2016年8月3日
【申请日】2014年12月16日
【发明人】A·特雷斯科夫
【申请人】大陆-特韦斯贸易合伙股份公司及两合公司