可靠地检验控制装置中微控制器存储区的方法和带有受保护微控制器的控制装置的制作方法

文档序号:6422252阅读:119来源:国知局
专利名称:可靠地检验控制装置中微控制器存储区的方法和带有受保护微控制器的控制装置的制作方法
现有技术本发明是关于在一辆汽车中控制一个控制装置的微控制器的一种方法,汽车带有一个中央处理器(Rechnerkern)、至少一个只-读-存储区域和至少一个可重写的存储区域,在可重写的存储区域中至少存储一个控制程序,它是为了用中央处理器进行处理而设置的。
此外,本发明还涉及用于带有微控制器的汽车的一种这样的控制装置。
在广义上,这里将汽车理解为可用控制装置控制的内燃机车辆。这类控制装置在车辆技术上为各种各样的功能应用,例如像作为发动机控制装置。在这种情况,例如在发动机控制装置的整理调谐(Chip-Tuning)时,往往要控制非易失的但是可多次重写的存储器(例如闪存器)。将在那里存储的数据改变,使达到一个较高的发动机功率。由现有技术还知道一些控制微控制器的方法,这些微控制器在起动时和/或在控制装置程序的运行期间触发检验程序。此外,这类控制装置也用于控制变速箱或ABS-系统。
从德国公开文本DE197 53 730知道控制内燃机的一种方法和一种装置。该装置包括至少一个微处理器、至少一个可编程的存储器和一个可重写的存储器。在可重写的存储器中,放置有由微控制器处理的程序和/或数据。这些程序只有在检验之后才被执行。如果一个可编程的存储器的内容接收第一个数值,则不用另外的检验程序就被执行,否则至少进行一个另外的检验。用该方法要达到,使一个数据组有在一个串联控制装置上运行的能力,该数据组包含有改变了的数据和/或程序,或不是由控制装置制造厂公开的数据组。同时,汽车制造厂要有使用控制装置的可能性,就是说,不用具备检验的知识就改变各个控制装置中的数据组。此时,成问题的是对可编程存储器内容的保护。
在DE197 23 332A1中,阐述了一种保护微控制器防止操作其程序的方法和一种这类受保护的微计算机。微计算机有一个中央处理器、一个只-读-存储器和一个可重写存储器。在只读存储器中,存储一检验程序,它借助于一个通行字由可重写存储器的存储内容形成一个代码字。然后,将代码字与一个比较代码字进行比较,比较代码字同样是放置在可重写存储器中。微计算机的阻断或触发取决于比较的结果。
在已知的方法中,如果应用只需要一个受保护的内部闪存区域(Flashbereich)并不需要外部的存储器,在采用这个闪存区域时也可能是个保护。因为该应用大多数是采用一个外部存储器,在内部安装的操作保护在这些应用中不起作用-或者要回避。此外,如果使用的控制器没有内部的、受保护的存储器,则操作检验例行程序才有可能。在最简单的情况将阻止调用这些例行程序。
如果相反,在控制器中将这些检验例行程序放置在一个不可改变的区域(例如ROM),则这意味着一方面是费用上升,另一方面是在选择算法中灵活性较小。除此之外,一个ROM在相应控制器技术中往往也不可实现。甚至如果有一个ROM可供使用的话,留下一些在应用一个大的ROM-区域时从根本上要注意的问题。改变程序代码是很昂贵的,因为各自要求新的掩码。如果必须改变代码,直至新代码可在项目中使用,至少需要4个月(流水线循环时间Liniendurchlaufzeit)。对于一个客户专用的代码,或是每个客户要求有他自己的ROM,或是必须将ROM相应地放大。两者都造成费用增高,既不符合客户利益,也不符合半导体制造厂的利益。如何能促使代码实施的问题,在此也没有解决。
因此,本发明所面对的问题,创立检验一控制装置的微控制器存储器的一种方法,该方法较好地防止未经许可的介入。此外,任务还在于,在一个控制装置的微控制器中,完全有效地去阻止未经许可的操作(Manipulation)存储内容。
本发明的优点本发明的方法包括下列步骤在可重写存储区域的一个一次可写的存储区域中存储一个检验程序,在只-读-存储区域存储一个服务程序,通过控制程序以有规则的间隔调用服务程序,通过服务程序调用检验程序,在通过控制程序调用时通过服务程序使一个计数器复位,通过检验程序检验至少一部分可重写存储区域,在操作被检验的存储区域时通过检验程序或在计数器溢出时通过计数器触发一个RESET。
本发明的方法出众之处在于,用于检验存储器的代码序列(检验程序),不能在只有一次可写的存储器中被操作。这样一个只一次可写的存储区域,例如能在已存在的、内部可重写的存储器(闪存Flash)中实现。一些微控制器例如在内部闪存的部分上有一个通行字保护。另一方面,在本发明的方法中,也有效地确保实施这个代码序列。在控制装置的各自控制程序中,必须包括以能调节的有规则的间隔调用检验程序。该检验程序借助于一个服务程序调用,该服务程序存储在只-读-存储器中。因此,该服务程序是被保护防止未经许可的介入和操作的。
必须有规则地调用该服务程序,因为否则借助于一个节拍发出装置不受影响地连续运行的计数器发出一个溢出信号。计数器不能停止,只能通过调用服务程序复位。如果计数器在调用服务程序之前达到溢出,计数器产生微控制器的一个RESET。
计数器能作为一个单独的具有自己节拍供给的装置的计数器模块来实现,它布置在微控制器之内一个受保护的区域或在控制装置中。在适当的微控制器中,程序技术的实现同样是可以想象的。计数器的溢出,例如能通过达到计数器终点(Zhlerende)触发。溢出达到的时间点决定时间间隔,在该时间间隔之后必须重新调用服务程序,不用计数器去触发RESET。为了调定一个时间点,选择一个带有相应计数器终点的计数器,或者调定一个计数器状态,在达到该状态时也发出一个溢出信号。在通过控制程序调用服务程序时,一方面调用检验程序,另一方面将计数器复位。
RESET例如在于,将控制装置关断或用一个数据组运行,该数据组还允许有一个受限制的功能。此时,也还能同时将一个相应的信号给到另外的控制装置。尤其有意义的是输出一个警告信号,它提出将车辆送进车间修理的要求。
此外,本发明的任务还通过带有微控制器汽车的一个控制装置来解决,在这里为了存储一个检验程序设置有可重写存储区域的一个一次可写的存储区域,设置只-读-存储区域用于存储一个服务程序,中央处理器以有规则的间隔通过控制程序处理调用之后的服务程序,中央处理器通过服务程序处理调用之后的检验程序,设置一个计数器,该计数器通过控制程序在调用时可通过服务程序服位,至少一部分可重写存储区域可通过检验程序检验,在操作被检验的存储区域时通过检验程序或在计数器溢出时触发一个RESET。
本发明特别优选的扩展在从属权利要求中给出。
附图下面应用两个附图详细阐述本发明的一个实施例。示出的有

