嵌入式设备中监控看门狗的实现方法技术

技术编号:2824887 阅读:196 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种嵌入式设备中监控看门狗的实现方法,包括步骤:1)FPGA和CPU分别向寄存器aReg和寄存器bReg写入状态信息并交叉读取对方写寄存器的状态信息,以启动握手流程,进入正常工作模式;2)FPGA和CPU在正常工作模式下分别定期更新寄存器aReg和寄存器bReg,并进行交叉监控对方写寄存器的更新过程,当发现另一方未更新写入的寄存器,则对另一方进行复位。通过软件硬件相互结合的上电握手和监控方式,在同一个系统中FPGA与CPU相互监控,出异常后互相能够复位对方。本发明专利技术还在同时使用外部硬复位芯片的情况下实现软件复位的功能,提高了设备系统运行的可靠性,实现FPGA和CPU的相互防呆功能。

【技术实现步骤摘要】

本专利技术涉及通信
,涉及一种嵌入式系统中FPGA模块与CPU模块上电启动握手与相互监控的实现方法。
技术介绍
嵌入式系统设备中传统的监控看门狗方式基本有两种方式,(1)利用硬件看门狗监控软件的运行,即软件如果没有在固定的时间内喂狗(一般是写特定寄存器实现),硬件则复位整个系统,起到软件防呆功能;(2)软件看门狗实现,专门开一个看门狗任务,与系统中其它的任务固定时间内进行消息通信,传统的Windows平台软件看门狗一般都是通过窗口消息机制来实现看门狗与被控资源(被控资源通常情况下是以操作系统物理进程的方式存在)之间的交互,具体做法是:看门狗向被控资源发送一条监控请求消息,被控资源收到该消息后立即返回一条监控应答消息,如果看门狗在T时间段(监控超时时限)内没有收到被控资源返回的监控应答消息,此时看门狗则认为被控资源出现异常。以上传统方式存在着缺陷,(1)仅仅能实现硬件看门狗的功能,对系统出现异常时的各状态量不能很好的记录与备份,为以后的系统维护和查找问题的原因带来了困难;(2)Windows窗口消息机制的具体实现为每个窗口由系统提供一个存放待处理消息的消息队列,看门狗向被控资源发送监控请求消息其实就是向被控资源的主窗口消息队列中加入并拷贝该条消息内容,被控资源主窗口从消息队列中取出监控请求消息进行处理,在被控资源负荷比较重的情况下(如处理的业务量很大),主窗口消息队列中会堆积很多待处理消息,看门狗监控请求消息夹杂在其中可能会长时间得不到处理,而引起看门狗对被监控资源的误判断;其次按照基于Windows窗口消息机制设计出来的看门狗程序在跨平台移植上就会具备较大的困难,因为UNIX、LINUX等平台不支持Windows的窗口消息机制;再次进行消息-->通信的软件任务可能本身出现问题,此时完全失去看门狗的作用。
技术实现思路
本专利技术解决的技术问题是提供一种通信系统设备中监控看门狗的实现方法,通过软件硬件相互结合的上电握手和监控方式,在同一个系统中FPGA与CPU相互监控,出异常后互相能够复位对方。为解决上述技术问题,本专利技术提出以下的技术方案:一种嵌入式设备中监控看门狗的实现方法,包括以下处理步骤:1)FPGA和CPU分别向寄存器aReg和寄存器bReg写入状态信息并交叉读取对方写寄存器的状态信息,以启动握手流程,进入正常工作模式;2)FPGA和CPU在正常工作模式下分别定期更新寄存器aReg和寄存器bReg,并进行交叉监控对方写寄存器的更新过程,当一方发现另一方未更新写入的寄存器,则对另一方进行复位。优选的,在FPGA启动过程中FPGA读取到的寄存器bReg的状态信息始终为初始状态时,对CPU进行复位。优选的,在正常工作模式下,CPU以向寄存器bReg写入RESET0,再写入RESET1的方式启动系统硬复位,FPGA读取信息后复位CPU同时复位自身。优选的,在正常工作模式下,FPGA和CPU其中一方的复位过程不影响另一方的正常运行。优选的,所述步骤1)具体包括以下处理过程:11)CPU启动后,读寄存器aReg,如果其状态信息是sta1,则CPU认为FPGA就绪,开始配置功能芯片,CPU调用功能芯片的配置文件,对芯片进行配置;12)CPU完成配置后,在寄存器bReg写入状态信息sta2,并通知FPGA,功能芯片配置完成;13)FPGA向寄存器aReg写入状态信息sta3,CPU读到寄存器aReg中的状态信息为sta3后向寄存器bReg写入状态信息sta3,FPGA进入正常工作模式;-->上述的状态信息sta1、sta2、sta3为各不相同的状态值。优选的,所述步骤2)具体包括以下处理过程:21)正常工作模式下,FPGA每N1f秒更新一次寄存器aReg,若CPU检测到FPGA在N2f时间内没有更新该寄存器则复位FPGA;22)正常工作模式下,CPU每N1c秒更新一次寄存器bReg,若FPGA检测到CPU在N2c时间内没有更新该寄存器则复位CPU。优选的,所述CPU检测寄存器的时间周期N2f大于FPGA更新寄存器的时间周期N1f;所述FPGA检测寄存器的时间周期N2c大于CPU更新寄存器的时间周期N1c。优选的,正常工作模式下,所述FPGA与CPU分别更新寄存器aReg与寄存器bReg的值不同。采用本专利技术提出的监控看门狗的实现方法能同时解决
技术介绍
中提到的缺陷,提高了嵌入式通信设备系统运行的可靠性,实现了FPGA和CPU的相互防呆功能。(1)由于FPGA或CPU均属于高速微控制器芯片,不仅只起到硬件看门狗作用,出现异常时均可以记录发生异常时状态信息,起到保护发生异常的状态信息。比如系统发生内存耗尽异常时,系统中各任务因申请不到内存而导致中止运行,此时CPU可借助操作系统中成熟稳定的内存机制,在系统运行死机前,朝用户预留内存空间中写入异常时刻点的各任务状态和各异常码,并且该内存块可被设置为上电启动初始化时不初始的属性,之后用户在系统重启后访问该内存块,即可大致判断上一次系统发生异常的原因。FPGA发生异常前能够保留各模块和寄存器状态,因此可通过点指示灯的手段大致指示异常状态。(2)本专利技术提供的一种嵌入式设备中监控看门狗的实现方法,基于寄存器内容的读写进行判断的机制,解决软件看门狗监控问题,能够达到高效、准确的效果。看门狗程序和被控资源对各-->阶段寄存器的存取操作都是可靠、高效和安全的。既保证看门狗能够准确地获取出被控资源的状态,又不受被控资源本身负荷的影响,并且按照此监控机制编制出来的看门狗程序和被控资源软件可以非常平滑地进行跨平台移植,因为目前各主流操作系统均支持寄存器内存机制。附图说明图1是本专利技术嵌入式设备监控看门狗的实现流程图;图2是本专利技术硬件复位系统框图;图3是本专利技术优选实施例中系统启动与监控处理流程图。具体实施方式下面结合具体实例对本专利技术的技术方案进行详细描述。本专利技术提供一种通信设备系统中FPGA与CPU上电握手和相互监控的方法,如图1所示,主要包括FPGA与CPU上电初始化握手流程、进入正常模式后的相互监控、出现异常状态时FPGA或CPU各自复位对方三个阶段:(一)初始化过程:FPGA与CPU上电初始化、配置功能芯片的握手流程;(二)正常模式:进入正常模式后的相互“喂狗”及监控;(三)异常状态:FPGA或CPU复位对方的条件。第一阶段,如图1所示,包括如下步骤:S101、CPU初始化系统,并配置与FPGA相关的总线接口,之后检测FPGA是否处于就绪阶段,即CPU读取寄存器aReg的信息,当其状态信息为sta1时,表示FPGA就绪,可以开始配置功能芯片;S102、FPGA就绪后,CPU配置FPGA相关功能芯片,包括Afe8406等;CPU完成配置后,在寄存器bReg写入状态信息sta2,并通知FPGA,功能芯片配置完成S103、FPGA检测到CPU配置完功能芯片后,向寄存器aReg写入sta3;-->S104、CPU读到寄存器aReg为sta3后向寄存器bReg写入sta3,之后CPU与FPGA进入正常工作模式。第二阶段,如图1所示,包括如下步骤:S201、FPGA每N1f秒更新一次寄存器aReg;S202、CPU每N1c秒更新一次寄存器bReg;FPGA与CPU各自更新寄存器的值可以不同,本文档来自技高网
...

