一种看门狗的控制逻辑电路的制作方法

文档序号:6460763阅读:200来源:国知局
专利名称:一种看门狗的控制逻辑电路的制作方法
技术领域
本实用新型涉及监控技术,具体来说,涉及一种CPU系统中看门狗控制逻辑的电路。
看门狗电路通常由一独立于CPU之外的自带脉冲源的计数器构成。利用计数器的溢出信号作为CPU的复位信号,当CPU正常工作时,CPU每隔一段时间就输出一个脉冲将计数器清零,该脉冲信号称为清狗信号。若计数器定时溢出的时间比CPU的清零周期长,计数器就始终不会溢出,系统可正常工作;当CPU陷入死循环后,造成不能正常对看门狗电路中的计数器进行清零,一段时间后,计数器输出溢出信号,溢出信号作为CPU的复位触发信号,使系统复位,从而退出死循环。看门狗电路除复位CPU之外,还可复位除CPU之外的其它具备复位功能的器件。
现有看门狗电路可分为两种。一种是硬件看门狗电路,例如

图1所示,图1为一般的硬件看门狗电路示意图。看门狗电路由看门狗电路芯片加简单外围电路实现,CPU系统与看门狗电路的清零信号通过物理线直连,看门狗芯片内部计数器产生的溢出信号,直接或经一个非门送给需控制芯片的复位信号,CPU通过其一个输入/输出端(I/O)口输出清零信号至看门狗电路芯片MAX706的WDI端。另一种是软件看门狗电路,使用纯软件实现看门狗的定时溢出功能。
现有的看门狗电路都不能兼顾可靠性和灵活性的问题。硬件看门狗电路虽然可以保证看门狗电路的可靠性,但失去了CPU对看门狗电路的灵活控制,在一些应用中这样设计是致命的,例如,在电信单板中,底层使用的是VxWorks操作系统,单板在上电到启动程序加载完毕需要约5~6秒的时间,这段时间内CPU无法向看门狗电路送出清狗信号。而大部分看门狗电路设计的溢出时间都在0.5~2秒之间,若采用简单的看门狗电路,则单板会不停地复位而无法完成工作,且无法实现调试态下CPU关闭看门狗的功能。纯软件的看门狗设计是以软件的可运行为基础的,一旦处理器死掉,软件看门狗无法发挥作用,因此其可靠性得不到保证。
本实用新型通过以下具体方案实现一种看门狗的控制逻辑电路,位于CPU与看门狗电路之间,其特征在于所述的控制逻辑电路至少包括定时器、第一逻辑电路、第二逻辑电路;CPU的硬复位信号或软复位信号作为定时器的计时启动信号送入定时器,系统时钟提供的计时时钟信号送入定时器;另,由系统时钟提供的时钟清狗信号及CPU发出的清狗信号作为输入信号连接第一逻辑电路的输入端,上述定时器的溢出连接到第一逻辑电路控制端;上述第一逻辑电路的输出信号及上述时钟清狗信号作为输出信号连接第二逻辑电路的输入端,一调试态/工作态选择信号连接第二逻辑电路控制端;该第二逻辑电路的输出信号连接至看门狗电路芯片的清狗信号输入端。
所述的第一逻辑电路为二选一数据选择器。
所述的第二逻辑电路为二选一数据选择器。
所述的时钟清狗信号、定时器的计时时钟信号是由外部晶振分频电路提供。
所述的控制逻辑电路进一步包括外围芯片复位控制逻辑电路,该电路至少由逻辑门电路和复位控制寄存器组成;CPU的硬复位信号及复位控制寄存器的位信号分别送至各逻辑门电路输入端,或,CPU的软复位信号及复位控制寄存器的位信号分别送至各逻辑门电路输入端;各逻辑门电路的输出端分别连至各外部芯片复位端。
上述的控制逻辑电路可以由CPLD-XC95288XL-10ns-PQFP208芯片实现。
进一步设置一逻辑门电路,该逻辑门电路的输出端连接所述看门狗芯片的手动复位端,看门狗芯片的溢出端及手动复位按键信号连接至该逻辑门电路的输入端。
本实用新型将CPU的清狗信号通过控制逻辑电路送给看门狗电路,可以实现对看门狗电路的灵活控制,并提供调试态和工作态选择,而不影响看门狗电路的可靠性;在调试态由时钟清狗信号控制看门狗电路,在工作态由CPU发出的清狗信号控制看门狗电路,还可以加入缓启动延时,当CPU的启动程序需要较长时间时,在工作态上电后使用时钟清狗信号以便启动程序的加载,之后由CPU提供清狗信号,解决了单板上电到加载启动程序完成期间CPU无法清狗问题;同时通过在逻辑中增加一些控制位与看门狗电路产生的系统复位信号配合,可实现对CPU外围电路的灵活复位控制;使用专门看门狗芯片和简单连接保证了看门狗的可靠性,可以满足看门狗电路的设计要求。
目前常见的具备看门狗功能的器件,如ADM706、ADM708、MAX706、TC1232等,能完成上电复位及提供系统的复位信号。例如,上电或输入端有触发信号时,可提供200ms的单稳复位信号,通过该复位信号可以使系统完成完全的复位。利用上述器件来监视系统状态,保证系统在异常情况下能重新启动。
在一般的单板上,采用MAX706或ADM706作为CPU的看门狗电路。MAX706或ADM706是一种带看门狗电路的上电复位芯片,当芯片上电时会产生一个200ms的低电平复位(/RESET)信号,同时开启芯片内定时电路,如果清狗信号输入端(WDI)信号在1.6秒内无变化,就会在看门狗的溢出端(/WDO)输出一个计时溢出信号,使用/WDO信号作为手动复位端(/MR)的输入信号,从而通过MAX706内部电路产生复位输出信号/RESET复位CPU。下面以MAX706芯片、CPU为MPC8260应用为例来说明。
系统启动后,由于支持文件随机存取存储器(SDRAM)的初始化、基于VxWorks操作系统的板极支持软件包(BSP)启动程序从引导只读存储器(BOOT ROM)搬移到内存以及启动过程需要大致8~10秒,在此期间无法清狗。
为解决上述问题,参见图2所示。图2为应用本实用新型的单板复位电路实施例示意图。为兼容各种型号的看门狗器件,将MAX706芯片的/WDO端、一手动复位按键连接到一逻辑与门的输入端,该逻辑与门的输出端连至看门狗电路芯片的/MR输入端;在MAX706的手动复位端可加一个0.1 F的滤波电容,进行输入信号的防抖动处理,以防影响正常的复位;看门狗芯片的/RESET输出端接MPC8260的端口复位端(/POREST)。控制逻辑电路的输出信号(WDI-CPLD)连至MAX706的清狗信号端WDI,控制逻辑电路的输出信号RESET1、RESET2...RESETn向各外围芯片输入复位信号。为避免在BSP启动期间MAX706中的定时器溢出复位单板,把CPU的清狗信号(WDI-CPU)引进控制逻辑电路,并在控制逻辑电路设计一个10秒延时定时器,在10秒期间,由系统时钟提供的时钟清狗信号提供MAX706的清狗信号;在BSP加载完成后,切换到正常的Watchdog模式,由CPU软件清狗,一旦CPU不能在1.6秒内产生清狗信号,MAX706驱动/WDO信号有效,反馈至/MR,引起MAX706的/RESET信号有效,完成系统运行异常时的复位。
参见图3所示。图3是本实用新型的控制逻辑电路图控制逻辑电路图。其中控制逻辑电路中的第一逻辑电路、第二逻辑电路均为二选一数据选择电路。CPU的硬复位信号或软复位信号、定时器的计时时钟信号送至定时器;系统时钟提供的时钟清狗信号、CPU发出的清狗信号为第一数据选择电路输入信号;第一数据选择电路的输出和所述的时钟清狗信号为第二数据选择电路输入信号;第二逻辑电路的输出信号即WDI-CPLD信号送至看门狗电路芯片的清狗信号输入端(WDI);定时器的溢出信号(Osc-sel)、CPU上电或复位后从CPU的输入/输出端(I/O)读取的调试态/工作态信号(Work-Debug-sel)分别作为第一数据选择电路、第二数据选择电路的使能控制信号。
各使用信号、接口模块、用途说明如下表所示。

