专利名称:具有可变时钟速率的数据处理系统的制作方法
现有技术本发明涉及数据处理系统,所述数据处理系统具有一个按时钟工作的执行单元,譬如一个微处理器、一个用于为该执行单元提供一种时钟信号的时钟发生器和一个用于监测所述执行单元的正常工作的监测单元。
这样的监测单元,在下文中也称为“看门狗”,一般用于识别执行单元的一个不确定的状态或者故障(Absturz)并且在需要的情况下复位所述执行单元,以重新产生一个确定的运行状态。这样的一个“看门狗”能够以短时间中断所述执行单元的运行为代价,在复位的同时排除一种例如由于宇宙的或者其它的离子辐射等等影响的信息丢失基础上的自发的处理错误产生的故障状态。在处理过程中,不能够由这样一种“看门狗”截获导致可复制的错误的电路技术或者程序技术方面的所述数据处理系统的结构缺陷,因为这种“看门狗”不能够防止以可预见的方式导致错误的条件出现。
在电子的数据处理系统中的处理错误的另一个可能的原因是延迟效应。因为电信号在半导体芯片上或者在一个数据处理系统的多个芯片之间只能够以一定的速度传播,所述系统运行的时钟频率越高信号路径就越要微小并且越要准确地相互平衡。在信号线路的上寄生电容可能延迟信号电平的改变。因为这种寄生电容可以通过制造条件进行控制,在生产处理器时要检测所述处理器可靠工作的最高时钟频率有多高。这样的频率(扣除一个安全间距)提交给处理器,并且从该提交的最高频率和低于该提交的最高频率以下时钟频率可以可靠地工作出发。
已经有人提出,根据负荷程度,以不同的时钟频率运行网络相关应用的处理器。该措施的目的是最小化处理器的功率承受。因为功率承受随着时钟频率而线性地增加,所以希望以不高于完成处理器的当前任务所要求的时钟速率运行。
可以确定,电子器件的老化现象会导致数据处理系统中自发的处理错误的概率增加。所述概率的增加可以通过在其上实施电路的半导体衬底的边界面上的长期改变解释,所述这种边界面上的长期改变可以导致载荷在电路上的寄生电容的改变。还有,不能够排除高温工作时电路装置中的杂质材料的迁移,其中在半导体衬底上构成的结构越小,这样的迁移的作用就越强。因此考虑到越来越高的集成密度的发发展,必需越来越重视由老化决定的可靠性问题。
发明的优点通过如权利要求1中限定的本发明的技术方案,创立一种虽然存在上述问题但仍然可以保证高度的工作可靠性的数据处理系统,并且因此所述数据处理系统极其适合于一些重要的尽可能地避免自发功能失灵的安全性紧要的应用。
这些优点通过一种数据处理系统达到,所述数据处理系统具有一个按时钟工作的执行单元、一个用于为所述执行单元提供时钟信号的时钟发生器和一个用于监测所述执行单元的正常工作的监测单元,这是通过所述时钟发生器设置用于提供一种有可控制的频率的时钟信号并且所述监测单元在功能上与所述时钟发生器相连接,以在确定执行单元为不正常工作时降低所述时钟信号的频率。
上述方案的出发点在于上述的寄生电容或者有可能由于杂质发生迁移而造成的电路元器件的效率降低是数据处理系统中出现的自发错误的主要原因。其中在出现这样的错误的情况下降低时钟速率,就只放弃一个所述系统在理想的条件可能达到的计算能力的部分,然而却保持该系统的一般可靠性。
为了在降低时钟速率的情况下,能够继续运行正在所述数据系统上运行的应用程序(所述应用程序至少暂时地充分发挥按照原来规定的高时钟速率所能达到的该系统的计算性能),应适当地把所述应用程序划分成多个功能,其中根据当前要执行的系统时钟释放或者不释放至少一个被评估为在应急情况下可以放弃的功能。
所述监测单元可以包含一个公知的看门狗单元,如果在一个规定的时间段停止所述执行单元的一个功能信号,而所述执行单元在停止的情况下不按常规的方式复位该数据处理系统而是只是引发时钟信号的频率下降,所述看门狗单元就确定执行单元没有正常工作。
作为可供选择的替代方案或者以组合的方式,可以配置所述监测单元,使得通过处理单元以一个当前的时钟速率和一个与当前的时钟速率相比改变了的时钟速率执行一个检测处理,并且,如果用当前的时钟速率执行的检测处理的结果与改变了的时钟速率执行检测处理的结果不同,就确定所述执行单元为不正常工作。
优选地所述改变了的时钟速率是与当前的时钟速率相比提高了的时钟速率。这使得还能够在边界时钟频率(在所述边界时钟频率之上出现处理错误)降低到当前的时钟频率以前,就确定所述数据处理系统的产生自发错误的趋势。
控制检测处理的执行的监测单元可以简单和成本合算地以程序技术的方式在执行单元中实施。
根据另一个安排,所述监测单元包含一个第二执行单元和用于比较两个执行单元处理结果的装置,并且被配置成在结果不相符时确定为不正常的工作。在此执行一次检测处理就足以判断所述数据处理系统的可靠性。
在该安排中还适当的是,为检验运行可靠性短时间地把时钟频率提高到当前的时钟频率以上并且在提高了时钟频率的情况下确定为不正常的工作时把时钟频率降低到所述当前时钟以下。
所述数据处理系统应当具有在时钟频率降低到一个下限以下时输出一个报警信号的装置。
特别地,所述数据处理系统涉及一个汽车的控制装置,尤其是一个马达控制装置。
本发明的主题还是一种用于运行数据处理系统、特别是上述种类的数据处理系统的按时钟工作的执行单元的方法,其中检验在高时钟频率下执行单元是否正常工作,并且如果确定执行单元为不正常的工作就降低时钟速率,其中按规律重复所述检验。所述按规律的检验可以分别在接通和或关断所述数据处理系统时进行或者在运行所述数据处理系统时周期地进行。
本发明的其它特征和优点在下面参照附图的实施例说明中得出,其中图1是一个根据本发明的一个第一安排的数据处理系统的方框图;图2是一个由图1所示数据处理系统执行的运行方法的流程图;而图3是一个根据本发明的一个数据处理系统的第二安排的方框图。
具体实施例方式
在图1中示意性地示出的数据处理系统包含一个微处理器1、一个工作存储器2和一个监测单元3,它们通过一个数据和地址总线4相互通信以及在一定的情况下与图中未示出的外围设备通信,所述外围设备可以视系统的应用而异不同,例如在用作马达控制装置的情况下可以包含各种用于测量马达的运行参数的传感器和用于影响马达的这些参数或者其它参数的执行器。该系统还包含一个时钟发生器5,所述时钟发生器经一个时钟线路7向微处理器1、工作存储器2和监测单元3输送具有由监测单元3通过控制线路6规定的频率的一个时钟信号。
工作存储器2包含一个由微处理器1执行的应用程序以及一个检测处理的程序指令。
微处理器1由制造厂商规定工作-时钟频率。在正常的运行条件下监测单元3控制时钟发生器5,以在微处理器执行所述应用程序时产生该规定的时钟频率。在一个作为马达控制装工作的系统的情况下例如通过一个点火钥匙的转动在接通所述系统时,处理器1在开始所述应用程序以前执行一个初始化,其过程借助于图2说明。在一个第一步骤S1中监测单元3把时钟发生器的时钟频率f设置到为微处理器1规定的频率fnom。在该时钟频率的情况下,微处理器1在步骤S2中执行已经说明了的检测处理。该检测处理例如可以由一系列算术运算或者逻辑运算组成,这些运算可以用从工作存储器2中读取的常数进行并且在此在每次执行时都应当提供相同的结果。在检测处理的最后的步骤S3中向一个配属给监测单元3的地址写入该结果,从而后者接收并且缓冲寄存该结果Rnom。
接着监测单元3把时钟频率f提高到fnom+Δ(S4),并且使微处理器1在该提高的时钟频率下重复所述检测处理(S5)。以这种方式把结果Rinc再次写入监测单元3(S6)。于是在步骤S7中把两个接收的结果Rnom与Rinc进行比较。在相符的情况下就得出结论处理器1在两个时钟频率fnom和fnom+Δ都是正常工作的。在此情况下,在步骤8把时钟频率f复位到fnom,并且微处理器1开始执行所述应用程序。
如果在步骤S7中确定所述结果不相符,这就意味着,在提高的时钟频率fnom+Δ运行不可靠。为了与该不可靠工作的频率保持一个安全间距,在步骤S9中设置一个新的、降低的运行频率f=fnom-Δ。在步骤S10中微处理器1借助由系统制造厂商准备并且存放在工作存储器2中的列表检验所述应用程序是否包含在降低了的时钟必须禁止其实施的功能,以在其重要的特征上维持所述应用程序的作用能力并且防止所述应用程序对外部事件不允许的长反应时间,以及在一定的情况下禁止这些功能。在步骤10中,如果满足以下的条件之一就向使用者输出一个报警显示a)再一次的降低时钟频率Δ就使得要求禁止应用程序的至少一个功能;b)在步骤S9中降低时钟速率导致禁止一个功能;c)已经禁止了所有对所述应用程序不极为重要的功能,使得不能够通过禁止其它的功能来进一步降低时钟速率,而是要导致整个系统不能工作。
步骤S1至S3为一个方面而S4至S10为另一个方面不是一定要在时间上相继地执行。从而例如可以设想只是在系统第一次投入运行时执行步骤S1至S3并且把其结果保持存放在监测单元3中,从而可以把以后的该系统运行安全性检验限制在实施S4至S10。
如果以周期方式也对运行的系统进行安全性的检验,这也是特别适当的,因为执行步骤S4至S10只需要为执行图2中所示的方法用的一半长时间间断。
为了使应用程序的起动不因图2所示的运行安全性检验而被延迟,还可以提出不分别在系统投入运行进行检验而是直接在在其关闭前进行,其中当然完全与以前的情况相同地在接着重复所述方法的情况下用在步骤S9中新确定的运行频率作为规定的频率fnom。
对上述这两个检测处理的结果Rnom和Rinc的比较任务附加地,所述监测单元3还可以以公知的方式承担探测不确定的运行状态或者故障微处理器1的任务。为此目的,如此地设计所述应用程序使得所述应用程序以规则的时间间距引发产生一个由监测单元3接收的事故信号。该事故信号例如可以是一个对上述地址的读访问,在该地址上微处理器写上检测处理的结果。该事故信号在监测单元3中分别复位一个时钟,该时钟的延迟时间长于设置的两个故障信号之间的时间间隔。只要在设定的时间间隔中出现所述事故信号,就规则地复位所述时钟并且所述时钟不能够运行完。如果,由于一个处理器失灵构成事故信号并且所述时钟运行完,监测单元3就经一个复位线路8(图1)触发微处理器1的一次复位并且引发所述微处理器重新起动该应用程序。
图3示出带有两个处理器1、11的一个根据本发明的数据处理系统的第二方案,所述两个处理器分别经一个数据/地址总线4、14与一个所属的工作存储器2、12以及可能地图中未示的外围设备通信。带有这样一种结构的数据处理系统特别地在六缸或者更多缸的马达的马达控制装置的情况下加以考虑,其中把这些汽缸分成两个组,这两个组分别地由两个处理器1、11之一控制。处理器1、11经一个时钟线路7从一个公共的时钟发生器接收时钟信号。所述时钟信号的频率通过同样地共同配属给这两个处理器1、11的监测单元3控制。如果总线4、14的两个同类线路(它们位于同一个门电路20的两个输入端)上的值不同,那么总线4、14的所有线路,不论是数据线路还是地址线路都位于一组其输出分别恰好取值“真”的XOR门电路20上。如果总线4、14的两个任意的同类线路上的值不同,那么XOR门电路20的输出端分别与一个其输出端因而总是取值“真”的XOR门电路21的一输入端相连。
完成与图1的方案相同的功能的复位线路8,可以设置在监测单元3与处理器1、11之间。
该方案的可能的工作方式在下面同样地参照图2说明。
根据一个第一可供选择的取代方案,监测单元3开始操作安全性检验,其中所述监测单元在步骤S4中把时钟信号的频率f提高到在一个正常运行中采用的频率fnom以上,并且然后使之通过微处理器1、11执行检测处理(S5),该检测处理的结果是所述应用程序所不需要的,而是只起安全性检验的作用。对应于图2的步骤7,在该处理的过程中逻辑门20、21持续地比较由微处理器1、11产生的数据和地址。如果在整个检测处理过程中这些数据和地址是相同的,那么两个处理器1、11可靠地工作,并且在步骤S8中把时钟频率复位于fnom。然而,如果在一个数据值或者一个地址中出现偏差,所述方法就分枝到S9,在步骤S9降低所述时钟频率,并且,如以上已经的那样,在步骤S10中确定是否并且在一定的情况下禁止所述应用程序的哪个功能,并且在一定的情况下向使用者输出一个报警。
因为根据该实施方式不仅仅比较检测处理的结果,而是还附加地比较包含所响应地址的全部中间结果,所以在相同数量的检测处理的程序步骤的情况下以比第一实施方式高的概率探测出一个故障。
附加地,图3所示的数据处理系统提供了以下的可能性在额定的时钟频率fnom同时执行相同的指令时,还探测处理器1、11的故障,例如在这两个处理器1、11进行相同的初始化的应用程序的一个起始阶段。这使得能够没有时间耗费地充分检验运行可靠性。
在以上例子中处理器和监测单元为分立的单元。当然还可以采用带有一种集成在处理器电路中的固定接线的故障识别功能件的处理器,所述集成在处理器电路中的固定地接线的故障识别功能件用于识别由处理器读取的数据中的ECC错误或者奇偶性错误;在本说明书的意义上这样一种处理器可以理解为处理器与监测单元的组合。
权利要求
1.数据处理系统,所述数据处理系统具有一个按时钟工作的执行单元(1)、一个给该执行单元(1)提供时钟信号的时钟发生器(5)和一个监测所述执行单元(1)的正常工作的监测单元(3);其特征在于,所述时钟发生器(5)被配置成提供一种可控频率的时钟信号;并且所述监测单元(3)在功能上与所述时钟发生器(5)相连接,以在确定该执行单元(1)为不正常工作时降低所述时钟信号的频率。
2.根据权利要求1所述的数据处理系统,其特征在于,所述监测单元(3)包含一个看门狗单元,如果在一个规定的时间段停止所述执行单元的一个功能信号,那么所述看门狗单元确定该执行单元为不正常工作。
3.根据权利要求1所述的数据处理系统,其特征在于,所述监测单元(3)被配置成通过处理单元用一个当前的时钟速率(fonm)和一个与当前的时钟速率相比发生改变的时钟速率来执行一个检测处理,并且,如果用当前的时钟速率执行的检测处理的结果与改变了的时钟速率执行检测处理的结果不同,就确定所述执行单元为不正常的工作。
4.根据权利要求3所述的数据处理系统,其特征在于,所述改变了的时钟速率(fnom+Δ)是一个与当前时钟速率(fnom)相比提高了的时钟速率。
5.根据权利要求3或者4所述的数据处理系统,其特征在于,所述监测单元(3)以编程的方式被实施在所述执行单元(1)中。
6.根据权利要求1所述的数据处理系统,其特征在于,所述监测单元(3、11、20、21))包含一个第二执行单元(11)和用于比较所述两个执行单元(1、11)的处理结果的装置(20,21),并且被配置成在结果不相符时确定为不正常工作。
7.根据权利要求6所述的数据处理系统,其特征在于,所述时钟发生器(5)被配置成所述时钟发生器(5)把时钟频率提高到当前的时钟频率以上(S4)并且在提高了时钟频率的情况下确定不正常工作时把时钟频率降低到所述当前时钟以下(S9)。
8.根据以上权利要求之一所述的数据处理系统,其特征在于,所述数据处理系统具有在时钟频率降低到一个下限以下时输出一个报警信号的装置。
9.根据以上权利要求之一所述的数据处理系统,其特征在于,所述执行单元(1)还被配置成执行一种应用程序,所述应用程序包含多个功能,其中取决于当前要执行的系统时钟来释放或者不释放所述功能中的至少一个。
10.根据以上权利要求之一所述的数据处理系统,其特征在于,所述数据处理系统是一种汽车控制装置。
11.用于运行数据处理系统的、特别是如以上权利要求之一所述的数据处理系统的按时钟工作的执行单元(1)的方法,其中检验在高时钟频率时所述执行单元是否正常工作(S4-S7),并且如果确定该执行单元为不正常工作就降低时钟速率,其特征在于,按规律地重复所述检验。
12.如权利要求10所述方法,其特征在于,分别在接通和或关断所述数据处理系统时进行所述检验。
13.如权利要求10所述方法,其特征在于,在运行所述数据处理系统时周期地进行所述检验。
全文摘要
数据处理系统,具有一个按时钟工作的执行单元(1),一个用于为该执行单元(1)提供一种时钟信号的时钟发生器(5)和一个用于监测所述执行单元(1)的正常工作的监测单元(3)。配置该时钟发生器(5),以提供一种有可控制的频率的时钟信号。所述监测单元(3)在功能上与所述时钟发生器(5)相连接,以在确定执行单元(1)为不正常工作时降低所述时钟信号的频率。
文档编号G06F11/00GK101048741SQ200580036469
公开日2007年10月3日 申请日期2005年10月25日 优先权日2004年10月25日
发明者Y·科拉尼, T·科特克 申请人:罗伯特·博世有限公司