【技术保护点】
一种嵌入式设备中监控看门狗的实现方法,其特征在于,所述方法包括以下处理步骤:    1)FPGA和CPU分别向寄存器aReg和寄存器bReg写入状态信息并交叉读取对方写寄存器的状态信息,以启动握手流程,进入正常工作模式;    2)FPGA和CPU在正常工作模式下分别定期更新寄存器aReg和寄存器bReg,并进行交叉监控对方写寄存器的更新过程,当一方发现另一方未更新写入的寄存器,则对另一方进行复位。

【技术特征摘要】
1.一种嵌入式设备中监控看门狗的实现方法,其特征在于,所述方法包括以下处理步骤:1)FPGA和CPU分别向寄存器aReg和寄存器bReg写入状态信息并交叉读取对方写寄存器的状态信息,以启动握手流程,进入正常工作模式;2)FPGA和CPU在正常工作模式下分别定期更新寄存器aReg和寄存器bReg,并进行交叉监控对方写寄存器的更新过程,当一方发现另一方未更新写入的寄存器,则对另一方进行复位。2.根据权利要求1所述的嵌入式设备中监控看门狗的实现方法,其特征在于,在FPGA启动过程中FPGA读取到的寄存器bReg的状态信息始终为初始状态时,对CPU进行复位。3.根据权利要求1所述的嵌入式设备中监控看门狗的实现方法,其特征在于,在正常工作模式下,CPU以向寄存器bReg写入RESET0,再写入RESET1的方式启动系统硬复位,FPGA读取信息后复位CPU同时复位自身。4.根据权利要求1所述的嵌入式设备中监控看门狗的实现方法,其特征在于,在正常工作模式下,FPGA和CPU其中一方的复位过程不影响另一方的正常运行。5.根据权利要求1-4任一项所述的嵌入式设备中监控看门狗的实现方法,其特征在于,所述步骤1)具体包括以下处理过程:11)CPU启动后,读寄存器aReg,如果其状态信息是sta1,则CPU认为FPGA就绪,开始配置...

【专利技术属性】
技术研发人员:张明生吴饶金
申请(专利权)人:深圳国人通信有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1