图1本发明一个控制装置的微控制器的方块图和图2本发明方法的流程图。
实施例的说明在图1中示出的是按照本发明一个控制装置的微控制器1。它包括一个中央处理器2、一个只-读-存储器3、一个只一次可写的存储器4和一个可重写的存储器5。该控制装置例如可以是用于节流阀、需喷射的燃油量或其它量的发动机控制装置。然而,也可以想象是控制汽车中变速箱、ABS系统或其它系统的控制装置。中央处理器1是一个普通的微处理器,用于处理存储的程序和数据。只-读-存储器或ROM3包含有一个固定存储的程序,该程序只能通过更换ROM3改变。在这个存储器中,一般放置一个最小型程序,它能将中央处理器1置于能处理来自其它存储器的程序和数据的状态。
可重写存储器5大多作为EPROM或快闪EPROM来实施,且包含控制装置的可改变的程序和数据。只一次可写存储器4是可重写存储器5(闪存器Flash)的一个存储区域,它是受一个通行字保护的。在这个存储区域4中,存储一个代码序列,它的任务是检验微控制器1的代码-和数据区域。这个检验程序在识别到操作时采取一个反措施,大多数是引起触发一个RESET。此时,RESET的规模能与各自希望的反措施相匹配。控制装置例如能被整个关断,这在一个发动机控制装置的情况造成汽车立即停车。或者能用最小配置提供给控制装置,使控制装置保留功能准备状态,但是为了完全的功能能力要求送车间去修理。
各种存储区域分别示于图1,由此只要标识它们的不同功能。在维护不同功能性的情况下,有可能使存储区域通过分离的组件或以公共组件形式去实现。这样,尤其是闪存器5既能在微控制器组件之内实现,也能作为外部存储组件实现。
在图2中示意性示出的是本发明方法的流程。区域A,B,C和D标识功能不同的存储区域,在这些区域中放置的是有关的程序和数据。在示出的实施例中,A说明微控制器中的一个硬件区域,B说明微控制器中的一个ROM-区域和C说明微控制器中的一个闪存一区域,而D表示的是一个外部闪存-区域。
在外部闪存-区域D中,作为应用代码存储的是控制装置的一个控制程序。该程序在代码中包括一个`CALL′-指令,用它调用一个放置在微控制器的ROM-存储区域B中的服务程序。在一个相应的入口代码(Entry-Code)时,触发服务程序中的一个`SERVICE′(`服务′)。该服务程序触发两件事,一方面,将一个在微控制器A中作为计数器组件实现的计数器`COUNTER′复位。该计数器组件与一个节拍线路连在一起,致使它独立地连续运行。在达到最大的计数器位置时,发出溢出信号。另一方面,同时在一个检验程序中触发一个转移`JUMP′。该检验程序是作为代码序列存储在内部闪存器中的只一次可写存储区域中。微控制器的内部闪存器为此有个区域,该区域通过一个通行字保护,从而只一次可写。
检验程序借助于已知的诸如校验和形成(Checksummenbildung)那样的检验方法,检验至少一部分由微控制器应用的存储器。如果用检验确定出在存储的数据和/或程序上的操作,则触发一个RESET。如果确定出没有未经允许的改变,则借助于一个`RETURN′-指令又返回到控制程序。
如果计数器发出溢出信号,就是说一个规定的时间到期,则同样触发一个RESET。该RESET可以有选择地意味着,将控制装置完全关断,或使控制装置在应用以前规定的参数情况下运行。此时关系到还能确保控制装置功能性的一种最小配置,但是即刻要求送车间去修理。RESET一直保持激活状态,直至该装置关断和再接通(所谓的Power-On RESET)。
因为计数器不受影响地连续运行,所以如果将计数器有规则地进行复位,就能避免出现溢出,和能避免该从而强制地连在一起的控制装置的RESET。因为这只能在同样不是可操作的ROM-区域B内由服务程序触发,又必须由控制程序有规则地调用服务程序。因此,该必须包括CALL-指令的控制程序能存储在相对没有保护的闪存-区域D中。因为即使通过操作,也不能因此用这个方法去阻止对微控制器存储器进行检验。只有在没有操作的微控制器的存储器时,才确保控制装置持续的功能性。
与已知方法相比,本发明方法有一些优点。为控制器-芯片只产生很少的或没有额外费用,因为只需要最小的额外花费。此外,检验程序能单独与要求或需求匹配,因为这个代码序列没有包括在ROM-掩码中。因此,它也能保持客户专用。除此之外,控制器制造厂也能给其他客户提供这种功能。
对于没有控制器-内部闪存的系统,能应用同样的方法。该方法从而消除了对具有内部和外部闪存的系统保护较小的缺点,而且在与器件配对的组合中是个很可靠的方法。虽然可重写存储区域在上面的实施例中位于微控制器之内,当然它也能位于外部。
参考符号一览表
权利要求
1.在汽车中控制一控制装置的微控制器(1)的方法,该微控制器带有一个中央处理器(2)、至少一个只-读-存储区域(3)和至少一个可重写存储区域(5),其中在可重写存储区域(5)中至少存储了一个控制程序,它是为了用中央处理器(2)进行处理而设置的,包括至少下列步骤,-在可重写存储区域(5)的一个一次可写的存储区域(4)中存储一个检验程序,-在只-读-存储区域(3)中存储一个服务程序,-通过控制程序以有规则的间隔调用服务程序,-通过服务程序调用检验程序,-在通过控制程序调用时通过服务程序使一个计数器复位,-通过检验程序检验至少一部分可重写存储区域,-在操作被检验的存储区域时通过检验程序或在计数器溢出时通过计数器触发一个RESET。
2.如权利要求1的方法,其特征在于,控制程序存储在微控制器(1)的一个内部存储区域。
3.如权利要求1的方法,其特征在于,控制程序存储在微控制器(1)之外的一个外部存储区域。
4.如权利要求1的方法,其特征在于,检验程序存储在微控制器(1)的一个内部存储区域。
5.如权利要求4的方法,其特征在于,检验程序存储在微控制器(1)的一个内部存储区域,该存储区域受一个通行字保护。
6.带有微控制器(1)的汽车控制装置,微控制器带有一个中央处理器(2)、至少一个只-读-存储区域(3)和至少一个可重写的存储区域(5),其中在可重写存储区域(5)中存储至少一个控制程序,它是为了用中央处理器(2)进行处理而设置的,其中-为了存储检验程序设置可重写存储区域(5)的一个一次可写的存储区域(4),-为了存储服务程序设置一个只-读-存储区域(3),-服务程序通过控制程序以有规则的间隔调用之后,被中央处理器(2)处理,-检验程序通过服务程序调用之后,被中央处理器(2)处理,-设置一个计数器,它在通过控制程序调用时可由服务程序复位,-至少一部分可重写存储区域(5)可通过检验程序检验,-在操作被检验的存储区域时通过检验程序或在计数器溢出时可触发一个RESET。
7.如权利要求6的控制装置,其特征在于,一次可写存储区域(4)布置在微控制器(1)之内。
8.如权利要求6的控制装置,其特征在于,可重写的存储区域(5)是作为闪存器构成的。
全文摘要
本发明是关于在一辆汽车中控制一个控制装置中的微控制器的一种方法,汽车带有一个中央处理器、至少一个只-读-存储区域和至少一个可重写的存储区域,其中在可重写的存储区域中至少存储一个控制程序,它是为了用中央处理器进行处理而设置的。为了创立一种方法用于控制一个控制装置中的微控制器,而它较好地保护检验微控制器的存储器不受未经允许的入侵,建议将一个检验程序存储在可重写存储区域的一个一次可写的存储区域中,并将一个服务程序存储在只-读-存储区域中。检验程序借助于服务程序被控制程序以有规则的间隔调用,并检验至少一部分可重写存储区域。此外,服务程序将计数器复位。检验程序在识别出操作被检验的存储区域时或计数器在计数器溢出时,触发控制装置的一个RESET。
文档编号G06F21/71GK1692322SQ200380100458
公开日2005年11月2日 申请日期2003年11月5日 优先权日2002年11月7日
发明者K·施奈德尔, A·奥埃 申请人:罗伯特-博希股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1