[发明专利]微控制器多源看门狗的实现方法无效
申请号: | 200910199585.3 | 申请日: | 2009-11-26 |
公开(公告)号: | CN101957790A | 公开(公告)日: | 2011-01-26 |
发明(设计)人: | 胡越黎;周谌;冉峰;徐晓勇;杨奔;杨开 | 申请(专利权)人: | 上海大学 |
主分类号: | G06F11/34 | 分类号: | G06F11/34;G06F1/24 |
代理公司: | 上海上大专利事务所(普通合伙) 31205 | 代理人: | 何文欣 |
地址: | 200444*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制器 看门狗 实现 方法 | ||
技术领域
本发明涉及一种微控制器(MCU,Microcontroller Unit)多源看门狗的实现方法,该方法主要用于微控制器(MCU)运行状态的监视以及对运行错误的纠正,也可应用于其他的芯片级的处理器领域。
背景技术
看门狗监视器在微控制器(MCU)的应用上非常普遍,在工业控制上尤其如此。在大型的工业流水线上,许多机器在MCU的控制下按照预定的程序有序地运行着。如果由于未能预料的原因,如脉冲干扰等,造成程序跑飞,系统无法正常地工作而进入死循环,这时系统就必须立刻被重新复位,否则就会对生产活动造成影响。因此,必需由操作人员在机器旁边照看,如果出现死循环,就手动复位。这种方法既浪费了资源,也不是非常有效。而看门狗监视器的出现,解决了这类的问题。一旦程序发生跑飞进入死循环状态,看门狗监视器就能够监视到程序运行异常的发生,自动产生一个复位信号,在人工不干预的情况下也能对系统进行复位。
但是,传统的看门狗监视器也有其缺点。虽然它能够发现程序跑飞的问题并进行纠正,却无法告知用户程序跑飞的位置与发生的原因。在具体操作中,技术人员需要凭借经验花费大量的时间查找错误的源头,这也一直是运用传统看门狗监视器的一个遗憾。
发明内容
本发明的目的在于提供一种微控制器多源看门狗的实现方法,相比传统的看门狗电路,它不仅具有系统自动复位的功能,而且该方法通过多个看门狗的协调工作以及设置专门的寄存器,能够保存发生错误时CPU所在程序段的位置信息,这样就能使系统工作人员快速找出程序的出错点,从而减少了系统工作人员在系统出现程序跑飞问题后的仿真时间,简化了仿真和检错的过程,极大地提高了工作的效率。
该方法在应用上可以通过硬件电路方便地实现,并且可以作为功能模块来嵌入到芯片内部以提高系统集成度。
为达到上述目的,本发明的构思如下:
构建一个集成在MCU内部的多源看门狗模块,该模块内部由多个看门狗监视器组成,整个设计通过多个看门狗的协调工作以及设置专门的寄存器来达到设计的要求。
每个看门狗的工作方式与传统的看门狗监视器基本一致,即根据主程序会循环运行的原理,在程序中设置看门狗定时器的程序。启动看门狗定时器后,在正常情况下每当程序循环运行到看门狗定时器相应的程序时,就会对看门狗定时器进行赋值操作(也称为刷新看门狗或者“喂狗”)。如果出现程序跑飞的故障则主程序的循环无法进行,也就无法实现刷新操作,则看门狗定时器会一直计数直到某一个临界值并发出复位信号使整个MCU复位,也就纠正了程序跑飞造成的影响。
多源看门狗模块内嵌多个上述的看门狗监视器,并且为该模块配置了专门的标志位寄存器来存放各看门狗的状态,多个看门狗的协同作用就可以知道程序发生跑飞的位置,图1是多源看门狗思想的工作示意图。如图1所示,当程序跑飞的现象发生以后,发生状况的程序段之前的看门狗定时器已经被赋值,而由于程序跑飞,发生状况的程序段之后的看门狗定时器无法得到赋值,则其中距发生状况的程序段最近的看门狗定时器就会首先发生复位。在看门狗定时器发出复位信号的同时,标志位寄存器内相应的标志位会被置位。这样,通过在程序的不同位置嵌入多个看门狗进行监视,一旦发生复位,只要查看标志寄存器就可以知道发生复位的看门狗位置,从而确定程序跑飞发生的位置。这对检查错误产生的位置以及产生的原因都带来极大的方便。
根据上述构思,本发明采用下述技术方案:
一种MCU多源看门狗实现方法,其特征在于通过一个嵌入在芯片内部多源看门狗模块,可以在程序的不同位置设置多个看门狗监视器以跟踪程序的运行,专门的标志位寄存器还可在MCU被复位后记录下产生复位的看门狗的信息,以方便发现错误。其具体步骤为:
a.设置n个独立的看门狗定时器模块,每个模块包括一个单独的看门狗初值寄存器;
b.设置看门狗频率选择寄存器来配置每一个看门狗的工作频率,以适应不同的应用条件;
c.设置看门狗运行控制寄存器,该寄存器通过控制每一个看门狗的运行使能位来控制其运行情况;
d.设置看门狗标志位寄存器,该寄存器可以在看门狗对MCU发出复位信号前,记录下发出信号的看门狗监视器的身份信息,以供应用人员读出并找出错误的源头。
e.改变原MCU的复位方式,将多源看门狗模块的复位信号引入到复位模块,使其可以触发MCU复位
上述设置n个独立的定时器模块的方法为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海大学,未经上海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910199585.3/2.html,转载请声明来源钻瓜专利网。