控制逻辑电路工作说明。
(1)调试态和工作态选择。调试态/工作态选择信号(Work-Debug-sel)由跳线和拨码开关控制,当该信号为低电平时为调试态,控制逻辑电路选择6Hz时钟清狗信号作为MAX706的WDI的输入;当该电平为高电平时为工作态,控制逻辑电路选择上电延时后CPU发出的清狗信号。
(2)工作态时实现上电延时清狗过程。初始看门狗电路上电或复位后,CPU产生HRESET-8260信号,该信号启动控制逻辑电路中的定时器开始定时,此时该定时器溢出输出信号Osc-sel为0,调试态/工作态选择信号为1,数据选择电路选择6Hz时钟清狗信号作为WDI-CPLD信号输出至MAX706的清狗信号输入端(WDI);定时器定时到10秒后产生溢出输出信号(Osc-sel)为1,选择CPU发出的清狗信号WDI-CPU信号作为WDI-CPLD信号输出至MAX706的WDI;此后,定时器被定时溢出锁死,初始Watchdog失效,系统进入正常Watchdog模式。正常模式下,如果CPU没有在1.6秒内向MAX706的WDI端送来清狗信号,则MAX706认为CPU故障,其/WDO产生溢出信号,CPU的端口复位端/PORESET输出一个低电平对单板进行复位。
定时器使用的计时时钟1.49Hz和6Hz的时钟清狗信号均由外部晶振通过逻辑分频获得,与单板CPU系统状态无关,这样可保证看门狗的时钟源不受系统的影响;定时器的定时时间选择为10秒左右,可根据具体单板启动时间进行更改。
在控制逻辑电路中可加入外围芯片复位控制逻辑电路,用以对外围芯片的灵活复位。参见图4所示。图4为本实用新型的外围芯片复位控制逻辑电路图。电路中有一复位控制寄存器,与CPU产生的复位信号相配合进行复位。在本实施例中对外部芯片的复位控制是将复位控制寄存器的位信号与CPU硬复位信号相与,这样可通过对控制位置零的方法,实现对外部芯片的复位而不是仅仅局限在CPU复位时才复位一次。图中复位控制寄存器位为“1”时,则通过CPU的/HRESET信号复位外围芯片,为“0”时即由复位控制寄存器位复位外围芯片。本电路按复位低电平有效设计,若系统中复位高有效,可将图中与门(and)换成或门(or)实现,此时控制位的“1”“0”含义正好与图中设计相反。
针对本看门狗电路,单板软件所需做的工作是A.在上电或复位后从CPU的I/O口读取单板调试态/工作态标志Work-Debug-sel;B.如果单板调试态/工作态标志设置为调试模式,则关闭软件看门狗清狗模块;C.如果单板调试态/工作态标志设置为工作模式,加载BSP,然后立即清一次狗;D.启动定时清狗任务;E.启动其它业务。
上述的定时器、二选一数据选择器、与门、复位控制寄存器可以在逻辑器件中实现,该逻辑器件为Xilinx公司的CPLD-XC95288XL-10ns-PQFP208。
综上所述,本实用新型提供的看门狗控制逻辑电路,调试态时由时钟清狗信号控制看门狗电路;工作态时,上电后先由时钟清狗到定时时间,之后由CPU软件提供清狗信号。本板的看门狗电路是不可关闭的,这样的设计比较安全,不存在不能自救的情况。
权利要求1.一种看门狗的控制逻辑电路,位于CPU与看门狗电路之间,其特征在于所述的控制逻辑电路至少包括定时器、第一逻辑电路、第二逻辑电路;CPU的硬复位信号或软复位信号作为定时器的计时启动信号送入定时器,系统时钟提供的计时时钟信号送入定时器;另,由系统时钟提供的时钟清狗信号及CPU发出的清狗信号作为输入信号连接第一逻辑电路的输入端,上述定时器的溢出连接到第一逻辑电路控制端;上述第一逻辑电路的输出信号及上述时钟清狗信号作为输出信号连接第二逻辑电路的输入端,一调试态/工作态选择信号连接第二逻辑电路控制端;该第二逻辑电路的输出信号连接至看门狗电路芯片的清狗信号输入端。
2.根据权利要求1所述的一种看门狗的控制逻辑电路,其特征在于所述的第一逻辑电路为二选一数据选择器。
3.根据权利要求1所述的一种看门狗的控制逻辑电路,其特征在于所述的第二逻辑电路为二选一数据选择器。
4.根据权利要求1所述的一种看门狗的控制逻辑电路,其特征在于所述的时钟清狗信号、定时器的计时时钟信号是由外部晶振分频电路提供。
5.根据权利要求1所述的一种看门狗的控制逻辑电路,其特征在于所述的控制逻辑电路进一步包括外围芯片复位控制逻辑电路,该电路至少由逻辑门电路和复位控制寄存器组成;CPU的硬复位信号及复位控制寄存器的位信号分别送至各逻辑门电路输入端,或,CPU的软复位信号及复位控制寄存器的位信号分别送至各逻辑门电路输入端;各逻辑门电路的输出端分别连至各外部芯片复位端。
6.根据权利要求1至5任一所述的一种看门狗的控制逻辑电路,其特征在于所述的控制逻辑电路可以由CPLD-XC95288XL-10ns-PQFP208芯片实现。
7.根据权利要求1所述的一种看门狗的控制逻辑电路,其特征在于进一步设置一逻辑门电路,该逻辑门电路的输出端连接所述看门狗芯片的手动复位端,看门狗芯片的溢出端及手动复位按键信号连接至该逻辑门电路的输入端。
专利摘要本实用新型公开了一种看门狗的控制逻辑电路,设置在CPU系统与看门狗电路之间,该控制逻辑电路至少包括定时器、第一逻辑电路、第二逻辑电路;采用将清狗信号引入逻辑,通过逻辑控制产生清狗信号或使用CPU清狗信号,以达到对看门狗电路的控制,同时通过在逻辑中增加一些控制位与看门狗电路产生的系统复位信号配合,可实现对CPU外围电路的灵活复位控制。本实用新型解决了单板在上电到加载启动完成期间CPU无法清狗问题,同时可以为单板提供调试态和工作态选择,而不影响看门狗电路的可靠性。
文档编号G06F11/30GK2519335SQ0127911
公开日2002年10月30日 申请日期2001年12月24日 优先权日2001年12月24日
发明者谢寿波, 祁志勇, 张宏斌 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1